﻿Удобных сочетаних клавиш всегда не хватает, поэтому предлагаю попробовать в фаре проверенную временем систему последовательностей из нескольких нажатий, знакомую многим по старым IDE от [i][url=https://ru.wikipedia.org/wiki/Borland]Borland[/url][/i] (хотя большинство сочетаний пришли туда в свою очередь из редактора [i][url=https://en.wikipedia.org/wiki/WordStar]WordStar[/url][/i]).

Предлагаются макросы, повторяющие действие некоторых команд: [spoiler="Ctrl-K-x"][code]^KB  Mark block beginning
^KK  Mark block end
^KT  Mark single word
^KL  Mark line
^KN  Toggle block column mode
^KH  Hide/restore selection
^KP  Restore last block selection
^K-n Set place marker
^K[  Mark block: pair matching backward [Brackets plugin]
^K]  Mark block: pair matching forward [Brackets plugin]
^KC  Copy block / Duplicate line
^KV  Move block
^KY  Delete block
^KI  Indent block
^KU  Unindent block
^KE  lower [Change Case plugin]
^KF  UPPER [Change Case plugin]
^KX  Overwrite block with clipboard content
[/code][/spoiler] [spoiler="Ctrl-Q-x"][code]^QB  to beginning of block
^QK  to end of block
^QS  to beginning of line
^QD  to end of line
^QE  to top of window
^QX  to bottom of window
^QR  to top of file
^QC  to bottom of file
^QV  switch between last edit positions
^QP  switch between last edit positions [global]
^Q-n Find place marker
^Q[  Pair matching backward [Brackets plugin]
^Q]  Pair matching forward [Brackets plugin]
^QT  Pos current line to the top of the window
^QU  Pos current line to the bottom of the window
^QF  Find…
^QA  Find & replace…
^QY  Delete to end of line
^Q-DEL Delete to beginning of line
^QL  Restore line
[/code][/spoiler] [spoiler="Ctrl-O-x"][code]^OO Current editor options
^OP Persistent blocks on/off
^OI Autoindent on/off
^OT Tab mode on/off
^OS Show white space
^OC CharCodeBase
^OW Auto wrap toggle [Auto wrap plugin]
^OJ Justify Paragraph [Align block plugin]
[/code][/spoiler] (под "x" здесь понимается вторая клавиша последовательности, например [b]^KB[/b] надо понимать как [b]CtrlK-B[/b]).

Часть команд дублирует команды Far, часть — добавляет хоткеи для управления некоторыми параметрами редактора, часть — использует функции стандартных плагинов.

Хотя действия большинства команд очевидны, систему следует описать в целом:
[list]
[*]Основная функциональность — работа с блоками: воспроизводится то самое поведение [url=https://ru.wikipedia.org/wiki/Turbo_Pascal]turbo[/url]-сред: отдельные команды для пометки начала/конца блока, и пр.
[*]Применения команд создаёт "постоянные" блоки (режим по умолчанию отключенный в Far), но изменение это временно, до тех пор, пока не будет выделен другой блок (или сброшено выделение).
Это позволяет прозрачно совмещать оба типа выделения, без необходимости явно трогать настройки.
[list]
[*]Текущее состояние режима постоянных блоков индицируется на линейке клавиш ([b]F3[/b]), как предлагалось [url=https://forum.farmanager.com/viewtopic.php?p=83462#p83462]тут[/url]. Кроме того, выполнение ряда команд сопровождается выводом состояния в строке статуса (кратковременно).
[*]"Классическое" поведение постоянных блоков тоже возможно, если режим включен в глобальных настройках редактора.
Активировать его в локальных (^OO) - недостаточно.
[*]Если же глобально режим отключен (что в Far является умолчательным), то команда ^OP (или F3) переключает свойство текущего блока, а не режим.
[/list]
[/list]

Не все функции этого пакета имели аналоги в турбо средах. Например:
[list]
[*]^KX  Overwrite block with clipboard content
[*]^KN переключить тип блока (поточный/вертикальный)
[*]^KP вернуть выделение предыдущему блоку (запрашивалось [url=https://forum.farmanager.com/viewtopic.php?p=83476#p83476]тут[/url]).
[todo] сформулировать отличие от ^KH
Так же можно переключаться между текущим и предыдущим выделением.
Альтернативный шорткат — Ctrl+U, как бы инвертирует штатное действие (сброс выделения).
[*]CtrlU:Hold - выделяет последние изменённые строки.
Главным образом для того чтобы восстановить выделение после вставки блока, или после [i]undo[/i] операции с блоком.
В связи со странностями EE_CHANGE вынуждено применяется дополнительная эвристика, покрывающая не все случаи потенциального использования.
[*]^QV возвращает курсор в место последней правки, подобно шорткату [url=https://eclipseide.org/]Eclipse[/url] Ctrl+Q (запрашивалось [url=https://forum.farmanager.com/viewtopic.php?f=7&t=5711]тут[/url]), или ShiftF5 в [i]MS Word[/i] (запрашивалось [url=https://forum.farmanager.com/viewtopic.php?p=83464#p83464]тут[/url], работает не идентично MS).
Сохраняются несколько последних позиций, повторные нажатия позволяют переключаться между ними (и возвращаться в исходную позицию).
^QP — то же самое, но если последняя правка была произведена не в текущем редакторе, то открывает сесто последней правки в нужном файле (в панелях тоже работает).
[*]Для [i]непостоянных[/i] блоков кнопки Left/Right перемещают курсор между позициями начала и конца выделения (предлагалось [url=https://forum.farmanager.com/viewtopic.php?p=39478#p39478]тут[/url]).
[/list]

Дополнительно: [spoiler]
[list]
[*]Функции некоторых команд расширены по сравнению с фаровскими аналогами. Например:
^KC работает и с непостоянными блоками. При отсутствии блока выделяет и дублирует текущую строку.
^KY удаляет блок только если он на экране, в противном случае только позиционируется на него.
[*]Для постоянных блоков: в этом режиме есть две опции, видимо вообще не предназначенные для использование (их включение гарантирует неожиданности).
С помощью макросов их поведение модифицировано так:
[b][x] Del removes blocks[/b] — Del удаляет блок только если курсор находится в пределах блока.
[b]Editor.BSLikeDel[/b] — BS удаляет блок только если курсор находится у его правой границы.
[*]Также в комплекте макросы для Colorer, аналогичные штатным, но занимающие лишь одну клавишу [spoiler="Alt-C-x"][code]C      Colorer menu
L      List types
[      Match pair
]      Select block
P      Select pair
,      Outliner list
'      Errors list
K      Select region
A      Region info
O      Find Function
U      Update highlighting
R      Reload schema library
ShiftC Configure
X      Toggle Cross visibility
T      Toggle Colorer in the current editor
[/code][/spoiler][/list][/spoiler]

Для того, чтобы макросы активировались последовательностью нажатий: требуется также установить скрипт [url=https://forum.farmanager.com/viewtopic.php?f=15&t=8764]macroEx[/url].

Если не нравятся последовательности, то несложно определить собственные макросы на удобные сочетания.

Скачать: https://chiselapp.com/user/johnd0e/repository/turbo/zip/tip/turbo.zip
