1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-01 08:17:38 +00:00

Fix input method translation near read-only text

* lisp/international/quail.el (quail-input-method): Don't disable
input method when the character after point has the read-only
property.  Suggested by Evgeny Zajcev <lg.zevlg@gmail.com>
(Bug#44466)

* doc/emacs/mule.texi (Input Methods): Document that input methods
are inhibited in read-only text.
This commit is contained in:
Eli Zaretskii 2020-11-14 15:20:30 +02:00
parent 5aabf2cc7f
commit 19da602991
2 changed files with 8 additions and 1 deletions

View File

@ -563,6 +563,12 @@ method's keys by defining key bindings in the keymap returned by the
function @code{quail-translation-keymap}, using @code{define-key}.
@xref{Init Rebinding}.
Input methods are inhibited when the text in the buffer is read-only
for some reason. This is so single-character key bindings work in
modes that make buffer text or parts of it read-only, such as
@code{read-only-mode} and @code{image-mode}, even when an input method
is active.
Another facility for typing characters not on your keyboard is by
using @kbd{C-x 8 @key{RET}} (@code{insert-char}) to insert a single
character based on its Unicode name or code-point; see @ref{Inserting

View File

@ -1330,7 +1330,8 @@ If STR has `advice' text property, append the following special event:
(defun quail-input-method (key)
(if (or (and (or buffer-read-only
(get-char-property (point) 'read-only))
(and (get-char-property (point) 'read-only)
(get-char-property (point) 'front-sticky)))
(not (or inhibit-read-only
(get-char-property (point) 'inhibit-read-only))))
(and overriding-terminal-local-map