Update Scintilla to 5.0 (PR #23117)

173 views
Skip to first unread message

Maarten

unread,
Jan 5, 2023, 4:32:02 PM1/5/23
to wx-...@googlegroups.com, Subscribed

This PR updates Scintilla to 5.0.0, and adds Lexilla 5.0.2.

I replaced c++17 features, so it can be built with c++14 compilers. And another commit to replace c++14 features with c++11, if this will be the maximum c++ version that wxWidgets will support.

Currently only works with CMake. The bakefile and msvc projects have not yet been updated.

This might be the moment to move the Scintilla and Lexilla sources to submodules. Lexilla's upstream is on GitHub. But Scintilla is using Mercurial at Source Forge, so we would have to maintain that ourselves.

@eranif This should also fix #23080


You can view, comment on, or merge this pull request online at:

  https://github.com/wxWidgets/wxWidgets/pull/23117

Commit Summary

  • 3d8e994 Update Scintilla to 4.4.6
  • aa75e71 Fix building Scintilla 4.4.6
  • f127f0e Update Scintilla to 5.0.0 and Lexilla to 5.0.2
  • 38e722d Fix building Scintilla 5
  • 12c1182 Make Scintilla c++14 compatible
  • b6af68e Make Scintilla c++11 compatible
  • 69c8654 Enable loading legacy lexers
  • cc1f3b2 Use wxChar for wxSTC key events

File Changes

(206 files)

Patch Links:


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117@github.com>

VZ

unread,
Jan 5, 2023, 7:14:54 PM1/5/23
to wx-...@googlegroups.com, Subscribed

@vadz commented on this pull request.

Thanks for the update!

Are there any new features in the new version that would merit being showcases in the sample? I didn't really see anything in https://www.scintilla.org/ScintillaHistory.html but it's not exactly easy to read, so I could have missed it...

As for the submodules, we'd indeed need to maintain our own Git mirror, but it could still be useful to have it in order to track our changes to the upstream sources more easily. In principle, converting from hg to git is simple enough with fast export, but I must have last done it 10+ years ago, when I was still using hg, so I am not totally sure if this is still the case... If you'd like, I could try doing the conversion but we need to decide if we want to use submodules at all first and I think this should be your choice, as you're the one working with STC the most, so please let me know.


In samples/stc/stctest.cpp:

> +    wxVersionInfo vi1 = wxStyledTextCtrl::GetLibraryVersionInfo();

+    wxVersionInfo vi2 = wxStyledTextCtrl::GetLexerVersionInfo();

I think we should make the names more readable.

⬇️ Suggested change
-    wxVersionInfo vi1 = wxStyledTextCtrl::GetLibraryVersionInfo();

-    wxVersionInfo vi2 = wxStyledTextCtrl::GetLexerVersionInfo();

+    wxVersionInfo viScintilla = wxStyledTextCtrl::GetLibraryVersionInfo();

+    wxVersionInfo viLexilla = wxStyledTextCtrl::GetLexerVersionInfo();


In src/stc/PlatWX.cpp:

> @@ -607,6 +611,11 @@ void SurfaceImpl::Copy(PRectangle rc, Point from, Surface &surfaceSource) {

               wxRound(from.x), wxRound(from.y), wxCOPY);

 }

 

+std::unique_ptr<IScreenLineLayout> SurfaceImpl::Layout(const IScreenLine* WXUNUSED(screenLine))

+{

+    return nullptr;

⬇️ Suggested change
-    return nullptr;

+    return {};


In src/stc/PlatWX.cpp:

> @@ -1593,7 +1614,7 @@ void SurfaceD2D::DrawTextTransparent(PRectangle rc, Font &font_,

 XYPOSITION SurfaceD2D::WidthText(Font &font_, const char *s, int len)

 {

     XYPOSITION width = 1.0;

-    wxString tbuf = stc2wx(s,len);

+    wxString tbuf = stc2wx(s, len);

These whitespace-only changes are a bit annoying :-(


In src/stc/PlatWX.cpp:

> @@ -1550,6 +1566,11 @@ void SurfaceD2D::Copy(PRectangle rc, Point from, Surface& surfaceSource)

     }

 }

 

+std::unique_ptr<IScreenLineLayout> SurfaceD2D::Layout(const IScreenLine* WXUNUSED(screenLine))

+{

+    return nullptr;

⬇️ Suggested change
-    return nullptr;

+    return {};


In src/stc/ScintillaWX.cpp:

> @@ -206,6 +207,8 @@ static wxTextFileType wxConvertEOLMode(int scintillaMode)

 

 

 ScintillaWX::ScintillaWX(wxStyledTextCtrl* win) {

+    GetLexerCount();

It would be nice to have a comment explaining why do we call this function and don't use its result (I guess it's some kind of lexer initialization?).


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/review/1238188936@github.com>

Maarten

unread,
Jan 6, 2023, 12:37:34 PM1/6/23
to wx-...@googlegroups.com, Subscribed

@MaartenBent commented on this pull request.


In src/stc/ScintillaWX.cpp:

> @@ -206,6 +207,8 @@ static wxTextFileType wxConvertEOLMode(int scintillaMode)
 
 
 ScintillaWX::ScintillaWX(wxStyledTextCtrl* win) {
+    GetLexerCount();

I mentioned it in the commit message. There is a bug in Lexilla 5.0.2 where it doesn't initialize the lexers. It is fixed in 5.0.3 but this version has major architecture changes so I can't/won't update to that version.

I think I'll remove this and apply the Lexilla fix instead.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/review/1239158313@github.com>

Maarten

unread,
Jan 6, 2023, 1:08:04 PM1/6/23
to wx-...@googlegroups.com, Subscribed

Nothing much has changed. 4.4 is mostly the same as 3.21, but with c++17. And 5.0 moves the lexers to a separate project.

I'd like to use submodules. Scintilla is the only external code that doesn't have one yet.
Updating to the next Scintilla version (even 5.0.1) seems to requires some major changes. So I'm not sure when/if I or someone else will do that. We might add the submodules and then never update them. But I still think it is better to have them so they are there when we need them.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1373969898@github.com>

VZ

unread,
Jan 7, 2023, 9:55:11 AM1/7/23
to wx-...@googlegroups.com, Subscribed

@vadz commented on this pull request.


In src/stc/ScintillaWX.cpp:

> @@ -206,6 +207,8 @@ static wxTextFileType wxConvertEOLMode(int scintillaMode)
 
 
 ScintillaWX::ScintillaWX(wxStyledTextCtrl* win) {
+    GetLexerCount();

Sorry for missing this and thanks for the explanation!


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/review/1239677739@github.com>

VZ

unread,
Jan 7, 2023, 9:58:42 AM1/7/23
to wx-...@googlegroups.com, Subscribed

I didn't realize that upgrading from 5.0 to 5.0.1 would be more difficult than upgrading from 3 to 5, how quaint...

Anyhow, let's use submodules, I can create the repository (or 2 repositories?) under wxWidgets org for them but if you plan to do it yourself, I think it might actually be simpler/more convenient if you created your own repositories and then moved them under wx org (I'm almost sure you should be able to do it). As long as GitHub Actions support cron-based workflows, we could set one up to update the mirror from hg automatically. Or we could set up a "dispatch" workflow to only do it on demand. Please let me know if you're going to set this up or if you count on me to do it.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1374507197@github.com>

Maarten

unread,
Jan 7, 2023, 2:13:19 PM1/7/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 11 commits.

  • 82fa596 Fix building Scintilla 4.4.6
  • 54fa49b Update Scintilla to 5.0.0 and Lexilla to 5.0.1
  • 5520d09 Fix building Scintilla 5
  • 1775dc3 Make Scintilla c++14 compatible
  • a0af85f Make Scintilla c++11 compatible
  • 073372d Use wxChar for wxSTC key events
  • fabe04a Fix indentation in ScintillaWX::WndProc
  • b46b5b1 Enable loading legacy and external lexers
  • 34f539f Resolve warnings in Lexilla
  • 2bdfc3f Update bakefiles with Scintilla and Lexilla changes
  • c9850bd Rebake after bakefile changes


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12210715522@github.com>

Maarten

unread,
Jan 7, 2023, 2:34:01 PM1/7/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 12 commits.

  • 8f6f921 Update Scintilla to 4.4.6
  • 9beb854 Fix building Scintilla 4.4.6
  • 9e7ec10 Update Scintilla to 5.0.0 and Lexilla to 5.0.1
  • eb7e27b Fix building Scintilla 5
  • 64c451f Make Scintilla c++14 compatible
  • d251f93 Make Scintilla c++11 compatible
  • 5026076 Use wxChar for wxSTC key events
  • a234959 Fix indentation in ScintillaWX::WndProc
  • a3f8712 Enable loading legacy and external lexers
  • 250578d Resolve warnings in Lexilla
  • 1d7239e Update bakefiles with Scintilla and Lexilla changes
  • 886c651 Rebake after bakefile changes


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12210808100@github.com>

Maarten

unread,
Jan 7, 2023, 2:44:10 PM1/7/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 3 commits.

  • c88c2ec Resolve warnings in Lexilla
  • da31600 Update bakefiles with Scintilla and Lexilla changes
  • 0e192b2 Rebake after bakefile changes


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12210851845@github.com>

Maarten

unread,
Jan 7, 2023, 4:10:47 PM1/7/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 1 commit.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12211221395@github.com>

Maarten

unread,
Jan 8, 2023, 8:50:24 AM1/8/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 2 commits.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12214903866@github.com>

Maarten

unread,
Jan 8, 2023, 9:57:20 AM1/8/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 1 commit.

  • eae07fd fix vs projects and another vs2015 error


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12215231636@github.com>

Maarten

unread,
Jan 15, 2023, 8:30:29 AM1/15/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 3 commits.

  • 46a0335 don't compile lexilla CharacterCategory and CharacterSet
  • 33a228c add lexilla to pbx template and makeprojects.py
  • ed87611 Generate xcode projects.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12289702459@github.com>

Maarten

unread,
Jan 20, 2023, 4:58:50 PM1/20/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 3 commits.

  • 6948733 Generate xcode projects.
  • 4aa3493 remove scintilla and lexilla sources
  • ee7be39 Add scintilla and lexilla submodules.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12354712467@github.com>

Maarten

unread,
Jan 21, 2023, 1:28:26 PM1/21/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 2 commits.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12359652884@github.com>

Maarten

unread,
Jan 28, 2023, 5:56:21 PM1/28/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 14 commits.

  • 28bc940 Remove Scintilla and Lexilla sources
  • 0b152a5 Add scintilla and Lexilla submodules
  • 07091e2 Update CMake with Scintilla and Lexilla changes
  • 1333f93 Regenerate wxSTC files after Scintilla update
  • 4543d55 Update wxSTC code for latest Scintilla
  • c4560fc Update bakefile with Scintilla and Lexilla changes
  • e49d67c Rebake after bakefile changes
  • 5be90a8 Update MSVS projects with Scintilla and Lexilla changes
  • 5044c83 Add Lexilla to pbx template and makeprojects.py
  • 405d9c6 Generate Xcode projects after Scintilla and Lexilla changes
  • 29ab6e9 Use wxChar for wxSTC key events
  • 2fc4f0b Fix indentation in ScintillaWX::WndProc
  • 008cbb4 Enable loading legacy and external lexers
  • 02b2992 Fix CI errors after Scintilla update


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12433482889@github.com>

Maarten

unread,
Jan 29, 2023, 4:22:46 PM1/29/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 13 commits.

  • af3ef82 Add scintilla and Lexilla submodules
  • 44c7b3e Update CMake with Scintilla and Lexilla changes
  • 3aef73b Regenerate wxSTC files after Scintilla update
  • 29ac657 Update wxSTC code for latest Scintilla
  • e0fd021 Update bakefile with Scintilla and Lexilla changes
  • e0c42fe Rebake after bakefile changes
  • f23f826 Update MSVS projects with Scintilla and Lexilla changes
  • 967c564 Add Lexilla to pbx template and makeprojects.py
  • be29085 Generate Xcode projects after Scintilla and Lexilla changes
  • 6336aba Use wxChar for wxSTC key events
  • 6e38c0c Fix indentation in ScintillaWX::WndProc
  • 0eac9a9 Enable loading legacy and external lexers
  • f616df7 Fix CI errors after Scintilla update


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12438771341@github.com>

Maarten

unread,
Jan 29, 2023, 4:50:04 PM1/29/23
to wx-...@googlegroups.com, Subscribed

This should be (almost) done now, only need to sort out the submodules.
I found and used this scintilla mirror: https://github.com/missdeer/scintilla/tree/master. If you think setting up our own automatic hg mirror will be more future proof, you will have to do that. I'm not sure how to do that.

I'll try to move my submodules to the wxWidgets organization. You probably get an email to accept or deny this.

There is no rush, if you want to focus on 3.2.2 first, thats fine.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1407778765@github.com>

Maarten

unread,
Jan 29, 2023, 5:08:51 PM1/29/23
to wx-...@googlegroups.com, Subscribed

Didn't work: You don’t have the permission to create public repositories on wxWidgets

Maybe you can fork them yourself via the GitHub website (so it will also show forked from origina/repo). And create a wx branch for both of them.
And then set the wx branch as the default branch (might want to do this for the nanosvg and pcre repositories too).

For the scintilla repo, set branch wx to commit 78f398b2eb4bce342197a2c3559ed561837224dd
For the lexilla repo, set branch wx to tag rel-5-0-1


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1407782993@github.com>

VZ

unread,
Jan 29, 2023, 5:39:33 PM1/29/23
to wx-...@googlegroups.com, Subscribed

I think it's because you're not a wx org member? I could add you as one, of course, please let me know if I should.

Otherwise I can, of course, create the forks myself but I'm not sure about the lexilla one: where should I fork it from, your repository with the same name?


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1407789469@github.com>

Maarten

unread,
Jan 29, 2023, 5:41:30 PM1/29/23
to wx-...@googlegroups.com, Subscribed

You can fork the official Lexilla repo: https://github.com/ScintillaOrg/lexilla


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1407789950@github.com>

VZ

unread,
Jan 29, 2023, 6:04:27 PM1/29/23
to wx-...@googlegroups.com, Subscribed

I've created both repositories now with the branches set as described, please let me know if you see anything wrong, TIA!


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1407795464@github.com>

Maarten

unread,
Jan 29, 2023, 6:09:54 PM1/29/23
to wx-...@googlegroups.com, Subscribed

Looks good, just one small thing. Can you go to the Scintilla/Lexilla project settings, branches, and then set wx as the default branch? This makes it easier to find when navigating the repo on GitHub.
Most other submodules have this already, except nanosvg and pcre. Maybe you can change this for them too?


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1407796993@github.com>

VZ

unread,
Jan 29, 2023, 6:20:11 PM1/29/23
to wx-...@googlegroups.com, Subscribed

No idea why, but I'm trying "Could not change default branch" when trying to do it for lexilla... I'll look at this again tomorrow.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1407798166@github.com>

VZ

unread,
Jan 30, 2023, 10:12:48 AM1/30/23
to wx-...@googlegroups.com, Subscribed

No idea why, but I'm trying "Could not change default branch" when trying to do it for lexilla

Doing exactly the same thing from the desktop browser worked, so I've updated all these repositories to use wx now.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1408802181@github.com>

Maarten

unread,
Feb 14, 2023, 1:30:56 PM2/14/23
to wx-...@googlegroups.com, Subscribed

I've created wxWidgets/scintilla#1 and wxWidgets/lexilla#1


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1430192480@github.com>

VZ

unread,
Feb 14, 2023, 3:55:40 PM2/14/23
to wx-...@googlegroups.com, Subscribed

Thanks, merged both of them (using GitHub web UI, hopefully this worked as I thought it would...).


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1430364628@github.com>

Maarten

unread,
Feb 14, 2023, 5:01:32 PM2/14/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 14 commits.

  • cc6ea97 Remove Scintilla and Lexilla sources
  • 6928745 Add scintilla and Lexilla submodules
  • 5d5facb Update CMake with Scintilla and Lexilla changes
  • 2a18a04 Regenerate wxSTC files after Scintilla update
  • e3622c0 Update wxSTC code for latest Scintilla
  • c8c254d Update bakefile with Scintilla and Lexilla changes
  • b0385e4 Rebake after bakefile changes
  • dd5ff3c Update MSVS projects with Scintilla and Lexilla changes
  • 9d3a24b Add Lexilla to pbx template and makeprojects.py
  • 7321165 Generate Xcode projects after Scintilla and Lexilla changes
  • 2bf9083 Use wxChar for wxSTC key events
  • a968b37 Fix indentation in ScintillaWX::WndProc
  • a72108c Enable loading legacy and external lexers
  • 957c5a4 Fix CI errors after Scintilla update


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12622185449@github.com>

VZ

unread,
Feb 14, 2023, 6:09:08 PM2/14/23
to wx-...@googlegroups.com, Subscribed

@vadz approved this pull request.

Thanks again for all this work!

Should this be merged if/when the CI builds pass or do you plan more changes here?


In .github/workflows/code_checks.yml:

>                 ':!src/stc/scintilla/' \
+               ':!src/stc/lexilla/' \

BTW this shouldn't be necessary any longer as git-diff doesn't recurse into submodules by default.


In src/stc/ScintillaWX.cpp:

> @@ -771,35 +774,58 @@ sptr_t ScintillaWX::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam)
             break;
 #endif
 
-      case SCI_GETDIRECTFUNCTION:
+        case SCI_GETDIRECTFUNCTION:

Are these whitespace changes intentional?


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/review/1298554379@github.com>

Maarten

unread,
Feb 14, 2023, 6:11:56 PM2/14/23
to wx-...@googlegroups.com, Subscribed

@MaartenBent commented on this pull request.


In src/stc/ScintillaWX.cpp:

> @@ -771,35 +774,58 @@ sptr_t ScintillaWX::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam)
             break;
 #endif
 
-      case SCI_GETDIRECTFUNCTION:
+        case SCI_GETDIRECTFUNCTION:

Yes, I fixed the indentation in this commit a968b37


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/review/1298561542@github.com>

Maarten

unread,
Feb 14, 2023, 6:12:38 PM2/14/23
to wx-...@googlegroups.com, Subscribed

@MaartenBent commented on this pull request.


In .github/workflows/code_checks.yml:

>                 ':!src/stc/scintilla/' \
+               ':!src/stc/lexilla/' \

Ok, I'll remove them and see if CI succeeds..


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/review/1298562050@github.com>

Maarten

unread,
Feb 14, 2023, 6:15:24 PM2/14/23
to wx-...@googlegroups.com, Subscribed

Should this be merged if/when the CI builds pass or do you plan more changes here?

Yes, it is done now (after resolving above comment). I'll remove the draft, and then it should be ready to merge.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1430517175@github.com>

Maarten

unread,
Feb 14, 2023, 6:21:35 PM2/14/23
to wx-...@googlegroups.com, Push

@MaartenBent pushed 1 commit.

  • 1e3c148 Fix missing submodule in CI after Scintilla update


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/push/12622841708@github.com>

VZ

unread,
Feb 15, 2023, 5:32:09 PM2/15/23
to wx-...@googlegroups.com, Subscribed

I'd like to ask people using wxSTC in their applications to test this PR and let us know if there are any important regressions (there are not supposed to be any, but it doesn't mean there are none). It would be much better to fix them before merging it!


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1432153106@github.com>

VZ

unread,
Feb 20, 2023, 12:34:08 PM2/20/23
to wx-...@googlegroups.com, Subscribed

Merged #23117 into master.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/issue_event/8563922493@github.com>

VZ

unread,
Feb 20, 2023, 1:26:44 PM2/20/23
to wx-...@googlegroups.com, Subscribed

Thanks again for doing all this work!

I was wondering if you could summarize the main new features of Scintilla 5.0 so that we could include this in the change log and/or maybe a separate news/blog post on the web site if it's worth it. In the latter case and if you'd like to do it, please feel free to just submit one as PR to the website repository, otherwise just a few lines here would be enough. TIA!


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1437408410@github.com>

Maarten

unread,
Feb 20, 2023, 2:32:54 PM2/20/23
to wx-...@googlegroups.com, Subscribed

The main change of 5.0 is the division of the project into Scintilla and Lexilla.

I think the only other big change is the addition of SetILexer()/SCI_SETILEXER, see https://www.scintilla.org/Scintilla5Migration.html .
It replaces SetLexer() / SCI_SETLEXER, SetLexerLanguage() / SCI_SETLEXERLANGUAGE and LoadLexerLibrary() / SCI_LOADLEXERLIBRARY. This doesn't affect users because I restored their functionality in a72108c.
When we update again, Scintilla 5.0.1 will also remove those defines. But we can probably keep defining them ourselves as long as Lexilla keeps the API functions.

It is probably not worth a blog post. I suspect the biggest problem will be complaints about missing files because users forget the update the submodules.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1437464264@github.com>

VZ

unread,
Feb 20, 2023, 4:53:09 PM2/20/23
to wx-...@googlegroups.com, Subscribed

But we upgraded it from Scintilla 3, have there been no user-visible changes in all the intermediate versions neither?


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1437591748@github.com>

Maarten

unread,
Feb 20, 2023, 5:35:19 PM2/20/23
to wx-...@googlegroups.com, Subscribed

Scintilla 4.4 is the same as Scintilla 3.21, but with c++17. And Scintilla 5.0 is the next version after that.

If I check stc.h, the only other difference is support for a F# lexer.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1437632220@github.com>

VZ

unread,
Feb 20, 2023, 5:39:15 PM2/20/23
to wx-...@googlegroups.com, Subscribed

I see, thanks. I admit I expected more changes from such a version jump, especially because I remember people really wanting to upgrade to the later versions, but it's still very nice to not be stuck on a really ancient version, of course.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1437637141@github.com>

Eric-01

unread,
Feb 21, 2023, 2:20:49 PM2/21/23
to wx-...@googlegroups.com, Subscribed

I'd like to ask people using wxSTC in their applications to test this PR and let us know if there are any important regressions (there are not supposed to be any, but it doesn't mean there are none). It would be much better to fix them before merging it!

@eranif, you may be interested in this as your CodeLite IDE makes extensive use of wxSTC and wxWidgets 3.3.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1438978377@github.com>

Eran Ifrah

unread,
Feb 21, 2023, 2:37:32 PM2/21/23
to wx-...@googlegroups.com, Subscribed

Already built and updated for macOS & Windows. Will update minimum Ubuntu tomorrow


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/23117/c1438995771@github.com>

Reply all
Reply to author
Forward
0 new messages