Skip to content

gokcehan/lf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6718a36 · Mar 30, 2025
Nov 4, 2024
Feb 18, 2025
Dec 26, 2023
Jun 25, 2018
Mar 9, 2024
Aug 13, 2016
Mar 5, 2025
Feb 2, 2025
Mar 21, 2025
Mar 15, 2025
Mar 15, 2025
Feb 23, 2025
Feb 18, 2025
Jun 14, 2024
Apr 30, 2023
Apr 30, 2023
Apr 30, 2023
Apr 30, 2023
Nov 3, 2024
Feb 14, 2025
Feb 18, 2025
Feb 18, 2025
Feb 23, 2025
Feb 4, 2024
Mar 30, 2025
Mar 30, 2025
Nov 3, 2024
Feb 18, 2025
Aug 30, 2019
Feb 23, 2025
Feb 23, 2025
Nov 1, 2024
Feb 23, 2025
Feb 18, 2025
Nov 4, 2024
Nov 4, 2024
Nov 3, 2024
Feb 25, 2023
Mar 21, 2025
Feb 23, 2025
Feb 23, 2025
Feb 23, 2025

Repository files navigation

LF

Google Groups | Doc | Wiki | #lf (on Libera.Chat) | #lf:matrix.org (with IRC bridge)

Go Build Go Report Card

lf (as in "list files") is a terminal file manager written in Go with a heavy inspiration from ranger file manager. See faq for more information and tutorial for a gentle introduction with screencasts.

icons-and-border image-preview

Features

  • Cross-platform (Linux, macOS, BSDs, Windows)
  • Single binary without any runtime dependencies
  • Fast startup and low memory footprint due to native code and static binaries
  • Asynchronous IO operations to avoid UI locking
  • Server/client architecture and remote commands to manage multiple instances
  • Extendable and configurable with shell commands
  • Customizable keybindings (vi and readline defaults)
  • A reasonable set of other features (see the documentation)

Non-Features

  • Tabs or windows (better handled by window manager or terminal multiplexer)
  • Builtin pager/editor (better handled by your pager/editor of choice)
  • Builtin commands for file operations (better handled by the underlying shell tools including but not limited to mkdir, touch, chmod, chown, chgrp, and ln)

Installation

See packages for community maintained packages.

See releases for pre-built binaries.

Building from the source requires Go.

On Unix:

env CGO_ENABLED=0 go install -ldflags="-s -w" github.com/gokcehan/lf@latest

On Windows cmd:

set CGO_ENABLED=0
go install -ldflags="-s -w" github.com/gokcehan/lf@latest

On Windows powershell:

$env:CGO_ENABLED = '0'
go install -ldflags="-s -w" github.com/gokcehan/lf@latest

Usage

After the installation lf command should start the application in the current directory.

Run lf -help to see command line options.

Run lf -doc to see the documentation.

See etc directory to integrate lf to your shell and/or editor. Example configuration files along with example colors and icons files can also be found in this directory.

See integrations to integrate lf to other tools.

See tips for more examples.

Contributing

See contributing for guidelines.