From: YAMAMOTO Mitsuharu Date: Mon, 25 Dec 2006 08:18:29 +0000 (+0000) Subject: (mac-keyboard-translate-char, mac-unread-string): X-Git-Tag: emacs-pretest-22.0.93~427 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=40cacec2b3ecbc6142b4f24b0870683a161a6cd2;p=emacs.git (mac-keyboard-translate-char, mac-unread-string): New functions. (mac-ts-update-active-input-area, mac-ts-unicode-for-key-event): Use mac-unread-string. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c53ee6c16a1..68112e03568 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,16 @@ +2006-12-25 YAMAMOTO Mitsuharu + + * startup.el: (fancy-splash-last-input-event): New variable. + (fancy-splash-special-event-action): New function. + (fancy-splash-screens): Temporarily bind special events to it. + Execute command for saved special event before exiting from + recursive editing. + + * term/mac-win.el: (mac-keyboard-translate-char, mac-unread-string): + New functions. + (mac-ts-update-active-input-area, mac-ts-unicode-for-key-event): + Use mac-unread-string. + 2006-12-24 Micha,Ak(Bl Cadilhac * textmodes/fill.el (fill-comment-paragraph): Prevent the use of diff --git a/lisp/term/mac-win.el b/lisp/term/mac-win.el index cba4985ccb3..d9454a0499e 100644 --- a/lisp/term/mac-win.el +++ b/lisp/term/mac-win.el @@ -1964,6 +1964,22 @@ the echo area or in a buffer where the cursor is not displayed." (mac-split-string-by-property-change string) "")) +(defun mac-keyboard-translate-char (ch) + (if (and (char-valid-p ch) + (or (char-table-p keyboard-translate-table) + (and (or (stringp keyboard-translate-table) + (vectorp keyboard-translate-table)) + (> (length keyboard-translate-table) ch)))) + (or (aref keyboard-translate-table ch) ch) + ch)) + +(defun mac-unread-string (string) + ;; Unread characters and insert them in a keyboard macro being + ;; defined. + (apply 'isearch-unread + (mapcar 'mac-keyboard-translate-char + (mac-replace-untranslated-utf-8-chars string)))) + (defun mac-ts-update-active-input-area (event) "Update Mac TSM active input area according to EVENT. The confirmed text is converted to Emacs input events and pushed @@ -2042,11 +2058,7 @@ either in the current buffer or in the echo area." (point) (point) (current-buffer)) (overlay-put mac-ts-active-input-overlay 'before-string active-input-string)) - ;; Unread confirmed characters and insert them in a keyboard - ;; macro being defined. - (apply 'isearch-unread - (append (mac-replace-untranslated-utf-8-chars - (funcall decode-fun confirmed coding)) '()))) + (mac-unread-string (funcall decode-fun confirmed coding))) ;; The event is successfully processed. Sync the sequence number. (setq mac-ts-update-active-input-area-seqno (1+ seqno)))) @@ -2059,11 +2071,7 @@ either in the current buffer or in the echo area." (coding (or (cdr (assq (car script-language) mac-script-code-coding-systems)) 'mac-roman))) - ;; Unread characters and insert them in a keyboard macro being - ;; defined. - (apply 'isearch-unread - (append (mac-replace-untranslated-utf-8-chars - (mac-utxt-to-string text coding)) '())))) + (mac-unread-string (mac-utxt-to-string text coding)))) ;; kEventClassTextInput/kEventTextInputUpdateActiveInputArea (define-key mac-apple-event-map [text-input update-active-input-area]