emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: describe-bindings: ^L, bad order, naming


From: Robert J. Chassell
Subject: Re: describe-bindings: ^L, bad order, naming
Date: Sat, 12 Nov 2005 12:28:08 +0000 (UTC)

    ??? Strange logic.  If I print the buffer (I admit I never did
    that; is there someone here that did?), why should I care exactly
    how many printed pages will I get?

The logic makes sense but the procedures are not for experts.

You are an expert.  Many novices print what they see.  They should not
-- after all, a computer plus printer is more than an early 20th
century typesetting machine plus printing machine -- but they do.

Also, novices tend not to distinguish between buffers that are
visiting files and buffers that are not visiting files:  they just
print what they see or, if they are blind and have a braille printer,
what they hear.

I know one person who prints her email!  (She also did not want to
print a book of mine because she feared it would have too many pages
and take too long.)  Experts print far less frequently.

Years ago, I wrote the page-ext.el functions so I could readily
determine whether the number of lines in a page was too many for my
printer, which could only print pages of 66 or fewer lines.

Nowadays, I hardly ever print hardcopy and forget the keybinding for a
`pages-directory' command that lists the number of lines in each page.
(It uses a positive, numeric prefix key.  Also, you must load
"page-ext" first; it is part of the distribution but not autoloaded.)

On looking, the command turns out to be `C-u 8 C-x C-p C-d' and works
with Juri Linkov's display setting,

    (aset standard-display-table ?\f (vconcat (make-vector 64 ?-) "^L"))

since that setting does not effect contents only display.

I just checked: Mile's suggestion also works:  to put the caret and
the L characters after an indent and then a line of hyphens,

  (aset standard-display-table ?\f (vconcat  "    ^L " (make-vector 64 ?-)))

Thus, when I run `C-h b' (describe-bindings) on this email buffer, and
then run `C-u 8 C-x C-p C-d' on the resulting *Help* buffer, I see

      8: Key translations:
      4: `say-minor-mode' Minor Mode Bindings:
     17: `mc-write-mode' Minor Mode Bindings:
     52: Major Mode Bindings:
    1094: Global Bindings:
     88: Function key map translations:

Everyone starts out as a novice.  Consequently, it is worth making it
easy for novices to learn the jargon and to learn how to become more
efficient.

I remember -- more than 20 years ago, before learning about Emacs --
typing each key chord in a program to discover the keybindings.  The
program lacked documentation but was easy for a novice to learn since
you could put a mouse cursor on a menu item and execute the command
that way.  But those commands were inefficient -- after all, who wants
to move the mouse cursor to a menu in order to mark a whole buffer
when you can type `C-x h'?

In general, as people become more proficient, they want to waste their
time less.  For this Emacs is good.  (As is Emacspeak, which is for
listening rather than seeing -- for the permanently blind and for
people driving cars and such, who are `situationally blind').

-- 
    Robert J. Chassell                         
    address@hidden                         GnuPG Key ID: 004B4AC8
    http://www.rattlesnake.com                  http://www.teak.cc




reply via email to

[Prev in Thread] Current Thread [Next in Thread]