unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Aidan Kehoe <kehoea@parhasard.net>
Cc: XEmacs Beta <xemacs-beta@xemacs.org>,
	emacs-devel@gnu.org, Paul Pogonyshev <pogonyshev@gmx.net>
Subject: Re: thoughts on interaction of key bindings and input methods (was Re:	wish: right alt/meta to switch keyboard layout while pressed)
Date: Sun, 27 Nov 2005 19:35:13 +0100	[thread overview]
Message-ID: <17289.64609.815397.99388@parhasard.net> (raw)
In-Reply-To: <43891060.2070405@666.com>


 Ar an séú lá is fiche de mí na Samhain, scríobh Ben Wing: 

 > this is what i call the "russian c-x problem".  at one point i had 
 > worked out what the correct thing to do is, and there are various 
 > comments to this effect in XEmacs; but i never finished it.  it looks 
 > like aidan went ahead and implemented it, though, right, aidan?

Yes. I’ve never tested the the Win32 support, though--it looks like your
implementation is complete, but I couldn’t say if it works or not. 

 > [...] note also that this algorithm *does* use the locale of the current 
 > buffer; this is certainly possible under windows, where there is an 
 > explicit api to query both the physical and logical keyboard.

The X11 side of things doesn’t. It just supplies Qwerty as an alternative. 
Win32 locale support in general is much superior, and providing the same
level of functionality in pure X11 is just impossible. There is no locale ->
key layout mapping available, for a start. 

 > it also seems that alphabetic and non-alphabetic keys should (perhaps) 
 > behave differently.

What I take from this response from Paul --

 > >>-- If you see M-; listed as a key binding, is the first thing that
 > >>occurs to you to type Alt+Shift+8? Or would you go for Alt+ж, since ж
 > >>is where ; is on the US keyboard? Should we accept both?
 > >
 > >I can't say which would be the most natural thing to hit, because few apps
 > >but Emacs use such extravagant shortcuts.

is that we have to support this processing for punctuation as well as for
alphanumeric characters. If he doesn’t know which would be the most natural
thing to hit, then people in general will hit both, and as well as that,
lots of ASCII punctuation just isn’t available on a Russian keyboard. (This
position is different from what I thought when I implemented the X11 support
in the first place, btw.) It’s not that reasonable to make forward-word
available by default but not ispell-word, just because ispell-word uses the
dollar sign.

 > [..] (with alphabetic keys, it is semi-feasible to search the keyboard in
 > front of me to find the keys, but this is just impossible for
 > punctuation.)

This is my experience too, strangely enough, since there’s no reasonable
ground for punctuation being much harder to find than letters. 

Okay, I’ve just posted code to xemacs-patches@xemacs.org that takes into
account what Paul said, and moves the fallback mapping from raw X11 keycodes
to the US layout to hardware-specific Lisp, which is where it should be. I’d
love to have some commentary on it. 

 > >The only plausible generic solution I can think of is to track the
 > >layout for each buffer separately. This may be very difficult to
 > >impossible to implement with external layout switching. And that's
 > >precisely the reason why I prefer to use Emacs' own input methods
 > >switched by `C-\'. This means that I have to use different layout
 > >switching methods in Emacs and elsewhere, but the advantages are more
 > >important for me.

I get what you mean there; there are three or four input methods that I
regularly use, and being able to switch to a specific one with C-u C-\,
without messing around with character maps, makes my life significantly
easier. Indeed, I find myself typing IPA into XEmacs and pasting it into
other applications--admittedly I do use a local hack to get the glyphs to
display, so in general it’s not any better than GNU Emacs for this.

-- 
I AM IN JAIL AND ALLOWED SEND ONLY ONE CABLE SINCE WAS ARRESTED WHILE
MEASURING FIFTEEN FOOT WALL OUTSIDE PALACE AND HAVE JUST FINISHED COUNTING
THIRTY EIGHT THOUSAND FIVE HUNDERED TWENTY TWO NAMES WHOS WHO IN MIDEAST.

  parent reply	other threads:[~2005-11-27 18:35 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-22 19:50 wish: right alt/meta to switch keyboard layout while pressed Paul Pogonyshev
2005-11-22 22:31 ` Andreas Schwab
2005-11-23  5:14 ` Richard M. Stallman
2005-11-23 19:52   ` Paul Pogonyshev
2005-11-25 15:50     ` Richard M. Stallman
2005-11-25 18:00       ` Andreas Schwab
2005-11-23  6:07 ` Juri Linkov
2005-11-24 17:18 ` Stefan Monnier
2005-11-24 19:45   ` Paul Pogonyshev
2005-11-24 20:56     ` Stefan Monnier
2005-11-25 19:37       ` Paul Pogonyshev
2005-11-25 22:17         ` Stefan Monnier
2005-11-25 22:33           ` Paul Pogonyshev
2005-11-25 22:44             ` Aidan Kehoe
2005-11-26 16:43               ` Paul Pogonyshev
2005-11-27  5:26                 ` Tomas Zerolo
2005-11-26  8:15             ` Eugene Vlasov
2005-11-26 19:44               ` Paul Pogonyshev
2005-11-28 20:33                 ` Juri Linkov
2005-11-26 15:10             ` Stefan Monnier
2005-11-26 16:46               ` Paul Pogonyshev
2005-11-27 18:19                 ` Stefan Monnier
2005-11-27 21:39                   ` Paul Pogonyshev
2005-11-28  2:39                     ` Mode_switch in Emacs (was: wish: right alt/meta to switch keyboard layout while pressed) Stefan Monnier
2005-11-28 20:27                       ` Juri Linkov
2005-11-28 22:14                         ` Mode_switch in Emacs Stefan Monnier
2005-11-28 23:08                           ` Juri Linkov
2005-11-29 16:24                             ` Stefan Monnier
2005-11-29 19:54                               ` Paul Pogonyshev
2005-11-30  2:43                               ` Juri Linkov
2005-11-28 20:27               ` wish: right alt/meta to switch keyboard layout while pressed Juri Linkov
2005-11-28 23:14                 ` Juri Linkov
2005-11-26  4:22       ` Richard M. Stallman
     [not found] ` <200511261925.20191.pogonyshev@gmx.net>
     [not found]   ` <17288.41589.506361.323637@parhasard.net>
2005-11-26 23:01     ` thoughts on interaction of key bindings and input methods (was Re: wish: right alt/meta to switch keyboard layout while pressed) Paul Pogonyshev
2005-11-27  1:48       ` Ben Wing
2005-11-27  5:35         ` Tomas Zerolo
2005-11-27 11:29         ` thoughts on interaction of key bindings and input methods (was Re: wish: right alt/meta to switch keyboard layout while pressed ) Paul Pogonyshev
2005-11-28  5:25           ` thoughts on interaction of key bindings and input methods (was Re: wish: right alt/meta to switch keyboard layout while pressed) Ben Wing
2005-11-28 19:09             ` Paul Pogonyshev
2005-11-27 18:35         ` Aidan Kehoe [this message]
2005-11-28  2:39 ` wish: right alt/meta to switch keyboard layout while pressed Stefan Monnier
2005-11-28 20:28   ` Juri Linkov
2005-11-28 22:16     ` Stefan Monnier

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=17289.64609.815397.99388@parhasard.net \
    --to=kehoea@parhasard.net \
    --cc=emacs-devel@gnu.org \
    --cc=pogonyshev@gmx.net \
    --cc=xemacs-beta@xemacs.org \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).