X-Git-Url: https://git.phdru.name/?p=dotfiles.git;a=blobdiff_plain;f=.mc%2Fmenu;h=c2198c8978457c3e3ae2b81f25ad519b2ef36151;hp=4b5fa952d1c3d798c608ac6bdd8f31436b2cdf8f;hb=HEAD;hpb=42204a4c8a36e72c65e7f415e7744a101d72a361 diff --git a/.mc/menu b/.mc/menu index 4b5fa95..c2198c8 100644 --- a/.mc/menu +++ b/.mc/menu @@ -16,32 +16,36 @@ shell_patterns=0 $CMD "$f" done -+ t r ++ t lr p View the file in a pager exec ${PAGER:-more} %f -+ t r ++ t lr g Edit the file in gvim gvim %f & -+ t r ++ t lr b View the file in a browser - exec webbrowser file://%d/%f + exec webbrowser-encode-url -e utf-8 file://%d/%f -+ t r ++ t lr += f \.(htm(l?)|txt)$ w View the file in a new browser window - exec webbrowser -n file://%d/%f + exec webbrowser-encode-url -e utf-8 -n file://%d/%f -+ t r -= f \.(htm(l?)|txt)$ ++ t lr t View the file in a new browser tab - exec webbrowser -t file://%d/%f + exec webbrowser-encode-url -e utf-8 -t file://%d/%f -+= f \.fb2(\.bz2|\.gz|\.zip)?$ | f \.(chm|epub|htm(l?)|txt|rtf)$ & t r ++ t lr +p View the file in a new private browser tab + exec webbrowser -p file://%d/%f + ++= f \.fb2(\.bz2|\.gz|\.zip)?$ | f \.(chm|epub|htm(l?)|txt|rtf)$ & t lr f View fb2/chm/epub with fbreader fbreader %f & -+ t r & f \.fb2(\.bz2|\.gz|\.zip)$ ++ t lr & f \.fb2(\.bz2|\.gz|\.zip)$ H fb2html case %f in *.fb2.bz2) A="bunzip2 -c" ;; @@ -51,7 +55,7 @@ H fb2html esac $A %f | xsltproc /usr/local/src/FictionBook/FB2_2_html_ru.xsl - | webstdin -t -+ t r & f \.fb2(\.bz2|\.gz|\.zip)$ ++ t lr & f \.fb2(\.bz2|\.gz|\.zip)$ T fb2txt case %f in *.fb2.bz2) A="bunzip2 -c" ;; @@ -61,109 +65,135 @@ T fb2txt esac $A %f | xsltproc /usr/local/src/FictionBook/FB2_2_txt_ru.xsl - | webstdin -e txt -t -+= t r & f \.(pdf|PDF|ps|PS)(\.bz2|\.gz)?$ -e View pdf/ps - qpdfview %f & ++ t lr & f \.(pdf|PDF)$ +v View pdf + pdftotext -layout -q %f - | iconv.py -f utf-8 | ${PAGER:-more} + ++ t lr & f \.(pdf|PDF)$ +e View pdf with evince + evince %f & -+= t r & f \.djvu(\.bz2|\.gz)?$ ++= t lr & f \.(pdf|PDF)$ +e View pdf with qpdfview + if [ %d/%f = "`echo %d/%f | iconv -t utf-8`" ]; then qpdfview %f & else src=%d/%f; dest="$HOME/tmp/`echo $src | iconv -t koi8-r | koi2lat | sed 's!/!%!g'`"; ln -s "$src" "$dest" && qpdfview "$dest" & (sleep 3; exec rm -f "$dest") & fi + ++= t lr & f \.djvu(\.bz2|\.gz)?$ e View djvu djview %f & -+= t r & f \.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg)$ -o View OpenDoc with odt2txt - odt2txt %f | ${PAGER:-more} - -+ t r & f \.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg|doc|DOC|rtf|docx|DOCX|xls|XLS|xlsx|XLSX)$ ++ t lr & f \.((pdf|PDF|ps|PS)(\.bz2|\.gz)?|odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg|doc|DOC|rtf|docx|DOCX|xls|XLS|xlsx|XLSX)$ e Edit (Open)Docs with libreoffice libreoffice %f & -+= t r & f \.(doc|DOC|rtf)$ ++ t lr & f \.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg|doc|DOC|rtf|docx|DOCX|xls|XLS|xlsx|XLSX)$ +v View (Open)Docs with libreoffice + #libreoffice --headless --convert-to "txt:Text (encoded):UTF8" %f + libreoffice --cat %f | ${PAGER:-more} + ++= t lr & f \.(doc|DOC|rtf)$ d View doc with catdoc catdoc %f | ${PAGER:-more} -+= t r & f \.(docx|DOCX)$ ++= t lr & f \.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg)$ +o View OpenDoc with odt2txt + odt2txt %f | ${PAGER:-more} + ++= t lr & f \.(docx|DOCX)$ d View docx with docx2txt docx2txt %f - | iconv.py -f utf-8 | ${PAGER:-more} -+= t r & f \.(xls|XLS)$ ++= t lr & f \.(xls|XLS|xlsx|XLSX)$ +o View OpenXlsx with xlsx2csv + xlsx2csv %f | iconv.py -f utf-8 | ${PAGER:-more} + ++= t lr & f \.(xls|XLS)$ x View xls with xls2csv xls2csv %f | ${PAGER:-more} -+ t r & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ | t t -= t r & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ ++ t lr & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm|ico|jp2|tif|TIF|tiff|TIFF|webp)$ | t t +e Edit image(s) + gimp %s & + ++ t lr & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ | t t += t lr & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ i View image(s) scaled - xli -title "`echo %s | sed 's/ /_/g'`" -zoom auto %s & + xli -title "`echo %s | sed 's/[ .]/_/g'`" -zoom auto %s & -+ t r & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ | t t ++ t lr & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ | t t I View image(s) full size - xli -title "`echo %s | sed 's/ /_/g'`" %s & + xli -title "`echo %s | sed 's/[ .]/_/g'`" %s & -+ t r & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ ++ t lr & f \.(bmp|BMP|gif|GIF|jpg|JPG|jpeg|JPEG|pbm|PBM|ppm|PPM|png|PNG|xbm|xpm)$ I Identify image xli -identify %f -+ t r & f \.(ico|jp2|tif|TIF|tiff|TIFF|webp)$ | t t -= t r & f \.(ico|jp2|tif|TIF|tiff|TIFF|webp)$ ++ t lr & f \.(ico|jp2|tif|TIF|tiff|TIFF|webp)$ | t t += t lr & f \.(ico|jp2|tif|TIF|tiff|TIFF|webp)$ I View icon, JPEG-2000, TIFF, WebP image display %s & -+ t r & f \.(aac|ac3|ape|cue|dts|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t ++ t lr & f \.(ico|jp2|tif|TIF|tiff|TIFF|webp)$ +I Identify image + identify %f + ++ t lr & f \.(aac|ac3|ape|cue|dts|flac|m3u8?|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t a Add the audiofile(s) or playlist(s) - #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi + #if [ "`audtool --get-volume`" -eq 0 ]; then audacious & sleep 3; fi #for f in %s; do - # audtool --playlist-addurl "$f" + # case "$f" in + # *.m3u8?) while read song; do + # audtool --playlist-addurl "$song" + # done < "$f" ;; + # *) audtool --playlist-addurl "$f" ;; + # esac #done - #smplayer -add-to-playlist %s & deadbeef --queue %s & -+ t r & f \.(aac|ac3|ape|cue|dts|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t -= t r & f \.(aac|ac3|ape|cue|dts|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ ++ t lr & f \.(aac|ac3|ape|cue|dts|flac|m3u8?|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t += t lr & f \.(aac|ac3|ape|cue|dts|flac|m3u8?|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ p Load the audiofile(s) or playlist(s) - #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi + #if [ "`audtool --get-volume`" -eq 0 ]; then audacious & sleep 3; fi #audtool --playlist-clear #for f in %s; do - # audtool --playlist-addurl "$f" + # case "$f" in + # *.m3u8?) while read song; do + # audtool --playlist-addurl "$song" + # done < "$f" ;; + # *) audtool --playlist-addurl "$f" ;; + # esac #done - #smplayer -send-action pl_remove_all - #smplayer -add-to-playlist %s & - deadbeef --queue %s & + deadbeef %s & (sleep 1; exec deadbeef --stop) -+ t r & f \.(aac|ac3|ape|cue|dts|flac|m3u|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t ++ t lr & f \.(aac|ac3|ape|cue|dts|flac|m3u8?|mka|mp3|MP3|ogg|OGG|pls|WAV|wav|wv)$ | t t P Play the audiofile(s) or playlist(s) - #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi + #if [ "`audtool --get-volume`" -eq 0 ]; then audacious & sleep 3; fi #audtool --playlist-clear #for f in %s; do - # audtool --playlist-addurl "$f" + # case "$f" in + # *.m3u8?) while read song; do + # audtool --playlist-addurl "$song" + # done < "$f" ;; + # *) audtool --playlist-addurl "$f" ;; + # esac #done #exec audtool --playback-play - #mplayer -playlist %f & - #smplayer %s & deadbeef %s & - #exec mediaplayer_open %f + #mplayer -playlist %f & -+ t r & f \.m3u ++ t lr & f \.m3u8? R Play the playlist in random order - "$HOME"/admin/prog/audio-cdr-video/audio/shuffle-playlist.py %f random-playlist-tmp.m3u - #if [ "`audtool --get-volume`" -eq 0 ]; then cgmem_nice 500 audacious & sleep 3; fi + "$HOME"/prog/audio-cdr-video/audio/shuffle-playlist.py %f /tmp/random-playlist-tmp.m3u + #if [ "`audtool --get-volume`" -eq 0 ]; then audacious & sleep 3; fi #audtool --playlist-clear - #audtool --playlist-addurl random-playlist-tmp.m3u + #while read song; do + # audtool --playlist-addurl "$song" + #done < /tmp/random-playlist-tmp.m3u #audtool --playback-play - #mplayer -playlist random-playlist-tmp.m3u & - #smplayer random-playlist-tmp.m3u & - #smplayer -actions pl_shuffle %f & - deadbeef --queue random-playlist-tmp.m3u & deadbeef --play - #mediaplayer_open random-playlist-tmp.m3u - (sleep 5; exec rm random-playlist-tmp.m3u) & + deadbeef /tmp/random-playlist-tmp.m3u & + #mplayer -playlist /tmp/random-playlist-tmp.m3u & + (sleep 5; exec rm /tmp/random-playlist-tmp.m3u) & -+ f \.(aac|ac3|ape|cue|dts|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 -s Play audio/video file(s) or directory with smplayer - smplayer %s & - -+ t d & f (video_ts|VIDEO_TS)$ -c Play the current directory with smplayer - smplayer . & - -+ t r & f \.(m3u|mp3|MP3|cue|aac|ac3|ape|dts|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 lr & f \.(m3u8?|mp3|MP3|cue|aac|ac3|ape|dts|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)$ i Audio/video info exec "$HOME"/.config/mpv/mpv_identify.sh %f @@ -171,45 +201,63 @@ i Audio/video info i DVD info exec "$HOME"/.config/mpv/mpv_identify.sh . -+ f \.(aac|ac3|ape|cue|dts|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 -= f \.(aac|ac3|ape|cue|dts|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)$ -m Play video file(s) with mplayer ++ f \.(aac|ac3|ape|cue|dts|flac|m3u8?|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 +m Play video file(s) with mpv (quiet) + AUDIO_VOLUME=80 + export AUDIO_VOLUME mplayer %s & -+ f \.(aac|ac3|ape|cue|dts|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 -= f \.(aac|ac3|ape|cue|dts|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)$ -m Play video file(s) with mplayer asking audio volume ++ f \.(aac|ac3|ape|cue|dts|flac|m3u8?|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 +m Play video file(s) with mpv (normal) + mplayer %s & + ++ f \.(aac|ac3|ape|cue|dts|flac|m3u8?|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 += f \.(aac|ac3|ape|cue|dts|flac|m3u8?|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)$ +m Play video file(s) with mpv (loud) + AUDIO_VOLUME=120 + export AUDIO_VOLUME + mplayer %s & + ++ f \.(aac|ac3|ape|cue|dts|flac|m3u8?|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 +m Play video file(s) with mpv (louder) + AUDIO_VOLUME=150 + export AUDIO_VOLUME + mplayer %s & + ++ f \.(aac|ac3|ape|cue|dts|flac|m3u8?|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 +m Play video file(s) with mpv (ask for volume) AUDIO_VOLUME=%{Enter volume} - AUDIO_VOLUME=$AUDIO_VOLUME mplayer %s & + export AUDIO_VOLUME + mplayer %s & -+ f \.(m3u|mp3|MP3|cue|aac|ac3|ape|dts|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 -M Play audio/video with gmplayer ++ f \.(m3u8?|mp3|MP3|cue|aac|ac3|ape|dts|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 +M Play audio/video with mpv GUI gmplayer %s & += t d & f (video_ts|VIDEO_TS)$ -d Play DVD directory with mplayer +d Play DVD directory with mpv mplayer -dvd-device . dvd:// & + t d & f (video_ts|VIDEO_TS)$ -D Play DVD directory with gmplayer +D Play DVD directory with mpv GUI gmplayer -dvd-device . dvd:// & + t d & f (video_ts|VIDEO_TS)$ -t Play DVD title with mplayer +t Play DVD title with mpv title=%{Enter title} mplayer -dvd-device . dvd://"$title" & + t d & f (video_ts|VIDEO_TS)$ -T Play DVD title with gmplayer +T Play DVD title with mpv GUI title=%{Enter title} gmplayer -dvd-device . dvd://"$title" & + t d -p Play directory with mplayer +p Play directory with mpv mplayer %f/* & + t d -P Play directory with gmplayer +P Play directory with mpv GUI gmplayer %f/* & + t d & f ^\.\.$ @@ -284,35 +332,35 @@ y Compress the current subdirectory to zip recoding filenames cd .. && 7zr a "$ar".7z "$Pwd" && echo ../"$ar".7z created. -+ ! f \.(bz2|gz|lz|lzma|7z|xz|zip|ZIP)$ & t r ++ ! f \.(bz2|gz|lz|lzma|7z|xz|zip|ZIP)$ & t lr z bzip2 the file exec bzip2 -9 %f -+ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr z gzip the file exec gzip -9 %f -+ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr z lzip the file exec lzip -9 %f -+ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr z lzma the file exec lzma -9 %f -+ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr z 7z the file/directory exec 7zr a %f.7z %f -+ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr z xz the file exec xz -9 %f -+ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr z zip the file/directory exec zip -r9 %f.zip %f -+ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ ! f \.(z|Z|bz2|gz|lz|lzma)|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr y zip the file/directory recoding filename(s) exec zip.py %f.zip %f @@ -326,7 +374,7 @@ Y zip selected files/directories recoding filenames ZIP=%{Enter zip name} exec zip.py "$ZIP" %s -+ f \.(tar\.(z|Z|bz2|gz|lz|lzma))|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t r ++ f \.(tar\.(z|Z|bz2|gz|lz|lzma))|(tbz2|tgz|tz|zip|ZIP|rar|RAR|xz|7z)$ & t lr n Create a directory for this archive case %f in *.tar.Z) D="`basename %f .tar.Z`";; @@ -368,7 +416,7 @@ N Create a directory for the other archive esac exec mkdir "$D" -+ f \.(tar\.(z|Z|bz2|gz|lz|lzma|7z|xz))|(tbz2|tgz|tz)$ & t r ++ f \.(tar\.(z|Z|bz2|gz|lz|lzma|7z|xz))|(tbz2|tgz|tz)$ & t lr x Extract the contents of a compressed tar file unset PRG case %f in @@ -424,7 +472,7 @@ X Extract the contents of an other compressed tar file esac $PRG %D/%F | tar xvpf - -+ f \.(bz2|egg|gz|lz|lzma|7z|xz|tar|whl|zip|ZIP|rar|RAR)$ & t r ++ f \.(bz2|egg|gz|lz|lzma|7z|xz|tar|whl|zip|ZIP|rar|RAR)$ & t lr x Extract a compressed file case %f in *.bz2) P="bzip2 -d";; @@ -454,7 +502,7 @@ X Extract another compressed file esac exec $P %D/%F -+ t r & f \.(zip|ZIP)$ ++ t lr & f \.(zip|ZIP)$ y Extract from zip recoding filenames exec unzip.py %f @@ -462,31 +510,31 @@ y Extract from zip recoding filenames Y Extract from other zip recoding filenames exec unzip.py %D/%F -+ t r ++ t lr v View via mailcap exec see %f -+ t r ++ t lr c Compare the file exec cmp %D/%f %f -+ t r & T r ++ t lr & T r C Compare these files exec cmp %D/%F %f -+ t r ++ t lr d Diff the file exec diff -u --speed-large-files %D/%f %f -+ t r & T r ++ t lr & T r D Diff these files exec diff -u --speed-large-files %D/%F %f -+ t r ++ t lr v vimdiff the file exec vim -d %D/%f %f -+ t r & T r ++ t lr & T r V vimdiff these files exec vim -d %D/%F %f @@ -500,11 +548,15 @@ D Diff these directories exec diff -ru --speed-large-files \ -x CVS -x .git -x .hg -x .svn -x '*.py[co]' -x __pycache__ %D/%F %f -+= f \.(asc|sig(n)?)$ & t r ++= f \.(asc|gpg|sig(n)?)$ & t lr v Verify signature exec gpg --verify %f -+= f \.[1-8]$ | f \.man$ & t r ++ f \.(asc|gpg|sig(n)?)$ & t lr +v Verify detached signature + exec gpg --verify %f "`echo %f | sed 's/\.[^.]*$//'`" + ++= f \.[1-8]$ | f \.man$ & t lr 1 Display the file with roff -man %view nroff -man %f @@ -512,6 +564,6 @@ m View a manual page MAN=%{Enter manual name} %view man -P cat $MAN -+ t r | t d | t t ++ t dlr | t t r rsync the file(s) there rsync -ahPv --del %s %D