123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601 |
- # Midnight Commander 3.0 extension file
- # Warning: Structure of this file has changed completely with version 3.0
- #
- # All lines starting with # or empty lines are thrown away.
- # Lines starting in the first column should have following format:
- #
- # keyword/descNL, i.e. everything after keyword/ until new line is desc
- #
- # keyword can be:
- #
- # shell (desc is, when starting with a dot, any extension (no wildcars),
- # i.e. matches all the files *desc . Example: .tar matches *.tar;
- # if it doesn't start with a dot, it matches only a file of that name)
- #
- # regex (desc is a regular expression)
- # Please note that we are using the GNU regex library and thus
- # \| matches the literal | and | has special meaning (or) and
- # () have special meaning and \( \) are standing for literal ( ).
- #
- # type (file matches this if `file %f` matches regular expression desc
- # (the filename: part from `file %f` is removed))
- #
- # directory (matches any directory matching regular expression desc)
- #
- # include (matches an include directive)
- #
- # default (matches any file no matter what desc is)
- #
- # Other lines should start with a space or tab and should be of the format:
- #
- # keyword=commandNL (with no spaces around =), where keyword should be:
- #
- # Open (if the user presses Enter or doubleclicks it),
- #
- # View (F3), Edit (F4), Drop (user drops some files on it) or any other
- #
- # user defined name (those will be listed in the extension dependent pop-up
- # menu).
- #
- # Icon name is name of the corresponding icon (XPM). If it has no path,
- # the default path for mc icons @prefix@/lib/mc/icons is assumed.
- #
- # Title is the default icon title for objects. %p is expanded into the
- # name of that file and %d/%p to a name with full path. Default title
- # (if none is specified) is %p
- #
- # Include is the keyword used to add any further entries from an include/
- # section
- #
- # command is any one-line shell command, with the following substitutions:
- #
- # %% -> % character
- # %p -> name of the current file (without path, but pwd is its path)
- # %f -> name of the current file. Unlike %p, if file is located on a
- # non-local virtual filesystem, i.e. either tarfs, mcfs or ftpfs,
- # then the file will be temporarily copied into a local directory
- # and %f will be the full path to this local temporal file.
- # If you don't want to get a local copy and want to get the
- # virtual fs path (like /#ftp:ftp.cvut.cz/pub/hungry/xword), then
- # use %d/%p instead of %f.
- # %d -> name of the current directory (pwd, without trailing slash)
- # %s -> "selected files", i.e. space separated list of tagged files if any
- # or name of the current file
- # %t -> list of tagged files
- # %u -> list of tagged files (they'll be untaged after the command)
- #
- # (If these 6 letters are in uppercase, they refer to the other panel.
- # But you shouldn't have to use it in this file.)
- #
- #
- # %cd -> the rest is not command, but a path which will mc cd internally
- # into (cd wouldn't work, since it is a child process, and %cd handles
- # even the vfs names
- #
- # %view -> the command you type will be piped into mc's internal file viewer
- # if you type only the %view and no command, viewer will load %f file
- # instead (i.e. no piping, so it is different to %view cat %f)
- # %view may be directly followed by {} with a list of any of
- # ascii (Ascii mode), hex (Hex mode), nroff (c\bc color highlighting)
- # and unformatted (not highlighting nroff sequences) separated by
- # spaces.
- #
- # %var -> You use it like this: %var{ENV-VAR:default}. This macro will expand
- # to the value of the ENV-VAR variable in the environement if it is set
- # otherwise the value in default will be used. This is similar to
- # the Bourne shell ${VAR-def} construct. We use it so that the extension
- # file could be used unchanged under some shells that may use different
- # methods of doing this
- #
- # %q -> will be replaced with a list of files user dropped on it
- # with full pathnames (only applicable in the Drop command).
- #
- # Target are evaluted from top to bottom (order is thus important).
- # If some actions are missing, search continues as if this target didn't
- # match (i.e. if a file matches the first and second entry and View action
- # is missing in the first one, then on pressing F3 the View action from
- # the second entry will be used. default should catch all the actions.
- #
- # Any handy entries you develop for you are always welcome, if it has
- # wider usage than on one system. You can send your modifications to
- # via email to mc-devel@roxanne.nuclecu.unam.mx
- # .tgz, .tpz, .tar.gz, .tar.z, .tar.Z
- regex/\.t([gp]?z|ar\.g?[zZ])$
- Open=%cd %p#utar
- View=%view{ascii} gzip -dc %f 2>/dev/null | tar tvvf -
- Extract=gzip -dc %f 2>/dev/null | tar xf -
- Icon=compressed.xpm
- regex/\.tar\.bz$
- # Open=%cd %p#utar
- View=%view{ascii} bzip -dc %f 2>/dev/null | tar tvvf -
- Extract=bzip -dc %f 2>/dev/null | tar xf -
- Icon=compressed.xpm
- regex/\.tar\.bz2$
- Open=%cd %p#utar
- View=%view{ascii} bzip2 -dc %f 2>/dev/null | tar tvvf -
- Extract=bzip2 -dc %f 2>/dev/null | tar xf -
- Icon=compressed.xpm
- # .tar
- shell/.tar
- Open=%cd %p#utar
- View=%view{ascii} tar tvvf %f
- Extract=tar xf %f
- Icon=tar.xpm
- # Programs
- shell/rm
- Open=if test ! -d ~/.trash; then mkdir ~/.trash; fi; I=%{Enter file to be safely deleted}; if test -n "$I"; then mv -f -b -V numbered %q ~/.trash; fi
- Icon=rubbish.xpm
- Drop=if test ! -d ~/.trash; then mkdir ~/.trash; fi; mv -f -b -V numbered %q ~/.trash
- Flush=rm -rf ~/.trash
- Title=Safe delete
- shell/lpr
- Open=lpr %{Enter file(s) to print}
- Icon=printer.xpm
- Drop=lpr %q
- Print=lpr %{Enter file(s) to print}
- shell/gzip
- Open=gzip %{Enter file to gzip}
- Icon=compressed.xpm
- Drop=gzip %q
- shell/bzip
- Open=bzip %{Enter file to bzip}
- Icon=compressed.xpm
- Drop=bzip %q
- shell/bzip2
- Open=bzip2 %{Enter file to bzip}
- Icon=compressed.xpm
- Drop=bzip2 %q
- shell/gunzip
- Open=gunzip %{Enter file to gunzip}
- Icon=compressed.xpm
- Drop=gunzip %q
- shell/bunzip
- Open=bunzip %{Enter file to bunzip}
- Icon=compressed.xpm
- Drop=bunzip %q
- shell/bunzip2
- Open=bunzip2 %{Enter file to bunzip}
- Icon=compressed.xpm
- Drop=bunzip2 %q
- shell/gdb
- Open=gdb
- Icon=bug.xpm
- Drop=gdb %q
- # a directory
- directory/^\.\.$
- Icon=parent_dir.xpm
- directory/^News$
- Icon=news_dir.xpm
- directory/^Mail$
- Icon=mail_dir.xpm
- directory/^\..*$
- Icon=hidden_dir.xpm
- directory/^.*$
- Start XTerm here=cd %p; exec xterm &
- Make tar.gz=I=%{Enter destination file name:}; if test -n "$I"; then tar cvf - %p | gzip > $I; fi
- Icon=plain_dir.xpm
- # ls-lR
- regex/^ls-?lR$
- Open=%cd %p#lslR
- View=%view{ascii}
- Icon=plain_dir.xpm
- regex/^ls-?lR\.(g?z|Z)$
- Open=%cd %p#lslR
- View=%view{ascii} gunzip -c %f
- Icon=plain_dir.xpm
- # ftplist
- regex/\.ftplist$
- Open=%cd %p#ftplist
- # rpm
- regex/\.rpm$
- Open=%cd %p#rpm
- Install this RPM=rpm -i %f
- Upgrade this RPM=rpm -U %f
- # deb
- regex/\.deb$
- Open=%cd %p#deb
- View=%view{ascii} dpkg-deb -c %f
- # zip
- regex/\.(zip|ZIP|jar|JAR)$
- Open=%cd %p#uzip
- View=%view{ascii} unzip -v %f
- Icon=zip.xpm
- Extract=unzip %f
- Extract (with flags)=I=%{Enter any Unzip flags:}; if test -n "$I"; then unzip $I %f; fi
- Unzip=unzip %f '*'
- # zoo
- shell/.zoo
- Open=%cd %p#uzoo
- View=%view{ascii} zoo l %f
- Icon=zoo.xpm
- Extract=zoo x %f '*'
-
- # lha
- regex/\.(lha|LHA|lzh|LZH)$
- Open=%cd %p#ulha
- View=%view{ascii} lharc l %f
- Icon=lharc.xpm
- Extract=lharc x %f '*'
- Extract (with flags)=I=%{Enter any LHarc flags:}; if test -n "$I"; then lharc x $I %f; fi
- # arj
- regex/\.a(rj|[0-9][0-9])$
- Open=%cd %p#uarj
- View=%view{ascii} unarj l %f
- Icon=zip.xpm
- Extract=unarj x %f '*'
- Extract (with flags)=I=%{Enter any Unarj flags:}; if test -n "$I"; then unarj x $I %f; fi
- # ha
- regex/\.(ha|HA|Ha)$
- Open=%cd %p#uha
- View=%view{ascii} ha lf %f
- Icon=ha.xpm
- Extract=ha xy %f '*'
- Extract (with flags)=I=%{Enter any HA flags:}; if test -n "$I"; then ha xy $I %f; fi
- # ar library
- regex/\.s?a$
- Open=%cd %p#uar
- View=%view{ascii} nm %f
- # C
- shell/.c
- Open=%var{PAGER:more} %f
- View=%view{ascii}
- Compile=%var{CC:cc} -O -c %f
- Link=%var{CC:cc} -O -o %d/`basename %f .c` %f
- Icon=c.xpm
- shell/.f
- Open=%var{PAGER:more} %f
- View=%view{ascii}
- Compile=f77 -O -c %f
- Compile and Link=f77 -O %f
-
- shell/.h
- Open=%var{EDITOR:vi} %f
- Icon=h.xpm
- shell/.o
- Open=%var{PAGER:more} %f
- Link=%var{CC:cc} -O %f
- Icon=o.xpm
- Display object file symbols=%view{ascii} nm %f
- Disassemble=%view{ascii} objdump -d -r %f
- shell/.s
- Open=%var{PAGER:more} %f
- Assemble=%var{CC:cc} -O -c %f
- Link=%var{CC:cc} -O -o %d/`basename %f .s` %f
- Icon=s.xpm
- shell/.dvi
- Open=xdvi %f
- Icon=binary.xpm
- View=xdvi %f
- Convert file to Postscript=dvips %f
- shell/.tex
- Open=%var{PAGER:more} %f
- Icon=tex.xpm
- TeX this file=tex %f
- LaTeX this file=tex %f
- shell/^RMAIL$
- Start Emacs on this RMAIL file=emacs %f
- Open=emacs %f
- regex/\.(te?xi)|(texinfo)$
- Icon=tex.xpm
- # C++
- regex/\.(C|cc)$
- Open=%var{PAGER:more} %f
- View=%view{ascii}
- Compile=c++ -O -c %f
- Link=c++ -O -o %d/`basename %f .c` %f
- Icon=cc.xpm
- # ar library
- regex/\.s?a$
- Open=%view{ascii} ar tv %f
- View=%view{ascii} nm %f
- Icon=a.xpm
- # .so libraries are not manual pages
- regex/\.so\.[0-9\.]*$
- View=%view{hex}
- Icon=so.xpm
- # GNU Info page
- type/Info\ text
- Open=info --directory %d -f %p
- Icon=info.xpm
- # Manual page
- regex/(([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|n)|\.man)$
- Open=nroff @TROFFASCII@ @MANDOC@ %f | %var{PAGER:more}
- View=%view{ascii,nroff} nroff @TROFFASCII@ @MANDOC@ %f
- Icon=man.xpm
- # Troff with me macros.
- shell/.me
- Open=nroff @TROFFASCII@ -me %f | %var{PAGER:more}
- View=%view{ascii,nroff} nroff @TROFFASCII@ -me %f
- Icon=man.xpm
- # Troff with ms macros.
- shell/.ms
- Open=nroff @TROFFASCII@ -ms %f | %var{PAGER:more}
- View=%view{ascii,nroff} nroff @TROFFASCII@ -ms %f
- Icon=man.xpm
- # Manual page - compressed
- regex/([^0-9]|^[^\.]*)\.([1-9][a-z]?|n)\.g?[Zz]$
- Open=gzip -dc %f | nroff @TROFFASCII@ @MANDOC@ | %var{PAGER:more}
- View=%view{ascii,nroff} gzip -dc %f | nroff @TROFFASCII@ @MANDOC@
- Icon=man.xpm
- regex/([^0-9]|^[^\.]*)\.([1-9][a-z]?|n)\.bz$
- Open=bzip -dc %f | nroff @TROFFASCII@ @MANDOC@ | %var{PAGER:more}
- View=%view{ascii,nroff} bzip -dc %f | nroff @TROFFASCII@ @MANDOC@
- Icon=man.xpm
- regex/([^0-9]|^[^\.]*)\.([1-9][a-z]?|n)\.bz2$
- Open=bzip2 -dc %f | nroff @TROFFASCII@ @MANDOC@ | %var{PAGER:more}
- View=%view{ascii,nroff} bzip2 -dc %f | nroff @TROFFASCII@ @MANDOC@
- Icon=man.xpm
- regex/(read\.?me$)|(README)
- Icon=info.xpm
- shell/core
- Icon=core.xpm
- type/PostScript
- Open=gv %f
- Icon=postscript.xpm
- View with GhostView=gv %f
- type/GIF\ image
- Open=ee %f
- Icon=gif.xpm
- Include=image-options
-
- type/GIF\ picture
- Open=ee %f
- Icon=gif.xpm
- Include=image-options
-
- type/JPEG\ picture
- Open=ee %f
- Icon=jpeg.xpm
- Include=image-options
- type/PC\ bitmap
- Open=ee %f
- Icon=bitmap.xpm
- Include=image-options
- type/PNG\ image
- Open=ee %f
- Icon=gif.xpm
- Include=image-options
- type/JPEG\ image
- Open=ee %f
- Icon=jpeg.xpm
- Include=image-options
-
- type/TIFF\ file
- Open=ee %f
- Icon=tiff.xpm
- Include=image-options
-
- type/PBM
- Open=ee %f
- Icon=pbm.xpm
- Include=image-options
-
- type/PGM
- Open=ee %f
- Icon=pgm.xpm
- Include=image-options
-
- type/PPM
- Open=ee %f
- Icon=ppm.xpm
- Include=image-options
- shell/.xbm
- Open=bitmap %f
- Icon=xbm.xpm
- shell/.xpm
- Open=ee %f
- View=sxpm %f
- Include=image-options
- Icon=xpm.xpm
- include/image-options
- Set root window to this image=background-properties --setwallpaper %f &
- Display this file=ee %f &
- # Sound files
- shell/.mod
- Open=tracker %f
- Icon=sound.xpm
- regex/\.(wav)|(snd)|(voc)|(au)$
- Open=play %f
- Icon=sound.xpm
- type/FrameMaker
- Open=fmclient -f %f
- Icon=framemaker.xpm
- type/mail
- Open=elm -f %f
- Icon=mail.xpm
- View=%view{ascii} mcmfmt < %f
- # Makefile
- regex/[Mm]akefile
- Open=make -f %f %{Enter parameters}
- Icon=makefile.xpm
- shell/Imakefile
- Open=xmkmf -a
- Icon=makefile.xpm
- type/PDF
- Open=xpdf %f
- # Executables
- type/executable
- Open=./%f
- View=%view
- Drop=%f %q
- Execute in XTerm=xterm -e %f &
- View Required Libraries=%view{ascii} ldd %f
- Strip binary=strip %f
- Icon=application.xpm
- # MPegs
- regex/\.mpe?g$
- Open=mpeg_play %f &
- View (big)=mpeg_play -dither 2x2 %f &
- View (gray)=mpeg_play -dither gray %f &
- # HTML
- regex/\.html?$
- # Open=if echo "%d/%p" | grep ^ftp; then $viewer %d/%p; else $viewer file:%p; fi
- Open=if [ x$DISPLAY = x ]; then lynx -force_html %f; else (@X11_WWW@ %f &); fi
- View=%view{ascii} lynx -dump -force_html %f;
- Icon=html.xpm
- Run with AppletViewer=appletviewer %f
- View with @X11_WWW@=@X11_WWW@ file://%f
- # rar
- regex/\.[rR]([aA][rR]|[0-9][0-9])$
- Open=%cd %p#urar
- View=%view{ascii} rar v -c- %f
- Extract=rar x -c- %f '*'
- Extract (with flags)=I=%{Enter any RAR flags:}; if test -n "$I";then rar x $I %f; fi
- # dbf
- regex/\.(dbf|DBF)$
- Open=%view{ascii} dbview %f
- View=%view{ascii} dbview -b %f
- # wav
- regex/\.(wav|WAV)$
- Open=vplay %f
- Icon=wav.xpm
- # wav22
- regex/\.(wav22|WAV22)$
- Open=vplay -s 22 %f
- Icon=wav.xpm
- # REXX script
- regex/\.(rexx)|(rex)|(cmd)$
- Open=rexx %f %{Enter parameters};echo "Press ENTER";read y
- Icon=rexx.xpm
- # Microsoft Word Document
- regex/\.(doc|DOC)$
- # View=%view{ascii} catdoc -w %f
- View=%view{ascii} word2x -f text %f -
- Icon=word.xpm
- type/Microsoft Word Document
- # View=%view{ascii} catdoc -w %f
- View=%view{ascii} word2x -f text %f -
- Icon=word.xpm
-
- # cpio rules
- shell/.cpio.Z
- Open=%cd %d/%p#ucpio/
- View=%view{ascii} compress -dc '%f' | cpio -ictv
- Extract=compress -dc '%f' | cpio -ic
- Icon=compressed.xpm
- shell/.cpio.gz
- Open=%cd %d/%p#ucpio/
- View=%view{ascii} gzip -dc '%f' | cpio -ictv
- Extract=gzip -dc '%f' | cpio -ic
- Icon=compressed.xpm
- shell/.cpio
- Open=%cd %d/%p#ucpio/
- View=%view{ascii} cat '%f' | cpio -ictv
- Extract=cat '%f' | cpio -ic
- Icon=cpio.xpm
- shell/.mp3
- Open=mpg123 %f
- View=mpg123 %f
- Icon=sound.xpm
- regex/\.trpm$
- Open=%cd trpm:%p
- View=%view{ascii} rpm -qivl --scripts `basename %p .trpm`
- # gzipped
- type/gzip
- Open=gzip -dc %f | %var{PAGER:more}
- View=%view{ascii} gzip -dc %f 2>/dev/null
- Edit=I=`date +%%s`; export I; gzip -cd %f >/tmp/gzed.$I && %var{EDITOR:vi} /tmp/gzed.$I && gzip -c /tmp/gzed.$I > %f; rm -f /tmp/gzed.$I
- Uncompress=gunzip %f
- Icon=compressed.xpm
- # bzipped
- type/bzip2
- Open=bzip2 -dc %f | %var{PAGER:more}
- View=%view{ascii} bzip2 -dc %f 2>/dev/null
- Edit=I=`date +%%s`; export I; bzip2 -cd %f >/tmp/bzed.$I && %var{EDITOR:vi} /tmp/bzed.$I && bzip2 -c /tmp/bzed.$I > %f; rm -f /tmp/bzed.$I
- Uncompress=bunzip2 %f
- Icon=compressed.xpm
- type/bzip
- Open=bzip -dc %f | %var{PAGER:more}
- View=%view{ascii} bzip -dc %f 2>/dev/null
- Edit=I=`date +%%s`; export I; bzip -cd %f >/tmp/bzed.$I && %var{EDITOR:vi} /tmp/bzed.$I && bzip -c /tmp/bzed.$I > %f; rm -f /tmp/bzed.$I
- Uncompress=bunzip %f
- Icon=compressed.xpm
- type/compress
- Open=gzip -dc %f | %var{PAGER:more}
- View=%view{ascii} gzip -dc %f 2>/dev/null
- Edit=I=`date +%%s`; export I; gzip -cd %f >/tmp/gzed.$I && %var{EDITOR:vi} /tmp/gzed.$I && gzip -c /tmp/gzed.$I > %f; rm -f /tmp/gzed.$I
- Icon=compressed.xpm
- # Default target for anything not described above
- default/*
- Open=
- View=%view{ascii}
- Drop=
- Icon=plain.xpm
- Title=%p
|