# IO language definition file
#
# Author: Andr�Simon
#   Mail: andre.simon1@gmx.de
#   Date: 18.11.2003
#         29.11.1004 added more keywords and symbols
# ------------------------------------------
# This file is a part of highlight, a free source code converter released under the GPL.
#
# The file is used to describe keywords and special symbols of programming languages.
# See README in the highlight directory for details.
#
# New definition files for future releases of highlight are always appreciated ;)
#
# ----------
# andre.simon1@gmx.de
# http:/www.andre-simon.de/

$DESCRIPTION=IO

$KEYWORDS(kwa)=activate activeCoroCount and block break catch
chedulerSleepSeconds clone collectGarbage compileString continue do doFile
doMessage doString else elseif exit for foreach forward getSlot getenv hasSlot
if ifFalse ifNil ifTrue isActive isNil list message method or parent pass
pause perform performWithArgList print proto raise removeSlot resend resume
return self sender setSchedulerSleepSeconds setSlot shallowCopy slotNames
super system then thisBlock thisContext thisMessage try type uniqueId
updateSlot wait write yield

$KEYWORDS(kwb)=Array AudioDevice AudioMixer Block Box Buffer CFunction CGI
Color Curses DBM DNSResolver DOConnection DOProxy DOServer Date Directory
Duration DynLib Error Exception FFT File Fnmatch Font Future GL GLE GLScissor
GLU GLUCylinder GLUQuadric GLUSphere GLUT Host Image Importer LinkList List
Lobby Locals MD5 MP3Decoder MP3Encoder Map Message Movie NULL Nil Nop
Notification Number Object OpenGL Point Protos Regex SGMLTag SQLite Server
ShowMessage SleepyCat SleepyCatCursor Socket SocketManager Sound Soup Store
String Tree UDPSender UPDReceiver URL User Warning WeakLink

$KEYWORDS(kwd)=regex((\w+)\s*\()

$STRINGDELIMITERS=""" ''' " '

$SL_COMMENT=# //

$ML_COMMENT=/* */

$ALLOWNESTEDCOMMENTS=false

$IGNORECASE=false

$ESCCHAR=regex(\\\d{3}|\\x\p{XDigit}{2}|\\[ntvbrfa\\\?'"])

$SYMBOLS= ( ) [ ] { } , ; : & | < > !  = / * %  + - ^ @ .
