Guide to using Acme effectively?

  • Follow


Hello everyone,

I am taking the Acme workflow for a spin. I am coming from Emacs and Vi. I  
have read the manual and the original paper discussing the motivations  
behind its design. I am familiar with mouse based editing in the NEdit  
style to ane extent that I can use it properly with NEdit, but I am having  
trouble understanding just how the workflows of Acme work with real world  
type questions. Is there anything out there that would help me connect  
some of the tasks I often wish to do with the efficient Acme approach? I'm  
missing small things, like how to select and move all the text in one  
window to another in a fast manner, but I'm also missing big things like  
how to quickly navigate through to specific parts of a file and how to  
reduce redundancy of typing and movement.

Does anyone have any suggestions?

	Aaron W. Hsu

-- 
Of all tyrannies, a tyranny sincerely exercised for the good of its  
victims may be the most oppressive. -- C. S. Lewis
0
Reply arcfide (659) 7/1/2009 8:56:58 AM

> some of the tasks I often wish to do with the efficient Acme approach? I'm
> missing small things, like how to select and move all the text in one
> window to another in a fast manner, 

there are a couple of options "Edit ," will select all the text in
a window.  but "|cat $file" will replace the dot with the contents
of $file.  i'm not sure that this is either non-obvious or helpful.
that's not something i do with acme.

> but I'm also missing big things like
> how to quickly navigate through to specific parts of a file and how to
> reduce redundancy of typing and movement.

i'm not sure what kind of text file you're talking about.
i generally put unique text for each of the sections i'm
currently intereted in in the tag.

- erik

0
Reply quanstro (3877) 7/1/2009 2:36:14 PM


> [...] but I'm also missing big things like
> how to quickly navigate through to specific parts of a file and how to
> reduce redundancy of typing and movement.
> 

Here's how I navigate through my various files in acme:

The old standard, the arrow keys.  Type ":100" in the tag and
left-click to go to line 100.  Mid-click and hold on the scrollbar to
scroll efficiently.  Type text in the tag and left-click to search.

If you're going to complain about redundancy of movement regarding the
hand to the keyboard, acme might not be for you.  I think Tog's
conclusions (the single set of studies put forth whenever this thing
comes up) are poorly made and that there is a lot to be said for
efficient keyboard use, but acme really works quite nicely for me--I
don't feel that I'm wasting time mousing around, for the most part.

Just give it a shot.  There's no magical trick to using acme quickly
and effectively; just like any editor, you'll have to get used to it
and figure out how you want to use it.



John


0
Reply john2410 (232) 7/1/2009 4:03:28 PM

This page collects some tips for working more efficiently with an
acme-like program.

http://www.cse.yorku.ca/~oz/wily/idioms.html

wily is a unix port of just acme which rarely gets updated.  It has a
few differences, mostly in the direction of being more unixy. I used
it for 5 years before switching wholly over to plan9port.  Probably
its greatest advantage to me now is that it's small and compiles easy
to any platform I've tried: Linux, Solaris, even Cygwin.  So I tend to
load it on machines I will be on only briefly, to avoid having to use
vi or emacs.

Jason Catena

0
Reply jason.catena (80) 7/1/2009 8:17:04 PM

2009/7/1 Aaron W. Hsu <arcfide@sacrideo.us>:
> how to
> quickly navigate through to specific parts of a file and how to reduce
> redundancy of typing and movement.
>

Maybe I'm alone doing this, but I tend to avoid movement inside a file
abusing of the Zerox command. I keep the function definitions at the
top of the file and to go to a function I Zerox that window and then
go to there with the right button. I also Zerox windows to do small
tasks, like fixing a typo, for example.
To reduce typing I use mouse chords (and Snarf in the tag, when more
convenient), some Edit commands and a bit too much |awk.
I think a guide of using Acme effectively would be different for every
user, just give it some time, and you will create your own habits.

hth,


-- 
- yiyus || JGL .

0
Reply yiyu.jgl (68) 7/1/2009 9:20:31 PM

2009/7/1 Aaron W. Hsu <arcfide@sacrideo.us>:
> I'm missing
> small things, like how to select and move all the text in one window to
> another in a fast manner

if the amount of text in the window is relatively small, then
just selecting all the text by dragging from start to end
and chord cut/paste is usually fastest.

when there's lots of text, it can be better to
select all the text by typing ":," in the tag and
right-clicking it; then middle click "Snarf" to
copy it to the snarf buffer.

there's a gotcha about using Snarf, which is that
there's actually a concealed "currently selected window"
in acme, and it's not always easy to know which it is...
i haven't found a straightforward way of explaining yet either.
(i think it's possibly the biggest UI flaw in acme. some visual
indication could rectify the problem, i think)

selecting text (with the left mouse button) changes
the currently selected window (which isn't always the body;
it can be the tag)

so if you select the ":," text before clicking Snarf,
you'll end up snarfing the ":," text itself, not
the selection in the body of the window!

you can get around this by left-clicking in another
window; then a Snarf in the original window's tag
will work as desired.

> how to reduce
> redundancy of typing and movement.

i use ESC a lot to select some text i've just
typed. it doesn't work in all circumstances,
but for quick Edit and :/... tag commands that
contain spaces, it's very quick and useful.

it's worth knowing the right-click null-selection expansion
rules, as they can save an explicit selection, which
is always slower.

the main thing that makes the mouse so useful
and versatile in acme is the chorded cut and paste.
it makes the mouse into a genuinely useful manipulation
tool in its own right - cut and paste comprises a significant
proportion of all development activity, in my experience.

only problem is if you ever use Safari and accidentally
do a chorded-cut, it crashes it instantly!

  cheers,
   rog.

0
Reply rogpeppe (244) 7/1/2009 10:25:46 PM

On Wed, 01 Jul 2009 16:17:04 -0400, Jason Catena <jason.catena@gmail.com>  
wrote:

> http://www.cse.yorku.ca/~oz/wily/idioms.html

Ah, yes, this helps me plenty. Thank you.

	Aaron W. Hsu

-- 
Of all tyrannies, a tyranny sincerely exercised for the good of its  
victims may be the most oppressive. -- C. S. Lewis
0
Reply arcfide (659) 7/2/2009 9:19:04 AM

On Wed, 01 Jul 2009 04:56:58 -0400, Aaron W. Hsu <arcfide@sacrideo.us>  
wrote:

> Hello everyone,
>
> I am taking the Acme workflow for a spin.

I had no idea people would pounce on this topic like they did. :-! Thanks  
for all the advice and the entertaining read for a new Acme user.

	Aaron W. Hsu

-- 
Of all tyrannies, a tyranny sincerely exercised for the good of its  
victims may be the most oppressive. -- C. S. Lewis
0
Reply arcfide (659) 7/2/2009 9:29:33 AM

> if the amount of text in the window is relatively small, then
> just selecting all the text by dragging from start to end
> and chord cut/paste is usually fastest.
>
> when there's lots of text, it can be better to
> select all the text by typing ":," in the tag and
> right-clicking it; then middle click "Snarf" to
> copy it to the snarf buffer.
>   

I select it (by drag or :,) and press escape for cut (and then paste it 
back in again if it's to copy)

Though in doing this I often find myself pressing Esc in shell windows 
and not getting what I wanted.

Also often you'll see my hand move towards the mouse and return to the 
kb because I changed my mind or be hovering somewhere over the numeric 
keypad waiting for my  brain to decide  what to do with it.

Also I have two mice connected to my computer, one with a scrollwheel 
and one without.

I've also got a perfit mouse which has no scroll wheel on the middle 
button but two for use with the thumb, sadly the one I picked up cheap 
(i.e. $30 !) is a little too large for my girly hands.

And one of these one handed keyboards : 
http://www.proweb.co.uk/~matt/maltron.jpg

Though I'm not up to any kind of speed with it, and I want to keep my 
eyes open for a left handed one instead (or get better with a left 
handed mouse).


0
Reply mattmobile (224) 7/2/2009 9:53:19 AM

On Wed, Jul 1, 2009 at 4:56 AM, Aaron W. Hsu<arcfide@sacrideo.us> wrote:
>
> Does anyone have any suggestions?
>

Perhaps only tangential to what you are after, but there are little
scripts like ind, unind, quote, and powerful things like fmt, awk,
etc. that you can process your text with. Simply type a pipe char and
then the command in a tag (e.g. |ind ), select some text, select the
command, and middle click. I've been writing a bunch of little rc
scripts to help with my day-to-day formatting needs. This is also tons
of fun in Sam.

0
Reply jrm8005 (194) 7/2/2009 10:52:12 PM

On Thu, 02 Jul 2009 05:53:19 -0400, mattmobile@proweb.co.uk  
<mattmobile@proweb.co.uk> wrote:

> I've also got a perfit mouse which has no scroll wheel on the middle  
> button but two for use with the thumb, sadly the one I picked up cheap  
> (i.e. $30 !) is a little too large for my girly hands.

Did you check the sizing chart that they have? The Perfit mice are  
designed to be bigger than the usual mouse for a specific hand, because  
the whole hand rests on it, and the buttons are designed to be clicked  
with the larger knuckle of the finger rather than with the tip of the  
finger. I just got mine, and it's definitely bigger than other mice I have  
used (though smaller than the trackball), but so far I am liking it,  
though it is taking some time to get used to the motions.

	Aaron W. Hsu

-- 
Of all tyrannies, a tyranny sincerely exercised for the good of its  
victims may be the most oppressive. -- C. S. Lewis
0
Reply arcfide (659) 7/3/2009 9:02:51 AM

10 Replies
21 Views

(page loaded in 0.131 seconds)

Similiar Articles:













7/24/2012 8:33:22 AM


Reply: