Skip to content

Commit

Permalink
Help: Особенности FAR2L - начало работы
Browse files Browse the repository at this point in the history
  • Loading branch information
akruphi committed Jul 12, 2023
1 parent e051d61 commit c882ae8
Showing 1 changed file with 86 additions and 0 deletions.
86 changes: 86 additions & 0 deletions far2l/bootstrap/scripts/FarRus.hlf.m4
Expand Up @@ -7,6 +7,8 @@ m4_include(`farversion.m4')m4_dnl
$^#Программа управления файлами и архивами#
`$^#'FULLVERSIONNOBRACES`#'
`$^#©1996-2000 Eugene Roshal, ©2000-2016 FAR Group,' ©COPYRIGHTYEARS `FAR People'#
~Особенности FAR2L - начало работы~@Far2lGettingStarted@

~Индекс файла помощи~@Index@
~Как пользоваться помощью~@Help@

Expand Down Expand Up @@ -119,6 +121,90 @@ $ # FAR: что это такое#
- Официальный сайт исходного проекта FAR Manager
~http://www.farmanager.com~@http://www.farmanager.com@

См. также:
~Особенности FAR2L - начало работы~@Far2lGettingStarted@
~Лицензия~@License@

@Far2lGettingStarted
$ #Особенности FAR2L - начало работы#

FAR2L - Linux порт FAR Manager v2 (см.: ~Что такое FAR2L~@About@)
FAR2L официальный сайт: ~https://github.com/elfmz/far2l~@https://github.com/elfmz/far2l@

#Режимы интерфейса#
У far2l три основных бекенда отрисовки (подробности в ~Режимы интерфейса~@UIBackends@):
- GUI - на базе wxWidgets, работает в графическом режиме, идеальный UX, куча зависимостей;
- TTYXi - работает в терминальном режиме, зависимости буквально от пары иксовых либ (для поддержки всех-всех сочетаний клавиш и буфера обмена), почти идеальный UX;
- TTY - чистый терминальный режим, никаких иксовых зависимостей, UX с некоторыми ограничениями (теперь полноценно работает при запуске в соответствующих эмуляторах терминалов, используя их расширенные возможности передачи клавиш).
Если у Вас установлена версию GUI, то при запуске будет пытаться использоваться она.
Для принудительного запуска терминального варианта используйте ключ #--tty#: #far2l --tty# или #far2l --tty --ee# (подробнее про ключи запуска в ~Параметры командной строки~@CmdLine@ или #far2l --help#).

#Перехват комбинаций клавиш оболочками#
Многие комбинации клавиш #Alt-F1#, #Alt-F2#, #Alt-F7#, #Ctrl-стрелки# и т.п. перехватываются оболочками GNOME, KDE, Xfce, macOS и т.п. Для работы отключайте их в настройках оболочек.
Эмуляторы терминалов также часто не передают запущенным в них консольным приложениям часть комбинаций клавиш, или не различают нажатие различных комбинаций модификаторов (#Ctrl#, #Alt# и т.п.).

#Особенности Wayland (и в Win11 wslg)#
Для адекватной работы в Wayland (и в Win11 wslg) помогает запустить в режиме xWayland, указав переменную среды #GDK_BACKEND=x11#, т.к. far2l (режимы gui и ttyxi) для работы с буфером обмена и получения расширенных сочетаний клавиш использует возможности X11, которые в таком виде ограничены или недоступны или несовместимы в чистом Wayland'е:
- запуск из консоли: #GDK_BACKEND=x11 far2l#;
- внутри ярлыка #/usr/share/applications/far2l.desktop# заменить #Exec=far2l# на #Exec=env GDK_BACKEND=x11 far2l#

#Особенность вставки в терминалах#
Есть комбинация #вставки терминала# (терминал имитирует ввод с клавиатуры) и есть #вставка самого фара# (сам far2l делает paste). При этом комбинация вставки терминала в разных терминалах разная (и может перекрывать стандартные клавиши вставки far2l #Shift-Ins# или #Ctrl-V#).
В версии без ttyx (и без включенной поддержки OSC 52 как в far2l, так и в терминале) вставка самого фара использует его #внутренний буфер# (т.к. far2l не получает доступ к системному буферу обмена), а вставка терминала - #системный буфер обмена#.

#Расположение персональных настроек far2l и истории#
- по умолчанию far2l работает с настройками хранящимися в #~~/.config/far2l#
- при запуске ключ #-u# позволяет указать путь к произвольному расположению настроек (если не задан параметр #-u#, то используется каталог из переменной окружения #FARSETTINGS# и только при её отсутствии каталог по умолчанию)

#Изменение шрифта для far2l gui#
- Меню(#F9#)->Параметры->Настройки интерфейса->[ Выбрать шрифт ]

#Полноценная работа с буфером обмена в терминальной версии far2l#
Для взаимодействия с буфером обмена необходимо не забыть включить #OSC 52# как в #настройках far2l#
(опция OSC 52 видна в Меню(#F9#)->Параметры->Настройки интерфейса, только когда все остальные варианты поддержки клипборда недоступны;
так что если не видна, надо запустить #far2l --tty --nodetect#), так и в #настройках терминалов необходимо разрешить OSC 52# (по умолчанию OSC 52 отключен в части терминалов из соображений безопасности; OSC 52 в куче терминалов реализован только для режима copy, а paste из терминала идёт через т.н. bracketed paste mode).

#Дистанционный доступ к far2l на удаленном компьютере#
При обрыве сессии запущенный на удаленном far2l не умирает, а остается ждать переподключения (поведение изменяется ключами запуска #--immortal# и #--mortal#), и при последующем запуске far2l найдёт предыдущий запущенный и попробует восстановиться.
Для передачи на запущенный на удалённом компьютере far2l расширенных сочетаний клавиш и буфера обмена необходимо инициировать соединение из умеющих это клиентов.

#Терминалы и ssh-клиенты, поддерживающие расширенные сочетания клавиш far2l#
- Встроенный терминал far2l-gui (Linux, macOS, *BSD),
см. ~Режимы интерфейса~@UIBackends@ и в помощи NetRocks plugin раздел ~Command line and remote FAR2L~@<NetRocks>CommandLine@
(клавиши и буфер обмена через far2l TTY extensions support)

- kovidgoyal's kitty (Linux, macOS, *BSD): ~https://github.com/kovidgoyal/kitty~@https://github.com/kovidgoyal/kitty@ & ~https://sw.kovidgoyal.net/kitty~@https://sw.kovidgoyal.net/kitty@
(клавиши через kovidgoyal's kitty keyboard protocol, для взаимодействия с клипбордом включить OSC 52)

- Wez's Terminal Emulator (Linux, FreeBSD, macOS, Windows): ~https://github.com/wez/wezterm~@https://github.com/wez/wezterm@ & ~https://wezfurlong.org/wezterm~@https://wezfurlong.org/wezterm@
(клавиши через kovidgoyal's kitty keyboard protocol, для взаимодействия с клипбордом включить OSC 52)

- iTerm2 (macOS): ~https://gitlab.com/gnachman/iterm2~@https://gitlab.com/gnachman/iterm2@ & ~https://iterm2.com~@https://iterm2.com@
(клавиши через iTerm2 "raw keyboard" protocol, для взаимодействия с клипбордом включить OSC 52)

- Windows Terminal (в win11 стоит из коробки, в win10 надо ставить)
(клавиши через win32-input-mode, для взаимодействия с клипбордом включить OSC 52)

- putty4far2l (Windows): ~https://github.com/unxed/putty4far2l~@https://github.com/unxed/putty4far2l@ & ~https://github.com/ivanshatsky/putty4far2l/releases~@https://github.com/ivanshatsky/putty4far2l/releases@
(клавиши и буфер обмена через far2l TTY extensions support)

- cyd01's KiTTY (Windows): ~https://github.com/cyd01/KiTTY~@https://github.com/cyd01/KiTTY@ & ~https://www.9bis.net/kitty~@https://www.9bis.net/kitty@
(клавиши и буфер обмена через far2l TTY extensions support)

- putty-nd (Windows): ~https://sourceforge.net/projects/putty-nd~@https://sourceforge.net/projects/putty-nd@ & ~https://github.com/noodle1983/putty-nd~@https://github.com/noodle1983/putty-nd@
(клавиши и буфер обмена через far2l TTY extensions support)


См. также:
~Что такое FAR2L~@About@
~Лицензия~@License@

~Индекс файла помощи~@Index@
~Как пользоваться помощью~@Help@

~Режимы интерфейса~@UIBackends@
~Параметры командной строки~@CmdLine@ или #far2l --help#
~Определение кодировок ANSI и OEM~@CodePagesSet@

@License
$ # FAR2L: Лицензия#
Expand Down

0 comments on commit c882ae8

Please sign in to comment.