4 - allow plugins to clear selection (#884, #889, #917)
5 - do not clear selection on hovered file deletion
6 - resurrect `'c'urrent/'s'el` prompt and option `-u` (#889)
7 - show only file name in reverse in detail mode
8 - more file/mime types supported in `preview-tui-ext`
9 - plugin `mtpmount` - (un)mount MTP devices
10 - plugin `cleanfilename` - more shell-friendly file names
11 - plugin `rsynccp` - copy-paste with visual progress
12 - replace `$HOME` by `~` in address bar
13 - show current path in terminal title (#911)
14 - total links and inode number of hardlink in statusbar
15 - fix symlink to text file not opening in CLI editor (#890)
16 - fix symlink size shown as 0B in statusbar (#888)
17 - show symlink target in statusbar (#893)
18 - show correct disk free/total on macOS (#888)
19 - fix directory disk usage showing as 0 on macOS (#941)
20 - fix name col len with `-C` and icons compiled-in (#936)
21 - refactor printing entries in light/detail modes (#934)
22 - make option `O_CKBOARD` for checker board as indicator
24 -------------------------------------------------------------------------------
29 - REPL command prompt (<kbd>Esc</kbd> or <kbd>Enter</kbd> to exit)
30 - invert selection with <kbd>A</kbd>
31 - option `-u` removed (always prefer selection to hovered)
32 - visit start dir on <kbd>@</kbd> when start path is a file
33 - exit filter mode and redraw on <kbd>^L</kbd> if no last filter
34 - plugin `fzcd` now selects the chosen file (#876)
35 - `ueberzug` support in plugin `preview-tui`
36 - new plugin `preview-tui-ext` with extra preview support
37 - clear selection after successful plugin invocation
38 - add method to sync subshell `$PWD` in WIki
39 - clear selection on single file deletion (#812)
40 - copy between instances not working (#864)
41 - plugin `togglex` to toggle exe mode of a selection (#813)
42 - fix `memccpy()` buffer overlap fault on macOS (#786)
43 - show `0 selected` msg on cp/mv with empty selection (#855)
44 - fix frozen terminal caused by opener (#858)
45 - migrate macOS CI to GitHub workflows, retire Travis
47 -------------------------------------------------------------------------------
52 - compile-in Alexey Tourbin's QSORT macro
53 - support Nerd Font patched icons [`make O_NERD=1`]
54 - auto-generate static binaries with icons support
55 - audit and adapt all plugins for macOS
56 - enhance plugin `dups` to delete duplicates interactively
57 - plugin `autojump` now supports `jump` and `zoxide`
58 - support `gio trash` to Trash [`export NNN_TRASH=2`] (#740)
59 - quit program on double <kbd>Esc</kbd> in normal mode (#775)
60 - <kbd>^Space</kbd> replaces <kbd>^K</kbd> for range selection/clear selection
61 - show selection symbol (`+`) next to filename in detail mode (#741)
62 - error & quit on <kbd>Q</kbd> if no selection, else pick to stdout
63 - repeat <kbd>^T</kbd> to cycle sort by time, size and clear
64 - option `-U` to show user & group info in status bar
65 - option `-J` to disable auto-proceed on select (#713)
66 - option `-D` to show dirs in context color with `NNN_FCOLORS`
67 - honor option `-C` for context colors
68 - show indicators if more entries above/below listing (#744)
69 - show missing utility name in flash msg (#753)
70 - exit `preview-tabbed` on <kbd>^C</kbd> (#727)
71 - invoke GNU sed (_gsed_) on macOS (#728)
72 - fix HW cursor moves to wrong line (#735)
73 - fix rollover bug with multiline scroll (#743)
74 - fix input stream not listed with `-s`/`-S` (#777)
75 - fix locker not being invoked
76 - make target `upx` for additional binary compression
77 - compress auto-generated static binaries with upx
78 - make variable `O_NOSSN` to compile out sessions
79 - make variable `O_NOUG` to compile out user & group info
81 -------------------------------------------------------------------------------
86 - icons with icon-specific colors (thanks @KlzXS)
87 - enhanced `NNN_COLORS` with xterm 256 colors support
88 - new colorscheme with `NNN_FCOLORS` (file type specific colors)
89 - switch `-C` to force earlier colorscheme (dirs follow context color)
90 - updates for Haiku (thanks @CodeforEvolution)
91 - fix XFS navigation issue (thanks @ucs1)
92 - optimize archive extension matching on file open
93 - show location in context color
94 - support `host[:dir]` format for remote mounts
95 - clear selection after copy
96 - support traversal on file/dir creation
97 - show selection in reverse in status bar
98 - show status bar indicator `H` when hidden files are listed
99 - show and confirm archive command output
100 - support _cd on quit_ in picker mode
102 -------------------------------------------------------------------------------
107 - subdir `mounts` for remote and archive mounts
108 - remove mount point on successful unmount of remote/archive
109 - show error and prompt user if `cp`/`mv`/`rm` operation fails
110 - support absolute/relative paths in cp/mv as
111 - mark current path automatically on archive/remote mount
112 - mark current path automatically on target file visit in _find and list_ mode
113 - option `-C` to place HW cursor on hovered for screen readers and braille displays
114 - option `-u` to use selection (if available) and skip `current/sel` prompt
115 - key <kbd>Alt+Esc</kbd> to clear filter prompt and redraw
116 - support <kbd>Esc</kbd> to cancel remove operation
117 - `gpge` & `gpgd`: encrypt and decrypt with GPG
118 - `blknew`: create new files and directories in bulk
120 - unified to support `tmux`/`kitty`/`xterm`/`$TERMINAL`
121 - auto-determine split orientation based on terminal height and width
122 - provision to use [`scope.sh`](https://github.com/ranger/ranger/blob/master/ranger/data/scope.sh) and [`pistol`](https://github.com/doronbehar/pistol)
123 - various other improvements
124 - `upload`: send to Firefox Send if [`ffsend`](https://github.com/timvisee/ffsend) is found
125 - `hexview`: add [`hx`](https://github.com/krpors/hx) as alternative hex viewer
126 - `nuke` and `imgview`: add [`imv`](https://github.com/eXeC64/imv) as alternative image viewer
127 - add find (with `fd`) and grep (with `rg`) examples in plugins doc
128 - key <kbd>Esc</kbd> or left click to resend hovered file path to `NNN_FIFO`
129 - show `+` instead of `s` in status bar on selection
130 - <kbd>F5</kbd> removed (misfit for toggle hidden), <kbd>^S</kbd> removed (often masked, redundant)
131 - handle abnormal program termination and remove NNN_PIPE and/or NNN_FIFO
132 - clear selection after successful batch rename, link creation
133 - make option `O_CTX8` for 8 contexts (NOT backward compatible with 4 contexts)
134 - fix issue with child window resize (see #656)
135 - fix issue with `NNNLVL` on macOS (see #639)
136 - fix issue with restoring session with du/au enabled
138 -------------------------------------------------------------------------------
145 - config `NNN_FIFO` to write hovered file paths a previewer can read
146 - plugin `preview-tabbed`: [tabbed](https://tools.suckless.org/tabbed)/xembed based file previewer
147 - plugin `preview-tui`: simple TUI file previewer in tmux/xterm
148 - plugin `preview-kitty`: preview using kitty terminal's capabilities
149 - [live preview](https://github.com/jarun/nnn/wiki/Live-previews) configuration example
151 - send list of files from (cmd run as) plugin to `nnn`
152 - plugin `finder`: find/fd/fzf/grep/ripgrep/fzf (in subtree) and list in `nnn`
153 - <kbd>Right</kbd> or <kbd>l</kbd> on symlink in list dir takes to target file
154 - persistent session option `-S` [for disk usage, run `nnn -T d` (see help)]
155 - hover on the file when a file path is passed as positional argument
156 - go to first file or match with <kbd>'</kbd> (followed by <kbd>'</kbd> or <kbd>char</kbd>)
157 - config `NNN_SEL` to specify custom selection file
158 - config `NNN_LOCKER` to specify locker program
159 - dim file details in detail mode
160 - call `chdir()` on directory change
161 - option `-l`: number of lines to move on mouse scroll
162 - graphical [keybind map](https://github.com/jarun/nnn/wiki/Usage#graphical-map)
163 - let `NNN_COLORS` override `NO_COLOR`
165 - option `-P`: run plugin by key at start
166 - run plugins with <kbd>Alt+key</kbd>
167 - allow `NNN_PIPE` usage by commands run as plugin
168 - input format to `NNN_PIPE`: `<ctxcode><opcode><data>` (see plugins doc)
169 - set `ctxcode` to `+` for smart context usage (next inactive, else current)
170 - `getplugs` to fetch plugins by installed version of `nnn`
171 - plugin `mimelist`: list files by mime type in subtree
172 - plugin `bookmarks`: named bookmarks using symlinks
173 - plugin `nbak`: backup `nnn` config
174 - `nuke` adds lowdown as alternative markdown viewer
175 - several plugin improvements
176 - fix broken screen on resize (see #520)
177 - fix broken version sort (see #550)
178 - fix list and pipe modes not working together
179 - fix multiple issues with listing files
180 - fix `@` shown in detail mode for symlink to dir
181 - fix listing files directly under `/`
184 -------------------------------------------------------------------------------
189 - unlimited bookmarks and plugin keys
190 - status bar text in context color
191 - support config `NO_COLOR` to disable colors
192 - config `NNN_OPTS` to specify binary options to `nnn`
193 - config `NNN_MCLICK` to emulate configurable key
194 - toggle selection on right click
195 - ignore hard links when calculating disk usage
196 - dim (hard/sym) link names (symlink to file has `@`)
197 - more special keys at empty filter prompt in _type-to-nav_
198 - key <kbd>></kbd> to export file list
199 - option `-F` to show fortune in help and settings screen
200 - option `-T` to specify sort order (obsoletes `-v`)
201 - option to clear sort order
202 - key <kbd>T</kbd> to change time type (access/change/mod)
203 - `.nmv` - internal fully-functional batch renamer plugin
204 - make var `O_NOBATCH` to disable native batch renamer
205 - `nuke` & `imgview` - open all images in directory sxiv
206 - `nuke` - open log files in vi
207 - plugin `x2sel` - system clipboard to selection copier
208 - plugin `fzy` - cd using z database
209 - plugin `fzopen` - support `FZF_DEFAULT_COMMAND`
210 - create new context on TAB without prompt
211 - hover and connect by dir name (within config dir)
212 - move to next entry on current file delete
213 - on single file copy/move, select the copied/moved file
214 - option `-f` to to use readline history file (off by default)
215 - use `s` in status bar to indicate selection in progress
216 - make var `O_NOMOUSE` to disable mouse support
217 - do not store `NNN_TRASH` and `-Q` in config/session
218 - add sample .desktop file for XDG compatible DEs
219 - rename _nav-as-you-type_ to _type-to-nav_ mode
220 - fix PCRE case-insensitive regex search
221 - fix no error msg when filter length limit exceeded
222 - fix static package generation
223 - fix broken abort message when started in du-mode
224 - fix filter lost on context switch in non _type-to-nav_ mode
225 - fix broken readline prompt
226 - fix long strings treated as action keys in filter prompt
227 - fix `NNNLVL` not reset when spawned shell is exited
229 -------------------------------------------------------------------------------
234 - take list of files as input and show
235 - option `-e` replaces `NNN_USE_EDITOR`
236 - option `-t` replaces `NNN_IDLE_TIMEOUT`
238 - more readline bindings for native prompts
239 - run GUI app as plugin
240 - attempt lazy unmount when regular unmount fails
241 - fix unmount on macOS: use `umount`
242 - detect `sshfs` and `rclone` to prompt intelligently
243 - auto-proceed on file open (toggle key <kbd>+</kbd>)
244 - quit with error code on <kbd>Q</kbd>
245 - additional key <kbd>F5</kbd> to toggle hidden
246 - key <kbd>e</kbd> to edit in EDITOR (back on multiple user requests)
247 - option to edit list of files in selection is changed to <kbd>E</kbd>
248 - do not end selection on redraw
249 - `nuke`: [`glow`](https://github.com/charmbracelet/glow) as Markdown viewer
250 - `nuke`: refactor, handle some common video types by extension
251 - file name removed from status bar
252 - static Makefile target
253 - generate, upload static package on release
254 - fix crash on entering empty dir, then Down
255 - fix keypresses lost when showing message
256 - fix #227: `nnn` creates xdg-open zombies
258 -------------------------------------------------------------------------------
263 - all keybinds and options reviewed by the team and frozen (see #422)
264 - reduced number of keybinds
265 - greatly improved help screen readability
266 - `nuke`: sample opener (CLI-only by default) and plugin
267 - fast line redraws instead of full screen refresh (thanks @annagrram)
268 - auto archive handling by extension (see config `NNN_ARCHIVE`)
269 - Lead key simplified to bookmark key (<kbd>b</kbd> or <kbd>^/</kbd>)
270 - single key to toggle order (<kbd>t</kbd> or <kbd>^T</kbd>)
272 - `.cbcp`: copy selection to system clipboard (internal, program option `-x`)
273 - `.ntfy`: show noti on cp, mv, rm completion (internal, program option `-x`)
274 - `autojump`: navigate using autojump
275 - `upload`: paste text files to http://ix.io, upload rest to https://file.io
276 - all fuzzy plugins modified to support both `fzf` and `fzy`
277 - more control on plugins
278 - prefix `-` to skip directory refresh after running (cmd as) plugin
279 - suffix `*` to skip confirmation after running cmd as plugin
280 - indicate range selection mode with `*`
281 - list keys at bookmark and plugin key prompts
282 - visit to pinned dir like bookmarks (Bookmark key followed by <kbd>,</kbd>)
283 - toggle executable (key <kbd>*</kbd>)
284 - show mime along with file details
285 - more special keys at empty filter prompt:
286 - apply the last filter (<kbd>^L</kbd>)
287 - toggle between string and regex (<kbd>/</kbd>)
288 - toggle case-sensitivity (<kbd>:</kbd>)
289 - retain filter on <kbd>Esc</kbd>, <kbd>Up</kbd>, <kbd>Down</kbd>
290 - show filter details when filter is on
291 - remove option to run filter as cmd on prompt key (can be disruptive)
293 - option `-x`: enable notis and copy selection to system clipboard
294 - option `-g`: regex filters (string filter is default now)
295 - option `-Q`: quit program without confirmation
296 - option `-s`: load session
297 - option `-n`: start in nav-as-you-type mode
298 - option `-v`: version sort
299 - option `-V`: show program version
300 - option `-A`: disable dir auto-select
301 - ISO 8601 compliant date in status bar
302 - ported to Haiku OS (thanks @annagrram)
303 - sort only filtered entries (to avoid directory refresh)
304 - fix `getplugs` to install hidden files
305 - fix several selection issues (see #400)
306 - fix detail mode not restored on loading session
307 - fix symlink to directory not auto-selected
308 - fix regex error on partial regex patterns
309 - fix symlink not shown if `stat(2)` on target fails
310 - fix flags when spawning a CLI opener as default FM
311 - fix issue with stat flag on Sun (no support for `dirent.d_type`)
312 - fix current file in current context not saved correctly in session
313 - signed source distribution on release
314 - simplified debugging with line numbers in logs
316 -------------------------------------------------------------------------------
321 - Fix always archiving current file
322 - More elaborate docs on selection changes
324 -------------------------------------------------------------------------------
329 - sessions (thanks @annagrram)
330 - `rclone` support for remote access (mount _any_ cloud storage!!!)
331 - toggle selection with <kbd>Space</kbd> or <kbd>^J</kbd>
332 - ignore events during selection so the `+` symbol is not lost
333 - run custom (non-shell-interpreted) commands like plugins
334 - configure _cd-on-quit_ as the default behaviour
335 - create parent dirs for new files and dirs, duplicate a file/dir anywhere
336 - _copy/move as_ workflow (thanks @KlzXS)
337 - edit , flush selection buffer (thanks @KlzXS)
338 - support xargs with minimal options (as in BusyBox) (thanks @KlzXS)
339 - changed the key to size sort to <kbd>z</kbd>
340 - additional key <kbd>]</kbd> to show command prompt
341 - mount archives using `archivemount`
342 - smoother double click handling
343 - program option `-R` to disable rollover at edges
344 - keybind collision checker (for custom keybind config) (thanks @annagrram)
345 - show size of file in bytes in status bar in disk usage mode
346 - pass unresolved path as second argument (`$2`) to plugin
347 - mechanism for plugins to control active directory
348 - all binary questions are confirmed by <kbd>y</kbd> or <kbd>Y</kbd>
350 - some plugins renamed
351 - integrated `shellcheck` in CI, POSIX-compliance fixes (thanks @koalaman)
352 - `getplugs` - detect modifications in exiting plugin file (thanks @KlzXS)
353 - `drag-file` & `drop-file`: drag & drop files using dragon
354 - `gutenread`: browse, download and read from Project Gutenberg
355 - `suedit` - edit file with superuser permissions
356 - `fzhist` - fuzzy select commands from history, edit and run
357 - `fzcd` - change to a fuzzy-searched directory
358 - `rename` - batch rename directory or selection using qmv or vidir
359 - `pskill` - fuzzy list a process or zombies by name and kill
360 - `exetoggle` - toggle executable status of hovered file
361 - `treeview` - informative tree output with file permissions and size
362 - `chksum` - recursively calculate checksum for files in hovered directory
363 - `fzopen` renamed to `fzopen`
364 - `imgsxiv` instructions added to browse and rename images
365 - create link to current file
366 - additional key <kbd>;</kbd> to execute plugin
367 - more explicit force removal message
368 - force non-detachable internal edits in $EDITOR (option `-E`)
369 - export current file as `$nnn` (instead of `$NN`)
370 - fix file open failure from browser when configured as default FM
372 -------------------------------------------------------------------------------
377 - plugins for image preview, image and video thumbnails
378 - redesigned selection workflow
379 - drop path prefix for files in current dir for selection based archives
380 - custom direct keybinds for plugins
381 - libreadline `.history` file moved to `nnn` config directory
382 - export current entry as `$NN` at command prompt
383 - more informative status bar in light/detail modes
384 - auto-proceed to next file on single file select
385 - path clipping for long paths
386 - completely revamped wiki
387 - new program options:
388 - `-a` to use file access time throughout the program
389 - `-c` to indicate cli-only opener
390 - `-f` to run filter as command on <kbd>^P</kbd>
391 - `-o` replaces config `NNN_RESTRICT_NAV_OPEN`
392 - `-t` replaces config `NNN_NO_AUTOSELECT`
393 - `-r` replaces config `NNN_OPS_PROG`
395 - `vidthumb` - show video thumbnails in terminal
396 - `mediainf` - show media info (decoupled as a plugin)
397 - `notes` - open a quick notes file/dir in `$EDITOR` (decoupled as a plugin)
398 - `dups` - list duplicate files in the current directory
399 - `oldbigfile` - list large files by access time
400 - `moclyrics` - show lyrics of the track currently playing in MOC
401 - `uidgid` list uid and gid of files in directory
402 - `mocplay` - now detects if a track is playing or not
403 - `organize` - categorize files and move to respective directories
404 - `pastebin` - now uses ix.io paste service
405 - `fzy-edit` - merged into `fzy-open`
406 - `viuimg` - fix directory view
407 - `checksum` - fixed POSIX compliance issues
408 - `boom` - play music in MOC
410 - select entry: <kbd>Space</kbd> and <kbd>^J</kbd>
411 - select range (or clear selection): <kbd>m</kbd> and <kbd>^K</kbd>
412 - select all in dir: <kbd>a</kbd>
413 - list selection: <kbd>M</kbd>
414 - <kbd>^N</kbd> replaces <kbd>^T</kbd> to toggle _nav-as-you-type_
415 - <kbd>Shift TAB</kbd> to reverse context cycle
416 - <kbd>'</kbd> to jump to first file in dir
417 - <kbd>S</kbd> for du, <kbd>A</kbd> for apparent du
418 - additional key <kbd>:</kbd> to run plugin
419 - additional key <kbd>F2</kbd> to rename file
420 - additional key <kbd>F5</kbd> to redraw
421 - quit context key <kbd>Leadq</kbd> is removed
422 - Leader key combinations:
423 - <kbd>Lead'</kbd> to jump to first file in dir
424 - <kbd>Lead]</kbd> go to next active context
425 - <kbd>Lead[</kbd> go to prev active context
426 - <kbd>Lead.</kbd> toggle show hidden files
427 - improved duplicate file workflow
428 - improved batch rename workflow when a selection exists
429 - removed the wild load option (`-w`)
430 - removed quick notes (added plugin `notes`)
431 - fix #225 (thanks @KlzXS)
432 - fix `tar`/`bsdtar` always creating tar archives (and not by suffix)
433 - fix single mouse click to select file not working
434 - fix symlink to dir removed on batch rename
435 - fix detail mode not set with program option `-S`
437 -------------------------------------------------------------------------------
443 - view image or browse a directory of images in terminal
444 - show image thumbnails
445 - PDF and text file reader
446 - calculate and verify checksum of selection or file
447 - append (and play) selection/dir/file music in MOC
448 - variable bitrate mp3 ringtone generator
449 - split current file or join selection
450 - better experience on Termux (and touch based devices)
451 - mouse scrolling support (with ncursesw6.0 and above)
452 - tap/left click to visit parent, toggle nav-as-you-type mode
453 - light mode set as default
454 - show status bar and use reverse video in light mode
455 - changed program options
457 - `-H`: show hidden files
459 - support `XDG_CONFIG_HOME`
460 - support <kbd>/</kbd> as an additional Leader key when filter is on
461 - sort by file extension
462 - use zip/unzip/tar if atool/bsdtar not found
463 - support duplicate file (key <kbd>^R</kbd>, same as rename file)
464 - new config option `NNN_SSHFS_OPTS` to specify `sshfs` options
465 - restrict opening 0 byte files (`NNN_RESTRICT_0B` is obsolete)
466 - critical defects fixed
467 - fix #276 - crash with variable length inotify event handling
468 - fix #285 - hang after deleting/moving current directory
469 - fix #274 - a broken prompt on empty input with libreadline
470 - fix #304 - list selection from another instance
471 - `cmatrix` as locker fallback
472 - wait for user input after running a command from prompt
473 - scrolloff set to 3 from 5
475 -------------------------------------------------------------------------------
481 - new location for config files - `~/.config/nnn`
482 - plugin dir location: `~/.config/nnn/plugins`
483 - selection file `.nnncp` is now `~/.config/nnn/.selection`
485 - pdfview: view a PDF in pager
486 - nmount: (un)mount a storage device
487 - ndiff: file and directory diff for selection
488 - hexview: view a file in hex
489 - imgresize: batch resize images to desktop resolution
490 - ipinfo: check your IP address and whois information
491 - transfer: upload a file to transfer.in
492 - pastebin: paste the contents of a text file to paste.ubuntu.com
493 - boom: play random music from a directory
494 - nwal: set an image as wallpaper using nitrogen
495 - pywal: set selected image as wallpaper, change terminal color scheme
496 - getplugs: update plugins
498 - support `bsdtar`, simplify `patool` integration
499 - native batch rename support (`vidir` dependency dropped)
500 - changes to support [configuration](https://github.com/jarun/nnn/wiki/nnn-as-default-file-manager) as the default file manager
501 - per-context detail/light mode
502 - case-insensitive version compare
503 - shortcut to visit `/` - <kbd>`</kbd> (backtick)
504 - vim-like scrolloff support
505 - <kbd>^D</kbd> & <kbd>^U</kbd>: scroll half page, <kbd>PgDn</kbd> & <kbd>PdUp</kbd>: scroll full page
506 - fix selection across contexts
507 - recognize <kbd>Home</kbd> and <kbd>End</kbd> keys at prompt for editing
508 - fix broken program option `-b`
509 - POSIX-compliant user-scripts (wherever possible)
510 - `NNN_SCRIPT` is retired (replaced by plugins)
512 -------------------------------------------------------------------------------
517 - FreeDesktop.org compliant trashing
518 - mark selected entries with `+`
519 - _wild_ mode (option `-w`, key <kbd>^W</kbd>) for _nav-as-you-type_
520 - POSIX-compliant GUI app launcher with drop-down menu (key <kbd>=</kbd>)
522 - upload image to imgur
523 - send selection to Android using kdeconnect-cli
524 - show permissions in detail mode
525 - cp, mv progress bar for Linux (needs advcpmv) [BSD, macOS shows on <kbd>^T</kbd>]
526 - make libreadline an optional dep (reduces memory usage)
527 - minimize the number of redraws
528 - handle screen resize gracefully
529 - option `-d` to show hidden files (`NNN_SHOW_HIDDEN` is removed)
530 - additional key <kbd>K</kbd> to toggle selection
531 - change visit start dir key to <kbd>@</kbd>
532 - option `-C` to disable colors removed
533 - per-context initial directory replaced by program start dir
534 - marker msg when spawning new shell removed
535 - rename debug file to `nnndbg`
537 -------------------------------------------------------------------------------
543 - repo of user-contributed scripts
544 - substring search for filters (option `-s`)
545 - version sort (option `-n`)
546 - disk usage calculation abort with <kbd>^C</kbd>
547 - create sym/hard link(s) to files in selection
548 - archiving of selection
549 - show dir symlinks along with dirs in top
550 - fixed CJK character handling at prompts
551 - key `N` (1 <= N <= 4) to switch to context N
552 - bring back `NNN_OPENER` to specify file opener
553 - env var `NNN_NOTE` and keybind <kbd>^N</kbd> for quick notes
554 - handle multiple arguments in VISUAL/EDITOR
555 - show the current directory being scanned in `du` mode
556 - select all files (<kbd>Y</kbd>)
557 - show command prompt (<kbd>^P</kbd>)
558 - key <kbd>,</kbd> replaces <kbd>`</kbd> as alternative Leader Key
559 - keybind for visit pinned directory is now <kbd>^B</kbd>
560 - additional key <kbd>^V</kbd> to run or select custom script
561 - use libreadline for command prompt
562 - reduce delay on <kbd>Esc</kbd> press
563 - config option to avoid unexpected behaviour on 0-byte file open (see #187)
564 - rename config option `DISABLE_FILE_OPEN_ON_NAV` to `NNN_RESTRICT_NAV_OPEN`
565 - keys removed - <kbd>$</kbd>, <kbd>^</kbd>, <kbd>Backspace</kbd>, <kbd>^H</kbd>, <kbd>^P</kbd>, <kbd>^M</kbd>, <kbd>^W</kbd>, <kbd>`</kbd>
567 -------------------------------------------------------------------------------
573 - (neo)vim plugin [nnn.vim](https://github.com/mcchrish/nnn.vim)
575 - Fix issues with file copy, move, remove
576 - Handle <kbd>Del</kbd> in rename prompt
577 - Pass correct `file` option to identify mime
578 - Support selection across directories and contexts
579 - Offer option `force` before file remove
580 - Keys <kbd>Tab</kbd>, <kbd>^I</kbd> to go to next active context
581 - Per-context directory color specified by `$NNN_CONTEXT_COLORS`
582 - Option `-c` is removed
583 - Option `-C` to disable colors
584 - Choose script to run from a script directory
585 - Run a command (or launch an application)
586 - Run file as executable (key <kbd>C</kbd>)
587 - Documentation on lftp integration for remote file transfers
588 - Support a _combined_ set of arguments to `$EDITOR`, `$PAGER` and `$SHELL`
589 - Handle > 2 GB files on 32-bit ARM
590 - Env var `$DISABLE_FILE_OPEN_ON_NAV` to disable file open on <kbd>Right</kbd> or <kbd>l</kbd>
591 - `NUL`-terminated file paths in selection list instead of `LF`
592 - Better support for Termux and Cygwin environments
594 - <kbd>^I</kbd> - go to next active context
595 - <kbd>^T</kbd> - toggle _navigate-as-you-type_
597 -------------------------------------------------------------------------------
603 - Inclusion in several distros including Arch Linux official repo
604 - Multiple contexts (_aka_ tabs _aka_ workspaces) [max 4]
605 - Copy, move, remove selected files, remove current file
606 - [Leader key](https://github.com/jarun/nnn#leader-key) (like vim)
607 - In-built GUI app launcher with up to 2 arguments (key <kbd>o</kbd>)
608 - List copy selection (key <kbd>y</kbd>)
609 - Env var `NNN_NO_AUTOSELECT` to disable dir auto-select
610 - Key <kbd>Esc</kbd> exits prompt, <kbd>^L</kbd> clears prompt
611 - Program runtime help revamped
612 - Static code analysis integration
613 - gcc-8 warnings fixed
615 - <kbd>^W</kbd> - go to pinned dir
616 - <kbd>^X</kbd> - delete current entry
617 - <kbd>^Q</kbd> - quit program
618 - `nlay` is retired (functionality built into `nnn`)
619 - `chdir` prompt is retired
620 - Env var `NNN_NO_X` retired, selection now works out of the box
621 - Only single-char bookmark keys (to work with Leader key)
623 -------------------------------------------------------------------------------
629 - Mode to show apparent size (key `S`)
630 - Script to integrate `patool` instead of `atool`
631 - Support `bashlock` (OS X) and `lock` (BSD) as terminal locker
632 - Symbol `@/` for symlink to dir
633 - Dependency on `libreadline` removed
635 -------------------------------------------------------------------------------
641 - Support unlimited number of scripts
642 - Pass currently selected filename as first argument to custom scripts
643 - Support directory auto-select in _navigate-as-you-type_ mode
644 - Show selection name in archive name prompt
645 - Support Cygwin opener
646 - Better support on RHEL 25 with earlier version on curses
647 - Sample script for `fzy` integration
648 - Now available on OpenBSD
649 - Disabled package generation for Ubuntu 17.10
651 -------------------------------------------------------------------------------
657 - Run a custom script
658 - Archive selected file/directory
659 - Show number of cherry-picked files in multi-copy mode
660 - Env var `NNN_SHOW_HIDDEN` to show hidden files by default
661 - Additional information in help screen
662 - Give preference to env var VISUAL, if defined, over EDITOR
663 - New/changed/remapped shortcuts
664 - <kbd>^]</kbd> - spawn a new shell in current directory
665 - <kbd>r</kbd> - edit directory entries in vidir
666 - <kbd>R</kbd> - run a custom script
667 - <kbd>^I</kbd> - toggle navigate-as-you-type mode
668 - <kbd>L</kbd> - lock the current terminal (Linux-only)
669 - All Ctrl shortcuts enabled in navigate-as-you-type mode
670 - Fix: GUI programs closing when parent terminal is closed
671 - Recognize `~`, `-` and `&` at bookmark prompt
672 - Recognize ruby (.rb) files as text files
673 - Efficient integer-only file size calculation
674 - Official inclusion on openSUSE and Fedora
675 - Package generation for Ubuntu 18.04
677 -------------------------------------------------------------------------------
683 - Batch rename/move/delete files in vidir from [moreutils](https://joeyh.name/code/moreutils/)
684 - Copy multiple file paths
685 - Copy file paths when X is unavailable
686 - Optionally quote individual file paths with single quotes on copy
687 - Use ISO 8601 date format in file details
688 - New/changed/remapped shortcuts:
689 - <kbd>^B</kbd> - show bookmark prompt (replaces <kbd>b</kbd>)
690 - <kbd>b</kbd> - pin current dir (replaces <kbd>^B</kbd>)
691 - <kbd>^J</kbd> - toggle du mode
692 - <kbd>R</kbd> - batch rename files in vidir
693 - <kbd>^F</kbd> - extract archive (replaces <kbd>^X</kbd>)
694 - <kbd>^G</kbd> - quit nnn and change dir
695 - <kbd>^X</kbd> - quit nnn (replaces <kbd>^Q</kbd>)
696 - Extra shortcuts enabled in nav-as-you-type mode:
697 - <kbd>^K</kbd>, <kbd>^Y</kbd> (file path copy)
698 - <kbd>^T</kbd> (toggles quoted file path copy)
699 - <kbd>^R</kbd> (rename)
700 - <kbd>^O</kbd> (open with...)
701 - <kbd>^B</kbd> (show bookmark prompt)
702 - <kbd>^V</kbd> (visit pinned dir)
703 - <kbd>^J</kbd> (toggle du mode)
704 - <kbd>^/</kbd> (open desktop opener)
705 - <kbd>^F</kbd> (extract archive)
706 - <kbd>^L</kbd> (refresh)
707 - <kbd>^G</kbd> (quit nnn and change dir)
708 - <kbd>^X</kbd> (quit nnn)
710 -------------------------------------------------------------------------------
716 - Shortcut `^O` to open file with custom application
717 - Option `-b` to open bookmarks directly at start
718 - Huge performance improvements around file name storing and handling
719 - Several large static buffers removed or reduced
720 - Several internal algorithms fine tuned for performance/resource usage
722 -------------------------------------------------------------------------------
728 - File and directory creation (`n`)
729 - Env variable `NNN_NOWAIT` to unblock nnn when opening files (DE-specific)
730 - Show current entry number in status bar
731 - Support archive listing (`F`) and extraction (`Ctrl-X`) [using `atool`]
732 - Show correct file size on i386 for large files (> 2GB)
734 -------------------------------------------------------------------------------
740 - Monitor directory changes
741 - In-place file rename
742 - Pin (`Ctrl-B`) a directory and visit (`Ctrl-V`) it anytime
743 - Auto-completion scripts
744 - Show volume capacity and free in help
745 - Auto-fallback to light mode if too few columns (< 35)
746 - PackageCore integration
747 - Unsupported Function keys (they never work universally):
748 - `F2` (rename), use `Ctrl-R`
749 - `F5` (refresh), use `Ctrl-L`
751 -------------------------------------------------------------------------------
757 - Show directories in custom color (default: enabled in blue)
758 - Option `-e` to use exiftool instead of mediainfo
759 - Fixed #34: nftw(3) broken with too many open descriptors
760 - More concise help screen
762 -------------------------------------------------------------------------------
768 - Use the desktop opener (xdg-open on Linux, open(1) on OS X) to open files
769 - Option `NNN_USE_EDITOR` to open text files in EDITOR (fallback vi)
770 - Bookmark support (maximum 10, key `b`)
771 - *Navigate-as-you-type* mode (key `Insert` or option `-i`)
772 - Subtree search: gnome-search-tool, fallback catfish (key `^/`) (customizable)
773 - Show current directory content size and file count in disk usage mode
774 - Add detail view mode as default, use `-l` to start in light mode
775 - Shortcuts `F2` and `^L` to refresh and unfilter
776 Note: if filter is empty, `Enter` *opens* the currently selected file now
777 - Help screen shows bookmarks and configuration
778 - Show a message when calculating disk usage
779 - Show the spawned shell level
780 - Linux only: use vlock as the locker on timeout (set using `NNN_IDLE_TIMEOUT`)
782 -------------------------------------------------------------------------------
788 - Introducing nlay - a highly customizable bash script to handle media type
789 - nnn is on [Homebrew](http://braumeister.org/formula/nnn) now
790 - RPM packages for CentOS 7 and Fedora 24 generated on release
793 - *Search-as-you-type*
795 - Option `-S` to start in disk usage analyzer mode
796 - Show media information (using mediainfo)
797 - Use readline at change directory prompt
798 - Jump to prev directories using `cd .....` (with `.` as PWD)
799 - Jump to initial directory using `&`
800 - Show help, mediainfo and file info in PAGER
801 - Several optimizations
803 -------------------------------------------------------------------------------
809 - Behaviour and navigation
810 - Detail view (default: disabled) with:
811 - file type (directory, regular, symlink etc.)
813 - human-readable file size
814 - current item in reverse video
815 - number of items in current directory
816 - full name of currently selected file in 'bar'
817 - Show details of the currently selected file (stat, file)
818 - Disk usage analyzer mode (within the same fs, doesn't follow symlinks)
819 - Directories first (even with sorting)
820 - Sort numeric names in numeric order
821 - Case-insensitive alphabetic content listing instead of upper case first
822 - Key `-` to jump to last visited directory
823 - Roll over at the first and last entries of a directory (with Up/Down keys)
824 - Removed navigation restriction with relative paths (and let permissions handle it)
825 - Sort entries by file size (largest to smallest)
826 - Shortcut to invoke file name copier (set using environment variable `NNN_COPIER`)
828 - Set `NNN_OPENER` to let a desktop opener handle it all. E.g.:
829 export NNN_OPENER=xdg-open
830 export NNN_OPENER=gnome-open
831 export NNN_OPENER=gvfs-open
832 - Selective file associations (ignored if `NNN_OPENER` is set):
833 - Associate plain text files (determined using file) with vi
834 - Associate common audio and video mimes with mpv
835 - Associate PDF files with [zathura](https://pwmt.org/projects/zathura/)
836 - Removed `less` as default file opener (there is no universal standalone opener utility)
837 - You can customize further (see [how to change file associations](#change-file-associations))
838 - `NNN_FALLBACK_OPENER` is the last line of defense:
839 - If the executable in static file association is missing
840 - If a file type was not handled in static file association
841 - This may be the best option to set your desktop opener to
842 - To enable the desktop file manager key, set `NNN_DE_FILE_MANAGER`. E.g.:
843 export NNN_DE_FILE_MANAGER=thunar
845 - All redundant buffer removal
846 - All frequently used local chunks now static
847 - Removed some redundant string allocation and manipulation
848 - Simplified some roundabout procedures
849 - Compiler warnings fixed
850 - strip the final binary
852 -------------------------------------------------------------------------------