From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pneumatic-tube.sgi.com ([204.94.214.22]) by hawkwind.utcs.toronto.edu with SMTP id <25475>; Tue, 25 Apr 2000 04:08:39 -0400 Received: from cthulhu.engr.sgi.com (gate3-relay.engr.sgi.com [130.62.1.234]) by pneumatic-tube.sgi.com (980327.SGI.8.8.8-aspam/980310.SGI-aspam) via ESMTP id TAA02984 for <@external-mail-relay.sgi.com:sam-fans@hawkwind.utcs.toronto.edu>; Thu, 20 Apr 2000 19:13:03 -0700 (PDT) mail_from (pj@sam.engr.sgi.com) Received: from sam.engr.sgi.com (sam.engr.sgi.com [163.154.6.37]) by cthulhu.engr.sgi.com (980427.SGI.8.8.8/970903.SGI.AUTOCF) via ESMTP id TAA90061 for <@cthulhu.engr.sgi.com:sam-fans@hawkwind.utcs.toronto.edu>; Thu, 20 Apr 2000 19:08:56 -0700 (PDT) mail_from (pj@sam.engr.sgi.com) Received: (from pj@localhost) by sam.engr.sgi.com (980427.SGI.8.8.8/970903.SGI.AUTOCF) id TAA48323 for sam-fans@hawkwind.utcs.toronto.edu; Thu, 20 Apr 2000 19:08:30 -0700 (PDT) Date: Thu, 20 Apr 2000 22:08:30 -0400 From: pj@sam.engr.sgi.com (Paul Jackson) Message-Id: <200004210208.TAA48323@sam.engr.sgi.com> To: sam-fans@hawkwind.utcs.toronto.edu Subject: Samx - one more time ... I continue to work in my spare time (slowly) adding features to sam+samx. I worry that I might be "splintering" sam - creating a fork of development off the main stream. But so far as I can tell, no one else is touching the code. I'd like to openly consider desires and directions suggested by others. But so far as I can tell, no one else cares. If anyone is interested, or worried, let me know. Meanwhile, I'm having fun adding some sugar to a really fine editor. -- My most recent completed change is: This patch adds two Samkeys to push and pop the current Sam window, so that Samkeys macros can safely restore the current window after intentionally switching to another. This way, Samkey macros don't have to assume that they are only invoked in the work window, say. I have also gotten my patches working cleanly on Linux, in addition to Irix, where I started. I am seeking to make this work available on SGI's Open Source Server, http://oss.sgi.com - perhaps within the next month or two, at the leisurely pace this is proceeding. If anyone wants it by other means or sooner, let me know. Or if Bengt or anyone objects to this, let me know. Later on, if there is interest, and if I get to it, I might also include this on SGI's freeware, so that it is accessible to our Irix users as well (oss.sgi.com is focused on Linux users). -- My current, biased entirely to my idiosyncracies, "todo" list is: 1) Add KD_pushwin/KD_popwin so can write Samkeys macros that don't assume starting in work window, but can always return to whatever was the starting window. [Done - April 17, 2000] 2) KD_markline that extends dot to full lines, and that always extends right end of dot at least one char. Hence repeated invocations cause dot to grow forward by another line. 3) KD_reverselook - search upward for dot 4) debug loss of samterm/sam sync. 5) package sam+samx onto http://oss.sgi.com reasonably. 6) add samd, samb to package (for situation where you want to control foreground vs separate window display: samd invokes "sam -d", for when invoking from other tools that expect an editor to not fork; samb goes background if DISPLAY is set, else foreground, for when invoking from other tools that should behave differently depending on whether coming from the X11 server (gfx head) or remotely (rsh/ssh/telnet/...). [samb, samd coded and working on March 27, 2000. Need to package.] 7) Finish the above samkeys_parse stuff, and add Makefile that will install sam*_* scripts as part of install, fixing #!...perl... header along the way. [Done - April 14, 2000] 8) Need updated samparse_keys, and add Makefile configure stuff to handle samx as part of sam-9libs. [Done April 13, 2000] 9) Package as rpm (source and Linux binary) with patches called out. 10) Adapt configure/Makefile.in so that it picks up X headers and libraries on Linux from /usr/include/X11 (or where ever X11 headers normally go) and from /usr/X11R6/lib (in addition to /usr/lib for other libraries). 11) Brief like Home & End key KD_BriefHome, KD_BriefEnd support (press Home 1, 2 or 3 times to go to beginning of line, page or file). 12) Do something about undo working off screen, and not undoing pure motion. As it works now, I find it surprising that doing (a) a change, (b) another change, then (c) large motion, followed by an undo appears to do nothing (but undoes (b)), and if the undo is repeated, again appears to do nothing (but undoes (a)). Either motion should be considered an undoable event, or undo should force some part of what it changes on screen, or ... 13) Redo sure would be nice, if I can learn sam well enough to implement it. For one, it would help ameliorate the botch that I get into with item (12), undoing more than I realize or can easily recall. 14) Just as with Python's Idle (at least until recent changes in the developers branch), it seems too easy to get the cursor off the command line in the sam window, and get confused as to what it means to press enter. I'd like a tighter control by sam of the sam window cursor, more like working at a shell prompt, or at least along the lines of what I hear tell has recently been done to Idle to improve its interface there. 15) More X11 like mouse behaviour, at least when on X11, would be nice. Though its not clear I have the skills to implement this. The middle mouse thing is a minor unpleasant complication. 16) The Rick Davis jot (aka zip, only on Irix) editor had several accessible buffers for what was most recently entered, removed, ..., making it easy to do things like entering the same text in multiple places - typing it once, and using the mouse and Insert key to place duplicates of it. I miss that. ======================================================================= I won't rest till it's the best ... Software Production Engineer Paul Jackson (pj@sgi.com; pj@usa.net) 3x1373 http://sam.engr.sgi.com/pj