summaryrefslogtreecommitdiffstats
path: root/syntax/godefstack.vim
diff options
context:
space:
mode:
Diffstat (limited to 'syntax/godefstack.vim')
-rw-r--r--syntax/godefstack.vim22
1 files changed, 22 insertions, 0 deletions
diff --git a/syntax/godefstack.vim b/syntax/godefstack.vim
new file mode 100644
index 00000000..70936528
--- /dev/null
+++ b/syntax/godefstack.vim
@@ -0,0 +1,22 @@
+if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'go') == -1
+
+if exists("b:current_syntax")
+ finish
+endif
+
+syn match godefStackComment '^".*'
+syn match godefLinePrefix '^[>\s]\s' nextgroup=godefStackEntryNumber contains=godefStackCurrentPosition
+syn match godefStackEntryNumber '\d\+' nextgroup=godefStackFilename skipwhite
+syn match godefStackCurrentPosition '>' contained
+syn match godefStackFilename '[^|]\+' contained nextgroup=godefStackEntryLocation
+syn region godefStackEntryLocation oneline start='|' end='|' contained contains=godefStackEntryLocationNumber
+syn match godefStackEntryLocationNumber '\d\+' contained display
+
+let b:current_syntax = "godefstack"
+
+hi def link godefStackComment Comment
+hi def link godefStackCurrentPosition Special
+hi def link godefStackFilename Directory
+hi def link godefStackEntryLocationNumber LineNr
+
+endif