aboutsummaryrefslogtreecommitdiffstats
path: root/CHANGELOG
blob: c4db673f154e48d17709258c00edd2702f8ab823 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
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 `/` - <kbd>`</kbd> (backtick)
- vim-like scrolloff support
- <kbd>^D</kbd> & <kbd>^U</kbd>: scroll half page, <kbd>PgDn</kbd> & <kbd>PdUp</kbd>: scroll full page
- fix selection across contexts
- recognize <kbd>Home</kbd> and <kbd>End</kbd> 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 <kbd>^W</kbd>) for _nav-as-you-type_
- POSIX-compliant GUI app launcher with drop-down menu (key <kbd>=</kbd>)
- 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 <kbd>^T</kbd>]
- 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 <kbd>K</kbd> to toggle selection
- change visit start dir key to <kbd>@</kbd>
- 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 <kbd>^C</kbd>
- 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 <kbd>^N</kbd> for quick notes
- handle multiple arguments in VISUAL/EDITOR
- show the current directory being scanned in `du` mode
- select all files (<kbd>Y</kbd>)
- show command prompt (<kbd>^P</kbd>)
- key <kbd>,</kbd> replaces <kbd>`</kbd> as alternative Leader Key
- keybind for visit pinned directory is now <kbd>^B</kbd>
- additional key <kbd>^V</kbd> to run or select custom script
- use libreadline for command prompt
- reduce delay on <kbd>Esc</kbd> 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 - <kbd>$</kbd>, <kbd>^</kbd>, <kbd>Backspace</kbd>, <kbd>^H</kbd>, <kbd>^P</kbd>, <kbd>^M</kbd>, <kbd>^W</kbd>, <kbd>`</kbd>

-------------------------------------------------------------------------------

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 <kbd>Del</kbd> in rename prompt
  - Pass correct `file` option to identify mime
- Support selection across directories and contexts
- Offer option `force` before file remove
- Keys <kbd>Tab</kbd>, <kbd>^I</kbd> 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 <kbd>C</kbd>)
- 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 <kbd>Right</kbd> or <kbd>l</kbd>
- `NUL`-terminated file paths in selection list instead of `LF`
- Better support for Termux and Cygwin environments
- Remapped keys
  - <kbd>^I</kbd> - go to next active context
  - <kbd>^T</kbd> - 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 <kbd>o</kbd>)
- List copy selection (key <kbd>y</kbd>)
- Env var `NNN_NO_AUTOSELECT` to disable dir auto-select
- Key <kbd>Esc</kbd> exits prompt, <kbd>^L</kbd> clears prompt
- Program runtime help revamped
- Static code analysis integration
- gcc-8 warnings fixed
- Remapped keys:
  - <kbd>^W</kbd> - go to pinned dir
  - <kbd>^X</kbd> - delete current entry
  - <kbd>^Q</kbd> - 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
  - <kbd>^]</kbd> - spawn a new shell in current directory
  - <kbd>r</kbd> - edit directory entries in vidir
  - <kbd>R</kbd> - run a custom script
  - <kbd>^I</kbd> - toggle navigate-as-you-type mode
  - <kbd>L</kbd> - 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:
  - <kbd>^B</kbd> - show bookmark prompt (replaces <kbd>b</kbd>)
  - <kbd>b</kbd> - pin current dir (replaces <kbd>^B</kbd>)
  - <kbd>^J</kbd> - toggle du mode
  - <kbd>R</kbd> - batch rename files in vidir
  - <kbd>^F</kbd> - extract archive (replaces <kbd>^X</kbd>)
  - <kbd>^G</kbd> - quit nnn and change dir
  - <kbd>^X</kbd> - quit nnn (replaces <kbd>^Q</kbd>)
- Extra shortcuts enabled in nav-as-you-type mode:
  - <kbd>^K</kbd>, <kbd>^Y</kbd> (file path copy)
  - <kbd>^T</kbd> (toggles quoted file path copy)
  - <kbd>^R</kbd> (rename)
  - <kbd>^O</kbd> (open with...)
  - <kbd>^B</kbd> (show bookmark prompt)
  - <kbd>^V</kbd> (visit pinned dir)
  - <kbd>^J</kbd> (toggle du mode)
  - <kbd>^/</kbd> (open desktop opener)
  - <kbd>^F</kbd> (extract archive)
  - <kbd>^L</kbd> (refresh)
  - <kbd>^G</kbd> (quit nnn and change dir)
  - <kbd>^X</kbd> (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

-------------------------------------------------------------------------------