Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
F

far2l

> 编程语言
Open source

Linux port of FAR v2

2.2K stars0 likes0 views
WebsiteGitHub

About

Linux port of FAR v2

far2l

Linux fork of FAR Manager v2 (http://farmanager.com/)
Works also on macOS and BSD (but latter is not regularly tested) BETA VERSION.
Use at your own risk!

Plug-ins that are currently working: ADB (the external adb binary is required to work, see: README), Advanced compare, align, arclite (now as experimental version which partially more effective than multiarc; arclite disabled by default, to enable manually turn on F9->Options->Plugins configuration->ArcLite->[x] Enable Arclite plugin), autowrap, Calculator, colorer, drawline, editcase, editorcomp, edsort, filecase, gitgutter, hexitor, ImageViewer, incsrch, inside, jumpword (see: README), memo (see: README), MTP (see: README), multiarc, NetRocks (SFTP/SCP/SHELL/FTP/FTPS/SMB/NFS/WebDAV/AWS S3), OpenWith, Python (optional scripting support, see readme and info), SimpleIndent, tmppanel, Transformer (generic external-command text transformations for the editor and file panels), truncate.

FreeBSD/MacOS (Cirrus CI):

License: GNU/GPLv2

Used code from projects

  • FAR for Windows and some of its plugins
  • WINE
  • ANSICON
  • Portable UnRAR
  • 7z ANSI-C Decoder
  • utf-cpp by ww898

Screenshots

far2l main UI NetRocks
Attributes Editor

Jump To:

  • Getting Started
  • Installing, Running
  • Building, Contributing, Hacking
  • Compatible Terminals and SSH clients
  • Useful 3rd-party extras
  • Community packages & binaries
  • See also (in external documents):
    • Change log
    • Releases
    • Python plugin readme and Short information about each Python plugins/files
    • Notes on porting and FAR Plugin API changes
    • Coding style
    • Testing
    • DUMPER

Getting Started

Note: Far2l uses keyboard shortcuts in the tradition of the Far Manager for Windows, but some of them (Alt+F1, Alt+F2, Alt+F7, Ctrl+arrows, etc.) usually exclusively used in desktop environment GNOME, KDE, Xfce, macOS etc. and in terminal emulators. To work with these keys in far2l you need to release keyboard shortcuts globally in the environment settings (see #2326, #2731, under GNOME you can use dconf-editor org.gnome.desktop.wm.keybindings to view and change global keybindings) or use far2l lifehacks: Sticky controls via Ctrl+Space or Alt+Space or Exclusively handle hotkeys option in the Input settings (see details in built-in far2l help).

UI Backends

FAR2L has base UI Backends (see details in built-in help section UI backends):

  • GUI|WX (uses wxWidgets) or GUI|SDL: 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 a couple of X11 libraries (to access clipboard and to get state of all keyboard modifiers), almost perfect UX;

  • TTY|X: works in terminal mode, uses X11 to access clipboard, all keyboard works via terminal;

  • TTY: plain terminal mode, no X11 dependencies, UX with some restrictions (works fully when running in the terminal emulators, which provide clipboard access and have their advanced keyboard protocols).

Mode
(UI Backends)
TTY
(plain far2l)
TTY|X TTY|Xi GUI|WX GUI|SDL
Experimental
Works: in console
and in any
terminal
in terminal
window

under graphic
X11 session
in terminal
window

under graphic
X11 session
in Desktop
environment

(X11
or Wayland
or macOS)
via wxWidgets
in Desktop
environment

(X11
or Wayland
or macOS)
via SDL
Binaries: far2l far2l
far2l_ttyx.broker
far2l
far2l_ttyx.broker
far2l
far2l_gui.so
far2l
far2l_sdl.so
Dependencies: minimal + libx11 + libx11, libxi + wxWidgets, GTK + SDL
Keyboard: Typical terminals:
only essential
key combinations


KiTTY (putty fork),
kitty (*nix one),
iTerm2,
Windows Terminal,
far2l’s VT: full support
(see: Compatible
Terminals
and SSH clients
)
Typical terminals:
only essential
key combinations


KiTTY (putty fork),
kitty (*nix one),
iTerm2,
Windows Terminal,
far2l’s VT: full support
Typical terminals:
most of key
combinations under x11
;
only essential key
combinations
under Wayland


KiTTY (putty fork),
kitty (*nix one),
iTerm2,
Windows Terminal,
far2l’s VT: full support
All key
combinations
All key
combinations
Clipboard
access:
Typical terminals:
via command line
tools like xclip

kitty (*nix one),
iTerm2:
via OSC52

Windows Terminal:
via OSC52
or via command line
tools under WSL


KiTTY (putty fork),
far2l’s VT:
via far2l extensions
Typical terminals,
kitty (*nix one):
via x11 interaction

iTerm2:
via OSC52

Windows Terminal:
via OSC52
or via command line
tools under WSL


KiTTY (putty fork),
far2l’s VT:
via far2l extensions
Typical terminals,
kitty (*nix one):
via x11 interaction

iTerm2:
via OSC52

Windows Terminal:
via OSC52
or via command line
tools under WSL


KiTTY (putty fork),
far2l’s VT:
via far2l extensions
via
wxWidgets API

via command line
tools under WSL
via
SDL API
Typical
use case:
Servers,
embedded
(*wrt, etc)
Run far2l in
favorite terminal
but with
better UX
Run far2l in
favorite terminal
but with
best UX
Desktop Desktop
Debian / Ubuntu
official repositories
(packages names):
Install far2l with
--no-install-recommends
and use far2l due to
auto downgrade
(since 2.6.5~ds-3 /
Ubuntu 25.10+)
far2l far2l far2l-wx
(since 2.6.4 /
Ubuntu 25.04+)
not yet
Community PPA
(packages names):
far2l far2l-ttyx far2l-ttyx far2l-gui not yet

Note: When running, far2l automatically downgrades if its components are not installed (or system libs are not available): GUI ⇒ TTY|Xi ⇒ TTY|X ⇒ TTY. To force run only specific backend use in command line: for GUI: far2l --notty; for TTY|Xi use in command line: far2l --tty; for TTY|X: far2l --tty --nodetect=xi; for plain TTY: far2l --tty --nodetect=x (see details via far2l --help). If your far2l is compiled with SDL you can run far2l --SDL also.

Note: Using OSC 52 in TTY/TTY|X_: to interact with the system clipboard you must not forget to enable OSC 52 in both the FAR2L settings (Options⇒Interface settings⇒Use OSC52 to set clipboard data, which is shown in the dialog only if far2l runs in TTY/TTY|X mode and all other options for clipboard access are unavailable; you can run far2l --tty --nodetect to force it not to use other clipboard options), and in terminal settings option OSC 52 must be allowed (by default, OSC 52 is disabled in some terminals for security reasons; OSC 52 in many terminals is implemented only for the copy mode, and paste from the terminal goes by bracketed paste mode).

Note: Using TTY under Wayland and OSC 52 under Wayland: TTY X|Xi in --tty works incorrectly. You need to fully disable it to use OSC 52 for proper clipboard integration; you need to run far2l --tty --nodetect=x, then OSC 52 setting option will appear in Interface Settings, and you can enable it, as described in a chapter above. Clipboard in wx-gui is working correctly.

Installing, Running

Note: packages in official repositories may be very outdated, actual binaries or portable see in Community packages & binaries.

Debian/Ubuntu binaries from the official repositories

  • GUI|WX backend (Debian since far2l 2.6.4 / Ubuntu 25.04+)

    bash
    apt install far2l-wx
  • TTY X/Xi backends only (Debian / Ubuntu 23.10+)

    bash
    apt install far2l
  • TTY backends only – do not install X11 dependencies and dependencies used in the NetRocks plugin (Debian since far2l 2.6.5~ds-3 / Ubuntu 25.10+)

    bash
    apt install --no-install-recommends far2l

Debian has far2l in sid (unstable) / 14 forky (testing) / 13 trixie / 12 bookworm-backports; Ubuntu since 23.10. Details about versions in the official repositories see in https://packages.debian.org/search?keywords=far2l or https://packages.ubuntu.com/search?keywords=far2l

Note: since far2l 2.6.4 Debian/Ubuntu packages build with python subplugins.

Note: in some old Debian/Ubuntu you can obtain far2l packages corresponding to the latest distributions via backport mechanism (see info in Debian Backports and Ubuntu Backports).

Manually building backport of official packages for other old Debian/Ubuntu system [click to expand/collapse]

A simple sid back port should be as easy as (build your own binary deb from the official source deb package, required install dependencies):

bash
# 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

Homebrew binaries or source (macOS and Linux)

Homebrew is a package manager with some benefits over traditional approaches.

First, install Homebrew if not yet installed:

bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
TTY only, latest compact ve

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

C++filemanagerlinuxmacososx

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言