diff options
| author | Kenichi Handa | 2002-05-14 07:50:09 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2002-05-14 07:50:09 +0000 |
| commit | dbeabda3e30199dbb3ecf3dfd85133dc2ce76e84 (patch) | |
| tree | 215db36a6bdc8fee1ed47faa6270929b7488f892 | |
| parent | ed0cb46526376a3a2754cf1ef60210b9690f5b97 (diff) | |
| download | emacs-dbeabda3e30199dbb3ecf3dfd85133dc2ce76e84.tar.gz emacs-dbeabda3e30199dbb3ecf3dfd85133dc2ce76e84.zip | |
(encoded-kbd-self-insert-iso2022-8bit): New arg ARG. Directly
call self-insert-command. This is a temporary workaround to
make it work with latin-1.
(encoded-kbd-mode): Change `sjis' to `shift-jis'.
| -rw-r--r-- | lisp/international/encoded-kb.el | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/lisp/international/encoded-kb.el b/lisp/international/encoded-kb.el index 2cdeba4baaf..4e17d62691c 100644 --- a/lisp/international/encoded-kb.el +++ b/lisp/international/encoded-kb.el | |||
| @@ -189,23 +189,27 @@ The following key sequence may cause multilingual text insertion." | |||
| 189 | (aset encoded-kbd-iso2022-invocations 2 nil) | 189 | (aset encoded-kbd-iso2022-invocations 2 nil) |
| 190 | (setq unread-command-events (cons char unread-command-events)))) | 190 | (setq unread-command-events (cons char unread-command-events)))) |
| 191 | 191 | ||
| 192 | (defun encoded-kbd-self-insert-iso2022-8bit () | 192 | (defun encoded-kbd-self-insert-iso2022-8bit (arg) |
| 193 | (interactive) | 193 | (interactive "p") |
| 194 | (cond | 194 | (cond |
| 195 | ((= last-command-char ?\216) ; SS2 (Single Shift 2) | 195 | ((= last-command-char ?\216) ; SS2 (Single Shift 2) |
| 196 | (aset encoded-kbd-iso2022-invocations 2 2)) | 196 | (aset encoded-kbd-iso2022-invocations 2 2)) |
| 197 | ((= last-command-char ?\217) ; SS3 (Single Shift 3) | 197 | ((= last-command-char ?\217) ; SS3 (Single Shift 3) |
| 198 | (aset encoded-kbd-iso2022-invocations 2 3)) | 198 | (aset encoded-kbd-iso2022-invocations 2 3)) |
| 199 | (t | 199 | (t |
| 200 | (let* ((charset (aref encoded-kbd-iso2022-designations | 200 | (let* ((charset (aref encoded-kbd-iso2022-designations |
| 201 | (or (aref encoded-kbd-iso2022-invocations 2) | 201 | (or (aref encoded-kbd-iso2022-invocations 2) |
| 202 | (aref encoded-kbd-iso2022-invocations 1)))) | 202 | (aref encoded-kbd-iso2022-invocations 1)))) |
| 203 | (char (if (= (charset-dimension charset) 1) | 203 | (char (if (= (charset-dimension charset) 1) |
| 204 | (make-char charset last-command-char) | 204 | (make-char charset last-command-char) |
| 205 | (make-char charset last-command-char | 205 | (make-char charset last-command-char |
| 206 | (read-char-exclusive))))) | 206 | (read-char-exclusive))))) |
| 207 | (aset encoded-kbd-iso2022-invocations 2 nil) | 207 | (aset encoded-kbd-iso2022-invocations 2 nil) |
| 208 | (setq unread-command-events (cons char unread-command-events)))))) | 208 | ;; As simply setting unread-command-events may result in |
| 209 | ;; infinite-loop for characters 160..255, this is a temporary | ||
| 210 | ;; workaround until we found a better solution. | ||
| 211 | (let ((last-command-char char)) | ||
| 212 | (self-insert-command arg)))))) | ||
| 209 | 213 | ||
| 210 | (defun encoded-kbd-self-insert-sjis () | 214 | (defun encoded-kbd-self-insert-sjis () |
| 211 | (interactive) | 215 | (interactive) |
| @@ -311,7 +315,7 @@ as a multilingual text encoded in a coding system set by | |||
| 311 | (setq encoded-kbd-mode nil) | 315 | (setq encoded-kbd-mode nil) |
| 312 | (error "No coding system for keyboard input is set")) | 316 | (error "No coding system for keyboard input is set")) |
| 313 | 317 | ||
| 314 | ((eq (coding-system-type coding) 'sjis) | 318 | ((eq (coding-system-type coding) 'shift-jis) |
| 315 | (set-input-mode | 319 | (set-input-mode |
| 316 | (nth 0 saved-input-mode) (nth 1 saved-input-mode) | 320 | (nth 0 saved-input-mode) (nth 1 saved-input-mode) |
| 317 | 'use-8th-bit (nth 3 saved-input-mode)) | 321 | 'use-8th-bit (nth 3 saved-input-mode)) |