[Mew-Win32 00255] Re: mew-win32.el: browse-url-or-mew

Hideyuki SHIRAI Shirai at example.com
1998年 2月 19日 (木) 11:51:13 JST


白井です。

From: KOSEKI Yoshinori <kose at example.com> さん曰く
Subject: [Mew-Win32 00254] Re: mew-win32.el: browse-url-or-mew
Message-ID: <xjclnv82uy4.fsf at example.com>
Date: Thu, 19 Feb 1998 11:23:31 +0900

小関> 小関> kose at example.com (KOSEKI Yoshinori) wrote:
小関> 小関> ぜーっんぶ略....(X-Mailerは読めるよね。)
小関> 
小関> SHIRAI> いかんなぁ、浮気をしたばつですね。
小関> 
小関> うぅっ!! 

小関さんの文字化けメールある程度読めましたよ。

# recjisというソフトです。
# 普段はどうしても読まなければならないSJISメールに使うのですが

小関> himi> そんな!浮気だなんて!
小関> 
小関> それぞれの良さがあるでしょうから、片っ端からなんでも使ってみ
小関> たいんですぅ。^^)
小関> 
小関> ;; Mew-* メーリングリストでは Gnusを使い、
小関> ;; mule-win32, elisp メーリングリストではMewを使い...
小関> ;; と、(逆の意味での)コウモリになってしまうかも。

はははは、なかなか面白いかも知れないですね。

小関> himi> ## こんなところでしゃべるものじゃないですね。すみません。
小関> himi> ## ごめんなさい。ごめんなさい。ゆるしてーーー
小関> himi> ## しかし、Semi-gnusユーザーしかもIMに関する私の立場を考えると、
小関> himi> ## しゃべらざるを得ないです。
小関> 
小関> まぁ、IMに関しては....

確かに。。。
しかし、以前はMHを呼んでいたわけですから、たいしてその当時と変わ
らないような気もしますが......

小関> himi> ## SEMIが入っていないだけみたいですが。
小関> 
小関> (add-hook 'message-mode-hook 'mime-edit-mode)
小関> が必要なのですか? 何もしないとmessage-modeではmime-edit-mode
小関> になっていなかったことが原因のようなのです。
小関> ;; と、ここで聞いちゃいけないかな。

私にはわからない……
私にとってのsemi-gnusはあくまでNewsReaderですから。:-p
                                   ~~~~~~
小関> himi> あ、もちろんMewユーザーも応援していますよ。^^;;;
小関> 
小関> SHIRAI> # mule for win32 MLで SEMI-gnusがはやって来ましたね。 (;_;)
小関> 
小関> 選択枝が増える事は良い事だと思います。
小関> 
小関> 『Mew から Gnus への移行について』
小関> 『Gnus から Mew への移行について』
小関> 
小関> などと言うものを書いてもいいんだけど、後者はいないような気が
小関> するのですけど.......

いやいや、けっしてそんなことは無いと思いますよ。
メーラとして、なおかつ、emacs19.28.1で動作するバージョンに限れば
Mewの方が優れていると思います。
ターゲットは Mule for Win32ユーザ!!

小関> --
小関> こせき@これがまたダメだったら...あっ石を投げないでぇ〜.

石は投げないけど、隣のビルにどなりこんだりして……
##### 意味不明の方ごめんなさい m(__)m

ついでに、現在のmew-caesar.elをつけます。変更点は

1. attachのとき、"R"でx-rot13 modeに入るとき、openning 画面をつけた。
2. 上記に新しいキーバインドを付加した。
3. とりあえず、byte-compileできるようにした。

byte-compileでエラーメッセージが出ますが、実害は無いようです。
# tmとsemiと両方ロードする人はいないでしょうから f(^^)

-------------- next part --------------
;; -*- emacs-lisp -*-
;; mew-caesar.el --- Caesar encode/decode assistant package for Mew.
;;
;;                         "Hideyuki SHIRAI" <Shirai at example.com>
;;                                            Created: <02/07/1998>
;;                                Revised: Time-stamp: <02/18/1998 20:59:09>
;;
;; To use mew-caesar.el, install (tm|SEMI) package
;;  and put the following codes in your .emacs.
;;
;; (add-hook 'mew-init-hook
;;  	  (lambda ()
;;  	    (require 'mew-caesar)))
;;
;; (setq mew-caesar-use-tm t|nil)
;; ;;   caesar package select   t => tm:caesar-region
;; ;;                         nil => mule-caesar-region
;;

(eval-when-compile
  (require 'mew))

(defconst mew-caesar-version "mew-caesar.el 0.12")

(defvar mew-caesar-use-tm nil
  "nil require \"SEMI\", t require \"tm\".")

(defvar mew-caesar-prog-xrot '(mew-caesar-mime-text/x-rot () nil))
(defconst mew-caesar-ct-rot13 "Text/X-Rot13-47-48")
(defconst mew-caesar-rot13-suffix ".rot")

(define-key mew-summary-mode-map "\C-cr" 'mew-caesar-summary-insert-xrot)
(define-key mew-virtual-mode-map "\C-cr" 'mew-caesar-summary-insert-xrot)
(define-key mew-draft-attach-map "R" 'mew-caesar-attach-find-new-xrot)

(setq mew-mime-content-type-text-list
      (append
       '("Text/X-Rot13-47-48")
       mew-mime-content-type-text-list))

(setq mew-mime-content-type-list
      (append
       '("Text/X-Rot13-47-48")
       mew-mime-content-type-list))

(setq mew-mime-content-type
      (append
       '(("text/x-rot13-47-48" "\\.rot$" nil mew-caesar-prog-xrot mew-icon-text)
	 ("text/x-rot13.*" "\\.rot$" nil mew-caesar-prog-xrot mew-icon-text))
       mew-mime-content-type))

(defun mew-caesar-mime-text/x-rot (begin end &optional params)
  (if (> end begin)
      (save-excursion
	(set-buffer (mew-buffer-message))
	(let ((buffer-read-only nil))
	  (insert " #     #         ######  ####### #######    #     #####\n"
		  "  #   #          #     # #     #    #      ##    #     #\n"
		  "   # #           #     # #     #    #     # #          #\n"
		  "    #     #####  ######  #     #    #       #     #####\n"
		  "   # #           #   #   #     #    #       #          #\n"
		  "  #   #          #    #  #     #    #       #    #     #\n"
		  " #     #         #     # #######    #     #####   #####\n"
		  "\n")
	  (insert "To save this part, type "
		  (substitute-command-keys
		   "\\<mew-summary-mode-map>\\[mew-summary-save].")
		  "\nTo display this part in Message mode, type "
		  (substitute-command-keys
		   "\\<mew-summary-mode-map>\\[mew-caesar-summary-insert-xrot]."))
	  (insert "\n\n-------------------- Original \"X-ROT13\" follows --------------------\n")
	  (insert-buffer-substring (mew-current-get 'cache) begin end)
	  ))))

(defun mew-caesar-summary-insert-xrot ()
  (interactive)
  (let* ((ofld-msg (mew-current-get 'message))
	 (msg (mew-summary-message-number))
	 (part (mew-summary-part-number))
	 (buf (buffer-name)))
    (if (or msg (not part))
	(let ((mew-analysis nil))
	  (mew-summary-display))
      (unwind-protect
	  (progn
	    (mew-summary-toggle-disp-msg 'on)
	    (mew-window-configure buf 'message)
	    (set-buffer (mew-buffer-message))
	    (let* ((buffer-read-only nil)
		   (syntax (mew-cache-decode-syntax (mew-cache-hit ofld-msg)))
		   (stx (mew-syntax-get-entry-strnum syntax part))
		   (begin (mew-syntax-get-begin stx))
		   (end (mew-syntax-get-end stx)))
	      (erase-buffer)
	      (insert-buffer-substring (mew-current-get 'cache) begin end)
	      (goto-char (point-min))
	      (mew-caesar-whole-buffer)))
	(pop-to-buffer buf)))
    ))

(defun mew-caesar-attach-find-new-xrot ()
  "Open a new Caesar encoding file into a buffer on \".\" in attachments."
  (interactive)
  (if (not (mew-attach-not-line012-1))
      (message "Can't find a new file here.")
    (let* ((nums (mew-attach-nums))
	   (subdir (mew-attach-expand-path mew-encode-syntax nums))
	   (mimedir (mew-expand-folder (mew-draft-to-mime (buffer-name))))
	   file filepath)
      ;; mimedir / {subdir/} dir
      (if (not (equal subdir ""))
	  (setq mimedir (expand-file-name subdir mimedir)))
      ;; mimedir / file
      (setq filepath (mew-random-filename mimedir mew-caesar-rot13-suffix))
      (if (null filepath)
	  (message "Could not make a text file, sorry.")
	(setq file (file-name-nondirectory filepath))
	(setq mew-encode-syntax
	      (mew-syntax-insert-entry
	       mew-encode-syntax
	       nums
	       (mew-encode-syntax-single file (list mew-caesar-ct-rot13))))
	(mew-encode-syntax-print mew-encode-syntax)
	;;
	(find-file filepath)
	;; buffer switched
	(setq mode-name "X-Rot13")
	(setq mode-line-buffer-identification mew-mode-line-id)
	(local-set-key "\C-c\C-q" 'mew-kill-buffer)
	(local-set-key "\C-cr" 'mew-caesar-whole-buffer)
	(local-set-key "\C-c\C-s" 'mew-caesar-save-exit)
	(insert " #     #         ######  ####### #######    #     #####\n"
		"  #   #          #     # #     #    #      ##    #     #\n"
		"   # #           #     # #     #    #     # #          #\n"
		"    #     #####  ######  #     #    #       #     #####\n"
		"   # #           #   #   #     #    #       #          #\n"
		"  #   #          #    #  #     #    #       #    #     #\n"
		" #     #         #     # #######    #     #####   #####\n")
	(insert "\n define-key \"\\C-cr\"    -> mew-caesar-whole-buffer.")
	(insert "\n define-key \"\\C-c\\C-s\" -> mew-caesar-save-exit.")
	(insert "\n\n Press any key to start editting.")
	(read-char-exclusive)
	(delete-region (point-min) (point-max))
	))))

(defun mew-caesar-save-exit ()
  "Caesar encoding/decoding at whole buffer, save and exit."
  (interactive)
  (mew-caesar-whole-buffer)
  (if (y-or-n-p (format "Save & Exit ?"))
      (progn
	(save-buffer)
	(kill-buffer (current-buffer)))
    (mew-caesar-whole-buffer)))

(defun mew-caesar-whole-buffer ()
  "Caesar encoding/decoding at whole buffer."
  (interactive)
  (let ()
      (save-excursion
	(if mew-caesar-use-tm
	    (progn
	      (require 'tm-def)
	      (mark-whole-buffer)
	      (tm:caesar-region))
	  (progn
	    (require 'mule-caesar)
	    (mule-caesar-region (point-min) (point-max)))))))

(provide 'mew-caesar)
;;
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: 無し
型:         text/x-rot13-47-48
サイズ:     1087 バイト
説明:       よた話
URL:        <http://www.mew.org/pipermail/mew-win32/attachments/19980219/ac0bcca4/attachment.bin>


Mew-win32 メーリングリストの案内