www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Incorrect display in Cyrillic Windows

reply "Dennis Ritchie" <dennis.ritchie mail.ru> writes:
Hi.
It's normal for Windows?

http://i.imgur.com/TEx4H3k.png

import std.uni;
import std.stdio;

void main() {
	string s;
	foreach(ch; CodepointSet('А', 'Я' + 1, 'а', 'я' + 1).byCodepoint)
		s ~= ch;
	writeln(s);
	writeln("s[0] = ", s[0]);
}
Mar 04 2015
next sibling parent "Kagamin" <spam here.lot> writes:
https://issues.dlang.org/show_bug.cgi?id=2742
Mar 04 2015
prev sibling parent reply "Martin Krejcirik" <mk-junk i-line.cz> writes:
On Wednesday, 4 March 2015 at 11:32:40 UTC, Dennis Ritchie wrote:
 Hi.
 It's normal for Windows?
You have to set your console encoding to UTF-8 first. You can do it by command "chcp 65001" or by calling Windows API function: extern(Windows) BOOL SetConsoleOutputCP( UINT ); SetConsoleOutputCP( 65001 ); Also change your font to Lucida Console.
Mar 04 2015
next sibling parent "Dennis Ritchie" <dennis.ritchie mail.ru> writes:
On Wednesday, 4 March 2015 at 12:14:01 UTC, Martin Krejcirik 
wrote:
 You have to set your console encoding to UTF-8 first.

 You can do it by command "chcp 65001" or by calling Windows API 
 function:

 extern(Windows) BOOL SetConsoleOutputCP( UINT );
 SetConsoleOutputCP( 65001 );

 Also change your font to Lucida Console.
Thanks.
Mar 04 2015
prev sibling parent "Paul Water" <p-ex ya.ru> writes:
On Wednesday, 4 March 2015 at 12:14:01 UTC, Martin Krejcirik 
wrote:
 On Wednesday, 4 March 2015 at 11:32:40 UTC, Dennis Ritchie 
 wrote:
 Hi.
 It's normal for Windows?
You have to set your console encoding to UTF-8 first. You can do it by command "chcp 65001" or by calling Windows API function: extern(Windows) BOOL SetConsoleOutputCP( UINT ); SetConsoleOutputCP( 65001 ); Also change your font to Lucida Console.
It works, thanks!
Apr 10 2015