Hans-Peter Diettrich wrote:
Mark Morgan Lloyd schrieb:
Over the last few weeks I've hacked together a partial APL implementation, for use as a way of specifying lists of numbers etc. when passing commands between computers implementing a large distributed system. For test purposes I've compiled it on Linux as a command-line app and am using FPC's keyboard unit to implement a layout similar to http://www.aplusdev.org/keyboard.html, with Alt as meta and Esc to go into composition mode (use cursor keys to move between the glyphs on each key). Internal storage is in widestrings, external files etc. UTF-8.

I now want to move the parser and evaluator into an LCL-based app, which will ideally allow at least partial editing of APL-style expressions rather than reading everything from configuration files.

What is the situation with LCL editing components, Synedit, Cmdline and so on? Is there a single underlying keyboard component, or at least a uniform interface?

In short, where do I start? :-)

On Windows you'd write an IME (Input Method Editor), that allows to compose strings from keystrokes. Don't beat me - I only know that something like that exists ;-)

The display should not be a problem. AFAIR is the APL charset part of Unicode, so that you can use SynEdit. Write an APL syntax highlighter for it, if you like.

No problem at all. My only niggle- and this is a minor one- is that some of the odder characters I'd have liked to have been able to use (in particular, German blackletter) are outside the 16-bit Unicode range.

Commandlines? Perhaps using the IME, provided that you can tell the console to use it ;-)

I'll start digging in and see where I get to, but any suggestions- particularly relating to Linux- will be welcome.

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to