3 # This is necessary to overcome a bug in mc - without this
4 # mc makes default wrong item
8 @ Do something on all of the file(s) at once
13 @ Do something on the tagged files one by one
20 p View the file in a pager
21 exec ${PAGER:-more} %f
24 b View the file in a browser
25 exec webbrowser file://%d/%f
28 w View the file in a new browser window
29 exec webbrowser -n file://%d/%f
33 t View the file in a new browser tab
34 exec webbrowser -t file://%d/%f
36 += f \.fb2(\.bz2|\.gz|\.zip)?$ | f \.(chm|epub|htm(l?)|txt|rtf)$ & t r
37 f View fb2/chm/epub with fbreader
40 + t r & f \.fb2(\.bz2|\.gz|\.zip)$
43 *.fb2.bz2) A="bunzip2 -c" ;;
44 *.fb2.gz) A="gunzip -c" ;;
45 *.fb2.zip) A="unzip -p" ;;
48 $A %f | xsltproc /usr/local/src/FictionBook/FB2_2_html_ru.xsl - | webstdin -t
50 + t r & f \.fb2(\.bz2|\.gz|\.zip)$
53 *.fb2.bz2) A="bunzip2 -c" ;;
54 *.fb2.gz) A="gunzip -c" ;;
55 *.fb2.zip) A="unzip -p" ;;
58 $A %f | xsltproc /usr/local/src/FictionBook/FB2_2_txt_ru.xsl - | webstdin -e txt -t
60 += t r & f \.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg)$
61 o View OpenDoc with odt2txt
62 odt2txt %f | ${PAGER:-more}
64 + t r & f \.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg)$
65 e Edit OpenDoc with libreoffice
68 += t r & f \.(pdf|PDF|djvu)(\.bz2|\.gz)?$
69 e View pdf/djvu with evince
72 += t r & f \.(doc|DOC|rtf)$
73 d View doc with catdoc
74 catdoc %f | ${PAGER:-more}
76 + t r & f \.(doc|DOC|rtf)$
77 e Edit doc with libreoffice
80 += t r & f \.(docx|DOCX)$
81 d View docx with docx2txt
82 docx2txt %f - | ${PAGER:-more}
84 += t r & f \.(xls|XLS)$
85 x View xls with xls2csv
86 xls2csv %f | ${PAGER:-more}
88 + t r & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|png|PNG|xpm)$ | t t
89 = t r & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|png|PNG|xpm)$
90 i View image(s) scaled
91 xli -title "`echo %s | sed 's/ /_/g'`" -zoom auto %s &
93 + t r & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|png|PNG|xpm)$ | t t
94 I View image(s) full size
95 xli -title "`echo %s | sed 's/ /_/g'`" %s &
97 + t r & f \.(ico|jp2|tif|TIF|tiff|TIFF)$ | t t
98 = t r & f \.(ico|jp2|tif|TIF|tiff|TIFF)$
99 I View icon, JPEG-2000 or TIFF image
102 + t r & f \.(aac|ac3|ape|cue|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t
103 a Add the audiofile(s) or playlist(s)
104 #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi
106 # audtool --playlist-addurl "$f"
108 #smplayer -add-to-playlist %s &
109 deadbeef --queue %s &
111 + t r & f \.(aac|ac3|ape|cue|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t
112 = t r & f \.(aac|ac3|ape|cue|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$
113 p Load the audiofile(s) or playlist(s)
114 #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi
115 #audtool --playlist-clear
117 # audtool --playlist-addurl "$f"
119 #smplayer -send-action pl_remove_all
120 #smplayer -add-to-playlist %s &
121 deadbeef --queue %s &
123 + t r & f \.(aac|ac3|ape|cue|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t
124 P Play the audiofile(s) or playlist(s)
125 #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi
126 #audtool --playlist-clear
128 # audtool --playlist-addurl "$f"
130 #exec audtool --playback-play
131 #mplayer -playlist %f &
134 #exec mediaplayer_open %f
137 R Play the playlist in random order
138 "$HOME"/admin/prog/audio-cdr-video/audio/shuffle-playlist.py %f random-playlist-tmp.m3u
139 #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi
140 #audtool --playlist-clear
141 #audtool --playlist-addurl random-playlist-tmp.m3u
142 #audtool --playback-play
143 #mplayer -playlist random-playlist-tmp.m3u &
144 #smplayer random-playlist-tmp.m3u &
145 #smplayer -actions pl_shuffle %f &
146 deadbeef --queue random-playlist-tmp.m3u & deadbeef --play
147 #mediaplayer_open random-playlist-tmp.m3u
148 (sleep 5; exec rm random-playlist-tmp.m3u) &
150 + f \.(aac|ac3|ape|cue|flac|m3u|mp3|MP3|ogg|OGG|pls|WAV|wav|wv|avi|AVI|flv|iso|m2ts|m4v|mka|mkv|MKV|mov|MOV|mp4|MP4|mpg|MPG|vob|VOB|wma|wmv)$ | t d | t t
151 = t r & f \.(aac|ac3|ape|cue|flac|m3u|mp3|MP3|ogg|OGG|pls|WAV|wav|wv|avi|AVI|flv|iso|m2ts|m4v|mka|mkv|MKV|mov|MOV|mp4|MP4|mpg|MPG|vob|VOB|wma|wmv)$
152 s Play audio/video file(s) or directory with smplayer
155 += t d & f (video_ts|VIDEO_TS)$
156 c Play the current directory with smplayer
159 + t r & f \.(m3u|mp3|MP3|cue|aac|ac3|ape|flac|ogg|OGG|pls|WAV|wav|wv|avi|AVI|flv|m2ts|m4v|mka|mkv|MKV|mov|MOV|mp4|MP4|mpg|MPG|vob|VOB|wma|wmv)$ | t t
161 exec mplayer -msglevel identify=6 -frames 0 %s
163 + t d & f (video_ts|VIDEO_TS)$
165 exec mplayer -dvd-device . dvd:// -msglevel identify=6 -frames 0
167 + f \.(avi|AVI|flv|m2ts|m4v|mka|mkv|MKV|mov|MOV|mp4|MP4|mpg|MPG|vob|VOB|wma|wmv)$ | t t
168 m Play video file(s) with mplayer
171 + f \.(m3u|mp3|MP3|cue|aac|ac3|ape|flac|ogg|OGG|pls|WAV|wav|wv|avi|AVI|flv|m2ts|m4v|mka|mkv|MKV|mov|MOV|mp4|MP4|mpg|MPG|vob|VOB|wma|wmv)$ | t t
172 M Play audio/video with gmplayer
175 + t d & f (video_ts|VIDEO_TS)$
176 d Play DVD directory with mplayer
177 mplayer -dvd-device . dvd:// &
179 + t d & f (video_ts|VIDEO_TS)$
180 D Play DVD directory with gmplayer
181 gmplayer -dvd-device . dvd:// &
183 + t d & f (video_ts|VIDEO_TS)$
184 t Play DVD title with mplayer
186 mplayer -dvd-device . dvd://"$title" &
188 + t d & f (video_ts|VIDEO_TS)$
189 T Play DVD title with gmplayer
191 gmplayer -dvd-device . dvd://"$title" &
194 p Play directory with mplayer
198 P Play directory with gmplayer
202 b Make a .tar.bz2 release of the current directory
203 Pwd="`basename %d /`"
204 echo -n "Name of the distribution file (without extension) [$Pwd]: "
206 if [ "$tar"x = x ]; then tar="$Pwd"; fi
207 cd .. && tar cvf - "$Pwd" | bzip2 -f9 > "$tar".tar.bz2
208 echo ../"$tar".tar.bz2 created.
211 g Make a .tar.gz release of the current directory
212 Pwd="`basename %d /`"
213 echo -n "Name of the distribution file (without extension) [$Pwd]: "
215 if [ "$tar"x = x ]; then tar="$Pwd"; fi
216 cd .. && tar cvf - "$Pwd" | gzip -f9 > "$tar".tar.gz
217 echo ../"$tar".tar.gz created.
220 t Make a .tar release of the current directory
221 Pwd="`basename %d /`"
222 echo -n "Name of the distribution file (without extension) [$Pwd]: "
224 if [ "$tar"x = x ]; then tar="$Pwd"; fi
225 cd .. && tar cvf - "$Pwd" > "$tar".tar
226 echo ../"$tar".tar created.
229 z Make a .zip release of the current directory
230 Pwd="`basename %d /`"
231 echo -n "Name of the distribution file (without extension) [$Pwd]: "
233 if [ "$zip"x = x ]; then zip="$Pwd"; fi
234 cd .. && zip -r9 "$zip".zip "$Pwd"
235 echo ../"$zip".zip created.
238 y Make a .zip release of the current directory with recoded filenames
239 Pwd="`basename %d /`"
240 echo -n "Name of the distribution file (without extension) [$Pwd]: "
242 if [ "$zip"x = x ]; then zip="$Pwd"; fi
243 cd .. && zip.py "$zip".zip "$Pwd"
244 echo ../"$zip".zip created.
246 + ! f \.(\.|zip|ZIP)$
247 z zip the file/directory
248 exec zip -r9 %f.zip %f
250 + ! f \.(\.|zip|ZIP)$
251 y zip the file/directory with recoded filename(s)
252 exec zip.py %f.zip %f
255 Z zip these files/directories
256 ZIP=%{Enter zip name}
257 exec zip -r9 "$ZIP" %s
260 Y zip these files/directories with recoded filenames
261 ZIP=%{Enter zip name}
262 exec zip.py "$ZIP" %s
264 + t r & f \.tar\.bz2$
265 u Extract from tar-bzip2
266 exec bzip2 -cd %f | tar xpvf -
268 + f \.tar\.gz$ | f \.tgz$ & t r
269 u Extract from tar-gzip
270 exec gzip -cd %f | tar xpvf -
276 + t r & f \.(zip|ZIP)$
280 + t r & f \.(zip|ZIP)$
281 y Extract from zip with recoded filenames
288 + t r & f \.(rar|RAR)$
293 u Extract from tar-xz
294 exec xz -cd %f | tar xpvf -
296 + T r & F \.tar\.bz2$
297 U Extract from the other tar-bzip2
298 exec bzip2 -cd %D/%F | tar xpvf -
300 + F \.tar\.gz$ | F \.tgz$ & T r
301 U Extract from the other tar-gzip
302 exec gzip -cd %D/%F | tar xpvf -
305 U Extract from the other tar
308 + T r & F \.(zip|ZIP)$
309 U Extract from the other zip
312 + T r & F \.(zip|ZIP)$
313 Y Extract from the other zip with recoded filenames
316 + T r & F \.(rar|RAR)$
317 U Extract from the other rar
318 exec unrar x -y %D/%F
325 U Extract from tar-xz
326 exec xz -cd %D/%F | tar xpvf -
328 + f \.tar\.bz2$ | f \.tar\.gz$ | f \.tgz$ | f \.(zip|ZIP)$ | f \.(rar|RAR)$ | f \.7z$ & t r
329 n Create a directory for this archive
331 *.tar.bz2) D="`basename %f .tar.bz2`";;
332 *.tar.gz) D="`basename %f .tar.gz`";;
333 *.tgz) D="`basename %f .tgz`";;
334 *.zip) D="`basename %f .zip`";;
335 *.ZIP) D="`basename %f .ZIP`";;
336 *.rar) D="`basename %f .rar`";;
337 *.RAR) D="`basename %f .RAR`";;
338 *.7z) D="`basename %f .7z`";;
342 + F \.tar\.bz2$ | F \.tar\.gz$ | F \.tgz$ | F \.(zip|ZIP)$ | F \.(rar|RAR)$ | F \.7z$ & T r
343 N Create a directory for this archive
345 *.tar.bz2) D="`basename %F .tar.bz2`";;
346 *.tar.gz) D="`basename %F .tar.gz`";;
347 *.tgz) D="`basename %F .tgz`";;
348 *.zip) D="`basename %F .zip`";;
349 *.ZIP) D="`basename %F .ZIP`";;
350 *.rar) D="`basename %F .rar`";;
351 *.RAR) D="`basename %F .RAR`";;
352 *.7z) D="`basename %F .7z`";;
365 C Compare these files
370 exec diff -u --speed-large-files %D/%f %f
374 exec diff -u --speed-large-files %D/%F %f
381 V vimdiff these files
386 exec diff -ru --speed-large-files %D/%f %f
388 + t d & T d & ! F ^\.\.$
389 D Diff these directories
390 exec diff -ru --speed-large-files %D/%F %f
392 += f \.(asc|sig(n)?)$ & t r
396 += f \.[1-8]$ | f \.man$ & t r
397 1 Display the file with roff -man
401 MAN=%{Enter manual name}
402 %view man -P cat $MAN
405 r rsync the file(s) there
406 rsync -ahP --del %s %D