git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v3] userdiff.c & doc/gitattributes.txt: add Octave

From
Junio C Hamano <gitster@pobox.com>
Date
May 15, 2019, 05:35 UTC
Message-ID
<xmqq4l5w7001.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<20190511041331.51642-1-liboxuan@connect.hku.hk>
Boxuan Li <liboxuan@connect.hku.hk> writes:
> Octave pattern is almost the same as matlab. Besides,
> octave also uses '%%%' or '##' to begin code sections.

My reading of the above hiccupped at around "Besides, octave also uses...".

Checking the differences in patterns, I think
	... the same as matlab, except that '%%%' and '##' can also
	be used to begin code sections, in addition to '%%' that is
	understood by both.

may be easier to read. It makes it clear that you'd want to stay away from %%% and ## if you want to be compatible.

Thanks.
Show 37 quoted lines
> Signed-off-by: Boxuan Li <liboxuan@connect.hku.hk>
> ---
> Update from v2: fix indentation
> ---
>  Documentation/gitattributes.txt | 2 ++
>  userdiff.c                      | 5 +++++
>  2 files changed, 7 insertions(+)
>
> diff --git a/Documentation/gitattributes.txt b/Documentation/gitattributes.txt
> index 4fb20cd0e9..45374c7dd3 100644
> --- a/Documentation/gitattributes.txt
> +++ b/Documentation/gitattributes.txt
> @@ -821,6 +821,8 @@ patterns are available:
>  
>  - `matlab` suitable for source code in the MATLAB language.
>  
> +- `octave` suitable for source code in the Octave language.
> +
>  - `objc` suitable for source code in the Objective-C language.
>  
>  - `pascal` suitable for source code in the Pascal/Delphi language.
> diff --git a/userdiff.c b/userdiff.c
> index 3a78fbf504..7d07b82116 100644
> --- a/userdiff.c
> +++ b/userdiff.c
> @@ -60,6 +60,11 @@ PATTERNS("java",
>  PATTERNS("matlab",
>  	 "^[[:space:]]*((classdef|function)[[:space:]].*)$|^%%[[:space:]].*$",
>  	 "[a-zA-Z_][a-zA-Z0-9_]*|[-+0-9.e]+|[=~<>]=|\\.[*/\\^']|\\|\\||&&"),
> +PATTERNS("octave",
> +	 /* Mostly the same as matlab. In addition, Octave
> +	  * supports '##' and '%%%' for code sections */
> +	 "^[[:space:]]*((classdef|function)[[:space:]].*)$|^(%%%?|##)[[:space:]].*$",
> +	 "[a-zA-Z_][a-zA-Z0-9_]*|[-+0-9.e]+|[=~<>]=|\\.[*/\\^']|\\|\\||&&"),
>  PATTERNS("objc",
>  	 /* Negate C statements that can look like functions */
>  	 "!^[ \t]*(do|for|if|else|return|switch|while)\n"
Previous: Boxuan LiNext: Johannes Sixt
Message 7 of 22 in “doc/gitattributes: add Octave”
  1. doc/gitattributes: add OctaveBoxuan Li, May 10, 2019
  2. Philip OakleyMay 10, 2019
  3. Ævar Arnfjörð BjarmasonMay 10, 2019
  4. LI, BO XUANMay 11, 2019
  5. userdiff.c & doc/gitattributes.txt: add OctaveBoxuan Li, May 11, 2019
  6. userdiff.c & doc/gitattributes.txt: add OctaveBoxuan Li, May 11, 2019
  7. Junio C HamanoMay 15, 2019
  8. Johannes SixtMay 15, 2019
  9. LI, BO XUANMay 15, 2019
  10. Johannes SixtMay 15, 2019
  11. Junio C HamanoMay 16, 2019
  12. Johannes SixtMay 16, 2019
  13. Junio C HamanoMay 16, 2019
  14. LI, BO XUANMay 17, 2019
  15. Johannes SixtMay 17, 2019
  16. userdiff.c & doc/gitattributes.txt: add OctaveBoxuan Li, May 15, 2019
  17. userdiff: add OctaveBoxuan Li, May 18, 2019
  18. Johannes SixtMay 20, 2019
  19. userdiff: add OctaveBoxuan Li, May 21, 2019
  20. Junio C HamanoMay 28, 2019
  21. Johannes SixtMay 28, 2019
  22. userdiff: fix grammar and style issuesBoxuan Li, May 29, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.