О программе
Диалог установки
Диалог настроек
Как правильно и быстро
настроить программу
Меню около часиков и работа
программы
Возможные проблемы
Описание реализации
Об авторе
Вы, как и я, пишите транслитом?
Живёте за границей и нет русской клавы?
Есть клава но лень учить раскладку?
Тогда позвольте, я вам предложу программу CRAZY KEYS, которая позволит вам не изменять Вашим привычкам, и печатать в любой удобной для вас транслитерации.
(с любой раскладки на любую, в частности с латиницы в кириллицу)
Несколько плюсов в пользу этой программы:
программа совершенно бесплатна, и всегда доступна последняя версия по ссылке: http://www.lioan.narod.ru/CrazyKeysHomepage/CrazyKeys.htm
CrazyKeys работает совершенно в любом месте, куда Вы захотите вписать текст.
CrazyKeys работает стабильно, и поддерживает много опций.
CrazyKeys также хорошо работает не только с английской раскладкой, но и с чешской, датской, сербской, французской, болгарской, и с любыми другими европейскими раскладками.
Очень подробный Help.
При использовании программы нет никаких признаков того, что идёт транслитерация. В частности прекрасно работает выделение на ctrl+a и другие горячие клавиши.
При первом запуске, программу можно инсталлировать, а можно отказаться от инсталляции.
Программа вступает в режим транслитерации букв по кнопке Scroll Lock.
Где будет находиться программа.
Скопировать программу в папку предназначенную для программ.
Скопировать в программу в папку пользователя. Эта папка всегда доступна, даже гостям.
Не устанавливать программу, и запустить с исходного места, где и создадуться несколько необходимых файлов.
Создание ярлыков.
Для удобства запуска.
Тогда программа будет стартовать (в режиме пауза) сразу после загрузки операционной системы.
{bmc dialogOptionsEng12345_Bmp.bmp}
Быстрая настройка опций.
Предположим, что Вы живёте в стране Х и Вы хорошо освоили раскладку клавиатуры для языка страны Х (английская, датская, чешская или люба другая), но вы хотите писать иногда по-русски не изучая русский раскладку.
[1] В комбобоксе выберите раскладку клавиатуры, к которой вы привыкли.
(в нашем случае это раскладка Х)
[2] В комбобоксе выберете раскладку клавиатуры, на которой вы хотите, чтобы появлялись буквы при печати.
(в нашем случае это раскладка Русская - Russian)
[2a] Если русской раскладки у вас нет, то нажмите кнопку “Русский” (Add Russian), для добавления русского языка в систему и перейдите к шагу 3. Если вы хотите итоговую раскладку не русскую, то перейдите на шаг 2b. Если вы хотите итоговую раскладку русскую, а возможности её поставить нет, то выберите "Unicode - any layout" и перейдите к шагу 4.
[2b] Если итоговой раскладки у вас нет, то нажмите на кнопку “диалог” (Dialog) для вызова стандартного диалога языков и раскладок. В этом диалоге надо добавить язык. (в нашем случае русский) Для добавления языка надо нажать кнопку справа “добавить” (Add), появится окошко, в окошке в верхнем комбобоксе надо выбрать русский язык и нажать ОК. затем нажать ОК на самом диалоге. Виндовс предложит вам перезапустить компьютер, но того делать совсем не обязательно.
[2c] После того как виндовс добавит себе новый язык, надо нажать кнопку “обновить” (Refresh), чтобы диалог настроек считал настройки виндовс. Повторяем шаг 2, в комбобоксе уже должен появиться русский язык.
[3] Нажимаем на кнопку “Наилучшие” (Optimal). Появится стандартный диалог языков, который сразу же исчезнет.
[4] Нажимаем на
кнопку выбора типичных правил транслитерации.
Появится диалог и кнопками “Далее” (Next) и “Назад” (Prev) выбираем набор правил,
который больше всего понравится, и на понравившихся правилах нажимаем ОК на окошке
с наборами правил. При желании, можно правила изменять, удалять и добавлять.
[5] При нажатии на ОК на диалоге опций, все опции будут автоматически сохранены.
О более детальных
настройках диалога можно почитать на закладке “О диалоге Настроек”.
Теперь можно переключать
состояние программы.HIDH_ABOUT_PROGRAM_WORK
У вас в компьютере может быть много разных языков и много разных раскладок.
У каждого языка может быть много раскладок, но это бывает редко.
Как исходную клавиатуру/раскладку надо выбрать ту, к которой вы привыкли, и в которой хотели бы набирать текст.
Как итоговую раскладку надо выбрать ту, на которой есть те символы, которые вы хотите видеть напечатанными на экране.
В системе для смены между языками и раскладками используются горячие клавиши ctrl+shift и alt+shift.
Данная последовательность зажатых горячих клавиш меняет язык.
Если у Вас один язык, то программе эта последовательность не важна.
Если у Вас два языка, и Вы хотите переводить клавиши из одной в другую, то последовательность должна быть ctrl+shift.
Если у Вас более двух языков, и вы хотите переводить из одной раскладки в другую, то последовательность должна быть alt+shift.
Данная последовательность зажатых горячих клавиш меняет у текущего языка раскладки (если их много).
Данная последовательность редка, и обычно отсутствует.
Если у Вас один язык, то программе эта последовательность не важна.
Если у Вас два языка, и Вы хотите переводить клавиши из одной в другую, то последовательность может быть alt+shift либо отсутствовать.
Если у Вас более двух языков, и вы хотите переводить из одной раскладки в другую, то последовательность должна отсутствовать.
Для работы программы нужно правильно выставить языки и последовательности горячих клавиш для смены раскладок.
Эта кнопка добавляет русский язык в виндовс.
Эта кнопка вызывает системный диалог языков и раскладок, его можно также вызвать из панели управления
Эта кнопка считывает из системы текущие языки и горячие клавиши. Её следует нажимать после закрытия диалога языков и раскладок
Эта кнопка выставляет в зависимости от выбранной исходной и итоговой раскладки, все значения, что бы программа корректно заработала.
(появится диалог языков и раскладок, и сразу исчезнет)
Правила преобразования, это правила по которым последовательности букв (последовательности обычно однобуквенные, но не обязательно) из исходной раскладки преобразовываются в последовательности в итоговой раскладке. Слева исходная раскладка, а справа итоговая раскладка.
Добавить новое правило в список правил переходов.
Если правило с такой же исходной последовательностью уже существует, то оно будет переписано.
Удалить выделенное правило из списка правил.
Удаляет из списка плохие правила.
Правила плохие если:
Если невозможно набрать символы исходной последовательности в исходной раскладке.
Если невозможно набрать символы итоговой последовательности в итоговой раскладке.
Если для последовательности нет правил перехода для каждой буквы.
Если для исходной последовательности более одной итоговой последовательности.
Для выбранных раскладок, показать диалог разных наборов правил для транслитерации, среди которых можно выбрать любой как базовый. (Как первый набор правил всегда показывается текущие правила)
Вверху написаны 2 шестнадцатеричные цифры соответствующие исходной и итоговой раскладке, далее идёт пользовательское название правил транслитерации.
В колонках (таблице) написаны правила для итогового алфавита.
Неиспользуемые исходные буквы отображены в первой строке под таблицей. Это буквы, для которых нет правил и при нажатии, на которые не будет выполняться транслитерация.
Неиспользуемые итоговые буквы отображены в следующей строке. Это буквы, для которых нет правил, т.е. нет последовательности в исходной раскладке, нажав которую можно получить данную букву.
Навигация по наборам правил транслитерации с помощью кнопок Назад и Деле.
Хорошие наборы правил транслитерации, это где две строки с ненужными буквами пусты, хотя это не обязательно.
Любой выбранный типичный набор правил транслитерации можно редактировать, т.е. удалять и добавлять любые правила.
Текущие настройки можно сохранить в файле.
Если файл с настройками удалить, то он будет создан вновь по умолчанию.
Файл с настройками можно переносить между компьютерами.
Загрузить файл настроек. Файл с настройками лучше расположить в папке вместе с программой, чтобы случайно его не удалить.
Сохранить файл настроек.
Сохранить файл настроек под заданным именем.
Можно изменять язык интерфейса в диалогах, меню и сообщениях. Есть русский и английский язык.
Эти параметры лучше оставить по умолчанию.
Это величина в миллисекундах, которая отвечает за то, сколько должно времени пройти между буквами, чтобы программа поняла, что это одна и та же последовательность. Чем выше скорость печати, тем меньше эту величину лучше поставить.
При слишком маленьком значении, нужно будет очень быстро набирать последовательности и можно не успевать.
При слишком большом значении, при печати одиночных букв, которые по правилам образуют последовательность, придется делать более долгую паузу.
Эта величина в миллисекундах, которая отвечает за то, как быстро будут печататься буквы, т.к. программа перехватывает нажатые буквы и выдаёт другие. Эта величина зависит от мощности компьютера, чем мощнее компьютер, тем меньше эту величину можно поставить, сохраняя стабильность работы.
При слишком маленьком значении, программа может не срабатывать, или работать не очень стабильно
При слишком большом значении, будет казаться, что буквы слишком медленно появляются на экране после их нажатия.
Эта величина в миллисекундах, которая отвечает за то, как часто будет срабатывать таймер, который будет выдавать итоговые буквы.
При слишком маленьком значении, программа может не срабатывать, или работать не очень стабильно
При слишком большом значении, будет казаться, что буквы слишком медленно появляются на экране после их нажатия.
Можно изменять кнопку активизации транслитерации, т.е. перевода из состояния паузы в состояние старт. Некоторые клавиши заведомо не хорошие, некоторые не опробованы. Хорошие клавиши это Scroll Lock, Puse Break, Num Lock, cntr+Pause Braek, F12, F11 и.т.д.
Версия этой программы характеризуется датой последней компиляции.
Help (вызов помощи)
Options (вызов диалога настроек)
Strart (перевод программы в состояние транслитерации)
Pause (перевод программы в состояние паузы)
Stop (перевод программы в остановленное состояние)
Exit (выход из программы)
Программа может находиться в трёх состояниях.
Для переключения состояний служат пункты меню Start и Stop, а также кнопка Scroll Lock, (переключатель, можно изменить в диалоге ) .
(Кнопка Scroll Lock находится в правой верхней части клавиатуры между кнопками Print Screen и Pause Break)
В этом состоянии часть программы ответственная за преобразование последовательностей выгружена из памяти. Если есть ошибки с настройками, то программа работает только в этом режиме.
Из остановленного состояния можно перейти только в состояние паузы.
При попытке перейти в состояние паузы при плохих настройках программа покажет диалог настроек.
Чтобы перейти в состояние паузы, надо в меню выбрать Start.
Чтобы перейти в остановленное состояние из других состояний, надо в меню выбрать Stop.
В этом состоянии программа корректно загрузила настройки, и готова перейти в состояние трансляции.
Чтобы перейти в состояние трансляции, надо нажать переключатель, который по умолчанию Scroll Lock.
Чтобы перейти в остановленное состояние, надо в меню выбрать Stop.
В этом состоянии программа переводит последовательности нажатия клавиш в другие последовательности по правилам
, которые заданы в диалоге настроек .Иконка языка в приложении куда хотим печатать текст, должна отображаться исходного языка, однако буквы печатаются исходя из правил преобразования.
Чтобы перейти в состояние паузы, надо нажать переключатель, который по умолчанию Scroll Lock.
Чтобы перейти в остановленное состояние, надо в меню выбрать Stop.
“сход” а не
“шод”
Если после буквы ‘s’ сделать маленькую паузу, то буква ‘с’ не будет “прилипать” к идущей за ней букве ‘h’.
За время паузы отвечает
Время склеивания (Bonding delay) в диалоге настроек.
Либо добавить правило “shod”->”сход”.
Реализация через хук.
Программа не делает никаких изменений в системных файлах виндовс.
Мой сайт:
последнюю версию программы я выкладываю сюда:
http://lioan.narod.ru/CrazyKeysHomepage/CrazyKeys.htm
Мой маил broberg@yandex.ru
Мой ICQ 2 0 0 4 0 6 6 0 6
Автор программы ищет работу в Москве программистом на языке C++.
А также преподавателем С++ или дискретной математики в университетах.
# HIDH_MAIN
# HIDH_ABOUT_PROGRAM_WELCOME
# HIDHELP_SETUP_DLG
# HIDC_STATIC_LOCATION
# HIDC_RADIO_COPY_TO_PROGRAMFILES
# HIDC_RADIO_COPY_TO_APPDATA
# HIDC_RADIO_CURRENTDIR
# HIDC_STATIC_SHORTCUTS
# HIDC_CHECK_DESKTOP
# HIDC_CHECK_STARTUP
# HIDC_QUICK_OPTIONS
# HIDHELP_PROPERTIES_DLG
# HIDHELP_OPTIONS_DLG
# HIDC_STATIC_KEYBOARDS
# HIDC_STATIC_SOURCE
# HIDC_COMBO_SOURCE
# HIDC_STATIC_TARGET
# HIDC_COMBO_TARGET
# HIDC_STATIC_CHANGE_BETWEEN
# HIDC_STATIC_INPUT_LANGUAGES
# HIDC_STATIC_LANGUAGE_SEQ
# HIDC_STATIC_KEYBOARD_LAYOUT
# HIDC_STATIC_LAYOUT_SEQ
# HIDC_STATIC_LANGUAGE_BUTTONS
# HIDC_RUSSIAN_LL
# HIDC_DIALOG_LL
# HIDC_REFRESH_LL
# HIDC_OPTIMAL_LL
# HIDC_STATIC_RULES
# HIDC_LIST_RULES
# HIDC_ADD_RULE
# HIDC_DELETE_RULE
# HIDC_REMOVE_RULES
# HIDC_DEFAULT_RULES
# HIDC_STATIC_OPTIONS_FILENAME
# HIDC_STATIC_FILENAME
# HIDC_EDIT_FILENAME
# HIDC_LOAD
# HIDC_SAVE
# HIDC_SAVEAS
# HIDC_STATIC_MUI_LANGUAGE
# HIDC_COMBO_LANGUAGE_MUI
# HIDC_STATIC_MUI
# HIDC_STATIC_ADVANCED
# HIDC_EDIT_DELAY
# HIDC_SPIN_DELAY
# HIDC_STATIC_ADVANCED_DELAY
# HIDC_EDIT_SLEEP
# HIDC_SPIN_SLEEP
# HIDC_STATIC_ADVANCED_SLEEP
# HIDC_EDIT_TIMER
# HIDC_SPIN_TIMER
# HIDC_STATIC_ADVANCED_TIMER
# HIDC_STATIC_CHANGE_SWITCH_KEY
# HIDC_COMBO_VK_NAMES
# HIDC_STATIC_VK_COMMENT
# HIDC_STATIC_VK
# HIDC_STATIC_VK_FACE
# HIDC_STATIC_VERSION
# HIDH_ABOUT_PROGRAM_WORK
# HIDH_ABOUT_PROBLEMS
# HIDH_ABOUT_SOURCE
# HIDH_ABOUT_ME