Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!udel!mmdf From: kosma%stc-sun@stc.lockheed.com (Monty Kosma) Newsgroups: comp.sys.amiga Subject: Amiga editor programming advice Message-ID: <16407@snow-white.udel.EDU> Date: 10 Apr 90 19:52:49 GMT Sender: mmdf@udel.EDU Lines: 69 From: Tim Friest - Programmer/Analyst Date: 9 Apr 90 21:30:58 GMT >From: danbabcock@eklektik.uucp > >Dan Barrett wrote (heavily edited): > >> I am porting an editor to the Amiga... >> Should I use the console device...what kind of window, etc.? >> Any tips? Thanks! > >If you want a slow, frustrating editor - like most editors on the Amiga - >then open a window and do your IO via the console device. If, however, you >want an editor that will make people shout "WOW!", here's what to do: > >Open a custom, one-bitplane screen. Do not use the operating system for >text output. Do not use the blitter. Instead, write a very efficient >character output routine (in machine code, naturally) that performs eight >moves per character. > >For scrolling, use the copper, not the blitter or the CPU. By making >clever use of the copper, it's possible to scroll very efficiently. >... >I have a few user interface suggestions too: utilitize the numeric >keypad as in the IBM-style arrangement of Home, PgUp, PgDown, etc. UGH!!! My first thought when I read this was it was a joke. PLEASE!!!! Don't listen to this. My Paraphrase: Do everything wrong so it will break on the next version of the operating system, not have any simularity to other Amiga software, and not work nicely in multitasking. That will make your users happy. I never did much like the IBM keypad... I personally find Emacs that comes with the system adaquate... It is not blindingly fast, but it has other strong points... I am more interested in features than having the text appear instantaniously instead of almost instantaniously.... >it would be EXTREMELY nice if the Help key actually brought help, and >the Escape key actually escaped! This is good (definately for the help, indifferent to escape). >One last suggestion: do not implement >infinitely long lines; instead, simply wrap at 80 columns (at least when >the user is entering text). > Why not? Allowing a wrap at 80 is fine, forcing someone to wrap at 80 all the time is a good way to make me never use your editor. >-- Dan Babcock Tim Friest here's my $.02...one of the most important features I find is the ability to make any key do anything I want. Let each key run a function, the default for most being a "self-insert" like gnuemacs, but let the user change these definitions as much as he wants. Also, giving the user the ability to define key bindings corresponding to the ctrl, left-alt, right-alt, left-amiga, and right-amiga (and caps lock if you can do it!) is essential. It would be REALLY nice if the left/right versions of these keys could be controlled independently. monty