1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License, Version 1.0 only 6# (the "License"). You may not use this file except in compliance 7# with the License. 8# 9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10# or http://www.opensolaris.org/os/licensing. 11# See the License for the specific language governing permissions 12# and limitations under the License. 13# 14# When distributing Covered Code, include this CDDL HEADER in each 15# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16# If applicable, add the following below this CDDL HEADER, with the 17# fields enclosed by brackets "[]" replaced with your own identifying 18# information: Portions Copyright [yyyy] [name of copyright owner] 19# 20# CDDL HEADER END 21# 22# ident "%Z%%M% %I% %E% SMI" 23# 24model|mod|m:\ 25 :pb=^\d(space\d\p\drep)|(\p\dis|inline|public\dbeginproc):\ 26 :bb=\dbeginproc|space|case\d:be=\dendproc|end\d|;:\ 27 :cb=\$:ce=\$|$:sb=":se=":lb=':le=\a|$:\ 28 :kw=abs and array beginproc boolean by case cdnl char copied dispose\ 29 div do dynamic else elsif end endproc entry external FALSE false\ 30 fi file for formal fortran global if iff ift\ 31 in integer include inline is lbnd\ 32 max min mod new NIL nil noresult not notin od of or procedure public\ 33 read readln readonly record recursive rem rep repeat res\ 34 result return set\ 35 space string subscript such then TRUE true type ubnd union until\ 36 varies while width: 37pascal|pasc|p:\ 38 :pb=(^\d?procedure|function|program\d\p\d|\(|;|\:)|(=\d?record\d):\ 39 :bb=\dcase|begin\d:be=\dend|forward\d|;:\ 40 :cb={:ce=}:\ 41 :ab=\(*:ae=*\):\ 42 :sb=':se=':\ 43 :kw=and array assert begin case const div do downto else end file for\ 44 forward function goto if in label mod nil not of or packed procedure\ 45 program record repeat set then to type until var while with oct hex\ 46 external: 47C|c:\ 48 :pb=^\d?*?\d?\p\d?\(\a?\)(\d|{):bb={:be=}:cb=/*:ce=*/:sb=":se=\e":lb=':\ 49 :le=\e':tl:\ 50 :kw=asm auto break case char continue default do double else enum\ 51 extern float for fortran goto if int long register return short\ 52 sizeof static struct switch typedef union unsigned void while #define\ 53 #else #endif #if #ifdef #ifndef #include #undef # define endif\ 54 ifdef ifndef include undef defined: 55ISP|isp|i:\ 56 :cb=!:ce=!|$:oc:\ 57 :kw=and begin decode define end eql eqv geq gtr if leave leq lss mod\ 58 neq next not or otherwise repeat restart resume sr0 sr1 srd srr sl0 sl1\ 59 sld slr tst xor: 60SH|sh:\ 61 :pb=(;|^)\d?\p\(\)(\d|{):\ 62 :ab=\$#:ae=(\d?|\a?):\ 63 :bb={:be=}:cb=#:ce=$:sb=":se=\e":lb=':\ 64 :le=\e':tl:\ 65 :kw=break case cd continue do done \ 66 elif else esac eval exec exit export \ 67 fi for if in then while until \ 68 read readonly set shift test trap umask wait: 69CSH|csh:\ 70 :cb=#:ce=$:sb=":se=\e":lb=':\ 71 :ab=\$\a?#:ae=(\d?|\a?):\ 72 :le=\e':tl:\ 73 :kw=alias alloc break breaksw case cd chdir continue default\ 74 echo else end endif endsw exec exit foreach \ 75 glob goto history if logout nice nohup onintr repeat set\ 76 setenv shift source switch then time \ 77 while umask unalias unset wait while @ env \ 78 argv child home ignoreeof noclobber noglob \ 79 nomatch path prompt shell status verbose : 80ldl|LDL:\ 81 :pb=^\p\::bb=\::be=;:cb=/*:ce=*/:sb=":se=\e":\ 82 :kw=constant functions grammar reswords tokens add1 addste\ 83 car cdr check colno cond cons copy defun divide empty enter\ 84 eq equal findattr firstchild ge getattr getfield gt hash label\ 85 lambda lastchild le leftsibling lookone lookup lt minus name ne\ 86 newnode nextcom nil null parent plus precnl prevcom prog progn\ 87 quote reglob return rightsibling self set setattr setfield setq\ 88 stjoin sub1 t times tnull tokno ttype: 89Icon|icon|I:\ 90 :pb=^\d?procedure\d\p\d?\(\a?\):\ 91 :bb=(^\d?procedure\d\p\d?\(\a?\))|{:be=}|(^\d?end\d?$):\ 92 :cb=#:ce=$:\ 93 :sb=":se=\e":lb=':le=\e':tl:\ 94 :kw=break by case create default do dynamic else end every external\ 95 fail global if initial local next not of procedure record\ 96 repeat return static suspend then to until using while\ 97 &ascii &clock &cset &date &dateline &errout &fail &host &input\ 98 &lcase &level &main &null &output &pos &random &source &subject\ 99 &time &trace &ucase &version: 100ratfor|rat|r:\ 101 :pb=(subroutine|function)\d\p\d?\(\a?\):\ 102 :bb=(subroutine|function)\d\p\d?\(\a?\):be=^\d?end:\ 103 :cb=#:ce=$:\ 104 :sb=":se=\e":lb=':le=\e':oc:\ 105 :kw=DRETURN DRIVER arith break case character default define do\ 106 else elsedef enddef filedes for function goto if ifdef ifelse\ 107 ifnotdef include incr integer linepointer next opeq pointer\ 108 real repeat return select string subroutine substr until: 109modula2|mod2|m2:\ 110 :pb=(^\d?(procedure|function|module)\d\p\d|\(|;|\:):\ 111 :bb=\d(begin|case|for|if|loop|record|repeat|while|with)\d:\ 112 :be=\dend|;:\ 113 :cb={:ce=}:\ 114 :ab=\(*:ae=*\):\ 115 :sb=":se=":\ 116 :oc:\ 117 :kw=and array begin by case const\ 118 definition div do else elsif end exit export\ 119 for from if implementation import in\ 120 loop mod module not of or pointer procedure qualified\ 121 record repeat return set then to type\ 122 until var while with: 123yacc|Yacc|y:\ 124 :cb=/*:ce=*/:sb=":se=\e":lb=':le=\e':tl:\ 125 :kw=%{ %} %% %union %token %type\ 126 #else #endif #if #ifdef #ifndef #include #undef # define else endif\ 127 if ifdef ifndef include undef: 128C++|c++:\ 129 :pb=^\d?*?\d?\p\d?\(\a?\)(\d|{):bb={:be=}:cb=/*:ce=*/:ab=//:\ 130 :ae=$:sb=":se=\e":lb=':\ 131 :le=\e':tl:\ 132 :kw=asm auto break case char continue default do double else enum\ 133 extern float for fortran goto if int long register return short\ 134 sizeof static struct switch typedef union unsigned while void #define\ 135 #else #endif #if #ifdef #ifndef #include #undef # define endif\ 136 ifdef ifndef include undef defined\ 137 class const delete friend inline new operator overload private\ 138 protected public virtual: 139fortran|FORTRAN|f77|fc|f:\ 140 :pb=(function|subroutine|program)\d\p\d?\(\a?\):\ 141 :bb=(function|subroutine|program)\d\p\d?\(\a?\):be=^\dend:\ 142 :cb=^c:\ 143 :ce=$:\ 144 :sb=':\ 145 :se=':\ 146 :oc:\ 147 :kw=call common complex continue dimension do double else elseif\ 148 end endif equivalence format function\ 149 goto if include integer \ 150 parameter precision real return stop subroutine: 151# 152# This entry makes use of new capabilities added to support the description 153# of lisp-like languages (id, pl, and px). The set of keywords given is a 154# matter of taste. It would be reasonable to add all the wired functions to 155# the list. 156MLisp|ml|Emacs Mock Lisp:\ 157 :cb=;:ce=$:lb=':le=\e':sb=":se=\e":bb=\(:be=\):\ 158 :id=_-$#@./,%&?!^*+~`|;<>'\::\ 159 :kw=defun if progn while:pl:px=\d\(defun:pb=^\d\(\p($|(\d\a$)): 160# 161# It's not obvious what constitutes a "procedure definition" in Russell. 162# This entry doesn't even try... 163russell|Russell:\ 164 :cb=\(*:ce=*\):kw=cand cor do od if fi else enum record prod union\ 165 extend export hide with constants let use in ni val var func type\ 166 field characters readonly:sb=":se=":lb=':le=': 167