neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

teraterm.vim (4980B)


      1 " Vim syntax file
      2 " Language:	Tera Term Language (TTL)
      3 "		Based on Tera Term Version 4.100
      4 " Maintainer:	Ken Takata
      5 " URL:		https://github.com/k-takata/vim-teraterm
      6 " Last Change:	2018-08-31
      7 " Filenames:	*.ttl
      8 " License:	VIM License
      9 
     10 if exists("b:current_syntax")
     11  finish
     12 endif
     13 
     14 let s:save_cpo = &cpo
     15 set cpo&vim
     16 
     17 syn case ignore
     18 
     19 syn region ttlComment	start=";" end="$" contains=@Spell
     20 syn region ttlComment	start="/\*" end="\*/" contains=@Spell
     21 syn region ttlFirstComment	start="/\*" end="\*/" contained contains=@Spell
     22 		\ nextgroup=ttlStatement,ttlFirstComment
     23 
     24 syn match ttlCharacter	"#\%(\d\+\|\$\x\+\)\>"
     25 syn match ttlNumber	"\%(\<\d\+\|\$\x\+\)\>"
     26 syn match ttlString	"'[^']*'" contains=@Spell
     27 syn match ttlString	'"[^"]*"' contains=@Spell
     28 syn cluster ttlConstant contains=ttlCharacter,ttlNumber,ttlString
     29 
     30 syn match ttlLabel	":\s*\w\{1,32}\>"
     31 
     32 syn keyword ttlOperator	and or xor not
     33 
     34 syn match ttlVar	"\<groupmatchstr\d\>"
     35 syn match ttlVar	"\<param\d\>"
     36 syn keyword ttlVar	inputstr matchstr paramcnt params result timeout mtimeout
     37 
     38 
     39 syn match ttlLine nextgroup=ttlStatement "^"
     40 syn match ttlStatement contained "\s*"
     41 		\ nextgroup=ttlIf,ttlElseIf,ttlConditional,ttlRepeat,
     42 		\ ttlFirstComment,ttlComment,ttlLabel,@ttlCommand
     43 
     44 syn cluster ttlCommand contains=ttlControlCommand,ttlCommunicationCommand,
     45 		\ ttlStringCommand,ttlFileCommand,ttlPasswordCommand,
     46 		\ ttlMiscCommand
     47 
     48 
     49 syn keyword ttlIf contained nextgroup=ttlIfExpression if
     50 syn keyword ttlElseIf contained nextgroup=ttlElseIfExpression elseif
     51 
     52 syn match ttlIfExpression contained "\s.*"
     53 	\ contains=@ttlConstant,ttlVar,ttlOperator,ttlComment,ttlThen,
     54 	\ @ttlCommand
     55 syn match ttlElseIfExpression contained "\s.*"
     56 	\ contains=@ttlConstant,ttlVar,ttlOperator,ttlComment,ttlThen
     57 
     58 syn keyword ttlThen contained then
     59 syn keyword ttlConditional contained else endif
     60 
     61 syn keyword ttlRepeat contained for next until enduntil while endwhile
     62 syn match ttlRepeat contained
     63 		\ "\<\%(do\|loop\)\%(\s\+\%(while\|until\)\)\?\>"
     64 syn keyword ttlControlCommand contained
     65 		\ break call continue end execcmnd exit goto include
     66 		\ mpause pause return
     67 
     68 
     69 syn keyword ttlCommunicationCommand contained
     70 		\ bplusrecv bplussend callmenu changedir clearscreen
     71 		\ closett connect cygconnect disconnect dispstr
     72 		\ enablekeyb flushrecv gethostname getmodemstatus
     73 		\ gettitle kmtfinish kmtget kmtrecv kmtsend loadkeymap
     74 		\ logautoclosemode logclose loginfo logopen logpause
     75 		\ logrotate logstart logwrite quickvanrecv
     76 		\ quickvansend recvln restoresetup scprecv scpsend
     77 		\ send sendbreak sendbroadcast sendfile sendkcode
     78 		\ sendln sendlnbroadcast sendlnmulticast sendmulticast
     79 		\ setbaud setdebug setdtr setecho setflowctrl
     80 		\ setmulticastname setrts setspeed setsync settitle
     81 		\ showtt testlink unlink wait wait4all waitevent
     82 		\ waitln waitn waitrecv waitregex xmodemrecv
     83 		\ xmodemsend ymodemrecv ymodemsend zmodemrecv
     84 		\ zmodemsend
     85 syn keyword ttlStringCommand contained
     86 		\ code2str expandenv int2str regexoption sprintf
     87 		\ sprintf2 str2code str2int strcompare strconcat
     88 		\ strcopy strinsert strjoin strlen strmatch strremove
     89 		\ strreplace strscan strspecial strsplit strtrim
     90 		\ tolower toupper
     91 syn keyword ttlFileCommand contained
     92 		\ basename dirname fileclose fileconcat filecopy
     93 		\ filecreate filedelete filelock filemarkptr fileopen
     94 		\ filereadln fileread filerename filesearch fileseek
     95 		\ fileseekback filestat filestrseek filestrseek2
     96 		\ filetruncate fileunlock filewrite filewriteln
     97 		\ findfirst findnext findclose foldercreate
     98 		\ folderdelete foldersearch getdir getfileattr makepath
     99 		\ setdir setfileattr
    100 syn keyword ttlPasswordCommand contained
    101 		\ delpassword getpassword ispassword passwordbox
    102 		\ setpassword
    103 syn keyword ttlMiscCommand contained
    104 		\ beep bringupbox checksum8 checksum8file checksum16
    105 		\ checksum16file checksum32 checksum32file closesbox
    106 		\ clipb2var crc16 crc16file crc32 crc32file exec
    107 		\ dirnamebox filenamebox getdate getenv getipv4addr
    108 		\ getipv6addr getspecialfolder gettime getttdir getver
    109 		\ ifdefined inputbox intdim listbox messagebox random
    110 		\ rotateleft rotateright setdate setdlgpos setenv
    111 		\ setexitcode settime show statusbox strdim uptime
    112 		\ var2clipb yesnobox
    113 
    114 
    115 hi def link ttlCharacter Character
    116 hi def link ttlNumber Number
    117 hi def link ttlComment Comment
    118 hi def link ttlFirstComment Comment
    119 hi def link ttlString String
    120 hi def link ttlLabel Label
    121 hi def link ttlIf Conditional
    122 hi def link ttlElseIf Conditional
    123 hi def link ttlThen Conditional
    124 hi def link ttlConditional Conditional
    125 hi def link ttlRepeat Repeat
    126 hi def link ttlControlCommand Keyword
    127 hi def link ttlVar Identifier
    128 hi def link ttlOperator Operator
    129 hi def link ttlCommunicationCommand Keyword
    130 hi def link ttlStringCommand Keyword
    131 hi def link ttlFileCommand Keyword
    132 hi def link ttlPasswordCommand Keyword
    133 hi def link ttlMiscCommand Keyword
    134 
    135 let b:current_syntax = "teraterm"
    136 
    137 let &cpo = s:save_cpo
    138 unlet s:save_cpo
    139 
    140 " vim: ts=8 sw=2 sts=2