mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-14 21:09:05 +08:00
+ upd: merge current Scintilla dev stage
This commit is contained in:
parent
66ab3945ea
commit
79fe92e3d0
@ -577,6 +577,11 @@
|
||||
<a href="https://sourceforge.net/p/scintilla/bugs/2054/">Bug #2054</a>.
|
||||
</li>
|
||||
<li>
|
||||
The C++ lexer interprets continued preprocessor lines correctly by reading all of
|
||||
the logical line.
|
||||
<a href="https://sourceforge.net/p/scintilla/bugs/2062/">Bug #2062</a>.
|
||||
</li>
|
||||
<li>
|
||||
For SciTE's Find in Files, allow case-sensitivity and whole-word options when running
|
||||
a user defined command.
|
||||
<a href="https://sourceforge.net/p/scintilla/bugs/2053/">Bug #2053</a>.
|
||||
|
||||
@ -201,17 +201,27 @@ struct EscapeSequence {
|
||||
|
||||
std::string GetRestOfLine(LexAccessor &styler, Sci_Position start, bool allowSpace) {
|
||||
std::string restOfLine;
|
||||
Sci_Position i =0;
|
||||
Sci_Position line = styler.GetLine(start);
|
||||
Sci_Position pos = start;
|
||||
Sci_Position endLine = styler.LineEnd(line);
|
||||
char ch = styler.SafeGetCharAt(start, '\n');
|
||||
const Sci_Position endLine = styler.LineEnd(styler.GetLine(start));
|
||||
while (((start+i) < endLine) && (ch != '\r')) {
|
||||
const char chNext = styler.SafeGetCharAt(start + i + 1, '\n');
|
||||
if (ch == '/' && (chNext == '/' || chNext == '*'))
|
||||
break;
|
||||
if (allowSpace || (ch != ' '))
|
||||
restOfLine += ch;
|
||||
i++;
|
||||
ch = chNext;
|
||||
while (pos < endLine) {
|
||||
if (ch == '\\' && ((pos + 1) == endLine)) {
|
||||
// Continuation line
|
||||
line++;
|
||||
pos = styler.LineStart(line);
|
||||
endLine = styler.LineEnd(line);
|
||||
ch = styler.SafeGetCharAt(pos, '\n');
|
||||
} else {
|
||||
const char chNext = styler.SafeGetCharAt(pos + 1, '\n');
|
||||
if (ch == '/' && (chNext == '/' || chNext == '*'))
|
||||
break;
|
||||
if (allowSpace || (ch != ' ')) {
|
||||
restOfLine += ch;
|
||||
}
|
||||
pos++;
|
||||
ch = chNext;
|
||||
}
|
||||
}
|
||||
return restOfLine;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user