My build of lf
Go to file
Gokcehan 3b5759efba sync with server on startup
Mentioned in #13 and #36.
2016-11-10 23:43:54 +03:00
etc handle keys of push command while scanning 2016-10-15 21:46:31 +03:00
gen add cross build script 2016-10-08 16:19:47 +03:00
.gitignore add cross build script 2016-10-08 16:19:47 +03:00
.travis.yml add x/text package to travis dependencies 2016-10-20 23:50:52 +03:00
app.go comment 2016-11-06 23:25:59 +03:00
client.go sync with server on startup 2016-11-10 23:43:54 +03:00
comp_test.go add empty match tests 2016-09-12 23:40:17 +03:00
comp.go add sync command to synchronize yanked/deleted files with server 2016-11-09 00:39:39 +03:00
doc.go add sync command to synchronize yanked/deleted files with server 2016-11-09 00:39:39 +03:00
docstring.go add sync command to synchronize yanked/deleted files with server 2016-11-09 00:39:39 +03:00
eval_test.go remove error handling in scanner 2016-10-15 22:59:31 +03:00
eval.go sync with server on startup 2016-11-10 23:43:54 +03:00
LICENSE initial commit 2016-08-13 15:49:04 +03:00
main.go use a unique id for each client 2016-11-06 01:49:45 +03:00
misc_test.go implement a send command for remove commands 2016-11-06 17:06:25 +03:00
misc.go Refactor sorting types to only implement Len and Swap once (#43) 2016-11-10 01:01:30 +03:00
nav.go sync with server on startup 2016-11-10 23:43:54 +03:00
opts.go rename paste command to put 2016-11-06 18:09:18 +03:00
parse_test.go add missing files 2016-09-12 19:19:47 +03:00
parse.go handle parsing of unmapping and uncommanding 2016-10-16 21:23:24 +03:00
README.md remove periodic renew from non-features 2016-11-06 20:48:45 +03:00
scan_test.go add parse tests 2016-09-12 19:18:13 +03:00
scan.go remove error handling in scanner 2016-10-15 22:59:31 +03:00
server.go use single line strings for file list save and load 2016-11-06 21:32:14 +03:00
ui.go keep a copy of saved files and show in the ui 2016-11-07 23:32:19 +03:00

LF

Google Groups | Wiki

Build Status Join the chat at https://gitter.im/lf-fm/Lobby GoDoc

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

lf (as in "list files") is a terminal file manager written in Go. It is heavily inspired by ranger with some missing and extra features. Some of the missing features are deliberately omitted since it is better if they are handled by external tools.

multicol-screenshot singlecol-screenshot

Features

  • Cross-platform (Linux, OSX, BSDs, Windows (partial))
  • Single binary without any runtime dependencies (except for terminfo database)
  • Fast startup and low memory footprint (due to native code and static binaries)
  • Server/client architecture to share file selection between multiple instances
  • Custom commands as shell commands
  • Sync (waiting and non-waiting) and async commands
  • Fully customizable keybindings
  • Preview filtering (for source highlight, archives, pdfs/images as text etc.)

Non-Features

  • Tabs or windows (handled by the window manager or the terminal multiplexer)
  • Built-in pager (handled by your pager of choice)
  • Image previews (cool but no standard available)

May-Futures

  • Bookmarks
  • Colorschemes

Installation

See releases for pre-built binaries.

If you like to build from the source:

go get -u github.com/gokcehan/lf

See packages for community maintained packages.

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 or editor. An example configuration file can also be found in this directory.