1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: DocBook 3071d4279SBram Moolenaar" Maintainer: Devin Weaver <[email protected]> 42df58b4aSBram Moolenaar" Last Updated By: Shlomi Fish 5071d4279SBram Moolenaar" URL: http://tritarget.com/pub/vim/syntax/docbk.vim 62df58b4aSBram Moolenaar" Last Change: 2012 Nov 28 72df58b4aSBram Moolenaar" Version: 1.2 (and modified after that) 8071d4279SBram Moolenaar" Thanks to Johannes Zellner <[email protected]> for the default to XML 9071d4279SBram Moolenaar" suggestion. 10071d4279SBram Moolenaar 11071d4279SBram Moolenaar" REFERENCES: 12071d4279SBram Moolenaar" http://docbook.org/ 13071d4279SBram Moolenaar" http://www.open-oasis.org/docbook/ 14071d4279SBram Moolenaar" 15071d4279SBram Moolenaar 1689bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1789bcfda6SBram Moolenaarif exists("b:current_syntax") 18071d4279SBram Moolenaar finish 19071d4279SBram Moolenaarendif 20071d4279SBram Moolenaar 21071d4279SBram Moolenaar" Auto detect added by Bram Moolenaar 22071d4279SBram Moolenaarif !exists('b:docbk_type') 23071d4279SBram Moolenaar if expand('%:e') == "sgml" 24071d4279SBram Moolenaar let b:docbk_type = 'sgml' 25071d4279SBram Moolenaar else 26071d4279SBram Moolenaar let b:docbk_type = 'xml' 27071d4279SBram Moolenaar endif 28071d4279SBram Moolenaarendif 292df58b4aSBram Moolenaar 302df58b4aSBram Moolenaarif !exists('b:docbk_ver') 312df58b4aSBram Moolenaar if exists('docbk_ver') 322df58b4aSBram Moolenaar let b:docbk_ver = docbk_ver 332df58b4aSBram Moolenaar else 342df58b4aSBram Moolenaar let b:docbk_ver = 4 352df58b4aSBram Moolenaar endif 362df58b4aSBram Moolenaarend 372df58b4aSBram Moolenaar 38071d4279SBram Moolenaarif 'xml' == b:docbk_type 3947cc7522SBram Moolenaar doau Syntax xml 40071d4279SBram Moolenaar syn cluster xmlTagHook add=docbkKeyword 41071d4279SBram Moolenaar syn cluster xmlRegionHook add=docbkRegion,docbkTitle,docbkRemark,docbkCite 42071d4279SBram Moolenaar syn case match 43071d4279SBram Moolenaarelseif 'sgml' == b:docbk_type 4447cc7522SBram Moolenaar doau Syntax sgml 45071d4279SBram Moolenaar syn cluster sgmlTagHook add=docbkKeyword 46071d4279SBram Moolenaar syn cluster sgmlRegionHook add=docbkRegion,docbkTitle,docbkRemark,docbkCite 47071d4279SBram Moolenaar syn case ignore 48071d4279SBram Moolenaarendif 49071d4279SBram Moolenaar 502df58b4aSBram Moolenaarsyn keyword docbkKeyword abbrev abstract accel acronym address contained 512df58b4aSBram Moolenaarsyn keyword docbkKeyword affiliation alt anchor answer appendix contained 522df58b4aSBram Moolenaarsyn keyword docbkKeyword application area areaset areaspec arg contained 532df58b4aSBram Moolenaarsyn keyword docbkKeyword article artpagenums attribution audiodata contained 542df58b4aSBram Moolenaarsyn keyword docbkKeyword audioobject author authorgroup contained 552df58b4aSBram Moolenaarsyn keyword docbkKeyword authorinitials bibliocoverage bibliodiv contained 562df58b4aSBram Moolenaarsyn keyword docbkKeyword biblioentry bibliography biblioid contained 572df58b4aSBram Moolenaarsyn keyword docbkKeyword bibliolist bibliomisc bibliomixed contained 582df58b4aSBram Moolenaarsyn keyword docbkKeyword bibliomset biblioref bibliorelation contained 592df58b4aSBram Moolenaarsyn keyword docbkKeyword biblioset bibliosource blockquote book contained 602df58b4aSBram Moolenaarsyn keyword docbkKeyword bridgehead callout calloutlist caption contained 612df58b4aSBram Moolenaarsyn keyword docbkKeyword caution chapter citation citebiblioid contained 622df58b4aSBram Moolenaarsyn keyword docbkKeyword citerefentry citetitle city classname contained 632df58b4aSBram Moolenaarsyn keyword docbkKeyword classsynopsis classsynopsisinfo cmdsynopsis contained 642df58b4aSBram Moolenaarsyn keyword docbkKeyword co code col colgroup collab colophon contained 652df58b4aSBram Moolenaarsyn keyword docbkKeyword colspec command computeroutput confdates contained 662df58b4aSBram Moolenaarsyn keyword docbkKeyword confgroup confnum confsponsor conftitle contained 672df58b4aSBram Moolenaarsyn keyword docbkKeyword constant constructorsynopsis contractnum contained 682df58b4aSBram Moolenaarsyn keyword docbkKeyword contractsponsor contrib copyright coref contained 692df58b4aSBram Moolenaarsyn keyword docbkKeyword country database date dedication contained 702df58b4aSBram Moolenaarsyn keyword docbkKeyword destructorsynopsis edition editor email contained 712df58b4aSBram Moolenaarsyn keyword docbkKeyword emphasis entry entrytbl envar epigraph contained 722df58b4aSBram Moolenaarsyn keyword docbkKeyword equation errorcode errorname errortext contained 732df58b4aSBram Moolenaarsyn keyword docbkKeyword errortype example exceptionname fax contained 742df58b4aSBram Moolenaarsyn keyword docbkKeyword fieldsynopsis figure filename firstname contained 752df58b4aSBram Moolenaarsyn keyword docbkKeyword firstterm footnote footnoteref contained 76071d4279SBram Moolenaarsyn keyword docbkKeyword foreignphrase formalpara funcdef funcparams contained 77071d4279SBram Moolenaarsyn keyword docbkKeyword funcprototype funcsynopsis funcsynopsisinfo contained 782df58b4aSBram Moolenaarsyn keyword docbkKeyword function glossary glossdef glossdiv contained 792df58b4aSBram Moolenaarsyn keyword docbkKeyword glossentry glosslist glosssee glossseealso contained 802df58b4aSBram Moolenaarsyn keyword docbkKeyword glossterm group guibutton guiicon guilabel contained 81071d4279SBram Moolenaarsyn keyword docbkKeyword guimenu guimenuitem guisubmenu hardware contained 822df58b4aSBram Moolenaarsyn keyword docbkKeyword holder honorific imagedata imageobject contained 832df58b4aSBram Moolenaarsyn keyword docbkKeyword imageobjectco important index indexdiv contained 842df58b4aSBram Moolenaarsyn keyword docbkKeyword indexentry indexterm informalequation contained 852df58b4aSBram Moolenaarsyn keyword docbkKeyword informalexample informalfigure contained 862df58b4aSBram Moolenaarsyn keyword docbkKeyword informaltable initializer inlineequation contained 872df58b4aSBram Moolenaarsyn keyword docbkKeyword inlinemediaobject interfacename issuenum contained 882df58b4aSBram Moolenaarsyn keyword docbkKeyword itemizedlist itermset jobtitle keycap contained 892df58b4aSBram Moolenaarsyn keyword docbkKeyword keycode keycombo keysym keyword keywordset contained 902df58b4aSBram Moolenaarsyn keyword docbkKeyword label legalnotice lineage lineannotation contained 912df58b4aSBram Moolenaarsyn keyword docbkKeyword link listitem literal literallayout contained 922df58b4aSBram Moolenaarsyn keyword docbkKeyword manvolnum markup mathphrase mediaobject contained 932df58b4aSBram Moolenaarsyn keyword docbkKeyword member menuchoice methodname methodparam contained 942df58b4aSBram Moolenaarsyn keyword docbkKeyword methodsynopsis modifier mousebutton msg contained 952df58b4aSBram Moolenaarsyn keyword docbkKeyword msgaud msgentry msgexplan msginfo msglevel contained 962df58b4aSBram Moolenaarsyn keyword docbkKeyword msgmain msgorig msgrel msgset msgsub contained 972df58b4aSBram Moolenaarsyn keyword docbkKeyword msgtext note olink ooclass ooexception contained 982df58b4aSBram Moolenaarsyn keyword docbkKeyword oointerface option optional orderedlist contained 992df58b4aSBram Moolenaarsyn keyword docbkKeyword orgdiv orgname otheraddr othercredit contained 1002df58b4aSBram Moolenaarsyn keyword docbkKeyword othername package pagenums para paramdef contained 1012df58b4aSBram Moolenaarsyn keyword docbkKeyword parameter part partintro personblurb contained 1022df58b4aSBram Moolenaarsyn keyword docbkKeyword personname phone phrase pob postcode contained 1032df58b4aSBram Moolenaarsyn keyword docbkKeyword preface primary primaryie printhistory contained 1042df58b4aSBram Moolenaarsyn keyword docbkKeyword procedure productname productnumber contained 1052df58b4aSBram Moolenaarsyn keyword docbkKeyword programlisting programlistingco prompt contained 1062df58b4aSBram Moolenaarsyn keyword docbkKeyword property pubdate publisher publishername contained 1072df58b4aSBram Moolenaarsyn keyword docbkKeyword qandadiv qandaentry qandaset question quote contained 1082df58b4aSBram Moolenaarsyn keyword docbkKeyword refclass refdescriptor refentry contained 109071d4279SBram Moolenaarsyn keyword docbkKeyword refentrytitle reference refmeta refmiscinfo contained 110071d4279SBram Moolenaarsyn keyword docbkKeyword refname refnamediv refpurpose refsect1 contained 1112df58b4aSBram Moolenaarsyn keyword docbkKeyword refsect2 refsect3 refsection refsynopsisdiv contained 1122df58b4aSBram Moolenaarsyn keyword docbkKeyword releaseinfo remark replaceable returnvalue contained 1132df58b4aSBram Moolenaarsyn keyword docbkKeyword revdescription revhistory revision contained 1142df58b4aSBram Moolenaarsyn keyword docbkKeyword revnumber revremark row sbr screen screenco contained 1152df58b4aSBram Moolenaarsyn keyword docbkKeyword screenshot secondary secondaryie sect1 contained 1162df58b4aSBram Moolenaarsyn keyword docbkKeyword sect2 sect3 sect4 sect5 section see seealso contained 1172df58b4aSBram Moolenaarsyn keyword docbkKeyword seealsoie seeie seg seglistitem contained 1182df58b4aSBram Moolenaarsyn keyword docbkKeyword segmentedlist segtitle seriesvolnums set contained 1192df58b4aSBram Moolenaarsyn keyword docbkKeyword setindex shortaffil shortcut sidebar contained 1202df58b4aSBram Moolenaarsyn keyword docbkKeyword simpara simplelist simplemsgentry contained 1212df58b4aSBram Moolenaarsyn keyword docbkKeyword simplesect spanspec state step contained 1222df58b4aSBram Moolenaarsyn keyword docbkKeyword stepalternatives street subject subjectset contained 1232df58b4aSBram Moolenaarsyn keyword docbkKeyword subjectterm subscript substeps subtitle contained 1242df58b4aSBram Moolenaarsyn keyword docbkKeyword superscript surname symbol synopfragment contained 1252df58b4aSBram Moolenaarsyn keyword docbkKeyword synopfragmentref synopsis systemitem table contained 1262df58b4aSBram Moolenaarsyn keyword docbkKeyword task taskprerequisites taskrelated contained 1272df58b4aSBram Moolenaarsyn keyword docbkKeyword tasksummary tbody td term termdef tertiary contained 1282df58b4aSBram Moolenaarsyn keyword docbkKeyword tertiaryie textdata textobject tfoot tgroup contained 1292df58b4aSBram Moolenaarsyn keyword docbkKeyword th thead tip title titleabbrev toc tocentry contained 1302df58b4aSBram Moolenaarsyn keyword docbkKeyword token tr trademark type uri userinput contained 131071d4279SBram Moolenaarsyn keyword docbkKeyword varargs variablelist varlistentry varname contained 1322df58b4aSBram Moolenaarsyn keyword docbkKeyword videodata videoobject void volumenum contained 1332df58b4aSBram Moolenaarsyn keyword docbkKeyword warning wordasword xref year contained 1342df58b4aSBram Moolenaar 1352df58b4aSBram Moolenaarif b:docbk_ver == 4 1362df58b4aSBram Moolenaar syn keyword docbkKeyword ackno action appendixinfo articleinfo contained 1372df58b4aSBram Moolenaar syn keyword docbkKeyword authorblurb beginpage bibliographyinfo contained 1382df58b4aSBram Moolenaar syn keyword docbkKeyword blockinfo bookinfo chapterinfo contained 1392df58b4aSBram Moolenaar syn keyword docbkKeyword collabname corpauthor corpcredit contained 1402df58b4aSBram Moolenaar syn keyword docbkKeyword corpname glossaryinfo graphic graphicco contained 1412df58b4aSBram Moolenaar syn keyword docbkKeyword highlights indexinfo inlinegraphic contained 1422df58b4aSBram Moolenaar syn keyword docbkKeyword interface invpartnumber isbn issn lot contained 1432df58b4aSBram Moolenaar syn keyword docbkKeyword lotentry medialabel mediaobjectco contained 1442df58b4aSBram Moolenaar syn keyword docbkKeyword modespec objectinfo partinfo contained 1452df58b4aSBram Moolenaar syn keyword docbkKeyword prefaceinfo pubsnumber refentryinfo contained 1462df58b4aSBram Moolenaar syn keyword docbkKeyword referenceinfo refsect1info refsect2info contained 1472df58b4aSBram Moolenaar syn keyword docbkKeyword refsect3info refsectioninfo contained 1482df58b4aSBram Moolenaar syn keyword docbkKeyword refsynopsisdivinfo screeninfo sect1info contained 1492df58b4aSBram Moolenaar syn keyword docbkKeyword sect2info sect3info sect4info sect5info contained 1502df58b4aSBram Moolenaar syn keyword docbkKeyword sectioninfo setindexinfo setinfo contained 1512df58b4aSBram Moolenaar syn keyword docbkKeyword sgmltag sidebarinfo structfield contained 1522df58b4aSBram Moolenaar syn keyword docbkKeyword structname tocback tocchap tocfront contained 1532df58b4aSBram Moolenaar syn keyword docbkKeyword toclevel1 toclevel2 toclevel3 toclevel4 contained 1542df58b4aSBram Moolenaar syn keyword docbkKeyword toclevel5 tocpart ulink contained 1552df58b4aSBram Moolenaar 1562df58b4aSBram Moolenaarelse 1572df58b4aSBram Moolenaar syn keyword docbkKeyword acknowledgements annotation arc contained 1582df58b4aSBram Moolenaar syn keyword docbkKeyword constraint constraintdef cover contained 1592df58b4aSBram Moolenaar syn keyword docbkKeyword extendedlink givenname info lhs locator contained 1602df58b4aSBram Moolenaar syn keyword docbkKeyword multimediaparam nonterminal org person contained 1612df58b4aSBram Moolenaar syn keyword docbkKeyword production productionrecap contained 1622df58b4aSBram Moolenaar syn keyword docbkKeyword productionset rhs tag tocdiv topic contained 1632df58b4aSBram Moolenaar 1642df58b4aSBram Moolenaarendif 165071d4279SBram Moolenaar 166071d4279SBram Moolenaar" Add special emphasis on some regions. Thanks to Rory Hunter <[email protected]> for these ideas. 167071d4279SBram Moolenaarsyn region docbkRegion start="<emphasis>"lc=10 end="</emphasis>"me=e-11 contains=xmlRegion,xmlEntity,sgmlRegion,sgmlEntity keepend 168071d4279SBram Moolenaarsyn region docbkTitle start="<title>"lc=7 end="</title>"me=e-8 contains=xmlRegion,xmlEntity,sgmlRegion,sgmlEntity keepend 169071d4279SBram Moolenaarsyn region docbkRemark start="<remark>"lc=8 end="</remark>"me=e-9 contains=xmlRegion,xmlEntity,sgmlRegion,sgmlEntity keepend 170071d4279SBram Moolenaarsyn region docbkRemark start="<comment>"lc=9 end="</comment>"me=e-10 contains=xmlRegion,xmlEntity,sgmlRegion,sgmlEntity keepend 171071d4279SBram Moolenaarsyn region docbkCite start="<citation>"lc=10 end="</citation>"me=e-11 contains=xmlRegion,xmlEntity,sgmlRegion,sgmlEntity keepend 172071d4279SBram Moolenaar 173071d4279SBram Moolenaar" Define the default highlighting. 17489bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 175071d4279SBram Moolenaarhi def DocbkBold term=bold cterm=bold gui=bold 176071d4279SBram Moolenaar 177*f37506f6SBram Moolenaarhi def link docbkKeyword Statement 178*f37506f6SBram Moolenaarhi def link docbkRegion DocbkBold 179*f37506f6SBram Moolenaarhi def link docbkTitle Title 180*f37506f6SBram Moolenaarhi def link docbkRemark Comment 181*f37506f6SBram Moolenaarhi def link docbkCite Constant 182071d4279SBram Moolenaar 183071d4279SBram Moolenaar 184071d4279SBram Moolenaarlet b:current_syntax = "docbk" 185071d4279SBram Moolenaar 186071d4279SBram Moolenaar" vim: ts=8 187