Mercurial > hg > RemoteEditor > vim7
comparison runtime/syntax/lscript.vim @ 0:76efa0be13f1
Initial revision
author | atsuki |
---|---|
date | Sat, 10 Nov 2007 15:07:22 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:76efa0be13f1 |
---|---|
1 " Vim syntax file | |
2 " Language: LotusScript | |
3 " Maintainer: Taryn East (taryneast@hotmail.com) | |
4 " Last Change: 2003 May 11 | |
5 | |
6 " This is a rough amalgamation of the visual basic syntax file, and the UltraEdit | |
7 " and Textpad syntax highlighters. | |
8 " It's not too brilliant given that a) I've never written a syntax.vim file before | |
9 " and b) I'm not so crash hot at LotusScript either. If you see any problems | |
10 " feel free to email me with them. | |
11 | |
12 " For version 5.x: Clear all syntax items | |
13 " For version 6.x: Quit when a syntax file was already loaded | |
14 if version < 600 | |
15 syntax clear | |
16 elseif exists("b:current_syntax") | |
17 finish | |
18 endif | |
19 | |
20 " LotusScript is case insensitive | |
21 syn case ignore | |
22 | |
23 " These are Notes thingies that had an equivalent in the vb highlighter | |
24 " or I was already familiar with them | |
25 syn keyword lscriptStatement ActivateApp As And Base Beep Call Case ChDir ChDrive Class | |
26 syn keyword lscriptStatement Const Dim Declare DefCur DefDbl DefInt DefLng DefSng DefStr | |
27 syn keyword lscriptStatement DefVar Do Else %Else ElseIf %ElseIf End %End Erase Event Exit | |
28 syn keyword lscriptStatement Explicit FileCopy FALSE For ForAll Function Get GoTo GoSub | |
29 syn keyword lscriptStatement If %If In Is Kill Let List Lock Loop MkDir | |
30 syn keyword lscriptStatement Name Next New NoCase NoPitch Not Nothing NULL | |
31 syn keyword lscriptStatement On Option Or PI Pitch Preserve Private Public | |
32 syn keyword lscriptStatement Property Public Put | |
33 syn keyword lscriptStatement Randomize ReDim Reset Resume Return RmDir | |
34 syn keyword lscriptStatement Select SendKeys SetFileAttr Set Static Sub Then To TRUE | |
35 syn keyword lscriptStatement Type Unlock Until While WEnd With Write XOr | |
36 | |
37 syn keyword lscriptDatatype Array Currency Double Integer Long Single String String$ Variant | |
38 | |
39 syn keyword lscriptNotesType Field Button Navigator | |
40 syn keyword lscriptNotesType NotesACL NotesACLEntry NotesAgent NotesDatabase NotesDateRange | |
41 syn keyword lscriptNotesType NotesDateTime NotesDbDirectory NotesDocument | |
42 syn keyword lscriptNotesType NotesDocumentCollection NotesEmbeddedObject NotesForm | |
43 syn keyword lscriptNotesType NotesInternational NotesItem NotesLog NotesName NotesNewsLetter | |
44 syn keyword lscriptNotesType NotesMIMEEntry NotesOutline NotesOutlineEntry NotesRegistration | |
45 syn keyword lscriptNotesType NotesReplication NotesRichTextItem NotesRichTextParagraphStyle | |
46 syn keyword lscriptNotesType NotesRichTextStyle NotesRichTextTab | |
47 syn keyword lscriptNotesType NotesSession NotesTimer NotesView NotesViewColumn NotesViewEntry | |
48 syn keyword lscriptNotesType NotesViewEntryCollection NotesViewNavigator NotesUIDatabase | |
49 syn keyword lscriptNotesType NotesUIDocument NotesUIView NotesUIWorkspace | |
50 | |
51 syn keyword lscriptNotesConst ACLLEVEL_AUTHOR ACLLEVEL_DEPOSITOR ACLLEVEL_DESIGNER | |
52 syn keyword lscriptNotesConst ACLLEVEL_EDITOR ACLLEVEL_MANAGER ACLLEVEL_NOACCESS | |
53 syn keyword lscriptNotesConst ACLLEVEL_READER ACLTYPE_MIXED_GROUP ACLTYPE_PERSON | |
54 syn keyword lscriptNotesConst ACLTYPE_PERSON_GROUP ACLTYPE_SERVER ACLTYPE_SERVER_GROUP | |
55 syn keyword lscriptNotesConst ACLTYPE_UNSPECIFIED ACTIONCD ALIGN_CENTER | |
56 syn keyword lscriptNotesConst ALIGN_FULL ALIGN_LEFT ALIGN_NOWRAP ALIGN_RIGHT | |
57 syn keyword lscriptNotesConst ASSISTANTINFO ATTACHMENT AUTHORS COLOR_BLACK | |
58 syn keyword lscriptNotesConst COLOR_BLUE COLOR_CYAN COLOR_DARK_BLUE COLOR_DARK_CYAN | |
59 syn keyword lscriptNotesConst COLOR_DARK_GREEN COLOR_DARK_MAGENTA COLOR_DARK_RED | |
60 syn keyword lscriptNotesConst COLOR_DARK_YELLOW COLOR_GRAY COLOR_GREEN COLOR_LIGHT_GRAY | |
61 syn keyword lscriptNotesConst COLOR_MAGENTA COLOR_RED COLOR_WHITE COLOR_YELLOW | |
62 syn keyword lscriptNotesConst DATABASE DATETIMES DB_REPLICATION_PRIORITY_HIGH | |
63 syn keyword lscriptNotesConst DB_REPLICATION_PRIORITY_LOW DB_REPLICATION_PRIORITY_MED | |
64 syn keyword lscriptNotesConst DB_REPLICATION_PRIORITY_NOTSET EFFECTS_EMBOSS | |
65 syn keyword lscriptNotesConst EFFECTS_EXTRUDE EFFECTS_NONE EFFECTS_SHADOW | |
66 syn keyword lscriptNotesConst EFFECTS_SUBSCRIPT EFFECTS_SUPERSCRIPT EMBED_ATTACHMENT | |
67 syn keyword lscriptNotesConst EMBED_OBJECT EMBED_OBJECTLINK EMBEDDEDOBJECT ERRORITEM | |
68 syn keyword lscriptNotesConst EV_ALARM EV_COMM EV_MAIL EV_MISC EV_REPLICA EV_RESOURCE | |
69 syn keyword lscriptNotesConst EV_SECURITY EV_SERVER EV_UNKNOWN EV_UPDATE FONT_COURIER | |
70 syn keyword lscriptNotesConst FONT_HELV FONT_ROMAN FORMULA FT_DATABASE FT_DATE_ASC | |
71 syn keyword lscriptNotesConst FT_DATE_DES FT_FILESYSTEM FT_FUZZY FT_SCORES FT_STEMS | |
72 syn keyword lscriptNotesConst FT_THESAURUS HTML ICON ID_CERTIFIER ID_FLAT | |
73 syn keyword lscriptNotesConst ID_HIERARCHICAL LSOBJECT MIME_PART NAMES NOTESLINKS | |
74 syn keyword lscriptNotesConst NOTEREFS NOTES_DESKTOP_CLIENT NOTES_FULL_CLIENT | |
75 syn keyword lscriptNotesConst NOTES_LIMITED_CLIENT NUMBERS OTHEROBJECT | |
76 syn keyword lscriptNotesConst OUTLINE_CLASS_DATABASE OUTLINE_CLASS_DOCUMENT | |
77 syn keyword lscriptNotesConst OUTLINE_CLASS_FOLDER OUTLINE_CLASS_FORM | |
78 syn keyword lscriptNotesConst OUTLINE_CLASS_FRAMESET OUTLINE_CLASS_NAVIGATOR | |
79 syn keyword lscriptNotesConst OUTLINE_CLASS_PAGE OUTLINE_CLASS_UNKNOWN | |
80 syn keyword lscriptNotesConst OUTLINE_CLASS_VIEW OUTLINE_OTHER_FOLDERS_TYPE | |
81 syn keyword lscriptNotesConst OUTLINE_OTHER_UNKNOWN_TYPE OUTLINE_OTHER_VIEWS_TYPE | |
82 syn keyword lscriptNotesConst OUTLINE_TYPE_ACTION OUTLINE_TYPE_NAMEDELEMENT | |
83 syn keyword lscriptNotesConst OUTLINE_TYPE_NOTELINK OUTLINE_TYPE_URL PAGINATE_BEFORE | |
84 syn keyword lscriptNotesConst PAGINATE_DEFAULT PAGINATE_KEEP_TOGETHER | |
85 syn keyword lscriptNotesConst PAGINATE_KEEP_WITH_NEXT PICKLIST_CUSTOM PICKLIST_NAMES | |
86 syn keyword lscriptNotesConst PICKLIST_RESOURCES PICKLIST_ROOMS PROMPT_OK PROMPT_OKCANCELCOMBO | |
87 syn keyword lscriptNotesConst PROMPT_OKCANCELEDIT PROMPT_OKCANCELEDITCOMBO PROMPT_OKCANCELLIST | |
88 syn keyword lscriptNotesConst PROMPT_OKCANCELLISTMULT PROMPT_PASSWORD PROMPT_YESNO | |
89 syn keyword lscriptNotesConst PROMPT_YESNOCANCEL QUERYCD READERS REPLICA_CANDIDATE | |
90 syn keyword lscriptNotesConst RICHTEXT RULER_ONE_CENTIMETER RULER_ONE_INCH SEV_FAILURE | |
91 syn keyword lscriptNotesConst SEV_FATAL SEV_NORMAL SEV_WARNING1 SEV_WARNING2 | |
92 syn keyword lscriptNotesConst SIGNATURE SPACING_DOUBLE SPACING_ONE_POINT_50 | |
93 syn keyword lscriptNotesConst SPACING_SINGLE STYLE_NO_CHANGE TAB_CENTER TAB_DECIMAL | |
94 syn keyword lscriptNotesConst TAB_LEFT TAB_RIGHT TARGET_ALL_DOCS TARGET_ALL_DOCS_IN_VIEW | |
95 syn keyword lscriptNotesConst TARGET_NEW_DOCS TARGET_NEW_OR_MODIFIED_DOCS TARGET_NONE | |
96 syn keyword lscriptNotesConst TARGET_RUN_ONCE TARGET_SELECTED_DOCS TARGET_UNREAD_DOCS_IN_VIEW | |
97 syn keyword lscriptNotesConst TEMPLATE TEMPLATE_CANDIDATE TEXT TRIGGER_AFTER_MAIL_DELIVERY | |
98 syn keyword lscriptNotesConst TRIGGER_BEFORE_MAIL_DELIVERY TRIGGER_DOC_PASTED | |
99 syn keyword lscriptNotesConst TRIGGER_DOC_UPDATE TRIGGER_MANUAL TRIGGER_NONE | |
100 syn keyword lscriptNotesConst TRIGGER_SCHEDULED UNAVAILABLE UNKNOWN USERDATA | |
101 syn keyword lscriptNotesConst USERID VC_ALIGN_CENTER VC_ALIGN_LEFT VC_ALIGN_RIGHT | |
102 syn keyword lscriptNotesConst VC_ATTR_PARENS VC_ATTR_PUNCTUATED VC_ATTR_PERCENT | |
103 syn keyword lscriptNotesConst VC_FMT_ALWAYS VC_FMT_CURRENCY VC_FMT_DATE VC_FMT_DATETIME | |
104 syn keyword lscriptNotesConst VC_FMT_FIXED VC_FMT_GENERAL VC_FMT_HM VC_FMT_HMS | |
105 syn keyword lscriptNotesConst VC_FMT_MD VC_FMT_NEVER VC_FMT_SCIENTIFIC | |
106 syn keyword lscriptNotesConst VC_FMT_SOMETIMES VC_FMT_TIME VC_FMT_TODAYTIME VC_FMT_YM | |
107 syn keyword lscriptNotesConst VC_FMT_YMD VC_FMT_Y4M VC_FONT_BOLD VC_FONT_ITALIC | |
108 syn keyword lscriptNotesConst VC_FONT_STRIKEOUT VC_FONT_UNDERLINE VC_SEP_COMMA | |
109 syn keyword lscriptNotesConst VC_SEP_NEWLINE VC_SEP_SEMICOLON VC_SEP_SPACE | |
110 syn keyword lscriptNotesConst VIEWMAPDATA VIEWMAPLAYOUT VW_SPACING_DOUBLE | |
111 syn keyword lscriptNotesConst VW_SPACING_ONE_POINT_25 VW_SPACING_ONE_POINT_50 | |
112 syn keyword lscriptNotesConst VW_SPACING_ONE_POINT_75 VW_SPACING_SINGLE | |
113 | |
114 syn keyword lscriptFunction Abs Asc Atn Atn2 ACos ASin | |
115 syn keyword lscriptFunction CCur CDat CDbl Chr Chr$ CInt CLng Command Command$ | |
116 syn keyword lscriptFunction Cos CSng CStr | |
117 syn keyword lscriptFunction CurDir CurDir$ CVar Date Date$ DateNumber DateSerial DateValue | |
118 syn keyword lscriptFunction Day Dir Dir$ Environ$ Environ EOF Error Error$ Evaluate Exp | |
119 syn keyword lscriptFunction FileAttr FileDateTime FileLen Fix Format Format$ FreeFile | |
120 syn keyword lscriptFunction GetFileAttr GetThreadInfo Hex Hex$ Hour | |
121 syn keyword lscriptFunction IMESetMode IMEStatus Input Input$ InputB InputB$ | |
122 syn keyword lscriptFunction InputBP InputBP$ InputBox InputBox$ InStr InStrB InStrBP InstrC | |
123 syn keyword lscriptFunction IsA IsArray IsDate IsElement IsList IsNumeric | |
124 syn keyword lscriptFunction IsObject IsResponse IsScalar IsUnknown LCase LCase$ | |
125 syn keyword lscriptFunction Left Left$ LeftB LeftB$ LeftC | |
126 syn keyword lscriptFunction LeftBP LeftBP$ Len LenB LenBP LenC Loc LOF Log | |
127 syn keyword lscriptFunction LSet LTrim LTrim$ MessageBox Mid Mid$ MidB MidB$ MidC | |
128 syn keyword lscriptFunction Minute Month Now Oct Oct$ Responses Right Right$ | |
129 syn keyword lscriptFunction RightB RightB$ RightBP RightBP$ RightC Round Rnd RSet RTrim RTrim$ | |
130 syn keyword lscriptFunction Second Seek Sgn Shell Sin Sleep Space Space$ Spc Sqr Str Str$ | |
131 syn keyword lscriptFunction StrConv StrLeft StrleftBack StrRight StrRightBack | |
132 syn keyword lscriptFunction StrCompare Tab Tan Time Time$ TimeNumber Timer | |
133 syn keyword lscriptFunction TimeValue Trim Trim$ Today TypeName UCase UCase$ | |
134 syn keyword lscriptFunction UniversalID Val Weekday Year | |
135 | |
136 syn keyword lscriptMethods AppendToTextList ArrayAppend ArrayReplace ArrayGetIndex | |
137 syn keyword lscriptMethods Append Bind Close | |
138 "syn keyword lscriptMethods Contains | |
139 syn keyword lscriptMethods CopyToDatabase CopyAllItems Count CurrentDatabase Delete Execute | |
140 syn keyword lscriptMethods GetAllDocumentsByKey GetDatabase GetDocumentByKey | |
141 syn keyword lscriptMethods GetDocumentByUNID GetFirstDocument GetFirstItem | |
142 syn keyword lscriptMethods GetItems GetItemValue GetNthDocument GetView | |
143 syn keyword lscriptMethods IsEmpty IsNull %Include Items | |
144 syn keyword lscriptMethods Line LBound LoadMsgText Open Print | |
145 syn keyword lscriptMethods RaiseEvent ReplaceItemValue Remove RemoveItem Responses | |
146 syn keyword lscriptMethods Save Stop UBound UnprocessedDocuments Write | |
147 | |
148 syn keyword lscriptEvents Compare OnError | |
149 | |
150 "************************************************************************************* | |
151 "These are Notes thingies that I'm not sure how to classify as they had no vb equivalent | |
152 " At a wild guess I'd put them as Functions... | |
153 " if anyone sees something really out of place... tell me! | |
154 | |
155 syn keyword lscriptFunction Access Alias Any Bin Bin$ Binary ByVal | |
156 syn keyword lscriptFunction CodeLock CodeLockCheck CodeUnlock CreateLock | |
157 syn keyword lscriptFunction CurDrive CurDrive$ DataType DestroyLock Eqv | |
158 syn keyword lscriptFunction Erl Err Fraction From FromFunction FullTrim | |
159 syn keyword lscriptFunction Imp Int Lib Like ListTag LMBCS LSServer Me | |
160 syn keyword lscriptFunction Mod MsgDescription MsgText Output Published | |
161 syn keyword lscriptFunction Random Read Shared Step UChr UChr$ Uni Unicode | |
162 syn keyword lscriptFunction Until Use UseLSX UString UString$ Width Yield | |
163 | |
164 | |
165 syn keyword lscriptTodo contained TODO | |
166 | |
167 "integer number, or floating point number without a dot. | |
168 syn match lscriptNumber "\<\d\+\>" | |
169 "floating point number, with dot | |
170 syn match lscriptNumber "\<\d\+\.\d*\>" | |
171 "floating point number, starting with a dot | |
172 syn match lscriptNumber "\.\d\+\>" | |
173 | |
174 " String and Character constants | |
175 syn region lscriptString start=+"+ end=+"+ | |
176 syn region lscriptComment start="REM" end="$" contains=lscriptTodo | |
177 syn region lscriptComment start="'" end="$" contains=lscriptTodo | |
178 syn region lscriptLineNumber start="^\d" end="\s" | |
179 syn match lscriptTypeSpecifier "[a-zA-Z0-9][\$%&!#]"ms=s+1 | |
180 | |
181 " Define the default highlighting. | |
182 " For version 5.7 and earlier: only when not done already | |
183 " For version 5.8 and later: only when an item doesn't have highlighting yet | |
184 if version >= 508 || !exists("did_lscript_syntax_inits") | |
185 if version < 508 | |
186 let did_lscript_syntax_inits = 1 | |
187 command -nargs=+ HiLink hi link <args> | |
188 else | |
189 command -nargs=+ HiLink hi def link <args> | |
190 endif | |
191 | |
192 hi lscriptNotesType term=underline ctermfg=DarkGreen guifg=SeaGreen gui=bold | |
193 | |
194 HiLink lscriptNotesConst lscriptNotesType | |
195 HiLink lscriptLineNumber Comment | |
196 HiLink lscriptDatatype Type | |
197 HiLink lscriptNumber Number | |
198 HiLink lscriptError Error | |
199 HiLink lscriptStatement Statement | |
200 HiLink lscriptString String | |
201 HiLink lscriptComment Comment | |
202 HiLink lscriptTodo Todo | |
203 HiLink lscriptFunction Identifier | |
204 HiLink lscriptMethods PreProc | |
205 HiLink lscriptEvents Special | |
206 HiLink lscriptTypeSpecifier Type | |
207 | |
208 delcommand HiLink | |
209 endif | |
210 | |
211 let b:current_syntax = "lscript" | |
212 | |
213 " vim: ts=8 |