APEL 3.4.1.
[elisp/apel.git] / emu-mule.el
index 12ba4eb..1ae0651 100644 (file)
@@ -1,12 +1,12 @@
 ;;; emu-mule.el --- emu module for Mule 1.* and Mule 2.*
 
-;; Copyright (C) 1995,1996 Free Software Foundation, Inc.
+;; Copyright (C) 1995,1996,1997 MORIOKA Tomohiko
 
 ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
-;; Version: $Id: emu-mule.el,v 7.58 1996/10/20 00:13:58 morioka Exp $
+;; Version: $Id: emu-mule.el,v 7.64 1997/08/30 09:42:40 morioka Exp $
 ;; Keywords: emulation, compatibility, Mule
 
-;; This file is part of tl (Tiny Library).
+;; This file is part of emu.
 
 ;; This program is free software; you can redistribute it and/or
 ;; modify it under the terms of the GNU General Public License as
        )
       (running-emacs-18
        (require 'emu-18)
-       (defun tl:make-overlay (beg end &optional buffer type))
-       (defun tl:overlay-put (overlay prop value))
+       (defun make-overlay (beg end &optional buffer type))
+       (defun overlay-put (overlay prop value))
        ))
 
 
 ;;; @ character set
 ;;;
 
+(defalias 'make-char 'make-character)
+
 (defalias 'find-non-ascii-charset-string 'find-charset-string)
 (defalias 'find-non-ascii-charset-region 'find-charset-region)
 
   (code-convert-region start end *internal* coding-system)
   )
 
+(defun decode-coding-region (start end coding-system)
+  "Decode the text between START and END which is encoded in CODING-SYSTEM.
+\[emu-mule.el; EMACS 20 emulating function]"
+  (code-convert-region start end coding-system *internal*)
+  )
+
+(defun encode-coding-string (str coding-system)
+  "Encode the STRING to CODING-SYSTEM.
+\[emu-mule.el; EMACS 20 emulating function]"
+  (code-convert-string str *internal* coding-system)
+  )
+
 (defun decode-coding-string (str coding-system)
   "Decode the string STR which is encoded in CODING-SYSTEM.
-\[emu-mule.el]"
+\[emu-mule.el; EMACS 20 emulating function]"
   (let ((len (length str))
        ret)
     (while (and
        (,@ body)
        )))
 
+(defmacro as-binary-output-file (&rest body)
+  (` (let (mc-flag
+          (file-coding-system *noconv*)
+          )
+       (,@ body)
+       )))
+
 (defalias 'set-process-input-coding-system 'set-process-coding-system)
 
 
+;;; @ binary access
+;;;
+
+(defun insert-binary-file-contents-literally
+  (filename &optional visit beg end replace)
+  "Like `insert-file-contents-literally', q.v., but don't code conversion.
+A buffer may be modified in several ways after reading into the buffer due
+to advanced Emacs features, such as file-name-handlers, format decoding,
+find-file-hooks, etc.
+  This function ensures that none of these modifications will take place."
+  (let (mc-flag
+       (file-coding-system *noconv*)
+       )
+    (insert-file-contents-literally filename visit beg end replace)
+    ))
+
+
 ;;; @ MIME charset
 ;;;