Сайт AZJIO
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
Меню сайта
Категории раздела
Скомпилированные скрипты [53]
Коллекции [4]
Поиск
Главная » Файлы » AutoIt3 » Скомпилированные скрипты

TextCorrection
05.06.2010, 13:22

TextCorrection (290 кб) v0.8 программа для исправления текста набранного в неправильной раскладке клавиатуры.




TextCorrection (WinXP, Win7)
Программа для исправления текста набранного в неправильной раскладке клавиатуры. Для исправления не требуется выделять текст, используя горячие клавиши выделяется либо вся строка, либо слово. Если выделить текст вручную то исправляется только выделенное в любом режиме. При исправлении текста переключается раскладка клавиатуры, чтобы продолжить набор текста на соответствующем языке. Выполняется несколько режимов исправления:
Ctrl+\ исправление слова не инвертированием, либо всё на русском, либо всё на английском
Ctrl+э (') - исправление строки инвертированием. При исправлении смешанного языка для символов ;:? проверяется близ-лежащее слово.
Ctrl+ж (; ) - исправление слова до первого пробела скобки; Не инвертирует. Для слов типа "многоэтажный". Такой режим игнорирует символы [];',. как разделитель слов.
Ctrl+д (l) - исправление слова инвертированием (русские буквы в англ., англ в русский)
Ctrl+. (?) - красная строка, первая буква заглавная.
Ctrl+х ([) - перевод в верхний регистр, с учётом спец-символов 23467,если снята галочка CapsLock
Ctrl+ъ (]) - перевод в нижний регистр, с учётом спец-символов, если снята галочка CapsLock
Если у вас три языковых раскладки клавиатуры, назначьте клавишу переключения режима. Важно, если вы набрали текст на третьем языке и его нужно конвертировать во второй, то сначала нужно конвертировать в первый, далее переключить режим и далее конвертировать во второй. Всё дело в том, что утилита работает только с двумя языками, либо En+Ru либо En+Uk и переключение режима - текущий компромисс для трёх раскладок. В качестве второго и третьего языка могут быть любые другие языки.

Также отображается иконка раскладки клавиатуры в трее. Но это пока для трёх языков. Чтобы исправить замените иконки ResHacker'ом, это временное решение проблемы.

TextCorrection может сработать не так как ожидается, но это редкий случай: в поле поиска проводника действие Ctrl+Ins выполняет копирование файлов, либо ничего не выполняет, а не копирование текста и вместо исправления происходит отмена, так как текст в буфером обмена не получен. При любых ошибках можно сделать отмену горячей клавишей Ctrl+Z..

Обновления

0.8
Благодаря очистке буфера перед копированием выделенного текста стабильность исправления улучшена
Добавлен стандартный способ назначения горячих клавиш.
Обновлены некоторые функции

0.7
1. Добавлена поддержка трёх языков, с неудобством(?) переключения режима.
2. Добавлен украинский язык

0.6 Добавлена автозагрузка в настройках
Добавлен выбор разделителей слова для режима 3
Для TextCorrection.ini добавлены новые параметры, удалены ненужные, удалить старый TextCorrection.ini, для генерации нового.
Добавил украинскую раскладку - "TextCorrection (украинская раскладка).ini". Нужно переименовать его в TextCorrection.ini. Исправление только между двумя языками.

0.5.3
Работа над ошибками
Исправлен режим замены CapsLock, копированием отключен был русский.
Исправлено чувствительная замена к языку к использованию ini
Исправлено принятие кода языка только из ini
Отключение перезапуска после настройки горячих клавиш

0.5
Выбор поведения CapsLock.
Настройки вынесены в TextCorrection.ini, программа сама его сгенерирует при первом старте.

Вынесение настроек в ini-файл позволяет:
1. Сменить язык указав свою раскладку в соответствии позиции символов в строке.
2. Сохранение настроек горячих клавиш позволяет использовать программу портабельно.

Смена языка:
1. Значения Lang1, Lang2 - должны содержать тот же набор символов с сохранением позиции. Сверяем по англ. раскладке.
2. Значения LangT1, LangT2 - содержат набор только букв принадлежащих языку, без сохранения позиции. Копируем из Lang1, Lang2, удалив спец-символы и знаки препинания.
3. Значения LangR1, LangR2 - номер раскладки указанный в реестре "HKEY_CURRENT_USER\Keyboard Layout\Preload", смотрим в Readme запущенной программы

Спасибо помощь в тесте Vendor.

Старые исправленные ошибки:
1. Если выделить текст, скопировать и применить к выделенному горячую клавишу, то происходит захват ещё одного слова слева. Это случай, когда выделенный текст и буфер обмена совпадают.
2. Вариант похожий на пункт 1, выделение двойным кликом, скопировать и применить к выделенному горячую клавишу, то появятся два слова, инвертированное и оно же не инвертированное.
Теперь в буфер вставляется временный семпл, чтобы исключить такие ошибки

 

Категория: Скомпилированные скрипты | Добавил: AZJIO
Просмотров: 4139 | Загрузок: 0 | Комментарии: 8 | Рейтинг: 5.0/1
Всего комментариев: 6
0
6  
Цитата
нарисовал свои и выкладываю
не, не люблю я матрас. Мой вариант иконок вообще не связан с уродливостью, потому что для меня это два цвета красный и зелёный. Зелёный означает писать можно, красный означает писать нельзя. Причём иконка видна краем глаза без всматривания в неё. То есть наибольший цветовой контраст, наибольшее различие. Возможно и к матрасу можно привыкнуть но их флаг при сегодняшней их политике у меня вызывает аллергию, я в Linux не ленюсь после каждого обновления убирать этот матрас заменяя своей иконкой.
Цитата
я там ковырялся, но так и не смог поменять
раньше бы эту критику, я бы сделал проверку внешних иконок, если есть то использовать их. К сожалению сейчас мне некогда обновлять, занят сильно по работе.

0
5  
Цитата
Цитата
добавить в словарь возможность заменять многострочными вставками

Только если это незначительно повысит занимаемое пространство в оперативке.
Можно и без оперативы. Если использовать SQLite, то просто переместит курсор в базе и прочитает нужный кусок текста в оперативку и вставит. Можно ещё проще - семпл=файл, просто из папки семплов вызьмёт одноимённый файл и скопирует его содержимое для вставки.
Цитата
Выходит даже этого не сможешь сделать:
Так то я не собираюсь что-то делать, пока на работе куча работы, так что дома ещё повышаешь знания в плане работы, а отдыхать программированием пока некогда, соответственно ничего серьёзного из уже сделанного не поменяется.

А вообще если у тебя есть знания о VBS и нашёл базу опечаток, то учи автоит, класная вещь, сам сделаешь эти же проги, но со своими предпочтениями. Там всё легко осуществляется и затягивает простотой. По мере знаний наращиваешь потенциал. Если бы не работа занимался бы этим дальше. По крайней мере по TextReplace у меня есть идеи а воплощать некогда. Хотел бы при поиске сделать статистику расширений для формирования маски, чтобы ускорить поиск игнорировав рейтинговые по размеру расширения файлов. Осуществить легко, но некогда.

0
4  
Цитата
а в ярлыки ОС'ные да
А я в ярлыках не сталю горячие клавиши, потому что у меня на WinXP почему-то они работают до первой перезагрузки. Перезагрузился и уже не действуют.
Переназначать клавиши опять же не лучший способ, потому что тогда у тебя другие проги, запущенные позже вдруг будут на себя забирать клавиши, так что ничего не меняется. К тому же для кого-то моя прога будет "воровать" клавиши и пользователь будет ругаться. Так что если уж делать принудительное переназначение то опять же спросив пользователя. Но я использую готовые библиотеки для функционала назначения клавиш и если они не работают как хотелось бы, то просто мне придётся изучать досконально и самому писать библиотеку. В общем я бы рад, но требует поднятие знаний ещё на один уровень.
Цитата
что в .lnk комбинация должна быть только с 2-3 функциональными
Может поэтому они переставали у меня работать на WinXP?
Цитата
неподскажеш в чом полезном из офиса\Adobe\Np++ используется эта пара (допустим конкретно Ctrl + Page Down
Вкладки перебирает, навигация по вкладкам вперёд/назад
Цитата
жмёш Ctrl+A вызываеш девятую функцию 1!!! раз. и вуаля:
Можно конечно и так сделать, но это неконтролируемая замена. В конечном итоге текст нужно проверять, ради того чтоб там не появилась неправильная/неожиданная неожидаемая ситуация. То есть случай когда в одном случает это правильно в другом неправильно, но ты же не держишь в голове весь словарь замен, чтобы догадаться. А тут заменил и сразу видишь. Единственное что я отел добавить или даже понять правильно ли то что я хучу добавить, то есть добавить в словарь возможность заменять многострочными вставками. Тогда бы я использовал как сниппет (плагины вставки фрагментов текста). К примеру написал GUI, нажал горячую клавишу, вставилась скелет конструкции GUI с обработчиками событий. Но это потребовало бы от меня создание сложного формата словаря, вернее простого но неидеального или идеального но сложного или даже с использованием библиотеки SQLite.

3  
Цитата
добавь прогу в автозагрузку, чтобы первая запустилась и заняла клавиши.

Разумеется непомогло (мне жэ и хотелось чтоб прога вместо криков о помощи тупо "заняла клавиши" почемуто в сторонние проги она нажания непропускает, а в ярлыки ОС'ные да). Можэш сам симулировать ситуацию; на время тэста назначить Ctrl+Shift+S на проге закрыть её и создать .lnk на калькулятор чи блокнот допустим, указать в нём быстрый вызов: Ctrl+Shift+S поместить в меню пуск и после перезапуска windows посыпятся "Одна копия программы уже выполняется" "Не удалось зарегистрир…" пока это не проблема но чем большэ у тебя .lnk в системе тем большая вероятность столкнутся (а чистый Ctrl+чонить воизбежание проблем лично мне (ХЗ почему) жать неудобно!)
кстати замечание на счёт вероятного совпадения с дэфолтными беру обратно, забыл что в .lnk комбинация должна быть только с 2-3 функциональными.
Цитата
разность зависит от исходного языка


а не от номера функции… непросёк, извеняюсь!
Цитата
Смотри справку

перед использованием читал - "во второе ухо вылетела"  patsak
 
Цитата
в том числе и Page Up \ Page Down
В основном ты прав но никогда не замечал таких комбинаций, no неподскажеш в чом полезном из офиса\Adobe\Np++ используется эта пара (допустим конкретно Ctrl + Page Down заходит в неасоц. архивы Total Com. ВСЁ!.) если время есть конешн

Цитата
Не понял, зачем выделять строку и обрабатывать весь текст


Пример: 
"вводиш такой в гугл фразу прога для авто смены раскладки с англ на ру и обратно рс"

жмёш Ctrl+A вызываеш девятую функцию wizard 1!!! раз. и вуаля:

"вводиш такой в Google фразу программа для автоматическ смены раскладки с Английской на Русскую и обратно site:rsload.net"

гугл=Google
прога=программа
авто=автоматическ
англ=Английской
ру=Русскую
рс=site:rsload.net

в жизни будут менее многочисленные "забивалки" но переписать лишнее словцо, в порыве типа - дописать пока из головы не вылитело и в туалет! у мну бывают)
А если ктото пользуется 10'и пальцэвым (чи как его; как секретарь-машэнист короче) методом ему необходимо 6 раз ставить руки на место!

P.S.  Это только в Опере 12 редактор комментов нерастягивается? (ато с другого БР перезаходить лень)

0
2  
По поводу 9-beta: Бета потому что не тестил особо, обычно я использую программу каждый день и в случае проблем исправляю. А тут сделал, проверил, что работает, но нельзя сказать, что новая версия проверена временем (я пока в Linux).

Цитата
"Не удалось зарегистрировать горячую клавишуCtrl + Shift + (,
возможно она используется другим приложением."


незнаю, щитать ли это багом
Выруби все приложения, зарегистрируй клавишу, добавь прогу в автозагрузку, чтобы первая запустилась и заняла клавиши. Иначе тут выбора нет, два глобальных события на одну клавишу не вешают.
Цитата
Функции №1 и №3 преобразовует как минимум запятую по разному
У запятой нет языка, поэтому разность зависит от исходного языка. Там всё продумано просто надо понять логику преобразований. Смотри справку если что (в комплекте с прогой).
Цитата
пока так: №1 Shift+Ctrl+Down
Вообще стрелки с шифтом и контролом работают по выделению текста, в том числе и Page Up \ Page Down. Назначив их глобальными можно лишиться соответствующим функционалом выделения, поэтому надо юзать клавиши менее вероятно-совпадающими с известными.
Цитата
функции №9 =) она как по мене слишком точна, тоесть нужно с филигранной точностью выделить то, что есть в словаре, чтоб сработало, вместо того
чтобы сверять слова между пробелами во всей выделенной строке со всеми
словами из базы
Не понял, зачем выделять строку и обрабатывать весь текст? Просто вводишь некую комбинацию, например ms, жмёшь горячую клавишу, вставляется Microsoft, а ещё лучше пишешь пкд, вставляется "Привет как дела". Но это кто как себе приспособит, лично мне нужно при вводе к примеру "опенфиле" вставляется OpenFile(param, True, Byref), грубо говоря я не хочу писать много букф на английском языке и пишу кальку на русском, вставляется английская конструкция, где мне только заполнить параметры. Важно что это работает в любом редакторе где печатается текст, а не только в специализированном блокноте программиста. А уж как для себя использовать остаётся только придумать. Но сокращения есть в аске, там просто жмёшь раскрывающийся список и выбираешь заготовленный текст, ну а здесь делаешь сокращения к примеру по первым буквам фразы, опять полёт фантазий как сам себе придумаешь логику сокращений.

1  
Какраз... ну как “какраз” всю жизнь маюсь, нервы тринирую=) понадобилось 2 вещи с основной программа максимально справляется. Перенастроил правда на кнопки покрупней да по отдельней от осн.массы, пока так: №1 Shift+Ctrl+Down (первые 2 у мну для RU\EN какраз, можно их неотпуская выделить слово(а) и соседнюю вниз\вверх для смены кракозябр и функции №5) знаю метод не корректный, ибо как минимум перекрывает перемещалку выделенных строк в Notepad+++ но так, больше вроде никому не мешает.
Далее я бы посоветовал Аффтору по умолчанию использовать - Page Up \ Page Down с чемто, для верхнего(№6) и нижнего(№7) регистра, т.к. они точно ни с кем не конфликтуют и их легко нащупать=)
…Отвлёкся я, вторая вещь, это одна экстремально обрезанная сборка XP “Atom” на соответствующем жэлезе, в которой даже "Управление дисками" и Ctfmon'a нет..., а надо! ОЗУ там 256 поэтому "Punto Switcher" жрущий от 3 до 3,5мб некатит dry , возвращать наместо Ctfmon.exe не пробовал, а ваш вариант - вопервых не ошибался с иконкой RU/EN в то время как стандарт тупил (проверил на практике), во вторых в ОЗУ занимает от 1 до двух мб. (Ctfmon.exe от 200 до 800кб. но он валенок %)) будем ставить TextCorrection happy
Продолжая тему экономичности хотелось бы попросить допиливая версию 9,0 чи 1,0 добавить галочку выключения через заданный промежуток времени, после последнего нажатия любого из 9'и клавосочитаний. Таким образом, допустим во время игры спустя 10 минут (или сколько задаст пользователь) освободится 1-2мб памяти и играть станет веселее-) после игры, для возобновления её использования пользователь может создать на неё ярлык с тем-же клавосочетанием что и в проге и известными средствами ОС… короче единственный дискомфорт это 2 нажатия в первый раз. Заранее спасибо! cry
А НЕ ТУТ ТО БЫЛО =(( как оказалось при совподении клавокомбинации, любого шорт ката на системных ярлыках с теми что в TextCorrection.ini прога выдаёт:

"Не удалось зарегистрировать горячую клавишуCtrl + Shift + (,
возможно она используется другим приложением."


незнаю, щитать ли это багом, но это серьёзно ограничивает репертуар возможных сочетаний т.к. лично у меня, ужэ имелось на борту 15 ярлычков шорткатов, и чудом они не совпали с назначеными в программе, у гиков 80 лэвэла вообще вся клавиатура занята:) надо-бы как-то чтоб наоборот: ужэ запущенный TextCorrection не пропускал в систему те 8-9 сочетаний которые у него настроены. Правда как не програмист/не VBS'ник, я не знаю реализуемо ли это на AutoIt?
Ещё немного критики о потэнциально шикарной функции №9 =) она как по мене слишком точна, тоесть нужно с филигранной точностью выделить то, что есть в словаре, чтоб сработало, вместо того чтобы сверять слова между пробелами во всей выделенной строке со всеми словами из базы. Да, нагрузка на процэссор, но они сейчас дофига ядерные и дажэ не заметят)

biggrin 2-3 БАГА нашол:
•Функции №1 и №3 преобразовует как минимум запятую по разному! ( ,=? ) у первой и ( ,=б ) у функции №3
•НЕВОЗМОЖНО назначить комбинацию с Num 0-9 и шифтом одновременно, “Pause|Break” тоже=(((Клава сландарт PS\2, дрова стоковые-XP)
•ВОЗМОЖНО назначить любую одинокую букву\цыфру (блондинки тожэ могут скачать) На последний баги можно забить=)

P.S.S.У меня скачалась 09 бета где-б достать 08/09 стабил чи финал?
P.S.Времени вам и здоровья на улучшение софта. по количеству, ужэ доганяете Sysinternals(бывш) и Nirsoft…

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Вход
Друзья сайта
  • WinPE - Ru.Board
  • Rutracker.Org
  • LiveCD - Ru.Board
  • AutoIT3 - Ru.Board
  • autoit-script.ru
  • autoitscript.com
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    WebMoney

    Мой кошелёк

    wmr: R939163939152

    Яндекс: 410011460667731


    AZJIO © 2017