1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
Плагин предназначен для изменения раскладки текста в полях редактирования (всего текста, выделенного, или текущего слова) (Пример (EN->RU): Ghbdtn? rfr ltkf& - Привет, как дела?), или отображения "расшифрованного" текста из нередактируемых полей (включая логи: RTF, History++, IEView) посредством вплывающего окна с возможностью копирования результата в буфер обмена. Начиная с версии 0.0.1.0 в плагин добавлена возможность преобразования и регистра символов.
Раскладки клавиатуры произвольные, их перечень заимствуется из установленных в системе. Для преобразования текста используются конфигурационные строки, которые начиная с версии 0.0.1.0 генерируются плагином самостоятельно(!). Возможность их отредактировать временно оставлена на случай неверной генерации строк для неоттестированных автором раскладок.
Имеется возможность изменять горячие клавиши для указанных выше функций.
Вопросы и предложения, а также отчеты о багах на форуме: http://lemnews.com/forum/viewtopic.php?t=1493
Отдельное спасибо за помощь в разработке и вдохновение: Vasilich, theMIROn, Awkward, Nullbie, Thief, induction, LEMnews-форуму, каналу #mirandaim на RusNet и многим, многим другим, включая всех пользователей, заинтересованных в развитии плагина.
----------
ChangeLog:
0.0.1.4
* Исправлена ошибка в GUI настроек горячих клавиш
* Исправлена генерация конфигурационных строк для раскладок с нулевым символом
* Добавлена возможность изменения состояния Caps Lock при инвертировании регистра символов (опционально).
* Убрана опция "Layout of text is the current layout". Для определения раскладки конвертируемого текста теперь используется совмещенный метод.
* Добавлена проверка на используемый IM-клиент.
* Мелкие багфиксы
0.0.1.2
* Расширенные возможности конфигурирования горячих клавиш
* Мелкие багфиксы
* Спасибо induction за иконки
0.0.1.1
* Добавлена поддержка Updater
* Пофиксен краш при вызове преобразования в окне истории History++
* Мелкие багфиксы
0.0.1.0
* Впервые плагин выкладывается на FL.
* Плагин компилируется в двух версиях: ANSI и Unicode.
* Сгенерирован UUID: {c5ef53a8-80d4-4ce9-b341-ec90d3ec9156} (UNICODE)
{87af74ba-035c-4d0d-b68d-d0d6ae1ebfcd} (ANSI)
* Пофиксены утечки памяти
* Генерация конфигурационных строк осуществляется плагином самостоятельно без использования предопределенных строк.
* В базе хранятся только те конфигурационные строки, что отличаются от строк по-умолчанию (сгенерированных плагином). Имена параметров в базе для них изменены в соответствии с полным значением HKL для раскладки.
* Добавлена возможность преобразования регистра текста.
* Добавлена возможность использования альтернативной горячей клавиши для преобразования раскладки текста.
* Режим "текущего слова" задается не глобально, а для каждой горячей клавиши.
* Добавлена возможность двунаправленного преобразования текста, если в системе установлено 2 раскладки. (Пример (EN<->RU): Jgthfwbjyyfz cbcntvf Дштгч ckj;yf lkz hzljds[ гыук-jd - Операционная система Linux сложна для рядовых user-ов)
* Добавлена возможность воспроизведения звука при преобразованиях (Options - Customize - Sounds)
* Добавлена возможность "расшифровки" текста для лога History++ и без входа в режим псевдо-редактирования сообщения (возможно выделение сразу нескольких сообщений).
* Отображение "расшифрованного" текста для нередактируемых полей возможно во всплывающих окнах (если установлен и включен popup-плагин), или MessageBoxe-е (в противоположном случае). Настройка всплывающих окон Options - PopUps - ChangeKeyboardLayout
* Спасибо induction за иконки по-умолчанию для всплывающих окон.
* Добавлена возможность изменять иконки для всплывающих окон.
* Большое количество прочих оптимизаций и изменений кода.
0.0.0.9
* Пофиксен баг, при котором плагин крашил Миранду, если не установлен плагин IEView
* Некоторые оптимизации
* Изменена кодировка translate.txt :))))
* Добавлено 2 новых сервиса (определение раскладки текста и изменение раскладки произвольного текста). См. m_changekeyboardlayout.h
0.0.0.8
* Вновь обновлены конфигурационные строки для известных плагину раскладок. При первом запуске Миранды после обновления они будут принудительно обновлены. Поэтому, если Вы используете раскладки, отличные от EN, RU, DE, BE, RO сконфигурируйте их заново в соответствии с новыми строками.
* Добавлены конфигурационные строки по умолчанию для белоруской и румынской раскладок.
* Добавлена возможность работы с журналом сообщений. Результат преобразования выдается в буфер обмена и MessageBox() (опционально). В случае использования IEView обрабатывается только выделенный текст. Для RTF-журналов равносильно с полем набора (выделенный, весь или текущее слово)
* Значительное изменение кода, оптимизации и, вероятно, новые баги :-D
* Добавлен файл перевода translate.txt (на примере русского языка)
0.0.0.7
* Обновлены конфигурационные строки для известных плагину раскладок. При первом запуске Миранды после обновления они будут принудительно обновлены. Поэтому, если Вы использовали раскладки, отличные от EN, RU, DE, сконфигурируйте их заново в соответствии с новыми строками.
* Добавлена возможность сброса конфигурационной строки для выбранной раскладки в значение по умолчанию.
* Добавлена возможность выбора режима "текущего слова" (по умолчанию - отключено). Во включенном состоянии по горячей клавише, если нет выделенного текста, будет преобразовываться текущее слово. Во выключенном состоянии при отсутствии выделенного текста - весь текст в поле редактирования.
0.0.0.6
* Пофиксен баг, при котором модуль отказывался переключать раскладку текста до повторной установки горячей клавиши.
0.0.0.5
* Плагин вновь работает только для Unicode Miranda IM.
* Поддержка произвольных раскладок клавиатуры, перечень которых заимствуется из системы. При наличии неизвестных плагину раскладок, для них необходимо в настройках задать конфигурационные строки, использующиеся для преобразования текста (В данный момент строки конфигурировать не надо для языков EN, RU, DE). Преобразование текста происходит в прямой последовательности расположения раскладок в системе.
* 2 способа определения текущей раскладки текста: 1) соответствует активной раскладке; 2) по наибольшему количеству символов из конфигурационных строк. Опционально.
* Переключение раскладки клавиатуры в системе одновременно с изменением раскладки текста.
* Запоминание позиции курсора и выделения.
* Одна горячая клавиша для двух функций. Если имеется выделенный текст, он и преобразуется, если нет, то весь текст в окне редактирования.
* Возможность редактирования конфигурационных строк посредством GUI.
* Добавлен сервис, позволяющий вызывать функцию преобразования текста в окне редактирования из других модулей. См. m_changekeyboardlayout.h
0.0.0.3
* Пофиксены баги
* Изменен алгоритм определения текущей раскладки, теперь он эффективнее
0.0.0.2
* Теперь плагин универсален для ANSI и Unicode Миранды.
* Добавлена возможность менять раскладку для всего текста в поле редактирования
* Добавлена возможность редактирования горячих клавиш (Plugins - ChangeKeyboardLayout)
0.0.0.1
* Первый публичный релиз
|