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.

Raspunde prin e-mail lui