RecentScreens — переключение между окнами как в MS Windows™
В большинстве приложений, которые я использую, переключение между окнами происходит в порядке их использования (MRU order). Но не во всех, пример исключений: FAR manager, Google Chrome.
Для решения этой проблемы в фаре был когда-то такой плагинчик RecentScreens — меню «Экраны» в порядке использования
Вашему вниманию предлагается LuaMacro-реализация подобной функциональности.
Переключение окон-экранов по умолчанию заменяет LCtrlTab (только левый Ctrl).
В отличии от обычного переключения экранов — в процессе переключения может отображаться список окон (до тех пор, пока удерживается Ctrl).
За исключением порядка элементов, вид списка соответствует стандартному меню Screens) (F12).
- так же: (*) помечены редакторы с несохранёнными изменениями
- отличие: для панелей отображаются путь папки, открытой на активной панели (а не файл под курсором)
- отличие: корректно обрабатываются модальные окна
Update: после 4138 билда отображаемые номера окон не соответствуют номерам из оригинального меню Screens.
Управление
- CtrlTab / CtrlShiftTab — вперёд/назад по списку.
Также работают и
Ctrl
-Up|Down|PgUp|PgDn|Home|End
. Пока список на экране — перемещаться по его элементам можно и с помощью мыши. - Ctrl<hot_key> — переход к окну с заданной горячей клавишей (хоткей фиксированный, соответствует тому, что в стандартном Screens)
- CtrlRight / CtrlLeft — прокрутка длинных заголовков.
Если отображение списка отключено в настройках, то его можно вызвать по CtrlF12 Независимо от настроек список показывается при вызове из единственного окна, и в модальных редакторах/вьюверах
Настройка
Настройка осуществляется прямо в списке окон, вот справка (доступна по F1).
╔══════════════ RecentScreens r3 ═══════════════╗
║ Параметры, управляющие переключением, ║
║ можно изменить с помощью горячих клавиш ║
║ на цифровой клавиатуре: ║
║ ║
║ [/] Instant - определяет момент переключения ║
║ - true - при каждом нажатии CtrlTab ║
║ - false - после отпускания Ctrl ║
║ ║
║ [*] Delay - задержка появления списка экранов ║
║ Плавно изменить: [+/-] ║
║ <0 - не отображать список ║
║ /* список всегда доступен по CtrlF12 */ ║
║ ║
╚═══════════════════════════════════════════════╝
Настройки хранятся в базе LuaMacro
Требуется FAR3 build 5547 или новее.