view runtime/syntax/art.vim @ 24506:cf773d752eb9 v8.2.2793

patch 8.2.2793: MS-Windows: string literals are writable with MSVC Commit: https://github.com/vim/vim/commit/d23f8bde5cd16b7752cc4a73da106673839ed824 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Apr 21 11:30:48 2021 +0200 patch 8.2.2793: MS-Windows: string literals are writable with MSVC Problem: MS-Windows: string literals are writable with MSVC. Solution: Add the /GF compiler flag. Make mch_write() safer. (Ken Takata, closes #8133)
author Bram Moolenaar <Bram@vim.org>
date Wed, 21 Apr 2021 11:45: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