xref: /vim-8.2.3635/runtime/syntax/gdb.vim (revision 36e294c0)
1" Vim syntax file
2" Language:	GDB command files
3" Maintainer:	Claudio Fleiner <[email protected]>
4" URL:		http://www.fleiner.com/vim/syntax/gdb.vim
5" Last Change:	2012 Oct 05
6
7" For version 5.x: Clear all syntax items
8" For version 6.x: Quit when a syntax file was already loaded
9if version < 600
10  syntax clear
11elseif exists("b:current_syntax")
12  finish
13endif
14
15let s:cpo_save = &cpo
16set cpo&vim
17
18syn keyword gdbInfo contained address architecture args breakpoints catch common copying dcache
19syn keyword gdbInfo contained display files float frame functions handle line
20syn keyword gdbInfo contained locals program registers scope set sharedlibrary signals
21syn keyword gdbInfo contained source sources stack symbol target terminal threads
22syn keyword gdbInfo contained syn keyword tracepoints types udot variables warranty watchpoints
23syn match gdbInfo contained "all-registers"
24
25
26syn keyword gdbStatement contained actions apply attach awatch backtrace break bt call catch cd clear collect commands
27syn keyword gdbStatement contained complete condition continue delete detach directory disable disassemble display down
28syn keyword gdbStatement contained echo else enable end file finish frame handle hbreak help if ignore
29syn keyword gdbStatement contained inspect jump kill list load maintenance make next nexti ni output overlay
30syn keyword gdbStatement contained passcount path print printf ptype pwd quit rbreak remote return run rwatch
31syn keyword gdbStatement contained search section set sharedlibrary shell show si signal source step stepi stepping
32syn keyword gdbStatement contained stop target tbreak tdump tfind thbreak thread tp trace tstart tstatus tstop
33syn keyword gdbStatement contained tty undisplay unset until up watch whatis where while ws x
34syn match gdbFuncDef "\<define\>.*"
35syn match gdbStatmentContainer "^\s*\S\+" contains=gdbStatement,gdbFuncDef
36syn match gdbStatement "^\s*info" nextgroup=gdbInfo skipwhite skipempty
37
38" some commonly used abbreviations
39syn keyword gdbStatement c disp undisp disas p
40
41syn region gdbDocument matchgroup=gdbFuncDef start="\<document\>.*$" matchgroup=gdbFuncDef end="^end\s*$"
42
43syn match gdbStatement "\<add-shared-symbol-files\>"
44syn match gdbStatement "\<add-symbol-file\>"
45syn match gdbStatement "\<core-file\>"
46syn match gdbStatement "\<dont-repeat\>"
47syn match gdbStatement "\<down-silently\>"
48syn match gdbStatement "\<exec-file\>"
49syn match gdbStatement "\<forward-search\>"
50syn match gdbStatement "\<reverse-search\>"
51syn match gdbStatement "\<save-tracepoints\>"
52syn match gdbStatement "\<select-frame\>"
53syn match gdbStatement "\<symbol-file\>"
54syn match gdbStatement "\<up-silently\>"
55syn match gdbStatement "\<while-stepping\>"
56
57syn keyword gdbSet annotate architecture args check complaints confirm editing endian
58syn keyword gdbSet environment gnutarget height history language listsize print prompt
59syn keyword gdbSet radix remotebaud remotebreak remotecache remotedebug remotedevice remotelogbase
60syn keyword gdbSet remotelogfile remotetimeout remotewritesize targetdebug variable verbose
61syn keyword gdbSet watchdog width write
62syn match gdbSet "\<auto-solib-add\>"
63syn match gdbSet "\<solib-absolute-prefix\>"
64syn match gdbSet "\<solib-search-path\>"
65syn match gdbSet "\<stop-on-solib-events\>"
66syn match gdbSet "\<symbol-reloading\>"
67syn match gdbSet "\<input-radix\>"
68syn match gdbSet "\<demangle-style\>"
69syn match gdbSet "\<output-radix\>"
70
71syn match gdbComment "^\s*#.*" contains=@Spell
72
73syn match gdbVariable "\$\K\k*"
74
75" Strings and constants
76syn region  gdbString		start=+"+  skip=+\\\\\|\\"+  end=+"+ contains=@Spell
77syn match   gdbCharacter	"'[^']*'" contains=gdbSpecialChar,gdbSpecialCharError
78syn match   gdbCharacter	"'\\''" contains=gdbSpecialChar
79syn match   gdbCharacter	"'[^\\]'"
80syn match   gdbNumber		"\<[0-9_]\+\>"
81syn match   gdbNumber		"\<0x[0-9a-fA-F_]\+\>"
82
83
84if !exists("gdb_minlines")
85  let gdb_minlines = 10
86endif
87exec "syn sync ccomment gdbComment minlines=" . gdb_minlines
88
89" Define the default highlighting.
90" For version 5.7 and earlier: only when not done already
91" For version 5.8 and later: only when an item doesn't have highlighting yet
92if version >= 508 || !exists("did_gdb_syn_inits")
93  if version < 508
94    let did_gdb_syn_inits = 1
95    command -nargs=+ HiLink hi link <args>
96  else
97    command -nargs=+ HiLink hi def link <args>
98  endif
99  HiLink gdbFuncDef	Function
100  HiLink gdbComment	Comment
101  HiLink gdbStatement	Statement
102  HiLink gdbString	String
103  HiLink gdbCharacter	Character
104  HiLink gdbVariable	Identifier
105  HiLink gdbSet		Constant
106  HiLink gdbInfo	Type
107  HiLink gdbDocument	Special
108  HiLink gdbNumber	Number
109  delcommand HiLink
110endif
111
112let b:current_syntax = "gdb"
113
114let &cpo = s:cpo_save
115unlet s:cpo_save
116" vim: ts=8
117