Linux fork of Far Manager v2 (http://farmanager.com/)
Работает также на OSX/MacOS и BSD (но последнее не тестируется регулярно)
Бета -версия.
Используйте свой собственный риск!
Плагины, которые работают в настоящее время: NetRocks (SFTP/SCP/FTP/FTPS/SMB/NFS/WebDAV), Colorer, MultiArc, TMPPANEL, Align, AutoWrap, Drawline, EditCase, SimpleIndent, Calculator, Python (опциональная поддержка сценария)
FreeBSD/macOS (Cirrus ci):
Примечание : FAR2L использует коротки клавиш в традиции Far For Windows, но некоторые из них ( Alt - F1 , Alt - F2 , Alt - F7 , Ctrl -Marrows и т. Д.) Обычно используются исключительно в среде настольной среды Gnome, KDE, XFCE, MacOS и т. Д. И в терминальных эмуляторах. Чтобы работать с этими клавишами в FAR2L, вам необходимо выпустить сочетание клавиш во всем мире в настройках среды (см. #2326) или использовать FAR2L LifeHacks: липкие элементы управления через CTRL - пространство или ALT - пространство или исключительно обработка Hotkeys в настройках ввода (см. Подробности в Buil -In Far2L).
FAR2L имеет базовые бэкэнды пользовательского интерфейса (см. Подробности в разделе «Встроенные справки» в разделе пользовательского интерфейса ):
GUI ( WX ): использует WXWIDGETS, Works в графическом режиме, идеальный UX (может добавить зависимости в вашу среду рабочего стола, например, инструментарий WXWIDGETS и связанные с ним пакеты);
Tty | xi : работает в режиме терминала, требует зависимости от библиотек пары X11 (для доступа к буферу обмена и для получения состояния всех модификаторов клавиатуры), почти идеального UX ;
Tty | x : работает в режиме терминала, использует x11 для доступа к буферу обмена, вся клавиатура работает через терминал;
TTY : Plain Terminal Mode, No X11-зависимости, UX с некоторыми ограничениями (работает полностью при запуске в эмуляторах терминала, которые обеспечивают доступ к буферу обмена и имеют их расширенные протоколы клавиатуры).
| Режим (Бэкэнды пользовательского интерфейса) | Тк (простой FAR2L) | Tty | x | Tty | xi | Графический интерфейс |
|---|---|---|---|---|
| Работает: | в консоли и в любом Терминал | в терминале окно под графиком X11 Session | в терминале окно под графиком X11 Session | в рабочем столе среда (X11 или Уэйленд или macOS) через wxwidgets |
| Двоичные файлы: | Far2l | Far2l far2l_ttyx.broker | Far2l far2l_ttyx.broker | Far2l far2l_gui.so |
| Зависимости: | минимальный | + libx11 | + libx11, libxi | + wxwidgets, gtk |
| Клавиатура: | Типичные терминалы : только необходимо Ключевые комбинации Китти (замашняя вилка), Китти (*Никс один), iterm2 , Терминал Windows , VT FAR2L: полная поддержка | Типичные терминалы : только необходимо Ключевые комбинации Китти (замашняя вилка), Китти (*Никс один), iterm2 , Терминал Windows , VT FAR2L: полная поддержка | Типичные терминалы : Большинство ключевых Комбинации под x11 ; только основной ключ Комбинации под Уэйлендом Китти (замашняя вилка), Китти (*Никс один), iterm2 , Терминал Windows , VT FAR2L: полная поддержка | Все ключ Комбинации |
| Буфер обмена доступ: | Типичные терминалы : через командную строку Инструменты, такие как XClip Китти (*Никс один), iterm2 : через OSC52 Терминал Windows : через OSC52 или через командную строку Инструменты под WSL Китти (замашняя вилка), VT FAR2L: через расширения FAR2L | Типичные терминалы , Китти (*nix One): через x11 взаимодействие iterm2 : через OSC52 Терминал Windows : через OSC52 или через командную строку Инструменты под WSL Китти (замашняя вилка), VT FAR2L: через расширения FAR2L | Типичные терминалы , Китти (*nix One): через x11 взаимодействие iterm2 : через OSC52 Терминал Windows : через OSC52 или через командную строку Инструменты под WSL Китти (замашняя вилка), VT FAR2L: через расширения FAR2L | с помощью WXWIDGETS API через командную строку Инструменты под WSL |
| Типичный В случае использования: | Серверы , встроенный (*WRT и т. Д.) | Запустить Far2l в Любимый терминал но с Лучше ux | Запустить Far2l в Любимый терминал но с Лучший UX | Настольный компьютер |
| Debian / Ubuntu официальные репозитории: | никто (Используйте far2l из -заАвтоматическое понижение) | far2l | far2l | far2l-wx(С 2,6,4 / Ubuntu 25,04+) |
| Сообщество PPA: | far2l | far2l-ttyx | far2l-ttyx | far2l-gui |
ПРИМЕЧАНИЕ . При запуске FAR2L автоматически понижено, если его компоненты не установлены (или системные либерации недоступны): GUI ⇒ TTY | XI ⇒ TTY | X ⇒ TTY . Чтобы заставить запустить только конкретное использование бэкэнд в командной строке: для графического интерфейса : far2l --notty ; Для TTY | XI Использование в командной строке: far2l --tty ; для tty | x : far2l --tty --nodetect=xi ; Для простого TTY : far2l --tty --nodetect=x (см. Подробности через far2l --help ).
Примечание о использовании OSC 52 в TTY/TTY | X : чтобы взаимодействовать с системным буферным обменом, вы не должны забывать включить OSC 52 far2l --tty --nodetect обоих настройках FAR2L ( Options ⇒ Interface settings ⇒ Use OSC52 to set clipboard data , которые показаны в диалоге, только если вы можете работать в TTY/TTY | x и все остальные варианты. Опции), и в параметрах настройки терминала должна быть разрешена OSC 52 (по умолчанию OSC 52 отключен в некоторых терминалах по соображениям безопасности; OSC 52 во многих терминалах реализован только для режима копирования, а вставка из терминала идет в режиме вставки в скобке).
TTY X / XI только бэкэнды (Debian / Ubuntu 23.10+)
apt install far2lБэкэнд GUI (Debian с FAR2L 2.6.4 / Ubuntu 25.04+)
apt install far2l-wxУ Debian есть Far2 в Sid-Unstable / 13 Trixie-тестирование / 12 Bookworm-Backports ; Ubuntu с 23.10 . Подробная информация о версиях в официальных репозиториях см. В https://packages.debian.org/search?keywords=far2l или https://packages.ubuntu.com/search?keywords=far2ll
Примечание : двоичные файлы в официальных репозиториях могут быть очень устаревшими, фактическими двоичными файлами или портативными см. В сообществе пакеты и двоичные файлы.
Примечание . С тех пор, как FAR2L 2.6.4 Debian/Ubuntu Packages Build Build с Pythons Subplugins.
Простой отступник SID должен быть таким же простым, как (создайте свой собственный бинарный Deb из официального исходного пакета Deb, требуемые установки зависимостей):
# you will find the latest dsc link at http://packages.debian.org/sid/far2l
dget http://deb.debian.org/debian/pool/main/f/far2l/2.6.3~beta+ds-1.dsc
dpkg-source -x * .dsc
cd far2l- * /
debuild
# cd .. and install your self built far2l*.deb Вы можете установить предварительно построенный пакет для платформы x86_64 через Homebrew Cask, по команде:
brew install --cask far2lВы также можете вручную загрузить и установить предварительно построенный пакет для платформы x86_64 с страницы релизов: https://github.com/elfmz/far2l/releases
Вы можете использовать контейнеры, чтобы попробовать far2l , не устанавливая ничего.
docker build . -l far2l
docker run -it far2lСмотрите также пакеты сообщества и двоичные файлы
libwxgtk3.0-gtk3-dev или libwxgtk3.2-dev в более новых распределениях, или libwxgtk3.0-dev у более старых ( необязательно -необходимо для бэкэнд с графическим интерфейсом , не требуется с -DUSEWX=no )libx11-dev ( необязательно - необходимо для расширения x11 , которое обеспечивает лучший UX для бэкэнд TTY везде, где доступен x11)libxi-dev ( необязательно - необходимо для расширения x11/xi , которое обеспечивает лучший UX для бэкэнд TTY, где доступен расширение X11 XI)libxml2-dev ( необязательно -необходимо для плагина Colorer , не требуется с -DCOLORER=no )libuchardet-dev ( необязательно -необходимо для обнаружения автоматического Charset , не требуется с -DUSEUCD=no )libssh-dev ( необязательно - необходимо для сети/SFTP )libssl-dev ( необязательно - необходимо для сети/FTPS )libsmbclient-dev ( необязательно - необходимо для сети/SMB )libnfs-dev ( необязательно - необходимо для сети/NFS )libneon27-dev (или позже, необязательно - необходимо для сети/webdav )libarchive-dev ( необязательно - необходимо для лучшей поддержки архивов в Multiarc )libunrar-dev ( необязательно -необходимо для поддержки архивов RAR в MultiArc , см. Параметр командной строки -DUNRAR )libicu-dev ( необязательно -необходимо, если используется не Default ICU_Mode, см. Опция командной строки -DICU_MODE )python3-dev ( необязательно -необходимо для поддержки плагинов Python , см. Опцию командной строки -DPYTHON )python3-cffi ( необязательно -необходимо для поддержки плагинов Python , см. Опцию командной строки -DPYTHON )cmake (> = 3.2.2)pkg-configg++git (необходимо для загрузки исходного кода)или просто на Debian/Ubuntu :
apt-get install libwxgtk3.0-gtk3-dev libx11-dev libxi-dev libxml2-dev libuchardet-dev libssh-dev libssl-dev libsmbclient-dev libnfs-dev libneon27-dev libarchive-dev cmake pkg-config g++ git В более старых распределениях: используйте libwxgtk3.0-dev вместо libwxgtk3.0-gtk3-dev .
git clone https://github.com/elfmz/far2l
cd far2lgit checkout v_2.#.#mkdir -p _build
cd _buildcmake -DUSEWX=yes -DCMAKE_BUILD_TYPE=Release ..
cmake --build . -j $( nproc --all )или с ниндзя (вам нужен пакет Ninja-Build .
cmake -DUSEWX=yes -DCMAKE_BUILD_TYPE=Release -G Ninja ..
cmake --build .Если выше выше команды без ошибок - вы можете:
Просто запустите Far2l от ./install/far2l
(Используйте полный путь, чтобы запустить из любого места: <path>/far2l/_build/install/far2l )
или/и установить FAR2L: sudo cmake --install .
или/и можно создать FAR2L_2.x.x_arch.deb или ... tar.gz пакеты в каталоге _build , используя cmake --build . --target package -Команда cmake --build . --target package .
Чтобы построить без бэкэнд Wx (только консольная версия): изменение -DUSEWX=yes to -DUSEWX=no также в данном случае не нужно устанавливать Libwxgtk*-dev package
К принудительному tty | x и tty | xi бэкэнды: добавить аргумент -DTTYX=no ; Чтобы отключить только tty | xi - добавить аргумент -DTTYXI=no
Чтобы устранить требование LibuChardet для снижения зависимостей FAR2L за счет потери автоматического обнаружения ChARSET: добавить -DUSEUCD=no
По умолчанию FAR2L использует предварительно сгенерированные свойства «жестко-кодированных» символов Unicode. Но это может быть изменено путем указания -dicu_mode при настройке Cmake: -DICU_MODE=prebuilt -описан выше реализации по умолчанию. Большинство вариантов без зависимости. -DICU_MODE=build -повторно выращивать свойства символов во время сборки, используя Libicu, доступный в системе сборки, но он все еще не обязан присутствовать на цели. -DICU_MODE=runtime - Получить свойства во время выполнения (которые могут быть битами медленнее) с использованием libicu, который должен присутствовать в целевой системе.
Чтобы построить с помощью плагина Python: добавить аргумент -DPYTHON=yes , но вы должны установить дополнительные пакеты в вашей системе: python3-dev , python3-cffi .
Чтобы контролировать, как архивы RAR будут обрабатываться в MultiArc: -DUNRAR=bundled (по умолчанию) Использование пучковых источников, найденных в Multiarc/src/formats/rar/unrar -DUNRAR=lib -DUNRAR=NO libunrar и unrar ementil
Также есть варианты переключения других плагинов, которые строятся одинаково: Выравнивать AutoWrap Calc Colorer Corare Drawline EditCase EditorComp FARFTP FILECASE INCSRCH Внутри множественных сетевых сети SimpleIndent Tmppanel
Чтобы сделать пользовательскую/недавнюю сборку пива или Macports.
AppleClang 8.0.0.x или новее. Проверьте свою версию и при необходимости установите/обновите XCODE. clang++ -vbrew install --HEAD yurikoles/yurikoles/far2lbrew install --HEAD yurikoles/yurikoles/far2l --without-wxwidgets[email protected] в одну из двух вышеупомянутых команд. Некоторые проблемы могут быть вызваны противоречивыми зависимостями, например, наличие двух версий WXWIDGET, поэтому избегайте такой ситуации при установке зависимостей.
git clone https://github.com/elfmz/far2l
cd far2lsudo port install cmake pkgconfig wxWidgets-3.2 libssh openssl libxml2 uchardet neon
export PKG_CONFIG_PATH=/opt/local/lib/pkgconfigbrew bundle -v
export PKG_CONFIG_PATH= " $PKG_CONFIG_PATH : $( brew --prefix ) /opt/openssl/lib/pkgconfig: $( brew --prefix ) /opt/libarchive/lib/pkgconfig "mkdir _build
cd _build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DUSEWX=yes -DCMAKE_BUILD_TYPE=Release ..
cmake --build . -j $( sysctl -n hw.logicalcpu )или с ниндзя:
mkdir _build
cd _build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DUSEWX=yes -DCMAKE_BUILD_TYPE=Release -G Ninja ..
cmake --build .cpack Command. Обратите внимание, что этот шаг иногда терпит неудачу и может добиться успеха не самой первой попытки. Рекомендуется не делать ничего на машине, пока Cpack находится в процессе. После успешно созданного open ...path/to/created/far2l-*.dmg После команды
sudo codesign --force --deep --sign - /Applications/far2l.app
Этого достаточно, чтобы подтвердить разрешение только один раз.
Подробности см. В issue .
Для абсолютного минимума вам нужно:
emerge -avn dev-libs/libxml2 app-i18n/uchardet dev-util/cmake
Если вы хотите построить FAR2L с поддержкой WXGTK, также установите его:
emerge -avn x11-libs/wxGTK
Кроме того, для сети вам понадобятся:
emerge -avn net-libs/neon net-libs/libssh net-fs/libnfs net-fs/samba
После установки следуйте клону и строительству выше.
Чтобы установить общую систему, добавьте пакет far2l в свой список configuration.nix environment.systemPackages . Чтобы запустить приложение по требованию, не влияя на состояние системы, выполните nix-shell -p far2l --command far2l . Они используют версию пакета с вашего текущего канала.
Адаптация FAR2L для NIX - это небольшой файл на GitHub, в нем сообщается, какая git revision от far2l repo к получению, с какими зависителями для его создания и как исправить свои ссылки на другие программные средства, чтобы он заработал в изолированной моде независимо от других версий, доступных в системе.
Вы можете построить и запустить пакет far2l для любого пересмотра:
NixOS/nixpkgs Repo, или ваша собственная вилка и филиала): nix-shell -I nixpkgs=https://github.com/ < fork > /nixpkgs/archive/ < revision-or-branch > .tar.gz -p far2l --command far2lnix-shell -I nixpkgs=/path/to/nixpkgs -p far2l --command far2l Чтобы перенести пакет к новой ревизии FAR2L, отредактируйте атрибуты набора fetchFromGitHub rev (Revision Hash) и sha256 (Hash Revision Content Hash). Важный! Если вы оставите старый контент хэш, старый кэшированный контент для этого хэша может использоваться без попыток загрузить новую ревизию. Если вы не ожидаете, что сборка сломается, самым простым было бы сделать вилку, протолкнуть изменения и построить прямо из GitHub.
Вы можете импортировать проект в свою любимую IDE, такую как Qtcreator, CodeLite или любой другой, который поддерживает CMAKE или какой Cmake может создавать проекты.
_build ; вы можете изменить в .vscode/settings.json ) Поддержка расширенных сочетания клавиш FAR2L и доступ к буферу обмена
Котти Ковидгояла (Linux, Macos, *BSD): https://github.com/kovidgoyal/kitty & https://sw.kovidgoyal.net/kitty (tty | k Backend: Keys by Kovidgoyal Kitkyboar Protocol; Включите Osc 52 в Far2l и Kitty Bobrod) Китти).
Эмулятор терминала Wez (Linux, Freebsd, Windows): https://github.com/wez/wezterm & https://wezfurlong.org/wezterm (tty | k Backend: Keys in linux, freebsd by kovidgoyal-keedboar OSC 52 для поддержки буфера обмена) [Протокол клавиатуры Kitty не поддерживается в MacOS & Windows]
ITERM2 (macOS): https://gitlab.com/gnachman/iterm2 & https://iterm2.com (tty | backend: keys от iTerm2 "Протокол клавиатуры"; включите OSC 52 для поддержки буфера обмена)
Терминал Windows (TTY | W Backend: Keys By Win32-Input-Mode; включите OSC 52 для поддержки буфера обмена; имеет ошибку мыши: Microsoft/Terminal#15083)
Original Putty неправильно отправляет несколько сочетания клавиш . Пожалуйста, используйте Fulty Forks с специальной поддержкой расширений FAR2L TTY (Fluent Keypresses, обмен буфером обмена и т. Д.) :
Примечание . Для полной передачи расширенного сочетания клавиш и буфера обмена в/из удаленного FAR2L Один из лучших способов инициировать соединение внутри локального FAR2L-GUI (см. Подробности в разделе «Встроенные справочные данные» ).
Коллекция макросов для FAR2L: https://github.com/corporateshark/far2l-macros
Turbo Vision, TUI Framework, поддерживающая расширения терминала FAR2L: https://github.com/magiblot/tvision
Turbo, текстовый редактор, поддерживающий расширения терминала FAR2L: https://github.com/magiblot/turbo
far2ltricks: https://github.com/unxed/far2ltricks
Внешние плагины FAR2L:
FAR2M - это вилка с макросистемой FAR3 (LUA) и расширенными плагинами: https://github.com/shmuz/far2m
Сообщество Wiki & Tips (по -русски; неофициально): https://github.com/akruphi/far2l/wiki
Они поддерживаются энтузиастами и могут быть не точными с мастером: иногда есть дополнительные плагины, иногда имеют настройку и т. Д.
Портативный ( с бэкэнд TTY X/XI ) | Appimage ( с Wx-gui и некоторыми дополнительными плагинами ): https://github.com/spvkgn/far2l-portable/releases
Ubuntu и Mint от PPA со свежим FAR2L: https://launchpad.net/~far2l-team/+archive/ubuntu/ppa
Tranfser до двоичных файлов от репозитория PPA
sudo apt remove far2l * # required if any far2l was installed
sudo apt install software-properties-common # required if add-apt-repository not installed
sudo add-apt-repository ppa:far2l-team/ppa
# sudo apt install far2l-gui # (!) use if you need plain+GUI backends
# sudo apt install far2l-ttyx # (!) use if you need plain+TTY|Xi backends
# sudo apt install far2l # (!) use if you need only plain backendОтключить PPA и вернуться в официальный репозиторий Ubuntu
sudo apt remove far2l * # required if any far2l was installed
sudo apt install software-properties-common # required if add-apt-repository not installed
sudo add-apt-repository --remove ppa:far2l-team/ppa
# sudo apt install far2l # (!) use if you need plain+TTY|Xi backends
# sudo apt install far2l-wx # (!) use if you need plain+GUI backendsFedora и Centos : https://copr.fedorainfracloud.org/coprs/polter/far2l
OpenSuse , Fedora , Debian , Ubuntu : https://download.opensuse.org/repositories/home:/viklequick/
(содержат отдельные пакеты с внешними плагинами;
В sources.list вы можете добавить: deb https://downloadcontentcdn.opensuse.org/repositories/home:/viklequick/<os-version> ./ )
OpenWRT : https://github.com/spvkgn/far2l-openwrt
Termux : https://github.com/spvkgn/far2l-tramux
Flatpak : https://github.com/spvkgn/far2l-flatpak (доступ только к части реальной файловой системы через песочницу)
Смотрите также в #647