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