# Define SciTE settings for Forth files # These patterns conflict with fortran.properties and nncrontab.properties # so disable these other properties files if you want to use forth. #file.patterns.forth=*.f;*.spf file.patterns.forth=*.forth # add '*.tab;*.spf;' to 'source.files' variable in 'SciTEGlobal.properties' # if you want to include these file patterns into default source file list lexer.$(file.patterns.forth)=forth filter.forth=Forth files (f spf)|$(file.patterns.forth)| word.characters.$(file.patterns.forth)=$(chars.alpha)$(chars.numeric)%- comment.block.forth=\ #comment.block.at.line.start.forth=0 comment.stream.start.forth=( comment.stream.end.forth=) comment.box.start.forth=\ comment.box.middle.forth=\ comment.box.end.forth=\ # Forth styles # control keywords Forth keywords.$(file.patterns.forth)=\ AGAIN BEGIN CASE DO ELSE ENDCASE ENDOF IF LOOP OF REPEAT THEN UNTIL WHILE \ [IF] [ELSE] [THEN] ?DO # Keywords keywords2.$(file.patterns.forth)=\ DUP DROP ROT SWAP OVER @ ! 2@ 2! 2DUP 2DROP 2SWAP 2OVER NIP R@ >R R> 2R@ 2>R 2R> \ 0= 0< SP@ SP! W@ W! C@ C! < > = <> 0<>\ SPACE SPACES KEY? KEY THROW CATCH ABORT */ 2* /MOD CELL+ CELLS CHAR+ \ CHARS MOVE ERASE DABS TITLE HEX DECIMAL HOLD <# # #S #> SIGN \ D. . U. DUMP (.") >NUMBER ' IMMEDIATE EXIT RECURSE UNLOOP LEAVE HERE ALLOT , \ C, W, COMPILE, BRANCH, RET, LIT, DLIT, ?BRANCH, ", >MARK >RESOLVE1 RESOLVE \ ALIGN ALIGNED USER-ALLOT USER-HERE HEADER DOES> SMUDGE HIDE :NONAME LAST-WORD \ ?ERROR ERROR2 FIND1 SFIND SET-CURRENT GET-CURRENT DEFINITIONS GET-ORDER FORTH \ ONLY SET-ORDER ALSO PREVIOUS VOC-NAME. ORDER LATEST LITERAL 2LITERAL SLITERAL \ CLITERAL ?LITERAL1 ?SLITERAL1 HEX-LITERAL HEX-SLITERAL ?LITERAL2 ?SLITERAL2 SOURCE \ EndOfChunk CharAddr PeekChar IsDelimiter GetChar OnDelimiter SkipDelimiters OnNotDelimiter \ SkipWord SkipUpTo ParseWord NextWord PARSE SKIP CONSOLE-HANDLES REFILL DEPTH ?STACK \ ?COMP WORD INTERPRET BYE QUIT MAIN1 EVALUATE INCLUDE-FILE INCLUDED >BODY +WORD \ WORDLIST CLASS! CLASS@ PAR! PAR@ ID. ?IMMEDIATE ?VOC IMMEDIATE VOC WordByAddrWl \ WordByAddr NLIST WORDS SAVE OPTIONS /notransl ANSI>OEM ACCEPT EMIT CR TYPE EKEY? \ EKEY EKEY>CHAR EXTERNTASK ERASE-IMPORTS ModuleName ModuleDirName ENVIRONMENT? \ DROP-EXC-HANDLER SET-EXC-HANDLER HALT ERR CLOSE-FILE CREATE-FILE CREATE-FILE-SHARED \ OPEN-FILE-SHARED DELETE-FILE FILE-POSITION FILE-SIZE OPEN-FILE READ-FILE REPOSITION-FILE \ DOS-LINES UNIX-LINES READ-LINE WRITE-FILE RESIZE-FILE WRITE-LINE ALLOCATE FREE RESIZE \ START SUSPEND RESUME STOP PAUSE MIN MAX TRUE FALSE ASCIIZ> \ R/O W/O ;CLASS ENDWITH OR AND /STRING SEARCH COMPARE EXPORT ;MODULE SPACE # defwords keywords3.$(file.patterns.forth)=\ VARIABLE CREATE : VALUE CONSTANT VM: M: var dvar chars OBJ \ CONSTR: DESTR: CLASS: OBJECT: POINTER \ USER USER-CREATE USER-VALUE VECT \ WNDPROC: VOCABULARY -- TASK: CEZ: MODULE: # prewords1 keywords4.$(file.patterns.forth)=\ CHAR [CHAR] POSTPONE WITH ['] TO [COMPILE] CHAR ASCII \' # prewords2 keywords5.$(file.patterns.forth)=\ REQUIRE WINAPI: # string words keywords6.$(file.patterns.forth)=\ S" ABORT" Z" " ." C" # whitespace (SCE_FORTH_DEFAULT) style.forth.0=$(font.monospace) # Comment (SCE_FORTH_COMMENT) style.forth.1=fore:#009933,$(font.comment),$(font.monospace) # ML comment (SCE_FORTH_COMMENT_ML) style.forth.2=fore:#007F00,$(font.comment) # ML comment (SCE_FORTH_IDENTIFIER) style.forth.3=fore:#000000,bold # control (SCE_FORTH_CONTROL) style.forth.4=fore:#00007F,bold # Keywords (SCE_FORTH_KEYWORD) style.forth.5=fore:#000000,$(font.monospace),bold # defwords (SCE_FORTH_DEFWORD) style.forth.6=fore:#FF0000,bold,$(font.monospace) # preword1 (SCE_FORTH_PREWORD1) style.forth.7=fore:#CC3300,bold,$(font.monospace) # preword2 (SCE_FORTH_PREWORD2) style.forth.8=fore:#996633,bold,$(font.monospace) # number (SCE_FORTH_NUMBER) style.forth.9=fore:#007F7F,$(font.monospace) # Double quoted string (SCE_FORTH_STRING) style.forth.10=fore:#CC3300,$(font.monospace) # locale style.forth.11=fore:#0000CC,$(font.monospace) #command.compile.*.f=spf.cmd $(FileNameExt)