<div dir="ltr">Hi,<div><br></div><div>First, I want thank everyone for taking the time to answer!<div class="gmail_extra"><br><div class="gmail_quote">2013/7/9 Jonas Maebe <span dir="ltr"><<a href="mailto:jonas.maebe@elis.ugent.be" target="_blank">jonas.maebe@elis.ugent.be</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
On 09 Jul 2013, at 11:02, Noah Silva wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
1. What encoding "should" I be writing to the terminal?<br>
</blockquote>
<br></div>
The console code page. You can get it using the following function:<br>
  function GetConsoleOutputCP : UINT; stdcall; external 'kernel32' name 'GetConsoleOutputCP';<div class="im"><br></div></blockquote><div style>I will certainly check this out.   On the other hand, it seems that on a Japanese system, it has to either be some form of Unicode or SJIS.  (And it almost has to be SJIS since older windows versions didn't support Unicode!).</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
from experimenting<br>
with text files using the cat command in powershell, it seems that local<br>
("ANSI") encoding should be used.  This makes sense since older versions of<br>
windows only supported local encodings.<br>
</blockquote>
<br></div>
The ansi code page is (or at least can be) different, that's the the result of<br>
  function GetACP:UINT; stdcall; external 'kernel32' name 'GetACP';<div class="im"><br></div></blockquote><div><br></div><div style>Again I will check this today, but see above. </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2. Is there any reason why writing out data in the local encoding (with<br>
write statements, etc.) should get corrupted?  For example is some level of<br>
the RTL assuming something about the encoding? (I don't think so, but...)<br>
</blockquote>
<br></div>
Not in 2.6.x. In 2.7.x, every ansistring is tagged with a code page (the ansi code page by default) and the RTL will convert it to the console code page before writing it.</blockquote><div><br></div><div style>Hmm, so at any rate, I need to support two code paths:</div>
<div style>1. Convert it myself if on 2.6</div><div style>2. Don't convert it if on 2.7</div><div style><br></div><div style>I use UTF8String for everything - I know that it is still just an ANSIString on FPC - but is the codepage set to UTF8 automatically? </div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
3. Is there a way to set the output to UTF8 so I can just write out UTF8<br>
and be done with it?<br>
</blockquote>
<br></div>
I don't know.<br>
<br></blockquote><div style>There is a function to set the output codepage, which someone on this list told me before.  Unfortunately, it didn't work, and had bad side-effects (the output window flickers and gets very slow).</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Jonas<br></blockquote><div><br></div><div style>Thank you,</div><div style>    Noah Silva </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
______________________________<u></u>_________________<br>
fpc-pascal maillist  -  <a href="mailto:fpc-pascal@lists.freepascal.org" target="_blank">fpc-pascal@lists.freepascal.<u></u>org</a><br>
<a href="http://lists.freepascal.org/mailman/listinfo/fpc-pascal" target="_blank">http://lists.freepascal.org/<u></u>mailman/listinfo/fpc-pascal</a><br>
</blockquote></div><br></div></div></div>