Last Updated: "2009-07-01 Wed 22:40:56"

* もしかしたら欲しい人がいるかもしれないプログラム

wl-highlight-ad.el - v0.3 DOWNLOADこれオススメ

機能:

自分でメルマガ発行しといて言うのもなんだが、この手のメールって広告が多くて、どこを読んでいいのか目で追うのが大変。そこで、広告文だけ色を薄くして簡単に読み飛ばせるようにしてみた。けど、広告も時には役に立つし、まったく見えないのもさびしいから、見えにく〜くしてみた。Wanderlust 用です。

設定さえやれば、ほとんどの広告を見えにくくできますが、広告の境界線がいいかげんな場合は設定が面倒、もしくは不可能です。行儀の悪いメルマガはこの際、解除だ解除だ。

.wl に書く (例):

(require 'wl-highlight-ad)
(set-face-foreground 'wl-highlight-ad-face "gray20")
(setq wl-highlight-ad-regexp-user-alist
   '(("@.*nikkeibp.co.jp" ("^─PR─+$"             . "^─+$") default)
     ("@egroups.co.jp"    ("^-.*~-->$"             . "^-+~->$"))
     ("@mainichi.co.jp"   ("^-+【AD】-+$"
        . "\n.*\n.*\n.*\n.*\n.*\n-+\n.*\n.*\n.*\n.*\n.*\n-+\\|\n.*\n.*\n.*\n.*\n.*\n-+"))
     ("@pc.mycom.co.jp"   ("^―+\\[PR\\]―+$"      . "^―+$"))
     ("mag2"              ("^-【.*まぐ.*】-+$"     . "^-+$")
                          ("^_@_+-PR-_+$"          . "^_+$") default)
     ("@hotmail.com"      ("^_+\n.*\\(MSN\\|マイクロソフト\\)" . "^$") continue)
     ("@yahoo.co"         ("^_+\nDo You Yahoo!\\?" . "^$") continue)
     (".*"                ("^\\[snip!\\]$"         . "")   default)))

スクリーンショット:

wl-summary-auto-refile-this-mail

機能:

この機能、ほんとに無いのかな。スレッド表示だとか、カーソルの上下の移動方向なんかは無視です。誰か改善してください。

.wl に書く:

(define-key wl-summary-mode-map "o" 'wl-summary-auto-refile-this-mail)

(defun wl-summary-auto-refile-this-mail () (interactive)
   (let* ((number (wl-summary-message-number))
          (dst
             (wl-folder-get-realname
                (wl-refile-guess (elmo-message-entity wl-summary-buffer-elmo-folder number)
                 wl-auto-refile-guess-functions))))
      (unless dst
         (setq dst (wl-summary-get-refile-destination 'refile number)))
      (wl-summary-refile number dst)
      (wl-summary-next)))

wl-summary-file-size

機能:

それだけ。

.wl に書く:

;; display file size of a mail. (summary-mode)
(defun wl-summary-file-size () (interactive)
   (message "File Size (bytes): %d"
      (elmo-msgdb-overview-entity-get-size
         (elmo-message-entity wl-summary-buffer-elmo-folder (wl-summary-message-number)))))

dired-dirs-files.el - v0.3 DOWNLOADこれオススメ


機能:

何でこの機能無いの? ほんとはある? しょうがないので作ってみた。

Meadow3 スクリーンショット:

Meadow2 スクリーンショット:

current-string-to.el - v0.1b

機能:

もしかして、この機能って最初からある? 昔々使っていたマイフェイスというエディタに、こんな機能があったのを思い出したので作ってみた。

pick-a-string.el - v0.1 DOWNLOAD

機能:

デリミタ (ターミネータ) で区切られたデータファイルから、1個だけランダムにデータを選び出す。デリミタの設定次第で、1データ1行でも、1データ複数行でも可能。"本日の名言" X-Quote: をメールヘッダにくっつけて、ムリヤリ相手に送りつけるために作った。

ついでにコツコツ集めた名言集 quotes.txt (2009-07-01 版) もどうぞ。

Wanderlust を使ってる人は下記の設定を書けば、ムダにヘッダを増やして相手に問答無用で名言を送りつけ、ひとり悦に入ることができます。ちなみにこの X-Quote: を読んで喜んでくれた人も、苦情をくれた人も、まだいない。

.wl に書く (例):

(require 'pick-a-string)
(setq pick-a-string-file       "~/quotes.txt"
      pick-a-string-terminator "\n"
      wl-draft-config-alist    '(("^From: .*@kakura\.jp"
                                 ("X-Quote" . (pick-a-string)))))

(add-hook    'wl-mail-setup-hook 'wl-draft-config-exec)
(remove-hook 'wl-draft-send-hook 'wl-draft-config-exec)

highlight-etc-mode

機能:

何でも好きなものを追加してハイライトさせましょう。ただ、ハイライトさせすぎると動作が遅くなる。

.emacs に書く (例):

(defvar highlight-etc-mode nil)
(defvar highlight-etc-alist
     ; mail@address.es
   `(("\\([a-zA-Z0-9]@\\|[a-zA-Z0-9][-a-zA-Z0-9_.]*[a-zA-Z0-9]@\\)[a-zA-Z0-9][-a-zA-Z0-9_]*\\.[-a-zA-Z0-9_.]*[a-zA-Z][a-zA-Z]"
        0 font-lock-keyword-face keep)
     ; URLs
     (,(concat "\\(https?\\|ftp\\|file\\|gopher\\|news\\|telnet\\|wais\\):"
               "\\(//[-a-zA-Z0-9_.]+:[0-9]*\\)?"
               "[-a-zA-Z0-9_=?#$@~`%&*+|\\/.,]*[-a-zA-Z0-9_=#$@~`%&*+|\\/]") 0 font-lock-keyword-face keep)
     ; comments and border lines.
     ("^#.*\\|[-+_=~#^*][-+_=~#^*][-+_=~#^*][-+_=~#^*][-+_=~#^*].*" 0 font-lock-comment-face keep)
     ; double quoted strings.
     ("\"[^\"]*\"" 0 font-lock-string-face keep)))
(defun highlight-etc-mode () (interactive)
   (cond (highlight-etc-mode
          (highlight-etc-off)
          (message "highlight-etc-mode ... off"))
         (t
          (highlight-etc-on)
          (message "highlight-etc-mode ... on")))
   (setq highlight-etc-mode (not highlight-etc-mode)))

(defun highlight-etc-on ()
   (unless highlight-etc-mode ; check this not to add keywords again.
      (font-lock-add-keywords nil highlight-etc-alist)
      (font-lock-fontify-buffer)))

(defun highlight-etc-off ()
   (when highlight-etc-mode
      (font-lock-remove-keywords nil highlight-etc-alist)
      (font-lock-fontify-buffer)))

copy-char-above, copy-word-above

機能:

たったそれだけなんだけど、結構便利。好きなキーにバインドしてください。

.emacs に書く:

(defun copy-char-above () (interactive)
   (save-excursion
      (previous-line 1)
      (let ((beg (point)))
         (set-mark (point))
         (forward-char 1)
         (kill-ring-save beg (point))))
   (yank))

(defun copy-word-above () (interactive)
   (save-excursion
      (previous-line 1)
      (let ((beg (point)))
         (set-mark (point))
         (forward-word 1)
         (kill-ring-save beg (point))))
   (yank))

bigclock.el - v1.0 DOWNLOAD

機能:

そういえば elisp を勉強しようと思って、何年も前にこれ書いたの思い出した。ということは自分でも使ってない。初めて書いた elisp です。力技なのでコードは見ないで。

例えばキーバインドが C-S-c なら、C-S-c で3秒だけ表示、C-S-cC-S-c でずっと表示、もう一回 C-S-c で3秒後に消す。

.emacs に書く:

(global-set-key [?\C-\S-c] 'bigclock) ; お好みでどうぞ

(autoload 'bigclock "bigclock" nil t)
(setq bigclock-jpn t)

スクリーンショット: