Use more conventional syntax for usage help.
[rover.git] / rover.1
blob4a575ae9b193f6eb8d179a83fd471ba1a4f37405
1 .TH ROVER 1 rover\-0.2.0
2 .SH NAME
3 rover \- file browser for the terminal
4 .SH SYNOPSIS
5 .B rover
6 [\fIDIRECTORY\fR [\fIDIRECTORY\fR [\fIDIRECTORY\fR [...]]]]
7 .br
8 .B rover
9 [\fIOPTION\fR]
10 .SH DESCRIPTION
11 Browse current working directory or the ones specified.
12 .SH OPTIONS
13 .TP
14 \fB\-h\fR, \fB\-\-help\fR
15 print help message and exit
16 .TP
17 \fB\-v\fR, \fB\-\-version\fR
18 print program version and exit
19 .SH CONCEPTS
20 .SS TABS
21 .PP
22 Rover is operated via a tabbed interface. At any given moment, one (and only
23 one) tab is visible on the screen. There are always ten tabs in total, numbered
24 from 0 to 9. The number of the tab currently visible is shown on the top right
25 corner of the screen. To view a different tab, one just needs to press its
26 corresponding number. Each tab has a \fBcurrent working directory\fR (\fBCWD\fR)
27 associated to it, also shown on the top of the screen. The \fBCWD\fR of the
28 visible tab is changed as the user navigates through the file system.
29 .PP
30 It's also possible to set the \fBCWD\fR of tabs at Rover start-up by passing the
31 desired paths as command-line arguments. The tab number 0 always starts at
32 \fB$HOME\fR. If more than nine directories are specified, only the first nine
33 are used for tabs 1\-9 and the rest is ignored. Tabs for which an invalid path
34 were assigned will also start at \fB$HOME\fR. Remaining tabs not specified on
35 the command line start at the current working directory of the parent process.
36 .SS ENTRIES
37 .PP
38 An \fBentry\fR is anything that may be found inside a directory in some file
39 system. It may be a file, a directory, a link, a socket, a FIFO, etc. In its
40 most basic usage, Rover will gather the list of entries inside the \fBCWD\fR
41 and present them on the screen, one per line.
42 .PP
43 There is always one (and only one) highlighted entry visible. This is both the
44 \fBcursor\fR location and the current \fBselection\fR. The highlighting moves as
45 the user navigates the entry list with cursor commands. Simple operations, like
46 entering a subdirectory or renaming a file, are done by first selecting the
47 relevant entry and them issuing the appropriate command (see the \fBCOMMANDS\fR
48 section). For commands that operate on more than one entry at once (batch
49 commands), selection is not sufficient, since it's not possible to select more
50 than one entry. Batch commands are performed on marked entries.
51 .SS MARKS
52 .PP
53 For some file operations, it is convenient to first \fBmark\fR all entries that
54 are to be processed, so that the appropriate command only needs to be issued
55 once. For such purpose, Rover allows an arbitrary number of entries to be
56 marked, with the limitation that they must be all in the same directory.
57 .PP
58 Unlike simple selection, the effect of marks is not constrained by visibility.
59 This is so one can mark a number of entries in some directory, navigate to other
60 directory, and then finally issue a copy or move command. Moreover, marks are
61 shared over all tabs. This allows one to mark some entries in one tab that is
62 pointed to the "source" directory of the operation and then issue the command on
63 another tab that is pointed to the "destination" directory.
64 .SH COMMANDS
65 .TP
66 .B q
67 Quit rover.
68 .TP
69 .B j/k
70 Move cursor down/up.
71 .TP
72 .B J/K
73 Move cursor down/up 10 lines.
74 .TP
75 .B g/G
76 Move cursor to top/bottom of listing.
77 .TP
78 .B l
79 Enter selected directory.
80 .TP
81 .B h
82 Go to parent directory.
83 .TP
84 .B H
85 Go to \fB$HOME\fR directory.
86 .TP
87 .B R
88 Refresh directory listing.
89 .TP
90 .B <RETURN>
91 Open \fB$SHELL\fR on the current directory.
92 .TP
93 .B <SPACE>
94 Open \fB$PAGER\fR with the selected file.
95 .TP
96 .B e
97 Open \fB$EDITOR\fR with the selected file.
98 .TP
99 .B /
100 Start incremental search.
102 .B f/d/s
103 Toggle file/directory/hidden listing.
105 .B n/N
106 Create new file/directory.
108 .B r
109 Rename selected file or directory.
111 .B x
112 Delete selected file or (empty) directory.
114 .B m
115 Toggle mark on the selected entry.
117 .B M
118 Toggle mark on all visible entries.
120 .B a
121 Mark all visible entries.
123 .B X/C/V
124 Delete/copy/move all marked entries.
126 .B 0-9
127 Change tab.
128 .SH LINE EDITING
130 Some commands will prompt for an input string. For example, in order to rename a
131 file, the user must supply the new name. This string will appear at the bottom
132 of the screen and must be edited interactivelly using the keyboard. Printable
133 keys will insert characters at the cursor position. The following shortcuts are
134 available for line editing:
136 .B <TAB>
137 Finish editing and \fBcancel\fR command.
139 .B <RETURN>
140 Finish editing and \fBconfirm\fR command.
142 .B <LEFT>/<RIGHT>
143 Move insertion cursor left/right.
145 .B <UP>/<DOWN>
146 Move insertion cursor to beginning/end of string.
148 .B <BACKSPACE>
149 Remove one character before cursor.
151 .B <DELETE>
152 Remove one character after cursor.
154 .B <CONTROL>+u
155 Clear line (remove all characters).
156 .SH ENVIRONMENT VARIABLES
158 .B HOME
159 Full path of the home directory.
161 .B PATH
162 Colon\-separated path list for program directories.
164 .B SHELL
165 Name of shell program (e.g. \fI/bin/sh\fP).
167 .B PAGER
168 Name of pager program (e.g. \fIless\fP).
170 .B EDITOR
171 Name of editor program (e.g. \fIvim\fP or \fIemacs\fP).
173 .B RVSEL
174 Rover writes the name of the selected entry to this variable before running a
175 subprocess. This allows one to use the selection as part of an arbitrary command
176 by first invoking a shell from Rover (see the \fBCOMMANDS\fR section) and then
177 typing something like \fBgrep abc "$RVSEL"\fR.
178 .SH CONFIGURATION
180 If you want to change Rover key bindings or colors, you can edit the
181 \fIconfig.h\fP file in the source distribution and recompile the program. Rover
182 will not use or create any external file during its execution, except when asked
183 to do so by user commands.
184 .SH NOTES
186 \fBImportant\fR: Currently, Rover never asks for confirmation before overwriting
187 existing files while copying/moving marked entries. Please be careful to not
188 accidentally lose your data.
189 .SH LINKS
190 Rover homepage: <https://github.com/lecram/rover>.
191 .SH SEE ALSO
192 \fBmc(1)\fR, \fBvifm(1)\fR, \fBranger(1)\fR