" Vim syntax file " Language: iwbasic " Maintainer: Mark Manning " Originator: Allan Kelly " Originator: Larry Sykes At IonicWind (http://www.ionicwind.com) " Created: 10/1/2006 " Updated: 12/3/2022 " Description: A vim file to handle the iwbasic file format. " Notes: " Updated by Mark Manning " Applied iwbasic support to the already excellent support for standard " basic syntax (like QB). " " First version based on Micro$soft QBASIC circa 1989, as documented in " 'Learn BASIC Now' by Halvorson&Rygmyr. Microsoft Press 1989. " This syntax file not a complete implementation yet. " Send suggestions to the maintainer. " " This version is based upon the commands found in iwbasic (www.ionicwind.com). " MEM 12/3/2022 " " Quit when a (custom) syntax file was already loaded (Taken from c.vim) " if exists("b:current_syntax") finish endif " " Be sure to turn on the "case ignore" since current versions of basic " support both upper as well as lowercase letters. " syn case ignore " " Do the basic variables names first. This is because it " is the most inclusive of the tests. Later on we change " this so the identifiers are split up into the various " types of identifiers like functions, basic commands and " such. MEM 9/9/2006 " syn match iwbasicIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>" syn match iwbasicGenericFunction "\<[a-zA-Z_][a-zA-Z0-9_]*\>\s*("me=e-1,he=e-1 " syn keyword iwbasicTodo contained TODO syn cluster iwbasicFunctionCluster contains=iwbasicBuiltInFunction,iwbasicGenericFunction " "catch errors caused by wrong parenthesis " syn cluster iwbasicParenGroup contains=iwbasicParenError,iwbasicIncluded,iwbasicSpecial,iwbasicTodo,iwbasicUserCont,iwbasicUserLabel,iwbasicBitField syn region iwbasicParen transparent start='(' end=')' contains=ALLBUT,@bParenGroup syn match iwbasicParenError ")" syn match iwbasicInParen contained "[{}]" " "integer number, or floating point number without a dot and with "f". " syn region iwbasicHex start="&h" end="\W" syn region iwbasicHexError start="&h\x*[g-zG-Z]" end="\W" syn match iwbasicInteger "\<\d\+\(u\=l\=\|lu\|f\)\>" " "floating point number, with dot, optional exponent " syn match iwbasicFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>" " "floating point number, starting with a dot, optional exponent " syn match iwbasicFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>" " "floating point number, without dot, with exponent " syn match iwbasicFloat "\<\d\+e[-+]\=\d\+[fl]\=\>" " "hex number " syn match iwbasicIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>" syn match iwbasicFunction "\<[a-zA-Z_][a-zA-Z0-9_]*\>\s*("me=e-1,he=e-1 syn case match syn match iwbasicOctalError "\<0\o*[89]" " " String and Character contstants " syn region iwbasicString start='"' end='"' contains=iwbasicSpecial,iwbasicTodo syn region iwbasicString start="'" end="'" contains=iwbasicSpecial,iwbasicTodo " " Comments " syn match iwbasicSpecial contained "\." syn region iwbasicComment start="^\s*rem" end="$" contains=iwbasicSpecial,iwbasicTodo syn region iwbasicComment start=":\s*rem" end="$" contains=iwbasicSpecial,iwbasicTodo syn region iwbasicComment start="\s*'" end="$" contains=iwbasicSpecial,iwbasicTodo syn region iwbasicComment start="^'" end="$" contains=iwbasicSpecial,iwbasicTodo " " Now do the comments and labels " syn match iwbasicLabel "^\d" syn region iwbasicLineNumber start="^\d" end="\s" " " IWBasic At PreCompiler " syn keyword iwbasicPreCompiler \#DEFINE \$ASM \$AVLTRIM$ \$AVRTRIM$ \$COMMAND \$CONIMAND \$D syn keyword iwbasicPreCompiler \$DEFINE \$ELIF \$ELIFDEF \$ELIFNDEF \$ELSE \$EMIT \$END \$ENDASM syn keyword iwbasicPreCompiler \$ENDEF \$ENDIF \$ENDREGION \$ERROR \$IDNDEF \$IF \$IFDEF \$IFNDEF syn keyword iwbasicPreCompiler \$INCLUBE \$INCLUDE \$MACRO \$MAIN \$MYLNT \$OPTION \$REGION syn keyword iwbasicPreCompiler \$S \$TEST \$THREAD \$TYPEDEF \$UNDECLARE \$UNDEF \$USE \$WARNING " " IWBasic At Variable Type Specifier " syn keyword iwbasicTypeSpecifier byte char double endenum endtype enum float int int64 istring syn keyword iwbasicTypeSpecifier itstring iwstring oem schar tstring type uint uint64 word wchr$ syn keyword iwbasicTypeSpecifier chr$ " " IWBasic At True Type Files " syn keyword iwbasicTrueTypeFiles \@TTF_CEIMTERTIP \@TTF_CENTERTIP \@TTF_IDISHWND \@TTF_RTLREADING syn keyword iwbasicTrueTypeFiles \@TTF_SUBCLASS \@TTF_TRACK " " IWBasic At DTS " syn keyword iwbasicdts \@DTS \@DTS_APPC \@DTS_APPCANPARSE \@DTS_LONGDATEFORM \@DTS_LONGDATEFORMAT syn keyword iwbasicdts \@DTS_RIGHT \@DTS_RIGHTAIIGN \@DTS_RIGHTALIGN \@DTS_SHORTDATEFORMAT syn keyword iwbasicdts \@DTS_SHOWNONE \@DTS_TIMEFORMAT \@DTS_UPDOWN \@DTS_UPDOWNR " " IWBasic At Tab Controls " syn keyword iwbasicTabControls \@TCS_0 \@TCS_BOTTOM \@TCS_BUTTON \@TCS_BUTTONS \@TCS_FIXED syn keyword iwbasicTabControls \@TCS_FIXEDWIDTH \@TCS_FLATBUTTON \@TCS_FLATBUTTONS \@TCS_FOCUSNEVER syn keyword iwbasicTabControls \@TCS_FOCUSONBUTTONDOWN \@TCS_FORCEICON \@TCS_FORCEICONLEFT syn keyword iwbasicTabControls \@TCS_FORCELABELLEFT \@TCS_HOTTRACK \@TCS_M \@TCS_MULT1LINE syn keyword iwbasicTabControls \@TCS_MULTILINE \@TCS_MULTISELECT \@TCS_OWNERDRAWFTXED \@TCS_R1GHT syn keyword iwbasicTabControls \@TCS_RAGGEDRIGHT \@TCS_RIGHT \@TCS_RIGHTJUST1FY \@TCS_RIGHTJUSTIFY syn keyword iwbasicTabControls \@TCS_SCROLLOPPOSITE \@TCS_SIN \@TCS_SINGLELINE \@TCS_TABS \@TCS_TOOLTIPS syn keyword iwbasicTabControls \@TCS_TOOLTLPS \@TCS_VERT1CAL \@TCS_VERTICAL " " IWBasic At Track Bar Control " syn keyword iwbasicTabControls \@TBS_AUTOTICKS \@TBS_AUTOTTCKS \@TBS_BOTH \@TBS_BOTTOM \@TBS_EN syn keyword iwbasicTabControls \@TBS_ENABLESELRANGE \@TBS_FIXEDLENGTH \@TBS_HORZ \@TBS_LEFT syn keyword iwbasicTabControls \@TBS_NOTHUMB \@TBS_NOTTCKS \@TBS_RIGHT \@TBS_TOOLTIPS \@TBS_TOP syn keyword iwbasicTabControls \@TBS_VERT " " IWBasic At RBBS - Unknown " syn keyword iwbasicRBBS \@RBBS_CHILDEDGE \@RBBS_FIXEDBMP \@RBBS_GRIPPERAJLWAYS \@RBBS_HIDDEN syn keyword iwbasicRBBS \@RBBS_NOGRIPPER \@RBBS_NOVERT " " IWBasic At An Integer Specifying Folder To Retrieve " syn keyword iwbasicCSIDL \@CSIDL_ALTSTARTUP \@CSIDL_APPDATA \@CSIDL_BITBUCKET \@CSIDL_CDBURN_AREA syn keyword iwbasicCSIDL \@CSIDL_COMMON_ADMIN \@CSIDL_COMMON_ALTSTARTUP \@CSIDL_COMMON_APPDATA syn keyword iwbasicCSIDL \@CSIDL_COMMON_DESKTOPDIRECTORY \@CSIDL_COMMON_DOCUMENTS \@CSIDL_COMMON_FAVORITES syn keyword iwbasicCSIDL \@CSIDL_COMMON_MUSIC \@CSIDL_COMMON_OEM_UNKS \@CSIDL_COMMON_PICTURES syn keyword iwbasicCSIDL \@CSIDL_COMMON_PROGRAMS \@CSIDL_COMMON_STARTMENU \@CSIDL_COMMON_STARTUP syn keyword iwbasicCSIDL \@CSIDL_COMMON_TEMPLATES \@CSIDL_COMMON_VIDEO \@CSIDL_COMPUTERSNEARME syn keyword iwbasicCSIDL \@CSIDL_CONNECTTONS \@CSIDL_CONTROLS \@CSIDL_COOKIES \@CSIDL_DESKTOP syn keyword iwbasicCSIDL \@CSIDL_DESKTOPDIRECTORY \@CSIDL_FAVORTES \@CSIDL_FONTS \@CSIDL_HISTORY syn keyword iwbasicCSIDL \@CSIDL_INTERNET \@CSIDL_INTERNET_CACHE \@CSIDL_LOCAL_APPDATA syn keyword iwbasicCSIDL \@CSIDL_MYMUSIC \@CSIDL_MYPICTURES \@CSIDL_NETHOOD \@CSIDL_NETWORK syn keyword iwbasicCSIDL \@CSIDL_P \@CSIDL_PERSONAL \@CSIDL_PRINTHOOD \@CSIDL_PROFILE syn keyword iwbasicCSIDL \@CSIDL_PROGRAMS \@CSIDL_PROGRAM_FILESX86 \@CSIDL_PROGRAM_FILES_COMMON syn keyword iwbasicCSIDL \@CSIDL_PROGRAM_FILES_COMMONX86 \@CSIDL_RECENT \@CSIDL_RESOURCES syn keyword iwbasicCSIDL \@CSIDL_SENDTO \@CSIDL_SYSTEM \@CSIDL_WINDOWS " " IWBasic At Rich Text " syn keyword iwbasicRT \@RT1MAGE \@RTALIGNLEFT \@RTCANUNDO \@RTCHARFROMLINE \@RTCOPY syn keyword iwbasicRT \@RTCUT \@RTDELETESEL \@RTEMPTYUNDO \@RTFINDTEXT \@RTGETEVENTM syn keyword iwbasicRT \@RTGETFIRSTLINE \@RTGETLIMITTEXT \@RTGETLINE \@RTGETLINECOUNT syn keyword iwbasicRT \@RTGETLINELENGTH \@RTGETMODIFIED \@RTGETSELECTION \@RTGETSELTEXT syn keyword iwbasicRT \@RTGETTEXTLENGTH \@RTHIDESEL \@RTLINEFROMCHAR \@RTLOAD \@RTPASTE syn keyword iwbasicRT \@RTPRINT \@RTREPLACESEL \@RTS \@RTSAVE \@RTSCROLL \@RTSETALIGNMENT syn keyword iwbasicRT \@RTSETCHAROFFSET \@RTSETDEFAULTCOLOR \@RTSETDEFAULTFONT \@RTSETEVENTMASK syn keyword iwbasicRT \@RTSETLIMITTEXT \@RTSETLINEWIDTH \@RTSETMARGINS \@RTSETMODIFIED syn keyword iwbasicRT \@RTSETSELCOLOR \@RTSETSELECTION \@RTSETSELFONT \@RTUNDO " " IWBasic At edit Control " syn keyword iwbasicED \@ED \@EDCANUNDO \@EDCHARFROMLINE \@EDCOPY \@EDCUT \@EDDELETESEL syn keyword iwbasicED \@EDEMPTYUNDO \@EDGETFIRSTLINE \@EDGETLIMITTEXT \@EDGETLIN \@EDGETLINE syn keyword iwbasicED \@EDGETLINECOUNT \@EDGETLINELENGTH \@EDGETMODIFIED \@EDGETSELECTION syn keyword iwbasicED \@EDIT \@EDLINEFROMCHAR \@EDPASTE \@EDREPLACESEL \@EDSETLIMITTEXT syn keyword iwbasicED \@EDSETMARGINS \@EDSETMODIFIED \@EDSETSELECTION \@EDUNDO " " IWBasic At List View " syn keyword iwbasicLV \@LV \@LVDELETEALL \@LVDELETECOLUMN \@LVDELETEITEM \@LVFINDITEM syn keyword iwbasicLV \@LVGETCOLUMNTEXT \@LVGETCOLWIDTH \@LVGETCOUNT \@LVGETSELCOUNT syn keyword iwbasicLV \@LVGETSELECTED \@LVGETTEXT \@LVGETTOPINDEX \@LVINSERTCOLUMN syn keyword iwbasicLV \@LVINSERTITEM \@LVN \@LVNBEGINLABELEDIT \@LVNDELETEITEM \@LVNENDLABELEDIT syn keyword iwbasicLV \@LVNIN \@LVNITEMCHAN \@LVNKEYDOWN \@LVS \@LVSALIGNLEFT \@LVSALIGNTOP syn keyword iwbasicLV \@LVSEDITLABELS \@LVSETCOLUMNTEXT \@LVSETCOLWIDTH \@LVSETSELECTED syn keyword iwbasicLV \@LVSICON \@LVSLIST \@LVSN \@LVSNOCOLUMNHEADER \@LVSNOLABELWRAP syn keyword iwbasicLV \@LVSNOSCROLL \@LVSNOSORTHEADER \@LVSREPORT \@LVSSINGLESEL \@LVSSORTASCENDING syn keyword iwbasicLV \@LVSSORTDESCENDING " " IWBasic At Message Box " syn keyword iwbasicMB \@MB \@MB_CANCELTRYCONTTNUE \@MB_IC \@MB_ICONEXCLAMATTON \@MB_ICONINFORMATTON syn keyword iwbasicMB \@MB_ICONSTOP \@MB_OK \@MB_OKCANCEL \@MB_RETRYCANCEL \@MB_YESNO syn keyword iwbasicMB \@MB_YESNOCANCEL " " IWBasic At Identity Information " syn keyword iwbasicID \@ID \@IDBEFOREN \@IDBEFORENAV \@IDC \@IDCANCEL \@IDCHAR \@IDCLOSEWINDOW syn keyword iwbasicID \@IDCONTROL \@IDCONTTNUE \@IDCREATE \@IDDESTROY \@IDDXUPDATE syn keyword iwbasicID \@IDERASEBACKGROUN \@IDERASEBACKGROUND \@IDHSCROLI7 \@IDHSCROLL syn keyword iwbasicID \@IDIGNORE \@IDINITDIALOG \@IDINITDLALOG \@IDINTIDIALOG \@IDKEYDOWN syn keyword iwbasicID \@IDKEYUP \@IDLBUTTONDBLCL \@IDLBUTTONDBLCLK \@IDLBUTTONDN \@IDLBUTTONUP syn keyword iwbasicID \@IDMENUINIT \@IDMENUPICK \@IDMOUSEMOVE \@IDMOVE \@IDMOVING syn keyword iwbasicID \@IDN \@IDNAVCOMPLETE \@IDNO \@IDNOTEFYCODE \@IDNOTIFYCODE \@IDNOTTFYCODE syn keyword iwbasicID \@IDOK \@IDPAINT \@IDRBUTTONDBLCL \@IDRBUTTONDBLCLK \@IDRBUTTONDN syn keyword iwbasicID \@IDRBUTTONUP \@IDS \@IDSIZE \@IDSIZECHANGED \@IDSIZING \@IDSTATUSTEXTUPDATE syn keyword iwbasicID \@IDT1MER \@IDTIMER \@IDTTMER \@IDVSCROLL " " IWBasic At Control/Caption Text " syn keyword iwbasicCT \@CT \@CTC1OM \@CTCOM \@CTCOMBODROPDOWN \@CTCOMBODROPLIST \@CTCOMBOSIMPLE syn keyword iwbasicCT \@CTCOMBOSORT \@CTEDITAPTOH \@CTEDITAUTO \@CTEDITAUTOH \@CTEDITAUTOV syn keyword iwbasicCT \@CTEDITCENTER \@CTEDITLEFT \@CTEDITMULTI \@CTEDITNUMBER \@CTEDITPASS syn keyword iwbasicCT \@CTEDITRETURN \@CTEDITRIGHT \@CTEDITRO \@CTLBTNBITM \@CTLBTNDEFAULT syn keyword iwbasicCT \@CTLBTNFLAT \@CTLBTNMULTI \@CTLEDITPASS \@CTLISTCOLUMN \@CTLISTCOLUMNS syn keyword iwbasicCT \@CTLISTEXTENDED \@CTLISTM \@CTLISTMULTI \@CTLISTN \@CTLISTNOTLFY syn keyword iwbasicCT \@CTLISTSORT \@CTLISTSTANDARD \@CTLISTTABS \@CTLSTCBITMAP \@CTLSTCBITMAPR syn keyword iwbasicCT \@CTSCROLLHORIZ \@CTSCROLLVERT " " IWBasic At Tool Bar " syn keyword iwbasicTB \@TB \@TBBOTTOM \@TBBUTTONCHECK \@TBBUTTONGROUP \@TBENABLEBUTTON syn keyword iwbasicTB \@TBFLAT \@TBFROM \@TBGETBUTTONHEIGHT \@TBGETBUTTONSTATE \@TBGETBUTTONWIDTH syn keyword iwbasicTB \@TBLEFT \@TBLIST \@TBN \@TBNOALIGN \@TBNORESIZE \@TBRESIZE syn keyword iwbasicTB \@TBRIGHT \@TBSET11P \@TBSETBITMAPSIZE \@TBSETBUTTONSIZE \@TBSETBUTTONSTYLE syn keyword iwbasicTB \@TBSETLABELS \@TBSETTIP \@TBTOOLTIPS \@TBTOP \@TBTRAN \@TBWRAPABLE " " IWBasic At Tree-View " syn keyword iwbasicTV \@TVN \@TVNBEGINDRAG \@TVNBEGINLABELEDIT \@TVNBEGINRDRAG \@TVNDELETEITEM syn keyword iwbasicTV \@TVNENDLABELEDIT \@TVNGETTNFOTIP \@TVNGETTNFOUP \@TVNITEMEXPANDED syn keyword iwbasicTV \@TVNITEMEXPANDING \@TVNKEYDOWN \@TVS \@TVSDISABLEDRAGDROP \@TVSEDITLABELS syn keyword iwbasicTV \@TVSFULLROWSELECT \@TVSHASBUTTON \@TVSHASLINES \@TVSINFOTIP syn keyword iwbasicTV \@TVSLINESATROOT \@TVSN \@TVSNOSCROLL \@TVSRTLREADING \@TVSSINGLEEXPAND syn keyword iwbasicTV \@TVSTRACKS " " IWBasic At Combo Box Notifications " syn keyword iwbasicCBN \@CBN \@CBNCLOSEUP \@CBNDBLCLICK \@CBNDRLCLICK \@CBNDROPDOWN syn keyword iwbasicCBN \@CBNEDITCHANGE \@CBNEDITUPATE \@CBNERRSPACE \@CBNKILLFOCUS " " IWBasic At ReBar Control " syn keyword iwbasicRBS \@RBS_ \@RBS_AUTOSIZE \@RBS_BANDBORDERS \@RBS_DBLCLKTOGGLE \@RBS_FIXEDORDER syn keyword iwbasicRBS \@RBS_REGISTERDROP \@RBS_TOOLTTPS \@RBS_VARHEIGHT " " IWBasic At Edit Control " syn keyword iwbasicEN \@EN \@ENCHANGE \@ENENTERKEY \@ENERRSPACE \@ENHSCROLL \@ENKILLFOCUS syn keyword iwbasicEN \@ENM \@ENMAXTEXT \@ENMCHANGE \@ENMNONE \@ENMREQUESTRESIZE \@ENMSCROLL syn keyword iwbasicEN \@ENMUPDATE \@ENREQUESTRESIZE \@ENSELC \@ENSETEOCUS \@ENSETFOCUS syn keyword iwbasicEN \@ENTABKEY \@ENTAJBKEY \@ENUPDATE \@ENVSCROLL " " IWBasic At Resource Control " syn keyword iwbasicRES \@RES \@RESCURSOR \@RESDATA \@RESGROUPCURSOR \@RESGROUPICON syn keyword iwbasicRES \@RESMESSAGETABLE \@RESSTRING " " IWBasic At Menu Control " syn keyword iwbasicMENU \@MENUCHECK \@MENUCIIECK \@MENUDIS \@MENUNUM \@SYSMENU " " IWBasic At File Control " syn keyword iwbasicFILE \@FILE_ARCHIVE \@FILE_COMPRESSED \@FILE_DEVICE \@FILE_DIRECTORY syn keyword iwbasicFILE \@FILE_HIDDEN \@FILE_NORMAL \@FILE_READONLY " " IWBasic At Camera Defines Control " syn keyword iwbasicC3D " " IWBasic At Scroll Bar " syn keyword iwbasicSB \@SBBOTTOM \@SBEND \@SBLEFT \@SBLINEDOWN \@SBLINEIIP \@SBLINELEFT syn keyword iwbasicSB \@SBLINERIGHT \@SBLINEUP \@SBPAGEDOWN \@SBPAGEUP \@SBRIGHT \@SBTHUMBPOS syn keyword iwbasicSB \@SBTHUMBTRACK \@SBTOP \@SCROLLBAR \@SCROLLDOWN \@SCROLLLEFT syn keyword iwbasicSB \@SCROLLRIGHT \@SCROLLUP " " IWBasic At Raster Mode " syn keyword iwbasicRM \@RMBLACK \@RMCOPYPEN \@RMM \@RMMASKNOTPEN \@RMMERGEN \@RMMERGEPEN syn keyword iwbasicRM \@RMMERGEPENNOT \@RMNOP \@RMNOT \@RMNOTCOPYPEN \@RMNOTM \@RMNOTMERGEPEN syn keyword iwbasicRM \@RMNOTXORPEN \@RMWHITE \@RMXORPEN " " IWBasic At Vertex commands " syn keyword iwbasicVertex " " IWBasic At SET commands " syn keyword iwbasicSET " " IWBasic At GET commands " syn keyword iwbasicGET " " IWBasic At TYPE commands " syn keyword iwbasicTYPE \@TYPEBFILE \@TYPECHAR \@TYPEDOUBLE \@TYPEFILE \@TYPEFLOAT \@TYPEINT syn keyword iwbasicTYPE \@TYPEINT64 \@TYPEMEMORY \@TYPEPOINTER \@TYPEUINT \@TYPEUINT64 syn keyword iwbasicTYPE \@TYPEUSER \@TYPEWORD " " IWBasic At VEC commands " syn keyword iwbasicVEC " " IWBasic At Database commands " syn keyword iwbasicDatabase " " IWBasic At Function commands " syn keyword iwbasicFunction ACOS ACOSD APPEND$ ASIN ASIND ATAN ATAND CHR$ COS COSD COSH syn keyword iwbasicFunction COSHD DATE$ FACOS FACOSD FASIN FASIND FATAN FATAND FCOS FCOSD syn keyword iwbasicFunction FCOSH FCOSHD FSIN FSIND FSINH FSINHD FTAN FTAND FTANH FTANHD syn keyword iwbasicFunction GETANGLE HEX$ INKEY$ LCASE$ LEFT$ LTRIM$ MID$ PLAYMIDI$ REPLACE$ syn keyword iwbasicFunction RIGHT$ RTRIM$ SETANGLE SIN SIND SINH SINHD SPACE$ STOPMIDI$ syn keyword iwbasicFunction STR$ STRING$ TAN TAND TANH TANHD TIME$ UCASE$ WHEX$ WLCASE$ syn keyword iwbasicFunction WLEFT$ WLTRIM$ WMID$ WRIGHT$ WRTRIM$ WSPACE$ WSTR$ WSTRING$ syn keyword iwbasicFunction WUCASE$ " " IWBasic At Graphical commands " syn keyword iwbasicGraphical BACKPEN BEGIN2D BEGINRENDERCUBETEXTURE C3DCAMERA C3DLANDSCAPE syn keyword iwbasicGraphical C3DLIGHT C3DMESH C3DOBJECT C3DSCREEN CIRCLE COLOR COLORREQUEST syn keyword iwbasicGraphical CREATEBOX CREATECUBETEXTURE CREATEMAPDATA CREATERECTANGLE CREATESPHERE syn keyword iwbasicGraphical D3DCOLORVALUE DRAW DRAWAALINE DRAWALPHALINE DRAWFILLEDRECT DRAWLINE syn keyword iwbasicGraphical DRAWMAP DRAWMODE DRAWRECT DTPGETMCCOLOR DTPSETMCCOLOR ENABLEALPHA syn keyword iwbasicGraphical ENABLEFOG ENABLESPHEREMAPPING END2D ENDRENDERCUBETEXTURE FILLPALETTE syn keyword iwbasicGraphical FILLSCREEN FLIP FLOODFILL FREEMAP FRONTPEN GETBITMAPSIZE GETDIRECTION syn keyword iwbasicGraphical GETMAPCOUNT GETMAPDATA GETMAPHEIGHT GETMAPPIXELHEIGHT GETMAPPIXELWIDTH syn keyword iwbasicGraphical GETMAPWIDTH GETMATRIX GETMODULATECOLOR GETPALETTECOLOR GETPIXEL syn keyword iwbasicGraphical LINE LINETO LOAD3DS LOADMAPDATA MAPDRAWMODE MAPMASKCOLOR MATRIX4 syn keyword iwbasicGraphical MATRIXIDENTITY MATRIXMULTIPLY MATRIXROTATION MATRIXTRANSLATION syn keyword iwbasicGraphical MOVEMAP NEWMAP ORIENT PSET RASTERMODE RBSETBANDCOLORS READPIXEL syn keyword iwbasicGraphical RECT REDRAWFRAME RESET RGB RGBA RGBTOSCREEN RGNFROMBITMAP ROTATE syn keyword iwbasicGraphical SAVEMAPDATA SCROLLMAP SETALPHAARG1 SETALPHAARG2 SETALPHADEST syn keyword iwbasicGraphical SETALPHAOP SETALPHAOPERATION SETALPHASOURCE SETANIMATION SETANIMATIONMODE syn keyword iwbasicGraphical SETBUTTONBITMAPS SETCOLORARG1 SETCOLORARG2 SETCOLOROPERATION syn keyword iwbasicGraphical SETCONTROLCOLOR SETDIRECTION SETFILL SETFOGCOLOR SETFOGRANGE syn keyword iwbasicGraphical SETFOV SETFRONTPLANE SETHTCOLOR SETMAPDATA SETMAPVIEWPORT SETMATRIX syn keyword iwbasicGraphical SETMODULATECOLOR SETNAMEDANIMATION SETPALETTECOLOR SETPHI SETPROGRESSBARCOLOR syn keyword iwbasicGraphical SETSHADING SETWINDOWCOLOR SPHERECOLLIDED TTSETTOOLRECT UPDATEALLANIMATIONS syn keyword iwbasicGraphical UPDATEANIMATION USEVERTEXCOLOR VERTEX0TEXTURE VERTEX1TEXTURE syn keyword iwbasicGraphical VERTEX2TEXTURE VERTEX3TEXTURE VERTEX4TEXTURE VERTEX5TEXTURE syn keyword iwbasicGraphical VERTEX6TEXTURE VERTEX7TEXTURE VERTEX8TEXTURE WRITEALPHAPIXEL syn keyword iwbasicGraphical WRITEPIXEL WRITEPIXELFAST " " IWBasic At Conditional commands " syn keyword iwbasicConditional IF THEN DO UNTIL ELSE " " IWBasic At Joystick commands " syn keyword iwbasicJoystick \@JOYTYPEJHEADTRACKER \@JOYTYPE_FLIGHTSTICK \@JOYTYPE_GAMEPAD syn keyword iwbasicJoystick \@JOYTYPE_HEADTRACKER \@JOYTYPE_RUDDER \@JOYTYPE_TRADITTONAL syn keyword iwbasicJoystick \@JOYTYPE_UNKNOWN \@JOYTYPE_WHEEL " " IWBasic At Loop commands " syn keyword iwbasicLoop FOR NEXT WHILE ENDWHILE " " IWBasic General Commands " syn keyword iwbasicGeneral \@ALPHA \@B \@BACKENABLED \@BLOCKCOPY \@BN_CLICKED \@BN_DBLCLK syn keyword iwbasicGeneral \@BN_KILLF \@BN_SETF \@BORDER \@BORDERJ \@BS_CENTER \@BS_LEFT syn keyword iwbasicGeneral \@BS_NOTEFY \@BS_RIGHT \@BS_TOP \@BS_V \@BUTT0N \@BUTTON \@CANCELNAV syn keyword iwbasicGeneral \@CAPTION \@CB \@CHECKBOX \@CLASS \@CODE \@COMBOBOX \@CONTROLID syn keyword iwbasicGeneral \@CROUP \@CS \@CSARROW \@CSCUSTOM \@CSWAIT \@D \@DISABLE \@EXCLIENTEDGE syn keyword iwbasicGeneral \@EXRIGHT \@EXSTATTCEDGE \@EXWINDO \@FALT \@FCONTROL \@FNOINVERT syn keyword iwbasicGeneral \@FORWARDENABLED \@FSHIFT \@FVIRTKEY \@GETHEADERS \@GETNAVURU syn keyword iwbasicGeneral \@GETPOSTDATA \@GETSTATUSTEXT \@GETTTTLE \@GROTJP \@GROUP \@GROUPBOX syn keyword iwbasicGeneral \@HD \@HDS_BUTTONS \@HDS_DRAGDROP \@HDS_FULLDRAG \@HDS_HIDDEN syn keyword iwbasicGeneral \@HDS_HORZ \@HDS_HOTTRACK \@HFLIP \@HITWINDO \@HITWINDOW \@HS syn keyword iwbasicGeneral \@HSCROLL \@IMGBITMAP \@IMGCURSOR \@IMGCURSORTO \@IMGEMF \@IMGICON syn keyword iwbasicGeneral \@IMGMAPCOLORS \@IMGOEM \@IMGSCALABLE \@KLCRI£ \@LBN \@LBNDBLCLK syn keyword iwbasicGeneral \@LBNERRSPACE \@LBNKILLFOCUS \@LBNSELCHANGE \@LEFTTEXT \@LEFTTEXTJ syn keyword iwbasicGeneral \@LISTBOX \@LISTVIEW \@LPARAM \@LS \@LSDASH \@LSDASHDOT \@LSDASHDOTDOT syn keyword iwbasicGeneral \@LSDOT \@LSINSIDE \@LSSOLID \@LYSETTEXT \@M \@MAXBOX \@MC \@MCN_C syn keyword iwbasicGeneral \@MCN_SELCHANCE \@MCN_SELECT \@MCS \@MCS_DAYSTATE \@MCS_MULTISELECT syn keyword iwbasicGeneral \@MCS_NOTODAY \@MDIFRAME \@MESSAGE \@MINBOX \@MOUSEX \@MOUSEY syn keyword iwbasicGeneral \@MULTISELECT \@N \@NAVIGATE \@NMCLICK \@NMDBLCLK \@NMKILLFOCUS syn keyword iwbasicGeneral \@NMRCLICK \@NMSETFOCUS \@NO \@NOAUTODRAW \@NORESIZE \@NOTIFYCODE syn keyword iwbasicGeneral \@NOTLFYCODE \@NOTTF \@OPAQUE \@PB \@PBS_MARQUEE \@PBS_SMOOTH syn keyword iwbasicGeneral \@PBS_VERTIC \@PGF_DEPRESSED \@PGF_GRAYED \@PGF_HOT \@PGF_IN syn keyword iwbasicGeneral \@PGF_INVISIBLE \@PGS_AUTOS \@PGS_AUTOSCROLL \@PGS_DRAGNDROP syn keyword iwbasicGeneral \@PGS_HORZ \@PGS_VERT \@QUAL \@RADIOBUTTON \@RB \@RBN_ \@RBN_AUTOSIZE syn keyword iwbasicGeneral \@RBN_GETOBJECT \@RGN \@RGNBUTTON \@RICHEDIT \@RJBBS_CHILDEDGE syn keyword iwbasicGeneral \@RJBBS_FIXEDSIZE \@RJGNBUTTON \@ROTOZOOM \@R£SCURSOR \@S \@SCALED syn keyword iwbasicGeneral \@SFITALIC \@SFSTRIKEOUT \@SFUNDERLINE \@SIZE \@SNDASYNC \@SNDLOOP syn keyword iwbasicGeneral \@SNDNOSTOP \@SNDS \@SNDSYNC \@SS \@SS_CENTER \@SS_CENTERR \@SS_LEFT syn keyword iwbasicGeneral \@SS_NOTIFY \@SS_NOTTFY \@SS_RIGHT \@SS_RIGHTR \@SS_SIMPLE \@STATIC syn keyword iwbasicGeneral \@STATTC \@SWEHDE \@SWHIDE \@SWHIDETO \@SWMAXIMIZED \@SWMINIMIZED syn keyword iwbasicGeneral \@SWRESIZE \@SWRESTORE \@SWRESTORETO \@SWSETPANES \@SWSETPANETEXT syn keyword iwbasicGeneral \@SWSHOW \@SYS \@SYSBUTTON \@T \@T1 \@TABSTOP \@TARSTOP \@TCN_S syn keyword iwbasicGeneral \@TCN_SELCHANGE \@TCS \@TRAN \@TRANS \@TRANSC \@TRANSHFLIP \@TRANSPARENT syn keyword iwbasicGeneral \@TRANSROTOZOOM \@TRANSSC \@TRANSSCALED \@TRANSSHADOW \@TRANSVFLIP syn keyword iwbasicGeneral \@TREEVIEW \@TRS_TOP \@TT \@TTS_ \@TTS_ALWAYSTIP \@TTS_BALLOON syn keyword iwbasicGeneral \@TTS_N \@TTS_NOANIMATE \@TTS_NOFADE \@TTS_NOPREFIX \@UDSARROWKEYS syn keyword iwbasicGeneral \@UDSHORZ \@UDSHOTTRACK \@UDS_ALIGN \@UDS_ALIGNLEFT \@UDS_ALIGNRIGHT syn keyword iwbasicGeneral \@UDS_ARROWKEYS \@UDS_AUTOBUDDY \@UDS_HORZ \@UDS_HOTTRACK \@UDS_NOTHOUS syn keyword iwbasicGeneral \@UDS_NOTHOUSANDS \@UDS_SETBUDDYINT \@UDS_WRAP \@USEDEFAULT syn keyword iwbasicGeneral \@VFLIP \@VSCROLL \@WP \@WPARAM \@XAXIS \@YAXIS \@YAXISOR@ZAXIS syn keyword iwbasicGeneral \@ZAXIS " "-------------------------------------------------------------------------------- " OLD Original ibasic command - Commented out " " syn region ibasicPreCompiler start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" " skip="\$" end="$" contains=ibasicString,ibasicCharacter,ibasicNumber,ibasicCommentError,ibasicSpaceError " "-------------------------------------------------------------------------------- " " Pre-compiler options " syn match iwbasicInclude "^\s*\$\s*include\s*" " " Create the clusters " syn cluster iwbasicNumber contains=iwbasicHex,iwbasicInteger,iwbasicFloat syn cluster iwbasicError contains=iwbasicHexError syn cluster iwbasicOther contains=iwbasicRBBS,iwbasicCSIDL,iwbasicRT syn cluster iwbasicOther contains=iwbasicED,iwbasicLV,iwbasicMB syn cluster iwbasicOther contains=iwbasicID,iwbasicCT,iwbasicTB syn cluster iwbasicOther contains=iwbasicTV,iwbasicCBN,iwbasicRBS syn cluster iwbasicOther contains=iwbasicEN,iwbasicRES,iwbasicMENU syn cluster iwbasicOther contains=iwbasicFILE,iwbasicC3D,iwbasicSB syn cluster iwbasicOther contains=iwbasicRM " " Used with OPEN statement " syn match iwbasicFilenumber "#\d\+" " "syn sync ccomment iwbasicComment " syn match iwbasicMathOperator "[\+\-\=\|\*\/\>\<\%\()[\]]" contains=iwbasicParen " " The default methods for highlighting. Can be overridden later " " hi def link iwbasicLabel Label " " Def Links " hi def link iwBasiciwBasicLabel Label hi def link iwBasiciwBasicRepeat Repeat hi def link iwBasiciwBasicHex Number hi def link iwBasiciwBasicInteger Number hi def link iwBasiciwBasicFloat Number hi def link iwBasiciwBasicError Error hi def link iwBasiciwBasicHexError Error hi def link iwBasiciwBasicStatement Statement hi def link iwBasiciwBasicGraphical Statement hi def link iwBasiciwBasicCombo Statement hi def link iwBasiciwBasicString String hi def link iwBasiciwBasicComment Comment hi def link iwBasiciwBasicLineNumber Comment hi def link iwBasiciwBasicSpecial Special hi def link iwBasiciwBasicTodo Todo hi def link iwBasiciwBasicGenericFunction Function hi def link iwBasiciwBasicBuiltInFunction Function hi def link iwBasiciwBasicTypeSpecifier Type hi def link iwBasiciwBasicDefine Define hi def link iwBasiciwBasicInclude Include hi def link iwBasiciwBasicIdentifier Identifier hi def link iwBasiciwBasicFilenumber Type hi def link iwBasiciwBasicMathOperator Operator hi def link iwBasiciwBasicPreCompiler PreProc hi def link iwBasiciwBasicClassExporter StorageClass hi def link iwBasiciwBasicLinkedLists Statement hi def link iwBasiciwBasicPagerControl Statement hi def link iwBasiciwBasicTabControl Statement hi def link iwBasiciwBasicTreeView Statement hi def link iwBasiciwBasicHeaderControl Statement hi def link iwBasiciwBasicDatabase Statement hi def link iwBasiciwBasicDialog Statement hi def link iwBasiciwBasicVector Statement hi def link iwBasiciwBasicSprite Statement hi def link iwBasiciwBasicCalendar Statement hi def link iwBasiciwBasicMenu Statement hi def link iwBasiciwBasicLoop Repeat hi def link iwBasiciwBasicKeepers Statement hi def link iwBasiciwBasicFlags Statement hi def link iwBasicNORMAL NORMAL hi def link iwBasicCONDITIONAL CONDITIONAL hi def link iwBasicREPEAT REPEAT hi def link iwBasicSTORAGECLASS STORAGECLASS hi def link iwBasicLABEL LABEL hi def link iwBasicINCLUDE INCLUDE hi def link iwBasicSTRING STRING hi def link iwBasicCONSTANT CONSTANT hi def link iwBasicBOOLEAN BOOLEAN hi def link iwBasicDEFINE DEFINE hi def link iwBasicNUMBER NUMBER hi def link iwBasicJAVASCRIPTVALUE JAVASCRIPTVALUE hi def link iwBasicFLOAT FLOAT hi def link iwBasicTYPE TYPE hi def link iwBasicFUNCTION FUNCTION hi def link iwBasicCOMMENT COMMENT hi def link iwBasicDELIMITER DELIMITER hi def link iwBasicCHARACTER CHARACTER hi def link iwBasicOPERATORS OPERATORS hi def link iwBasicOPERATOR OPERATOR hi def link iwBasicDEBUG DEBUG hi def link iwBasicIDENTIFIER IDENTIFIER hi def link iwBasicKEYWORD KEYWORD hi def link iwBasicMACRO MACRO hi def link iwBasicERROR ERROR hi def link iwBasicEXCEPTION EXCEPTION hi def link iwBasicJAVASCRIPTERROR JAVASCRIPTERROR hi def link iwBasicERRORMSG ERRORMSG hi def link iwBasicPREPROC PREPROC hi def link iwBasicPRECONDIT PRECONDIT hi def link iwBasicSTATEMENT STATEMENT hi def link iwBasicSTRUCTURE STRUCTURE hi def link iwBasicSPECIAL SPECIAL hi def link iwBasicSPECIALCHAR SPECIALCHAR hi def link iwBasicJAVASCRIPTSPECIAL JAVASCRIPTSPECIAL hi def link iwBasicTODO TODO hi def link iwBasicVARIABLE VARIABLE hi def link iwBasicSEARCH SEARCH hi def link iwBasicINCSEARCH INCSEARCH hi def link iwBasicSTATUSLINENC STATUSLINENC hi def link iwBasicSTATUSLINE STATUSLINE hi def link iwBasicTOOLTIP TOOLTIP hi def link iwBasicCURSOR CURSOR hi def link iwBasicHTMLLINK HTMLLINK hi def link iwBasicPreProc PreCompiler hi def link iwBasicType TypeSpecifier hi def link iwBasicString Statement hi def link iwBasicTabControls TabControls hi def link iwBasicVertex Statement hi def link iwBasicSET Statement hi def link iwBasicGET Statement hi def link iwBasicVEC Statement hi def link iwBasicDatabase Database hi def link iwBasicFunction Function hi def link iwBasicGraphical Graphical hi def link iwBasicConditional Conditional hi def link iwBasicGeneral Statement hi def link iwBasicOther Statement " " The list below is all of the type names you can use that produces a color combination. " " Normal Conditional Repeat StorageClass Label Include String Constant Boolean Define Number " javaScriptValue Float Type Function Comment Delimiter Character Operators Operator Debug Identifier " Keyword Macro Error Exception javaScriptError ErrorMsg PreProc PreCondit Statement Structure " Special SpecialChar javaScriptSpecial Todo Variable Search IncSearch StatusLineNC StatusLine ToolTip Cursor htmlLink " let b:current_syntax = "iwbasic" " vim: ts=4