Mercurial > vim
view runtime/indent/chatito.vim @ 34611:1790ce961c7d
runtime(vim): Update base-syntax, improve function definition highlighting (#14203)
Commit: https://github.com/vim/vim/commit/35e6f4ca27c8115c606f265e4b09e11db01c970d
Author: dkearns <dougkearns@gmail.com>
Date: Fri Mar 22 06:41:10 2024 +1100
runtime(vim): Update base-syntax, improve function definition highlighting (https://github.com/vim/vim/issues/14203)
Improve function definition highlighting.
- Match bang and function modifiers - abort etc.
- Only match valid scope modifiers.
- Match listing commands.
- Don't match ex commands in function names.
- Split function syntax groups into :func and :def subgroups.
- Match Vim9-script parameter and return types.
- Limit legacy-script and Vim9-script comments to :func and :def
definitions, respectively.
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 21 Mar 2024 20:45:04 +0100 |
parents | 1e91e26ceebf |
children |
line wrap: on
line source
" Vim indent file " Language: Chatito " Maintainer: ObserverOfTime <chronobserver@disroot.org> " Last Change: 2022 Sep 20 if exists('b:did_indent') finish endif let b:did_indent = 1 setlocal indentexpr=GetChatitoIndent() setlocal indentkeys=o,O,*<Return>,0#,!^F let b:undo_indent = 'setl inde< indk<' if exists('*GetChatitoIndent') finish endif function GetChatitoIndent() let l:prev = v:lnum - 1 if getline(prevnonblank(l:prev)) =~# '^[~%@]\[' " shift indent after definitions return shiftwidth() elseif getline(l:prev) !~# '^\s*$' " maintain indent in sentences return indent(l:prev) else " reset indent after a blank line return 0 end endfunction