* poem-20.el, poem-ltn1.el, poem-nemacs.el, poem-om.el
[elisp/apel.git] / poem-20.el
index 5c8cbfc..e4e2786 100644 (file)
@@ -51,7 +51,7 @@
                                     &optional append visit lockname)
   "Like `write-region', q.v., but don't encode."
   (let ((coding-system-for-write 'binary)
-       jka-compr-compression-info-list)
+       jka-compr-compression-info-list jam-zcat-filename-list)
     (write-region start end filename append visit lockname)))
 
 ;; `insert-file-contents-literally' of Emacs 20 supports
@@ -76,6 +76,69 @@ code."
   (let ((coding-system-for-write 'raw-text-dos))
     (write-region start end filename append visit lockname)))
 
+(defun find-file-noselect-as-binary (filename &optional nowarn rawfile)
+  "Like `find-file-noselect', q.v., but don't code and format conversion."
+  (let ((coding-system-for-write 'binary)
+       format-alist)
+    (find-file-noselect filename nowarn rawfile)))
+
+(defun find-file-noselect-as-raw-text (filename &optional nowarn rawfile)
+  "Like `find-file-noselect', q.v., but it does not code and format conversion
+except for line-break code."
+  (let ((coding-system-for-read 'raw-text)
+       format-alist)
+    (find-file-noselect filename nowarn rawfile)))
+
+(defun save-buffer-as-binary (&optional args)
+  "Like `save-buffer', q.v., but don't encode."
+  (let ((coding-system-for-write 'binary))
+    (save-buffer args)))
+
+(defun save-buffer-as-raw-text-CRLF (&optional args)
+  "Like `save-buffer', q.v., but save as network representation."
+  (let ((coding-system-for-write 'raw-text-dos))
+    (save-buffer args)))
+
+(defun open-network-stream-as-binary (name buffer host service)
+  "Like `open-network-stream', q.v., but don't code conversion."
+  (let ((coding-system-for-read 'binary)
+       (coding-system-for-write 'binary))
+    (open-network-stream name buffer host service)))
+
+
+;;; @ with code-conversion
+;;;
+
+(defun insert-file-contents-as-coding-system
+  (coding-system filename &optional visit beg end replace)
+  "Like `insert-file-contents', q.v., but CODING-SYSTEM the first arg will
+be applied to `coding-system-for-read'."
+  (let ((coding-system-for-read coding-system)
+       format-alist)
+    (insert-file-contents filename visit beg end replace)))
+
+(defun write-region-as-coding-system
+  (coding-system start end filename &optional append visit lockname)
+  "Like `write-region', q.v., but CODING-SYSTEM the first arg will be
+applied to `coding-system-for-write'."
+  (let ((coding-system-for-write coding-system)
+       jka-compr-compression-info-list jam-zcat-filename-list)
+    (write-region start end filename append visit lockname)))
+
+(defun find-file-noselect-as-coding-system
+  (coding-system filename &optional nowarn rawfile)
+  "Like `find-file-noselect', q.v., but CODING-SYSTEM the first arg will
+be applied to `coding-system-for-read'."
+  (let ((coding-system-for-read coding-system)
+       format-alist)
+    (find-file-noselect filename nowarn rawfile)))
+
+(defun save-buffer-as-coding-system (coding-system &optional args)
+  "Like `save-buffer', q.v., but CODING-SYSTEM the first arg will be
+applied to `coding-system-for-write'."
+  (let ((coding-system-for-write coding-system))
+    (save-buffer args)))
+
 
 ;;; @ end
 ;;;