aboutsummaryrefslogtreecommitdiffstats
path: root/nnn.1
blob: 37ca998e552937a26928204c88e84c4f6406e75b (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
.Dd Oct 19, 2018
.Dt NNN 1
.Os
.Sh NAME
.Nm nnn
.Nd the missing terminal file manager for X
.Sh SYNOPSIS
.Nm
.Op Ar -b key
.Op Ar -c N
.Op Ar -e
.Op Ar -i
.Op Ar -l
.Op Ar -p nlay
.Op Ar -S
.Op Ar -v
.Op Ar -h
.Op Ar PATH
.Sh DESCRIPTION
.Nm
(Noice is Not Noice) is a performance-optimized, feature-packed fork of noice (http://git.2f30.org/noice/) with seamless desktop integration, simplified navigation, \fInavigate-as-you-type\fR mode, bookmarks, disk usage analyzer mode, comprehensive file details and much more. It remains a simple and efficient file manager that stays out of your way.
.Pp
.Nm
opens the current working directory by default if
.Ar PATH
is not specified.
.Pp
.Nm
supports both vi-like and emacs-like key bindings as listed below.
.Pp
.Bl -tag -width "l, [Right], [Return] or C-mXXXX" -offset indent -compact
.It Ic [Up], k, ^P
Move to previous entry
.It Ic [Down], j, ^N
Move to next entry
.It Ic [PgUp], ^U
Scroll up half a page
.It Ic [PgDn], ^D
Scroll down half a page
.It Ic [Home], g, ^, ^A
Move to the first entry
.It Ic [End], G, $, ^E
Move to the last entry
.It Ic [Right], [Enter], l, ^M
Open file or enter directory
.It Ic [Left], [Backspace], h, ^H
Back up one directory level
.It Ic ^O
Open with a custom application
.It Ic [Insert], ^I
Toggle navigate-as-you-type mode
.It Ic ~
Change to the HOME directory
.It Ic &
Change to initial directory
.It Ic \-
Change to the last visited directory
.It Ic /
Change filter (more information below)
.It Ic \&.
Toggle show hidden . (dot) files
.It Ic ^B
Show bookmark key prompt (understands ~, -, &)
.It Ic b
Pin current directory
.It Ic ^V
Visit pinned directory
.It Ic d
Toggle detail view
.It Ic D
Show current file details screen
.It Ic m
Show brief media info
.It Ic M
Show full media info
.It Ic n
Create a new file or directory
.It Ic ^R
Rename selected entry
.It Ic r
Open directory in vidir
.It Ic s
Toggle sort by file size
.It Ic S
Toggle sort by apparent size
.It Ic ^J
Toggle disk usage analyzer mode
.It Ic t
Toggle sort by time modified
.It Ic \&!, ^]
Spawn SHELL in PWD (fallback sh)
.It Ic R
Run a custom script
.It Ic e
Open current entry in EDITOR (fallback vi)
.It Ic p
Open current entry in PAGER (fallback less)
.It Ic f
Archive current entry
.It Ic F
List files in archive
.It Ic ^F
Extract archive in current directory
.It Ic Space, ^K
Invoke file path copier
.It Ic ^Y
Toggle multiple file path copy mode
.It Ic y
Show copy buffer
.It Ic ^T
Toggle path quote
.It Ic ^L
Force a redraw, clear prompt
.It Ic Esc
Exit prompt
.It Ic L
Lock terminal (Linux only)
.It Ic o
Launch a GUI application
.It Ic \&?
Toggle help and settings screen
.It Ic Q, ^G
Quit and change directory
.It Ic q, ^X
Quit
.El
.Pp
Backing up one directory level will set the cursor position at the
directory you came out of.
.Pp
Help & settings, file details, media info and archive listing are shown in the
PAGER. Please use the PAGER-specific keys in these screens.
.Pp
.Nm
supports the following options:
.Pp
.Fl "b key"
        specify bookmark key to open
.Pp
.Fl "c N"
        specify dir color (default blue), disables if N>7
        0-black, 1-red, 2-green, 3-yellow, 4-blue, 5-magenta, 6-cyan, 7-white
.Pp
.Fl e
        use exiftool instead of mediainfo
.Pp
.Fl i
        start in navigate-as-you-type mode
.Pp
.Fl l
        start in light mode (fewer details)
.Pp
.Fl "p nlay"
        path to custom nlay
.Pp
.Fl S
        start in disk usage analyzer mode
.Pp
.Fl v
        show version and exit
.Pp
.Fl h
        show program help and exit
.Sh CONFIGURATION
.Nm
uses \fIxdg-open\fR (on Linux) and \fIopen(1)\fR (on OS X) as the desktop
opener. It invokes
.Pa nlay
to run the terminal locker. Read more on
.Pa nlay
at:
.br
.Em https://github.com/jarun/nnn/wiki/all-about-nlay
.Pp
There is no configuration file. Settings work on environment variables. Please
refer to the ENVIRONMENT section below.
.Pp
Configuring
.Nm
to change to the last visited directory on quit requires shell integration in a
few easy steps. Please visit the project page (linked below) for the
instructions.
.Sh CONTEXTS
Contexts (aka \fItabs\fR aka \fIworkspaces\fR) serve the purpose of exploring multiple directories in parallel.
.Nm
provides 4 contexts simultaneously. The status of the contexts are shown in the top left corner:
.Pp
- the current context is in reverse
.br
- other used contexts are underlined
.br
- rest are unused
.Pp
The bookmark prompt understands contexts. To switch contexts press \fI^B\fR and enter the context number (1-4).
.Pp
The first time a context is entered, it copies the state of the last visited context. Each context remembers its start directory and last visited directory.
.Sh FILTERS
Filters support regexes to instantly (search-as-you-type) list the matching
entries in the current directory.
.Pp
Ways to exit filter prompt:
.Pp
(1) press \fI^L\fR to clear filter followed by \fIBksp\fR (to clear the filter symbol, like vi)
.br
  - at other prompts \fI^L\fR followed by \fIEnter\fR discards all changes and exits prompt
.br
(2) run a search with no matches and press \fIEnter\fR
.Pp
Common use cases:
.Pp
(1) To list all matches starting with the filter expression, start the expression
with a '^' (caret) symbol.
.br
(2) Type '\\.mkv' to list all MKV files.
.br
(3) Use '.*' to match any character (\fIsort of\fR fuzzy search).
.Pp
If
.Nm
is invoked as root or the environment variable \fBNNN_SHOW_HIDDEN\fR is set the default filter will also match hidden files.
.Pp
In the \fInavigate-as-you-type\fR mode directories are opened in filter mode,
allowing continuous navigation. Works best with the \fBarrow keys\fR.
.br
In case of only one match and it's a directory, `nnn` auto selects the directory and enters it in this mode.
.Sh MULTI-COPY MODE
The absolute path of a single file can be copied to clipboard by pressing \fI^K\fR if
NNN_COPIER is set (see ENVIRONMENT section below).
.Pp
To copy multiple file paths the multi-copy mode should be enabled using \fI^Y\fR.
In this mode it's possible to
.Pp
(1) select multiple files one by one by pressing \fI^K\fR on each entry; or,
.br
(2) navigate to another file in the same directory to select a range of files.
.Pp
Pressing \fI^Y\fR again copies the paths to clipboard and exits the multi-copy mode.
.Sh ENVIRONMENT
The SHELL, EDITOR (VISUAL, if defined) and PAGER environment variables take precedence
when dealing with the !, e and p commands respectively.
.Pp
\fBNNN_BMS:\fR bookmark string as \fIkey:location\fR pairs (max 10) separated by
\fI;\fR:
.Bd -literal
    export NNN_BMS='doc:~/Documents;u:/home/user/Cam Uploads;D:~/Downloads/'
.Ed
The bookmark prompt also understands the \fI~\fR (HOME), \fI-\fR (last visited directory) and \fI&\fR shortcuts.
.Pp
\fBNNN_USE_EDITOR:\fR use EDITOR (preferably CLI, fallback vi) to handle text
files.
.Bd -literal
    export NNN_USE_EDITOR=1
.Ed
.Pp
\fBNNN_IDLE_TIMEOUT:\fR set idle timeout (in seconds) to invoke terminal
screensaver.
.Pp
\fBNNN_COPIER:\fR set to a clipboard copier script. For example, on Linux:
.Bd -literal
    -------------------------------------
    #!/bin/sh

    # comment the next line to convert newlines to spaces
    IFS=
    echo -n $1 | xsel --clipboard --input
    -------------------------------------
.Ed
.br
If it's not set, by default file paths are copied to the tmp file \fBDIR/.nnncp\fR, where 'DIR' (by priority) is: \fI$HOME\fR or, \fI$TMPDIR\fR or, \fI/tmp\fR.
.Pp
\fBNNN_QUOTE_ON:\fR wrap copied paths within single quotes. Useful for pasting
names in the shell. Note that the filename is not escaped. So copying may still fail
for filenames having quote(s) in them.
.Pp
\fBNNN_SCRIPT:\fR path to a custom script to invoke with currently selected file name as argument 1.
.Bd -literal
    export NNN_SCRIPT=/usr/local/bin/nscript
.Ed
.Pp
\fBNNN_MULTISCRIPT:\fR run multiple custom scripts.
.Bd -literal
    export NNN_MULTISCRIPT=1
.Ed
.Pp
\fBNNN_SHOW_HIDDEN:\fR show hidden files.
.Bd -literal
    export NNN_SHOW_HIDDEN=1
.Ed
.Pp
\fBNNN_NO_AUTOSELECT:\fR Disable directory auto-selection in \fInavigate-as-you-type\fR mode.
.Bd -literal
    export export NNN_NO_AUTOSELECT=1
.Ed
.Sh KNOWN ISSUES
If you are using urxvt you might have to set backspace key to DEC.
.Sh AUTHORS
.An Lazaros Koromilas Aq Mt lostd@2f30.org ,
.An Dimitris Papastamos Aq Mt sin@2f30.org ,
.An Arun Prakash Jana Aq Mt engineerarun@gmail.com .
.Sh HOME
.Em https://github.com/jarun/nnn