Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gokcehan/lf
Terminal file manager
https://github.com/gokcehan/lf
file-manager terminal
Last synced: 11 days ago
JSON representation
Terminal file manager
- Host: GitHub
- URL: https://github.com/gokcehan/lf
- Owner: gokcehan
- License: mit
- Created: 2016-08-13T12:45:44.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2024-10-10T23:18:13.000Z (29 days ago)
- Last Synced: 2024-10-14T20:21:30.824Z (25 days ago)
- Topics: file-manager, terminal
- Language: Go
- Homepage:
- Size: 1.86 MB
- Stars: 7,693
- Watchers: 65
- Forks: 327
- Open Issues: 133
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome - lf
- awesome-shell - lf - Terminal file manager written in Go, inspired by ranger (Command-Line Productivity)
- awesome-linux-minimalism - LF - Command line file manager written in GO (alternative for Ranger - Python File manager) (Uncategorized / Uncategorized)
- awesome - gokcehan/lf - Terminal file manager (Go)
- awesome-repositories - gokcehan/lf - Terminal file manager (Go)
- vim-keybindings-everywhere-the-ultimate-list - lf - TUI file manager similar to ranger. (File Management)
- ranger-awesome - lf
- awesome-econ - lf
- awesome-tuis - lf
README
# LF
[Google Groups](https://groups.google.com/forum/#!forum/lf-fm)
| [Doc](doc.md)
| [Wiki](https://github.com/gokcehan/lf/wiki)
| [#lf](https://web.libera.chat/#lf) (on Libera.Chat)
| [#lf:matrix.org](https://matrix.to/#/#lf:matrix.org) (with IRC bridge)[![Go Build](https://github.com/gokcehan/lf/actions/workflows/go.yml/badge.svg)](https://github.com/gokcehan/lf/actions/workflows/go.yml)
[![Go Report Card](https://goreportcard.com/badge/github.com/gokcehan/lf)](https://goreportcard.com/report/github.com/gokcehan/lf)`lf` (as in "list files") is a terminal file manager written in Go with a heavy inspiration from ranger file manager.
See [faq](https://github.com/gokcehan/lf/wiki/FAQ) for more information and [tutorial](https://github.com/gokcehan/lf/wiki/Tutorial) for a gentle introduction with screencasts.![multicol-screenshot](http://i.imgur.com/DaTUenu.png)
![singlecol-screenshot](http://i.imgur.com/p95xzUj.png)## 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](doc.md))## 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](https://github.com/gokcehan/lf/wiki/Packages) for community maintained packages.
See [releases](https://github.com/gokcehan/lf/releases) for pre-built binaries.
Building from the source requires [Go](https://go.dev/).
On Unix:
```bash
env CGO_ENABLED=0 go install -ldflags="-s -w" github.com/gokcehan/lf@latest
```On Windows `cmd`:
```cmd
set CGO_ENABLED=0
go install -ldflags="-s -w" github.com/gokcehan/lf@latest
```On Windows `powershell`:
```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](doc.md).
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](https://github.com/gokcehan/lf/wiki/Integrations) to integrate `lf` to other tools.
See [tips](https://github.com/gokcehan/lf/wiki/Tips) for more examples.
## Contributing
See [contributing](CONTRIBUTING.md) for guidelines.