9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: "Russ Cox" <rsc@swtch.com>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] acme
Date: Tue,  5 Jun 2007 11:00:37 -0400	[thread overview]
Message-ID: <20070605145703.36DA71E8C1C@holo.morphisms.net> (raw)
In-Reply-To: <ACCF003CBA3D09458207DB0CB86AD17D740304@XMAIL.asuch.cas.cz>

> I won't like to start a flame-war (possibly), however, I decided
> to make some comments on my favourite, and *BELOVED* UI, The
> Acme:

perhaps you could line-wrap your emails.

> Cut+Paste (or, mouse-2-3) on a tagline leaves the frame in a
> 'dirty' state: this bug has not been present in earlier (abou 2
> years ago, or so) versions of Acme.

can't reproduce this.  i remember fixing it long ago.

> Mouse-3 on highlighted path in a tagline doesn't move cursor to
> that frame in case it is visible, unlike when done in regular
> frame; strangely, it works when that frame is NOT visible, for
> both tagline, and regular frame.  And, it also works from tagline
> when the path is mouse-3-dragged, so definitely a bug.

can't reproduce this.

> Mouse-3 on filename opens the frame 'around a corner' if the
> current layout is so that frames are tightly stacked at the
> bottom (frame is quasi-maximized).  Popping up the frame may
> need clicking several times.

yes, this is annoying.  i'd like to fix this but only so much time.

> Scrolling the tagline using downarrow/uparrow does not work;
> scroling with dragging mouse-1 is too fast even on my 'primeval'
> S3 card.

the p9p acme just shows the entire tagline as multiple lines if
you type down-arrow, but there are window layout problems.
i should really track them down.  that might fix the "around a corner"
thing.

> 'Del' has no special position on the tagline, thus closing
> multiple frames sucks.  Could we have 'Del' on far left, preceding
> filepath???  Or , perhaps, e.g., mouse1+3, or Alt+mouse-1, or
> ...., over the frame 'handle' would do?  Are you strictly against
> combinations of keyboard with mouse??  I personally perceive it
> O.K., however, i'm not disabled.  Oberon UI, which, I think,
> initially inspired Acme, is much more exhaustive considering
> possible keyboard-mouse interactions (well, I mean classic Native
> Oberon UI, not the Gadgets/Bluebottle, which, IMHO, downgraded
> the UI to 'standard windozish' one)

if you want to do some repetitive task, write a program.
here's a little shell script i use called Clean.  you can execute
    Clean /sys/src/cmd/acme
and it will delete all the windows with that in their tags.

	#!/bin/rc

	rfork e

	if(~ $#* 0)
		pattern=.
	if not
		pattern=$1

	cd /mnt/acme
	for (i in [0-9]*){
		if(test -d $i){
			tag=`{cat $i/tag}
			tagline = $"tag
			file=$tag(1)

			# must match our pattern if given, must be a clean window,
			# and must not be an Errors window, mail, or win.

			if(! ~ $file */ *+Errors* */-* */mail/* && ! ~ $tagline *Put*
			&& echo $file | grep $pattern >/dev/null >[2]/dev/null)
				echo del >$i/ctl
		}
	}
	status=''

now that there is an edit command you can also do
Edit X./sys/src/cmd/acme.D or Edit Y/'/D

> A command that will switch fullpath/basename from the tagline
> might be useful for orientation (well, I can do 'Sort' often).

Sort is probably better than this.

> When many frames are open in a column, moving cursor to the
> frames 'behind the horizon' requires multiple mouse-3 clicks,
> until it eventually comes up.

same problem as above.

> There is some 'dead space' at the bottom of the Acme's window,
> where nothing is drawn, and nothing happens.  Bug??

no.  that space is not big enough to hold an entire line
of text, so it holds nothing.

> No way to kill a busy (non-responding) frame??

kill the underlying program that is not responding.  slay Mail | rc
for example.  or kill the hung file server that acme is talking to
for that window.

> No way to hide columns except the current one (==maximize frame
> | column horizontally).  We could easily use columns 'handle
> square' (violet one at the upper left corner) exactly in the way
> the frame's handle is used: mouse-3 == maximize, mouse-2 == show
> condensed columns, mouse-1 == increment column width.

i suppose we could.  i think most acme users just don't move
their columns very much.

> Maybe, double-click mouse-2 on 'Del' could close a dirty frame
> immediatelly, without asking (and w/o saving).

interesting.

> GRRRRRRR.....  : the dot is not persistent: if I have selected
> areas of text in different frames, returning to the frame and
> Snarf'ing does *NOT* pick up the relevant 'dot' (just the one
> last selected).....  this is *VERY* annoying, indeed.

can't reproduce this.  if you click on Snarf in a window's tag
then acme snarfs from that window.  if you click on Snarf in
a column's tag then acme snarfs from that column's active
window (the last one with a mouse or keyboard action).

> And, the frames should behave the same way, shouldn't they??  I
> spot different behavior of frames showing dirs from those showing
> files.  yes, and I don't even mention that the tagline is a very
> special frame of its own...

sure they behave differently.  one presents directory contents
so they're never going to be identical.  if you were more specific
about what you didn't like you might get a more useful response.

> Would welcome more keyboard actions, like line up/line down,
> jumping to starts of words, to line-beginning/end.  I appreciate
> very much moving left/right over characters, in case of hi-res
> screen (laptop), where exact mouse positioning is tedious.

shhh.  don't tell uriel.  ^A ^E for line-beginning/end.

> Personal remark: I miss very much something like a command window
> in 'Sam'...  tagline is both very restrictive, and redundant,
> IMHO.  Frame-specific commands could just remember the last-touched
> frame (or two, if a parameter is to be sent) to solve the problem
> of frame-owned taglines (Am I right??  Dunno...).

the bigger tags in the p9p acme solve this a different
way that seems to fit better.  if you had a separate ~~sam~~
window you couldn't make each command in it frame-specific
because the commands are just text -- there's no underlying
data structure sitting underneath.  you can always open a
new nameless window and fill it with Edit commands that
specifically name a window:

	Edit X/name.c/ ,s/foo/bar/g

or even just X-less commands

	,s/foo/bar/g

that you highlight and then 3-2 click Edit in the window
where you want to apply them.

russ



  parent reply	other threads:[~2007-06-05 15:00 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-05 11:28 cej
2007-06-05 11:39 ` Federico Benavento
2007-06-05 12:01   ` Gabriel Diaz
2007-06-05 12:11     ` erik quanstrom
2007-06-05 11:59 ` erik quanstrom
2007-06-05 14:42 ` [9fans] not acme Russ Cox
2007-06-05 15:00 ` Russ Cox [this message]
2007-06-05 15:09   ` [9fans] acme ron minnich
2007-06-06 12:12     ` cej
2007-06-05 17:55   ` lucio
2007-06-05 19:30     ` ron minnich
2007-06-05 18:00   ` lucio
2007-06-12 12:29     ` cej
2007-06-12  8:57       ` Russ Cox
2007-06-13  8:49         ` Richard Miller
2007-06-13  5:13           ` Russ Cox
2007-06-15  4:12             ` Russ Cox
2007-06-13 23:50           ` [9fans] usenix Charles Forsyth
2007-06-14  0:01             ` Uriel
2007-06-14  0:45               ` ron minnich
2007-06-14  8:04                 ` Francisco J Ballesteros
2007-06-14 18:08                   ` ron minnich
2007-06-14 20:56                     ` Francisco J Ballesteros
2007-06-14 21:18                     ` Latchesar Ionkov
2007-06-14 21:47                       ` john
2007-06-14 22:33                         ` ron minnich
2007-06-14 22:55                           ` john
2007-06-14  0:42             ` ron minnich
2007-06-14  1:18               ` Eric Van Hensbergen
2007-06-14  1:31                 ` ron minnich
  -- strict thread matches above, loose matches on Subject: below --
2010-11-27 12:39 [9fans] acme Kenji Arisawa
2010-11-27 18:12 ` ron minnich
2010-11-28 11:17   ` Kenji Arisawa
2004-01-10  7:01 [9fans] Sam's protocol description? Rob Pike
2004-01-10 15:46 ` [9fans] acme vdharani
2004-01-10 16:07   ` rob pike, esq.
2002-05-10  2:24 rob pike, esq.
2002-03-20  6:58 [9fans] Acme forsyth
2002-03-20  3:30 rob pike
2002-03-11  0:15 [9fans] samuel Geoff Collyer
2002-03-20  3:26 ` [9fans] Acme Tharaneedharan Vilwanathan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070605145703.36DA71E8C1C@holo.morphisms.net \
    --to=rsc@swtch.com \
    --cc=9fans@cse.psu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).