Popularity
9.1
Growing
Activity
8.2
Declining
4,857
60
218

Description

lf (as in "list files") is a terminal file manager written in Go with a heavy inspiration from ranger file manager.

Programming language: Go
License: MIT License
Tags: Utilities     Command Line     File Manager    

LF alternatives and similar packages

Based on the "Command Line" category.
Alternatively, view lf alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of LF or a related project?

Add another 'Command Line' Package

README

LF

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

Go Report Card Go Reference

This is a work in progress. Use at your own risk.

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.

multicol-screenshot singlecol-screenshot

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)

Installation

See packages for community maintained packages.

See releases for pre-built binaries.

Building from the source requires Go.

On Unix (Go version < 1.17):

env CGO_ENABLED=0 GO111MODULE=on go get -u -ldflags="-s -w" github.com/gokcehan/lf

On Unix (Go version >= 1.17):

env CGO_ENABLED=0 go install -ldflags="-s -w" github.com/gokcehan/[email protected]

On Windows cmd (Go version < 1.17):

set CGO_ENABLED=0
set GO111MODULE=on
go get -u -ldflags="-s -w" github.com/gokcehan/lf

On Windows cmd (Go version >= 1.17):

set CGO_ENABLED=0
go install -ldflags="-s -w" github.com/gokcehan/[email protected]

On Windows powershell (Go version < 1.17):

$env:CGO_ENABLED = '0'
$env:GO111MODULE = 'on'
go get -u -ldflags="-s -w" github.com/gokcehan/lf

On Windows powershell (Go version >= 1.17):

$env:CGO_ENABLED = '0'
go install -ldflags="-s -w" github.com/gokcehan/[email protected]

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](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.