Конвертирует выделение или слово перед курсором используя XLAT
В отличии от стандартного макроса, идущего в поставке FAR, корректно работает с позицией строки, если макрос выполняется посреди слова
Макрос для FAR3, запускается по Shift + BackSpace
P.S. Возможно, использовал немного извращенные но работоспособные решения.
Работающий макрос XLat-трансформации выделения/ слова перед/под курсором
Работающий макрос XLat-трансформации выделения/ слова перед/под курсором
- Attachments
-
- Core.XLAT_ShiftBS.rar
- (753 Bytes) Downloaded 121 times
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Работающий (исправление стандартного) макрос XLAT трансформации (транслит и обратно) выделения\ слова перед курсором
Вы утверждаете, что стандартная функция работает некорректно?
Работающий (исправление стандартного) макрос XLAT трансформации (транслит и обратно) выделения/ слова перед курсором
Если речь именно о ф-ции -- я опечатался, имел ввиду стандартный макрос, идущий в папке аддонов.
Попробуйте поставить курсор посередине слова и использовать его.
Думаю, всё понятно из последовательности в макросе: CtrlShiftLeft XLat CtrlRight
Попробуйте поставить курсор посередине слова и использовать его.
Думаю, всё понятно из последовательности в макросе: CtrlShiftLeft XLat CtrlRight
Работающий (исправление стандартного) макрос XLAT трансформации (транслит и обратно) выделения/ слова перед курсором
Чему равен "XLat.WordDivForXlat"? (far:config Ctrl-Alt-F xlat)
Если пуст или отсутствует, то см. addons\XLat\Russian\Qwerty.farconfig
Это к тому, что слово "xlat" в ком.строке (при отсутствии выделения) само вычисляет слово по курсором (разделителем слов как раз является "XLat.WordDivForXlat").
Если пуст или отсутствует, то см. addons\XLat\Russian\Qwerty.farconfig
Это к тому, что слово "xlat" в ком.строке (при отсутствии выделения) само вычисляет слово по курсором (разделителем слов как раз является "XLat.WordDivForXlat").
We are the Borg. You will be assimilated.
So Say We All!
So Say We All!
- John Doe
- Бюрократ
- Posts: 13867
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Работающий (исправление стандартного) макрос XLAT трансформации (транслит и обратно) выделения/ слова перед курсором
Дело не в этом.
Топикстартер выше (не очень внятно) объясняет, что штатный макрос (Addons\Macros\ShiftBS.lua) работает неудовлетворительно, будучи запущен из середины слова. А именно: преобразует только часть слова, и при этом в результате курсор оказывается в конце, а не в исходной позиции.
Кроме того, если при вызове макроса уже есть выделение, то штатный макрос его не учитывает.
LanKing, уберите "транслит" из заголовка темы.
- John Doe
- Бюрократ
- Posts: 13867
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Работающий (исправление стандартного) макрос XLAT трансформации (транслит и обратно) выделения/ слова перед курсором
Кстати да, я согласен, что штатный макрос бестолковый.
В описании сказано "Converts the word before cursor", но совершенно непонятно для чего вообще конвертировать именно перед курсором.
Мне кажется надо его радикально упростить:
Прекрасно работает и с последним словом, и с выделением, имхо.
Edit: А в папке Addons\XLat\Russian присутствуют макросы ровно того же назначения.
Что-то одно надо удалить.
В описании сказано "Converts the word before cursor", но совершенно непонятно для чего вообще конвертировать именно перед курсором.
Мне кажется надо его радикально упростить:
Code: Select all
Macro { description="Converts selection (or last word) using XLat function";
area="Dialog Editor Shell QView Tree Info";
key="ShiftBS"; --клавишу возможно стоит поменять
condition = function() return Area.Dialog or Area.Editor or not CmdLine.Empty end;
action = function()
Keys"XLat"
end;
}
Edit: А в папке Addons\XLat\Russian присутствуют макросы ровно того же назначения.
Что-то одно надо удалить.
Работающий (исправление стандартного) макрос XLAT трансформации (транслит и обратно) выделения/ слова перед курсором
Изначально Shift-BS предполагался в качестве вот такого сценария:
Набираю "Ghbdtn" (курсор после n, т.е. в конце слова), далее Shift-BS - результат.
По мере ввода.
Набираю "Ghbdtn" (курсор после n, т.е. в конце слова), далее Shift-BS - результат.
По мере ввода.
We are the Borg. You will be assimilated.
So Say We All!
So Say We All!
- John Doe
- Бюрократ
- Posts: 13867
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Работающий макрос XLat-трансформации выделения/ слова перед/под курсором
Чем вас в этом сценарии не устраивает просто Keys"XLat"?
У меня так назначено уже 10 лет, всё работает как надо. Именно в этом сценарии.
- John Doe
- Бюрократ
- Posts: 13867
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Работающий макрос XLat-трансформации выделения/ слова перед/под курсором
Развитие предыдущего макроса
- Ограничена работа в диалогах: действует только в полях ввода, и в листбоксах.
- Работает во всех списках и меню (при активном фильтре).
- Работает в области Search