BasicColors v1 fixes a bug?

31 views
Skip to first unread message

Carlo Hogeveen

unread,
Nov 23, 2025, 7:43:30 PM (14 days ago) Nov 23
to sem...@googlegroups.com

Sammy,

Is this intentional?

I finally investigated an itch: Lately TSE's green felt too green.
Upon investigation almost all colors turned out to be "off".
Testing shows that TSE v4.50.11 and older are not affected.

https://ecarlo.nl/tse/ToolsAndExtensions.html#BasicColors

This tool & extension can diagnose and repair the perceived problem,
that TSE's colors are no longer its old basic colors as documented
in TSE's Help topic for GetColorTableValue().

If you execute this macro without only loading it first,
then it will report any deviations from these documented basic colors.
It will not report colors that are still the basic ones.

If you only load this macro, then it will set TSE's colors back to their
basic values until TSE is restarted.

Autoloading the macro will always give TSE its old basic colors back.

Carlo



S.E. Mitchell

unread,
Nov 25, 2025, 9:47:11 AM (12 days ago) Nov 25
to sem...@googlegroups.com
Guilty as charged. I switched to the mIRC color scheme, which I feel
provides a little better contrast between colors.
mIRC definition is:
SetColorTableValue(_FOREGROUND_,_BLACK_ , rgb(0, 0, 0 ))
SetColorTableValue(_FOREGROUND_,_BLUE_ , rgb(0, 0, 127 ))
SetColorTableValue(_FOREGROUND_,_GREEN_ , rgb(0, 147, 0 ))
SetColorTableValue(_FOREGROUND_,_CYAN_ , rgb(0, 147, 147 ))
SetColorTableValue(_FOREGROUND_,_RED_ , rgb(127, 0, 0 ))
SetColorTableValue(_FOREGROUND_,_MAGENTA_ , rgb(156, 0, 156 ))
SetColorTableValue(_FOREGROUND_,_BROWN_ , rgb(252, 127, 0 ))
SetColorTableValue(_FOREGROUND_,_LIGHT_GRAY_ , rgb(210, 210, 210))
SetColorTableValue(_FOREGROUND_,_DARK_GRAY_ , rgb(127, 127, 127))
SetColorTableValue(_FOREGROUND_,_LIGHT_BLUE_ , rgb(0, 0, 252 ))
SetColorTableValue(_FOREGROUND_,_LIGHT_GREEN_, rgb(0, 252, 0 ))
SetColorTableValue(_FOREGROUND_,_LIGHT_CYAN_ , rgb(0, 255, 255 ))
SetColorTableValue(_FOREGROUND_,_LIGHT_RED_ , rgb(255, 0, 0 ))
SetColorTableValue(_FOREGROUND_,_LIGHT_MAG_ , rgb(255, 0, 255 ))
SetColorTableValue(_FOREGROUND_,_YELLOW_ , rgb(255, 255, 0 ))
SetColorTableValue(_FOREGROUND_,_WHITE_ , rgb(255, 255, 255))

You can see it contrasted with several others at:
https://en.wikipedia.org/wiki/ANSI_escape_code topic: Colors
From the same chart, TSE formerly used the Windows Console color scheme.

I am still searching for that "best" color palette! Will always
consider suggestions.
> --
>
> ---
> You received this message because you are subscribed to the Google Groups "SemWare TSE Pro text editor" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to semware+u...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/semware/000a01dc5cdb%24584e9350%2408ebb9f0%24%40ecarlo.nl.

Claus Futtrup

unread,
Nov 25, 2025, 1:50:40 PM (12 days ago) Nov 25
to sem...@googlegroups.com
Hi Sammy

>I am still searching for that "best" color palette! Will always consider suggestions.

Thank you. :-)

With kind regards,
Claus

zhong zhao

unread,
Nov 25, 2025, 11:09:56 PM (11 days ago) Nov 25
to SemWare TSE Pro text editor

Try zhao4zhong1 palette
(^_^)

Knud van Eeden

unread,
Nov 26, 2025, 6:06:14 AM (11 days ago) Nov 26
to sem...@googlegroups.com
> Try zhao4zhong1 palette

Is there a latest simple TSE program available which one can run to set these colors?

Thanks
with friendly greetings
Knud van Eeden


Claus Futtrup

unread,
Nov 26, 2025, 1:22:58 PM (11 days ago) Nov 26
to sem...@googlegroups.com
Hi Zhong Zhao

I found that the ZhongZhao palette is included in a default installation of TSE. I didn't find zhao4zhong1. I am using TSE Pro 4.50.6 -- is it too old?
Is ZhongZhao the right one? It seems generally darker. Could be OK. I'd like to try.
For TSE to remember (next time), I guess the setting must be stored, but selecting Options -> Save Current Settings -> YES ... didn't work for me (doesn't save color palette config). I guess IConfig.MAC doesn't configure the color palette.
Saving Configuration to text (I chose 'hello') creates a new file with the configuration, but I'm not sure this is helpful in making TSE start with these settings. The generated file doesn't contain the word palette anywhere.
Reading the help -> Configuring -> doesn't show how to store a chosen Color palette (as far as I can see).
Looking in the TSE directory and locating colors.ini ... Not sure I could type a color palette into this file either. The word palette doesn't exist in this file either.

... Sorry for failing to know what to do and failing in reading/finding the help I need in the help file. I tried.

With kind regards,
Claus

Knud van Eeden

unread,
Nov 26, 2025, 2:00:39 PM (11 days ago) Nov 26
to sem...@googlegroups.com
This seems to be an issue: 

1. The choosen palette is not saved and persistent between restarts of TSE.
Tested with 4.50.13 clean.

2. To reproduce: 
TSE menu 'Full Configuration' > 'Display/Color options' > 'Set Colors' > 'Select Color Palettes'  > scroll e.g. down to 'ZhongZhao' and select it. It becomes active. 
Now e.g. 'write the settings to file'. 
I did a diff between old and new settings files but no difference.
Expected that it would store that chosen palette somehow.

===

2. Besides that there is also no 'incremental search' in that (pretty long) Palette list. Expected that it would do incremental search.

with friendly greetings
Knud van Eeden

Carlo Hogeveen

unread,
Nov 26, 2025, 2:09:30 PM (11 days ago) Nov 26
to sem...@googlegroups.com

Claus,

I can answer your second question.
It is not you. This is an area with crummy support.

First there is TSE's "Select Color Palettes" menu option, that only works if your font size is small enough that an above average amount of characters fit in TSE's window.
Second, neither this menu nor TSE's "Save current Settings" menu option save the selected palette.
Third, while such a palette is selected, you can execute the Palette macro and save the current palette with <Ctrl S>.

The Palette macro can be downloaded here:
https://ecarlo.nl/tse/ToolsAndExtensions.html#Palette
If installed and autoloaded it will reload your saved palette at the start of every TSE session.

Carlo



Knud van Eeden

unread,
Nov 26, 2025, 2:30:21 PM (11 days ago) Nov 26
to sem...@googlegroups.com
Regarding 2. regarding SpeedSearch in the list:

In colors.s and or setpalette.s the List() was used, instead it should be assume LList() instead:

To demonstrate it, e.g.

PROC Main()
 INTEGER bufferI = 0
 PushPosition() // 1
 bufferI = CreateTempBuffer()
 PopPosition() // 1
 GotoBufferId( bufferI )
 AddLine( "a" )
 AddLine( "b" )
 AddLine( "c" )
 LList( "select palette", 10, 10, _ENABLE_SEARCH_ )
 AbandonFile( bufferI )
END

with friendly greetings
Knud van Eeden

knud van eeden

unread,
Nov 26, 2025, 3:40:51 PM (11 days ago) Nov 26
to SemWare TSE Pro text editor
FYI:

On the left the default palette, on the right the current 'ZhaoZhong" palette.

Some "ZhaoZhong" palette colors are thus hardly readable.

Tested: TSE version 4.50.13 clean

Inline image


with friendly greetings
Knud van Eeden

zhong zhao

unread,
Nov 27, 2025, 8:05:48 PM (10 days ago) Nov 27
to SemWare TSE Pro text editor
Palette Zhong Zhao and zhao4zhong1 is same I mean.
palette5.png

zhong zhao

unread,
Nov 27, 2025, 8:19:41 PM (10 days ago) Nov 27
to SemWare TSE Pro text editor
Your Zhong Zhao palette do not active menu colors setting and SetColorTableValues. See mine below:
tmp2.png

zhong zhao

unread,
Nov 27, 2025, 8:27:29 PM (10 days ago) Nov 27
to SemWare TSE Pro text editor
SetColorTableValues in tsestart.s for palette zhong zhao(tsestart.mac in folder of g32.exe):
    SetColorTableValue(_BACKGROUND_, 0,0x000000 )    // black          0x000000
    SetColorTableValue(_BACKGROUND_, 1,0x000080 )    // blue           0x000080
    SetColorTableValue(_BACKGROUND_, 2,0x548c54 )    // green          0x008000
    SetColorTableValue(_BACKGROUND_, 3,0x548c87 )    // cyan           0x008080
    SetColorTableValue(_BACKGROUND_, 4,0x800000 )    // red            0x800000
    SetColorTableValue(_BACKGROUND_, 5,0x800080 )    // magenta        0x800080
    SetColorTableValue(_BACKGROUND_, 6,0x4c8065 )    // brown          0x808000
    SetColorTableValue(_BACKGROUND_, 7,0xa0a0a0 )    // light gray     0xc0c0c0
    SetColorTableValue(_BACKGROUND_, 8,0x808080 )    // dark gray      0x808080
    SetColorTableValue(_BACKGROUND_, 9,0x0000ff )    // light blue     0x0000ff
    SetColorTableValue(_BACKGROUND_,10,0x00ff00 )    // light green    0x00ff00
    SetColorTableValue(_BACKGROUND_,11,0x00ffff )    // light cyan     0x00ffff
    SetColorTableValue(_BACKGROUND_,12,0xff0000 )    // light red      0xff0000
    SetColorTableValue(_BACKGROUND_,13,0xff00ff )    // light magenta  0xff00ff
    SetColorTableValue(_BACKGROUND_,14,0xffff00 )    // yellow         0xffff00
    SetColorTableValue(_BACKGROUND_,15,0xffffff )    // white          0xffffff

    SetColorTableValue(_FOREGROUND_, 0,0x000000 )    // black          0x000000
    SetColorTableValue(_FOREGROUND_, 1,0x000080 )    // blue           0x000080
    SetColorTableValue(_FOREGROUND_, 2,0x004000 )    // green          0x008000
    SetColorTableValue(_FOREGROUND_, 3,0x004040 )    // cyan           0x008080
    SetColorTableValue(_FOREGROUND_, 4,0x800000 )    // red            0x800000
    SetColorTableValue(_FOREGROUND_, 5,0x800080 )    // magenta        0x800080
    SetColorTableValue(_FOREGROUND_, 6,0x804000 )    // brown          0x808000
    SetColorTableValue(_FOREGROUND_, 7,0xfeddbc )    // light gray     0xc0c0c0
    SetColorTableValue(_FOREGROUND_, 8,0x404040 )    // dark gray      0x808080
    SetColorTableValue(_FOREGROUND_, 9,0x0000ff )    // light blue     0x0000ff
    SetColorTableValue(_FOREGROUND_,10,0x86fc86 )    // light green    0x00ff00
    SetColorTableValue(_FOREGROUND_,11,0x9ffafa )    // light cyan     0x00ffff
    SetColorTableValue(_FOREGROUND_,12,0xffbfbf )    // light red      0xff0000
    SetColorTableValue(_FOREGROUND_,13,0xfecbfe )    // light magenta  0xff00ff
    SetColorTableValue(_FOREGROUND_,14,0xffffa0 )    // yellow         0xffff00
    SetColorTableValue(_FOREGROUND_,15,0xffffff )    // white          0xffffff

And three  Attributes Colors in ui\tse.cfg:

//...
// Attributes

CurrWinBorderAttr       = Color(Bright White on Blue)
OtherWinBorderAttr      = Color(Bright White on Cyan)
MenuTextAttr            = Color(Bright White on Cyan)
MenuTextLtrAttr         = Color(Bright Cyan on Cyan)
MenuGrayAttr            = Color(Bright Black on Cyan)
MenuSelectGrayAttr      = Color(Bright Black on Blue)
MenuBorderAttr          = Color(Bright White on Cyan)
MenuSelectAttr          = Color(Bright White on Blue)
MenuSelectLtrAttr       = Color(Bright Cyan on Blue)
BlockAttr               = Color(Blue on Green)
CursorInBlockAttr       = Color(Green on Yellow)
CursorAttr              = Color(Blue on Cyan)
HiLiteAttr              = Color(White on Red)
TextAttr                = Color(Blue on White)
EOFMarkerAttr           = Color(Bright Yellow on White)
MsgAttr                 = Color(Bright White on Cyan)
StatusLineAttr          = Color(Bright White on Blue)
LineNumbersAttr         = Color(Black on White)

// Help Attributes

HelpInfoAttr            = Color(Bright Green on Blue)
HelpLinkAttr            = Color(Bright Yellow on Blue)
HelpSelectAttr          = Color(Blue on White)
HelpBoldAttr            = Color(Bright White on Blue)
HelpItalicsAttr         = Color(Bright Magenta on Blue)
HelpTextAttr            = Color(White on Blue)

// SyntaxHilite Attributes

IncompleteQuoteAttr     = Color(Bright White on White)
NumberAttr              = Color(Red on White)
Directive1Attr          = Color(Cyan on White)
Directive2Attr          = Color(White on White)
Directive3Attr          = Color(Bright Red on White)
MultiLnDlmt1Attr        = Color(Bright Black on White)
MultiLnDlmt2Attr        = Color(Bright Yellow on White)
MultiLnDlmt3Attr        = Color(Bright White on White)
SingleLnDlmt1Attr       = Color(Bright Black on White)
SingleLnDlmt2Attr       = Color(Bright Yellow on White)
SingleLnDlmt3Attr       = Color(Bright White on White)
Quote1Attr              = Color(Bright Blue on White)
Quote2Attr              = Color(Bright Blue on White)
Quote3Attr              = Color(Bright Blue on White)
ToEOL1Attr              = Color(Bright Black on White)
ToEOL2Attr              = Color(Bright Yellow on White)
ToEOL3Attr              = Color(Bright White on White)
KeyWords1Attr           = Color(Black on White)
KeyWords2Attr           = Color(Magenta on White)
KeyWords3Attr           = Color(Bright Cyan on White)
KeyWords4Attr           = Color(White on White)
KeyWords5Attr           = Color(Bright Green on White)
KeyWords6Attr           = Color(Bright White on White)
KeyWords7Attr           = Color(Bright Red on White)
KeyWords8Attr           = Color(Bright Magenta on White)
KeyWords9Attr           = Color(Yellow on White)

//...
Reply all
Reply to author
Forward
0 new messages