File: xs.vim

package info (click to toggle)
vim 2%3A7.2.445%2Bhg~cb94c42c0e1a-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 44,812 kB
  • ctags: 26,838
  • sloc: ansic: 285,828; cpp: 3,253; makefile: 3,044; perl: 1,160; awk: 715; sh: 667; xml: 508; lisp: 501; cs: 458; asm: 114; python: 28; csh: 6
file content (39 lines) | stat: -rw-r--r-- 1,251 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
" Vim syntax file
" Language:     XS (Perl extension interface language)
" Maintainer:   Andy Lester <andy@petdance.com>
" URL:          http://github.com/petdance/vim-perl
" Last Change:  2009-08-14

" Quit when a syntax file was already loaded
if exists("b:current_syntax")
    finish
endif

" Read the C syntax to start with
runtime! syntax/c.vim

" XS extentions
" TODO: Figure out how to look for trailing '='.
syn keyword xsKeyword   MODULE PACKAGE PREFIX
syn keyword xsKeyword   OUTPUT: CODE: INIT: PREINIT: INPUT:
syn keyword xsKeyword   PPCODE: REQUIRE: CLEANUP: BOOT:
syn keyword xsKeyword   VERSIONCHECK: PROTOTYPES: PROTOTYPE:
syn keyword xsKeyword   ALIAS: INCLUDE: CASE:
" TODO: Figure out how to look for trailing '('.
syn keyword xsMacro     SV EXTEND PUSHs
syn keyword xsVariable  RETVAL NO_INIT
"syn match xsCast       "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*<"me=e-1
"syn match xsCast       "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*$"

" Define the default highlighting, but only when an item doesn't have highlighting yet
command -nargs=+ HiLink hi def link <args>

HiLink xsKeyword    Keyword
HiLink xsMacro      Macro
HiLink xsVariable   Identifier

delcommand HiLink

let b:current_syntax = "xs"

" vim: ts=8