Mercurial > vim
view runtime/syntax/vroom.vim @ 32196:d6771e63521c v9.0.1429
patch 9.0.1429: invalid memory access when ending insert mode
Commit: https://github.com/vim/vim/commit/1a08a3e2a584889f19b84a27672134649b73da58
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Mar 26 21:27:24 2023 +0100
patch 9.0.1429: invalid memory access when ending insert mode
Problem: Invalid memory access when ending insert mode.
Solution: Check if the insert_skip value is valid.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 26 Mar 2023 22:30:04 +0200 |
parents | 43efa4f5a8ea |
children |
line wrap: on
line source
" Vim syntax file " Language: Vroom (vim testing and executable documentation) " Maintainer: David Barnett (https://github.com/google/vim-ft-vroom) " Last Change: 2014 Jul 23 " quit when a syntax file was already loaded if exists('b:current_syntax') finish endif let s:cpo_save = &cpo set cpo-=C syn include @vroomVim syntax/vim.vim syn include @vroomShell syntax/sh.vim syntax region vroomAction \ matchgroup=vroomOutput \ start='\m^ ' end='\m$' keepend \ contains=vroomControlBlock syntax region vroomAction \ matchgroup=vroomOutput \ start='\m^ & ' end='\m$' keepend \ contains=vroomControlBlock syntax match vroomOutput '\m^ &$' syntax region vroomMessageBody \ matchgroup=vroomMessage \ start='\m^ \~ ' end='\m$' keepend \ contains=vroomControlBlock syntax region vroomColoredAction \ matchgroup=vroomInput \ start='\m^ > ' end='\m$' keepend \ contains=vimNotation,vroomControlBlock syntax region vroomAction \ matchgroup=vroomInput \ start='\m^ % ' end='\m$' keepend \ contains=vimNotation,vroomControlBlock syntax region vroomAction \ matchgroup=vroomContinuation \ start='\m^ |' end='\m$' keepend syntax region vroomAction \ start='\m^ \ze:' end='\m$' keepend \ contains=@vroomVim,vroomControlBlock syntax region vroomAction \ matchgroup=vroomDirective \ start='\m^ @\i\+' end='\m$' keepend \ contains=vroomControlBlock syntax region vroomSystemAction \ matchgroup=vroomSystem \ start='\m^ ! ' end='\m$' keepend \ contains=@vroomShell,vroomControlBlock syntax region vroomHijackAction \ matchgroup=vroomHijack \ start='\m^ \$ ' end='\m$' keepend \ contains=vroomControlBlock syntax match vroomControlBlock contains=vroomControlEscape,@vroomControls \ '\v \([^&()][^()]*\)$' syntax match vroomControlEscape '\m&' contained syntax cluster vroomControls \ contains=vroomDelay,vroomMode,vroomBuffer,vroomRange \,vroomChannel,vroomBind,vroomStrictness syntax match vroomRange '\v\.(,\+?(\d+|\$)?)?' contained syntax match vroomRange '\v\d*,\+?(\d+|\$)?' contained syntax match vroomBuffer '\v\d+,@!' contained syntax match vroomDelay '\v\d+(\.\d+)?s' contained syntax match vroomMode '\v<%(regex|glob|verbatim)' contained syntax match vroomChannel '\v<%(stderr|stdout|command|status)>' contained syntax match vroomBind '\v<bind>' contained syntax match vroomStrictness '\v\<%(STRICT|RELAXED|GUESS-ERRORS)\>' contained highlight default link vroomInput Identifier highlight default link vroomDirective vroomInput highlight default link vroomControlBlock vroomInput highlight default link vroomSystem vroomInput highlight default link vroomOutput Statement highlight default link vroomContinuation Constant highlight default link vroomHijack Special highlight default link vroomColoredAction Statement highlight default link vroomSystemAction vroomSystem highlight default link vroomHijackAction vroomHijack highlight default link vroomMessage vroomOutput highlight default link vroomMessageBody Constant highlight default link vroomControlEscape Special highlight default link vroomBuffer vroomInput highlight default link vroomRange Include highlight default link vroomMode Constant highlight default link vroomDelay Type highlight default link vroomStrictness vroomMode highlight default link vroomChannel vroomMode highlight default link vroomBind vroomMode let b:current_syntax = 'vroom' let &cpo = s:cpo_save unlet s:cpo_save