Finish readme and add pngs
This commit is contained in:
78
vim/jack.vim
Normal file
78
vim/jack.vim
Normal file
@@ -0,0 +1,78 @@
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syntax match jackError "\v^\s*[A-Za-z_]+"
|
||||
|
||||
syntax match jackIdentifier "\v<Math>"
|
||||
syntax match jackIdentifier "\v<String>"
|
||||
syntax match jackIdentifier "\v<Array>"
|
||||
syntax match jackIdentifier "\v<Output>"
|
||||
syntax match jackIdentifier "\v<Screen>"
|
||||
syntax match jackIdentifier "\v<Keyboard>"
|
||||
syntax match jackIdentifier "\v<Memory>"
|
||||
syntax match jackIdentifier "\v<Sys>"
|
||||
|
||||
syntax match jackKeyword "\v\s*<class>"
|
||||
syntax match jackFunction "\v\s*<constructor>"
|
||||
syntax match jackFunction "\v\s*<method>"
|
||||
syntax match jackFunction "\v\s*<function>"
|
||||
|
||||
syntax match jackType "\v<int>"
|
||||
syntax match jackType "\v<boolean>"
|
||||
syntax match jackType "\v<char>"
|
||||
syntax match jackType "\v<void>"
|
||||
|
||||
syntax match jackKeyword "\v\s*<var>"
|
||||
syntax match jackKeyword "\v\s*<static>"
|
||||
syntax match jackKeyword "\v\s*<field>"
|
||||
|
||||
syntax match jackConditional "\v\s*<let>"
|
||||
syntax match jackConditional "\v\s*<do>"
|
||||
syntax match jackConditional "\v\s*<if>"
|
||||
syntax match jackConditional "\v\s*<else>"
|
||||
syntax match jackConditional "\v\s*<while>"
|
||||
syntax match jackConditional "\v\s*<return>"
|
||||
|
||||
syntax match jackConstant "\v<true>"
|
||||
syntax match jackConstant "\v<false>"
|
||||
syntax match jackConstant "\v<null>"
|
||||
|
||||
syntax match jackKeyword "\v<this>"
|
||||
|
||||
syntax match jackOperator "\v\+"
|
||||
syntax match jackOperator "\v-"
|
||||
syntax match jackOperator "\v\*"
|
||||
syntax match jackOperator "\v/"
|
||||
syntax match jackOperator "\v\&"
|
||||
syntax match jackOperator "\v\|"
|
||||
syntax match jackOperator "\v\~"
|
||||
syntax match jackOperator "\v\<"
|
||||
syntax match jackOperator "\v\>"
|
||||
|
||||
syntax match jackNumber "\v<([1-9][0-9]*|[0-9])>"
|
||||
syntax region jackString start=/\v"/ skip=/\v\\./ end=/\v"/
|
||||
|
||||
syntax match jackTodo "\vTODO:?" contained
|
||||
syntax match jackTodo "\vFIXME:?" contained
|
||||
syntax match jackTodo "\vXXX:?" contained
|
||||
|
||||
syntax match jackComment "\v//.*$" contains=jackTodo
|
||||
syntax region jackComment start="\v/\*\*" end="\v\*/" contains=jackTodo
|
||||
syntax region jackComment start="\v/\*" end="\v\*/" contains=jackTodo
|
||||
|
||||
highlight link jackError Error
|
||||
highlight link jackIdentifier Identifier
|
||||
highlight link jackString String
|
||||
highlight link jackComment Comment
|
||||
highlight link jackTodo Todo
|
||||
highlight link jackFunction Function
|
||||
highlight link jackConditional Conditional
|
||||
highlight link jackType Type
|
||||
highlight link jackConstant Constant
|
||||
highlight link jackOperator Operator
|
||||
highlight link jackKeyword Keyword
|
||||
highlight link jackString String
|
||||
highlight link jackNumber Number
|
||||
|
||||
let b:current_syntax = "jack"
|
||||
Reference in New Issue
Block a user