Mercurial > vim
view runtime/syntax/cabalconfig.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 | 29c5f168c6fd |
children |
line wrap: on
line source
" Vim syntax file " Language: Cabal Config " Maintainer: profunctor@pm.me " Last Change: Marcin Szamotulski " Original Author: Marcin Szamotulski if exists("b:current_syntax") finish endif syn match CabalConfigSection /^\S[[:alpha:]]\+\%(-[[:alpha:]]\+\)*[^:]*$/ syn region CabalConfigRegion matchgroup=CabalConfigKey start=/^\s*[[:alpha:]]\+\%(-[[:alpha:]]\+\)*:/ matchgroup=NONE end=/$/ contains=CabalConfigSeparator,CabalConfigKeyword,CabalConfigPath keepend syn match CabalConfigComment /^\s*--.*$/ syn match CabalConfigValue /.*$/ contained syn match CabalConfigKey /[[:alpha:]]\+\%(-[[:alpha:]]\+\)*\ze:/ syn keyword CabalConfigSeparator : contained syn match CabalConfigVariable /\$[[:alpha:]]\+/ syn keyword CabalConfigKeyword True False ghc syn match CabalConfigPath /\%([[:alpha:]]\+:\)\?\%(\/[[:print:]]\+\)\+/ hi def link CabalConfigComment Comment hi def link CabalConfigSection Title hi def link CabalConfigKey Statement hi def link CabalConfigSeparator NonText hi def link CabalConfigValue Normal hi def link CabalConfigVariable Identifier hi def link CabalConfigKeyword Keyword hi def link CabalConfigPath Directory let b:current_syntax = "cabal.config"