diff --git a/runtime/syntax/bst.vim b/runtime/syntax/bst.vim
new file mode 100644
index 0000000..3feefec
--- /dev/null
+++ b/runtime/syntax/bst.vim
@@ -0,0 +1,85 @@
+" Vim syntax file
+" Language:     BibTeX Bibliography Style
+" Maintainer:   Tim Pope <vim@rebelongto.us>
+" Last Change:  2006 Apr 27
+" Filenames:    *.bst
+" $Id$
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+    syntax clear
+elseif exists("b:current_syntax")
+    finish
+endif
+
+if version < 600
+    command -nargs=1 SetIsk set iskeyword=<args>
+else
+    command -nargs=1 SetIsk setlocal iskeyword=<args>
+endif
+SetIsk 48-57,#,$,',.,A-Z,a-z
+delcommand SetIsk
+
+syn case ignore
+
+syn region  bstString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=bstField,bstType
+syn match   bstNumber         "#-\=\d\+\>"
+syn keyword bstNumber         entry.max$ global.max$
+syn match   bstComment        "%.*"
+
+syn keyword bstCommand        ENTRY FUNCTION INTEGERS MACRO STRINGS
+syn keyword bstCommand        READ EXECUTE ITERATE REVERSE SORT
+syn match   bstBuiltIn        "\s[-<>=+*]\|\s:="
+syn keyword bstBuiltIn        add.period$
+syn keyword bstBuiltIn        call.type$ change.case$ chr.to.int$ cite$
+syn keyword bstBuiltIn        duplicate$ empty$ format.name$
+syn keyword bstBuiltIn        if$ int.to.chr$ int.to.str$
+syn keyword bstBuiltIn        missing$
+syn keyword bstBuiltIn        newline$ num.names$
+syn keyword bstBuiltIn        pop$ preamble$ purify$ quote$
+syn keyword bstBuiltIn        skip$ stack$ substring$ swap$
+syn keyword bstBuiltIn        text.length$ text.prefix$ top$ type$
+syn keyword bstBuiltIn        warning$ while$ width$ write$
+syn match   bstIdentifier     "'\k*"
+syn keyword bstType           article book booklet conference
+syn keyword bstType           inbook incollection inproceedings
+syn keyword bstType           manual mastersthesis misc
+syn keyword bstType           phdthesis proceedings
+syn keyword bstType           techreport unpublished
+syn keyword bstField          abbr address annote author
+syn keyword bstField          booktitle chapter crossref comment
+syn keyword bstField          edition editor
+syn keyword bstField          howpublished institution journal key month
+syn keyword bstField          note number
+syn keyword bstField          organization
+syn keyword bstField          pages publisher
+syn keyword bstField          school series
+syn keyword bstField          title type
+syn keyword bstField          volume year
+
+" Define the default highlighting.
+" For version 5.7 and earlier: only when not done already
+" For version 5.8 and later: only when an item doesn't have highlighting yet
+if version >= 508 || !exists("did_bst_syn_inits")
+    if version < 508
+        let did_bst_syn_inits = 1
+        command -nargs=+ HiLink hi link <args>
+    else
+        command -nargs=+ HiLink hi def link <args>
+    endif
+
+    HiLink bstComment           Comment
+    HiLink bstString            String
+    HiLink bstCommand           PreProc
+    HiLink bstBuiltIn           Statement
+    HiLink bstField             Special
+    HiLink bstNumber            Number
+    HiLink bstType              Type
+    HiLink bstIdentifier        Identifier
+    delcommand HiLink
+endif
+
+let b:current_syntax = "bst"
+
+" vim:set ft=vim sts=4 sw=4:
