nnn: A Fast and Frugal Terminal File Manager for Enhanced Productivity

Summary
nnn (n³) is a highly efficient and minimalist terminal file manager designed to supercharge productivity. It offers a full set of features, including disk usage analysis, batch renaming, and extensive plugin support, all within a tiny, nearly 0-config footprint. This tool is known for its incredible speed and unobtrusive design, making it ideal for various environments from Raspberry Pi to WSL.
Repository Info
Tags
Click on any tag to explore related repositories
Introduction
nnn (n³), developed by jarun, is an unorthodox yet powerful terminal file manager. It stands out for being incredibly fast, tiny, and requiring nearly zero configuration, making it a favorite among users who prioritize efficiency and a streamlined workflow. Designed to be unobtrusive, nnn offers smart workflows that align with your thought process, enhancing productivity in command-line environments.
Installation
Getting started with nnn is straightforward. It is widely available on many package managers across various operating systems, including Linux, macOS, BSD, and even Android (via Termux).
For detailed installation instructions and dependencies, please refer to the official nnn Wiki:
A static binary is also available, eliminating the need for installation in some cases.
Examples
nnn is packed with features that simplify file management tasks:
- Disk Usage Analysis: Quickly analyze disk space usage.
- Batch Renaming: Rename multiple files efficiently.
- File Picker: Select files for other applications.
- Extensible with Plugins: A rich plugin ecosystem allows for capabilities like live previews, disk (un)mounting, file searching, and more.
- Contexts (Tabs): Manage multiple directories simultaneously with custom colors.
cdon quit: Seamlessly integrate with your shell by changing directory on exit.
For a comprehensive list of features and use cases, visit the nnn GitHub repository and Wiki.
Why Use nnn?
nnn offers several compelling reasons to integrate it into your workflow:
- Frugal Resource Usage: It typically uses less than 3.5MB of resident memory and has a tiny binary size, making it ideal for resource-constrained environments.
- Incredibly Fast: Optimized for speed with minimal disk I/O and fast screen redraws.
- Portable: Runs on a wide range of platforms including Raspberry Pi, Termux (Android), Linux, macOS, BSD, Haiku, Cygwin, and WSL.
- Privacy-Aware: Designed with privacy in mind, avoiding unconfirmed user data collection.
- Highly Customizable: While being 0-config by default, it supports plugins, patches, and compile-time options to tailor it to specific needs.
- Developer-Friendly: POSIX-compliant, follows Linux kernel coding style, and is written in C.
Links
- GitHub Repository: https://github.com/jarun/nnn
- Official Wiki: https://github.com/jarun/nnn/wiki
- Plugins: https://github.com/jarun/nnn/tree/master/plugins