From 0ba0526ab300ca296793742bbbf5d634ccbfd962 Mon Sep 17 00:00:00 2001 From: yamaoka Date: Wed, 9 Dec 1998 08:08:36 +0000 Subject: [PATCH] * poem-20.el, poem-e20_2.el, poem-ltn1.el, poem-nemacs.el, poem-om.el (find-file-noselect-as-binary): New function. (find-file-noselect-as-raw-text): New function. (find-file-noselect-as-specified-coding-system): New function. * poem-nemacs.el (insert-file-contents-as-binary): Call `insert-file-contents' with only two args - FILENAME and VISIT. (insert-file-contents-as-raw-text): Likewise. (insert-file-contents-as-specified-coding-system): Likewise. --- ChangeLog | 12 ++++++++++++ poem-20.el | 25 +++++++++++++++++++++++-- poem-e20_2.el | 35 +++++++++++++++++++++++++++++++++++ poem-ltn1.el | 14 ++++++++++++++ poem-nemacs.el | 24 +++++++++++++++++++++--- poem-om.el | 25 +++++++++++++++++++++++++ 6 files changed, 130 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 482935a..4c07a17 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +1998-12-09 Katsumi Yamaoka + + * poem-20.el, poem-e20_2.el, poem-ltn1.el, poem-nemacs.el, poem-om.el + (find-file-noselect-as-binary): New function. + (find-file-noselect-as-raw-text): New function. + (find-file-noselect-as-specified-coding-system): New function. + + * poem-nemacs.el (insert-file-contents-as-binary): Call + `insert-file-contents' with only two args - FILENAME and VISIT. + (insert-file-contents-as-raw-text): Likewise. + (insert-file-contents-as-specified-coding-system): Likewise. + 1998-12-09 Yuuichi Teranishi * poe-18.el (make-directory-internal): Rewrite. diff --git a/poem-20.el b/poem-20.el index 8ac9b23..1052dd8 100644 --- a/poem-20.el +++ b/poem-20.el @@ -76,6 +76,19 @@ 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 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) @@ -95,8 +108,7 @@ ARGS must be a coding-system." format-alist) (apply 'insert-file-contents filename (nreverse (cdr (nreverse args)))))) -(defun write-region-as-specified-coding-system (start end filename - &rest args) +(defun write-region-as-specified-coding-system (start end filename &rest args) "Like `write-region', q.v., but code convert by the specified coding-system. ARGS the optional arguments are passed to `write-region' except for the last element. The last element of ARGS must be a coding-system." @@ -105,6 +117,15 @@ element. The last element of ARGS must be a coding-system." (apply 'write-region start end filename (nreverse (cdr (nreverse args)))))) +(defun find-file-noselect-as-specified-coding-system (filename &optional args) + "Like `find-file-noselect', q.v., but code convert by the specified +coding-system. ARGS the optional arguments are passed to `find-file-noselect' +except for the last element. The last element of ARGS must be a +coding-system." + (let ((coding-system-for-read (car (reverse args))) + format-alist) + (apply' find-file-noselect filename (nreverse (cdr (nreverse args)))))) + ;;; @ end ;;; diff --git a/poem-e20_2.el b/poem-e20_2.el index f2009a5..77a3ee5 100644 --- a/poem-e20_2.el +++ b/poem-e20_2.el @@ -120,6 +120,27 @@ code." ;; This operation does not change the length. (set-buffer-multibyte flag)))) +(defun find-file-noselect-as-binary (filename &optional nowarn rawfile) + "Like `find-file-noselect', q.v., but don't code and format conversion." + (let ((flag enable-multibyte-characters) + (coding-system-for-read 'binary) + format-alist) + (save-current-buffer + (prog1 + (set-buffer (find-file-noselect filename nowarn rawfile)) + (set-buffer-multibyte flag))))) + +(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 ((flag enable-multibyte-characters) + (coding-system-for-read 'raw-text) + format-alist) + (save-current-buffer + (prog1 + (set-buffer (find-file-noselect filename nowarn rawfile)) + (set-buffer-multibyte flag))))) + ;;; @ with code-conversion ;;; @@ -137,6 +158,20 @@ ARGS must be a coding-system." (nreverse (cdr (nreverse args)))) (set-buffer-multibyte flag)))) +(defun find-file-noselect-as-specified-coding-system (filename &optional args) + "Like `find-file-noselect', q.v., but code convert by the specified +coding-system. ARGS the optional arguments are passed to `find-file-noselect' +except for the last element. The last element of ARGS must be a +coding-system." + (let ((flag enable-multibyte-characters) + (coding-system-for-read (car (reverse args))) + format-alist) + (save-current-buffer + (prog1 + (set-buffer (apply' find-file-noselect filename + (nreverse (cdr (nreverse args))))) + (set-buffer-multibyte flag))))) + ;;; @ end ;;; diff --git a/poem-ltn1.el b/poem-ltn1.el index b77a159..6a25c2e 100644 --- a/poem-ltn1.el +++ b/poem-ltn1.el @@ -156,6 +156,13 @@ code conversion will not take place." (defalias 'insert-file-contents-as-raw-text 'insert-file-contents) +(defun find-file-noselect-as-binary (filename &optional nowarn rawfile) + "Like `find-file-noselect', q.v., but don't code and format conversion." + (let ((emx-binary-mode t)) + (find-file-noselect filename nowarn rawfile))) + +(defalias find-file-noselect-as-raw-text 'find-file-noselect) + (defun open-network-stream-as-binary (name buffer host service) "Like `open-network-stream', q.v., but don't code conversion." (let ((emx-binary-mode t)) @@ -181,6 +188,13 @@ element. The last element of ARGS must be a coding-system." (apply 'write-region start end filename (nreverse (cdr (nreverse args)))))) +(defun find-file-noselect-as-specified-coding-system (filename &optional args) + "Like `find-file-noselect', q.v., but code convert by the specified +coding-system. ARGS the optional arguments are passed to `find-file-noselect' +except for the last element. The last element of ARGS must be a +coding-system." + (apply' find-file-noselect filename (nreverse (cdr (nreverse args))))) + ;;; @ character ;;; diff --git a/poem-nemacs.el b/poem-nemacs.el index ad4b55e..66b1cc5 100644 --- a/poem-nemacs.el +++ b/poem-nemacs.el @@ -200,7 +200,7 @@ \[emu-nemacs.el]" (as-binary-input-file ;; Returns list absolute file name and length of data inserted. - (insert-file-contents filename visit beg end replace))) + (insert-file-contents filename visit))) (defun insert-file-contents-as-raw-text (filename &optional visit beg end replace) @@ -208,7 +208,7 @@ \[emu-nemacs.el]" (as-binary-input-file ;; Returns list absolute file name and length of data inserted. - (insert-file-contents filename visit beg end replace))) + (insert-file-contents filename visit))) (defun write-region-as-raw-text-CRLF (start end filename &optional append visit lockname) @@ -222,6 +222,15 @@ (write-region-as-binary (point-min)(point-max) filename append visit)))) +(defun find-file-noselect-as-binary (filename &optional nowarn rawfile) + "Like `find-file-noselect', q.v., but don't code conversion." + (as-binary-input-file (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 conversion +except for line-break code." + (as-binary-input-file (find-file-noselect filename nowarn rawfile))) + (defun open-network-stream-as-binary (name buffer host service) "Like `open-network-stream', q.v., but don't code conversion." (let ((process (open-network-stream name buffer host service))) @@ -239,7 +248,7 @@ coding-system. ARGS the optional arguments are passed to ARGS must be a coding-system." (let ((kanji-fileio-code (car (reverse args))) kanji-expected-code) - (apply' insert-file-contents filename (nreverse (cdr (nreverse args)))))) + (insert-file-contents filename (car (nreverse (cdr (nreverse args))))))) (defun write-region-as-specified-coding-system (start end filename &rest args) @@ -251,6 +260,15 @@ element. The last element of ARGS must be a coding-system." (apply 'write-region start end filename (nreverse (cdr (nreverse args)))))) +(defun find-file-noselect-as-specified-coding-system (filename &optional args) + "Like `find-file-noselect', q.v., but code convert by the specified +coding-system. ARGS the optional arguments are passed to `find-file-noselect' +except for the last element. The last element of ARGS must be a +coding-system." + (let ((kanji-fileio-code (car (reverse args))) + kanji-expected-code) + (apply' find-file-noselect filename (nreverse (cdr (nreverse args)))))) + ;;; @ buffer representation ;;; diff --git a/poem-om.el b/poem-om.el index 6ca69e6..45422b5 100644 --- a/poem-om.el +++ b/poem-om.el @@ -224,6 +224,23 @@ find-file-hooks, etc. filename append visit)))) )) +(defun find-file-noselect-as-binary (filename &optional nowarn rawfile) + "Like `find-file-noselect', q.v., but don't code and format conversion." + (as-binary-input-file (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 ((buffer (get-file-buffer filename))) + (save-current-buffer + (prog1 + (set-buffer (find-file-noselect-as-binary filename nowarn rawfile)) + (unless buffer + (while (re-search-forward "\r$" nil t) + (replace-match "")) + (goto-char (point-min)) + (set-buffer-modified-p nil)))))) + (defun open-network-stream-as-binary (name buffer host service) "Like `open-network-stream', q.v., but don't code conversion." (let ((process (open-network-stream name buffer host service))) @@ -270,6 +287,14 @@ coding-system." (write-region start end filename (car args) (car (cdr args)) code))) )) +(defun find-file-noselect-as-specified-coding-system (filename &optional args) + "Like `find-file-noselect', q.v., but code convert by the specified +coding-system. ARGS the optional arguments are passed to `find-file-noselect' +except for the last element. The last element of ARGS must be a +coding-system." + (let ((file-coding-system-for-read (car (reverse args)))) + (apply' find-file-noselect filename (nreverse (cdr (nreverse args)))))) + ;;; @ buffer representation ;;; -- 1.7.10.4