comp.lang.ada
 help / color / mirror / Atom feed
From: "Robert I. Eachus" <rieachus@comcast.net>
Subject: Re: Latin_1 and portability
Date: Wed, 10 Dec 2003 22:40:46 -0500
Date: 2003-12-10T22:40:46-05:00	[thread overview]
Message-ID: <gcednamCzLqiekqi4p2dnA@comcast.com> (raw)
In-Reply-To: <344d0fee.0312100415.63724db9@posting.google.com>

Xavier Serrand wrote:

> Hello,
> 
> For return (or enter)
> 
> when using Text_Io.Get_Immediate (E);
> 
> on UNIX or Linux Suse Character'Pos (E) = 10
> on Windows 2000 Character'Pos (E) = 13
> 
> How can I manage to work properly ...
> Do i have to parametrize my application reading characters from a file
> ... and looking at the values recognized by the functions ... Is there
> anothers means ?
> 
> Thanks for Ada's Gurus who can help me a very little bit .....

This turns out not to be an Ada issue, but you still have to deal with 
it.  The Ada Reference Manual doesn't specify what indicates the end of 
a line.  This is because the choice of how lines are delimited is a 
property of the file type.  On Windows, .txt files use CR (13) as a line 
delimiter and on Unix LF (10) is used.  There are also formats that use 
CR followed by LF, or VT(11), and many formats use FF(12) as an end of 
line AND page mark.

If you are reading from a file, then you can let Text_IO handle the 
issue, even if the file format is one where the end of a line is 
represented implicitly with a character count.  (Not too common 
anymore.)  But you are trying to read from a user input device.  What do 
you get?  Whatever the user gives you, as mapped by the OS. ;-)  I would 
tend to test for all four:  E in Latin1.LF..Latin.CR.  That should deal 
with most existing operating systems.  The operating system maps the 
keys on the keyboard to ASCII or other characters.  In most operating 
systems, you can choose some other keyboard mapping that the standard. 
I actually have about six set up, but the two I use most are United 
States and International.  This allows me to type characters like 
o-diaresis, or e-acute.  It also lets me type Japanese, Chinese, and 
Korean, but you do not want to deal with that.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




  parent reply	other threads:[~2003-12-11  3:40 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-10 12:15 Latin_1 and portability Xavier Serrand
2003-12-10 13:45 ` Georg Bauhaus
2003-12-10 22:00   ` Xavier Serrand
2003-12-10 18:33 ` Jeffrey Carter
2003-12-10 21:34 ` Pascal Obry
2003-12-10 21:52   ` Ludovic Brenta
2003-12-11  3:40 ` Robert I. Eachus [this message]
2003-12-12 23:41   ` Larry Kilgallen
2003-12-13 14:48     ` Robert I. Eachus
  -- strict thread matches above, loose matches on Subject: below --
2003-12-10 13:16 amado.alves
2003-12-13  2:27 amado.alves
2003-12-13 13:09 ` Larry Kilgallen
2003-12-13 13:35 amado.alves
2003-12-13 14:54 ` Björn Persson
2003-12-13 22:17   ` Larry Kilgallen
2003-12-14  1:55     ` Björn Persson
2003-12-13 22:21 ` Larry Kilgallen
2003-12-13 15:24 amado.alves
2003-12-14  2:46 ` Björn Persson
2003-12-14  5:04   ` Jeff C,
2003-12-14  6:12     ` Nick Roberts
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox