Page 1 of 1

TextLayout plugin

Posted: Thu Mar 03, 2011 5:46 am
by Instructor
Переключение раскладки клавиатуры в соответствии с текстом под кареткой.

Switching keyboard layout according to text under caret.


<<Download>>

Posted: Thu Mar 03, 2011 10:05 am
by VladSh
Работает :D
Теперь использование PuntoSwitcher'а можно подсократить.. Жаль только что этого функционала нет в PS, т.к. он полезен не только для AkelPad'а.
Интересно, как определяется украинская кодировка.. (сейчас нет возможности проверить).

P.S. И, может, теперь в него добавить функционал скриптов конвертации раскладок (чтобы всё в одном месте)? :)

Posted: Thu Mar 03, 2011 11:02 am
by FeyFre
На слове с буквой "ґ" продолжает переключатся на русский язык, хотя ни в русском языке, ни в русской раскладке её нету, зато есть в в раскладке украинского языка.

Posted: Thu Mar 03, 2011 3:22 pm
by VladSh
Ещё. Если курсор стоит сразу же перед первой буквой, то раскладка не переопределяется /пояснение от FeyFre здесь/.

Posted: Fri Mar 04, 2011 4:27 pm
by Instructor
FeyFre
На слове с буквой "ґ" продолжает переключатся на русский язык...
В текущей версии плагин знает только об английской раскладке и не английской.

VladSh
Если курсор стоит сразу же перед первой буквой, то раскладка не переопределяется...
Сейчас определение идет по левому символу от каретки.

Posted: Fri Mar 04, 2011 4:55 pm
by VladSh
Instructor wrote:Сейчас определение идет по левому символу от каретки.
Есть 2 небольших неудобства:

1. Когда я зажал клавишу-стрелку "Влево" или "Вправо", и когда бежит курсор, раскладка прыгает туда-сюда, в зависимости от текущего текста под курсором. Можно ли сделать, чтобы раскладка определялась и переключалась (при необходимости) только после отпускания клавиш? Такая же "фича" есть в плаге проверки орфографии.
Всё это только замедляет работу редактора, и на слабых машинах это (подтормаживание) очень видно (в случае SpellCkeck'а даже подёргивание).

2. Допустим я поставил курсор перед словосочетанием и поставил кавычку (в английской раскладке), потом с помощью клавиши-стрелки "Вправо" перемещаюсь в конец словосочетания и ставлю вторую кавычку, в итоге получаю не кавычку, а большую букву Э, что очень неудобно.
Предполагаю, что если сделать определение раскладки по символу после курсора, то будет тот же трабл, но при использовании перемещения стрелкой "Влево".
Так что надо или определять раскладку стоя только на слове (с обоих сторон есть буквы) или с обеих сторон от каретки.
Ещё лучше - иметь возможность это настраивать (функция в плаге с фозможностью автозагрузки).
А ещё лучше - какую-нибудь внутреннюю функцию-анализатор для решения подобных проблем (для данного случая, естественно, что в конце слова пользователь вряд ли будет добавлять букву Э, и, поэтому, лучше её автоматом переключать в кавычку).

Posted: Fri Mar 04, 2011 6:13 pm
by Instructor
VladSh
1. Таких клавиатур еще не изобрели, чтобы тормозило :)
2. Есть еще Shift+2.

Posted: Fri Mar 04, 2011 6:54 pm
by VladSh
Instructor wrote:1. Таких клавиатур еще не изобрели, чтобы тормозило :)
На работе P-4 2,8 - реально видно подёргивание и торможение. Если отключить плаги, то каретка перемещается чуть ли не вдвое быстрее.
Есть ещё ноут начала 2000-х, где 128 метров мозгов и XP, там вообще атас, с плагами работать невозможно.
Instructor wrote:2. Есть еще Shift+2.
То такая « кавычка, а мне нужна ".

Posted: Fri Mar 04, 2011 7:12 pm
by FeyFre
В текущей версии плагин знает только об английской раскладке и не английской.
То-то я думаю почему это при наползание на кириллицу с английского переключается на немецкий :lol:

Posted: Fri Mar 04, 2011 7:12 pm
by Instructor
1. Мы же говорим о плагине, а не о плагинах.
2. У меня на клавиатуре, что Shift+2 в русской, что Shift+Э в английской дают ".

Posted: Wed Mar 16, 2011 3:59 pm
by Instructor
Изменено: учитывается текст справа от каретки, если слева нет значимых символов.

Changed: text at right of the caret takes into account, if at left no meaningful symbols.


TextLayout plugin v1.1

Posted: Thu May 12, 2011 4:54 am
by Instructor
С версии 4.6.0 AkelPad'а, плагин интегрирован в программу.