runtime(c): Highlight user defined functions Commit: https://github.com/vim/vim/commit/ca0e9823a1dfd71a17c0f08cb7973d413bf98999 Author: Luca Saccarola <github.e4...@aleeas.com> Date: Sun Dec 24 18:57:02 2023 +0100
runtime(c): Highlight user defined functions closes: https://github.com/vim/vim/issues/13763 Signed-off-by: Luca Saccarola <github.e4...@aleeas.com> Signed-off-by: Christian Brabandt <c...@256bit.org> diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 5abc4e95b..a2377b567 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 9.1. Last change: 2024 Jan 06 +*syntax.txt* For Vim version 9.1. Last change: 2024 Jan 23 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1026,6 +1026,8 @@ Variable Highlight ~ *c_no_c99* don't highlight C99 standard items *c_no_c11* don't highlight C11 standard items *c_no_bsd* don't highlight BSD specific types +*c_functions* highlight function calls and definitions +*c_function_pointers* highlight function pointers definitions When 'foldmethod' is set to "syntax" then /* */ comments and { } blocks will become a fold. If you don't want comments to become a fold use: > diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim index 5ed8fdc84..a593bd26c 100644 --- a/runtime/syntax/c.vim +++ b/runtime/syntax/c.vim @@ -444,6 +444,14 @@ syn match cUserLabel display "\I\i*" contained syn match cBitField display "^\s*\zs\I\i*\s*:\s*[1-9]"me=e-1 contains=cType syn match cBitField display ";\s*\zs\I\i*\s*:\s*[1-9]"me=e-1 contains=cType +if exists("c_functions") + syn match cFunction "\<\h\w*\ze\_s*(" + endif + +if exists("c_function_pointers") + syn match cFunctionPointer "\%((\s*\*\s*\)\@<=\h\w*\ze\s*)\_s*(.*)" +endif + if exists("c_minlines") let b:c_minlines = c_minlines else @@ -513,6 +521,8 @@ hi def link cCppOutSkip cCppOutIf2 hi def link cCppInElse2 cCppOutIf2 hi def link cCppOutIf2 cCppOut hi def link cCppOut Comment +hi def link cFunction Function +hi def link cFunctionPointer Function let b:current_syntax = "c" -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1rSNdn-009c3a-Ds%40256bit.org.