X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=emu.el;h=b6c36dcbe6746e19e1f5e895a1fc9f99cbfcea16;hb=cc97e1054659c154d67b72fa9a19b0a511253377;hp=038b7fbce1d58aab6418a8aec6dfc8dd2ffe870b;hpb=1ae89b6d8ae0a636033527550cefe61da60db518;p=elisp%2Fapel.git diff --git a/emu.el b/emu.el index 038b7fb..b6c36dc 100644 --- a/emu.el +++ b/emu.el @@ -3,7 +3,7 @@ ;; Copyright (C) 1995,1996,1997,1998 Free Software Foundation, Inc. ;; Author: MORIOKA Tomohiko -;; Keywords: emulation, compatibility, NEmacs, MULE, Emacs/mule, XEmacs +;; Keywords: emulation, compatibility, Nemacs, MULE, Emacs/mule, XEmacs ;; This file is part of emu. @@ -19,8 +19,8 @@ ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301, USA. ;;; Code: @@ -74,7 +74,7 @@ (defalias 'tl:overlay-put 'overlay-put) (make-obsolete 'tl:overlay-put 'overlay-put) ) -(unless (fboundp 'tl:overlay-put) +(unless (fboundp 'tl:overlay-buffer) (defalias 'tl:overlay-buffer 'overlay-buffer) (make-obsolete 'tl:overlay-buffer 'overlay-buffer) ) @@ -98,7 +98,12 @@ CHAR can be any multilingual character TABLE defaults to the current buffer's category table." (mapconcat (lambda (chr) - (char-to-string (int-char chr))) + (if (integerp chr) + (char-to-string (int-char chr)) + (char-to-string chr))) + ;; `char-category-list' returns a list of + ;; characters in XEmacs 21.2.25 and later, + ;; otherwise integers. (char-category-list character) "")) ) @@ -118,7 +123,7 @@ TABLE defaults to the current buffer's category table." )) ) ((boundp 'NEMACS) - ;; for NEmacs and NEpoch + ;; for Nemacs and Nepoch ;; old MULE emulation (defconst *noconv* 0) @@ -130,7 +135,7 @@ TABLE defaults to the current buffer's category table." (defun code-convert-string (str ic oc) "Convert code in STRING from SOURCE code to TARGET code, -On successful converion, returns the result string, +On successful conversion, returns the result string, else returns nil." (if (not (eq ic oc)) (convert-string-kanji-code str ic oc) @@ -157,7 +162,7 @@ else returns nil." (defun code-convert-string (str ic oc) "Convert code in STRING from SOURCE code to TARGET code, -On successful converion, returns the result string, +On successful conversion, returns the result string, else returns nil. [emu-latin1.el; old MULE emulating function]" str) @@ -223,10 +228,35 @@ find-file-hooks, etc. (autoload 'enriched-decode "tinyrich") )) +(if (or (and (eq emacs-major-version 19) + (>= emacs-minor-version (if (featurep 'xemacs) 14 29))) + (and (eq emacs-major-version 20) + (< emacs-minor-version (if (featurep 'xemacs) 3 1)))) + (eval-after-load "enriched" + '(if (fboundp 'si:enriched-encode) + nil + (fset 'si:enriched-encode (symbol-function 'enriched-encode)) + (defun enriched-encode (from to &optional orig-buf) + (let* ((si:enriched-initial-annotation enriched-initial-annotation) + (enriched-initial-annotation + (if (stringp si:enriched-initial-annotation) + si:enriched-initial-annotation + (function + (lambda () + (save-excursion + ;; Eval this in the buffer we are annotating. This + ;; fixes a bug which was saving incorrect File-Width + ;; information, since we were looking at local + ;; variables in the wrong buffer. + (if orig-buf (set-buffer orig-buf)) + (funcall si:enriched-initial-annotation))))))) + (si::enriched-encode from to)))))) + ;;; @ end ;;; -(provide 'emu) +(require 'product) +(product-provide (provide 'emu) (require 'apel-ver)) ;;; emu.el ends here