RecentScreens — переключение между окнами как в MS Windows™
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
RecentScreens — переключение между окнами как в MS Windows™
В большинстве приложений, которые я использую, переключение между окнами происходит в порядке их использования (MRU order).
Но не во всех, пример исключений: FAR manager, Google Chrome.
Для решения этой проблемы в фаре был когда-то такой плагинчик RecentScreens — меню «Экраны» в порядке использования
Вашему вниманию предлагается LuaMacro-реализация подобной функциональности.
Переключение окон-экранов по умолчанию заменяет LCtrlTab (только левый Ctrl).
В отличии от обычного переключения экранов — в процессе переключения может отображаться список окон (до тех пор, пока удерживается Ctrl).
Требуется FAR3 build 5547 или новее.
[download] https://chiselapp.com/user/johnd0e/repo ... creens.lua
Но не во всех, пример исключений: FAR manager, Google Chrome.
Для решения этой проблемы в фаре был когда-то такой плагинчик RecentScreens — меню «Экраны» в порядке использования
Вашему вниманию предлагается LuaMacro-реализация подобной функциональности.
Переключение окон-экранов по умолчанию заменяет LCtrlTab (только левый Ctrl).
В отличии от обычного переключения экранов — в процессе переключения может отображаться список окон (до тех пор, пока удерживается Ctrl).
Требуется FAR3 build 5547 или новее.
[download] https://chiselapp.com/user/johnd0e/repo ... creens.lua
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: RecentScreens — переключение между окнами как в MS Windo
Latest post of the previous page:
А при использовании RecentScreens кто как предпочитает переключаться в панели?CtrlTab или отдельной комбинацией?
Alt0?
Re: RecentScreens — переключение между окнами как в MS Windo
Я из редактора в панели переключался по комбинации Alt`, а из панелей по ней же в редактор в тот, из которого вышел последний раз. Было это во времена 1.7. В 3 хочу также
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: RecentScreens — переключение между окнами как в MS Windo
Я без RecentScreens переключаюсь по Alt0 и не вижу, почему с RecentScreens это должно измениться.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Re: RecentScreens — переключение между окнами как в MS Windo
А можно как-то заменить "Tab" на "`" (это на одну клавишу выше)? Я пробовал в скрипте macroKey = "Tab" заменить на macroKey = "`" но он работает только при CtrlSift`. Просто у меня на Tab повешено сравнение и вроде привык. А вообще бы в идеале клавиша назначается польвователем (но это вряд ли получится - как бы мкрос переписывается)?
Docent1
- Tim Sobolev
- Posts: 729
- Joined: Fri 01 Apr, 2005 14:46
- Location: Украина
- Has thanked: 1 time
- Been thanked: 7 times
Re: RecentScreens — переключение между окнами как в MS Windo
Открываем любой файл на редактирование, для которого в ESC "<lockfile value="on"/>", жмём F6 и вуаля, работать больше нельзя.
Проблемы как со скриптом из шапки, так и с фиксом на этой странице.
Проблемы как со скриптом из шапки, так и с фиксом на этой странице.
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: RecentScreens — переключение между окнами как в MS Windo
Там ошибка,
eval(mf.waitkey())
надо исправить на Keys(mf.waitkey())
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
r3.6
Исправлены ошибки, скрипт адаптирован к изменениям билда 4026.
В шапке.
P.S.
В режиме с отображением списка переключение происходит только при отпускании Ctrl (т.е. режим Instant не работает).
Причина: баг, внесённый в билде фара 3847: фаре http://bugs.farmanager.com/view.php?id=1301#c12736
В шапке.
Теперь достаточно изменить переменнуюDocent1 wrote:А можно как-то заменить "Tab" на "`" (это на одну клавишу выше)?
macroKey
в начале файла.Теперь в комплекте отдельный макрос на CtrlCapsLock, по умолчанию неактивен (NoMacro).IgorZ wrote:Идеальное для меня поведение, выявленное экспериментально - по CtrlTab немедленное переключение по списку без вывода меню, а по CtrlCapsLock вывод меню с переключением после отпускания Ctrl.
P.S.
В режиме с отображением списка переключение происходит только при отпускании Ctrl (т.е. режим Instant не работает).
Причина: баг, внесённый в билде фара 3847: фаре http://bugs.farmanager.com/view.php?id=1301#c12736
-
- Posts: 726
- Joined: Sun 03 Apr, 2005 22:00
- Location: Казань
- Been thanked: 2 times
Re: RecentScreens — переключение между окнами как в MS Windo
John Doe
На вьюверах переключение сбоит. Открываем три файла, жмём и удерживаем Ctrl+Tab так, чтобы файл 1 сменился на файл 2, в появившемся меню выбираем файл 3. Результат: в заголовке консоли видим «просмотр файла 3», на экране по-прежнему просмотр файла 2.
На вьюверах переключение сбоит. Открываем три файла, жмём и удерживаем Ctrl+Tab так, чтобы файл 1 сменился на файл 2, в появившемся меню выбираем файл 3. Результат: в заголовке консоли видим «просмотр файла 3», на экране по-прежнему просмотр файла 2.
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: RecentScreens — переключение между окнами как в MS Windo
Воспроизводится почти всегда при переключении между двумя вьюверами.
Если после этого во вьювере нажать (например) PgUp, то на экране проявляется правильный файл.
Скрипт честно посылает ACTL_SETCURRENTWINDOW и ACTL_COMMIT.
Похоже баг в фаре.
Update
Так и есть, после ACTL_COMMIT неправильно работает VCTL_GETINFO.
Можно убедиться, добавив после строки 78 проверку:
Если после этого во вьювере нажать (например) PgUp, то на экране проявляется правильный файл.
Скрипт честно посылает ACTL_SETCURRENTWINDOW и ACTL_COMMIT.
Похоже баг в фаре.
Update
Так и есть, после ACTL_COMMIT неправильно работает VCTL_GETINFO.
Можно убедиться, добавив после строки 78 проверку:
- Tim Sobolev
- Posts: 729
- Joined: Fri 01 Apr, 2005 14:46
- Location: Украина
- Has thanked: 1 time
- Been thanked: 7 times
Re: RecentScreens — переключение между окнами как в MS Windows™
Будет ли возвращена настраиваемая поддержка Desktop Screen и удалены костыли которые были добавлены до применения фиксов в FAR?
Re: RecentScreens — переключение между окнами как в MS Windows™
FAR3.4040 открыт в конему. Открываем в панелях редактор любого файла, ctrl-tab в панели, открываем вьювер любого файла, ESC - должны вернуться в панели, но вместо этого попадаем в редактор. Проявляется дефект и через скрипты.
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: RecentScreens — переключение между окнами как в MS Windows™
Если объясните какая требуется поддержка.Tim Sobolev wrote:Будет ли возвращена настраиваемая поддержка Desktop Screen
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
RecentScreens — переключение между окнами как в MS Windows™
Conemu обрабатывает комбинацию CtrlTab самостоятельно, в фар она не приходит, соответственно RecentScreens работает некорректно.AleXH wrote:...но вместо этого попадаем в редактор.
Если бы можно было как-то отловить событие перехода в панели, то такой проблемы не было бы.
Впрочем, насколько я знаю у Conemu есть собственная функция Recent, поэтому стоит запретить RecentScreens при наличии Conemu.
И без Conemu? Причина та же: если переход в панели выполнен не изнутри RecentScreens, то он просто не регистрируется.AleXH wrote:Проявляется дефект и через скрипты.