From be84682bcb1e5ef3aba7ccc355f32f9820aebc86 Mon Sep 17 00:00:00 2001 From: Stefano Probst Date: Sat, 24 Oct 2020 10:24:13 +0200 Subject: [PATCH] Add MATLAB syntax test file cc sharkdp/bat#1213 --- .../highlighted/MATLAB/test.matlab | 34 +++++++++++++++++++ tests/syntax-tests/source/MATLAB/LICENSE.md | 27 +++++++++++++++ tests/syntax-tests/source/MATLAB/test.matlab | 34 +++++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 tests/syntax-tests/highlighted/MATLAB/test.matlab create mode 100644 tests/syntax-tests/source/MATLAB/LICENSE.md create mode 100644 tests/syntax-tests/source/MATLAB/test.matlab diff --git a/tests/syntax-tests/highlighted/MATLAB/test.matlab b/tests/syntax-tests/highlighted/MATLAB/test.matlab new file mode 100644 index 00000000..51c37f76 --- /dev/null +++ b/tests/syntax-tests/highlighted/MATLAB/test.matlab @@ -0,0 +1,34 @@ +function zz=sample(aa) +%%%%%%%%%%%%%%%%%% +% some comments +%%%%%%%%%%%%%%%%%% + +x = 'a string'; % some 'ticks' in a comment +y = 'a string with ''interal'' quotes'; + +for i=1:20 + disp(i); +end + +a = rand(30); +b = rand(30); + +c = a .* b ./ a \ ... comment at end of line and continuation + (b .* a + b - a); + +c = a' * b'; % note: these ticks are for transpose, not quotes. + +disp('a comment symbol, %, in a string'); + +!echo abc % this isn't a comment - it's passed to system command + +function y=myfunc(x) +y = exp(x); + +%{ + a block comment +%} + +function no_arg_func +fprintf('%s\n', 'function with no args') +end diff --git a/tests/syntax-tests/source/MATLAB/LICENSE.md b/tests/syntax-tests/source/MATLAB/LICENSE.md new file mode 100644 index 00000000..be753683 --- /dev/null +++ b/tests/syntax-tests/source/MATLAB/LICENSE.md @@ -0,0 +1,27 @@ +The `test.matlab` file is a modified version of https://github.com/pygments/pygments/blob/3e1b79c82d2df318f63f24984d875fd2a3400808/tests/test_matlab.py under the following license: + +Copyright (c) 2006-2020 by the respective authors (see AUTHORS file). +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/tests/syntax-tests/source/MATLAB/test.matlab b/tests/syntax-tests/source/MATLAB/test.matlab new file mode 100644 index 00000000..f27cde62 --- /dev/null +++ b/tests/syntax-tests/source/MATLAB/test.matlab @@ -0,0 +1,34 @@ +function zz=sample(aa) +%%%%%%%%%%%%%%%%%% +% some comments +%%%%%%%%%%%%%%%%%% + +x = 'a string'; % some 'ticks' in a comment +y = 'a string with ''interal'' quotes'; + +for i=1:20 + disp(i); +end + +a = rand(30); +b = rand(30); + +c = a .* b ./ a \ ... comment at end of line and continuation + (b .* a + b - a); + +c = a' * b'; % note: these ticks are for transpose, not quotes. + +disp('a comment symbol, %, in a string'); + +!echo abc % this isn't a comment - it's passed to system command + +function y=myfunc(x) +y = exp(x); + +%{ + a block comment +%} + +function no_arg_func +fprintf('%s\n', 'function with no args') +end