# Express language definition file
#
# Author: André Simon
#   Mail: andre.simon1@gmx.de
#   Date: 04.03.2003
# ------------------------------------------
# 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=Express


$KEYWORDS(kwa)=abs aggindex aggmap aggmapinfo aggregate aggregate allcompile allstat
antilog antilog10 any arccos arcsin arctan argcount argfr args average back
badline begindate blank blankstrip break  cache cachehits cachemisses
cachetries calendarweek call calltype categorize changechars charlist charset
chdir chdrive chgdfn colval colwidth commas compile compilemessage compilewarn
comquery comset comset comunit connect consider context context continue
convert copydfn correlation cos cosh count cumsum database dateformat dateorder
dayabbrlen daynames dayof dbdescribe  dbgoutfile dbgsession dbreport dbwaittime
ddof decimaloverflow decimals define delete deprdecl deprdeclsw deprsl deprsoyd
describe dimension dir disconnect dividebyzero do doend dseconds echoprompt
eifbytes else enddate endof eproduct erelease errnames escapebase eversion
every execbreak execstart execstatus execute execwait exists export exptrace
extargs extchars extcols extlines fcclose fcexec fcopen fcquery fcset fetch
fileclose filecopy filedelete fileerror fileget filemodemask filemove filenext
fileopen filepage fileput filequery fileread fileset fileview filterlines
findchars findlines fintsched for forecast fpmtsched fulldsc get goto growrate
heading hide hiercheck if ifcopy import include infile info inlist inschars
inscols inslines instat intpart irr isdate isvalue joinchars joincols joinlines
key lag lagabspct lagdif lagpct largest lcolwidth ld lead likecase likenl
likeescape limit linenum linesleft listby listfiles listnames load log log10
longobjnames lowcase lsize maintain makedate max maxchars maxfetch median min
mkdir mmof moddamp mode model moderror modgamma modinputorder modmaxiters
modoverflow modsimultype modtolerance modtrace monitor monthabbrlen monthnames
move movingaverage movingmax movingmin movingtotal nafill name napagefree
naskip naskip2 naspell none noprint normal nospell npv numchars numlines obj
objlist obscure off okforlimit on outfile outfileunit page pagepause pageprompt
parens parse pause percentage permit permiterror permitreset pgcachehits
pgcachemisses pop poplevel program property push pushlevel qual random rank
recap recno recursive redo reedit regress relation rem remchars remcols
remlines rename replchars replcols repllines report reserved retrieve return
rmdir rollup rootofnegative round row row rpr runtotal seconds sessionquery set
sharesession shell show shw signal sin sinh sleep smallest smooth sort
sortcomposite sortlines sparseindex sql sqlblockmax sqlmessages sqrt startof
statall statfirst statlast statlen statlist statmax statmin statrank status
statval stddev stdhdr strip subtotal switch sysinfo system tally tan tanh
tconvert tempstat textfill then thousandschar threadextcall tod today total
trace trackprg translate transport trap triggermaxdepth triggerstoreok unhide
uniquelines unravel upcase update upd valsperpage values vintsched vnf
vpmtsched watch weekdaysnewyear weekof while wksdata xabort xcaportnumber
xclose xopen xopen yesspell yrabstart yyof zerorow zerototal zspell

#Variables:
$KEYWORDS(kwb)=arg argument bmargin bool boolean dbextendpath dbsearchpath
dbtemppath decimalchar eifextensionpath eifnames eifshortnames eiftypes
eifupdbytes errorname errortext int integer oknullstatus pagenum pageprg
pagesize paging prgtrace sqlcode sqlerrm text tmargin variable vrb


$STRINGDELIMITERS='

$SL_COMMENT="

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

$IGNORECASE=true

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




