view runtime/syntax/art.vim @ 25405:747ebbce2421 v8.2.3239

patch 8.2.3239: Vim9: no error using heredoc for a number variable Commit: https://github.com/vim/vim/commit/81530e36033dec2c2cd94af6dd48ceb0389e95a2 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Jul 28 21:25:49 2021 +0200 patch 8.2.3239: Vim9: no error using heredoc for a number variable Problem: Vim9: no error using heredoc for a number variable. Solution: Add a type check. (closes https://github.com/vim/vim/issues/8627)
author Bram Moolenaar <Bram@vim.org>
date Wed, 28 Jul 2021 21:30:04 +0200
parents 91e53bcb7946
children
line wrap: on
line source

" Vim syntax file
" Language:      ART-IM and ART*Enterprise
" Maintainer:    Dorai Sitaram <ds26@gte.com>
" URL:		 http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
" Last Change:   2011 Dec 28 by Thilo Six

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
set cpo&vim

syn case ignore

syn keyword artspform => and assert bind
syn keyword artspform declare def-art-fun deffacts defglobal defrule defschema do
syn keyword artspform else for if in$ not or
syn keyword artspform progn retract salience schema test then while

syn match artvariable "?[^ \t";()|&~]\+"

syn match artglobalvar "?\*[^ \t";()|&~]\+\*"

syn match artinstance "![^ \t";()|&~]\+"

syn match delimiter "[()|&~]"

syn region string start=/"/ skip=/\\[\\"]/ end=/"/

syn match number "\<[-+]\=\([0-9]\+\(\.[0-9]*\)\=\|\.[0-9]\+\)\>"

syn match comment ";.*$"

syn match comment "#+:\=ignore" nextgroup=artignore skipwhite skipnl

syn region artignore start="(" end=")" contained contains=artignore,comment

syn region artignore start=/"/ skip=/\\[\\"]/ end=/"/ contained

hi def link artinstance type
hi def link artglobalvar preproc
hi def link artignore comment
hi def link artspform statement
hi def link artvariable function

let b:current_syntax = "art"

let &cpo = s:cpo_save
unlet s:cpo_save