Mercurial > vim
view runtime/syntax/tsscl.vim @ 10048:43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Aug 30 23:26:57 2016 +0200
Updated runtime files. Remove version checks for Vim older than 6.0.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 30 Aug 2016 23:30:09 +0200 |
parents | 3fc0f57ecb91 |
children | 46763b01cd9a |
line wrap: on
line source
" Vim syntax file " Language: TSS (Thermal Synthesizer System) Command Line " Maintainer: Adrian Nagle, anagle@ball.com " Last Change: 2003 May 11 " Filenames: *.tsscl " URL: http://www.naglenet.org/vim/syntax/tsscl.vim " MAIN URL: http://www.naglenet.org/vim/ " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif " Ignore case syn case ignore " " " Begin syntax definitions for tss geomtery file. " " Load TSS geometry syntax file "source $VIM/myvim/tssgm.vim "source $VIMRUNTIME/syntax/c.vim " Define keywords for TSS syn keyword tssclCommand begin radk list heatrates attr draw syn keyword tssclKeyword cells rays error nodes levels objects cpu syn keyword tssclKeyword units length positions energy time unit solar syn keyword tssclKeyword solar_constant albedo planet_power syn keyword tssclEnd exit syn keyword tssclUnits cm feet meters inches syn keyword tssclUnits Celsius Kelvin Fahrenheit Rankine " Define matches for TSS syn match tssclString /"[^"]\+"/ contains=ALLBUT,tssInteger,tssclKeyword,tssclCommand,tssclEnd,tssclUnits syn match tssclComment "#.*$" " rational and logical operators " < Less than " > Greater than " <= Less than or equal " >= Greater than or equal " == or = Equal to " != Not equal to " && or & Logical AND " || or | Logical OR " ! Logical NOT " " algebraic operators: " ^ or ** Exponentation " * Multiplication " / Division " % Remainder " + Addition " - Subtraction " syn match tssclOper "||\||\|&&\|&\|!=\|!\|>=\|<=\|>\|<\|+\|-\|^\|\*\*\|\*\|/\|%\|==\|=\|\." skipwhite " CLI Directive Commands, with arguments " " BASIC COMMAND LIST " *ADD input_source " *ARITHMETIC { [ON] | OFF } " *CLOSE unit_number " *CPU " *DEFINE " *ECHO[/qualifiers] { [ON] | OFF } " *ELSE [IF { 0 | 1 } ] " *END { IF | WHILE } " *EXIT " *IF { 0 | 1 } " *LIST/n list variable " *OPEN[/r | /r+ | /w | /w+ ] unit_number file_name " *PROMPT prompt_string sybol_name " *READ/unit=unit_number[/LOCAL | /GLOBAL ] sym1 [sym2, [sym3 ...]] " *REWIND " *STOP " *STRCMP string_1 string_2 difference " *SYSTEM command " *UNDEFINE[/LOCAL][/GLOBAL] symbol_name " *WHILE { 0 | 1 } " *WRITE[/unit=unit_number] output text " syn match tssclDirective "\*ADD" syn match tssclDirective "\*ARITHMETIC \+\(ON\|OFF\)" syn match tssclDirective "\*CLOSE" syn match tssclDirective "\*CPU" syn match tssclDirective "\*DEFINE" syn match tssclDirective "\*ECHO" syn match tssclConditional "\*ELSE" syn match tssclConditional "\*END \+\(IF\|WHILE\)" syn match tssclDirective "\*EXIT" syn match tssclConditional "\*IF" syn match tssclDirective "\*LIST" syn match tssclDirective "\*OPEN" syn match tssclDirective "\*PROMPT" syn match tssclDirective "\*READ" syn match tssclDirective "\*REWIND" syn match tssclDirective "\*STOP" syn match tssclDirective "\*STRCMP" syn match tssclDirective "\*SYSTEM" syn match tssclDirective "\*UNDEFINE" syn match tssclConditional "\*WHILE" syn match tssclDirective "\*WRITE" syn match tssclContChar "-$" " C library functoins " Bessel functions (jn, yn) " Error and complementary error fuctions (erf, erfc) " Exponential functions (exp) " Logrithm (log, log10) " Power (pow) " Square root (sqrt) " Floor (floor) " Ceiling (ceil) " Floating point remainder (fmod) " Floating point absolute value (fabs) " Gamma (gamma) " Euclidean distance function (hypot) " Hperbolic functions (sinh, cosh, tanh) " Trigometric functions in radians (sin, cos, tan, asin, acos, atan, atan2) " Trigometric functions in degrees (sind, cosd, tand, asind, acosd, atand, " atan2d) " " local varialbles: cl_arg1, cl_arg2, etc. (cl_arg is an array of arguments) " cl_args is the number of arguments " " " I/O: *PROMPT, *WRITE, *READ " " Conditional branching: " IF, ELSE IF, END " *IF value *IF I==10 " *ELSE IF value *ELSE IF I<10 " *ELSE *ELSE " *ENDIF *ENDIF " " " Iterative looping: " WHILE " *WHILE test " ..... " *END WHILE " " " EXAMPLE: " *DEFINE I = 1 " *WHILE (I <= 10) " *WRITE I = 'I' " *DEFINE I = (I + 1) " *END WHILE " syn match tssclQualifier "/[^/ ]\+"hs=s+1 syn match tssclSymbol "'\S\+'" "syn match tssclSymbol2 " \S\+ " contained syn match tssclInteger "-\=\<[0-9]*\>" syn match tssclFloat "-\=\<[0-9]*\.[0-9]*" syn match tssclScientific "-\=\<[0-9]*\.[0-9]*E[-+]\=[0-9]\+\>" " Define the default highlighting " Only when an item doesn't have highlighting yet command -nargs=+ HiLink hi def link <args> HiLink tssclCommand Statement HiLink tssclKeyword Special HiLink tssclEnd Macro HiLink tssclUnits Special HiLink tssclComment Comment HiLink tssclDirective Statement HiLink tssclConditional Conditional HiLink tssclContChar Macro HiLink tssclQualifier Typedef HiLink tssclSymbol Identifier HiLink tssclSymbol2 Symbol HiLink tssclString String HiLink tssclOper Operator HiLink tssclInteger Number HiLink tssclFloat Number HiLink tssclScientific Number delcommand HiLink let b:current_syntax = "tsscl" " vim: ts=8 sw=2