blob: c15b96de6f1f8788428772425ec4298bc36ab329 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: GDB command files
3" Maintainer: Claudio Fleiner <claudio@fleiner.com>
4" URL: http://www.fleiner.com/vim/syntax/gdb.vim
Bram Moolenaar519cc552021-11-16 19:18:26 +00005" Last Change: 2021 Nov 15
6" Additional changes by Simon Sobisch
Bram Moolenaar071d4272004-06-13 20:20:40 +00007
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02008" quit when a syntax file was already loaded
9if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +000010 finish
11endif
12
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +020013let s:cpo_save = &cpo
14set cpo&vim
15
Bram Moolenaar071d4272004-06-13 20:20:40 +000016syn 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
Bram Moolenaar519cc552021-11-16 19:18:26 +000025syn keyword gdbStatement contained complete condition continue delete detach directory disable disas[semble] disp[lay] down
Bram Moolenaar071d4272004-06-13 20:20:40 +000026syn 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
Bram Moolenaar519cc552021-11-16 19:18:26 +000028syn 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
Bram Moolenaar071d4272004-06-13 20:20:40 +000030syn keyword gdbStatement contained stop target tbreak tdump tfind thbreak thread tp trace tstart tstatus tstop
Bram Moolenaar519cc552021-11-16 19:18:26 +000031syn keyword gdbStatement contained tty und[isplay] unset until up watch whatis where while ws x
Bram Moolenaar071d4272004-06-13 20:20:40 +000032syn match gdbFuncDef "\<define\>.*"
Viktor Szépe3fc7a7e2023-08-23 21:20:00 +020033syn match gdbStatementContainer "^\s*\S\+" contains=gdbStatement,gdbFuncDef
Bram Moolenaar071d4272004-06-13 20:20:40 +000034syn match gdbStatement "^\s*info" nextgroup=gdbInfo skipwhite skipempty
35
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +020036" some commonly used abbreviations
Bram Moolenaar519cc552021-11-16 19:18:26 +000037syn keyword gdbStatement c cont p py
Bram Moolenaar071d4272004-06-13 20:20:40 +000038
Bram Moolenaar5c736222010-01-06 20:54:52 +010039syn region gdbDocument matchgroup=gdbFuncDef start="\<document\>.*$" matchgroup=gdbFuncDef end="^end\s*$"
Bram Moolenaar071d4272004-06-13 20:20:40 +000040
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
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +020069syn match gdbComment "^\s*#.*" contains=@Spell
Bram Moolenaar071d4272004-06-13 20:20:40 +000070
71syn match gdbVariable "\$\K\k*"
72
73" Strings and constants
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +020074syn region gdbString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
Bram Moolenaar071d4272004-06-13 20:20:40 +000075syn 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.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020088" Only when an item doesn't have highlighting yet
Bram Moolenaarf37506f2016-08-31 22:22:10 +020089hi 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
Bram Moolenaar071d4272004-06-13 20:20:40 +000099
100let b:current_syntax = "gdb"
101
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +0200102let &cpo = s:cpo_save
103unlet s:cpo_save
Bram Moolenaar071d4272004-06-13 20:20:40 +0000104" vim: ts=8