Skip to content

Commit

Permalink
readme & help + arrange keys in menu
Browse files Browse the repository at this point in the history
  • Loading branch information
akruphi committed Jan 12, 2025
1 parent 9fb2133 commit d2a88b6
Show file tree
Hide file tree
Showing 4 changed files with 83 additions and 67 deletions.
9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -341,9 +341,13 @@ You can import the project into your favourite IDE like QtCreator, CodeLite, or
## Terminals and SSH clients
Supporting extended far2l keyboard shortcuts and clipboard access
* **kovidgoyal's kitty** (Linux, macOS, \*BSD): https://github.com/kovidgoyal/kitty & https://sw.kovidgoyal.net/kitty (TTY|k backend: keys by kovidgoyal's kitty keyboard protocol; turn on OSC 52 in far2l and kitty for clipboard support)
* **Wez's Terminal Emulator** (Linux, FreeBSD, Windows): https://github.com/wez/wezterm & https://wezfurlong.org/wezterm (TTY|k backend: keys in Linux, FreeBSD by kovidgoyal's kitty keyboard protocol; TTY|w backend: keys in Windows by win32-input-mode, enabled by default; turn on OSC 52 for clipboard support) [kitty keyboard protocol not supported in macOS & Windows]
* **kovidgoyal's kitty** (Linux/BSD, macOS): https://github.com/kovidgoyal/kitty & https://sw.kovidgoyal.net/kitty (TTY|k backend: keys by kovidgoyal's kitty keyboard protocol; turn on OSC 52 in far2l and kitty for clipboard support)
* **Alacritty** (Linux/BSD, macOS, Windows): https://github.com/alacritty/alacritty & https://alacritty.org/ (TTY|k backend: keys by kovidgoyal's kitty keyboard protocol; turn on OSC 52 in far2l for clipboard support) [in Windows in system must be conpty.dll: https://github.com/alacritty/alacritty/issues/8360]
* **Rio Terminal** (Linux/BSD, macOS, Windows): https://github.com/raphamorim/rio & https://raphamorim.io/rio/ (TTY|k backend: keys by kovidgoyal's kitty keyboard protocol; turn on OSC 52 in far2l for clipboard support)
* **Ghostty** (Linux, macOS): https://github.com/ghostty-org/ghostty & https://ghostty.org/ (TTY|k backend: keys by kovidgoyal's kitty keyboard protocol; turn on OSC 52 in far2l for clipboard support)
* **Wez's Terminal Emulator** (Linux/BSD, Windows): https://github.com/wez/wezterm & https://wezfurlong.org/wezterm (TTY|k backend: keys in Linux/BSD by kovidgoyal's kitty keyboard protocol; TTY|w backend: keys in Windows by win32-input-mode, enabled by default; turn on OSC 52 for clipboard support) [kitty keyboard protocol not supported in macOS & Windows]
* **iTerm2** (macOS): https://gitlab.com/gnachman/iterm2 & https://iterm2.com (TTY|a backend: keys by iTerm2 "raw keyboard" protocol; turn on OSC 52 for clipboard support)
* **foot** (Linux Wayland only): https://codeberg.org/dnkl/foot (TTY|k backend: keys by kovidgoyal's kitty keyboard protocol; turn on OSC 52 in far2l for clipboard support)
* **Windows Terminal** (TTY|w backend: keys by win32-input-mode; turn on OSC 52 for clipboard support; has mouse bug: https://github.com/microsoft/terminal/issues/15083 )
* _Original Putty_ does _not correctly send some keyboard shortcuts_. Please use putty forks with _special far2l TTY extensions support (fluent keypresses, clipboard sharing etc)_:
Expand All @@ -368,6 +372,7 @@ one of the best way to initiate the connection **inside local far2l-GUI**
+ **netcfg** (far2l net interfaces configuration plugin): https://github.com/VPROFi/netcfgplugin
+ **sqlplugin** (far2l sql db (sqlite, etc..) plugin): https://github.com/VPROFi/sqlplugin
+ **processplugin** (far2l processes plugin): https://github.com/VPROFi/processes
+ **far-gvfs (gvfspanel)** (far2l plugin to work with Gnome VFS): https://github.com/cycleg/far-gvfs
* **far2m** is fork with FAR3 macro system (Lua) and extended plugins: https://github.com/shmuz/far2m
Expand Down
41 changes: 23 additions & 18 deletions far2l/bootstrap/scripts/FarEng.hlf.m4
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ $ # FAR2L features - Getting Started#
(currently in Russian only).

#UI Backends#
FAR2L has 3 base UI Backends (see details in ~UI backends~@UIBackends@):
FAR2L has base UI Backends (see details in ~UI backends~@UIBackends@):
- #GUI#: uses wxWidgets, works in graphics mode, #ideal UX#
(might add dependencies to your desktop environment, e.g. wxWidgets toolkit and related packages);
- #TTY|Xi#: works in terminal mode, requires a dependency on pair X11 libraries
Expand Down Expand Up @@ -169,7 +169,7 @@ when it starts, far2l switches to #TTY|X# without i.


#Pasting feature in terminals#
The keyboard shortcut of the #terminal pasting# (terminal simulates keyboard input) and #FAR2L pasting# (FAR2L itself does paste) are different. Note that pasting keyboard shortcut in different terminals is various (and may overlap the standard FAR2L's pasting #Shift-Ins# or #Ctrl-V#).
The keyboard shortcut of the #terminal pasting# (terminal simulates keyboard input via bracketed paste) and #FAR2L pasting# (FAR2L itself does paste) are different. Note that pasting keyboard shortcut in different terminals is various (and may overlap the standard FAR2L's pasting #Shift-Ins# or #Ctrl-V#).
In FAR2L without TTY|X (and without enabled OSC 52 both in FAR2L and in terminal) FAR2L's pasting uses its #internal clipboard# (because FAR2L does not access the system clipboard), terminal pasting uses #system clipboard#.


Expand Down Expand Up @@ -202,34 +202,39 @@ and in #terminal settings# option #OSC 52 must be allowed#


#Terminals and ssh-clients supporting extended FAR2L keyboard shortcuts for plain terminal version FAR2L TTY#
- Internal terminal in FAR2L-GUI (Linux, macOS, *BSD),
- Internal terminal in #FAR2L-GUI# (Linux/BSD, macOS),
see ~UI backends~@UIBackends@ and in help of #NetRocks plugin# section #Command line and remote FAR2L#
(~TTY|F backend~@UIBackends@: keys and clipboard by 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# (Linux/BSD, macOS): ~https://github.com/kovidgoyal/kitty~@https://github.com/kovidgoyal/kitty@ & ~https://sw.kovidgoyal.net/kitty~@https://sw.kovidgoyal.net/kitty@
(~TTY|k backend~@UIBackends@: keys by kovidgoyal's kitty keyboard protocol;
for clipboard need turn on OSC 52)

- Wez's Terminal Emulator (Linux, FreeBSD, Windows): ~https://github.com/wez/wezterm~@https://github.com/wez/wezterm@ & ~https://wezfurlong.org/wezterm~@https://wezfurlong.org/wezterm@
(~TTY|k backend~@UIBackends@: keys in Linux, FreeBSD by kovidgoyal's kitty keyboard protocol;
for clipboard need turn on OSC 52 in kitty and in far2l)
- #Alacritty# (Linux/BSD, macOS, Windows): ~https://github.com/alacritty/alacritty~@https://github.com/alacritty/alacritty@ & ~https://alacritty.org/~@https://alacritty.org/@
(~TTY|k backend~@UIBackends@: keys by kovidgoyal's kitty keyboard protocol;
for clipboard need turn on OSC 52 only in far2l)
[in Windows in system must be conpty.dll]
- #Rio Terminal# (Linux/BSD, macOS, Windows): ~https://github.com/raphamorim/rio~@https://github.com/raphamorim/rio@ & ~https://raphamorim.io/rio/~@https://raphamorim.io/rio/@
(~TTY|k backend~@UIBackends@: keys by kovidgoyal's kitty keyboard protocol;
for clipboard need turn on OSC 52 only in far2l)
- #Ghostty# (Linux, macOS): ~https://github.com/ghostty-org/ghostty~@https://github.com/ghostty-org/ghostty@ & ~https://ghostty.org/~@https://ghostty.org/@
(~TTY|k backend~@UIBackends@: keys by kovidgoyal's kitty keyboard protocol;
for clipboard need turn on OSC 52 only in far2l)
- #Wez's Terminal Emulator# (Linux/BSD, Windows): ~https://github.com/wez/wezterm~@https://github.com/wez/wezterm@ & ~https://wezfurlong.org/wezterm~@https://wezfurlong.org/wezterm@
(~TTY|k backend~@UIBackends@: keys in Linux/BSD by kovidgoyal's kitty keyboard protocol;
~TTY|w backend~@UIBackends@: keys in Windows by win32-input-mode which enable by default;
for clipboard need turn on OSC 52)
[in macOS & in Windows in wezterm the kitty keyboard protocol support not working]

- iTerm2 (macOS): ~https://gitlab.com/gnachman/iterm2~@https://gitlab.com/gnachman/iterm2@ & ~https://iterm2.com~@https://iterm2.com@
- #iTerm2# (macOS): ~https://gitlab.com/gnachman/iterm2~@https://gitlab.com/gnachman/iterm2@ & ~https://iterm2.com~@https://iterm2.com@
(~TTY|a backend~@UIBackends@: keys by iTerm2 "raw keyboard" protocol;
for clipboard need turn on OSC 52)

- Windows Terminal
- #Windows Terminal#
(~TTY|w backend~@UIBackends@: keys by win32-input-mode; for clipboard need turn on OSC 52; has mouse bug: ~https://github.com/microsoft/terminal/issues/15083~@https://github.com/microsoft/terminal/issues/15083@)

- putty4far2l (Windows ssh-client): ~https://github.com/ivanshatsky/putty4far2l/releases~@https://github.com/ivanshatsky/putty4far2l/releases@ & ~https://github.com/unxed/putty4far2l~@https://github.com/unxed/putty4far2l@
Original Putty does not correctly send some keyboard shortcuts. Please use putty forks with special far2l TTY extensions support (fluent keypresses, clipboard sharing etc):
- #putty4far2l# (Windows ssh-client): ~https://github.com/ivanshatsky/putty4far2l/releases~@https://github.com/ivanshatsky/putty4far2l/releases@ & ~https://github.com/unxed/putty4far2l~@https://github.com/unxed/putty4far2l@
(~TTY|F backend~@UIBackends@: keys and clipboard by FAR2L TTY extensions support)

- cyd01's KiTTY (Windows ssh-client): ~https://github.com/cyd01/KiTTY~@https://github.com/cyd01/KiTTY@ & ~https://www.9bis.net/kitty~@https://www.9bis.net/kitty@
- cyd01's #KiTTY# (Windows ssh-client): ~https://github.com/cyd01/KiTTY~@https://github.com/cyd01/KiTTY@ & ~https://www.9bis.net/kitty~@https://www.9bis.net/kitty@
(~TTY|F backend~@UIBackends@: keys and clipboard by FAR2L TTY extensions support)

- putty-nd (Windows ssh-client): ~https://sourceforge.net/projects/putty-nd~@https://sourceforge.net/projects/putty-nd@ & ~https://github.com/noodle1983/putty-nd~@https://github.com/noodle1983/putty-nd@
- #putty-nd# (Windows ssh-client): ~https://sourceforge.net/projects/putty-nd~@https://sourceforge.net/projects/putty-nd@ & ~https://github.com/noodle1983/putty-nd~@https://github.com/noodle1983/putty-nd@
(~TTY|F backend~@UIBackends@: keys and clipboard by FAR2L TTY extensions support)


Expand Down
42 changes: 24 additions & 18 deletions far2l/bootstrap/scripts/FarRus.hlf.m4
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ $ # Особенности FAR2L - начало работы#
~https://github.com/akruphi/far2l/wiki~@https://github.com/akruphi/far2l/wiki@

#Режимы интерфейса#
У FAR2L три основных бекенда отрисовки (подробности в ~Режимы интерфейса~@UIBackends@):
У FAR2L основные бекенды отрисовки (подробности в ~Режимы интерфейса~@UIBackends@):
- #GUI# - на базе wxWidgets, работает в графическом режиме, #идеальный UX#
(возможны дополнительные зависимости к вашей desktop environment: wxWidgets toolkit и соответствующие пакеты);
- #TTY|Xi# - работает в терминальном режиме, зависимости буквально от пары иксовых либ
Expand Down Expand Up @@ -171,7 +171,7 @@ $ # Особенности FAR2L - начало работы#


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


Expand Down Expand Up @@ -204,34 +204,40 @@ $ # Особенности FAR2L - начало работы#


#Терминалы и ssh-клиенты, поддерживающие расширенные сочетания клавиш FAR2L для чистой терминальной версии FAR2L TTY#
- Встроенный терминал FAR2L-GUI (Linux, macOS, *BSD),
- Встроенный терминал #FAR2L-GUI# (Linux/BSD, macOS),
см. ~Режимы интерфейса~@UIBackends@ и в помощи #NetRocks plugin# раздел #Command line and remote FAR2L#
(~TTY|F режим~@UIBackends@: клавиши и буфер обмена через 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# (Linux/BSD, macOS): ~https://github.com/kovidgoyal/kitty~@https://github.com/kovidgoyal/kitty@ & ~https://sw.kovidgoyal.net/kitty~@https://sw.kovidgoyal.net/kitty@
(~TTY|k режим~@UIBackends@: клавиши через kovidgoyal's kitty keyboard protocol;
для взаимодействия с клипбордом включить OSC 52)

- Wez's Terminal Emulator (Linux, FreeBSD, Windows): ~https://github.com/wez/wezterm~@https://github.com/wez/wezterm@ & ~https://wezfurlong.org/wezterm~@https://wezfurlong.org/wezterm@
(~TTY|k режим~@UIBackends@: клавиши в Linux, FreeBSD через kovidgoyal's kitty keyboard protocol;
для взаимодействия с клипбордом включить OSC 52 и в kitty и в far2l)
- #Alacritty# (Linux/BSD, macOS, Windows): ~https://github.com/alacritty/alacritty~@https://github.com/alacritty/alacritty@ & ~https://alacritty.org/~@https://alacritty.org/@
(~TTY|k режим~@UIBackends@: клавиши через kovidgoyal's kitty keyboard protocol;
для взаимодействия с клипбордом включить OSC 52 только в far2l)
[под Windows в системе должен быть conpty.dll]
- #Rio Terminal# (Linux/BSD, macOS, Windows): ~https://github.com/raphamorim/rio~@https://github.com/raphamorim/rio@ & ~https://raphamorim.io/rio/~@https://raphamorim.io/rio/@
(~TTY|k режим~@UIBackends@: клавиши через kovidgoyal's kitty keyboard protocol;
для взаимодействия с клипбордом включить OSC 52 только в far2l)
- #Ghostty# (Linux, macOS): ~https://github.com/ghostty-org/ghostty~@https://github.com/ghostty-org/ghostty@ & ~https://ghostty.org/~@https://ghostty.org/@
(~TTY|k режим~@UIBackends@: клавиши через kovidgoyal's kitty keyboard protocol;
для взаимодействия с клипбордом включить OSC 52 только в far2l)
- #Wez's Terminal Emulator# (Linux/BSD, Windows): ~https://github.com/wez/wezterm~@https://github.com/wez/wezterm@ & ~https://wezfurlong.org/wezterm~@https://wezfurlong.org/wezterm@
(~TTY|k режим~@UIBackends@: клавиши в Linux/BSD через kovidgoyal's kitty keyboard protocol;
~TTY|w режим~@UIBackends@: клавиши в Windows через win32-input-mode, который включен по умолчанию;
для взаимодействия с клипбордом включить OSC 52)
[в macOS и в Windows в wezterm поддержка режима kitty не работает]

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

- Windows Terminal [в win11 стоит из коробки, в win10 надо ставить]
- #Windows Terminal# [в win11 стоит из коробки, в win10 надо ставить]
(~TTY|w режим~@UIBackends@: клавиши через win32-input-mode; для взаимодействия с клипбордом включить OSC 52;
присутствует баг с мышью: ~https://github.com/microsoft/terminal/issues/15083~@https://github.com/microsoft/terminal/issues/15083@)

- putty4far2l (Windows ssh-клиент): ~https://github.com/ivanshatsky/putty4far2l/releases~@https://github.com/ivanshatsky/putty4far2l/releases@ & ~https://github.com/unxed/putty4far2l~@https://github.com/unxed/putty4far2l@
Оригинальный Putty не корректно пересылает в far2l некоторые клавиатурные комбинации.
Под Windows используйте специальные форки putty с поддержкой far2l TTY extensions support:
- #putty4far2l# (Windows ssh-клиент): ~https://github.com/ivanshatsky/putty4far2l/releases~@https://github.com/ivanshatsky/putty4far2l/releases@ & ~https://github.com/unxed/putty4far2l~@https://github.com/unxed/putty4far2l@
(~TTY|F режим~@UIBackends@: клавиши и буфер обмена через FAR2L TTY extensions support)

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

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


Expand Down
Loading

0 comments on commit d2a88b6

Please sign in to comment.