international/mule.el (set-keyboard-coding-system): Recover input meta mode when the new coding system doesn not use 8-bit. Supply TERMINAL arg to set-input-meta-mode.

This commit is contained in:
Kenichi Handa 2012-10-18 08:59:24 +09:00
parent 596846525b
commit b278604edf
2 changed files with 20 additions and 8 deletions

View file

@ -1,3 +1,9 @@
2012-10-17 Kenichi Handa <handa@gnu.org>
* international/mule.el (set-keyboard-coding-system): Recover
input meta mode when the new coding system doesn not use 8-bit.
Supply TERMINAL arg to set-input-meta-mode.
2012-10-17 Michael Heerdegen <michael_heerdegen@web.de> (tiny change)
* wdired.el (wdired-old-marks): New variable.

View file

@ -1355,19 +1355,25 @@ graphical terminals."
(t
(error "Unsupported coding system for keyboard: %s"
coding-system)))
(when accept-8-bit
(or saved-meta-mode
(set-terminal-parameter terminal
'keyboard-coding-saved-meta-mode
(cons (nth 2 (current-input-mode))
nil)))
(set-input-meta-mode 8))
(if accept-8-bit
(progn
(or saved-meta-mode
(set-terminal-parameter terminal
'keyboard-coding-saved-meta-mode
(cons (nth 2 (current-input-mode))
nil)))
(set-input-meta-mode 8 terminal))
(when saved-meta-mode
(set-input-meta-mode (car saved-meta-mode) terminal)
(set-terminal-parameter terminal
'keyboard-coding-saved-meta-mode
nil)))
;; Avoid end-of-line conversion.
(setq coding-system
(coding-system-change-eol-conversion coding-system 'unix)))
(when saved-meta-mode
(set-input-meta-mode (car saved-meta-mode))
(set-input-meta-mode (car saved-meta-mode) terminal)
(set-terminal-parameter terminal
'keyboard-coding-saved-meta-mode
nil))))