Mercurial > hg > xemacs-beta
comparison lisp/x-init.el @ 4627:fdc76fec36d3
Vastly expand the characters x-compose.el supports.
2009-03-01 Aidan Kehoe <kehoea@parhasard.net>
* x-compose.el:
Document an XIM bug, and how one might work around it.
(define-compose-map):
Revise this macro, call it with compose-caron-map,
compose-macron-map, compose-breve-map, compose-dot-map,
compose-doubleacute-map, compose-ogonek-map, compose-hook-map,
compose-horn-map as well as the previous existing maps.
(compose-map):
Add entries for caron, macron, doubleacute, ogonek, breve and
abovedot to this map.
Add an assert, this code assumes that a non-Mule build has no
character codes above U+00FF.
Incorporate all the precomposed Latin characters in
UnicodeData.txt that we can into the maps, deciding at runtime on
which exactly depending on whether this is a non-Mule or a Mule
build.
Remove a commented-out old X11 bug workaround.
Use #'flet instead of defun + unintern for
#'alias-colon-to-doublequote.
Correct #'electric-diacritic to work with the keyboard macro
versions of the maps.
(compose-help):
This has been turned off since 1994; no-one appears to have
noticed, since the normal help mechanism offers similar
functionality and is actually maintained. Removed entirely.
Remove a superflous setting of a default value for ctl-arrow.
* x-init.el (x-initialize-compose):
Support the new dead key maps we just added to x-compose.el with
autoloads here.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 01 Mar 2009 11:11:46 +0000 |
parents | b75b075a9041 |
children | dceee3855f15 |
comparison
equal
deleted
inserted
replaced
4626:f1bb4cc3144a | 4627:fdc76fec36d3 |
---|---|
84 ;; Load X-server specific code. | 84 ;; Load X-server specific code. |
85 ;; Specifically, load some code to repair the grievous damage that MIT and | 85 ;; Specifically, load some code to repair the grievous damage that MIT and |
86 ;; Sun have done to the default keymap for the Sun keyboards. | 86 ;; Sun have done to the default keymap for the Sun keyboards. |
87 (defun x-initialize-compose (device) | 87 (defun x-initialize-compose (device) |
88 "Enable compose key and dead key processing on DEVICE." | 88 "Enable compose key and dead key processing on DEVICE." |
89 (autoload 'compose-map "x-compose" nil t 'keymap) | 89 (loop for map in '(compose-map compose-acute-map compose-grave-map |
90 (autoload 'compose-acute-map "x-compose" nil t 'keymap) | 90 compose-cedilla-map compose-diaeresis-map |
91 (autoload 'compose-grave-map "x-compose" nil t 'keymap) | 91 compose-circumflex-map compose-tilde-map |
92 (autoload 'compose-cedilla-map "x-compose" nil t 'keymap) | 92 compose-ring-map compose-caron-map compose-macron-map |
93 (autoload 'compose-diaeresis-map "x-compose" nil t 'keymap) | 93 compose-breve-map compose-dot-map |
94 (autoload 'compose-circumflex-map "x-compose" nil t 'keymap) | 94 compose-doubleacute-map compose-ogonek-map |
95 (autoload 'compose-tilde-map "x-compose" nil t 'keymap) | 95 compose-hook-map compose-horn-map) |
96 do (autoload map "x-compose" nil t 'keymap)) | |
96 | 97 |
97 (loop | 98 (loop |
98 for (key map) | 99 for (key map) |
99 ;; The dead keys might really be called just about anything, depending | 100 ;; The dead keys might really be called just about anything, depending |
100 ;; on the vendor. MIT thinks that the prefixes are "SunFA_", "D", and | 101 ;; on the vendor. MIT thinks that the prefixes are "SunFA_", "D", and |
193 ;; fucking random, considering it doesn't happen for any other | 194 ;; fucking random, considering it doesn't happen for any other |
194 ;; character sets. | 195 ;; character sets. |
195 (dead-acute compose-acute-map) | 196 (dead-acute compose-acute-map) |
196 (dead-grave compose-grave-map) | 197 (dead-grave compose-grave-map) |
197 (dead-cedilla compose-cedilla-map) | 198 (dead-cedilla compose-cedilla-map) |
198 (dead-diaeresis compose-diaeresis-map) | 199 (dead-diaeresis compose-diaeresis-map) |
199 (dead-circum compose-circumflex-map) | 200 (dead-circum compose-circumflex-map) |
200 (dead-circumflex compose-circumflex-map) | 201 (dead-circumflex compose-circumflex-map) |
201 (dead-tilde compose-tilde-map)) | 202 (dead-tilde compose-tilde-map) |
203 (dead-abovering compose-ring-map) | |
204 (dead-caron compose-caron-map) | |
205 (dead-macron compose-macron-map) | |
206 (dead-breve compose-breve-map) | |
207 (dead-abovedot compose-dot-map) | |
208 (dead-doubleacute compose-doubleacute-map) | |
209 (dead-ogonek compose-ogonek-map) | |
210 (dead-hook compose-hook-map) | |
211 (dead-horn compose-horn-map)) | |
202 | 212 |
203 ;; Get the correct value for function-key-map | 213 ;; Get the correct value for function-key-map |
204 with function-key-map = (symbol-value-in-console 'function-key-map | 214 with function-key-map = (symbol-value-in-console 'function-key-map |
205 (device-console device) | 215 (device-console device) |
206 function-key-map) | 216 function-key-map) |