- (make-sparse-keymap "Set Coding System"))
-
-(define-key-after mule-menu-keymap [set-language-environment]
- (list 'menu-item "Set Language Environment" setup-language-environment-map))
-(define-key-after mule-menu-keymap [separator-mule]
- '("--")
- t)
-(define-key-after mule-menu-keymap [toggle-input-method]
- '(menu-item "Toggle Input Method" toggle-input-method)
- t)
-(define-key-after mule-menu-keymap [set-input-method]
- '(menu-item "Select Input Method..." set-input-method)
- t)
-(define-key-after mule-menu-keymap [describe-input-method]
- '(menu-item "Describe Input Method" describe-input-method))
-(define-key-after mule-menu-keymap [separator-input-method]
- '("--")
- t)
-(define-key-after mule-menu-keymap [set-various-coding-system]
- (list 'menu-item "Set Coding Systems" set-coding-system-map
- :enable 'default-enable-multibyte-characters))
-(define-key-after mule-menu-keymap [view-hello-file]
- '(menu-item "Show Multi-lingual Text" view-hello-file
- :enable (file-readable-p
- (expand-file-name "HELLO" data-directory))
- :help "Display file which says HELLO in many languages")
- t)
-(define-key-after mule-menu-keymap [separator-coding-system]
- '("--")
- t)
-(define-key-after mule-menu-keymap [describe-language-environment]
- (list 'menu-item "Describe Language Environment"
- describe-language-environment-map
- :help "Show multilingual settings for a specific language")
- t)
-(define-key-after mule-menu-keymap [describe-input-method]
- '(menu-item "Describe Input Method..." describe-input-method
- :help "Keyboard layout for a specific input method")
- t)
-(define-key-after mule-menu-keymap [describe-coding-system]
- '(menu-item "Describe Coding System..." describe-coding-system)
- t)
-(define-key-after mule-menu-keymap [list-character-sets]
- '(menu-item "List Character Sets" list-character-sets
- :help "Show table of available character sets"))
-(define-key-after mule-menu-keymap [mule-diag]
- '(menu-item "Show All of Mule Status" mule-diag
- :help "Display multilingual environment settings")
- t)
-
-(define-key-after set-coding-system-map [universal-coding-system-argument]
- '(menu-item "For Next Command" universal-coding-system-argument
- :help "Coding system to be used by next command")
- t)
-(define-key-after set-coding-system-map [separator-1]
- '("--")
- t)
-(define-key-after set-coding-system-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")
- t)
-(define-key-after set-coding-system-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")
- t)
-(define-key-after set-coding-system-map [set-file-name-coding-system]
- '(menu-item "For File Name" set-file-name-coding-system
- :help "How to decode/encode file names")
- t)
-(define-key-after set-coding-system-map [separator-2]
- '("--")
- t)
-
-(define-key-after set-coding-system-map [set-keyboard-coding-system]
- '(menu-item "For Keyboard" set-keyboard-coding-system
- :help "How to decode keyboard input")
- t)
-(define-key-after set-coding-system-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")
- t)
-(define-key-after set-coding-system-map [separator-3]
- '("--")
- t)
-(define-key-after set-coding-system-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")
- t)
-(define-key-after set-coding-system-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")
- t)
-(define-key-after set-coding-system-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 "How to en/decode I/O from/to subprocess connected to this buffer")
- t)
-
-
-(define-key setup-language-environment-map
- [Default] '(menu-item "Default" setup-specified-language-environment))
-
-(define-key describe-language-environment-map
- [Default] '(menu-item "Default" describe-specified-language-support))
+ (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
+ :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")))
+ 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
+ :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)
+
+ (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")))
+ map)
+ "Keymap for Mule (Multilingual environment) menu specific commands.")