From 2cfc6e7df00f17f8bb2fade876e2ae2220e2e51e Mon Sep 17 00:00:00 2001 From: Zufu Liu Date: Sun, 15 Oct 2017 09:32:54 +1100 Subject: Backport: Bug [#1977]. Folder treats triple-quoted f-strings like triple-quoted strings. Backport of changeset 6399:2a06100a1fdc. --- lexers/LexPython.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lexers/LexPython.cxx') diff --git a/lexers/LexPython.cxx b/lexers/LexPython.cxx index 9b54340de..abe1c4be2 100644 --- a/lexers/LexPython.cxx +++ b/lexers/LexPython.cxx @@ -836,7 +836,7 @@ static bool IsCommentLine(Sci_Position line, Accessor &styler) { static bool IsQuoteLine(Sci_Position line, const Accessor &styler) { const int style = styler.StyleAt(styler.LineStart(line)) & 31; - return ((style == SCE_P_TRIPLE) || (style == SCE_P_TRIPLEDOUBLE)); + return IsPyTripleQuoteStringState(style); } @@ -872,7 +872,7 @@ void SCI_METHOD LexerPython::Fold(Sci_PositionU startPos, Sci_Position length, i int prev_state = SCE_P_DEFAULT & 31; if (lineCurrent >= 1) prev_state = styler.StyleAt(startPos - 1) & 31; - int prevQuote = options.foldQuotes && ((prev_state == SCE_P_TRIPLE) || (prev_state == SCE_P_TRIPLEDOUBLE)); + int prevQuote = options.foldQuotes && IsPyTripleQuoteStringState(prev_state); // Process all characters to end of requested range or end of any triple quote //that hangs over the end of the range. Cap processing in all cases @@ -889,7 +889,7 @@ void SCI_METHOD LexerPython::Fold(Sci_PositionU startPos, Sci_Position length, i indentNext = styler.IndentAmount(lineNext, &spaceFlags, NULL); Sci_Position lookAtPos = (styler.LineStart(lineNext) == styler.Length()) ? styler.Length() - 1 : styler.LineStart(lineNext); const int style = styler.StyleAt(lookAtPos) & 31; - quote = options.foldQuotes && ((style == SCE_P_TRIPLE) || (style == SCE_P_TRIPLEDOUBLE)); + quote = options.foldQuotes && IsPyTripleQuoteStringState(style); } const int quote_start = (quote && !prevQuote); const int quote_continue = (quote && prevQuote); -- cgit v1.2.3