aboutsummaryrefslogtreecommitdiff
path: root/runtime/syntax/pyrex.vim
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2014-07-11 04:05:51 +0000
committerJustin M. Keyes <justinkz@gmail.com>2014-07-29 02:12:31 +0000
commita98a6996c291b3e300d27b791eded9eed333d677 (patch)
tree51d92f6cac128f938cd0aaa9a8dd0ce7a83d63a9 /runtime/syntax/pyrex.vim
parent66bc13163398786c88e20b7cdd61c66978b4d3fb (diff)
downloadrneovim-a98a6996c291b3e300d27b791eded9eed333d677.tar.gz
rneovim-a98a6996c291b3e300d27b791eded9eed333d677.tar.bz2
rneovim-a98a6996c291b3e300d27b791eded9eed333d677.zip
re-integrate runtime/ vim-patch:0 #938
Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7 Excluding: Amiga icons (*.info, icons/) doc/hangulin.txt tutor/ spell/ lang/ (only used for menu translations) macros/maze/, macros/hanoi/, macros/life/, macros/urm/ These were used to test vi compatibility. termcap "Demonstration of a termcap file (for the Amiga and Archimedes)" Helped-by: Rich Wareham <rjw57@cam.ac.uk> Helped-by: John <john.schmidt.h@gmail.com> Helped-by: Yann <yann@yann-salaun.com> Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com> Helped-by: drasill <github@tof2k.com> Helped-by: Tae Sandoval Murgan <taecilla@gmail.com> Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>
Diffstat (limited to 'runtime/syntax/pyrex.vim')
-rw-r--r--runtime/syntax/pyrex.vim67
1 files changed, 67 insertions, 0 deletions
diff --git a/runtime/syntax/pyrex.vim b/runtime/syntax/pyrex.vim
new file mode 100644
index 0000000000..7dc9b955b0
--- /dev/null
+++ b/runtime/syntax/pyrex.vim
@@ -0,0 +1,67 @@
+" Vim syntax file
+" Language: Pyrex
+" Maintainer: Marco Barisione <marco.bari@people.it>
+" URL: http://marcobari.altervista.org/pyrex_vim.html
+" Last Change: 2009 Nov 09
+
+" 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
+
+" Read the Python syntax to start with
+if version < 600
+ so <sfile>:p:h/python.vim
+else
+ runtime! syntax/python.vim
+ unlet b:current_syntax
+endif
+
+" Pyrex extentions
+syn keyword pyrexStatement cdef typedef ctypedef sizeof
+syn keyword pyrexType int long short float double char object void
+syn keyword pyrexType signed unsigned
+syn keyword pyrexStructure struct union enum
+syn keyword pyrexInclude include cimport
+syn keyword pyrexAccess public private property readonly extern
+" If someome wants Python's built-ins highlighted probably he
+" also wants Pyrex's built-ins highlighted
+if exists("python_highlight_builtins") || exists("pyrex_highlight_builtins")
+ syn keyword pyrexBuiltin NULL
+endif
+
+" This deletes "from" from the keywords and re-adds it as a
+" match with lower priority than pyrexForFrom
+syn clear pythonInclude
+syn keyword pythonInclude import
+syn match pythonInclude "from"
+
+" With "for[^:]*\zsfrom" VIM does not match "for" anymore, so
+" I used the slower "\@<=" form
+syn match pyrexForFrom "\(for[^:]*\)\@<=from"
+
+" Default highlighting
+if version >= 508 || !exists("did_pyrex_syntax_inits")
+ if version < 508
+ let did_pyrex_syntax_inits = 1
+ command -nargs=+ HiLink hi link <args>
+ else
+ command -nargs=+ HiLink hi def link <args>
+ endif
+ HiLink pyrexStatement Statement
+ HiLink pyrexType Type
+ HiLink pyrexStructure Structure
+ HiLink pyrexInclude PreCondit
+ HiLink pyrexAccess pyrexStatement
+ if exists("python_highlight_builtins") || exists("pyrex_highlight_builtins")
+ HiLink pyrexBuiltin Function
+ endif
+ HiLink pyrexForFrom Statement
+
+ delcommand HiLink
+endif
+
+let b:current_syntax = "pyrex"