2005-11-23

Emacs-w3m で複数 URL をタブで一気に開く

1 行 1 URL なテキスト

http://del.icio.us/ataka/
http://at-aka.blogspot.com/
http://www.flickr.com/photos/at-aka/
http://d.hatena.ne.jp/at-aka/
http://at-aka.typepad.jp/life/
http://booklog.jp/tana.php?ac=at-aka
http://www.spurl.net/discover/user/%40aka/

を、Emacs-w3m のタブで一気に開くコマンドを quick hack してみた。

テキストをリージョンで囲んで、M-x w3m-view-urls-in-new-session して使う。

インストール

次のコードを .emacs に追記。

(defun w3m-view-urls-in-new-session (start end &optional arg)
  (interactive "r\nP")
  (when (w3m-region-active-p)
    (w3m-deactivate-region))
  (let ((buffer (current-buffer))
 (prev start)
 (url (w3m-url-valid (buffer-substring-no-properties 
        (line-beginning-position) (line-end-position))))
 urls)
    (when url
      (setq urls (list url)))
    (save-excursion
      (goto-char start)
      (while (progn
        (forward-line 1)
        (and (> (point) prev)
      (< (point) end)))
 (setq prev (point))
 (when (and (setq url (w3m-url-valid (buffer-substring-no-properties 
          (line-beginning-position) (line-end-position))))
     (string-match "\\`https?:" url)
     (bolp))
   (push url urls))))
    (setq urls (nreverse urls))
    (while urls
      (setq url (car urls)
     urls (cdr urls))
      (set-buffer buffer)
      (w3m-view-this-url-1 url arg t))))

コードは w3m-open-all-links-in-new-session のほとんどコピー。

あとがき

BloglinesGoogle Reader で気に入った記事を ChangeLog メモでメモしてる。メモは Emacs-w3m 経由。

まず firefox で見ている記事の URL をコピーする。次に Emacs-w3mw3m-goto-url で先の URL を貼り付けて開き直す。最後にそのページを clmemo.el でメモに取る。以上の手順を記事の数だけ繰り返す。

こういうことをやり始めた最初の数週間はなんとかなったけど、もう我慢の限界。そこで、記事の URL をファイルにコピペで保存 (ここまでは全部 firefox 内の作業)。そして一気に Emacs-w3m で開くようにした。メモを取る手間はあるけれど、これで少しは楽になった。

ブログ記事の ChangeLog メモ技術については、まだまだ向上の余地があるので、これからもブログにちょこちょこと書いていきます。

No comments:

Post a Comment