Re[2]: [fpc-pascal] Re: Ido not understand UTF8 in Windows
Hello FPC-Pascal, Friday, February 19, 2010, 3:22:15 AM, you wrote: LFDAM Ok, LFDAM The steps are : LFDAM 1) Change the Font Type at Lucida Console Font : LFDAM http://www.conoce3000.com/fig01.jpg LFDAM 2) Compile the program with fpc 2.4. : LFDAM 3) change to UTF8, with chcp 65001 command LFDAM 4) run the program LFDAM Step 01 to 04 : http://www.conoce3000.com/fig02.jpg LFDAM The source code : http://www.conoce3000.com/Prueba005.pp LFDAM The error ocurred only when use Lucida console Font. The problem is that by default in Windows stdout is opened in 7 bits mode (text), this means that writeln when emits some information in UTF8 with any char 127 will enter in some kind of error reported from rtl or Windows kernel. I do not know how to inform the fpc to reopen the stdout handle in binary mode, but you can hack it by (at least for tests): - uses classes,windows; var s: string; OutputStream: TStream; Begin Writeln('code page UTF8 - 65001 en Windows'); OutputStream := THandleStream.Create(GetStdHandle(STD_OUTPUT_HANDLE)); s:='camión'; OutputStream.write(s[1],Length(s)); OutputStream.free; End. - -- Best regards, JoshyFun ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Thread IDs
I found some inconsistencies a couple of months ago, but never got to creating a bug report: http://www.mail-archive.com/fpc-pascal@lists.freepascal.org/msg17337.html lists.freepascal.org seems down, so I found this link. VIncent ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal Bug report created. http://bugs.freepascal.org/view.php?id=15821 ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: Re[2]: [fpc-pascal] Re: Ido not understand UTF8 in Windows
On 19 Feb 10, at 17:27, JoshyFun wrote: Friday, February 19, 2010, 3:22:15 AM, you wrote: LFDAM Ok, LFDAM The steps are : LFDAM 1) Change the Font Type at Lucida Console Font : LFDAM http://www.conoce3000.com/fig01.jpg LFDAM 2) Compile the program with fpc 2.4. : LFDAM 3) change to UTF8, with chcp 65001 command LFDAM 4) run the program LFDAM Step 01 to 04 : http://www.conoce3000.com/fig02.jpg LFDAM The source code : http://www.conoce3000.com/Prueba005.pp LFDAM The error ocurred only when use Lucida console Font. The problem is that by default in Windows stdout is opened in 7 bits mode (text), this means that writeln when emits some information in UTF8 with any char 127 will enter in some kind of error reported from rtl or Windows kernel. No, this can't work that way, otherwise output of any accented character in one of the Windows codepages would result in the same error. Tomas ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re[4]: [fpc-pascal] Re: Ido not understand UTF8 in Windows
Hello Tomas, Friday, February 19, 2010, 11:55:39 PM, you wrote: TH No, this can't work that way, otherwise output of any accented TH character in one of the Windows codepages would result in the same TH error. Tested the wrong return of stdout: code page UTF8 - 65001 en Windows Length of string: 7 camión - Returned written: 6 Source code: - uses classes,windows; var s: ansistring; OutputStream: TStream; Begin Writeln('code page UTF8 - 65001 en Windows'); OutputStream := THandleStream.Create(GetStdHandle(STD_OUTPUT_HANDLE)); s:='cami'+#$C3+#$B3+'n'; //camión writeln('Length of string: ',Length(s)); writeln(' - Returned written: ',OutputStream.write(s[1],Length(s))); OutputStream.free; End. -- Best regards, JoshyFun ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal