nnn v2.9 2020-01-15 - all keybinds and options reviewed by the team and frozen (see #422) - reduced number of keybinds - greatly improved help screen readability - `nuke`: sample opener (CLI-only by default) and plugin - fast line redraws instead of full screen refresh (thanks @annagrram) - auto archive handling by extension (see config `NNN_ARCHIVE`) - Lead key simplified to bookmark key (b or ^/) - single key to toggle order (t or ^T) - plugins - `.cbcp`: copy selection to system clipboard (internal, program option `-x`) - `.ntfy`: show noti on cp, mv, rm completion (internal, program option `-x`) - `autojump`: navigate using autojump - `upload`: paste text files to http://ix.io, upload rest to https://file.io - all fuzzy plugins modified to support both `fzf` and `fzy` - more control on plugins - prefix `-` to skip directory refresh after running (cmd as) plugin - suffix `*` to skip confirmation after running cmd as plugin - indicate range selection mode with `*` - list keys at bookmark and plugin key prompts - visit to pinned dir like bookmarks (Bookmark key followed by ,) - toggle executable (key *) - show mime along with file details - special keys at empty filter prompt: - apply the last filter (key ^L) - set to string (key /) or regex (key \\) - toggle case-sensitivity (:) - retain filter on Esc, Up, Down - show filter details when filter is on - remove option to run filter as cmd on prompt key (can be disruptive) - program options - option `-x`: enable notis and copy selection to system clipboard - option `-g`: regex filters (string filter is default now) - option `-Q`: quit program without confirmation - option `-s`: load session - option `-n`: start in nav-as-you-type mode - option `-v`: version sort - option `-V`: show program version - option `-A`: disable dir auto-select - ISO 8601 compliant date in status bar - ported to Haiku OS (thanks @annagrram) - sort only filtered entries (to avoid directory refresh) - fix `getplugs` to install hidden files - fix several selection issues (see #400) - fix detail mode not restored on loading session - fix symlink to directory not auto-selected - fix regex error on partial regex patterns - fix symlink not shown if `stat(2)` on target fails - fix flags when spawning a CLI opener as default FM - fix issue with stat flag on Sun (no support for `dirent.d_type`) - fix current file in current context not saved correctly in session - signed source distribution on release - simplified debugging with line numbers in logs ------------------------------------------------------------------------------- nnn v2.8.1 2019-12-05 - Fix always archiving current file - More elaborate docs on selection changes ------------------------------------------------------------------------------- nnn v2.8 2019-12-04 - sessions (thanks @annagrram) - `rclone` support for remote access (mount _any_ cloud storage!!!) - toggle selection with Space or ^J - ignore events during selection so the `+` symbol is not lost - run custom (non-shell-interpreted) commands like plugins - configure _cd-on-quit_ as the default behaviour - create parent dirs for new files and dirs, duplicate a file/dir anywhere - _copy/move as_ workflow (thanks @KlzXS) - edit , flush selection buffer (thanks @KlzXS) - support xargs with minimal options (as in BusyBox) (thanks @KlzXS) - changed the key to size sort to z - additional key ] to show command prompt - mount archives using `archivemount` - smoother double click handling - program option `-R` to disable rollover at edges - keybind collision checker (for custom keybind config) (thanks @annagrram) - show size of file in bytes in status bar in disk usage mode - pass unresolved path as second argument (`$2`) to plugin - mechanism for plugins to control active directory - all binary questions are confirmed by y or Y - plugins - some plugins renamed - integrated `shellcheck` in CI, POSIX-compliance fixes (thanks @koalaman) - `getplugs` - detect modifications in exiting plugin file (thanks @KlzXS) - `drag-file` & `drop-file`: drag & drop files using dragon - `gutenread`: browse, download and read from Project Gutenberg - `suedit` - edit file with superuser permissions - `fzhist` - fuzzy select commands from history, edit and run - `fzcd` - change to a fuzzy-searched directory - `rename` - batch rename directory or selection using qmv or vidir - `pskill` - fuzzy list a process or zombies by name and kill - `exetoggle` - toggle executable status of hovered file - `treeview` - informative tree output with file permissions and size - `chksum` - recursively calculate checksum for files in hovered directory - `fzopen` renamed to `fzopen` - `imgsxiv` instructions added to browse and rename images - create link to current file - additional key ; to execute plugin - more explicit force removal message - force non-detachable internal edits in $EDITOR (option `-E`) - export current file as `$nnn` (instead of `$NN`) - fix file open failure from browser when configured as default FM ------------------------------------------------------------------------------- nnn v2.7 2019-10-06 - plugins for image preview, image and video thumbnails - redesigned selection workflow - drop path prefix for files in current dir for selection based archives - custom direct keybinds for plugins - libreadline `.history` file moved to `nnn` config directory - export current entry as `$NN` at command prompt - more informative status bar in light/detail modes - auto-proceed to next file on single file select - path clipping for long paths - completely revamped wiki - new program options: - `-a` to use file access time throughout the program - `-c` to indicate cli-only opener - `-f` to run filter as command on ^P - `-o` replaces config `NNN_RESTRICT_NAV_OPEN` - `-t` replaces config `NNN_NO_AUTOSELECT` - `-r` replaces config `NNN_OPS_PROG` - plugin changes: - `vidthumb` - show video thumbnails in terminal - `mediainf` - show media info (decoupled as a plugin) - `notes` - open a quick notes file/dir in `$EDITOR` (decoupled as a plugin) - `dups` - list duplicate files in the current directory - `oldbigfile` - list large files by access time - `moclyrics` - show lyrics of the track currently playing in MOC - `uidgid` list uid and gid of files in directory - `mocplay` - now detects if a track is playing or not - `organize` - categorize files and move to respective directories - `pastebin` - now uses ix.io paste service - `fzy-edit` - merged into `fzy-open` - `viuimg` - fix directory view - `checksum` - fixed POSIX compliance issues - `boom` - play music in MOC - keybind changes: - select entry: Space and ^J - select range (or clear selection): m and ^K - select all in dir: a - list selection: M - ^N replaces ^T to toggle _nav-as-you-type_ - Shift TAB to reverse context cycle - ' to jump to first file in dir - S for du, A for apparent du - additional key : to run plugin - additional key F2 to rename file - additional key F5 to redraw - quit context key Leadq is removed - Leader key combinations: - Lead' to jump to first file in dir - Lead] go to next active context - Lead[ go to prev active context - Lead. toggle show hidden files - improved duplicate file workflow - improved batch rename workflow when a selection exists - removed the wild load option (`-w`) - removed quick notes (added plugin `notes`) - fix #225 (thanks @KlzXS) - fix `tar`/`bsdtar` always creating tar archives (and not by suffix) - fix single mouse click to select file not working - fix symlink to dir removed on batch rename - fix detail mode not set with program option `-S` ------------------------------------------------------------------------------- nnn v2.6 2019-08-06 - new plugins - view image or browse a directory of images in terminal - show image thumbnails - PDF and text file reader - calculate and verify checksum of selection or file - append (and play) selection/dir/file music in MOC - variable bitrate mp3 ringtone generator - split current file or join selection - better experience on Termux (and touch based devices) - mouse scrolling support (with ncursesw6.0 and above) - tap/left click to visit parent, toggle nav-as-you-type mode - light mode set as default - show status bar and use reverse video in light mode - changed program options - `-d`: detail mode - `-H`: show hidden files - `-l` is retired - support `XDG_CONFIG_HOME` - support / as an additional Leader key when filter is on - sort by file extension - use zip/unzip/tar if atool/bsdtar not found - support duplicate file (key ^R, same as rename file) - new config option `NNN_SSHFS_OPTS` to specify `sshfs` options - restrict opening 0 byte files (`NNN_RESTRICT_0B` is obsolete) - critical defects fixed - fix #276 - crash with variable length inotify event handling - fix #285 - hang after deleting/moving current directory - fix #274 - a broken prompt on empty input with libreadline - fix #304 - list selection from another instance - `cmatrix` as locker fallback - wait for user input after running a command from prompt - scrolloff set to 3 from 5 ------------------------------------------------------------------------------- nnn v2.5 2019-05-27 - mouse support - new location for config files - `~/.config/nnn` - plugin dir location: `~/.config/nnn/plugins` - selection file `.nnncp` is now `~/.config/nnn/.selection` - plugins: - pdfview: view a PDF in pager - nmount: (un)mount a storage device - ndiff: file and directory diff for selection - hexview: view a file in hex - imgresize: batch resize images to desktop resolution - ipinfo: check your IP address and whois information - transfer: upload a file to transfer.in - pastebin: paste the contents of a text file to paste.ubuntu.com - boom: play random music from a directory - nwal: set an image as wallpaper using nitrogen - pywal: set selected image as wallpaper, change terminal color scheme - getplugs: update plugins - SSHFS support - support `bsdtar`, simplify `patool` integration - native batch rename support (`vidir` dependency dropped) - changes to support [configuration](https://github.com/jarun/nnn/wiki/nnn-as-default-file-manager) as the default file manager - per-context detail/light mode - case-insensitive version compare - shortcut to visit `/` - ` (backtick) - vim-like scrolloff support - ^D & ^U: scroll half page, PgDn & PdUp: scroll full page - fix selection across contexts - recognize Home and End keys at prompt for editing - fix broken program option `-b` - POSIX-compliant user-scripts (wherever possible) - `NNN_SCRIPT` is retired (replaced by plugins) ------------------------------------------------------------------------------- nnn v2.4 2019-03-19 - FreeDesktop.org compliant trashing - mark selected entries with `+` - _wild_ mode (option `-w`, key ^W) for _nav-as-you-type_ - POSIX-compliant GUI app launcher with drop-down menu (key =) - new scripts: - upload image to imgur - send selection to Android using kdeconnect-cli - show permissions in detail mode - cp, mv progress bar for Linux (needs advcpmv) [BSD, macOS shows on ^T] - make libreadline an optional dep (reduces memory usage) - minimize the number of redraws - handle screen resize gracefully - option `-d` to show hidden files (`NNN_SHOW_HIDDEN` is removed) - additional key K to toggle selection - change visit start dir key to @ - option `-C` to disable colors removed - per-context initial directory replaced by program start dir - marker msg when spawning new shell removed - rename debug file to `nnndbg` ------------------------------------------------------------------------------- nnn v2.3 2019-02-19 - file picker mode - repo of user-contributed scripts - substring search for filters (option `-s`) - version sort (option `-n`) - disk usage calculation abort with ^C - create sym/hard link(s) to files in selection - archiving of selection - show dir symlinks along with dirs in top - fixed CJK character handling at prompts - key `N` (1 <= N <= 4) to switch to context N - bring back `NNN_OPENER` to specify file opener - env var `NNN_NOTE` and keybind ^N for quick notes - handle multiple arguments in VISUAL/EDITOR - show the current directory being scanned in `du` mode - select all files (Y) - show command prompt (^P) - key , replaces ` as alternative Leader Key - keybind for visit pinned directory is now ^B - additional key ^V to run or select custom script - use libreadline for command prompt - reduce delay on Esc press - config option to avoid unexpected behaviour on 0-byte file open (see #187) - rename config option `DISABLE_FILE_OPEN_ON_NAV` to `NNN_RESTRICT_NAV_OPEN` - keys removed - $, ^, Backspace, ^H, ^P, ^M, ^W, ` ------------------------------------------------------------------------------- nnn v2.2 2019-01-01 What's in? - (neo)vim plugin [nnn.vim](https://github.com/mcchrish/nnn.vim) - macOS fixes - Fix issues with file copy, move, remove - Handle Del in rename prompt - Pass correct `file` option to identify mime - Support selection across directories and contexts - Offer option `force` before file remove - Keys Tab, ^I to go to next active context - Per-context directory color specified by `$NNN_CONTEXT_COLORS` - Option `-c` is removed - Option `-C` to disable colors - Choose script to run from a script directory - Run a command (or launch an application) - Run file as executable (key C) - Documentation on lftp integration for remote file transfers - Support a _combined_ set of arguments to `$EDITOR`, `$PAGER` and `$SHELL` - Handle > 2 GB files on 32-bit ARM - Env var `$DISABLE_FILE_OPEN_ON_NAV` to disable file open on Right or l - `NUL`-terminated file paths in selection list instead of `LF` - Better support for Termux and Cygwin environments - Remapped keys - ^I - go to next active context - ^T - toggle _navigate-as-you-type_ ------------------------------------------------------------------------------- nnn v2.1 2018-11-23 What's in? - Inclusion in several distros including Arch Linux official repo - Multiple contexts (_aka_ tabs _aka_ workspaces) [max 4] - Copy, move, remove selected files, remove current file - [Leader key](https://github.com/jarun/nnn#leader-key) (like vim) - In-built GUI app launcher with up to 2 arguments (key o) - List copy selection (key y) - Env var `NNN_NO_AUTOSELECT` to disable dir auto-select - Key Esc exits prompt, ^L clears prompt - Program runtime help revamped - Static code analysis integration - gcc-8 warnings fixed - Remapped keys: - ^W - go to pinned dir - ^X - delete current entry - ^Q - quit program - `nlay` is retired (functionality built into `nnn`) - `chdir` prompt is retired - Env var `NNN_NO_X` retired, selection now works out of the box - Only single-char bookmark keys (to work with Leader key) ------------------------------------------------------------------------------- nnn v2.0 2018-10-19 What's in? - Mode to show apparent size (key `S`) - Script to integrate `patool` instead of `atool` - Support `bashlock` (OS X) and `lock` (BSD) as terminal locker - Symbol `@/` for symlink to dir - Dependency on `libreadline` removed ------------------------------------------------------------------------------- nnn v1.9 2018-08-10 What's in? - Support unlimited number of scripts - Pass currently selected filename as first argument to custom scripts - Support directory auto-select in _navigate-as-you-type_ mode - Show selection name in archive name prompt - Support Cygwin opener - Better support on RHEL 25 with earlier version on curses - Sample script for `fzy` integration - Now available on OpenBSD - Disabled package generation for Ubuntu 17.10 ------------------------------------------------------------------------------- nnn v1.8 2018-05-02 What's in? - Run a custom script - Archive selected file/directory - Show number of cherry-picked files in multi-copy mode - Env var `NNN_SHOW_HIDDEN` to show hidden files by default - Additional information in help screen - Give preference to env var VISUAL, if defined, over EDITOR - New/changed/remapped shortcuts - ^] - spawn a new shell in current directory - r - edit directory entries in vidir - R - run a custom script - ^I - toggle navigate-as-you-type mode - L - lock the current terminal (Linux-only) - All Ctrl shortcuts enabled in navigate-as-you-type mode - Fix: GUI programs closing when parent terminal is closed - Recognize `~`, `-` and `&` at bookmark prompt - Recognize ruby (.rb) files as text files - Efficient integer-only file size calculation - Official inclusion on openSUSE and Fedora - Package generation for Ubuntu 18.04 ------------------------------------------------------------------------------- nnn v1.7 2018-02-28 What's in? - Batch rename/move/delete files in vidir from [moreutils](https://joeyh.name/code/moreutils/) - Copy multiple file paths - Copy file paths when X is unavailable - Optionally quote individual file paths with single quotes on copy - Use ISO 8601 date format in file details - New/changed/remapped shortcuts: - ^B - show bookmark prompt (replaces b) - b - pin current dir (replaces ^B) - ^J - toggle du mode - R - batch rename files in vidir - ^F - extract archive (replaces ^X) - ^G - quit nnn and change dir - ^X - quit nnn (replaces ^Q) - Extra shortcuts enabled in nav-as-you-type mode: - ^K, ^Y (file path copy) - ^T (toggles quoted file path copy) - ^R (rename) - ^O (open with...) - ^B (show bookmark prompt) - ^V (visit pinned dir) - ^J (toggle du mode) - ^/ (open desktop opener) - ^F (extract archive) - ^L (refresh) - ^G (quit nnn and change dir) - ^X (quit nnn) ------------------------------------------------------------------------------- nnn v1.6 2017-12-25 What's in? - Shortcut `^O` to open file with custom application - Option `-b` to open bookmarks directly at start - Huge performance improvements around file name storing and handling - Several large static buffers removed or reduced - Several internal algorithms fine tuned for performance/resource usage ------------------------------------------------------------------------------- nnn v1.5 2017-10-05 What's in? - File and directory creation (`n`) - Env variable `NNN_NOWAIT` to unblock nnn when opening files (DE-specific) - Show current entry number in status bar - Support archive listing (`F`) and extraction (`Ctrl-X`) [using `atool`] - Show correct file size on i386 for large files (> 2GB) ------------------------------------------------------------------------------- nnn v1.4 2017-09-04 What's in? - Monitor directory changes - In-place file rename - Pin (`Ctrl-B`) a directory and visit (`Ctrl-V`) it anytime - Auto-completion scripts - Show volume capacity and free in help - Auto-fallback to light mode if too few columns (< 35) - PackageCore integration - Unsupported Function keys (they never work universally): - `F2` (rename), use `Ctrl-R` - `F5` (refresh), use `Ctrl-L` ------------------------------------------------------------------------------- nnn v1.3 2017-07-26 What's in? - Show directories in custom color (default: enabled in blue) - Option `-e` to use exiftool instead of mediainfo - Fixed #34: nftw(3) broken with too many open descriptors - More concise help screen ------------------------------------------------------------------------------- nnn v1.2 2017-06-29 What's in? - Use the desktop opener (xdg-open on Linux, open(1) on OS X) to open files - Option `NNN_USE_EDITOR` to open text files in EDITOR (fallback vi) - Bookmark support (maximum 10, key `b`) - *Navigate-as-you-type* mode (key `Insert` or option `-i`) - Subtree search: gnome-search-tool, fallback catfish (key `^/`) (customizable) - Show current directory content size and file count in disk usage mode - Add detail view mode as default, use `-l` to start in light mode - Shortcuts `F2` and `^L` to refresh and unfilter Note: if filter is empty, `Enter` *opens* the currently selected file now - Help screen shows bookmarks and configuration - Show a message when calculating disk usage - Show the spawned shell level - Linux only: use vlock as the locker on timeout (set using `NNN_IDLE_TIMEOUT`) ------------------------------------------------------------------------------- nnn v1.1 2017-05-12 News - Introducing nlay - a highly customizable bash script to handle media type - nnn is on [Homebrew](http://braumeister.org/formula/nnn) now - RPM packages for CentOS 7 and Fedora 24 generated on release What's in? - *Search-as-you-type* - Unicode support - Option `-S` to start in disk usage analyzer mode - Show media information (using mediainfo) - Use readline at change directory prompt - Jump to prev directories using `cd .....` (with `.` as PWD) - Jump to initial directory using `&` - Show help, mediainfo and file info in PAGER - Several optimizations ------------------------------------------------------------------------------- nnn v1.0 2017-04-13 Modifications - Behaviour and navigation - Detail view (default: disabled) with: - file type (directory, regular, symlink etc.) - modification time - human-readable file size - current item in reverse video - number of items in current directory - full name of currently selected file in 'bar' - Show details of the currently selected file (stat, file) - Disk usage analyzer mode (within the same fs, doesn't follow symlinks) - Directories first (even with sorting) - Sort numeric names in numeric order - Case-insensitive alphabetic content listing instead of upper case first - Key `-` to jump to last visited directory - Roll over at the first and last entries of a directory (with Up/Down keys) - Removed navigation restriction with relative paths (and let permissions handle it) - Sort entries by file size (largest to smallest) - Shortcut to invoke file name copier (set using environment variable `NNN_COPIER`) - File association - Set `NNN_OPENER` to let a desktop opener handle it all. E.g.: export NNN_OPENER=xdg-open export NNN_OPENER=gnome-open export NNN_OPENER=gvfs-open - Selective file associations (ignored if `NNN_OPENER` is set): - Associate plain text files (determined using file) with vi - Associate common audio and video mimes with mpv - Associate PDF files with [zathura](https://pwmt.org/projects/zathura/) - Removed `less` as default file opener (there is no universal standalone opener utility) - You can customize further (see [how to change file associations](#change-file-associations)) - `NNN_FALLBACK_OPENER` is the last line of defense: - If the executable in static file association is missing - If a file type was not handled in static file association - This may be the best option to set your desktop opener to - To enable the desktop file manager key, set `NNN_DE_FILE_MANAGER`. E.g.: export NNN_DE_FILE_MANAGER=thunar - Optimization - All redundant buffer removal - All frequently used local chunks now static - Removed some redundant string allocation and manipulation - Simplified some roundabout procedures - Compiler warnings fixed - strip the final binary -------------------------------------------------------------------------------