-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathelvis.syn
More file actions
1872 lines (1808 loc) · 85.7 KB
/
elvis.syn
File metadata and controls
1872 lines (1808 loc) · 85.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# elvis.syn -- stores descriptions of languages for use with ":display syntax"
# C++. In addition to the extra keywords, it also causes mixed-case words
# which begin with an uppercase letter to be displayed in the "otherfont".
# This is because those names are typically class names.
language c++
extension .C .cxx .cc .cpp .h .H .hxx .hh .hpp
foreign .c
keyword auto bool break case catch char class const const_cast continue default
keyword defined delete do double dynamic_cast else enum extern false far float
keyword friend for goto if inline int long namespace near new operator private
keyword protected public register reinterpret_cast return short signed sizeof
keyword static static_cast struct switch template this throw true try typedef
keyword typename union unsigned using virtual void volatile while
font variable -> .
comment //
comment /* */
preprocessor #
prepquote < >
function (
string "
character '
startword _
inword _
operator operator ~!%^&*+|-=[]<>/
other allcaps initialcaps initialpunct final_t
# ANSI C. Note that ".h" is not listed as a possible file name extension here
# since it could also be C++ code. The differences between the two are small,
# but if we must guess, then C++ is the better choice because C++ declarations
# use a lot of keywords which are absent from C.
language c
extension .c .ic .ec
foreign .h
keyword auto break case char const continue default delete defined do
keyword double else enum extern far float friend for goto if int long
keyword near register return short signed sizeof static struct switch
keyword typedef union unsigned void volatile while
font variable -> .
#comment //
comment /* */
preprocessor #
prepquote < >
function (
string "
character '
startword _
inword _
set hlobject="aL"
other allcaps final_t
#other allcaps final_t initialpunct
# Java. Note that ".jav" is offered as a possible file name extension for
# folks who're still using MS-DOS or Windows 3.1.
language java
extension .java .jav
keyword abstract boolean break byte byvalue case cast catch char class
keyword const continue default do double else extends false final finally
keyword float for future generic goto if implements import inner instanceof
keyword int interface long native new null operator outer package private
keyword protected public rest return short static super switch synchronized
keyword this throw throws transient true try var void volatile while
comment //
comment /* */
function (
string "
character '
startword _
inword _
other allcaps initialcaps
# Awk. This is actually for Thompson Automation's AWK compiler, which is
# somewhat beefier than the standard AWK interpreter.
language tawk awk
extension .awk
keyword BEGIN BEGINFILE END ENDFILE INIT break continue do else for function
keyword global if in local next return while
comment #
function (
string "
regexp /
useregexp (,~
other allcaps
# Imakefiles. This one is interesting because '#' is both the preprocessor
# character and the comment character. A '#' in the first column is displayed
# as a preprocessor directive, and anywhere else as the start of a comment.
# The '/' character can't appear at the start of a word because that would
# interfere with its use in /*...*/ comments. Note that this language appears
# before the "make" language, so "Imakefile" files won't be misrecognized as
# Makefiles.
language xmkmf imakefile
extension Imakefile
preprocessor #
comment #
comment /* */
startword .$
inword /.$()_
# Makefiles. Note that file names like "Makefile" & "makefile" are recognized.
# The keywords listed here are actually just common names for pseudo-targets.
# The word characters include anything that's commonly used in a filename.
# Any word followed by a : will be displayed in the functionfont.
language make
extension makefile makefile.in
keyword .PHONY .SUFFIXES .DEFAULT .PRECIOUS .IGNORE .SILENT
keyword .EXPORT_ALL_VARIABLES
keyword all again clean depend distclean install realclean uninstall
comment #
startword /.$_
inword /.$()_
function :
other allcaps
# Microsoft NMAKE-style makefiles. Microsoft's NMAKE uses ! to introduce
# preprocessor directives.
language nmake
extension .mak
comment #
preprocessor !
startword \.$
inword \.$()_
function :
# PostScript (with help from Hans Wessner)
language postscript ps
extension .ps .eps
keyword $error << = == >> FontDirectory GlobalFontDirectory ISOLatin1Encoding
keyword StandardEncoding UserObjects [ ] abs add aload anchorsearch and arc arcn
keyword arct arcto array ashow astore atan awidthshow begin bind bitshift
keyword bytesavailable cachestatus cancatmatrix ceiling chachestatus charpath
keyword clear cleardictstack cleartomark clip clippath closefile closepath
keyword colorimage concat condition copy copypage cos count countdictstack
keyword countexecstack counttomark cshow currentblackgeneration currentcmykcolor
keyword currentcolor currentcolorrendering currentcolorscreen currentcolorspace
keyword currentcolortransfer currentcontext currentdash currentdevparams
keyword currentdict currentfile currentflat currentfont currentglobal
keyword currentgray currentgstate currenthalftone currenthalftonepahse
keyword currenthsbcolor currentlinejoin currentlinewidth currentmatrix
keyword currentmiterlimit currentoverprint currentpacking currentpoint
keyword currentrgbcolor currentscreen currentstrokeadjust currentsystemparams
keyword currenttransfer currentundercolorremoval currentuserparams curveto
keyword cuttentobjectformat cuttentpagedevice cvi cvlit cvn cvr cvrs cvs cvx def
keyword defaultmatrix definefont defineresource defineusername defineuserobject
keyword deletefile detach deviceinfo dict div dtransform dup echo end eoclip
keyword eofill eovieclip eq erasepage error exch exec execform execuserobject
keyword executeonly executive exit exp false file filenameforall fileposition
keyword fill filter findencoding findfont findresource flattenpath floor flush
keyword flushfile for forall fork gcheck ge get getinterval globaldict glyphshow
keyword grestore grestoreall gsave gstate gt identmatrix idiv idtransform if
keyword ifelse image imagemask index ineofill infill initclip initgraphics
keyword initmatrix initviewclip instroke inueofill inufill inustroke
keyword invertmatrix itransform join known kshow languagelevel le length lineto
keyword ln load lock log loop lt makefont makepattern mark matrix maxlength mod
keyword monitor moveto mul ne neg newpath noaccess not notify null nulldevice or
keyword packedarray pathbbox pathforall pop print printobject product prompt
keyword pstack put putinterval quit rand rcheck rcurveto read readhexstring
keyword readline readonly readstring realtime rectclip rectfill rectstroke
keyword rectviewclip renamefile repeat resetfile resourceforall resourcestatus
keyword restore reversepath revision rlineto rmoveto roll rootfont rotate round
keyword rrand run save scale scalefont search selectfont serialnumber setbbox
keyword setblackgeneration setcachedevice setcachelimit setcacheparams
keyword setchacheparams setcharwidth setcmykcolor setcolor setcolorrendering
keyword setcolorscreen setcolorspace setcolortransfer setdash setdevparams
keyword setfileposition setflat setfont setglobal setgray sethalfonephase
keyword sethalftone sethsbcolor setlinecap setlinejoin setlinewidth setmatrix
keyword setmiterlimit setobectformat setoverprint setpacking setpagedevice
keyword setpattern setrgbcolor setscteen setstrokeadjust setsystemparams
keyword settransfer setundercolorremoval setuserparams setvmthreshold show
keyword showpage sin sqrt srand stack start startjob status statusdict stop
keyword stopped store string stringwidth stroke strokepath sub systemdict token
keyword transform translate true truncate type uappend ucache uchachstatus
keyword ueofill ufill undef undefinefont undefineresource undefineuserobject
keyword upath userdict usertime ustroke ustrokepath version viewclip
keyword viewclippath vmreclaim vmstatus wait wcheck wherer widthshow write
keyword writehexstring writeobject writestring wtranslation xcheck xor xshow
keyword xyshow yield
string ( )
backslash none
comment %
# Pascal. Note that Pascal supports two styles of multi-line comments, while
# Elvis only permits one multi-line style and many single-line styles. This
# version uses { } for the multi-line comments, and also pretends that (*
# markes the start of a single-line comment -- Elvis won't detect *)
language pascal
extension .p .pas
keyword and array begin boolean case char const delete div do downto else end
keyword false file for function get goto if in input insert integer interactive
keyword keyboard label maxint mod new nil not of or output packed procedure
keyword program put read readln real record repeat reset rewrite seek set
keyword string text then to true type until var while with write writeln
comment { }
comment (*
function (
string '
backslash none
ignorecase true
# Korn shell scripts. It also tries to format other Bourne-like shell scripts.
# Contributed by Gabriel Zachmann (zach@igd.fhg.de)
# Modified by S.K. to take advantage of new features of Elvis
# NOTE: The "elvis.arf" file also checks for "#!/bin/sh" on the first line,
# and uses this syntax then. Script names don't need to end with ".sh"
# Added extra words and put in lexical order - Walter Briscoe 1997/06/18
language ksh bash sh shV sh5
extension .sh
keyword $* $@ $# $? $- $$ $! & | ; [ ] < > ( )
keyword alias autoload bg break case cd continue do done echo elif else esac
keyword eval exec exit export false fc fg fi for getopts hash history
keyword if in integer jobs kill let newgrp nohup print pwd r read readonly
keyword select set shift source stop suspend test then time times trap type
keyword typeset ulimit umask unalias unset until wait whence while
function (
comment #
startword /?-*!.
inword /?*!.
# The following is more subtle than it looks. Elvis allows us to define two
# string quotes and one character quote, and sh needs all of them. But the
# choice of which bash quote to use as "character" is critical. Subcommands
# often span multiple lines, so ` must be a "string". Elvis uses backscanning
# to determine whether the top line of the display is a continuation of a
# string, and sometimes that doesn't work right. Characters can't span
# multiple lines in Elvis, so calling the more common type of quoting a
# "character" avoids that problem.
character "
string '
string `
strnewline indent
# TCL shell scripts.
# Contributed by Martin Mitchell (martin@debian.org)
# and Jeff Wang (jeffw@advance.com)
language tcl wish wish8.3
extension .tcl
comment #
keyword Balloon ButtonBox Control DirList ExFileSelectBox ExFileSelectDialog
keyword FileEntry HList LabelEntry LabelFrame NoteBook OptionMenu PanedWindow
keyword PopupMenu ScrolledHList ScrolledText ScrolledWindow Select StdButtonBox
keyword after append array auto_execok auto_load auto_mkindex auto_reset bell
keyword bind bindtags break button canvas case catch cd checkbutton clipboard
keyword close common concat constructor continue default destroy destructor
keyword else elseif entry eof error eval exec exit expr file fileevent flush
keyword focus for for_array_keys for_file for_recursive_glob foreach format
keyword frame gets glob global grab history if image in incr info inherit
keyword itcl_class join label lappend lindex linsert list listbox llength loop
keyword lower lrange lreplace lsearch lsort menu menubutton message method open
keyword option pack pid place proc protected public puts pwd radiobutton raise
keyword read regexp regsub rename return scale scan scrollbar seek selection
keyword send set source split string subst switch tell text then time tix tk
keyword tk_popup tkwait toplevel trace unknown unset update uplevel upvar while
keyword winfo wm [ ]
font declaration proc
color declaration like keyword
function {
startword &$_
inword _
string "
other allcaps
# Modula-2
# Contributed by Peter Funk (pf@artcom0.north.de)
language modula2
extension .mod .def .mi .md
keyword + - * / = := & | <> <= >= .. : ; { } [ ]
keyword AND ARRAY BEGIN BY CASE CONST DEFINITION DIV DO ELSE ELSIF END
keyword EXIT EXPORT FOR FROM IF IMPLEMENTATION IMPORT IN LOOP MOD MODULE
keyword NOT OF OR POINTER PROCEDURE QUALIFIED RECORD REPEAT RETURN SET
keyword THEN TO TYPE UNTIL VAR WHILE WITH
comment (* *)
# Nested comments like (* foo (* bar *) gnu *) are NOT taken into account!
function (
# comment this out, if you don't like it:
font declaration CONST TYPE VAR MODULE PROCEDURE RETURN EXIT
color declaration like keyword
string "
character '
# you might want to try this out :
# inword ._
other allcaps initialcaps
# Perl.
# Original version contributed by Herb Kateley (herb@ke.com). Another version
# was contributed by Jeff Wang (jeffw@enterprise.advance.com). What you see
# here is the merger of those two, with other modifications. The "font normal"
# line exists to prevent $# from being interpreted as a plain dollar sign
# followed by a comment.
language perl
extension .pl .pm
keyword BEGIN END CORE __END__ __FILE__ __LINE__ AUTOLOAD DESTROY INIT
keyword abs accept alarm and atan2 bind binmode bless caller chdir chmod
keyword chomp chop chown chr chroot close closedir cmp connect continue cos
keyword crypt dbmclose dbmopen defined delete die do dump each else elsif
keyword endgrent endhostent endnetent endprotoent endpwent endservent eof
keyword eq err eval exec exists exit exp fcntl fileno flock for foreach fork
keyword format formline ge getc getgrent getgrgid getgrnam gethostbyaddr
keyword gethostbyname gethostent getlogin getnetbyaddr getnetbyname
keyword getnetent getpeername getpgrp getppid getpriority getprotobyname
keyword getprotobynumber getprotoent getpwent getpwnam getpwuid
keyword getservbyname getservbyport getservent getsockname getsockopt
keyword glob gmtime goto grep gt hex if index int ioctl join keys kill
keyword last lc lcfirst le length link listen local localtime log lstat
keyword lt m map mkdir msgctl msgget msgrcv msgsnd my ne next no not oct
keyword open opendir or ord our pack package pipe pop pos print printf push
keyword q qq quotemeta qw qx rand read readdir readline readlink readpipe
keyword recv redo ref rename require reset return reverse rewinddir rindex
keyword rmdir s scalar seek seekdir select semctl semget semop send setgrent
keyword sethostent setnetent setpgrp setpriority setprotoent setpwent
keyword setservent setsockopt shift shmctl shmget shmread shmwrite shutdown
keyword sin sleep socket socketpair sort splice split sprintf sqrt srand
keyword stat study sub substr symlink syscall sysopen sysread system syswrite
keyword tell telldir tie tied time times tr truncate uc ucfirst umask undef
keyword unless keyword unlink unpack unshift untie until use utime values vec
keyword wait waitpid wantarray warn while write x xor y
comment #
function (
startword &_@%$
inword _'
string "
strnewline empty
character '
regexp /?#:
useregexp (,~&| if elsif unless while until split m qr and or
useregsub s tr
other allcaps
font parenthesis ( ) { }
color parenthesis fixed red
font normal $" $#
documentation =cut
# VRML markups.
# Contributed by Jeff Wang (jeffw@advance.com)
language vrml
extension .wrl
comment #
keyword Anchor Appearance AsciiText AudioClip Background Billboard Box
keyword Collision Color ColorInterpolator Cone Coordinate Coordinate3
keyword CoordinateInterpolator Cube Cylinder CylinderSensor DirectionalLight
keyword DiskSensor ElevationGrid Extrusion FALSE Fog FontStyle FontStyle Group
keyword IS ImageTexture IndexedFaceSet IndexedLineSet Info Inline LOD Material
keyword MaterialBinding MatrixTransform MovieTexture NULL NavigationInfo Normal
keyword NormalBinding NormalInterpolator OrientationInterpolator
keyword OrthographicCamera PerspectiveCamera PixelTexture PlaneSensor
keyword PointLight PointSet PositionInterpolator ProximitySensor ROUTE Rotation
keyword ScalarInterpolator Scale Script Separator Shape ShapeHints Sound Sphere
keyword SphereSensor SpotLight Switch TO TRUE Text Texture2 Texture2Transform
keyword TextureCoordinate TextureCoordinate2 TextureTransform TimeSensor
keyword TouchSensor Transform TransformSeparator Translation USE Viewpoint
keyword VisibilitySensor WWWAnchor WWWInline WorldInfo eventIn eventOut
keyword exposedField field
function {
startword &$_
inword _
string [ ]
other allcaps
# Quick hack to make diffs use different colors for different lines
# This isn't perfect, but it is useful
language diff
extension .dif .diff
comment <
comment >
font oldtext <
font newtext >
color oldtext italic
color newtext bold
anchor 1 < >
mostly normal
language cdiff patch
extension .cdi .cdiff .patch .pat
comment +
comment **
comment --
comment -
comment !
anchor 1 + - ** -- !
font changedtext !
font oldtext -
font newtext +
color changedtext bold italic
color newtext bold
color oldtext italic
mostly normal
# Fortran 77
# Contributed by Lois Amoreira (amoreira@ubistf.ubi.pt)
# Comments in F77 are *'s or c's appearing in the 1st column.
# I defined them as "*'"
language fortran77 f77 fortran
extension .f .f77
comment c *'
anchor 1 c *'
keyword .and. .eq. .eqv. .ge. .gt. .le. .lt. .ne. .neqv. .not. .or.
keyword accept access assign backspace blank block blockdata boolean buffer
keyword call character close common complex continue data data decode define
keyword dimension do double dump dvck else elseif encode end endif entry
keyword equivalence err exit external file find fmt form format function
keyword go goto id if implicit in include integer intrinsic iostat level
keyword logical namelist open out overfl parameter pause pdump precision
keyword print program punch read real rec recl return rewind
keyword save status stop strace subroutine then to type unit unit unknown
keyword write virtual wait
startword .
inword .
string '
function (
ignorecase true
# Python source
# Contributed by Dan Fandrich (dan@fch.wimsey.bc.ca)
# Note that there is no perfect way to specify Python's multiline strings here,
# so after the first empty line they may be displayed as program text
language python
extension .py
comment #
# keywords
keyword access and break class continue def del elif else except finally for
keyword from global if import in is lambda not or pass print raise return try
keyword while
# built-in exceptions
keyword AccessError AttributeError ConflictError EOFError
keyword IOError ImportError IndexError KeyError KeyboardInterrupt
keyword MemoryError NameError None OverflowError RuntimeError
keyword SyntaxError SystemError SystemExit TypeError ValueError
keyword ZeroDivisionError
# built-in functions
keyword abs apply callable chr cmp coerce compile delattr
keyword dir divmod eval execfile filter float getattr
keyword globals hasattr hash hex id input int len
keyword locals long map max min oct open ord pow
keyword range raw_input reduce reload repr round setattr
keyword str tuple type vars xrange
# other
keyword exec _ __doc__ __import__ __main__ __name__ None
# special methods
keyword __abs__ __add__ __and__ __bases__ __builtins__ __call__ __class__
keyword __cmp__ __coerce__ __del__ __delattr__ __delitem__ __delslice__
keyword __dict__ __div__ __divmod__ __float__ __getattr__ __getitem__
keyword __getslice__ __hash__ __hex__ __init__ __int__ __invert__ __len__
keyword __long__ __lshift__ __members__ __methods__ __mod__ __mul__ __neg__
keyword __nonzero__ __oct__ __or__ __pos__ __pow__ __repr__ __rshift__
keyword __setattr__ __setitem__ __setslice__ __str__ __sub__ __version__ __xor__
string '
strnewline empty
character "
function (
startword _
inword _
# Scheme
# Contributed by John Arundel <jarundel@interx.com>
# Based on contribution by Iver Odin Kvello (i.o.kvello@sum.uio.no)
# R4RS Scheme, with keywords from the macro appendix.
# Doesn't work well with s-exp syntax. Also no chars or constants (beginning
# with #.)
language scheme
extension .scm .sc .ss
keyword * + - / < <= = => > >= abs acos and angle append apply asin assoc assq
keyword assv atan begin boolean? caaaar caaadr caaar caadar caaddr caadr caar
keyword cadaar cadadr cadar caddar cadddr caddr cadr
keyword call-with-current-continuation call-with-input-file
keyword call-with-output-file car case cdaaar cdaadr cdaar cdadar cdaddr cdadr
keyword cdar cddaar cddadr cddar cdddar cddddr cdddr cddr cdr ceiling
keyword char->integer char-alphabetic? char-ci<=? char-ci<? char-ci=?
keyword char-ci>=? char-ci>? char-downcase char-lower-case? char-numeric?
keyword char-ready? char-upcase char-upper-case? char-whitespace? char<=?
keyword char<? char=? char>=? char>? char? close-input-port close-output-port
keyword complex? cond cons cos current-input-port current-output-port define
keyword define-syntax delay denominator display do else eof-object? eq? equal?
keyword eqv? even? exact->inexact exact? exp expt floor for-each force gcd if
keyword imag-part inexact->exact inexact? input-port? integer->char integer?
keyword lambda lcm length let let* let-syntax letrec letrec-syntax list
keyword list->string list->vector list-ref list-tail list? load log magnitude
keyword make-polar make-rectangular make-string make-vector map max member
keyword memq memv min modulo negative? newline not null? number->string
keyword number? numerator odd? open-input-file open-output-file or
keyword output-port? pair? peek-char positive? procedure? quasiquote quote
keyword quotient rational? rationalize read read-char real-part real?
keyword remainder reverse round set! set-car! set-cdr! sin sqrt string
keyword string->list string->number string->symbol string-append string-ci<=?
keyword string-ci<? string-ci=? string-ci>=? string-ci>? string-copy
keyword string-fill! string-length string-ref string-set! string<=? string<?
keyword string=? string>=? string>? string? substring symbol->string symbol?
keyword syntax syntax-rules tan transcript-off transcript-on truncate unquote
keyword unquote-splicing vector vector->list vector-fill! vector-length
keyword vector-ref vector-set! vector? with-input-from-file
keyword with-output-to-file write write-char zero?
comment ;
string "
ignorecase true
startword + - . * / < = > ! ? : $ % _ & ~ ^
inword + - . * / < = > ! ? : $ % _ & ~ ^
# HTML
language html
extension .html .htm .jsp .asp .php
# Standard tags for HTML 3.2
keyword <a </a <applet </applet <area <b </b <base <basefont <big </big
keyword <blockquote </blockquote <body </body <br <center </center
keyword <cite </cite <code </code <col <colgroup </colgroup
keyword <dd <dir </dir <div </div <dl </dl <dt
keyword <em </em <font </font <form </form <h1 </h1 <h2 </h2 <h3 </h3
keyword <h4 </h4 <h5 </h5 <h6 </h6 <head </head <hr <html </html
keyword <i </i <img <input <isindex <kbd </kbd <li </li <link <map </map
keyword <menu </menu <meta <ol </ol <option <p </p <param <pre </pre
keyword <samp </samp <script </script <select </select <small </small
keyword <strong </strong <style </style <sub </sub <sup </sup <table </table
keyword <td </td <textarea <th </th <title </title <tr </tr <tt </tt <u </u
keyword <ul </ul <var </var >
# Standard parameters for HTML 3.2
font argument action= align= alink= alt= background= bgcolor= border=
font argument cellpadding= cellspacing= code= codebase= color= cols= colspan=
font argument content= coords= enctype= height= href= hspace= http-equiv=
font argument link= maxlength= method= name= prompt= rel= rev= rows= rowspan=
font argument shape= size= src= text= title= type= usemap= valign= value=
font argument vlink= vspace= width=
font argument ismap noshade nowrap
color argument like keyword green
# Netscape-specific tags
font nonportable <nobr </nobr <wbr
# Part of HTML 3.2, but not supported by Netscape
font nonportable <dfn </dfn
# Obsolete or otherwise discouraged
font nonportable <xmp </xmp <listing </listing <plaintext </plaintext
font nonportable <strike </strike face=
color nonportable like keyword red
# Standard parameters which would produce too many false highlights
#font emphasized checked multiple selected
startword <
inword /-
comment <! >
function =
character &;
ignorecase true
mostly formatted
#The docbook, as taken from "Docbook: The definitive guide" version 2.0.3
#till version 4.1 Hope it helps making some fine manuals.
#Hints are welcome. <johan.dewit@sapphire.be>
language sgml
extension .sgml .sgm
keyword < </ >
keyword <abbrev </abbrev> <abstract </abstract>
keyword <accel </accel> <ackno </ackno> <acronym </acronym> <action
keyword </action> <address </address> <affiliation </affiliation>
keyword <alt </alt> <anchor </anchor> <answer </answer> <appendix
keyword </appendix> <appendixinfo </appendixinfo> <application
keyword </application> <area </area> <areaset </areaset> <areaspec
keyword </areaspec> <arg </arg> <artheader </artheader> <artpagenums
keyword </artpagenums> <article </article> <articleinfo </articleinfo>
keyword <attribution </attribution> <audiodata </audiodata>
keyword <audioobject </audioobject> <author </author> <authorblurb
keyword </authorblurb> <authorgroup </authorgroup> <authorinitials
keyword </authorinitials> <br </br> <beginpage </beginpage>
keyword <bibliodiv </bibliodiv> <biblioentry </biblioentry>
keyword <bibliomset </bibliomset> <bibliomisc </bibliomisc>
keyword <bibliomixed </bibliomixed> <biblioset </biblioset>
keyword <biblioentry </biblioentry> <bibliography </bibliography>
keyword <bibliographyinfo </bibliographyinfo> <bibliograpy
keyword </bibliograpy> <bibliomixed </bibliomixed> <blockquote
keyword </blockquote> <book </book> <bookbiblio </bookbiblio> <bookinfo
keyword </bookinfo> <bridgehead </bridgehead> <co </co> <callout
keyword </callout> <callout </callout> <calloutlist </calloutlist>
keyword <caption </caption> <caution </caution> <chapter </chapter>
keyword <chapterinfo </chapterinfo> <citation </citation> <citerefentry
keyword </citerefentry> <citetitle </citetitle> <city </city> <classname
keyword </classname> <classsynopsis </classsynopsis> <classsynopsisinfo
keyword </classsynopsisinfo> <cmdsynopsis </cmdsynopsis> <colspec
keyword </colspec> <collab </collab> <collabname </collabname>
keyword <colophon </colophon> <command </command> <comment </comment>
keyword <computeroutput </computeroutput> <confdates </confdates>
keyword <confgroup </confgroup> <confnum </confnum> <confsponsor
keyword </confsponsor> <conftitle </conftitle> <constant </constant>
keyword <constraint </constraint> <constraintdef </constraintdef>
keyword <constructorsynopsis </constructorsynopsis> <contractnum
keyword </contractnum> <contractsponsor </contractsponsor> <contrib
keyword </contrib> <copyright </copyright> <corpauthor </corpauthor>
keyword <corpname </corpname> <country </country> <database </database>
keyword <date </date> <dedication </dedication> <destructorsynopsis
keyword </destructorsynopsis> <divisioninfo </divisioninfo> <docinfo
keyword </docinfo> <edition </edition> <editor </editor> <email </email>
keyword <emphasis </emphasis> <envar </envar> <entry </entry> <entry
keyword </entry> <entrytbl </entrytbl> <epigraph </epigraph> <equation
keyword </equation> <errorcode </errorcode> <errorname </errorname>
keyword <errortext </errortext> <errortype </errortype> <example
keyword </example> <exceptionname </exceptionname> <fax
keyword </fax> <fieldsynopsis </fieldsynopsis> <figure </figure>
keyword <filename </filename> <firstname </firstname> <firstterm
keyword </firstterm> <footnote </footnote> <footnoteref </footnoteref>
keyword <foreignphrase </foreignphrase> <form </form> <formalpara
keyword </formalpara> <funcdef </funcdef> <funcdefs </funcdefs>
keyword <funcparams </funcparams> <funcprototype </funcprototype>
keyword <funcprototypes </funcprototypes> <funcsynopsis </funcsynopsis>
keyword <funcsynopsisinfo </funcsynopsisinfo> <funcsynopsisinfos
keyword </funcsynopsisinfos> <function </function> <guibutton
keyword </guibutton> <guiicon </guiicon> <guilabel </guilabel> <guimenu
keyword </guimenu> <guimenuitem </guimenuitem> <guisubmenu </guisubmenu>
keyword <guisubmenu </guisubmenu> <garamond </garamond
keyword <glossdef </glossdef> <glossdiv </glossdiv> <glossentry
keyword </glossentry> <glosslist </glosslist> <glosssee </glosssee>
keyword <glossseealso </glossseealso> <glossterm </glossterm>
keyword <glossary </glossary> <glossaryinfo </glossaryinfo> <graphic
keyword </graphic> <graphicco </graphicco> <group </group> <hardware
keyword </hardware> <highlight </highlight> <highlights </highlights>
keyword <holder </holder> <honorific </honorific> <img </img> <isbn
keyword </isbn> <issn </issn> <itermset </itermset> <imagedata
keyword </imagedata> <imageobject </imageobject> <imageobjectco
keyword </imageobjectco> <important </important> <index </index>
keyword <indexdiv </indexdiv> <indexentry </indexentry> <indexinfo
keyword </indexinfo> <indexterm </indexterm> <informalequation
keyword </informalequation> <informalexample </informalexample>
keyword <informalfigure </informalfigure> <informaltable
keyword </informaltable> <initializer </initializer> <inlineequation
keyword </inlineequation> <inlinegraphic </inlinegraphic>
keyword <inlinemediaobject </inlinemediaobject> <interface </interface>
keyword <interfacedefinition </interfacedefinition> <interfacename
keyword </interfacename> <invpartnumber </invpartnumber> <issuenum
keyword </issuenum> <itemizedlist </itemizedlist> <jobtitle </jobtitle>
keyword <keycap </keycap> <keycode </keycode> <keycombo </keycombo>
keyword <keysym </keysym> <keycap </keycap> <keycombo </keycombo>
keyword <keyword </keyword> <keywordset </keywordset> <lhs </lhs>
keyword <label </label> <legalnotice </legalnotice> <lineannotation
keyword </lineannotation> <lineannotations </lineannotations>
keyword <lineage </lineage> <link </link> <linkend </linkend>
keyword <listitem </listitem> <literal </literal> <literallayout
keyword </literallayout> <literallayout </literallayout> <lot </lot>
keyword <lotentry </lotentry> <lotentry </lotentry> <manvolnum
keyword </manvolnum> <markup </markup> <medialabel </medialabel>
keyword <mediaobject </mediaobject> <mediaobjectco </mediaobjectco>
keyword <member </member> <menuchoice </menuchoice> <meta </meta>
keyword <methodname </methodname> <methodparam </methodparam>
keyword <methodsynopsis </methodsynopsis> <modespec </modespec>
keyword <modifier </modifier> <mousebutton </mousebutton> <msg </msg>
keyword <msgaud </msgaud> <msgentry </msgentry> <msgset </msgset>
keyword <msgexplan </msgexplan>
keyword <msginfo </msginfo> <msglevel </msglevel> <msgmain </msgmain>
keyword <msgorig </msgorig> <msgrel </msgrel> <msgset </msgset> <msgsub
keyword </msgsub> <msgtext </msgtext> <nonterminal </nonterminal>
keyword <note </note> <olink </olink> <ooclass </ooclass>
keyword <ooexception </ooexception> <oointerface </oointerface>
keyword <objectinfo </objectinfo> <option </option> <optional
keyword </optional> <orderedlist </orderedlist> <orgdiv </orgdiv>
keyword <orgname </orgname> <otheraddr </otheraddr> <othercredit
keyword </othercredit> <othername </othername> <para </para>
keyword <pob </pob> <pagenums </pagenums> <para </para> <paramdef
keyword </paramdef> <parameter </parameter> <part </part> <partinfo
keyword </partinfo> <partintro </partintro> <phone </phone> <phrase
keyword </phrase> <postcode </postcode> <postcode </postcode> <preface
keyword </preface> <prefaceinfo </prefaceinfo> <primary </primary>
keyword <primaryie </primaryie> <printhistory </printhistory>
keyword <procedure </procedure> <productname </productname>
keyword <productnumber </productnumber> <production </production>
keyword <productionrecap </productionrecap> <productionset
keyword </productionset> <programlisting </programlisting>
keyword <programlistingco </programlistingco> <prompt </prompt>
keyword <property </property> <pubdate </pubdate> <publisher
keyword </publisher> <publishername </publishername> <pubsnumber
keyword </pubsnumber> <qandadiv </qandadiv> <qandaentry </qandaentry>
keyword <qandaset </qandaset> <question </question> <quote </quote> <rhs
keyword </rhs> <refclass </refclass> <refdescriptor </refdescriptor>
keyword <refentry </refentry> <refentrytitle </refentrytitle>
keyword <refmeta </refmeta> <refmiscinfo </refmiscinfo> <refname
keyword </refname> <refnamediv </refnamediv> <refpurpose </refpurpose>
keyword <refsect1 </refsect1> <refsect1info </refsect1info> <refsect2
keyword </refsect2> <refsect2info </refsect2info> <refsect3 </refsect3>
keyword <refsect3info </refsect3info> <refsynopsisdiv </refsynopsisdiv>
keyword <refsynopsisdivinfo </refsynopsisdivinfo> <refentry </refentry>
keyword <refentryinfo </refentryinfo> <reference </reference>
keyword <referenceinfo </referenceinfo> <references </references>
keyword <releaseinfo </releaseinfo> <remark </remark> <replaceable
keyword </replaceable> <returnvalue </returnvalue> <returnaddress
keyword </returnaddress> <revdescription </revdescription> <revhistory
keyword </revhistory> <revnumber </revnumber> <revremark </revremark>
keyword <revision </revision> <row </row> <rows </rows> <sbr </sbr>
keyword <sgmltag </sgmltag> <screen </screen> <screenco </screenco>
keyword <screeninfo </screeninfo> <screenshot </screenshot>
keyword <secondary </secondary> <secondaryie </secondaryie> <sect1
keyword </sect1> <sect1info </sect1info> <sect2 </sect2> <sect2info
keyword </sect2info> <sect3 </sect3> <sect3info </sect3info> <sect4
keyword </sect4> <sect4info </sect4info> <sect5 </sect5 > <sect5
keyword </sect5> <sect5info </sect5info> <sect6 </sect6> <section
keyword </section> <sectioninfo </sectioninfo> <see </see> <seealso
keyword </seealso> <seealsoie </seealsoie> <seeie </seeie> <seg </seg>
keyword <seglistitem </seglistitem> <segtitle </segtitle> <segmentedlist
keyword </segmentedlist> <seriesinfo </seriesinfo> <seriesvolnums
keyword </seriesvolnums> <set </set> <setindex </setindex> <setindexinfo
keyword </setindexinfo> <setinfo </setinfo> <shortaffil </shortaffil>
keyword <shortcut </shortcut> <shortentry </shortentry> <shortcut
keyword </shortcut> <sidebar </sidebar> <sidebarinfo </sidebarinfo>
keyword <simpara </simpara> <simplelist </simplelist> <simplemsgentry
keyword </simplemsgentry> <simplesect </simplesect> <span </span>
keyword <spanspec </spanspec> <state </state> <step </step> <street
keyword </street> <structfield </structfield> <structname </structname>
keyword <substep </substep> <substeps </substeps> <subject </subject>
keyword <subjectset </subjectset> <subjectterm </subjectterm> <subscript
keyword </subscript> <substep </substep> <subtitle </subtitle>
keyword <superscript </superscript> <surname </surname> <symbol
keyword </symbol> <synopfragment </synopfragment> <synopfragmentref
keyword </synopfragmentref> <synopfragmentref </synopfragmentref>
keyword <synopsis </synopsis> <systemitem </systemitem> <tbody </tbody>
keyword <tfoot </tfoot> <tgroup </tgroup> <thead </thead> <table
keyword </table> <term </term> <tertiary </tertiary> <tertiaryie
keyword </tertiaryie> <textobject </textobject> <tip </tip> <title
keyword </title> <titleabbrev </titleabbrev> <toc </toc> <tocback
keyword </tocback> <tocchap </tocchap> <tocentry </tocentry> <tocfront
keyword </tocfront> <toclevel1 </toclevel1> <toclevel2 </toclevel2>
keyword <toclevel3 </toclevel3> <toclevel4 </toclevel4> <toclevel5
keyword </toclevel5> <tocpart </tocpart> <tocback </tocback>
keyword <tocchap </tocchap> <tocfront </tocfront> <token </token>
keyword <trademark </trademark> <trademark </trademark> <type </type>
keyword <ulink </ulink> <userinput </userinput> <varargs </varargs>
keyword <varlistentry </varlistentry> <varname </varname> <variablelist
keyword </variablelist> <videodata </videodata> <videoobject
keyword </videoobject> <void </void> <volumenum </volumenum>
keyword <warning </warning> <wordasword </wordasword> <xref </xref>
keyword <year </year>
font argument address= alt= action= align= application= arch= arch= arearefs=
font argument baseform= cdata= char= charoff= choice= class= cmdlength=
font argument colname= colnum= colsep= colwidth= cols= columns= condition=
font argument conformance= contents= continuation= coords= defaultlabel=
font argument depth= entity= endterm= endterm= entityref= entityref= fpi=
font argument fileref= fileref= float= format= frame= id= idref= idrefs=
font argument inheritnum= keyword= keywords= label= lang= linkend= linkmode=
font argument linkend= linkends= localinfo= mark= moreinfo= morerows= name=
font argument names= nmtoken= nmtokens= number= nutoken= nameend= namest=
font argument namest= numeration= os= orient= otheraction= otherterm=
font argument otherunits= override= pagenum= parentbook= path= performance=
font argument pgwide= pubwork= relation= remap= renderas= renderas= rep=
font argument revision= revisionflag= role= rotate= rowsep= scale= scalefit=
font argument scheme= scope= security= sepchar= significance= sortas= spacing=
font argument spanname= srccredit= startref= status= subject= tgroupstyle=
font argument tabstyle= targetdocent= termlength= tocentry= type= url= units=
font argument userlevel= valign= vendor= weight= width= xreflabel= xreflabel=
font argument zone= contents= frame= id= idref= lang= role= url=
color argument like keyword green
#string '
string %;
character &;
#comment <!-- -->
ignorecase true
startword <
inword =/
other allcaps
mostly formatted
# nroff -man
language man
extension .man .1 .2 .3 .4 .5 .6 .7 .8 .9
preprocessor .
comment \"
prefix \" \fR \fB \fI \fP \f0 \f1 \f2 \f3
font markup \fR \fB \fI \fP \f0 \f1 \f2 \f3
prefix \| \& \^ \- \e \c \*R \*S \*(Tm \*(lq \*(rq
font markup \| \& \^ \- \e \c \*R \*S \*(Tm \*(lq \*(rq
prefix \(br \(bu \(co \(dg \(em \(hy \(lq \(rn \(rq \(ul
font markup \(br \(bu \(co \(dg \(em \(hy \(lq \(rn \(rq \(ul
prefix \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
font markup \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
color markup bold red
mostly normal
# TeX
language tex
extension .tex
keyword LaTeX
keyword & $$ { }
font char \_ \& \{ \} \% \$ \\
comment %
startword \
string $
other initialpunct
mostly normal
# RTF
language rtf
extension .rtf
startword \
font char \' \* \- \: \\ \_ \{ \| \} \~ \chatn \chdate \chdpa \chdpl \chftn
font char \chftnsep \chftnsepc \chpgn \chtime
keyword ' * - : _ { | } ~
other initialpunct
mostly normal
# Ada 95
# Contributed by Zhu QunYing (zhu@pobox.org.sg)
# some common predefined types are added as keyword after "xor"
language ada ada95
extension .adb .ads .ada
comment --
keyword abort abs abstract accept access aliased all and array at
keyword begin body
keyword case constant
keyword declare delay delta digits do
keyword else elsif end entry exception exit
keyword for function
keyword generic goto
keyword if in is
keyword limited loop
keyword mod
keyword new not null
keyword of or others out
keyword package pragma private procedure protected
keyword raise range record rem renames requeue return reverse
keyword select separate subtype
keyword tagged task terminate then type
keyword until use
keyword when while with
keyword xor
keyword Boolean Character Wide_Character Integer Float Duration File_type
keyword String Wide_String Natural Positive
function (
startword _
inword _'
character '
string "
other allcaps
ignorecase true
# ODL (object description files)
# Contributed by David Gottner (dgottner@microsoft.com)
language odl
extension .odl
keyword boolean char double float int long short void wchar_t
keyword BSTR CURRENCY DATE HRESULT LPSTR LPWSTR SAFEARRAY SCODE VARIANT
keyword IDispatch IUnknown
keyword appobject bindable control default defaultbind displaybind
keyword dllname dual entry helpcontext helpfile helpstring
keyword hidden id in lcid licensed nonextensible odl oleautomation
keyword optional out propget propput propputref public readonly
keyword requestedit restricted retval source string uuid vararg
keyword version
keyword coclass dispinterface enum importlib interface library
keyword methods module properties struct typedef union
comment //
comment /* */
preprocessor #
string "
startword _
inword _
other allcaps initialpunct
# Bibtex
# Contributed by Woody Jin (wjin@cs.uh.edu)
language bib
extension .bib
keyword author year volume number pages month note
keyword title publisher series address edition journal
keyword booktitle organization howpublished type chapter
keyword institution school editor
comment %
startword @
string "
ignorecase false
other initialpunct
strnewline allowed
mostly normal
# This "elvis.syn" entry
# Contributed by Woody Jin (wjin@cs.uh.edu)
# Modified by S.K. to take advantage of new features of Elvis
language syn
extension elvis.syn
keyword function comment keyword string other regexp prepquote
anchor 1 anchor inword character font mostly color ignorecase extension
anchor 1 foreign language startword operator strnewline preprocessor regexp
anchor 1 set useregexp useregsub prepquote documentation prefix
anchor 6 normal char regsub number variable prep doc docmarkup docindent
font string allcaps initialcaps mixedcaps final_t initialpunct
font string true false allowed backslash indent empty
anchor 1 #
comment #
inword _
# EX
# Ironically, Elvis' syntax coloring method isn't versatile enough to color
# ex syntax. Still, it can color comments and most keywords; maybe that's
# enough. The particular variation shown here works okay for aliases.
language ex
extension .ex .exrc .elvisrc elvis.rc elvis.ini elvis.brf elvis.arf elvis.bwf elvis.awf elvis.ali elvis.spe
keyword a ab abbr abbreviate all alias append ar args au aug augroup autocmd
keyword b bb bbrowse br bre break browse buffer c ca calc calculate case cc cd
keyword change chd chdir check cl close co col color copy d default delete di
keyword dig digraph dis display do doau doautocmd doloop e ec echo edit el
keyword else er err errlist erro error ev eval ex f file fold for foreach
keyword g global go goto gu gui h help i if insert j join k l la last le
keyword let list lo local lp lpr m ma mak make map mark me message mk
keyword mkexrc move n N new next Next no normal nu number o open p po pop
keyword pre previous print pu push put q qa qall quit r read red redo rew
keyword rewind s sN sNext sa saf safely sall sb sbb sbbrowse sbr sbrowse se
keyword set sh shell sl slast sn sne snew snext so source sp split sre
keyword srew srewind st sta stac stack stag stop subst substitute sus susp
keyword suspend switch t ta tag th then to try u una unab unabbr
keyword unabbreviate unb unbreak undo unfold unm unmap v ve version
keyword vglobal vi visual w wa warning wordf wordfile words wh while wi
keyword window wn wnext wq wquit write x xit y yank z
anchor ^ " # & < = > @ ~
# note that ! is not listed as a keyword because it interferes with alias args
comment "
regexp /?
useregsub s
useregexp , ; ( g v global vglobal no normal try then else
font argument !0 !1 !2 !3 !4 !5 !6 !7 !8 !9 !^ !$ !* !< !> !% !! !?
font argument 'a 'b 'c 'd 'e 'f 'g 'h 'i 'j 'k 'l 'm 'n 'o 'p 'q 'r 's 't 'u 'v
font argument 'w 'x 'y 'z % $
color argument like keyword green
# MASM/TASM style x86 assembly language
# Contributed by Dan Fandrich (dan@fch.wimsey.bc.ca)
language x86 asm assembly
extension .asm .s .def .mac .inc
keyword alias align arg assume at byte casemap catstr codeptr codeseg
keyword comm comment common compact const dataptr dataseg db dd df
keyword display dosseg dp dq dt dup dw dword else elseif elseif1 elseif2
keyword elseifb elseifdef elseifdif elseifdifi elseife elseifidn
keyword elseifidni elseifnb elseifndef emul end endif endm endp ends
keyword enter enterd enterw enum eq equ err errif errif1 errif2 errifb
keyword errifdef errifdif errifdifi errife errifidn errifidni errifnb
keyword errifndef error even evendata exitm export extern externdef extrn
keyword far fardata farstack flat fword ge getfield global goto group gt
keyword high highword huge ideal if if1 if2 ifb ifdef ifdif ifdifi ife
keyword ifidn ifnb ifndef ignore include includelib instr invoke irp irpc
keyword jumps label large largestack le leave leaved leavew length
keyword lengthof local locals low lowword lroffset lt macro mask masm
keyword medium memory mod model multerrs name ne near nearstack noemul
keyword nojumps nolocals nomasm51 nomulterrs nosmart nothing nowarn
keyword offset ofidni option org p186 p286 p286n p287 p386 p386n p387
keyword p486 p486n p8086 p8087 page pascal pn087 private proc proto ptr
keyword public publicdll purge pword quirks qword radix record rept
keyword retcode seg segment short size sizeof sizestr small smallstack
keyword smart stack startupcode struc substr subttl sword symtype table
keyword tblinit tblinst tblptr tbyte this tiny title type typedef
keyword udataseg ufardata union use16 use32 usecs useds usees usefs usegs
keyword uses usess vararg version warn wbinvd while width word
# DS pseudo-op conflicts with Data Segment register
#keyword ds
# Reserved words that conflict with opcodes
#keyword not or shr shl xor
# Words starting with . or % are always highlighted as reserved words
startword .%
comment ;
string "
character '
inword .[]_$
other initialpunct
ignorecase true
# MS-DOS batch file
# Contributed by Dan Fandrich (dan@fch.wimsey.bc.ca)
# Only the commands which may be considered part of the batch "language"
# are included as keywords. Note that ".cmd" is the OS/2 extension for
# batch files.
language batch
extension .bat .cmd
keyword break call cd cls echo echo. echo/ echo\ echo+ exit for goto if lh
keyword loadfix loadhigh path pause prompt rem set shift truename verify
keyword @ | < == do errorlevel exist not on off
keyword %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
# environment variable references
string %
# goto labels
#preprocessor :
# file redirections
comment >
font argument >
color argument like keyword green
comment rem
anchor ^ rem
comment ::
anchor 1 ::
startword :
inword ._/\\:$!@#^&-
ignorecase true
# MS-DOS config.sys file
# Contributed by Walter Briscoe (walter@wbriscoe.demon.co.uk)
language config.sys
extension config.sys
ignorecase true
inword ._/\\:$!@#^&-
comment rem
comment ;
anchor ^ rem ;
# ; and rem as the first graphic characters on a line start comment lines
keyword break buffers country device devicehigh dos drivparm fcbs files
keyword include lastdrive menucolor menudefault menuitem numlock
keyword set shell stacks submenu switches
# Windows and LanManager INI files
# Original version contributed by Jay Wardle <jayw@lsid.hp.com>
# Modified by SK to take advantage of new Elvis features.
language ini
extension .ini
function =
comment ;
comment [
font declaration [
color declaration like keyword
anchor 1 [