StrokesPlus.net
Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
Surenpahlav  
#1 Posted : Thursday, February 10, 2022 7:34:23 PM(UTC)
Surenpahlav

Rank: Member

Reputation:

Groups: Approved
Joined: 3/24/2020(UTC)
Posts: 27

Thanks: 2 times
This is a longshot... but any chance we can have a dark mode for S+ sometime in the future? Or is it too much work for a non-essential feature?
Rob  
#2 Posted : Thursday, February 10, 2022 7:53:43 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 1,349
United States
Location: Tampa, FL

Thanks: 28 times
Was thanked: 416 time(s) in 354 post(s)
I'm very slowly working on replacing the UI with an HTML based WebView2 interface.

At that point, it will become CSS based so color/style themes will be supported.
Surenpahlav  
#3 Posted : Thursday, February 10, 2022 8:16:21 PM(UTC)
Surenpahlav

Rank: Member

Reputation:

Groups: Approved
Joined: 3/24/2020(UTC)
Posts: 27

Thanks: 2 times
Ah nice! Looking forward to it.
randomConstant  
#4 Posted : Friday, February 11, 2022 6:19:19 PM(UTC)
randomConstant

Rank: Advanced Member

Reputation:

Groups: Translators, Approved
Joined: 7/17/2021(UTC)
Posts: 135

Thanks: 35 times
Was thanked: 18 time(s) in 15 post(s)
Hi,
I recommend using a Windows theme until S+ has native support for dark mode.

I'm currently using Matte theme which has a nice dark-ish style. It styles explorer, task manager, menus, IDM, S+, and basically anything that uses default Windows(WindowForms maybe?) rules/styles.

The process is simple,
  • first you install a software which patches Windows to enable custom themes such as UltraUXThemePatcher( there is a better way to do this without patch as well now)
  • then you download a theme and put its files in the Windows themes directory. Theme can then be applied by simply selecting it from themes in Windows personalization settings.
  • if needed, you install any provided icon packs that come with the theme. Most themes also require a tiny bit of tweaking to remove ribbon menus from explorer and make things smooth.

(for more information please check out the theme's installation guide, it will tell you which versions of Windows it supports, the programs to install and settings to keep, deviantart is a good place to start your search)

Make sure your Windows update/version is supported by the theme and do keep a fresh recovery point before theming your system, mismatches with Windows versions can cause grey/black screens and cause a lot of problem for you.
It is still worth it in my opinion and it's one of the first things I do on a fresh install of Windows. You should be golden if you watch a few YouTube tutorials on the topic. Saves a lot of hassle of getting dark themes on countless Windows programs. Plus all themed applications look very similar in this manner(same styles)

Windows also has dark themes but they might not be very appealing.

If you need any screen shots of my current theme or have any questions relating this topic feel free to ask.

Hope it helps some people.

Edited by user Saturday, February 12, 2022 3:14:10 AM(UTC)  | Reason: is -> it

thanks 1 user thanked randomConstant for this useful post.
Surenpahlav on 2/14/2022(UTC)
Surenpahlav  
#5 Posted : Friday, February 11, 2022 6:34:09 PM(UTC)
Surenpahlav

Rank: Member

Reputation:

Groups: Approved
Joined: 3/24/2020(UTC)
Posts: 27

Thanks: 2 times
Wow thanks for the info, i'll definitely look into it!
soooulp  
#6 Posted : Saturday, February 12, 2022 11:27:15 AM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Moderators, Approved
Joined: 4/23/2020(UTC)
Posts: 161
China

Thanks: 46 times
Was thanked: 23 time(s) in 17 post(s)
Originally Posted by: randomConstant Go to Quoted Post

If you need any screenshots of my current theme or have any questions relating to this topic feel free to ask.

Hope it helps some people.



May I have a look at your beautiful theme?
randomConstant  
#7 Posted : Sunday, February 13, 2022 5:33:47 AM(UTC)
randomConstant

Rank: Advanced Member

Reputation:

Groups: Translators, Approved
Joined: 7/17/2021(UTC)
Posts: 135

Thanks: 35 times
Was thanked: 18 time(s) in 15 post(s)
Quote:
Beauty is in the eye of the beholder

and yes of course you can Laugh

Here's how the Matte theme looks on my laptop:
Matte Theme Windows 10 Showcase

Note: I'm using UltraUXThemePatcher to first patch Windows 10 (its a simple one click procedure). Some Window elements do not get themed such as S+ script window, LibreOffice typing area and so on. But you can hopefully customize those applications (such as Notepad++) with matching color scheme using app's built-in theming options.


soooulp  
#8 Posted : Sunday, February 13, 2022 12:24:35 PM(UTC)
soooulp

Rank: Advanced Member

Reputation:

Groups: Moderators, Approved
Joined: 4/23/2020(UTC)
Posts: 161
China

Thanks: 46 times
Was thanked: 23 time(s) in 17 post(s)
So nice!!

I like gray and green.

Except for the S+ scripts interface and the track logo.
randomConstant  
#9 Posted : Sunday, February 13, 2022 3:39:21 PM(UTC)
randomConstant

Rank: Advanced Member

Reputation:

Groups: Translators, Approved
Joined: 7/17/2021(UTC)
Posts: 135

Thanks: 35 times
Was thanked: 18 time(s) in 15 post(s)
Glad you liked it Laugh

Also yes, script window being white is a bit eye-burning but Rob has not paid special attention to S+ in terms of theming as far as current stable release goes imo. I'm positive the upcoming HTML based WebView2 interface will most probably enable the use of custom CSS so there's hope. ThumpUp
Rob  
#10 Posted : Sunday, February 13, 2022 6:40:27 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 1,349
United States
Location: Tampa, FL

Thanks: 28 times
Was thanked: 416 time(s) in 354 post(s)
Can never make people happy... Flapper

There have always been some color/font settings in sp_config for the Scintilla (script) editor, but I added more in 0.5.6.0, along with a background color for the gesture preview in the Action Editor.

Note that the Console window is initialized during S+ start and always stays running, so you'll need to restart to see the color changes there.
But the Settings window is initialized each time you open it.

Example for dark (just the main colors, I didn't adjust keywords, etc.):
Code:
sp_config.ScintillaBackgroundColor = System.Drawing.Color.Black;

sp_config.ScintillaFont = "Consolas";
sp_config.ScintillaFontSize = 10;

sp_config.ScintillaFontColor = System.Drawing.Color.Black;
sp_config.ScintillaFontBackColor = System.Drawing.Color.Black;

sp_config.ScintillaCommentColor = System.Drawing.Color.Green;
sp_config.ScintillaCommentBackColor = System.Drawing.Color.Black;

sp_config.ScintillaStringColor = System.Drawing.Color.DarkRed;
sp_config.ScintillaStringBackColor = System.Drawing.Color.Black;

sp_config.ScintillaCharacterColor = System.Drawing.Color.DarkRed;
sp_config.ScintillaCharacterBackColor = System.Drawing.Color.Black;

sp_config.ScintillaIdentifierColor = System.Drawing.Color.Blue;
sp_config.ScintillaIdentifierBackColor = System.Drawing.Color.Black;

sp_config.ScintillaNumberColor = System.Drawing.Color.Magenta;
sp_config.ScintillaNumberBackColor = System.Drawing.Color.Black;

sp_config.ScintillaLineNumberColor = System.Drawing.Color.White;
sp_config.ScintillaLineNumberBackColor = System.Drawing.Color.Black;

sp_config.ScintillaKeywordColor = System.Drawing.Color.Blue;
sp_config.ScintillaKeywordBackColor = System.Drawing.Color.Black;

sp_config.ScintillaSecondaryKeywordColor = System.Drawing.Color.Magenta;
sp_config.ScintillaSecondaryKeywordBackColor = System.Drawing.Color.Black;

sp_config.ScintillaOperatorColor = System.Drawing.Color.Olive;
sp_config.ScintillaOperatorBackColor = System.Drawing.Color.Black;

sp_config.ScintillaClassColor = System.Drawing.Color.Olive;
sp_config.ScintillaClassBackColor = System.Drawing.Color.Black;

sp_config.ScintillaMarkerColor = System.Drawing.Color.Black;
sp_config.ScintillaMarkerBackgroundColor = System.Drawing.Color.White;

sp_config.ScintillaFoldMarginColor = System.Drawing.Color.Black;
sp_config.ScintillaFoldMarginHighlightColor = System.Drawing.Color.White;

sp_config.GestureThumbnailBackgroundColor = System.Drawing.Color.Black;

sp_config.Save();

Default colors:
Code:
sp_config.ScintillaBackgroundColor = System.Drawing.Color.White;

sp_config.ScintillaFont = "Consolas";
sp_config.ScintillaFontSize = 10;

sp_config.ScintillaFontColor = System.Drawing.Color.Black;
sp_config.ScintillaFontBackColor = System.Drawing.Color.White;

sp_config.ScintillaCommentColor = System.Drawing.Color.Green;
sp_config.ScintillaCommentBackColor = System.Drawing.Color.White;

sp_config.ScintillaStringColor = System.Drawing.Color.DarkRed;
sp_config.ScintillaStringBackColor = System.Drawing.Color.White;

sp_config.ScintillaCharacterColor = System.Drawing.Color.DarkRed;
sp_config.ScintillaCharacterBackColor = System.Drawing.Color.White;

sp_config.ScintillaIdentifierColor = System.Drawing.Color.Blue;
sp_config.ScintillaIdentifierBackColor = System.Drawing.Color.White;

sp_config.ScintillaNumberColor = System.Drawing.Color.Magenta;
sp_config.ScintillaNumberBackColor = System.Drawing.Color.White;

sp_config.ScintillaLineNumberColor = System.Drawing.Color.FromArgb(128, 128, 128);
sp_config.ScintillaLineNumberBackColor = System.Drawing.Color.White;

sp_config.ScintillaKeywordColor = System.Drawing.Color.Blue;
sp_config.ScintillaKeywordBackColor = System.Drawing.Color.White;

sp_config.ScintillaSecondaryKeywordColor = System.Drawing.Color.Magenta;
sp_config.ScintillaSecondaryKeywordBackColor = System.Drawing.Color.White;

sp_config.ScintillaOperatorColor = System.Drawing.Color.Olive;
sp_config.ScintillaOperatorBackColor = System.Drawing.Color.White;

sp_config.ScintillaClassColor = System.Drawing.Color.Olive;
sp_config.ScintillaClassBackColor = System.Drawing.Color.White;

sp_config.ScintillaMarkerColor = System.Drawing.SystemColors.ControlDark;
sp_config.ScintillaMarkerBackgroundColor = System.Drawing.SystemColors.ControlLightLight;

sp_config.ScintillaFoldMarginColor = System.Drawing.Color.White;
sp_config.ScintillaFoldMarginHighlightColor = System.Drawing.Color.FromArgb(128, 128, 128);

sp_config.GestureThumbnailBackgroundColor = System.Drawing.Color.White;

sp_config.Save();
thanks 2 users thanked Rob for this useful post.
Surenpahlav on 2/14/2022(UTC), randomConstant on 2/15/2022(UTC)
randomConstant  
#11 Posted : Tuesday, February 15, 2022 5:37:28 AM(UTC)
randomConstant

Rank: Advanced Member

Reputation:

Groups: Translators, Approved
Joined: 7/17/2021(UTC)
Posts: 135

Thanks: 35 times
Was thanked: 18 time(s) in 15 post(s)
Thanks a lot Rob!

This is much better. However, I think there might be some mistakes in it, such as:
  • ScintillaBackgroundColor does not appear to change script area background color
  • ScintillaFontBackColor appears to change script area background color, not the font(text) background but non textual area instead, acting like ScintillaBackgroundColor . Font background color (which should be controlled by ScintillaFontBackColor) is taking values from ScintillaIdentifierColor.
  • ScintillaFontColor does not appear to change normal font(text) color (such as info in var info), it doesn't seem to affect anything
  • ScintillaIdentifierColor seem to affect both the identifiers (such as .SetText in clip.SetText) as well as any other font(text) (such as info in var info), which seems to be the case by default as well(both are black by default). I think font color should be controlled by ScintillaFontColor and identifiers by ScintillaIdentifierColor, meaning .SetText and info in this example should have different colors. As that would help user differentiate between his incorrect text and actual identifiers.
  • Similarly, ScintillaIdentifierBackColor as mentioned before (in second bullet) seem to control both font as well as identifiers background colors.
  • The blinking cursor colors are not changing(it remains black) and the regex pattern color and background are not changing (remains black with white background) (such as /abcde/ in action.Window.Title.match(/abcde/) )


The rest is working great, thanks BigGrin
randomConstant  
#12 Posted : Tuesday, February 15, 2022 5:43:00 AM(UTC)
randomConstant

Rank: Advanced Member

Reputation:

Groups: Translators, Approved
Joined: 7/17/2021(UTC)
Posts: 135

Thanks: 35 times
Was thanked: 18 time(s) in 15 post(s)
oh and the default ScintillaIdentifierColor
Quote:
sp_config.ScintillaIdentifierColor = System.Drawing.Color.Blue;

in Default Colors code shared by Rob is actually a black-ish color.
Rob  
#13 Posted : Tuesday, February 15, 2022 6:32:42 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 1,349
United States
Location: Tampa, FL

Thanks: 28 times
Was thanked: 416 time(s) in 354 post(s)
Thanks, I'll check these out.

I did these updates very quick and didn't test much.
Rob  
#14 Posted : Thursday, February 17, 2022 5:38:36 PM(UTC)
Rob

Rank: Administration

Reputation:

Groups: Translators, Members, Administrators
Joined: 1/11/2018(UTC)
Posts: 1,349
United States
Location: Tampa, FL

Thanks: 28 times
Was thanked: 416 time(s) in 354 post(s)
Made several updates in 0.5.6.1 - see change log for details.

NOTE: All Scintilla font/color values will be reset when you first run, since properties were changed around.

Also, here are some themes:

S+ Default


Visual Studio Dark


Visual Studio Light

thanks 1 user thanked Rob for this useful post.
randomConstant on 2/18/2022(UTC)
randomConstant  
#15 Posted : Friday, February 18, 2022 9:23:47 AM(UTC)
randomConstant

Rank: Advanced Member

Reputation:

Groups: Translators, Approved
Joined: 7/17/2021(UTC)
Posts: 135

Thanks: 35 times
Was thanked: 18 time(s) in 15 post(s)
Thanks Rob Laugh
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.