xref: /vim-8.2.3635/runtime/syntax/bst.vim (revision f37506f6)
1437df8f4SBram Moolenaar" Vim syntax file
2437df8f4SBram Moolenaar" Language:     BibTeX Bibliography Style
3c81e5e79SBram Moolenaar" Maintainer:   Tim Pope <[email protected]>
4437df8f4SBram Moolenaar" Filenames:    *.bst
55c73622aSBram Moolenaar" $Id: bst.vim,v 1.2 2007/05/05 18:24:42 vimboss Exp $
6437df8f4SBram Moolenaar
789bcfda6SBram Moolenaar" quit when a syntax file was already loaded
889bcfda6SBram Moolenaarif exists("b:current_syntax")
9437df8f4SBram Moolenaar    finish
10437df8f4SBram Moolenaarendif
11437df8f4SBram Moolenaar
1289bcfda6SBram Moolenaarsetlocal iskeyword=48-57,#,$,',.,A-Z,a-z
13437df8f4SBram Moolenaar
14437df8f4SBram Moolenaarsyn case ignore
15437df8f4SBram Moolenaar
16c81e5e79SBram Moolenaarsyn match   bstString +"[^"]*\%("\|$\)+ contains=bstField,bstType,bstError
17c81e5e79SBram Moolenaar" Highlight the last character of an unclosed string, but only when the cursor
18c81e5e79SBram Moolenaar" is not beyond it (i.e., it is still being edited). Imperfect.
19c81e5e79SBram Moolenaarsyn match   bstError     '[^"]\%#\@!$' contained
20c81e5e79SBram Moolenaar
21437df8f4SBram Moolenaarsyn match   bstNumber         "#-\=\d\+\>"
22437df8f4SBram Moolenaarsyn keyword bstNumber         entry.max$ global.max$
23437df8f4SBram Moolenaarsyn match   bstComment        "%.*"
24437df8f4SBram Moolenaar
25437df8f4SBram Moolenaarsyn keyword bstCommand        ENTRY FUNCTION INTEGERS MACRO STRINGS
26437df8f4SBram Moolenaarsyn keyword bstCommand        READ EXECUTE ITERATE REVERSE SORT
27437df8f4SBram Moolenaarsyn match   bstBuiltIn        "\s[-<>=+*]\|\s:="
28437df8f4SBram Moolenaarsyn keyword bstBuiltIn        add.period$
29437df8f4SBram Moolenaarsyn keyword bstBuiltIn        call.type$ change.case$ chr.to.int$ cite$
30437df8f4SBram Moolenaarsyn keyword bstBuiltIn        duplicate$ empty$ format.name$
31437df8f4SBram Moolenaarsyn keyword bstBuiltIn        if$ int.to.chr$ int.to.str$
32437df8f4SBram Moolenaarsyn keyword bstBuiltIn        missing$
33437df8f4SBram Moolenaarsyn keyword bstBuiltIn        newline$ num.names$
34437df8f4SBram Moolenaarsyn keyword bstBuiltIn        pop$ preamble$ purify$ quote$
35437df8f4SBram Moolenaarsyn keyword bstBuiltIn        skip$ stack$ substring$ swap$
36437df8f4SBram Moolenaarsyn keyword bstBuiltIn        text.length$ text.prefix$ top$ type$
37437df8f4SBram Moolenaarsyn keyword bstBuiltIn        warning$ while$ width$ write$
38437df8f4SBram Moolenaarsyn match   bstIdentifier     "'\k*"
39437df8f4SBram Moolenaarsyn keyword bstType           article book booklet conference
40437df8f4SBram Moolenaarsyn keyword bstType           inbook incollection inproceedings
41437df8f4SBram Moolenaarsyn keyword bstType           manual mastersthesis misc
42437df8f4SBram Moolenaarsyn keyword bstType           phdthesis proceedings
43437df8f4SBram Moolenaarsyn keyword bstType           techreport unpublished
44437df8f4SBram Moolenaarsyn keyword bstField          abbr address annote author
45437df8f4SBram Moolenaarsyn keyword bstField          booktitle chapter crossref comment
46437df8f4SBram Moolenaarsyn keyword bstField          edition editor
47437df8f4SBram Moolenaarsyn keyword bstField          howpublished institution journal key month
48437df8f4SBram Moolenaarsyn keyword bstField          note number
49437df8f4SBram Moolenaarsyn keyword bstField          organization
50437df8f4SBram Moolenaarsyn keyword bstField          pages publisher
51437df8f4SBram Moolenaarsyn keyword bstField          school series
52437df8f4SBram Moolenaarsyn keyword bstField          title type
53437df8f4SBram Moolenaarsyn keyword bstField          volume year
54437df8f4SBram Moolenaar
55437df8f4SBram Moolenaar" Define the default highlighting.
5689bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
57437df8f4SBram Moolenaar
58*f37506f6SBram Moolenaarhi def link bstComment           Comment
59*f37506f6SBram Moolenaarhi def link bstString            String
60*f37506f6SBram Moolenaarhi def link bstCommand           PreProc
61*f37506f6SBram Moolenaarhi def link bstBuiltIn           Statement
62*f37506f6SBram Moolenaarhi def link bstField             Special
63*f37506f6SBram Moolenaarhi def link bstNumber            Number
64*f37506f6SBram Moolenaarhi def link bstType              Type
65*f37506f6SBram Moolenaarhi def link bstIdentifier        Identifier
66*f37506f6SBram Moolenaarhi def link bstError             Error
67437df8f4SBram Moolenaar
68437df8f4SBram Moolenaarlet b:current_syntax = "bst"
69437df8f4SBram Moolenaar
70437df8f4SBram Moolenaar" vim:set ft=vim sts=4 sw=4:
71