/highlight-3.9/plugins/bash_ref_linuxmanpages_com.lua

# · Lua · 447 lines · 421 code · 19 blank · 7 comment · 19 complexity · 54050e73c2e1052f4b241b4e9ea94960 MD5 · raw file

  1. --[[
  2. Sample plugin file for highlight 3.9
  3. ]]
  4. Description="Add linuxmanpages.com reference links to HTML, LaTeX and RTF output of Bash scripts"
  5. -- optional parameter: syntax description
  6. function syntaxUpdate(desc)
  7. if desc~="Bash" then
  8. return
  9. end
  10. function Set (list)
  11. local set = {}
  12. for _, l in ipairs(list) do set[l] = true end
  13. return set
  14. end
  15. man1_items = Set {"a2p","a2ps","aafire","ab","abcde","abxtest","ac","access","achfile","aconnect",
  16. "acyclic","addftinfo","addr2line","addresses","addwords","aecho","afile",
  17. "afm2tfm","afmtodit","afppasswd","afslog","aimk","alias","allcm","allec",
  18. "allneeded","alsactl","alsamixer","amidi","amixer","amstex","gawk","anemone",
  19. "anemotaxis","animate","ansi2knr","ant","antinspect","antlr","antspotlight",
  20. "aplay","aplaymidi","apm","apmsleep","apollonian","apple2","apple_cp","apple_mv"
  21. ,"apple_rm","appletviewer","appres","apropos","ar","arch","arecord",
  22. "arecordmidi","as","as86","as86_encap","ascii-xfr","aseqnet","ash","asn1parse",
  23. "at","atlantis","atobm","atq","atrm","attr","attraction","atunnel","aumix",
  24. "autoconf","autoexpect","autoheader","autom4te","autopoint","autopvf",
  25. "autoreconf","autorun","autoscan","autoupdate","autovbox","awk","backend",
  26. "balsa","barcode","basename","bash","bashbug","basictopvf","batch","bc","bcc",
  27. "bcomps","bdftopcf","bdftruncate","beep-media-player","beforelight","bg",
  28. "bibtex","biff","bind","binhex","bison","bitmap","blaster","blinkbox","blitspin"
  29. ,"blocktube","bmtoa","bonobo-activation-server","bouboule","bouncingcow","boxed"
  30. ,"braid","break","brltty","bsetbg","bsetroot","bsh","bsod","bubble3d","bubbles",
  31. "bug-buddy","buildhash","builtin","builtins","bumps","bunzip2","busybox","byacc"
  32. ,"bzcat","bzcmp","bzdiff","bzegrep","bzfgrep","bzgrep","bzip2","bzip2recover",
  33. "bzless","bzmore","c2ph","c3270","ca","cabextract","cadaver","cage","cal",
  34. "cancel","cancel-cups","cannacheck","cannakill","cannaserver","cannastat",
  35. "capinfo","CA.pl","captoinfo","card","cat","catdic","catdoc","ccmakedep",
  36. "ccomps","ccurve","cd","cdda2ogg","cdda2wav","cd-discid","c++decl","cdecl",
  37. "cdlabelgen","cdp","cdparanoia","cdrdao","cdrecord","cert2ldap","certfind",
  38. "certtool","certwatch","cervisia","cfgmaker","c++filt","chacl","chage","chattr",
  39. "chcon","chfn","chgrp","chkdupexe","chmod","chmoddic","chown","chroot","chrt",
  40. "chsh","chvt","ci","ciphers","ciptool","circo","circuit","cjpeg","ckpasswd",
  41. "cksum","cleanlinks","clear","cloudlife","clusterdb","cmp","co","col","colcrt",
  42. "colrm","column","combinediff","comm","command","compare","compass","compgen",
  43. "compile_et","complete","composite","compress","config.guess","config.sub",
  44. "conjure","consoletype","cont-de","cont-en","continue","cont-nl","convdate",
  45. "convert","convfont","coral","couriertcpd","coverpg","cp","cpan","cpdic","cpio",
  46. "cplay","cpp","cproto","createdb","createlang","createuser","critical","crl",
  47. "crl2pkcs7","crontab","crystal","cscope","csh","cshost","cspctl","csplit",
  48. "ctags","ctow","cu","cubenetic","cubestorm","cue2toc","cups-config",
  49. "cupstestppd","curl","curl-config","cut","cvs","cvsblame","cvscheck",
  50. "cvsversion","cweb","cxpm","cynosure","cyradm","dangerball","dasher","date",
  51. "db2dvi","db2html","db2pdf","db2ps","db2rtf","dbiprof","dbiproxy","dbmmanage2",
  52. "dbus-cleanup-sockets","dbus-daemon-1","dbus-launch","dbus-monitor","dbus-send",
  53. "dc","dc_client","dc_server","dc_snoop","dctc","dctc_cmd","dctc_gdl123",
  54. "dc_test","dd","ddate","ddd","deallocvt","decayscreen","declare","deco",
  55. "dehtmldiff","deluxe","delwords","demon","dep-clean","df","dga","dgst","dhparam"
  56. ,"dialog","dicar","dict","dictfmt","dictfmt_index2suffix","dictfmt_index2word",
  57. "dictunformat","dictzip","diet","diff","diff3","diffpp","diffstat","dig",
  58. "dijkstra","dir","dircolors","dirname","dirs","discrete","dislocate","disown",
  59. "dispatch-conf","display","distort","djpeg","dlg","dlpsh","dmp","dmxtodmx",
  60. "dnsdomainname","dns-helper","docbook2dvi","docbook2html","docbook2man",
  61. "docbook2man-spec.pl","docbook2pdf","docbook2ps","docbook2rtf","docbook2tex",
  62. "docbook2texi","docbook2texi-spec.pl","doexec","domainname","dos2unix","dot",
  63. "dot2gxl","dotlockfile","dotneato-config","dotty","dpbindic","dprofpp",
  64. "dpromdic","dpsexec","dpsinfo","drift","dropdb","droplang","dropuser","dsa",
  65. "dsaparam","dtach","du","dubdv","dumpiso","dumpkeys","dumpreg","dund",
  66. "dvconnect","dvcont","dvdrecord","dvgrab","dvi2fax","dvicopy","dvihp","dvipdf",
  67. "dvipdfm","dvips","dvired","dvitomp","dvitype","e2pall","easytag","ebuild",
  68. "echo","ecpg","ed","edit","editcap","editdiff","editreg","editres","efax","efix"
  69. ,"egrep","einitex","eject","elatex","elinks","elks","elksemu","emacs","emerge",
  70. "enable","enc","enc2xs","enchant","encodedv","endgame","engine","enscript","env"
  71. ,"envsubst","env-update","envy24control","epic","epicycle","eplain","eps2eps",
  72. "epsffit","epstopdf","eqn","eqn2graph","equery","eruby","eruption","escputil",
  73. "esd","esdcat","esd-config","esdctl","esddsp","esdfilt","esdloop","esdmon",
  74. "esdplay","esdrec","esdsample","espdiff","etags","etcat","etc-update","Eterm",
  75. "etex","ethereal","euler2d","euse","eval","evim","evirtex","ewhich","ex","exec",
  76. "exit","expand","expect","expectk","expiry","export","expr","extcheck",
  77. "extractres","extrusion","exuberant-ctags","factor","fadeplot","false","fastjar"
  78. ,"fastrm","fax","fax2ps","fax2tiff","faxq","faxrm","faxrunq","faxspool","fbrun",
  79. "fbsetbg","fc","fc-cache","fc-list","fdp","festival","festival_client",
  80. "fetchmail","fetchmailconf","fg","fgconsole","fgr","fgrep","fig2dev",
  81. "fig2ps2tex","file","filter","filterdiff","find","find2perl","findaffix",
  82. "findsmb","finger","firefox","fix132x43","fixcvsdiff","fixdlsrps","fixfmps",
  83. "fixmacps","fixps","fixpsditps","fixpspps","fixscribeps","fixtpps","fixwfwps",
  84. "fixwpps","fixwwps","flac","flag","flame","flea","flex","flex++","flipdiff",
  85. "flipflop","flipscreen3d","flow","fltk-config","fluid","fluidballs","flurry",
  86. "fluxbox","fluxstyle","flyingtoasters","fmt","fold","font2c","fontexport",
  87. "fontglide","fontimport","fontinst","foomatic-combo-xml","foomatic-compiledb",
  88. "foomatic-configure","foomatic-gswrapper","foomatic-perl-data","foomatic-ppdfile",
  89. "foomatic-ppd-options","foomatic-printjob","foomatic-rip","forest",
  90. "formail","free","frommac","fslsfonts","fstobdf","ftp","ftpcopy","ftpcount",
  91. "ftpcp","ftpls","ftptop","ftpwho","funzip","fuser","fuzzyflakes","g++","g32pbm",
  92. "g3cat","g77","gaim","gaim-remote","galaxy","gamma4scanimage","gawk","gc",
  93. "gcalctool","gcc","gccmakedep","gcj","gcjh","gconf-editor","gconfigger",
  94. "gconftool-2","gcov","g-cpan.pl","gctags","gda-config-tool","gdb","gdbserver",
  95. "gdbtui","gdk-pixbuf-csource","gdk-pixbuf-query-loaders","gdm","gears","gedit",
  96. "gendiff","gendsa","genhostid","genrsa","gentoo","geqn","GET","getafm",
  97. "getconfig","getent","getfacl","getfattr","getlist","getopt","getopts","gettext"
  98. ,"gettextize","getzones","gfdl","gfloppy","gflux","gfortran","gftodvi","gftopk",
  99. "gftp","gftype","ghostscript","ghostview","gif2tiff","giftrans","gij","gimp-1.2"
  100. ,"gimp","gimp-2.0","gimpprint-config","gimp-remote-1.2","gimp-remote","gimp-remote-2.0",
  101. "gimptool-1.2","gimptool","gimptool-2.0","gindxbib","gkrellm",
  102. "gkrellm2","gkrellmd","glblur","gleidescope","glforestfire","glib-config","glib-genmarshal",
  103. "glib-gettextize","glib-mkenums","glknots","glmatrix","glookbib",
  104. "glplanet","glslideshow","glsnake","gltext","glxgears","glxinfo","gnc-prices",
  105. "gnome","gnome-about","gnome-bug","gnome-config","gnome-dictionary","gnome-doc",
  106. "gnome-dump-metadata","gnome-gen-mimedb","gnomemeeting","gnome-mkstub","gnome-moz-remote",
  107. "gnome-name-service","gnome-panel","gnome-pty-helper","gnome-search-tool","gnome_segv",
  108. "gnome-session","gnome-session-save","gnome-smproxy","gnome-system-log","gnome-wm","gnroff","gnuattach","gnucash","gnuclient","gnudoit",
  109. "gnumeric","gnuplot","gnuserv","gnutls-cli","gnutls-cli-debug","gnutls-serv",
  110. "goad-browser","gob2","gobject-query","goop","gpasswd","gperf","gpg","gpgv",
  111. "gphoto2","gpic","gpilot-install-file","gpm-root","gprof","grav","grefer","grep"
  112. ,"grepdiff","grephistory","grepjar","greynetic","grmic","grmiregistry","grn",
  113. "grodvi","groff","groffer","grog","grohtml","grolbp","grolj4","grops","grotty",
  114. "groups","growisofs","gs","gsbj","gsdj","gsdj500","gsftopk","gslj","gslp","gsnd"
  115. ,"gsoelim","gs-pcl3","gst-complete-0.6","gst-complete-0.8","gst-compprep-0.6",
  116. "gst-compprep-0.8","gst-feedback-0.6","gst-feedback-0.8","gst-inspect-0.6","gst-inspect-0.8",
  117. "gst-launch-0.6","gst-launch-0.8","gst-launch-ext-0.6","gst-launch-ext-0.8","gst-md5sum-0.6",
  118. "gst-md5sum-0.8","gst-register-0.6","gst-register-0.8"
  119. ,"gst-typefind-0.6","gst-typefind-0.8","gst-visualise-0.6","gst-visualise-0.8",
  120. "gst-xmlinspect-0.8","gst-xmllaunch-0.6","gst-xmllaunch-0.8","gtbl","gtf",
  121. "gthumb","gtk-config","gtk-query-immodules-2.0","gtroff","gtv","gunzip","gv",
  122. "gvcolor","gvim","gvimdiff","gvpack","gvpr","gxditview","gxl2dot","gzcat",
  123. "gzexe","gzip","h2ph","h2xs","halftone","halo","hash","hattrib","hboot","hcc",
  124. "hcd","hcitool","hcopy","hcp","hdel","hdir","head","HEAD","helix","help",
  125. "hesinfo","hexbin","hexdump","hexedit","hf77","hformat","hfs","hfssh","hfsutils"
  126. ,"hinotes","history","hls","hmkdir","hmount","hopalong","host","hostid",
  127. "hostname","hostx","hpftodit","hpwd","hqx2bin","hrename","hrmdir","htdig",
  128. "htdigest","htdigest2","htdig-pdfparser","htdump","htfuzzy","htload","htmerge",
  129. "htnotify","htpasswd","htpasswd2","htpurge","htsearch","htstat","hublist",
  130. "humount","hvol","hyperball","hypercube","hypertorus","ibm_hosts","ibod",
  131. "iceauth","ico","iconv","icotool","id","id3","id3v2","ident","identify","idesk",
  132. "idl2eth","idlj","idn","iecset","ietf2datebook","ifnames","ifs","igawk",
  133. "ijsgimpprint","ImageMagick","imake","imlib_config","imlib-config","import",
  134. "imsmap","imtest","includemocs","includeres","incm","indent","indexmaker",
  135. "indxbib","inews","info","infocmp","infokey","infotocap","inimf","inimpost",
  136. "iniomega","initdb","initex","initlocation","initlog","innconfval","innfeed",
  137. "innmail","install","install-datebook","install-expenses","install-hinote",
  138. "install-info","install-memo","install-netsync","installsieve","install-todo",
  139. "install-user","interdiff","interference","intro","introu","iostat","ipcalc",
  140. "ipcclean","irb","irssi","isamchk","isamlog","isdnconf","isdnrate","isdnrep",
  141. "ispell","jade","jar","jarsigner","java","javac","java-config","javadoc","javah"
  142. ,"javap","javaws","jcf-dump","jdb","jed","jigglypuff","jigsaw","jmacs","jobs",
  143. "joe","join","jpegtran","jpico","jpilot","jpilot-dial","jpilot-dump","jpilot-sync",
  144. "jpilot-upgrade-99","jsattach","jscal","jstar","jstest","juggle","julia",
  145. "jv-convert","jv-scan","jw","jwhois","kahakai","kaleidescope","kbd_mode","kcc",
  146. "kde-build","kermit","kernelversion","keygen","keytool","kibitz","kill",
  147. "killall","kinit","kinput2","kjscmd","klein","klist","kon","kpsepath","kpsestat"
  148. ,"kpsetool","kpsewhich","kpsexpand","ksh","ktab","kumppa","kwordtrans","l2ping",
  149. "lambda","lamboot","lamclean","lamd","lame","lament","lamexec","lamgrow",
  150. "laminfo","lamshrink","lamtrace","laser","last","lastb","lastcomm","latex",
  151. "lavalite","lbxproxy","lchfn","lchsh","ld","ld86","ldapadd","ldapcompare",
  152. "ldapdelete","ldapmodify","ldapmodrdn","ldappasswd","ldapsearch","ldapwhoami",
  153. "ldd","lefty","less","lesskey","lesstif","let","lex","lftp","libart-config",
  154. "libmikmod-config","libnetcfg","libxrx","lightning","line","link","links",
  155. "lintopvf","linuxdoc","lisa","lissie","listres","ljlatest","lkbib","lmorph",
  156. "lmtptest","ln","lndir","lneato","loaderinfo","loadkeys","loadshlib","local",
  157. "locale","localedef","locate","lockfile","log2pcap","logger","login","logname",
  158. "logout","logresolve","longrun","look","lookbib","loop","lp","lp5250d","lp-cups"
  159. ,"lpoptions","lppasswd","lpq","lpq-cups","lpr","lpr-cups","lprm","lprm-cups",
  160. "lpstat","lpstat-cups","lrelease","ls","lsattr","lsb_release","lsdic","lsdiff",
  161. "ltrace","ltversion","luit","lupdate","lv","lwp-download","lwp-mirror","lwp-request",
  162. "lwp-rget","lynx","mac2unix","macbinary","macsave","macstream",
  163. "macunpack","macutil","madplay","mag","Magick-config","Magick++-config","mail",
  164. "maildiracl","maildirkw","maildirmake","mailq","mailq.postfix","mailq.sendmail",
  165. "make","makedepend","makeg","makeindex","makeinfo","makempx","makepsres",
  166. "make_smbcodepage","makestrs","MakeTeXPK","make_unicodemap","man","man2html",
  167. "manpath","manweb","mattrib","maze","mbadblocks","mbchk","mc","mcat","mcd",
  168. "mcedit","mcookie","mcopy","mcview","md2","md4","md5","md5sum","mdc2","mdel",
  169. "mdeltree","mdir","mdu","megatron","memos","memscroller","mencoder","menger",
  170. "merge","mergecap","mergelib","mesg","metaballs","metaflac","mev","mewcat",
  171. "mewdecode","mewencode","mewls","mf","mformat","mft","mgetty_fax","mgp","mgp2ps"
  172. ,"mgpembed","mgpnet","mib2c","mikmod","minfo","minicom","mirrorblob","mismunch",
  173. "mkbindic","mkcfm","mk_cmds","mkdep","mkdic","mkdir","mkdirhier","mkebuild",
  174. "mkfifo","mkfontdir","mkfontscale","mkhtmlindex","mkindex","mkmanifest","mknmz",
  175. "mknod","mkoctfile","mkpasswd","mktemp","mktexlsr","mktexmf","mktexpk",
  176. "mktextfm","mkxauth","mkzftree","mlabel","mmd","mmount","mmove","mmroff","moc",
  177. "moebius","mogrify","moire","moire2","molecule","montage","more","morph3d",
  178. "mountain","mouse-test","mozilla","mp3burn","mp3info","mpage","mpartition",
  179. "mpg123","mpic++","mpicc","mpiCC","mpiexec","mpif77","mpimsg","mpirun","mpitask"
  180. ,"mplayer","mpost","mpstat","mpto","mrd","mren","mrtg","mrtg-contrib","mrtg-faq"
  181. ,"mrtg-forum","mrtg-ipv6","mrtglib","mrtg-logfile","mrtg-mibhelp","mrtg-nt-guide",
  182. "mrtg-reference","mrtg-rrd","mrtg-squid","mrtg-unix-guide","mrtg-webserver","msgattrib","msgcat","msgcmp","msgcomm","msgconv","msgen","msgexec",
  183. "msgfilter","msgfmt","msggrep","msginit","msgmerge","msgunfmt","msguniq",
  184. "mshowfat","mt","mtools","mtoolstest","mtx","mtype","multixterm","munch",
  185. "munchlist","mupdatetest","mutt","mv","mvdic","mwm","mysql","mysqlaccess",
  186. "mysqladmin","mysqld","mysqld_multi","mysqld_safe","mysqldump",
  187. "mysql_fix_privilege_tables","mysqlshow","mysql_zap","mzip","namazu","namei",
  188. "nano","nasm","native2ascii","nbp","nbplkup","nbprgstr","nbpunrgstr","nc",
  189. "ncftp","ncftpbatch","ncftpget","ncftpls","ncftpput","ncftpspooler","ncopy",
  190. "ndisasm","neato","nedit","neon-config","neqn","nerverot","netatalk-config",
  191. "netreport","newaliases","newaliases.postfix","newaliases.sendmail","newer",
  192. "newgrp","new-object","newrole","nex","nex","ngettext","nice","nisdomainname",
  193. "nkf","nl","nm","nmap","nmapfe","nmblookup","nntpget","nntptest","nohup",
  194. "noncvslist","noof","nop","normalize","normalize-mp3","noseguy","nprint","nroff"
  195. ,"nsend","nseq","nsgmls","nslookup","ntlm_auth","ntpd","ntpdate","ntpdc",
  196. "ntpdsim","ntpq","ntpstat","ntptime","ntptrace","nvi","nvi","nview","nview",
  197. "nwauth","nwbols","nwboprops","nwbpset","nwbpvalues","nwdir","nwfsinfo",
  198. "nwfstime","nwpasswd","nwpjmv","nwpqjob","nwpurge","nwrights","nwsfind",
  199. "nwtrustee","nwuserlist","nwvolinfo","oafd","obex_push","objcopy","objdump",
  200. "oclock","ocsp","octave","octave-bug","octave-config","od","ogg123","oggdec",
  201. "oggenc","ogginfo","ogonkify","omega","omshell","onsgmls","opannotate",
  202. "oparchive","opcontrol","open","openjade","openssl","openssl-passwd","openvt",
  203. "opgprof","op_help","opreport","oprofile","opstack","orbd","osgmlnorm","ospam",
  204. "ospent","osx","pacman","pagsh","pal2rgb","pand","pango-querymodules","pap",
  205. "papstatus","passmass","passwd","paste","patch","patgen","pathchk","pawd","pax",
  206. "pbm2g3","pbm2ppa","pbmtomatrixorbital","pcitweak","pcl3opts","pcregrep",
  207. "pcretest","pdf2dsc","pdf2ps","pdfetex","pdffonts","pdfimages","pdfinfo",
  208. "pdfinitex","pdflatex","pdfopt","pdftex","pdftoppm","pdftops","pdftotext",
  209. "pdfvirtex","pdiff","pdksh","pdl","PDL::API","PDL::BadValues","PDL::Dataflow",
  210. "PDL::Delta","pdldoc","PDL::FAQ","PDL::Impatient","PDL::Indexing","pedal","penetrate","penrose","perl","perl5004delta","perl5005delta",
  211. "perl561delta","perl56delta","perl570delta","perl571delta","perl572delta",
  212. "perl573delta","perl581delta","perl582delta","perl583delta","perl584delta",
  213. "perl585delta","perl58delta","perlaix","perlamiga","perlapi","perlapio",
  214. "perlapollo","perlartistic","perlbeos","perlbook","perlboot","perlbot",
  215. "perlbs2000","perlbug","perlcall","perlcc","perlce","perlcheat","perlclib",
  216. "perlcn","perlcompile","perlcygwin","perldata","perldbmfilter","perldebguts",
  217. "perldebtut","perldebug","perldelta","perldgux","perldiag","perldl","perldoc",
  218. "perldos","perldsc","perlebcdic","perlembed","perlepoc","perlfaq1","perlfaq",
  219. "perlfaq2","perlfaq3","perlfaq4","perlfaq5","perlfaq6","perlfaq7","perlfaq8",
  220. "perlfaq9","perlfilter","perlfork","perlform","perlfreebsd","perlfunc","perlgpl"
  221. ,"perlguts","perlhack","perlhist","perlhpux","perlhurd","perlintern","perlintro"
  222. ,"perliol","perlipc","perlirix","perlivp","perljp","perlko","perllexwarn",
  223. "perllocale","perllol","perlmachten","perlmacos","perlmacosx","perlmint",
  224. "perlmod","perlmodinstall","perlmodlib","perlmodstyle","perlmpeix","perlnetware"
  225. ,"perlnewmod","perlnumber","perlobj","perlop","perlopentut","perlos2",
  226. "perlos390","perlos400","perlothrtut","perlpacktut","perlplan9","perlpod",
  227. "perlpodspec","perlport","perlqnx","perlre","perlref","perlreftut","perlrequick"
  228. ,"perlreref","perlretut","perlrun","perlsec","perlsolaris","perlstyle","perlsub"
  229. ,"perlsyn","perlthrtut","perltie","perltoc","perltodo","perltooc","perltoot",
  230. "perltrap","perltru64","perltw","perlunicode","perluniintro","perlutil",
  231. "perluts","perlvar","perlvmesa","perlvms","perlvos","perlwin32","perlxs",
  232. "perlxstut","perror","petri","pf2afm","pfb2pfa","pfbtopfa","pfbtops","pflogsumm"
  233. ,"pftp","pg","pgawk","pg_config","pg_controldata","pg_ctl","pg_dump",
  234. "pg_dumpall","pgrep","pg_resetxlog","pg_restore","pgtclsh","phosphor","php",
  235. "pic","pic2graph","pic2tpic","pico","piconv","piecewise","pi-getram","pi-getrom"
  236. ,"pilot","pilot-addresses","pilot-foto","pilot-xfer","pine","pinfo","pinky",
  237. "pipes","pk2bm","pkcs12","pkcs7","pkcs8","pkg-clean","pkg-config","pkg-size",
  238. "pkill","pktogf","pktype","pl2pm","play","playdv","plaympeg","pltotf","pmake",
  239. "pman","pmap","pnm2ppa","pnmflip","pod2html","pod2latex","pod2man","pod2text",
  240. "pod2usage","podchecker","podselect","policytool","polyhedra","polyominoes",
  241. "polytopes","pong","pooltype","pop3test","popd","POST","postalias","postcat",
  242. "postconf","postdrop","postfix","postgres","postkick","postlock","postlog",
  243. "postmap","postmaster","postqueue","postsuper","ppm2tiff","ppmcolors","ppmtomap"
  244. ,"pptemplate","pqlist","pqrm","pqstat","pr","pr3287","printafm","printenv",
  245. "printf","privoxy","procmail","profiles","prove","providence","proxymngr",
  246. "prune","ps","ps2ascii","ps2epsi","ps2frag","ps2pdf12","ps2pdf13","ps2pdf",
  247. "ps2pdfwr","ps2pk","ps2ps","psbook","psed","pserver","psfaddtable","psfgettable"
  248. ,"psfstriptable","psfxtable","pslatex","psmandup","psmerge","psnup","psorder",
  249. "psql","psresize","psselect","psset","pstack","pstops","pstree","pstruct",
  250. "pswrap","ptx","pulsar","pushd","pvf","pvfamp","pvfcut","pvfecho","pvffft",
  251. "pvffile","pvfmix","pvfreverse","pvfsine","pvfspeed","pvftoau","pvftobasic",
  252. "pvftolin","pvftormd","pvftovoc","pvftowav","pvm","PVM","pvmd","pvmd3",
  253. "pvm_intro","pvm_shmd","pwd","pyro","python","qix","qpkg","qshape","queens",
  254. "quickpkg","quota","radclient","radeapclient","radlast","radtest","radwho",
  255. "radzap","rand","ranlib","ras2tiff","raw2tiff","rbash","rcp","rcs","rcsclean",
  256. "rcsdiff","rcsintro","rcsmerge","rdate","rd-bomb","rdesktop","rdist","rdjpgcom",
  257. "read","readcd","readelf","read-expenses","read-ical","readlink","read-notepad",
  258. "readonly","read-palmpix","readprofile","read-todos","rec","recode","recon",
  259. "recountdiff","red","rediff","refer","rename","replace","repoman","req","reset",
  260. "resize","restorefont","restorepalette","restoretextmode","return","rev","revdep-rebuild","revpath","rexec","rfcomm","rgb2ycbcr","ripemd160","ripples","rjoe",
  261. "rlog","rlogin","rm","rman","rmdfile","rmdic","rmdir","rmdtopvf","rmdtovbox",
  262. "rmic","rmid","rmiregistry","rnews","rngtest","rocks","rorschach","rotor",
  263. "rotzoomer","rpcclient","rpdump","rpload","rsa","rsautl","rsh","rstart",
  264. "rstartd","rsvg","rsync","rtf2rtf","rubibtex","rubik","ruby18","ruby",
  265. "rumakeindex","runcon","rundig","runscript","runtest","runuser","runx","rup",
  266. "ruptime","rusers","rvi","rview","rvim","rwall","rwho","rz","s2p","sabcmd",
  267. "safe_mysqld","sa-learn","sane-config","saned","sane-find-scanner","sar","sash",
  268. "savetextmode","sballs","scanadf","scanimage","scanpci","sccmap","scgcheck",
  269. "s_client","scm2scm","scp","screen","script","scrollkeeper-config","scrollkeeper-gen-seriesid","scs2ascii","scs2pdf","scs2ps","scsitape","sdiff","sdptool","sed"
  270. ,"sendiso","sendmail.postfix","sensors","seq","serialver","servertool","sess_id"
  271. ,"session-properties","sessreg","set","setfacl","setfattr","setleds","setmclk",
  272. "setmetamode","setterm","setxkbmap","sff2g3","sftp","sfxload","sg","sgi2tiff",
  273. "sgml2html","sgml2info","sgml2latex","sgml2lyx","sgml2rtf","sgml2txt","sgml2xml"
  274. ,"sgmlcheck","sgmldiff","sgmlnorm","sgmlpre","sgmlsasp","sh","sha1","sha",
  275. "sha1sum","shadebobs","shar","shift","shlock","shopt","showfont","showkey",
  276. "showrgb","shred","shrinkfile","sierpinski","sierpinski3d","sieveshell",
  277. "simpleftp","single2bin","sivtest","size","skill","skkinput","slabtop","sleep",
  278. "sliceprint","slidescreen","slip","slist","slocate","slogin","slrn","smbcacls",
  279. "smbclient","smbcontrol","smbcquotas","smbget","smbsh","smbstatus","smbtar",
  280. "smbtree","smime","smproxy","smtp-sink","smtp-source","smtptest","sndfile-convert","sndfile-info","sndfile-play","snice","snmpbulkget","snmpbulkwalk",
  281. "snmpcmd","snmpdelta","snmpdf","snmpget","snmpgetnext","snmpinform",
  282. "snmpnetstat","snmpset","snmpstatus","snmptable","snmptest","snmptranslate",
  283. "snmptrap","snmpusm","snmpvacm","snmpwalk","sodipodi","soelim","sonar","sort",
  284. "source","sox","soxexam","soxmix","spam","spamassassin","spamc","spamd","speed",
  285. "speedmine","speexdec","speexenc","spent","sphere","spheremonics","spiral",
  286. "spkac","splain","splint","split","splitdiff","splitword","spotlight","sprof",
  287. "sproingies","sq","squiral","srptool","ssconvert","s_server","ssh","ssh-add",
  288. "ssh-agent","ssh-keygen","ssh-keyscan","ssl-passwd","sslpasswd","sslrand",
  289. "sslswamp","stairs","star","starfish","startfluxbox","startinnfeed","startx",
  290. "starwars","stat","states","statserial","s_time","stonerview","strace","strange"
  291. ,"strings","strip","stty","su","sum","superquadrics","suspend","svgakeymap",
  292. "svn","svnadmin","svndumpfilter","svnlook","svnversion","swirl","switch2",
  293. "switchdesk","switchto","sxpm","sync","synclient","syndaemon","system-config-httpd","systool","sz","t1mapper","t3d","tac","tack","tail","tailf","talk",
  294. "tangle","tapeinfo","tar","taskset","tbl","tclsh","tcsh","tee","telnet",
  295. "tempfile","test","testlibraw","testparm","testprns","tethereal","tex",
  296. "texconfig","texdoc","texdoctk","texexec","texhash","texi2dvi","texi2dvi4a2ps",
  297. "texi2html","texi2pdf","texindex","texshow","text2pcap","texteroids","textmode",
  298. "texutil","tfmtodit","tftopl","tftp","thornbird","thumbnail","thumbpdf","tic",
  299. "tickadj","tie","tiff2bw","tiff2pdf","tiff2ps","tiff2rgba","tiffcmp","tiffcp",
  300. "tiffdither","tiffdump","tiffgt","tiffinfo","tiffmedian","tiffsplit","tiffsv",
  301. "time","timeout","times","timidity","tkill","tknewsbiff","tload","tn5250",
  302. "tnameserv","toe","tomac","top","totem","touch","tping","tput","tr","transfig",
  303. "trap","tred","tree","triangle","troff","truchet","true","tryaffix","tsclient",
  304. "tset","tsort","ttcp","tty","tvtime","tvtime-command","tvtime-configure","tvtime-scanner","twang","twm","twopi","type","typeset","ucs2any","uic","uil","ul",
  305. "ulimit","umask","umb-scheme","unalias","uname","unbin","unbuffer","uncompress",
  306. "unexpand","unflatten","unhex","unicode_start","unicode_stop","uniq","units",
  307. "unix2dos","unlink","unset","unshar","unsingle","unsq","unwrapdiff","unzip",
  308. "unzipsfx","updatedb","update-mime-database","updmap","uptime","urlview",
  309. "userinfo","usermount","userpasswd","users","usleep","uucp","uudecode",
  310. "uuencode","uufilter","uuidgen","uustat","uux","vacation","vacuumdb","vbox",
  311. "vboxbeep","vboxconvert","vboxctrl","vboxmode","vboxplay","vboxtoau","vcut",
  312. "vdir","vdltodmx","vedit","verify","vermiculate","version","vfstest","vftovp",
  313. "vi","vidwhacker","view","viewfax","viewres","vim","vimdiff","vimtutor","vines",
  314. "virmf","virmpost","viromega","virtex","vlock","vncconfig","vncpasswd",
  315. "vncserver","vncviewer","voctopvf","volname","vorbiscomment","vptovf","vtysh",
  316. "w","w3m","w3mman","waimea","wait","wall","Wand-config","wander","watch",
  317. "wavtopvf","wbinfo","wc","weave","webalizer","webcollage","wftopfa","wget",
  318. "whatis","whereis","which","whirlwindwarp","whirlygig","who","whoami","whois",
  319. "wine","wipe","wish","wmclockmon","wmcpuload","wmxmms","wordtrans","wordview",
  320. "worm","wormhole","wrestool","write","wrjpgcom","wtoc","wvdial","wvdialconf",
  321. "x0vncserver","x11perf","x11perfcomp","x3270","x3270if","x3270-script","x509",
  322. "x86info","xanalogtv","xanim","xargs","xaumix","xauth","xbiff","xcalc","xcam",
  323. "xcdroast","xcftopnm","xclipboard","xclock","xcmsdb","xconsole","xcscope",
  324. "xcursorgen","xcutsel","xdelta","xditview","xdm","Xdmx","xdmxconfig","xdpyinfo",
  325. "xdriinfo","xdvi","xdvizilla","xedit","xemacs","xepsf","xev","xeyes","xf86cfg",
  326. "xf86config","xfd","xfig","xfindproxy","xflame","xfontsel","XFree86","xfs",
  327. "xfsinfo","xfwp","xgamma","xgc","xgettext","xhfs","xhost","xine-config","xinit",
  328. "xisdnload","xjack","xkbcomp","xkbevd","xkbprint","xkibitz","xkill","xload",
  329. "xloadimage","xlogo","xls2csv","xlsatoms","xlsclients","xlsfonts","xlyap","xmag"
  330. ,"xman","Xmark","xmatrix","xmbind","xmessage","xmh","xmkmf","xml2-config",
  331. "xmlcatalog","xml_grep","xmlif","xmllint","xml_pp","xmlsec1","xmlsec1-config",
  332. "xml_spellcheck","xmlto","xmlwf","xmms","xmodmap","xmonisdn","Xnest","xon",
  333. "Xorg","xorgcfg","xorgconfig","xosview","xpdf","xprop","xrandr","xrayswarm",
  334. "xrdb","xrefresh","xrestop","xsane","xscreensaver","xscreensaver-command",
  335. "xscreensaver-demo","xscreensaver-getimage","xscreensaver-getimage-file",
  336. "xscreensaver-getimage-video","xscreensaver-gl-helper","Xserver","xset","xsetbg"
  337. ,"xsetmode","xsetpointer","xsetroot","xsltproc","xsm","xsnow","xspirograph",
  338. "xstdcmap","xsublim","xsubpp","xteevee","xterm","xtrap","xtrapchar","xtrapin",
  339. "xtrapinfo","xtrapout","xtrapproto","xtrapreset","xtrapstats","Xvfb","xvidtune",
  340. "xview","xvinfo","Xvnc","xwd","xwininfo","xwintoppm","xwud","xxd","yacc","yapp",
  341. "yes","ypcat","ypchfn","ypchsh","ypdomainname","ypmatch","yppasswd","ypwhich",
  342. "ytalk","zcat","zcmp","zdiff","zenity","zforce","zgrep","zip","zipgrep",
  343. "zipinfo","zless","zmore","znew","zoom","zplay","zsh","zshall","zshbuiltins",
  344. "zshcompctl","zshcompsys","zshcompwid","zshcontrib","zshexpn","zshmisc",
  345. "zshmodules","zshoptions","zshparam","zshtcpsys","zshzftpsys","zshzle","zsoelim"
  346. }
  347. man2_items = Set {
  348. "accept","access","acct","adjtimex","afs_syscall","alarm","alloc_hugepages",
  349. "arch_prctl","bdflush","bind","break","brk","cacheflush","capget","capset",
  350. "chdir","chmod","chown","chroot","clone","close","connect","creat",
  351. "create_module","DC_CTX_new","DC_PLUG_new","DC_PLUG_read","DC_SERVER_new",
  352. "delete_module","dup2","dup","epoll_create","epoll_ctl","epoll_wait","execve",
  353. "_exit","fchdir","fchmod","fchown","fcntl","fdatasync","fgetxattr","flistxattr",
  354. "flock","fork","free_hugepages","fremovexattr","fsetxattr","fstat","fstatfs",
  355. "fstatvfs","fsync","ftruncate","futex","getcontext","getdents","getdomainname",
  356. "getdtablesize","getegid","geteuid","getgid","getgroups","gethostid",
  357. "gethostname","getitimer","get_kernel_syms","getpagesize","getpeername",
  358. "getpgid","getpgrp","getpid","getpmsg","getppid","getpriority","getresgid",
  359. "getresuid","getrlimit","getrusage","getsid","getsockname","getsockopt",
  360. "get_thread_area","gettid","gettimeofday","getuid","getxattr","gtty","idle",
  361. "inb","inb_p","init_module","inl","inl_p","insb","insl","insw","intro","inw",
  362. "inw_p","io_cancel","ioctl","ioctl_list","io_destroy","io_getevents","ioperm",
  363. "iopl","io_setup","io_submit","ipc","kill","killpg","lchown","lgetxattr","link",
  364. "listen","listxattr","llistxattr","_llseek","llseek","lock","lookup_dcookie",
  365. "lremovexattr","lseek","lsetxattr","lstat","madvise","mbind","mincore","mkdir",
  366. "mknod","mlock.2","mlock","mlockall.2","mlockall","mmap2","mmap","modify_ldt",
  367. "mount","mprotect","mpx","mremap","msgctl","msgget","msgop","msgrcv","msgsnd",
  368. "msync","munlock","munlockall","munmap","NAL_ADDRESS_new","NAL_BUFFER_new",
  369. "NAL_CONNECTION_new","NAL_decode_uint32","NAL_LISTENER_new","NAL_SELECTOR_new",
  370. "nanosleep","_newselect","nfsservctl","nice","obsolete","oldfstat","oldlstat",
  371. "oldolduname","oldstat","olduname","open","outb","outb_p","outl","outl_p",
  372. "outsb","outsl","outsw","outw","outw_p","pause","pciconfig_iobase",
  373. "pciconfig_read","pciconfig_write","personality","pipe","pivot_root","poll",
  374. "posix_fadvise","prctl","pread","prof","pselect","ptrace","putpmsg","pwrite",
  375. "query_module","quotactl","read","readahead","readdir","readlink","readv",
  376. "reboot","recv","recvfrom","recvmsg","remap_file_pages","removexattr","rename",
  377. "rmdir","sbrk","sched_getaffinity","sched_getparam","sched_get_priority_max",
  378. "sched_get_priority_min","sched_getscheduler","sched_rr_get_interval",
  379. "sched_setaffinity","sched_setparam","sched_setscheduler","sched_yield",
  380. "security","select","select_tut","semctl","semget","semop","semtimedop","send",
  381. "sendfile","sendmsg","sendto","setcontext","setdomainname","setegid","seteuid",
  382. "setfsgid","setfsuid","setgid","setgroups","sethostid","sethostname","setitimer"
  383. ,"set_mempolicy","setpgid","setpgrp","setpriority","setregid","setresgid",
  384. "setresuid","setreuid","setrlimit","setsid","setsockopt","set_thread_area",
  385. "settimeofday","setuid","setup","setxattr","sgetmask","shmat","shmctl","shmdt",
  386. "shmget","shmop","shutdown","sigaction","sigaltstack","sigblock","siggetmask",
  387. "sigmask","signal","sigpause","sigpending","sigprocmask","sigqueue","sigreturn",
  388. "sigsetmask","sigsuspend","sigtimedwait","sigvec","sigwaitinfo","socket",
  389. "socketcall","socketpair","ssetmask","sstk","stat","statfs","statvfs","stime",
  390. "stty","swapoff","swapon","symlink","sync","syscall","syscalls","_sysctl",
  391. "sysctl","sysfs","sysinfo","syslog","time","times","tkill","truncate","tux",
  392. "umask","umount2","umount","uname","undocumented","unimplemented","unlink",
  393. "uselib","ustat","utime","utimes","vfork","vhangup","vm86","wait","wait3",
  394. "wait4","waitpid","write","writev"
  395. }
  396. function getURL(token, manId)
  397. url='http://www.linuxmanpages.com/man'..manId .. '/' .. token .. '.'..manId..'.php'
  398. if (HL_OUTPUT== HL_FORMAT_HTML or HL_OUTPUT == HL_FORMAT_XHTML) then
  399. return '<a class="hl" target="new" href="' .. url .. '">'.. token .. '</a>'
  400. elseif (HL_OUTPUT == HL_FORMAT_LATEX) then
  401. return '\\href{'..url..'}{'..token..'}'
  402. elseif (HL_OUTPUT == HL_FORMAT_RTF) then
  403. return '{{\\field{\\*\\fldinst HYPERLINK "'..url..'" }\\fldrslt \\ul\\ulc0 '..token..'}}'
  404. end
  405. end
  406. function Decorate(token, state)
  407. if state~=HL_KEYWORD and state ~=HL_STANDARD then return end
  408. if man1_items[token] then
  409. return getURL(token, 1)
  410. elseif man2_items[token] then
  411. return getURL(token, 2)
  412. end
  413. end
  414. end
  415. function themeUpdate(desc)
  416. if (HL_OUTPUT == HL_FORMAT_HTML or HL_OUTPUT == HL_FORMAT_XHTML) then
  417. Injections[#Injections+1]="a.hl, a.hl:visited {color:inherit;font-weight:inherit;}"
  418. elseif (HL_OUTPUT==HL_FORMAT_LATEX) then
  419. Injections[#Injections+1]="\\usepackage[colorlinks=false, pdfborderstyle={/S/U/W 1}]{hyperref}"
  420. end
  421. end
  422. --The Plugins array assigns code chunks to themes or language definitions.
  423. --The chunks are interpreted after the theme or lang file were parsed,
  424. --so you can refer to elements of these files
  425. Plugins={
  426. { Type="lang", Chunk=syntaxUpdate },
  427. { Type="theme", Chunk=themeUpdate },
  428. }