Skip to content

Update to scintilla 5.5.6 & Lexilla 5.4.4#16373

Closed
chcg wants to merge 1 commit intonotepad-plus-plus:masterfrom
chcg:scintilla_556
Closed

Update to scintilla 5.5.6 & Lexilla 5.4.4#16373
chcg wants to merge 1 commit intonotepad-plus-plus:masterfrom
chcg:scintilla_556

Conversation

@chcg
Copy link
Contributor

@chcg chcg commented Apr 3, 2025

Release 5.5.6 (https://www.scintilla.org/scintilla556.zip)

Released 2 April 2025.
Disallow changing case of protected text. Bug #2463.
Return enumeration type from MarkerSymbolDefined to match MarkerDefine. Bug #2469.
On Win32, use DirectWrite for autocompletion lists when DirectWrite chosen for document text.
On Win32, optimize case-insensitive DBCS search to be around 5 times faster by using 64K memory to cache folding data for each DBCS code page used.
On Win32, fix a crash with bidirectional text.
When using Visual C++ through nmake, fix building for ARM64. Feature #1546.
On Qt, draw clipped UTF-8 text correctly. Bug #2464.
On Qt, avoid a dwell start when the mouse is moved outside the Scintilla widget. Bug #2466.
On Qt, autoCompleteSelection converts from local encoding when not in Unicode mode. Bug #2465.

Release 5.4.4 (https://www.scintilla.org/lexilla544.zip)

Released 2 April 2025.
Fix building for ARM64. Pull request #308.

Release 5.5.6 (https://www.scintilla.org/scintilla556.zip)

    Released 2 April 2025.
    Disallow changing case of protected text. Bug notepad-plus-plus#2463.
    Return enumeration type from MarkerSymbolDefined to match MarkerDefine. Bug notepad-plus-plus#2469.
    On Win32, use DirectWrite for autocompletion lists when DirectWrite chosen for document text.
    On Win32, optimize case-insensitive DBCS search to be around 5 times faster by using 64K memory to cache folding data for each DBCS code page used.
    On Win32, fix a crash with bidirectional text.
    When using Visual C++ through nmake, fix building for ARM64. Feature notepad-plus-plus#1546.
    On Qt, draw clipped UTF-8 text correctly. Bug notepad-plus-plus#2464.
    On Qt, avoid a dwell start when the mouse is moved outside the Scintilla widget. Bug notepad-plus-plus#2466.
    On Qt, autoCompleteSelection converts from local encoding when not in Unicode mode. Bug notepad-plus-plus#2465.

Release 5.4.4 (https://www.scintilla.org/lexilla544.zip)

    Released 2 April 2025.
    Fix building for ARM64. Pull request notepad-plus-plus#308.
@chcg chcg added scintilla dependent Can't be considered for N++ implementation unless/until Scintilla changes lexilla dependent Can't be considered for N++ implementation unless/until Lexiilla changes labels Apr 3, 2025
@donho donho self-assigned this Apr 5, 2025
@donho donho added the accepted label Apr 8, 2025
@donho donho closed this in 5c18131 Apr 8, 2025
@chcg chcg deleted the scintilla_556 branch April 8, 2025 19:39
@xomx
Copy link
Contributor

xomx commented May 14, 2025

@chcg
This commit caused the following weird CR|LF behavior:
https://community.notepad-plus-plus.org/topic/26873/bug-with-the-crlf-end-of-line
Can you confirm?

@xomx
Copy link
Contributor

xomx commented May 15, 2025

STR

Ok (with previous Scintilla 5.5.5}:

npp-CRLF-UTF8-Sci555-ok.mp4

Bug (Notepad++.exe binary from this commit):

npp-CRLF-UTF8-Sci556-bug.mp4

I quickly looked at the post v5.5.5 Scintilla commits:

http://hg.code.sf.net/p/scintilla/code

where I see some candidate commits but do not have time to try every code change from there, sorry.

@chcg
Copy link
Contributor Author

chcg commented May 15, 2025

Checked with Scite 5.5.6. There it seems that this behaviour could not be observed. So likely this is a N++ specific issue.
@nyamatongwe Do you have an educated guess where this behaviour is coming from or what to check for ?

@nyamatongwe
Copy link

It's these changes.
https://sourceforge.net/p/scintilla/code/ci/52dd18426964b2458219be863a22b24e4848ac0d/
https://sourceforge.net/p/scintilla/code/ci/b8de5e4d2ef7ee6ed3ffabc86fe767acb2a93470/

However, the call to DiscardLastCombinedCharacter in those changes could be seen as the problem as it doesn't treat \r\n as a single character.

@xomx
Copy link
Contributor

xomx commented May 16, 2025

@chcg

Checked with Scite 5.5.6. There it seems that this behaviour could not be observed.

wscite556-UTF-CRLF-bug.mp4

@nyamatongwe
Copy link

Scintilla fix committed https://sourceforge.net/p/scintilla/code/ci/0364bca4f6d3cb1e1aaffa3baae6a0dfe4b026f2/.

@xomx
Copy link
Contributor

xomx commented May 17, 2025

@nyamatongwe
I tested the patch in N++ and now it's ok.
Thank you!

klepto2 pushed a commit to klepto2/scintilla that referenced this pull request May 18, 2025
orbitalquark pushed a commit to orbitalquark/scintilla-mirror that referenced this pull request May 18, 2025
chcg added a commit to chcg/notepad-plus-plus that referenced this pull request Jun 9, 2025
Release 5.5.7 (https://www.scintilla.org/scintilla557.zip)

    Released 8 June 2025.
    Add SCI_SCROLLVERTICAL method to restore view position and maintain it while performing line wrapping.
    Add SC_UNDO_SELECTION_HISTORY_SCROLL flag to SCI_SETUNDOSELECTIONHISTORY which controls whether undo and redo restore vertical scroll position.
    Tweak SC_MARK_BAR to be slightly wider by using next higher whole pixel instead of next lower for margin width / 3.
    Scale images in autocompletion lists with SCI_AUTOCSETIMAGESCALE to match high DPI screens. Initially only on GTK and Qt.
    Fix wrapping bug for UTF-8 where \r\n could wrap between the characters. Notepad++ Pull Request notepad-plus-plus#16373.
    Fix crash during painting when scroll bars changed. Bug notepad-plus-plus#2481.
    On GTK, reset vertical scroll bar synchronously in SCI_SETDOCPOINTER to fix bug where scroll position not restored in non-wrap mode. Bug notepad-plus-plus#2416.
    On GTK, fix IME problem when tentative composition interfered with delete surrounding. Feature notepad-plus-plus#1476.
    On GTK, update IME cursor position inside retrieve surrounding to better position candidate window. Feature notepad-plus-plus#1488.

Release 5.4.5 (https://www.scintilla.org/lexilla545.zip)

    Released 8 June 2025.
    Dart: Add error state SCE_DART_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
    Makefile: Add a keyword list to makefile lexer to highlight GNU Make directives like 'ifdef' and 'vpath' as SCE_MAKE_PREPROCESSOR since these are similar to NMAKE directives like '!IFDEF'.
    Nix: Add error state SCE_NIX_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
    TOML: Add error state SCE_TOML_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
    Zig: Add error state SCE_ZIG_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
chcg added a commit to chcg/notepad-plus-plus that referenced this pull request Jun 9, 2025
Release 5.5.7 (https://www.scintilla.org/scintilla557.zip)

    Released 8 June 2025.
    Add SCI_SCROLLVERTICAL method to restore view position and maintain it while performing line wrapping.
    Add SC_UNDO_SELECTION_HISTORY_SCROLL flag to SCI_SETUNDOSELECTIONHISTORY which controls whether undo and redo restore vertical scroll position.
    Tweak SC_MARK_BAR to be slightly wider by using next higher whole pixel instead of next lower for margin width / 3.
    Scale images in autocompletion lists with SCI_AUTOCSETIMAGESCALE to match high DPI screens. Initially only on GTK and Qt.
    Fix wrapping bug for UTF-8 where \r\n could wrap between the characters. Notepad++ Pull Request notepad-plus-plus#16373.
    Fix crash during painting when scroll bars changed. Bug notepad-plus-plus#2481.
    On GTK, reset vertical scroll bar synchronously in SCI_SETDOCPOINTER to fix bug where scroll position not restored in non-wrap mode. Bug notepad-plus-plus#2416.
    On GTK, fix IME problem when tentative composition interfered with delete surrounding. Feature notepad-plus-plus#1476.
    On GTK, update IME cursor position inside retrieve surrounding to better position candidate window. Feature notepad-plus-plus#1488.

Release 5.4.5 (https://www.scintilla.org/lexilla545.zip)

    Released 8 June 2025.
    Dart: Add error state SCE_DART_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
    Makefile: Add a keyword list to makefile lexer to highlight GNU Make directives like 'ifdef' and 'vpath' as SCE_MAKE_PREPROCESSOR since these are similar to NMAKE directives like '!IFDEF'.
    Nix: Add error state SCE_NIX_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
    TOML: Add error state SCE_TOML_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
    Zig: Add error state SCE_ZIG_STRINGEOL for unterminated string. Pull request notepad-plus-plus#315.
donho pushed a commit that referenced this pull request Jun 13, 2025
Release 5.5.7 (https://www.scintilla.org/scintilla557.zip)

Released 8 June 2025

1. Add SCI_SCROLLVERTICAL method to restore view position and maintain it while performing line wrapping.
2. Add SC_UNDO_SELECTION_HISTORY_SCROLL flag to SCI_SETUNDOSELECTIONHISTORY which controls whether undo and redo restore vertical scroll position.
3. Tweak SC_MARK_BAR to be slightly wider by using next higher whole pixel instead of next lower for margin width / 3.
4. Scale images in autocompletion lists with SCI_AUTOCSETIMAGESCALE to match high DPI screens. Initially only on GTK and Qt.
5. Fix wrapping bug for UTF-8 where \r\n could wrap between the characters. Notepad++ Pull Request #16373.
6. Fix crash during painting when scroll bars changed. Bug #2481.
7. On GTK, reset vertical scroll bar synchronously in SCI_SETDOCPOINTER to fix bug where scroll position not restored in non-wrap mode. Bug #2416.
8. On GTK, fix IME problem when tentative composition interfered with delete surrounding. Feature #1476.
9. On GTK, update IME cursor position inside retrieve surrounding to better position candidate window. Feature #1488.

Release 5.4.5 (https://www.scintilla.org/lexilla545.zip)

Released 8 June 2025

1. Dart: Add error state SCE_DART_STRINGEOL for unterminated string. Pull request #315.
2. Makefile: Add a keyword list to makefile lexer to highlight GNU Make directives like 'ifdef' and 'vpath' as SCE_MAKE_PREPROCESSOR since these are similar to NMAKE directives like '!IFDEF'.
3. Nix: Add error state SCE_NIX_STRINGEOL for unterminated string. Pull request #315.
4. TOML: Add error state SCE_TOML_STRINGEOL for unterminated string. Pull request #315.
5. Zig: Add error state SCE_ZIG_STRINGEOL for unterminated string. Pull request #315.

Close #16649
rhaberkorn pushed a commit to rhaberkorn/scintilla-mirror that referenced this pull request Aug 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

accepted lexilla dependent Can't be considered for N++ implementation unless/until Lexiilla changes scintilla dependent Can't be considered for N++ implementation unless/until Scintilla changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants