Merge branch 'bl/userdiff-octave'

The pattern "git diff/grep" use to extract funcname and words
boundary for Matlab has been extend to cover Octave, which is more
or less equivalent.

* bl/userdiff-octave:
  userdiff: fix grammar and style issues
  userdiff: add Octave
This commit is contained in:
Junio C Hamano 2019-06-17 10:15:17 -07:00
commit 2f475317f2
7 changed files with 25 additions and 2 deletions

View file

@ -819,7 +819,7 @@ patterns are available:
- `java` suitable for source code in the Java language.
- `matlab` suitable for source code in the MATLAB language.
- `matlab` suitable for source code in the MATLAB and Octave languages.
- `objc` suitable for source code in the Objective-C language.

View file

@ -0,0 +1,5 @@
classdef RIGHT
properties
ChangeMe
end
end

4
t/t4018/matlab-function Normal file
View file

@ -0,0 +1,4 @@
function y = RIGHT()
x = 5;
y = ChangeMe + x;
end

View file

@ -0,0 +1,3 @@
%%% RIGHT section
# this is octave script
ChangeMe = 1;

View file

@ -0,0 +1,3 @@
## RIGHT section
# this is octave script
ChangeMe = 1;

3
t/t4018/matlab-section Normal file
View file

@ -0,0 +1,3 @@
%% RIGHT section
% this is understood by both matlab and octave
ChangeMe = 1;

View file

@ -58,7 +58,12 @@ PATTERNS("java",
"|[-+*/<>%&^|=!]="
"|--|\\+\\+|<<=?|>>>?=?|&&|\\|\\|"),
PATTERNS("matlab",
"^[[:space:]]*((classdef|function)[[:space:]].*)$|^%%[[:space:]].*$",
/*
* Octave pattern is mostly the same as matlab, except that '%%%' and
* '##' can also be used to begin code sections, in addition to '%%'
* that is understood by both.
*/
"^[[: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 */