|
From: | Juergen Sauermann |
Subject: | Re: [Bug-apl] MacAplAlt.keylayout |
Date: | Fri, 18 Sep 2015 12:12:09 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 |
Hi Peter, character input is done in several places, but always by functions called getc() or fgetc(): Command.cc: const int cc = fgetc(layout); Command.cc: const int cc = fgetc(pipe); Command.cc: const int cc = fgetc(in); IO_Files.cc: const int cc = fgetc(input->file); LineInput.cc:const int b0 = fgetc(stdin); LineInput.cc: const UTF8 subc = fgetc(stdin); LineInput.cc: const int bs = fgetc(stdin); Quad_SVx.cc: for (int cc; (cc = getc(fp)) != EOF;) CERR << (char)cc; Svar_DB.cc: for (int cc; (cc = getc(fp)) != EOF;) UCS_string.cc: const Unicode uni = UTF8_string::getc(in); UTF8_string.cc:UTF8_string::getc(istream & in) I believe the one you are interested in are the ones in LineInput.cc. After an entire input line was entered by the user, it is passed pack to the caller of get_line() (again, several places where this happens, and get_line() is defined in several classes). Parsing of the terminal input is dependent on the mode (immediate execution, ⎕-input, etc.) and happens after get_line() has returned. Keyboard mapping happens outside GNU APL (before the getc() call returns). /// Jürgen On 09/17/2015 01:33 AM, Peter Teeson
wrote:
|
[Prev in Thread] | Current Thread | [Next in Thread] |