aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2015-02-24 10:10:05 +1100
committerNeil <nyamatongwe@gmail.com>2015-02-24 10:10:05 +1100
commit1aeafe1e0a9896f5db86cdcccee919db1eb86702 (patch)
treea52950a5152dab20f83656ce569857cd65883fe1
parentf18873c71e55526c8dd606b5979da7df127fa418 (diff)
downloadscintilla-mirror-1aeafe1e0a9896f5db86cdcccee919db1eb86702.tar.gz
Bug [#1642]. Fixes a bug with some strings in TCL.
From Markus Moser.
-rw-r--r--doc/ScintillaHistory.html5
-rw-r--r--lexers/LexTCL.cxx8
2 files changed, 11 insertions, 2 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html
index 20603a256..66a21e578 100644
--- a/doc/ScintillaHistory.html
+++ b/doc/ScintillaHistory.html
@@ -468,6 +468,7 @@
</tr><tr>
<td>Mika Attila</td>
<td>JoMazM</td>
+ <td>Markus Moser</td>
</tr>
</table>
<p>
@@ -524,6 +525,10 @@
SQL lexer fixes a bug with the q-quote operator.
</li>
<li>
+ TCL lexer fixes a bug with some strings.
+ <a href="http://sourceforge.net/p/scintilla/bugs/1642/">Bug #1642</a>.
+ </li>
+ <li>
Verilog lexer handles escaped identifiers that begin with \ and end with space like \reset* .
Verilog folder fixes one bug with inconsistent folding when fold.comment is on and another
with typedef class statements creating a fold point, expecting an endclass statement.
diff --git a/lexers/LexTCL.cxx b/lexers/LexTCL.cxx
index 7c883a644..004dab113 100644
--- a/lexers/LexTCL.cxx
+++ b/lexers/LexTCL.cxx
@@ -257,7 +257,7 @@ next:
sc.ForwardSetState(SCE_TCL_DEFAULT);
visibleChars = true; // necessary if a " is the first and only character on a line
goto next;
- } else if (sc.ch == '[' || sc.ch == ']' || sc.ch == '$') {
+ } else if (sc.ch == '[' || sc.ch == ']' || sc.ch == '$' || sc.ch == '(') {
sc.SetState(SCE_TCL_OPERATOR);
expected = sc.ch == '[';
sc.ForwardSetState(SCE_TCL_IN_QUOTE);
@@ -324,7 +324,11 @@ next:
break;
case '$':
subParen = 0;
- if (sc.chNext != '{') {
+ if (sc.chNext == '(') {
+ //$("") jquery selector?!
+ sc.SetState(SCE_TCL_OPERATOR);
+ }
+ else if (sc.chNext != '{') {
sc.SetState(SCE_TCL_SUBSTITUTION);
}
else {