Mercurial > mxe-octave
diff src/qscintilla-3-matlab-end-op.patch @ 4410:9b1f851080b6
qscitilla: update to 2.10.1
* src/qscintilla.mk: update version, checksum, use -std=c++11, use _qtX notation of lib names
* src/qscintilla-1-fixes.patch: update patch
* src/qscintilla-2-matlab-fold.patch: removed patch
* src/qscintilla-3-matlab-block-comment.patch: update patch, rename => qscintilla-2-matlab-block-comment.patch
* src/qscintilla-4-matlab-end-op.patch: update patch, rename => qscintilla-3-matlab-end-op.patch
* dist-files.mk: add qscintilla-2-matlab-block-comment.patch, scintilla-3-matlab-end-op.patch, remove
qscintilla-2-matlab-fold.patch qscintilla-4-matlab-end-op.patch qscintilla-3-matlab-block-comment.patch
author | John D |
---|---|
date | Mon, 10 Jul 2017 17:00:55 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/qscintilla-3-matlab-end-op.patch Mon Jul 10 17:00:55 2017 -0400 @@ -0,0 +1,38 @@ +diff -ur QScintilla_gpl-2.10.1.orig/lexers/LexMatlab.cpp QScintilla_gpl-2.10.1/lexers/LexMatlab.cpp +--- QScintilla_gpl-2.10.1.orig/lexers/LexMatlab.cpp 2017-07-05 08:21:58.527158553 -0400 ++++ QScintilla_gpl-2.10.1/lexers/LexMatlab.cpp 2017-07-05 08:22:26.304941561 -0400 +@@ -97,6 +97,9 @@ + // of a string + bool transpose = false; + ++ // count for brackets for when 'end' could be an operator not a keyword ++ int allow_end_op = 0; ++ + // approximate position of first non space character in a line + int nonSpaceColumn = -1; + // approximate column position of the current character in a line +@@ -151,6 +154,9 @@ + char s[100]; + sc.GetCurrentLowered(s, sizeof(s)); + if (keywords.InList(s)) { ++ if (strcmp ("end", s) == 0 && allow_end_op > 0) { ++ sc.ChangeState(SCE_MATLAB_NUMBER); ++ } + sc.SetState(SCE_MATLAB_DEFAULT); + transpose = false; + } else { +@@ -250,6 +256,12 @@ + } else if (isalpha(sc.ch)) { + sc.SetState(SCE_MATLAB_KEYWORD); + } else if (isoperator(static_cast<char>(sc.ch)) || sc.ch == '@' || sc.ch == '\\') { ++ if (sc.ch == '(' || sc.ch == '[' || sc.ch == '{') { ++ allow_end_op ++; ++ } else if ((sc.ch == ')' || sc.ch == ']' || sc.ch == '}') && (allow_end_op > 0)) { ++ allow_end_op --; ++ } ++ + if (sc.ch == ')' || sc.ch == ']' || sc.ch == '}') { + transpose = true; + } else { +Only in QScintilla_gpl-2.10.1/lexers: LexMatlab.cpp.orig +Only in QScintilla_gpl-2.10.1/lexers: LexMatlab.cpp.rej