"Fossies" - the Fresh Open Source Software Archive

Member "vim-8.2.1354/runtime/syntax/bib.vim" (2 Aug 2020, 6004 Bytes) of package /linux/misc/vim-8.2.1354.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) vimscript source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 " Vim syntax file
    2 " Language: BibTeX (bibliographic database format for (La)TeX)
    3 " Maintainer:   Bernd Feige <Bernd.Feige@gmx.net>
    4 " Filenames:    *.bib
    5 " Last Change:  2017 Sep 29
    6 
    7 " Thanks to those who pointed out problems with this file or supplied fixes!
    8 
    9 " Initialization
   10 " ==============
   11 " quit when a syntax file was already loaded
   12 if exists("b:current_syntax")
   13   finish
   14 endif
   15 
   16 let s:cpo_save = &cpo
   17 set cpo&vim
   18 
   19 " Ignore case
   20 syn case ignore
   21 
   22 " Keywords
   23 " ========
   24 syn keyword bibType contained   article book booklet conference inbook
   25 syn keyword bibType contained   incollection inproceedings manual
   26 syn keyword bibType contained   mastersthesis misc phdthesis
   27 syn keyword bibType contained   proceedings techreport unpublished
   28 syn keyword bibType contained   string preamble
   29 
   30 syn keyword bibEntryKw contained    address annote author booktitle chapter
   31 syn keyword bibEntryKw contained    crossref edition editor howpublished
   32 syn keyword bibEntryKw contained    institution journal key month note
   33 syn keyword bibEntryKw contained    number organization pages publisher
   34 syn keyword bibEntryKw contained    school series title type volume year
   35 
   36 " biblatex keywords, cf. http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/biblatex.pdf
   37 syn keyword bibType contained   mvbook bookinbook suppbook collection mvcollection suppcollection
   38 syn keyword bibType contained   online patent periodical suppperiodical mvproceedings reference
   39 syn keyword bibType contained   mvreference inreference report set thesis xdata customa customb
   40 syn keyword bibType contained   customc customd custome customf electronic www artwork audio bibnote
   41 syn keyword bibType contained   commentary image jurisdiction legislation legal letter movie music
   42 syn keyword bibType contained   performance review software standard video
   43 
   44 syn keyword bibEntryKw contained    abstract isbn issn keywords url
   45 syn keyword bibEntryKw contained    addendum afterwordannotation annotation annotator authortype
   46 syn keyword bibEntryKw contained    bookauthor bookpagination booksubtitle booktitleaddon
   47 syn keyword bibEntryKw contained    commentator date doi editora editorb editorc editortype
   48 syn keyword bibEntryKw contained    editoratype editorbtype editorctype eid entrysubtype
   49 syn keyword bibEntryKw contained    eprint eprintclass eprinttype eventdate eventtitle
   50 syn keyword bibEntryKw contained    eventtitleaddon file foreword holder indextitle
   51 syn keyword bibEntryKw contained    introduction isan ismn isrn issue issuesubtitle
   52 syn keyword bibEntryKw contained    issuetitle iswc journalsubtitle journaltitle label
   53 syn keyword bibEntryKw contained    language library location mainsubtitle maintitle
   54 syn keyword bibEntryKw contained    maintitleaddon nameaddon origdate origlanguage
   55 syn keyword bibEntryKw contained    origlocation origpublisher origtitle pagetotal
   56 syn keyword bibEntryKw contained    pagination part pubstate reprinttitle shortauthor
   57 syn keyword bibEntryKw contained    shorteditor shorthand shorthandintro shortjournal
   58 syn keyword bibEntryKw contained    shortseries shorttitle subtitle titleaddon translator
   59 syn keyword bibEntryKw contained    urldate venue version volumes entryset execute gender
   60 syn keyword bibEntryKw contained    langid langidopts ids indexsorttitle options presort
   61 syn keyword bibEntryKw contained    related relatedoptions relatedtype relatedstring
   62 syn keyword bibEntryKw contained    sortkey sortname sortshorthand sorttitle sortyear xdata
   63 syn keyword bibEntryKw contained    xref namea nameb namec nameatype namebtype namectype
   64 syn keyword bibEntryKw contained    lista listb listc listd liste listf usera userb userc
   65 syn keyword bibEntryKw contained    userd usere userf verba verbb verbc archiveprefix pdf
   66 syn keyword bibEntryKw contained    primaryclass
   67 
   68 " Non-standard:
   69 " AMS mref http://www.ams.org/mref
   70 syn keyword bibNSEntryKw contained  mrclass mrnumber mrreviewer fjournal coden
   71 
   72 " Clusters
   73 " ========
   74 syn cluster bibVarContents  contains=bibUnescapedSpecial,bibBrace,bibParen,bibMath
   75 " This cluster is empty but things can be added externally:
   76 "syn cluster bibCommentContents
   77 
   78 " Matches
   79 " =======
   80 syn match bibUnescapedSpecial contained /[^\\][%&]/hs=s+1
   81 syn match bibKey contained /\s*[^ \t}="]\+,/hs=s,he=e-1 nextgroup=bibField
   82 syn match bibVariable contained /[^{}," \t=]/
   83 syn region bibComment start=/./ end=/^\s*@/me=e-1 contains=@bibCommentContents nextgroup=bibEntry
   84 syn region bibMath contained start=/\(\\\)\@<!\$/ end=/\$/ skip=/\(\\\$\)/
   85 syn region bibQuote contained start=/"/ end=/"/ skip=/\(\\"\)/ contains=@bibVarContents
   86 syn region bibBrace contained start=/{/ end=/}/ skip=/\(\\[{}]\)/ contains=@bibVarContents
   87 syn region bibParen contained start=/(/ end=/)/ skip=/\(\\[()]\)/ contains=@bibVarContents
   88 syn region bibField contained start="\S\+\s*=\s*" end=/[}),]/me=e-1 contains=bibEntryKw,bibNSEntryKw,bibBrace,bibParen,bibQuote,bibVariable
   89 syn region bibEntryData contained start=/[{(]/ms=e+1 end=/[})]/me=e-1 contains=bibKey,bibField,bibComment3
   90 " Actually, 5.8 <= Vim < 6.0 would ignore the `fold' keyword anyway, but Vim<5.8 would produce
   91 " an error, so we explicitly distinguish versions with and without folding functionality:
   92 syn region bibEntry start=/@\S\+\s*[{(]/ end=/^\s*[})]/ transparent fold contains=bibType,bibEntryData nextgroup=bibComment
   93 syn region bibComment2 start=/@Comment\s*[{(]/ end=/^\s*[})]/me=e-1 contains=@bibCommentContents nextgroup=bibEntry
   94 " biblatex style comments inside a bibEntry
   95 syn match bibComment3 "%.*"
   96 
   97 " Synchronization
   98 " ===============
   99 syn sync match All grouphere bibEntry /^\s*@/
  100 syn sync maxlines=200
  101 syn sync minlines=50
  102 
  103 " Highlighting defaults
  104 " =====================
  105 " Define the default highlighting.
  106 " Only when an item doesn't have highlighting yet
  107 
  108 hi def link bibType Identifier
  109 hi def link bibEntryKw  Statement
  110 hi def link bibNSEntryKw    PreProc
  111 hi def link bibKey      Special
  112 hi def link bibVariable Constant
  113 hi def link bibUnescapedSpecial Error
  114 hi def link bibComment  Comment
  115 hi def link bibComment2 Comment
  116 hi def link bibComment3 Comment
  117 
  118 let b:current_syntax = "bib"
  119 
  120 let &cpo = s:cpo_save
  121 unlet s:cpo_save