Mercurial > hg > xemacs-beta
diff lisp/iso8859-1.el @ 5321:57a64ab2ae45
Implement some basic Lisp functions in terms of Common Lisp builtins.
2010-12-30 Aidan Kehoe <kehoea@parhasard.net>
* simple.el (assoc-ignore-case): Remove a duplicate definition of
this function (it's already in subr.el).
* iso8859-1.el (char-width):
On non-Mule, make this function equivalent to that produced by
(constantly 1), but preserve its docstring.
* subr.el (subst-char-in-string): Define this in terms of
#'substitute, #'nsubstitute.
(string-width): Define this using #'reduce and #'char-width.
(char-width): Give this a simpler definition, it makes far more
sense to check for mule at load time and redefine, as we do in
iso8859-1.el.
(store-substring): Implement this in terms of #'replace, now
#'replace is cheap.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Thu, 30 Dec 2010 01:00:40 +0000 |
parents | 0cee1ff42db4 |
children | 6506fcb40fcf |
line wrap: on
line diff
--- a/lisp/iso8859-1.el Thu Dec 30 00:50:10 2010 +0000 +++ b/lisp/iso8859-1.el Thu Dec 30 01:00:40 2010 +0000 @@ -84,6 +84,17 @@ ;; by default. (setq-default ctl-arrow #xA0) +(when (and (compiled-function-p (symbol-function 'char-width)) + (not (featurep 'mule))) + (defalias 'char-width + (let ((constantly (constantly 1))) + (make-byte-code (compiled-function-arglist constantly) + (compiled-function-instructions constantly) + (compiled-function-constants constantly) + (compiled-function-stack-depth constantly) + (compiled-function-doc-string + (symbol-function 'char-width)))))) + ;; Shouldn't be necessary, but one file in the packages uses it: (provide 'iso8859-1)