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.
next prev 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