Re: [GSoC] Microproject: Add more builtin patterns for userdiff
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Mar 15, 2019, 12:56 UTC
- Message-ID
- <8736nob8k8.fsf@evledraar.gmail.com>
- In-Reply-To
- <CAMknYEMgJ88zWsebxBqsLq8LUwYzg0vN3RpsWVpbqvncrd5dGQ@mail.gmail.com>
On Fri, Mar 15 2019, Kapil Jain wrote:
Show 11 quoted lines
> Hi, > > for the microproject: creating diff function support for different languages. > i wrote one for shell script, have tested it outside of git and it works fine. > > query regarding accommodating the pattern in: > 1) userdiff.c, it uses - #define PATTERNS(name, pattern, word_regex), > for defining patterns to locate functions. > what is the use of pattern and word_regex parameters ? i am guessing > that pattern parameter is the actual pattern to spot functions in a > file,
Yes, except "functions". More like "logical start of stuff". E.g. "package" statements for Perl etc.
So whatever makes the most sense to put in the "@" context line for diff to give the user an idea of what "function" this is changing, in the loosest possible sense of "function".
> and word_regex is used to get function name. is that correct ? > please let me know.
No, it's whatever counts as a "token" in the language for the purpose of "diff --word-diff". So it needs to match e.g. operators as one unit.