emacs-devel
[Top][All Lists]
Advanced

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

address@hidden: input-method completion is annoying.]


From: Richard Stallman
Subject: address@hidden: input-method completion is annoying.]
Date: Wed, 14 Mar 2007 21:38:56 -0400

[I sent this message a week ago but did not get a response.]

Would you please DTRT with this, then ack?
Or someone?

------- Start of forwarded message -------
X-Spam-Status: No, score=0.0 required=5.0 tests=UNPARSEABLE_RELAY 
        autolearn=failed version=3.1.0
From: address@hidden (=?iso-8859-1?Q?Micha=EBl?= Cadilhac)
To: address@hidden
Organization: Epita/LRDE
Date: Wed, 07 Mar 2007 15:35:32 +0100
MIME-Version: 1.0
Subject: input-method completion is annoying.
Content-Type: multipart/mixed; boundary="===============1519150770=="

- --===============1519150770==
Content-Type: multipart/signed; boundary="==-=-=";
        micalg=pgp-sha1; protocol="application/pgp-signature"

- --==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

- --=-=-=
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable

Hi!

Input method completion is sometimes like a PITA because it just
happens when you need it least.

For example, I use BBDB with Gnus, and a postfix input-method. Let's
say I want to search for Akim's mail contact.

I just type Aki and have a <TAB> (BBDB completion expected). Heck!
quail (quite unreadable) completion:
| Possible completion and corresponding characters are:
|  i: -
|    i^:(1/1) 1.=EE
|      i^^:(1/1) 1.i^
|    i":(1/1) 1.=EF
|      i"":(1/1) 1.i"
`------------------------

Apart from the fact that this completion infos are kind of useless
(the echo area already prints the useful infos), the binding is
annoying.

I just propose to change this key to M-# (don't ask me why this key,
it's only a free key that can't be used by mistake):

- --=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: inline; filename=input-method.patch
Content-Transfer-Encoding: quoted-printable

Index: lisp/international/quail.el
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /sources/emacs/emacs/lisp/international/quail.el,v
retrieving revision 1.154
diff -B -w -c -r1.154 quail.el
*** lisp/international/quail.el 2 Feb 2007 11:43:31 -0000       1.154
=2D-- lisp/international/quail.el       7 Mar 2007 13:18:31 -0000
***************
*** 266,273 ****
  (defvar quail-translation-keymap
    (let ((map (make-keymap))
        (i 0))
!     (while (< i ?\ )
!       (define-key map (char-to-string i) 'quail-other-command)
        (setq i (1+ i)))
      (while (< i 127)
        (define-key map (char-to-string i) 'quail-self-insert-command)
=2D-- 266,274 ----
  (defvar quail-translation-keymap
    (let ((map (make-keymap))
        (i 0))
!     (while (< i ?\s)
!       (unless (=3D i meta-prefix-char)
!       (define-key map (char-to-string i) 'quail-other-command))
        (setq i (1+ i)))
      (while (< i 127)
        (define-key map (char-to-string i) 'quail-self-insert-command)
***************
*** 285,291 ****
      (define-key map [left] 'quail-prev-translation)
      (define-key map [down] 'quail-next-translation-block)
      (define-key map [up] 'quail-prev-translation-block)
!     (define-key map "\C-i" 'quail-completion)
      (define-key map "\C-@" 'quail-select-current)
      ;; Following simple.el, Enter key on numeric keypad selects the
      ;; current translation just like `C-SPC', and `mouse-2' chooses
=2D-- 286,292 ----
      (define-key map [left] 'quail-prev-translation)
      (define-key map [down] 'quail-next-translation-block)
      (define-key map [up] 'quail-prev-translation-block)
!     (define-key map "\M-#" 'quail-completion)
      (define-key map "\C-@" 'quail-select-current)
      ;; Following simple.el, Enter key on numeric keypad selects the
      ;; current translation just like `C-SPC', and `mouse-2' chooses
***************
*** 295,301 ****
      (define-key map [down-mouse-2] nil)
      (define-key map "\C-h" 'quail-translation-help)
      (define-key map [?\C- ] 'quail-select-current)
=2D     (define-key map [tab] 'quail-completion)
      (define-key map [delete] 'quail-delete-last-char)
      (define-key map [backspace] 'quail-delete-last-char)
      map)
=2D-- 296,301 ----
***************
*** 338,344 ****
    (let ((map (make-keymap))
        (i 0))
      (while (< i ?\ )
!       (define-key map (char-to-string i) 'quail-other-command)
        (setq i (1+ i)))
      (while (< i 127)
        (define-key map (char-to-string i) 'quail-self-insert-command)
=2D-- 338,345 ----
    (let ((map (make-keymap))
        (i 0))
      (while (< i ?\ )
!       (unless (=3D i meta-prefix-char)
!       (define-key map (char-to-string i) 'quail-other-command))
        (setq i (1+ i)))
      (while (< i 127)
        (define-key map (char-to-string i) 'quail-self-insert-command)
Index: lisp/ChangeLog
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.10783
diff -C0 -r1.10783 ChangeLog
*** lisp/ChangeLog      7 Mar 2007 12:50:23 -0000       1.10783
=2D-- lisp/ChangeLog    7 Mar 2007 13:21:40 -0000
***************
*** 0 ****
=2D-- 1,7 ----
+ 2007-03-07  Micha=1B,Ak=1B(Bl Cadilhac  <address@hidden>
+=20
+       * international/quail.el (quail-translation-keymap): Don't bind
+       `meta-prefix-char' to `quail-othe-command', in order to bind
+       "\M-#" instead of <TAB> to quail-completion.
+       (quail-simple-translation-keymap): Ditto.
+=20
Index: leim/quail/latin-ltx.el
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /sources/emacs/emacs/leim/quail/latin-ltx.el,v
retrieving revision 1.27
diff -B -w -c -r1.27 latin-ltx.el
*** leim/quail/latin-ltx.el     16 Jan 2007 08:40:03 -0000      1.27
=2D-- leim/quail/latin-ltx.el   7 Mar 2007 13:24:16 -0000
***************
*** 41,47 ****
   \\'a -> =C3=A1  \\`{a} -> =C3=A0
   \\pi -> =CF=80  \\int -> =E2=88=AB  ^1 -> =C2=B9"
=20=20
!  '(("\t" . quail-completion))
   t t nil nil nil nil nil nil nil t)
=20=20
  (quail-define-rules
=2D-- 41,47 ----
   \\'a -> =C3=A1  \\`{a} -> =C3=A0
   \\pi -> =CF=80  \\int -> =E2=88=AB  ^1 -> =C2=B9"
=20=20
!  '(("\M-#" . quail-completion))
   t t nil nil nil nil nil nil nil t)
=20=20
  (quail-define-rules
Index: leim/quail/sgml-input.el
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /sources/emacs/emacs/leim/quail/sgml-input.el,v
retrieving revision 1.8
diff -B -w -c -r1.8 sgml-input.el
*** leim/quail/sgml-input.el    16 Jan 2007 08:40:03 -0000      1.8
=2D-- leim/quail/sgml-input.el  7 Mar 2007 13:24:17 -0000
***************
*** 41,47 ****
  HTMLspecial and HTMLsymbol.
=20=20
  E.g.: &aacute; -> =C3=A1"
!  '(("\t" . quail-completion))
   t nil nil nil nil nil nil nil nil t)
=20=20
  (quail-define-rules
=2D-- 41,47 ----
  HTMLspecial and HTMLsymbol.
=20=20
  E.g.: &aacute; -> =C3=A1"
!  '(("\M-#" . quail-completion))
   t nil nil nil nil nil nil nil nil t)
=20=20
  (quail-define-rules
Index: leim/ChangeLog
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /sources/emacs/emacs/leim/ChangeLog,v
retrieving revision 1.214
diff -C0 -r1.214 ChangeLog
*** leim/ChangeLog      11 Feb 2007 00:42:11 -0000      1.214
=2D-- leim/ChangeLog    7 Mar 2007 13:25:10 -0000
***************
*** 0 ****
=2D-- 1,6 ----
+ 2007-03-07  Micha=1B,Ak=1B(Bl Cadilhac  <address@hidden>
+=20
+       * quail/latin-ltx.el ("TeX"): Use "\M-#" instead of <TAB> for
+       `quail-completion'.
+       * quail/sgml-input.el ("sgml"): Ditto.
+=20

- --=-=-=


Second little bug, the completion buffer isn't read-only. How about:

- --=-=-=
Content-Type: text/x-patch; charset=iso-8859-1
Content-Disposition: inline; filename=quail.patch
Content-Transfer-Encoding: quoted-printable

Index: lisp/international/quail.el
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /sources/emacs/emacs/lisp/international/quail.el,v
retrieving revision 1.154
diff -B -w -c -r1.154 quail.el
*** lisp/international/quail.el 2 Feb 2007 11:43:31 -0000       1.154
=2D-- lisp/international/quail.el       7 Mar 2007 13:14:23 -0000
***************
*** 2161,2170 ****
                  ;; quail-completion-buf.
                  (minibuffer-scroll-window nil))
              (scroll-other-window)))
!       (setq quail-current-key key)
        (erase-buffer)
        (insert "Possible completion and corresponding characters are:\n")
        (quail-completion-1 key map 1)
        (goto-char (point-min))
        (display-buffer (current-buffer))
        (setq require-update t)))
=2D-- 2161,2172 ----
                  ;; quail-completion-buf.
                  (minibuffer-scroll-window nil))
              (scroll-other-window)))
!       (setq quail-current-key key
!             buffer-read-only nil)
        (erase-buffer)
        (insert "Possible completion and corresponding characters are:\n")
        (quail-completion-1 key map 1)
+       (setq buffer-read-only t)
        (goto-char (point-min))
        (display-buffer (current-buffer))
        (setq require-update t)))
Index: lisp/ChangeLog
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.10783
diff -C0 -r1.10783 ChangeLog
*** lisp/ChangeLog      7 Mar 2007 12:50:23 -0000       1.10783
=2D-- lisp/ChangeLog    7 Mar 2007 13:14:55 -0000
***************
*** 0 ****
=2D-- 1,5 ----
+ 2007-03-07  Micha=EBl Cadilhac  <address@hidden>
+=20
+       * international/quail.el (quail-completion): Set the buffer to be
+       read-only when needed.
+=20

- --=-=-=
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable


TIA!

=2D-=20
 |   Micha=EBl `Micha' Cadilhac       |  La meilleure fa=E7on              =
      |
 |   http://michael.cadilhac.name   |     de ne pas avancer,               =
  |
 |   JID/MSN:                       |  c'est de suivre une id=E9e fixe.    =
    |
 `----  address@hidden  |          -- Jacques Pr=E9vert       -=
  --'

- --=-=-=--

- --==-=-=
Content-Type: application/pgp-signature

- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFF7s20UJhDmOfFA3URAqppAJ93ujUj5ig5VEFnJ8cY7NQnxgAAiACgw+yJ
6ksxfHkGY5QFIIYy/xA+Et0=
=BR0p
- -----END PGP SIGNATURE-----
- --==-=-=--



- --===============1519150770==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Emacs-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-devel
- --===============1519150770==--
------- End of forwarded message -------





reply via email to

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