Obsolete alias inactivate-current-input-method-function.
[bpt/emacs.git] / lisp / international / mule-cmds.el
index 6ec5e23..30dc88a 100644 (file)
 
 (defvar describe-language-environment-map
   (let ((map (make-sparse-keymap "Describe Language Environment")))
-    (define-key map
-      [Default] `(menu-item ,(purecopy "Default") describe-specified-language-support))
+    (bindings--define-key map
+      [Default] '(menu-item "Default" describe-specified-language-support))
     map))
 
 (defvar setup-language-environment-map
   (let ((map (make-sparse-keymap "Set Language Environment")))
-    (define-key map
-      [Default] `(menu-item ,(purecopy "Default") setup-specified-language-environment))
+    (bindings--define-key map
+      [Default] '(menu-item "Default" setup-specified-language-environment))
     map))
 
 (defvar set-coding-system-map
   (let ((map (make-sparse-keymap "Set Coding System")))
-    (define-key-after map [universal-coding-system-argument]
-      `(menu-item ,(purecopy "For Next Command") universal-coding-system-argument
-        :help ,(purecopy "Coding system to be used by next command")))
-    (define-key-after map [separator-1] menu-bar-separator)
-    (define-key-after map [set-buffer-file-coding-system]
-      `(menu-item ,(purecopy "For Saving This Buffer") set-buffer-file-coding-system
-        :help ,(purecopy "How to encode this buffer when saved")))
-    (define-key-after map [revert-buffer-with-coding-system]
-      `(menu-item ,(purecopy "For Reverting This File Now")
-        revert-buffer-with-coding-system
-        :enable buffer-file-name
-        :help ,(purecopy "Revisit this file immediately using specified coding system")))
-    (define-key-after map [set-file-name-coding-system]
-      `(menu-item ,(purecopy "For File Name") set-file-name-coding-system
-        :help ,(purecopy "How to decode/encode file names")))
-    (define-key-after map [separator-2] menu-bar-separator)
-
-    (define-key-after map [set-keyboard-coding-system]
-      `(menu-item ,(purecopy "For Keyboard") set-keyboard-coding-system
-        :help ,(purecopy "How to decode keyboard input")))
-    (define-key-after map [set-terminal-coding-system]
-      `(menu-item ,(purecopy "For Terminal") set-terminal-coding-system
-        :enable (null (memq initial-window-system '(x w32 ns)))
-        :help ,(purecopy "How to encode terminal output")))
-    (define-key-after map [separator-3] menu-bar-separator)
-
-    (define-key-after map [set-selection-coding-system]
-      `(menu-item ,(purecopy "For X Selections/Clipboard") set-selection-coding-system
-        :visible (display-selections-p)
-        :help ,(purecopy "How to en/decode data to/from selection/clipboard")))
-    (define-key-after map [set-next-selection-coding-system]
-      `(menu-item ,(purecopy "For Next X Selection") set-next-selection-coding-system
-        :visible (display-selections-p)
-        :help ,(purecopy "How to en/decode next selection/clipboard operation")))
-    (define-key-after map [set-buffer-process-coding-system]
-      `(menu-item ,(purecopy "For I/O with Subprocess") set-buffer-process-coding-system
+    (bindings--define-key map [set-buffer-process-coding-system]
+      '(menu-item "For I/O with Subprocess" set-buffer-process-coding-system
         :visible (fboundp 'start-process)
         :enable (get-buffer-process (current-buffer))
-        :help ,(purecopy "How to en/decode I/O from/to subprocess connected to this buffer")))
+        :help "How to en/decode I/O from/to subprocess connected to this buffer"))
+    (bindings--define-key map [set-next-selection-coding-system]
+      '(menu-item "For Next X Selection" set-next-selection-coding-system
+        :visible (display-selections-p)
+        :help "How to en/decode next selection/clipboard operation"))
+    (bindings--define-key map [set-selection-coding-system]
+      '(menu-item "For X Selections/Clipboard" set-selection-coding-system
+        :visible (display-selections-p)
+        :help "How to en/decode data to/from selection/clipboard"))
+
+    (bindings--define-key map [separator-3] menu-bar-separator)
+    (bindings--define-key map [set-terminal-coding-system]
+      '(menu-item "For Terminal" set-terminal-coding-system
+        :enable (null (memq initial-window-system '(x w32 ns)))
+        :help "How to encode terminal output"))
+    (bindings--define-key map [set-keyboard-coding-system]
+      '(menu-item "For Keyboard" set-keyboard-coding-system
+        :help "How to decode keyboard input"))
+
+    (bindings--define-key map [separator-2] menu-bar-separator)
+    (bindings--define-key map [set-file-name-coding-system]
+      '(menu-item "For File Name" set-file-name-coding-system
+        :help "How to decode/encode file names"))
+    (bindings--define-key map [revert-buffer-with-coding-system]
+      '(menu-item "For Reverting This File Now"
+        revert-buffer-with-coding-system
+        :enable buffer-file-name
+        :help "Revisit this file immediately using specified coding system"))
+    (bindings--define-key map [set-buffer-file-coding-system]
+      '(menu-item "For Saving This Buffer" set-buffer-file-coding-system
+        :help "How to encode this buffer when saved"))
+    (bindings--define-key map [separator-1] menu-bar-separator)
+    (bindings--define-key map [universal-coding-system-argument]
+      '(menu-item "For Next Command" universal-coding-system-argument
+        :help "Coding system to be used by next command"))
     map))
 
 (defvar mule-menu-keymap
   (let ((map (make-sparse-keymap "Mule (Multilingual Environment)")))
-    (define-key-after map [set-language-environment]
-      `(menu-item  ,(purecopy "Set Language Environment") ,setup-language-environment-map))
-    (define-key-after map [separator-mule] menu-bar-separator)
-
-    (define-key-after map [toggle-input-method]
-      `(menu-item ,(purecopy "Toggle Input Method") toggle-input-method))
-    (define-key-after map [set-input-method]
-      `(menu-item ,(purecopy "Select Input Method...") set-input-method))
-    (define-key-after map [describe-input-method]
-      `(menu-item ,(purecopy "Describe Input Method")  describe-input-method))
-    (define-key-after map [separator-input-method] menu-bar-separator)
-
-    (define-key-after map [set-various-coding-system]
-      `(menu-item ,(purecopy "Set Coding Systems") ,set-coding-system-map
-                 :enable (default-value 'enable-multibyte-characters)))
-    (define-key-after map [view-hello-file]
-      `(menu-item ,(purecopy "Show Multi-lingual Text") view-hello-file
+    (bindings--define-key map [mule-diag]
+      '(menu-item "Show All Multilingual Settings" mule-diag
+        :help "Display multilingual environment settings"))
+    (bindings--define-key map [list-character-sets]
+      '(menu-item "List Character Sets" list-character-sets
+        :help "Show table of available character sets"))
+    (bindings--define-key map [describe-coding-system]
+      '(menu-item "Describe Coding System..." describe-coding-system))
+    (bindings--define-key map [describe-input-method]
+      '(menu-item "Describe Input Method..." describe-input-method
+        :help "Keyboard layout for a specific input method"))
+    (bindings--define-key map [describe-language-environment]
+      `(menu-item "Describe Language Environment"
+            ,describe-language-environment-map
+            :help "Show multilingual settings for a specific language"))
+
+    (bindings--define-key map [separator-coding-system] menu-bar-separator)
+    (bindings--define-key map [view-hello-file]
+      '(menu-item "Show Multilingual Sample Text" view-hello-file
         :enable (file-readable-p
                  (expand-file-name "HELLO" data-directory))
-        :help ,(purecopy "Display file which says HELLO in many languages")))
-    (define-key-after map [separator-coding-system] menu-bar-separator)
+        :help "Demonstrate various character sets"))
+    (bindings--define-key map [set-various-coding-system]
+      `(menu-item "Set Coding Systems" ,set-coding-system-map
+                 :enable (default-value 'enable-multibyte-characters)))
 
-    (define-key-after map [describe-language-environment]
-      `(menu-item ,(purecopy "Describe Language Environment")
-            ,describe-language-environment-map
-            :help ,(purecopy "Show multilingual settings for a specific language")))
-    (define-key-after map [describe-input-method]
-      `(menu-item ,(purecopy "Describe Input Method...") describe-input-method
-        :help ,(purecopy "Keyboard layout for a specific input method")))
-    (define-key-after map [describe-coding-system]
-      `(menu-item ,(purecopy "Describe Coding System...") describe-coding-system))
-    (define-key-after map [list-character-sets]
-      `(menu-item ,(purecopy "List Character Sets") list-character-sets
-        :help ,(purecopy "Show table of available character sets")))
-    (define-key-after map [mule-diag]
-      `(menu-item ,(purecopy "Show All of Mule Status") mule-diag
-        :help ,(purecopy "Display multilingual environment settings")))
+    (bindings--define-key map [separator-input-method] menu-bar-separator)
+    (bindings--define-key map [describe-input-method]
+      '(menu-item "Describe Input Method"  describe-input-method))
+    (bindings--define-key map [set-input-method]
+      '(menu-item "Select Input Method..." set-input-method))
+    (bindings--define-key map [toggle-input-method]
+      '(menu-item "Toggle Input Method" toggle-input-method))
+
+    (bindings--define-key map [separator-mule] menu-bar-separator)
+    (bindings--define-key map [set-language-environment]
+      `(menu-item  "Set Language Environment" ,setup-language-environment-map))
     map)
   "Keymap for Mule (Multilingual environment) menu specific commands.")
 
@@ -1331,15 +1331,18 @@ of `history-length', which see.")
 (make-variable-buffer-local 'input-method-history)
 (put 'input-method-history 'permanent-local t)
 
-(defvar inactivate-current-input-method-function nil
-  "Function to call for inactivating the current input method.
+(define-obsolete-variable-alias
+  'inactivate-current-input-method-function
+  'deactivate-current-input-method-function "24.2")
+(defvar deactivate-current-input-method-function nil
+  "Function to call for deactivating the current input method.
 Every input method should set this to an appropriate value when activated.
 This function is called with no argument.
 
 This function should never change the value of `current-input-method'.
-It is set to nil by the function `inactivate-input-method'.")
-(make-variable-buffer-local 'inactivate-current-input-method-function)
-(put 'inactivate-current-input-method-function 'permanent-local t)
+It is set to nil by the function `deactivate-input-method'.")
+(make-variable-buffer-local 'deactivate-current-input-method-function)
+(put 'deactivate-current-input-method-function 'permanent-local t)
 
 (defvar describe-current-input-method-function nil
   "Function to call for describing the current input method.
@@ -1426,7 +1429,7 @@ If INPUT-METHOD is nil, deactivate any current input method."
       (setq input-method (symbol-name input-method)))
   (if (and current-input-method
           (not (string= current-input-method input-method)))
-      (inactivate-input-method))
+      (deactivate-input-method))
   (unless (or current-input-method (null input-method))
     (let ((slot (assoc input-method input-method-alist)))
       (if (null slot)
@@ -1447,7 +1450,7 @@ If INPUT-METHOD is nil, deactivate any current input method."
          (run-hooks 'input-method-activate-hook)
        (force-mode-line-update)))))
 
-(defun inactivate-input-method ()
+(defun deactivate-input-method ()
   "Turn off the current input method."
   (when current-input-method
     (if input-method-history
@@ -1460,12 +1463,18 @@ If INPUT-METHOD is nil, deactivate any current input method."
        (progn
          (setq input-method-function nil
                current-input-method-title nil)
-         (funcall inactivate-current-input-method-function))
+         (funcall deactivate-current-input-method-function))
       (unwind-protect
-         (run-hooks 'input-method-inactivate-hook)
+         (run-hooks
+          'input-method-inactivate-hook ; for backward compatibility
+          'input-method-deactivate-hook)
        (setq current-input-method nil)
        (force-mode-line-update)))))
 
+(define-obsolete-function-alias
+  'inactivate-input-method
+  'deactivate-input-method "24.2")
+
 (defun set-input-method (input-method &optional interactive)
   "Select and activate input method INPUT-METHOD for the current buffer.
 This also sets the default input method to the one you specify.
@@ -1476,7 +1485,7 @@ When called interactively, the optional arg INTERACTIVE is non-nil,
 which marks the variable `default-input-method' as set for Custom buffers.
 
 To deactivate the input method interactively, use \\[toggle-input-method].
-To deactivate it programmatically, use `inactivate-input-method'."
+To deactivate it programmatically, use `deactivate-input-method'."
   (interactive
    (let* ((default (or (car input-method-history) default-input-method)))
      (list (read-input-method-name
@@ -1513,7 +1522,7 @@ which marks the variable `default-input-method' as set for Custom buffers."
   (if toggle-input-method-active
       (error "Recursive use of `toggle-input-method'"))
   (if (and current-input-method (not arg))
-      (inactivate-input-method)
+      (deactivate-input-method)
     (let ((toggle-input-method-active t)
          (default (or (car input-method-history) default-input-method)))
       (if (and arg default (equal current-input-method default)
@@ -1640,13 +1649,18 @@ just activated."
   :type 'hook
   :group 'mule)
 
-(defcustom input-method-inactivate-hook nil
-  "Normal hook run just after an input method is inactivated.
+(define-obsolete-variable-alias
+  'input-method-inactivate-hook
+  'input-method-deactivate-hook "24.2")
+
+(defcustom input-method-deactivate-hook nil
+  "Normal hook run just after an input method is deactivated.
 
 The variable `current-input-method' still keeps the input method name
-just inactivated."
+just deactivated."
   :type 'hook
-  :group 'mule)
+  :group 'mule
+  :version "24.2")
 
 (defcustom input-method-after-insert-chunk-hook nil
   "Normal hook run just after an input method insert some chunk of text."
@@ -1828,7 +1842,7 @@ The default status is as follows:
     (set-terminal-coding-system (or coding-system coding) display)))
 
 (defun set-language-environment (language-name)
-  "Set up multi-lingual environment for using LANGUAGE-NAME.
+  "Set up multilingual environment for using LANGUAGE-NAME.
 This sets the coding system priority and the default input method
 and sometimes other things.  LANGUAGE-NAME should be a string
 which is the name of a language environment.  For example, \"Latin-1\"
@@ -2500,7 +2514,7 @@ For example, translate \"swedish\" into \"sv_SE.ISO8859-1\"."
     locale))
 
 (defun set-locale-environment (&optional locale-name frame)
-  "Set up multi-lingual environment for using LOCALE-NAME.
+  "Set up multilingual environment for using LOCALE-NAME.
 This sets the language environment, the coding system priority,
 the default input method and sometimes other things.
 
@@ -2662,15 +2676,6 @@ See also `locale-charset-language-names', `locale-language-names',
          (unless frame (setq locale-coding-system code-page-coding))
          (set-keyboard-coding-system code-page-coding frame)
          (set-terminal-coding-system code-page-coding frame)
-         ;; Set default-file-name-coding-system last, so that Emacs
-         ;; doesn't try to use cpNNNN when it defines keyboard and
-         ;; terminal encoding.  That's because the above two lines
-         ;; will want to load code-pages.el, where cpNNNN are
-         ;; defined; if default-file-name-coding-system were set to
-         ;; cpNNNN while these two lines run, Emacs will want to use
-         ;; it for encoding the file name it wants to load.  And that
-         ;; will fail, since cpNNNN is not yet usable until
-         ;; code-pages.el finishes loading.
          (setq default-file-name-coding-system code-page-coding))))
 
     (when (eq system-type 'darwin)
@@ -2954,43 +2959,7 @@ point or a number in hash notation, e.g. #o21430 for octal,
      (t
       (cdr (assoc-string input (ucs-names) t))))))
 
-(defun ucs-insert (character &optional count inherit)
-  "Insert COUNT copies of CHARACTER of the given Unicode code point.
-Interactively, prompts for a Unicode character name or a hex number
-using `read-char-by-name'.
-
-You can type a few of the first letters of the Unicode name and
-use completion.  If you type a substring of the Unicode name
-preceded by an asterisk `*' and use completion, it will show all
-the characters whose names include that substring, not necessarily
-at the beginning of the name.
-
-This function also accepts a hexadecimal number of Unicode code
-point or a number in hash notation, e.g. #o21430 for octal,
-#x2318 for hex, or #10r8984 for decimal.
-
-The optional third arg INHERIT (non-nil when called interactively),
-says to inherit text properties from adjoining text, if those
-properties are sticky."
-  (interactive
-   (list (read-char-by-name "Unicode (name or hex): ")
-        (prefix-numeric-value current-prefix-arg)
-        t))
-  (unless count (setq count 1))
-  (if (and (stringp character)
-          (string-match-p "\\`[0-9a-fA-F]+\\'" character))
-      (setq character (string-to-number character 16)))
-  (cond
-   ((null character)
-    (error "Not a Unicode character"))
-   ((not (integerp character))
-    (error "Not a Unicode character code: %S" character))
-   ((or (< character 0) (> character #x10FFFF))
-    (error "Not a Unicode character code: 0x%X" character)))
-  (if inherit
-      (dotimes (i count) (insert-and-inherit character))
-    (dotimes (i count) (insert character))))
-
-(define-key ctl-x-map "8\r" 'ucs-insert)
+(define-obsolete-function-alias 'ucs-insert 'insert-char "24.2")
+(define-key ctl-x-map "8\r" 'insert-char)
 
 ;;; mule-cmds.el ends here