summaryrefslogtreecommitdiff
path: root/runtime/syntax/objcpp.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/objcpp.vim')
-rw-r--r--runtime/syntax/objcpp.vim31
1 files changed, 31 insertions, 0 deletions
diff --git a/runtime/syntax/objcpp.vim b/runtime/syntax/objcpp.vim
new file mode 100644
index 000000000..5ce380cc7
--- /dev/null
+++ b/runtime/syntax/objcpp.vim
@@ -0,0 +1,31 @@
+" Vim syntax file
+" Language: ObjC++
+" Maintainer: Anthony Hodsdon <ahodsdon@fastmail.fm>
+" Last change: 2003 Apr 25
+
+" 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 in C++ and ObjC syntax files
+if version < 600
+ so <sfile>:p:h/cpp.vim
+ so <sflie>:p:h/objc.vim
+else
+ runtime! syntax/cpp.vim
+ unlet b:current_syntax
+ runtime! syntax/objc.vim
+endif
+
+" Note that we already have a region for method calls ( [objc_class method] )
+" by way of cBracket.
+syn region objCFunc start="^\s*[-+]" end="$" contains=ALLBUT,cErrInParen,cErrInBracket
+
+syn keyword objCppNonStructure class template namespace transparent contained
+syn keyword objCppNonStatement new delete friend using transparent contained
+
+let b:current_syntax = "objcpp"