++ f \.(bz2|gz|lz|lzma|7z|xz|tar|zip|ZIP|rar|RAR)$ & t r
+x Extract a compressed file
+ case %f in
+ *.bz2) P="bzip2 -d";;
+ *.gz) P="gzip -d";;
+ *.lz) P="lzip -d";;
+ *.lzma) P="lzma -d";;
+ *.7z) P="7z -d";;
+ *.xz) P="xz -d";;
+ *.tar) P="tar xvpf";;
+ *.zip|*.ZIP) P="uzip";;
+ *.rar|*.RAR) P="rar x -y";;
+ esac
+ exec $P %f
+
++ F \.(bz2|gz|lz|lzma|7z|xz|tar|zip|ZIP|rar|RAR)$ & T r
+x Extract another compressed file
+ case %F in
+ *.bz2) P="bzip2 -cd";;
+ *.gz) P="gzip -cd";;
+ *.lz) P="lzip -cd";;
+ *.lzma) P="lzma -cd";;
+ *.7z) P="7z -cd";;
+ *.xz) P="xz -cd";;
+ *.tar) P="tar xvpf";;
+ *.zip|*.ZIP) P="uzip";;
+ *.rar|*.RAR) P="rar x -y";;
+ esac
+ exec $P %D/%F
+