view runtime/syntax/mermaid.vim @ 32888:b1162ad29d73 v9.0.1753

patch 9.0.1753: can't move to last non-blank char Commit: https://github.com/vim/vim/commit/b5f6fe9ca2661d06bc0be839447ce1995450b9de Author: Christian Brabandt <cb@256bit.org> Date: Sat Aug 19 15:53:16 2023 +0200 patch 9.0.1753: can't move to last non-blank char Problem: can't move to last non-blank char Solution: Make g<end> behave like that Make it possible to move to last non-blank char on a line We can distinguish between g0 and g^ to move to the very first character and the first non-blank char. And while we can move to the last screen char, we cannot go to the last non-blank screen char. Since I think g$ is the more widely used and known movement command (and g<end> is synonymous to it) change the behaviour of g<end> to move to last non-screen char instead and don't have this be the same command as the g$ command anymore. If you want to keep the old behaviour, you can use: ``` nnoremap g<end> g$ ``` Add a test to verify the behaviour. closes: #12593 Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sat, 19 Aug 2023 16:00:08 +0200
parents a7801222c9c5
children 681a291388d5
line wrap: on
line source

" Vim syntax file
" Language:     Mermaid
" Maintainer:   Craig MacEahern <https://github.com/craigmac/vim-mermaid>
" Filenames:    *.mmd
" Last Change:  2022 Nov 22

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
set cpo&vim

syntax iskeyword @,48-57,192-255,$,_,-,:
syntax keyword mermaidKeyword
	\ _blank
	\ _self
	\ _parent
	\ _top
	\ ::icon
	\ accDescr
	\ accTitle
	\ actor
	\ activate
	\ alt
	\ and
	\ as
	\ autonumber
	\ branch
	\ break
	\ callback
	\ checkout
	\ class
	\ classDef
	\ classDiagram
	\ click
	\ commit
	\ commitgitGraph
	\ critical
	\ dataFormat
	\ dateFormat
	\ deactivate
	\ direction
	\ element
	\ else
	\ end
	\ erDiagram
	\ flowchart
	\ gantt
	\ gitGraph
	\ graph
	\ journey
	\ link
	\ LR
	\ TD
	\ TB
	\ RL
	\ loop
	\ merge
	\ mindmap root
	\ Note
	\ Note right of
	\ Note left of
	\ Note over
	\ note
	\ note right of
	\ note left of
	\ note over
	\ opt
	\ option
	\ par
	\ participant
	\ pie
	\ rect
	\ requirement
	\ rgb
	\ section
	\ sequenceDiagram
	\ state
	\ stateDiagram
	\ stateDiagram-v2
	\ style
	\ subgraph
	\ title
highlight link mermaidKeyword Keyword

syntax match mermaidStatement "|"
syntax match mermaidStatement "--\?[>x)]>\?+\?-\?"
syntax match mermaidStatement "\~\~\~"
syntax match mermaidStatement "--"
syntax match mermaidStatement "---"
syntax match mermaidStatement "-->"
syntax match mermaidStatement "-\."
syntax match mermaidStatement "\.->"
syntax match mermaidStatement "-\.-"
syntax match mermaidStatement "-\.\.-"
syntax match mermaidStatement "-\.\.\.-"
syntax match mermaidStatement "=="
syntax match mermaidStatement "==>"
syntax match mermaidStatement "===>"
syntax match mermaidStatement "====>"
syntax match mermaidStatement "&"
syntax match mermaidStatement "--o"
syntax match mermaidStatement "--x"
syntax match mermaidStatement "x--x"
syntax match mermaidStatement "-----"
syntax match mermaidStatement "---->"
syntax match mermaidStatement "==="
syntax match mermaidStatement "===="
syntax match mermaidStatement "====="
syntax match mermaidStatement ":::"
syntax match mermaidStatement "<|--"
syntax match mermaidStatement "\*--"
syntax match mermaidStatement "o--"
syntax match mermaidStatement "o--o"
syntax match mermaidStatement "<--"
syntax match mermaidStatement "<-->"
syntax match mermaidStatement "\.\."
syntax match mermaidStatement "<\.\."
syntax match mermaidStatement "<|\.\."
syntax match mermaidStatement "--|>"
syntax match mermaidStatement "--\*"
syntax match mermaidStatement "--o"
syntax match mermaidStatement "\.\.>"
syntax match mermaidStatement "\.\.|>"
syntax match mermaidStatement "<|--|>"
syntax match mermaidStatement "||--o{"
highlight link mermaidStatement Statement

syntax match mermaidIdentifier "[\+-]\?\w\+(.*)[\$\*]\?"
highlight link mermaidIdentifier Identifier

syntax match mermaidType "[\+-\#\~]\?\cint\>"
syntax match mermaidType "[\+-\#\~]\?\cString\>"
syntax match mermaidType "[\+-\#\~]\?\cbool\>"
syntax match mermaidType "[\+-\#\~]\?\cBigDecimal\>"
syntax match mermaidType "[\+-\#\~]\?\cList\~.\+\~"
syntax match mermaidType "<<\w\+>>"
highlight link mermaidType Type

syntax match mermaidComment "%%.*$"
highlight link mermaidComment Comment

syntax region mermaidDirective start="%%{" end="\}%%"
highlight link mermaidDirective PreProc

syntax region mermaidString start=/"/ skip=/\\"/ end=/"/
highlight link mermaidString String

let b:current_syntax = "mermaid"

let &cpo = s:cpo_save
unlet s:cpo_save

" vim:set sw=2: