mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-05 22:20:24 -08:00
Improve C and Elisp Git diff hunk headers
For discussion, see the following threads: https://lists.gnu.org/archive/html/emacs-devel/2019-03/msg00457.html https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00369.html * autogen.sh: Extend the built-in Git xfuncname pattern 'cpp' to match preprocessor and DEFUN macros, and the 'elisp' pattern to match cl-lib and other top-level defuns.
This commit is contained in:
parent
4498e5a13a
commit
d3a0ddedba
1 changed files with 9 additions and 1 deletions
10
autogen.sh
10
autogen.sh
|
|
@ -315,8 +315,16 @@ git_config transfer.fsckObjects true
|
|||
|
||||
# Configure 'git diff' hunk header format.
|
||||
|
||||
# This xfuncname is based on Git's built-in 'cpp' pattern.
|
||||
# The first line rejects jump targets and access declarations.
|
||||
# The second line matches top-level functions and methods.
|
||||
# The third line matches preprocessor and DEFUN macros.
|
||||
git_config diff.cpp.xfuncname \
|
||||
'!^[ \t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])
|
||||
^((::[[:space:]]*)?[A-Za-z_][A-Za-z_0-9]*[[:space:]]*\(.*)$
|
||||
^((#define[[:space:]]|DEFUN).*)$'
|
||||
git_config diff.elisp.xfuncname \
|
||||
'^\(def[^[:space:]]+[[:space:]]+([^()[:space:]]+)'
|
||||
'^\([^[:space:]]*def[^[:space:]]+[[:space:]]+([^()[:space:]]+)'
|
||||
git_config 'diff.m4.xfuncname' '^((m4_)?define|A._DEFUN(_ONCE)?)\([^),]*'
|
||||
git_config 'diff.make.xfuncname' \
|
||||
'^([$.[:alnum:]_].*:|[[:alnum:]_]+[[:space:]]*([*:+]?[:?]?|!?)=|define .*)'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue