X-Git-Url: http://git.chise.org/gitweb/?p=elisp%2Fapel.git;a=blobdiff_plain;f=pccl-20.el;h=0a62e954db8525dc707bab7b2e93c931bc611a88;hp=ea672f359576b733524d34cae5f62521cb57fbfb;hb=8b0dbe5092ae30b5092d7abf96649f96635d1060;hpb=d0d940b877a5f59866d1f6be2887b1334c1a041d diff --git a/pccl-20.el b/pccl-20.el index ea672f3..0a62e95 100644 --- a/pccl-20.el +++ b/pccl-20.el @@ -20,8 +20,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: @@ -48,6 +48,26 @@ (eval-and-compile + (static-if (featurep 'xemacs) + (defadvice make-coding-system (before ccl-compat (name type &rest ad-subr-args) activate) + (when (and (integerp type) + (eq type 4) + (characterp (ad-get-arg 2)) + (stringp (ad-get-arg 3)) + (consp (ad-get-arg 4)) + (symbolp (car (ad-get-arg 4))) + (symbolp (cdr (ad-get-arg 4)))) + (setq type 'ccl) + (setq ad-subr-args + (list + (ad-get-arg 3) + (append + (list + 'mnemonic (char-to-string (ad-get-arg 2)) + 'decode (symbol-value (car (ad-get-arg 4))) + 'encode (symbol-value (cdr (ad-get-arg 4)))) + (ad-get-arg 5))))))) + (if (featurep 'xemacs) (defun make-ccl-coding-system (name mnemonic docstring decoder encoder) "\ @@ -80,8 +100,7 @@ CODING-SYSTEM, DECODER and ENCODER must be symbol." (defun ccl-execute (ccl-prog reg) "\ Execute CCL-PROG with registers initialized by REGISTERS. -If CCL-PROG is symbol, it is dereferenced. -\[Emacs 20.3 emulating function]" +If CCL-PROG is symbol, it is dereferenced." (ccl-vector-program-execute (if (symbolp ccl-prog) (symbol-value ccl-prog) ccl-prog) reg))) @@ -92,8 +111,7 @@ If CCL-PROG is symbol, it is dereferenced. (defun ccl-execute-on-string (ccl-prog status string &optional contin) "\ Execute CCL-PROG with initial STATUS on STRING. -If CCL-PROG is symbol, it is dereferenced. -\[Emacs 20.3 emulating function]" +If CCL-PROG is symbol, it is dereferenced." (ccl-vector-program-execute-on-string (if (symbolp ccl-prog) (symbol-value ccl-prog) ccl-prog) status string contin))) @@ -114,19 +132,19 @@ If CCL-PROG is symbol, it is dereferenced. ) (broken-facility ccl-execute-eof-block-on-encoding-null - "Emacs forgets executing CCL_EOF_BLOCK with encoding on empty input." + "Emacs forgets executing CCL_EOF_BLOCK with encoding on empty input. (Fixed on Emacs 20.4)" (equal (encode-coding-string "" 'test-ccl-eof-block-cs) "[EOF]")) (broken-facility ccl-execute-eof-block-on-encoding-some - "Emacs forgets executing CCL_EOF_BLOCK with encoding on non-empty input." + "Emacs forgets executing CCL_EOF_BLOCK with encoding on non-empty input. (Fixed on Emacs 20.3)" (equal (encode-coding-string "a" 'test-ccl-eof-block-cs) "a[EOF]")) (broken-facility ccl-execute-eof-block-on-decoding-null - "Emacs forgets executing CCL_EOF_BLOCK with decoding on empty input." + "Emacs forgets executing CCL_EOF_BLOCK with decoding on empty input. (Fixed on Emacs 20.4)" (equal (decode-coding-string "" 'test-ccl-eof-block-cs) "[EOF]")) (broken-facility ccl-execute-eof-block-on-decoding-some - "Emacs forgets executing CCL_EOF_BLOCK with decoding on non-empty input." + "Emacs forgets executing CCL_EOF_BLOCK with decoding on non-empty input. (Fixed on Emacs 20.4)" (equal (decode-coding-string "a" 'test-ccl-eof-block-cs) "a[EOF]")) (broken-facility ccl-execute-eof-block-on-encoding @@ -151,6 +169,7 @@ If CCL-PROG is symbol, it is dereferenced. ;;; @ end ;;; -(provide 'pccl-20) +(require 'product) +(product-provide (provide 'pccl-20) (require 'apel-ver)) ;;; pccl-20.el ends here