Несколько дней назад вышло обновление, устраняющее последние шероховатости UX, и мы рады представить вам долгожданный полноценно работающий Far Manager в составе LTS-версии Ubuntu 24.04. В этой статье я расскажу, как получить максимум удовольствия от его использования. Поехали!
sudo apt update sudo apt install far2l
У многих сразу возникнет вопрос: а зачем apt update
? Дело в том, что в релиз попала версия, в которой оставалось несколько досадных багов, и самый заметный из них — не работало выделение файлов клавишами * + — на системах с Wayland. А поскольку Wayland теперь в Ubuntu по умолчанию, я решил не публиковать статью, пока мы не выпустим исправляющее оставшиеся проблемы обновление. Если у вас в Ubuntu 24.04 уже установлен far2l, имеет смысл обновиться до последней версии.
А теперь — несколько полезных советов.
Освобождаем занятые сочетания клавиш
К сожалению, некоторые сочетания клавиш, нужные Far’у, перехватываются терминалом или системой. Освободим их (здесь и далее речь о GNOME, который в Ubuntu по умолчанию):
# F10 gsettings set org.gnome.Terminal.Legacy.Settings menu-accelerator-enabled false # Alt+Space gsettings set org.gnome.desktop.wm.keybindings activate-window-menu "[]" # Alt+F1 gsettings set org.gnome.desktop.wm.keybindings panel-main-menu "[]" # Alt+F2 gsettings set org.gnome.desktop.wm.keybindings panel-run-dialog "[]" # Alt+F7 gsettings set org.gnome.desktop.wm.keybindings begin-move "['disabled']" # Alt+F8 gsettings set org.gnome.desktop.wm.keybindings begin-resize "['disabled']"
Разумеется, вы можете освобождать не все комбинации, выбирая только те, которые вам нужнее в Far’е. Аналогичные команды для других окружений рабочего стола вы найдёте здесь.
Не хочу освобождать эти сочетания клавиш, они нужны мне как системные!
Тогда у вас есть два варианта.
Первый: использовать функцию sticky keys или залипание клавиш1 (для неё, впрочем, всё равно придётся освободить сочетание Alt+пробел). Работает она так:
-
Нажимаете Alt+пробел или Control+пробел
-
Отпускаете
-
Нажимаете ту клавишу, сочетание которой с Alt’ом или Control’ом вам нужно
Второй: сделать макросы для использования других сочетаний клавиш на замену.
Например, в консоли ядра не работает Ctrl+F7 (поиск с заменой в редакторе). Обойти эту проблему можно так:
Создаём файл клавиатурных макросов far2l:
far2l -e ~/.config/far2l/settings/key_macros.ini
и пишем туда:
[KeyMacros/Editor/CtrlR] Sequence=CtrlF7
Сохраняемся, перезапускаем far2l, и вместо Ctrl+F7 используем Ctrl+R.
Подробнее про макроязык и его возможности можно прочитать здесь:
https://api.farmanager.com/ru/macro/macrocmd/index.html
Там есть условные операторы и даже циклы!
Ура, уже можно работать! Но некоторые комбинации клавиш почему-то всё ещё недоступны. Например, переключение режимов отображения файлов на панели через LCtrl+цифры.
Увы, используемый в Ubuntu по умолчанию GNOME Terminal не умеет отправлять эти сочетания клавиш приложениям. Нам понадобится кое-что помощнее! Установим терминал kitty, он умеет слать приложениям любые сочетания клавиш, и есть в репозитории:
sudo apt install kitty
Настраиваем kitty
Для начала, освобождаем некоторые комбинации клавиш, которые нужны far2l, но перехватываются самим kitty. Создаём файл конфигурации kitty:
far2l -e ~/.config/kitty/kitty.conf
и пишем туда:
map ctrl+shift+right no_op map ctrl+shift+left no_op map ctrl+shift+home no_op map ctrl+shift+end no_op enable_audio_bell no
^ Здесь мы также отключаем enable_audio_bell
, чтоб при просмотре двоичных файлов не возникали раздражающие бипы.
Как запускать far2l сразу в kitty? Создаём файл-ярлык для стартового меню:
far2l -e /usr/share/applications/kitty-far2l.desktop
и пишем туда:
[Desktop Entry] Name=Far2l in Kitty Exec=kitty far2l --tty Icon=far2l.svg Type=Application Categories=Utility;FileManager
Как сделать kitty терминалом по умолчанию?
sudo update-alternatives --config x-terminal-emulator
А теперь ответы на некоторые вопросы
Хочу самую свежую версию и самый лучший UX!
Попробуйте пакет far2l-gui из нашего ppa. Это графическая версия со своим собственным рендерингом консольного окна. Она считается референсом по UX, консольную версию (которая сейчас в репозитории Ubuntu, графическая туда пока не приехала) мы подтягивали по возможностям именно к ней.
Установка:
sudo apt remove far2l* sudo apt install software-properties-common sudo add-apt-repository ppa:far2l-team/ppa sudo apt install far2l-gui
При желании всегда можно вернуться назад:
sudo apt remove far2l* sudo apt install software-properties-common sudo add-apt-repository --remove ppa:far2l-team/ppa sudo apt install far2l
А чем отличается графическая версия от консольной?
Бекенд отрисовки |
TTY |
TTY|X |
GUI |
Работает |
в любой консоли |
в окне терминала в графическом сеансе (X11, Wayland) |
в графическом сеансе (X11, Wayland) |
Исполняемые файлы |
far2l |
far2l |
far2l |
Зависимости |
необходимый минимум |
+ libx11 |
+ wxWidgets, GTK |
Типичное применение |
Сервера, встраиваемые системы (*wrt, etc) |
Для запуска в терминале, но с доступом к буферу обмена графического рабочего стола |
Графический рабочий стол |
Пакет в Ubuntu 24.04 |
|
|
Нет |
Пакет в ppa |
|
|
|
В Windows Terminal на ввод сыпется мусор при движении мышки и/или не работает вставка (вообще или только кириллицы) из буфера обмена
В master-ветке far2l эти ошибки уже исправлены, поэтому, пока мы готовим очередной апдейт к 24.04, в том числе решающий и эту проблему, в Windows Terminal можно использовать far2l из ppa, команды установки — выше.
Также можно настроить Windows Terminal на использование другой комбинации клавиш для Paste, например, Ctrl+Shift+V. Тогда Ctrl+V будет обрабатывать сам far2l, он находит XWayland от WSLg и через него прекрасно работает с клипбордом сам.
А как это в Windows Terminal настраивается?
В классической консоли cmd.exe эти проблемы не проявляются.
Захожу куда-то по ssh, запускаю там far2l, а буфер обмена не работает.
Подключайтесь по ssh (или sftp через плагин NetRocks, он даёт удалённый shell) изнутри локально запущенного far2l. Если буфер обмена работает у вас в локальной версии, заработает и в удалённой.
Альтернатива в Windows — использовать специально приспособленные к работе с far2l форки2 PuTTY: putty4far2l и KiTTY (не путать с kitty для *nix, о которой написано выше).
Как через плагин NetRocks подключаться к облакам? Там только sftp, ftp и т.д.
Решение здесь.
Есть ли для Маков и BSD?
Да и да. На Маках скачиваем со страницы релизов или ставим из Homebrew Cask:
brew install --cask far2l
На FreeBSD из freshports.
На Маках лучше запускать под iTerm2. На BSD — под той же kitty, что и в Ubuntu.
Есть ли в Linux Mint?
Да, начиная с 22-й его версии.
А скрипты на Lua будут?
Уже есть. В проекте far2m, это форк с Lua, максимально приближенный к Far3. У него есть свой отдельный ppa.
Заключение
Мы шли к этому моменту 8 лет. Надеемся, опыт работы с far2l в Ubuntu будет приятным! И, конечно, приходите к нам в чат, там дружественная атмосфера и вам охотно ответят на все ваши вопросы. А ещё у нас есть вики, развиваемая сообществом, там вы найдете множество лайфхаков и полезных подсказок. Оставлю заодно ссылки на GitHub проекта и portable и AppImage-сборки, не требующие установки.
В заключение хочу сказать спасибо @elfmz (главному разработчику, написавшему большую часть кода), Alex Myczko (мейнтейнеру Debian), @mitya57 (мейнтейнеру Ubuntu), @kruphi (комодератору чата и активному коммитеру), Павлу (поддерживающему ppa), @shmuz (развивающему форк с Lua) и всем остальным разработчикам, тестировщикам и авторам документации, сделавшим свой вклад, большой и не очень.
Попробуйте far2l прямо сейчас! Надеемся, он вам понравится.
1 В процессе подготовки статьи в функции sticky keys был обнаружен баг: при не-латинской раскладке клавиатуры вместо «Ctrl+пробел, затем буква» нужно нажимать Ctrl+пробел+буква одновременно; кроме того, комбинации с цифрами работают только в свежей версии из ppa.
2 В оригинальной PuTTY с поддержкой сложных сочетаний клавиш всё ещё хуже, чем в GNOME Terminal.
ссылка на оригинал статьи https://habr.com/ru/articles/845998/
Добавить комментарий