2014-07-10 21:05:51 -07:00
|
|
|
" 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
|
|
|
|
|
2017-04-28 12:06:44 -07:00
|
|
|
" quit when a syntax file was already loaded
|
|
|
|
if exists("b:current_syntax")
|
2014-07-10 21:05:51 -07:00
|
|
|
finish
|
|
|
|
endif
|
|
|
|
|
|
|
|
" Read the Python syntax to start with
|
2017-04-28 12:06:44 -07:00
|
|
|
runtime! syntax/python.vim
|
|
|
|
unlet b:current_syntax
|
2014-07-10 21:05:51 -07:00
|
|
|
|
|
|
|
" 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
|
2017-04-28 12:14:34 -07:00
|
|
|
hi def link pyrexStatement Statement
|
|
|
|
hi def link pyrexType Type
|
|
|
|
hi def link pyrexStructure Structure
|
|
|
|
hi def link pyrexInclude PreCondit
|
|
|
|
hi def link pyrexAccess pyrexStatement
|
2017-04-28 12:06:44 -07:00
|
|
|
if exists("python_highlight_builtins") || exists("pyrex_highlight_builtins")
|
2017-04-28 12:14:34 -07:00
|
|
|
hi def link pyrexBuiltin Function
|
2014-07-10 21:05:51 -07:00
|
|
|
endif
|
2017-04-28 12:14:34 -07:00
|
|
|
hi def link pyrexForFrom Statement
|
2017-04-28 12:06:44 -07:00
|
|
|
|
2014-07-10 21:05:51 -07:00
|
|
|
|
|
|
|
let b:current_syntax = "pyrex"
|