Subject: bug#20499: [PROPOSED PATCH] C-x 8 shorthands for curved quotes, Euro, etc.

From: Richard Stallman <[email-masked]>
Date: Wed, 06 May 2015 09:09:26 -0400

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > >    > > Would admin/unidata/UnicodeData.txt do?
  > > 
  > > It doesn't do the job, becuase it doesn't contain the characters
  > > themselves.

  > You mean, the glyphs? 

Yes, exactly.

			   (It does show the codepoint, so you can easily
  > display the character via "C-x 8 RET".)

You mean, one character at a time?

I want to be able to scan quickly through the buffer looking at
lots of characters to find the one I want.  If I have to type
a command for _each character_, just to see it, that is useless
for the purpose.

C-x 8 RET is even worse than that, because it requires
_copying_ the name of the character.  To actually see the character
point is on requires
M-f C-f C-SPC C-s ; C-b M-w C-a C-x 8 RET C-y SPC

I could make that a keyboard macro and repeat it many times
to get all these codes into the buffer.  It would take a long time.
Furthermore, it would show only one character per line,
so few characters would appear on the screen at any time.
To look at them all would require lots of scrolling.

To do this job well requires output like that of the short Lisp
program someone sent, showing only characters and NOT the names,
with many characters per line.

The buffer shoulod be divided into stanzas, each one labeled with the
name of its script or portion thereof.

  > As for showing the glyphs, visiting a file with large number of
  > characters runs a high risk of being an annoyance due to the
  > corresponding fonts being unavailable on the system.

We could set up a way to test whether a code point can be
displayed, and skip scripts that can't be displayed.

    So if we provide such a command, IMO we should prompt for a block of
    codepoints, and display only that block.

It is inconvenient to expect users to know the codepoint values.
Suppose I want to see Greek letters -- I have no idea what codepoints
those are, and I should not need to know them in order to specify
"Greek letters".

To specify a script by name as an argument would be ok,
but not very convenient.  Here's a simpler and more convenient interface:

The header line for each script could have a [hide] or [show] button
to select visibility of that script.  Initially they could all be
hidden, and the user would expose those that she is interested in.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! See stallman.org/skype.html.