annotate runtime/syntax/cpp.vim @ 34:e170173ecb68 current-release

before ack base protocol.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 26 Nov 2008 15:02:10 +0900
parents 76efa0be13f1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
1 " Vim syntax file
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
2 " Language: C++
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
3 " Maintainer: Ken Shan <ccshan@post.harvard.edu>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
4 " Last Change: 2002 Jul 15
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
5
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
6 " For version 5.x: Clear all syntax items
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
7 " For version 6.x: Quit when a syntax file was already loaded
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
8 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
9 syntax clear
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
10 elseif exists("b:current_syntax")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
11 finish
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
12 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
13
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
14 " Read the C syntax to start with
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
15 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
16 so <sfile>:p:h/c.vim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
17 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
18 runtime! syntax/c.vim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
19 unlet b:current_syntax
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
20 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
21
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
22 " C++ extentions
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
23 syn keyword cppStatement new delete this friend using
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
24 syn keyword cppAccess public protected private
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
25 syn keyword cppType inline virtual explicit export bool wchar_t
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
26 syn keyword cppExceptions throw try catch
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
27 syn keyword cppOperator operator typeid
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
28 syn keyword cppOperator and bitor or xor compl bitand and_eq or_eq xor_eq not not_eq
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
29 syn match cppCast "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*<"me=e-1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
30 syn match cppCast "\<\(const\|static\|dynamic\|reinterpret\)_cast\s*$"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
31 syn keyword cppStorageClass mutable
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
32 syn keyword cppStructure class typename template namespace
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
33 syn keyword cppNumber NPOS
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
34 syn keyword cppBoolean true false
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
35
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
36 " The minimum and maximum operators in GNU C++
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
37 syn match cppMinMax "[<>]?"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
38
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
39 " Default highlighting
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
40 if version >= 508 || !exists("did_cpp_syntax_inits")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
41 if version < 508
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
42 let did_cpp_syntax_inits = 1
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
43 command -nargs=+ HiLink hi link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
44 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
45 command -nargs=+ HiLink hi def link <args>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
46 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
47 HiLink cppAccess cppStatement
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
48 HiLink cppCast cppStatement
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
49 HiLink cppExceptions Exception
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
50 HiLink cppOperator Operator
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
51 HiLink cppStatement Statement
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
52 HiLink cppType Type
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
53 HiLink cppStorageClass StorageClass
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
54 HiLink cppStructure Structure
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
55 HiLink cppNumber Number
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
56 HiLink cppBoolean Boolean
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
57 delcommand HiLink
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
58 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
59
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
60 let b:current_syntax = "cpp"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
61
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
62 " vim: ts=8