national characterset

  • This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.
Sep 18, 2008
9
0
Germany
#1
Because i am a user from germany, i have a typical german problem:
The behaviour of the representation of national characters changed from Tcmd8 to Tcmd9:
Entering national characters (e.g. a with dots) on the command line in an "Echo" command works correct. Doing the same in a batch file, the characters are displayed incorrect. That was different and correct with TCMD8.
So i looked into the btm file:
echo äöüÄÖÜ ( these are aouAOU with dots )
echo %@char[228]
in hex:
6563686F20E4F6FCC4D6DC0D0A
6563686F202540636861725B3232385D
the second line echo's the (a with dots) correct to the screeen, while the first echo is incorrect.
What's wrong ??
 
#2
Jora wrote:
| Because i am a user from germany, i have a typical german problem:
| The behaviour of the representation of national characters changed
| from Tcmd8 to Tcmd9:
| Entering national characters (e.g. a with dots) on the command line
| in an "Echo" command works correct. Doing the same in a batch file,
| the characters are displayed incorrect. That was different and
| correct with TCMD8. So i looked into the btm file:
| echo äöüÄÖÜ ( these are aouAOU with dots )
| echo %@char[228]
| in hex:
| 6563686F20E4F6FCC4D6DC0D0A
| 6563686F202540636861725B3232385D
| the second line echo's the (a with dots) correct to the screeen,
| while the first echo is incorrect.
| What's wrong ??

There is a difference between using 4NT8, TCMD8 or TCC9 in its own window,
and using any of these command processors in a TCMD9 tab. Please specify
which environment you refer to (stand-alone command processor, or TCMD9
tab)?
--
Steve
 
Sep 18, 2008
9
0
Germany
#3
Jora wrote:
| Because i am a user from germany, i have a typical german problem:
| The behaviour of the representation of national characters changed
| from Tcmd8 to Tcmd9:
| Entering national characters (e.g. a with dots) on the command line
| in an "Echo" command works correct. Doing the same in a batch file,
| the characters are displayed incorrect. That was different and
| correct with TCMD8. So i looked into the btm file:
| echo äöüÄÖÜ ( these are aouAOU with dots )
| echo %@char[228]
| in hex:
| 6563686F20E4F6FCC4D6DC0D0A
| 6563686F202540636861725B3232385D
| the second line echo's the (a with dots) correct to the screeen,
| while the first echo is incorrect.
| What's wrong ??

There is a difference between using 4NT8, TCMD8 or TCC9 in its own window,
and using any of these command processors in a TCMD9 tab. Please specify
which environment you refer to (stand-alone command processor, or TCMD9
tab)?
--
Steve
Sorry, i forgot to mention:
I'm calling Tcmd9 from Win XP. From the TCC9 window prompt i call the btm file with the echo/screen or scrput statements. All get the problem from the btm and are ok, when you use the commands directly from the prompt.
I restored the TCMD8 environment and the btm worked well there.
Jora
 
May 30, 2008
122
1
#4
2008/9/19 Jora <>:

> Sorry, i forgot to mention:
> I'm calling Tcmd9 from Win XP. From the TCC9 window prompt i call the btm file with the echo/screen or scrput statements. All get the problem from the btm and are ok, when you use the commands directly from the prompt.
> I restored the TCMD8 environment and the btm worked well there.
It sounds like you're experiencing the difference between the GUI and
console character sets. Take Command 8 was a GUI application, which
used the Windows character set. Take Command 9 is a GUI application
which hosts a console application - and TCC is that console
application. So with v9, you'll find that you are using the console
character set.

Sorry that's a bit garbled - I'm in the UK, and this sort of thing
only hits me when I need the £ sign to talk about money :-) Hopefully,
it will help point you in the right direction.

Paul.
 
Sep 18, 2008
9
0
Germany
#5
2008/9/19 Jora <>:



It sounds like you're experiencing the difference between the GUI and
console character sets. Take Command 8 was a GUI application, which
used the Windows character set. Take Command 9 is a GUI application
which hosts a console application - and TCC is that console
application. So with v9, you'll find that you are using the console
character set.

Sorry that's a bit garbled - I'm in the UK, and this sort of thing
only hits me when I need the £ sign to talk about money :-) Hopefully,
it will help point you in the right direction.

Paul.
I think, you're understanding the problem, but it must be in a different area:
I did the following test on the TCC console window:
1. i entered 'echo %@char[228]'. the result was the echo of an
> a with dots<
2. i entered 'echo [ alt-228 ]'. The result is, that the command line is then 'echo >o with dots <' and the output ist the > o with dots <.
So the output of the function @char[n] gives a different output than entering the ascii-code manually. Maybe the @char is part of the tcmd9 and uses windows character set and the asciicode is going directly to tcc9.
How can that difference be solved ?
I just wanted to code a small 'application' like a menu with national characters and got bored by the display.
Jora
 

samintz

Scott Mintz
May 20, 2008
1,203
11
Solon, OH, USA
#6
Rex is the expert on Unicode vs ASCII and code pages and fonts and all
that gobbledegook. Someone pointed out in this thread that there is a
difference between a pure console session and one running in the TCMD GUI.
GUI fonts are different than console fonts. Even if you select the same
font for both, they don't always render the same.

According to the help docs for @CHAR:
Not all characters are printable. High ASCII characters (128-255) and
Unicode characters may vary depending on the font used.

The Alt-### mechanism creates ASCII chars, not Unicode. The a-umlaut
character is decimal 132 in the old IBM OEM character set. 228 is capital
sigma. Windows has a hand in translating some of those characters as
well.

-Scott

Jora <> wrote on 09/19/2008 10:18:14 AM:


> I think, you're understanding the problem, but it must be in a different
area:

> I did the following test on the TCC console window:
> 1. i entered 'echo %@char[228]'. the result was the echo of an
> > a with dots<
> 2. i entered 'echo [ alt-228 ]'. The result is, that the command
> line is then 'echo >o with dots <' and the output ist the > o with dots
<.

> So the output of the function @char[n] gives a different output than
> entering the ascii-code manually. Maybe the @char is part of the
> tcmd9 and uses windows character set and the asciicode is going
> directly to tcc9.
> How can that difference be solved ?
> I just wanted to code a small 'application' like a menu with
> national characters and got bored by the display.
> Jora
>
>
 

Charles Dye

Super Moderator
Staff member
May 20, 2008
3,384
39
Albuquerque, NM
prospero.unm.edu
#7
I think, you're understanding the problem, but it must be in a different area:
I did the following test on the TCC console window:
1. i entered 'echo %@char[228]'. the result was the echo of an
> a with dots<
2. i entered 'echo [ alt-228 ]'. The result is, that the command line is then 'echo >o with dots <' and the output ist the > o with dots <.
So the output of the function @char[n] gives a different output than entering the ascii-code manually. Maybe the @char is part of the tcmd9 and uses windows character set and the asciicode is going directly to tcc9.
How can that difference be solved ?
Try Alt-0228 instead of Alt-228.