1 " Vim syntax file for Simics command line scripts
2 " Language: Simics command line
3 " Maintainer: Bjoern Doebel
4 " Last Change: 2010 Oct 29
6 if exists("b:current_syntax")
14 syn keyword simicsStatement a alias api-search add-data-to-script-pipe and apropos add-directory api-apropos auto-partition-configuration add-module-directory api-help
15 syn keyword simicsStatement b bookmark break-cr break-heap break-log bin break break-exception break-io
16 syn keyword simicsStatement c cb cba cc cd change-namespace check-cell-partitioning clear-directories clear-recorder cmdline. cmdline_term. cn command-history
17 syn keyword simicsStatement command-list configuration-shortest-paths connect connect-central connect-components connect-real-network connect-real-network-bridge connect-real-network-host connect-real-network-napt
18 syn keyword simicsStatement connect-real-network-port-in connect-real-network-port-out connect-real-network-router continue continue-cycles continue-seconds copy-connector
19 syn keyword simicsStatement copyright cpu-switch-time create-script-barrier create-script-pipe current-namespace current-processor cycle-break cycle-break-absolute
20 syn keyword simicsStatement da date dec default-port-forward-target defined delete delete-bookmark devs digit-grouping dirs disable disable-hypersim disable-magic-breakpoint disable-mtprof
21 syn keyword simicsStatement disable-multithreading disable-page-sharing disable-real-time-mode disable-reverse-execution disassemble disassemble-settings disconnect disconnect-real-network
22 syn keyword simicsStatement disconnect-real-network-port-in disconnect-real-network-port-out display dstc-disable dstc-enable
23 syn keyword simicsStatement echo else enable enable-core2-bugfix enable-hypersim enable-magic-breakpoint enable-mtprof enable-multithreading enable-page-sharing
24 syn keyword simicsStatement enable-real-time-mode enable-reverse-execution env except exec exit expect
25 syn keyword simicsStatement foreach
26 syn keyword simicsStatement get get-breakpoint-list get-class-list get-component-list get-component-prefix get-error-command
27 syn keyword simicsStatement get-error-file get-error-line get-error-message get-object-list get-set-no-inquiry
28 syn keyword simicsStatement h help help-search hex hl hypersim-status
29 syn keyword simicsStatement ib if ifm ignore in in-list info-breakpoints instantiate-components instruction-fetch-mode
30 syn keyword simicsStatement interrupt-script interrupt-script-branch io-stats iostc-disable iostc-enable istc-disable istc-enable
31 syn keyword simicsStatement l2p license list-attributes list-bookmarks list-breakpoints list-classes list-components list-directories list-failed-modules list-hap-callbacks list-haps list-hypersim-patterns
32 syn keyword simicsStatement list-length list-modules list-namespaces list-objects list-port-forwarding-setup list-preferences list-script-branches list-variables list-vars
33 syn keyword simicsStatement load-binary load-file load-module load-persistent-state local log log-level log-setup log-size log-type logical-to-physical lookup-file ls
34 syn keyword simicsStatement magic-breakpoint-enabled match-string man max min module-list module-list-failed module-list-refresh move-object
35 syn keyword simicsStatement native-path network-helper new-attr-meter new-central-server new-context new-context-switcher new-cpu-mode-tracker
36 syn keyword simicsStatement new-etg new-file-cdrom new-freescale-hv-tracker new-gdb-remote new-glink new-hap-meter new-host-cdrom new-hypersim-pattern-matcher
37 syn keyword simicsStatement new-linux-process-tracker new-mem-traffic-meter new-ose-process-tracker new-qnx-process-tracker new-realtime new-serial-link new-symtable
38 syn keyword simicsStatement new-time-server new-tracer new-usb-disk-from-image new-vxworks-process-tracker new-wdb-remote new-wr-hyper-tracker not
39 syn keyword simicsStatement object-exists oct or output-file-start output-file-stop output-radix
40 syn keyword simicsStatement p pdisable penable peq pid pipe popd pow prefs. pregs print print-event-queue
41 syn keyword simicsStatement print-time psel pselect pstatus ptime pushd pwd python python.
42 syn keyword simicsStatement q quit
43 syn keyword simicsStatement r range rc read-configuration read-reg read-variable readme resolve-file restart-simics rev reverse reverse-cycles reverse-step-instruction
44 syn keyword simicsStatement reverse-to revto rexec-> rexec-limit rexec.get-attribute-list rexec.get-interface-list rexec.get-interface-port-list rexec.list-attributes
45 syn keyword simicsStatement rexec.list-interfaces rexec.log rexec.log-group rexec.log-level rexec.log-size rexec.log-type rlimit rstepi run run-command-file
46 syn keyword simicsStatement run-cycles run-python-file run-seconds
47 syn keyword simicsStatement save-component-template save-persistent-state save-preferences sb sba sc script-branch script-pipe-has-data search set set-bookmark
48 syn keyword simicsStatement set-component-prefix set-context set-memory-limit set-min-latency set-pattern set-pc set-prefix set-substr set-thread-limit shell si
49 syn keyword simicsStatement signed signed16 signed32 signed64 signed8 sim-> sim-break sim-break-absolute sim.get-attribute-list sim.get-interface-list sim.get-interface-port-list
50 syn keyword simicsStatement sim.info sim.list-attributes sim.list-interfaces sim.log sim.log-group sim.log-level sim.log-size sim.log-type sim.status skip-to
51 syn keyword simicsStatement split-string stc-status step-break step-break-absolute step-cycle step-instruction stepi stop sync-info system-info system-perfmeter system-perfmeter-plot
52 syn keyword simicsStatement telnet-frontend trace-breakpoint trace-cr trace-exception trace-hap trace-io try
53 syn keyword simicsStatement unbreak unbreak-cr unbreak-exception unbreak-hap unbreak-io undisplay unload-module unset unstep-instruction
54 syn keyword simicsStatement untrace-breakpoint untrace-cr untrace-exception untrace-hap use-old-bool untrace-io
55 syn keyword simicsStatement version
56 syn keyword simicsStatement wait-for-breakpoint wait-for-hap wait-for-script-pipe wait-for-script-barrier wait-for-variable while win-about win-command-line
57 syn keyword simicsStatement win-command-list win-configuration-view win-console win-cpu-registers win-control win-device-registers win-disassembly win-hap-list
58 syn keyword simicsStatement win-help win-memory win-memory-browser win-object-browser win-plot win-preferences win-stack-trace win-source-view win-user-plot write-configuration write-reg
59 syn keyword simicsStatement x
61 syn keyword simicsTodo XXX TODO FIXME
63 syn region String start=+"+ skip=+\\"+ end=+"+
65 syn match simicsComment /#.*/ contains=simicsTodo
67 syn match simicsVariable "$[a-zA-Z_][a-zA-Z0-9_]*"
68 syn match simicsVariable "%[a-zA-Z_][a-zA-Z0-9_]*%"
70 syn match simicsNumber "\d\+"
71 syn match simicsNumber "0x\x\+"
74 syn match simicsPlatformRegister "%e\?\(ax\|bx\|cx\|di\|dx\|flags\|si\|bp\|ip\|sp\)"
75 syn match simicsPlatformRegister "%\(ah\|al\|bh\|bl\|ch\|cl\|dh\|dl\)"
76 syn match simicsPlatformRegister "%\(cpl\|cr0\|cr2\|cr3\|cr4\)"
77 syn match simicsPlatformRegister "%[cdefgs]s\(_\(attr\|base\|limit\)\)*"
79 " XXX: add other platforms
81 hi def link simicsStatement Statement
82 hi def link simicsComment Comment
83 hi def link String String
84 hi def link simicsVariable Identifier
85 hi def link simicsPlatformRegister Special
86 hi def link simicsTodo Todo
87 hi def link simicsNumber Number
89 let b:current_syntax = "simics"