Regenerate the manpages
[ranger.git] / doc / rifle.1
blob114cc5d038d18c05e7ea087b1ce9a83dd14de650
1 .\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sp \" Vertical space (when we can't use .PP)
6 .if t .sp .5v
7 .if n .sp
8 ..
9 .de Vb \" Begin verbatim text
10 .ft CW
11 .nf
12 .ne \\$1
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
18 .\" Set up some character translations and predefined strings.  \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
21 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 .    ds -- \(*W-
28 .    ds PI pi
29 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
31 .    ds L" ""
32 .    ds R" ""
33 .    ds C` ""
34 .    ds C' ""
35 'br\}
36 .el\{\
37 .    ds -- \|\(em\|
38 .    ds PI \(*p
39 .    ds L" ``
40 .    ds R" ''
41 .    ds C`
42 .    ds C'
43 'br\}
44 .\"
45 .\" Escape single quotes in literal strings from groff's Unicode transform.
46 .ie \n(.g .ds Aq \(aq
47 .el       .ds Aq '
48 .\"
49 .\" If the F register is >0, we'll generate index entries on stderr for
50 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
51 .\" entries marked with X<> in POD.  Of course, you'll have to process the
52 .\" output yourself in some meaningful fashion.
53 .\"
54 .\" Avoid warning from groff about undefined register 'F'.
55 .de IX
57 .nr rF 0
58 .if \n(.g .if rF .nr rF 1
59 .if (\n(rF:(\n(.g==0)) \{\
60 .    if \nF \{\
61 .        de IX
62 .        tm Index:\\$1\t\\n%\t"\\$2"
64 .        if !\nF==2 \{\
65 .            nr % 0
66 .            nr F 2
67 .        \}
68 .    \}
69 .\}
70 .rr rF
71 .\"
72 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
73 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
74 .    \" fudge factors for nroff and troff
75 .if n \{\
76 .    ds #H 0
77 .    ds #V .8m
78 .    ds #F .3m
79 .    ds #[ \f1
80 .    ds #] \fP
81 .\}
82 .if t \{\
83 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
84 .    ds #V .6m
85 .    ds #F 0
86 .    ds #[ \&
87 .    ds #] \&
88 .\}
89 .    \" simple accents for nroff and troff
90 .if n \{\
91 .    ds ' \&
92 .    ds ` \&
93 .    ds ^ \&
94 .    ds , \&
95 .    ds ~ ~
96 .    ds /
97 .\}
98 .if t \{\
99 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
100 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
101 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
102 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
103 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
104 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
106 .    \" troff and (daisy-wheel) nroff accents
107 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
108 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
109 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
110 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
111 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
112 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
113 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
114 .ds ae a\h'-(\w'a'u*4/10)'e
115 .ds Ae A\h'-(\w'A'u*4/10)'E
116 .    \" corrections for vroff
117 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
118 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
119 .    \" for low resolution devices (crt and lpr)
120 .if \n(.H>23 .if \n(.V>19 \
122 .    ds : e
123 .    ds 8 ss
124 .    ds o a
125 .    ds d- d\h'-1'\(ga
126 .    ds D- D\h'-1'\(hy
127 .    ds th \o'bp'
128 .    ds Th \o'LP'
129 .    ds ae ae
130 .    ds Ae AE
132 .rm #[ #] #H #V #F C
133 .\" ========================================================================
135 .IX Title "RIFLE 1"
136 .TH RIFLE 1 "rifle-1.9.2" "08/18/2019" "rifle manual"
137 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
138 .\" way too many mistakes in technical documents.
139 .if n .ad l
141 .SH "NAME"
142 rifle \- ranger's file opener
143 .SH "SYNOPSIS"
144 .IX Header "SYNOPSIS"
145 \&\fBrifle\fR [\fB\-\-help\fR] [\fB\-f\fR \fI\s-1FLAGS\s0\fR] [\fB\-l\fR] [\fB\-p\fR \fI\s-1KEYWORD\s0\fR]
146 [\fB\-w\fR \fI\s-1PROGRAM\s0\fR] [\fB\-c\fR \fI\s-1CONFIG_FILE\s0\fR] \fIfiles\fR
147 .SH "DESCRIPTION"
148 .IX Header "DESCRIPTION"
149 rifle is a powerful file executor that allows for complex file type checking,
150 written to meet the needs of the file manager \fIranger\fR.  rifle's strength lies
151 in automatically determining file types, depending on which programs are
152 installed on the system, even without any user interaction.
153 .SH "OPTIONS"
154 .IX Header "OPTIONS"
155 .IP "\fB\-f\fR \fI\s-1FLAGS\s0\fR" 14
156 .IX Item "-f FLAGS"
157 Specify flags for opening the files.  Flags are letters that changes how the
158 program is executed.  Any combination of flags will work.  Writing uppercase
159 flags will negate the effect of all previously used lowercase flags of the same
160 letter.
162 Table of all flags:
163  f   fork program to background
164  r   run program as root, using sudo
165  t   run program in a separate terminal, as specified by \f(CW$TERMCMD\fR
166 .IP "\fB\-l\fR" 14
167 .IX Item "-l"
168 List all possible ways to open the specified files.  Each line will contain information in the format of \fIid:label:flags:command\fR. \fIid\fR is the identification number. \fIlabel\fR is an arbitrary string that was specified for this command, \fIflags\fR are the flags that are used by default, and \fIcommand\fR is the command that is going to be executed.
169 .IP "\fB\-p\fR \fI\s-1KEYWORD\s0\fR" 14
170 .IX Item "-p KEYWORD"
171 Pick a method to open the files.
173 \&\fI\s-1KEYWORD\s0\fR is either the \s-1ID\s0 number listed by \f(CW\*(C`rifle \-l\*(C'\fR or a string that matches a label in the configuration file.
174 .IP "\fB\-w\fR \fI\s-1PROGRAM\s0\fR" 14
175 .IX Item "-w PROGRAM"
176 Open the files with the program \fI\s-1PROGRAM\s0\fR
177 .IP "\fB\-c\fR \fI\s-1CONFIG_FILE\s0\fR" 14
178 .IX Item "-c CONFIG_FILE"
179 Read configuration from \fI\s-1CONFIG_FILE\s0\fR, instead of the default.
180 .IP "\fB\-h\fR, \fB\-\-help\fR" 14
181 .IX Item "-h, --help"
182 Print a list of options and exit.
183 .SH "FILES"
184 .IX Header "FILES"
185 rifle shares configuration files with ranger, though ranger is not required in
186 order to use rifle. The default configuration file \fIrifle.conf\fR is expected
187 to be at \fI~/.config/ranger/rifle.conf\fR. However, this can be overridden with
188 the \fB\-c\fR option.
190 This file specifies patterns for determining the commands to open files with.
191 The syntax is described in the comments of the default \fIrifle.conf\fR that ships
192 with ranger.  To obtain it, you need to run: \f(CW\*(C`ranger \-\-copy\-config=rifle\*(C'\fR
193 .SH "ENVIRONMENT"
194 .IX Header "ENVIRONMENT"
195 .IP "\s-1VISUAL\s0" 8
196 .IX Item "VISUAL"
197 Determines which editor to use for editing files.
198 .IP "\s-1EDITOR\s0" 8
199 .IX Item "EDITOR"
200 Determines which editor to use for editing files if \s-1VISUAL\s0 is undefined or
201 empty (in the default \fIrifle.conf\fR). If both are undefined or empty, \*(L"vim\*(R" is
202 used instead.
203 .IP "\s-1PAGER\s0" 8
204 .IX Item "PAGER"
205 Determines which pager to use for displaying files (in the default \fIrifle.conf\fR).
206 .IP "\s-1TERMCMD\s0" 8
207 .IX Item "TERMCMD"
208 Determines the terminal emulator command for use with the \fIt\fR flag.  It is required that the value is the path to an executable file which accepts the \*(L"\-e \s-1COMMAND\*(R"\s0 argument.
209 .IP "\s-1XDG_CONFIG_HOME\s0" 8
210 .IX Item "XDG_CONFIG_HOME"
211 Specifies the directory for configuration files. Defaults to \fI\f(CI$HOME\fI/.config\fR.
212 .SH "EXAMPLES"
213 .IX Header "EXAMPLES"
214 List all the different methods:
216 .Vb 4
217 \& $ rifle \-l helloworld.py
218 \& 0:editor::"$EDITOR" \-\- "$@"
219 \& 1:pager::"$PAGER" \-\- "$@"
220 \& 2:::python \-\- "$1"
223 Display its content by opening it with \*(L"cat\*(R":
225 .Vb 2
226 \& $ rifle \-w cat helloworld.py
227 \& print("Hello World!")
230 Run it by picking the method 2, which calls 'python \*(-- \*(L"$1\*(R"':
232 .Vb 2
233 \& $ rifle \-p 2 helloworld.py
234 \& Hello World!
237 Display the file in a pager inside a new terminal, run as root:
239 .Vb 1
240 \& $ rifle \-p 1 \-f tr helloworld.py