2008年7月 2日 (水)

twitter-mode更新

source parameter申請がapproveされたので、その部分だけ更新して上げた。

Webで見ると、"from twitter-mode"と出るようになったはず。

| | コメント (0) | トラックバック (0)

2008年1月25日 (金)

TinyURL

へなちょこ。xml-http-requestとjunk/httpの両方を使っているのは単なる手抜き。

(require "xml-http-request")
(require "junk/http")

(defvar *tinyurl-base-url*
  "http://tinyurl.com/api-create.php?url=")

(defun tinyurl-create-url (url)
  (let ((api-url
         (concat *tinyurl-base-url* url)))
      (multiple-value-bind (response status)
          (msxml::http-get api-url)
        (cond ((= status 200)
               response)
              (t
               (error "~S~%~%~S" status response))))))

(defun tinyurl-url ()
  (let (url)
    (save-excursion
      (or (selection-start-end (beg end)
            (setq url (buffer-substring beg end)))
          (and (skip-syntax-spec-backward "w_")
               (looking-at "https?://[^ \t\r\n\"]+")
               (setq url (match-string 0)))
          (let ((temp (get-clipboard-data)))
            (when (string-match "https?://[^ \t\r\n]+" temp)
              (setq url (match-string 0))))))
    (read-string "URL: " :default url)))

(defun tinyurl-lookup-url (url)
  (unless (string-match "http://tinyurl.com/[a-z0-9]+" url)
    (error "Invalid TinyURL: ~S" url))
  (multiple-value-bind (sock status headers)
      (junk::junk-http-get-url url)
    (cond ((equal status "301")
           (junk::junk-http-get-header-value "location" headers))
          (t
           (error "ERROR: ~S" status)))))

(defun tinyurl-create ()
  "URLをTinyURLに変換する。成功すれば変換後のURLをクリップボードにコピーする。"
  (interactive)
  (let ((url (tinyurl-url))
        tinyurl)
    (when url
      (when (setq tinyurl (tinyurl-create-url url))
        (copy-to-clipboard tinyurl)
        (message "~A" tinyurl)))))

(defun tinyurl-lookup ()
  "TinyURLをURLに戻す。成功すれば戻したURLをクリップボードにコピーする。"
  (interactive)
  (let ((url (tinyurl-url))
        original-url)
    (when (and url
               (setq original-url (tinyurl-lookup-url url)))
      (copy-to-clipboard original-url)
      (message "~A" original-url))))

| | コメント (0) | トラックバック (0)

2007年12月24日 (月)

IMAPでGmail(5)

とりあえず一通り実装してみたものを上げてみた。実際のところスレッドが検索できないので、IMAPで常用するのは難しいだろう。というかあまり意味がないと思う。

そう思いつつも実装してみていたのは、Gmailをオンラインデータベース代わりにして何か遊べないものかと思っていたからなんだけど、マヌケにも最後の方になって致命的なことに気付いた。

IMAPってCRUDの"U"がないじゃん・・・。

IMAPさわるのも5年振りくらいなので、すっかり忘れていた。最後に「下書き」回りをやっててやっと思い出した。

他のMUAも下書きメールの上書き保存は、フォルダに新規追加して元のを消す、というやり方をしてる。ていうか他に方法がない。新規追加したメールのUIDを取得する方法もない(APPENDUIDはGmailのIMAPでは実装されていない)。

というわけなので、あまり使い道がなさそう。他のことやってた方が良かったか・・・。

| | コメント (0) | トラックバック (0)

2007年12月15日 (土)

IMAPでGmail(4)

SEARCH TEXTでMessage-Idが検索できると思ったのは勘違いで、できたりできなかったりする。 今のところ法則性が見つからない・・・。

日付での検索で時間がずれるのは、Webからの検索と同様っぽい。

| | コメント (0) | トラックバック (0)

2007年12月12日 (水)

V3のバグ修正

ほったらかしだった添付ファイルが壊れるバグを多分直した、と思う。

xyzzyにもSEMIみたいのがあればね~・・・。

| | コメント (0) | トラックバック (0)

IMAPでGmail(3)

SEARCHでは、限られたフィールドしか検索できないということは、Message-Idとかでスレッドを検索で引っ張り出すことができないってことか?それなりに作ってしまってから気が付いたけどそれって致命的じゃね?

試してみたらSEARCH TEXTでヘッダまで対象にしてくれてるみたいなので、できないことはないっぽいけど、スレッド全体を引っ張り出すのは手間暇かかりすぎるな~。

Gmailさん、スレッドの情報付けてくれないかな~。ヘッダに付け加えたって構わないから・・・。

| | コメント (0) | トラックバック (0)

2007年12月 4日 (火)

IMAPでGmail(2)

試していて気付いたことを忘れないうちに。

アーカイブされたかどうかはメール単位。 Gmailのインタフェース上ではアーカイブされていないメールが1通でもあればInboxにスレッドとして表示されるが、IMAPでは当然ながらInboxにはアーカイブされていないメールのみしかいない。

Gmail側のスレッドでまとめている情報をくれればうれしいんだけど、今のところ見当たらない。

| | コメント (0) | トラックバック (0)

2007年12月 2日 (日)

IMAPでGmail

Helpに書かれている内容だけでは良くわからないので、とりあえずSEARCH系のコマンドを実際に試してみている。

"ALL TEXT"とかでWebからと同様の検索フレーズを投げれば後は良きに計らってくれるのを期待していたが、やっぱりダメっぽい。てことは、クライアント側で頑張ってコマンドを組み立ててやらなくてはダメってことか。条件を色々組み合わせようとするとちょっと面倒だな~。

個人的にはWebから検索する時には、検索ワードとTo/Fromの組み合わせ以外ほとんど使わないのでとりあえずその線で試してみるけど。

検索速度が速いのは流石だな~。検索がうまく使えそうならクライアントをでっち上げる意味があるかもしれない。

| | コメント (0) | トラックバック (0)

2007年11月26日 (月)

NetInstallerの脆弱性対応(3)

すみません。たぶん直しました。

| | コメント (0) | トラックバック (0)

2007年11月21日 (水)

NetInstallerの脆弱性対応(2)

ありがとうございます。リリースしました。

マクロは3秒くらい考えてたんですけど、あっさりヤメました。まぁおいおいそのうち・・・。

| | コメント (0) | トラックバック (0)

2007年11月20日 (火)

NetInstallerの脆弱性対応

こんなんでどうでしょうか? ni-0.0.1.1-4

ちなみにSANOさんに作って頂いた脆弱性を利用してなごむスクリプトは以下を参照。
http://snmsts.dreamhosters.com/diary/index.cgi?routine=one&name=2007-11-19-1450

| | コメント (0) | トラックバック (0)

2006年11月22日 (水)

LiteX

LiteXをいじっていてふと思ったんだけど、どうせOLEならADOとかでSQLite ODBCとかの方がいいんじゃないの?他のRDBMS使えるし?

今考えてる使い方だと1DB-1FileのSQLiteだとちょっと不安なので・・・。

ていうか、LiteXだとINSERT文とかUPDATE文とかガリガリ書くとかマッパーでっち上げるとかしなきゃダメだし。

誰かがxyzzyにsqlite組み込んでくれると一番いいんだけど(誰が?)

| | コメント (1) | トラックバック (0)

2006年11月12日 (日)

第四回オフ会

自分の宿題を忘れないうちに書いておこう。

  • 2ch-modeのパッチ取り込み

    なんか手元のを見たら取り込み済みで、svnにもコミットしてあった。何で公開しなかったんだろう?

  • migemoのパッチ取り込み

    これってどなたが修正してたんでしたっけ?

  • NetInstallerのpackageの項目にライセンスを追加

| | コメント (0) | トラックバック (0)

2006年9月 6日 (水)

疑似インデックス(4)

修正したバージョンを出しました。既に使ってしまっていた方は、readme.htmlを参照してインデックスを修復してください。

やっぱり勢いだけでやってしまうと、ダメだな・・・。

| | コメント (0) | トラックバック (0)

2006年9月 5日 (火)

疑似インデックス(3)

すみません。ひどいバグがありました。なるべく早く直しますので、疑似インデックスは使わないで下さい。

| | コメント (0) | トラックバック (0)

2006年9月 2日 (土)

rss-modeのエンハンス

手元でだけ色々やっていたのを、この機に出しておくことにした。

目玉は過去のエントリをN件まで取っておくのと、Hyper Estraierでの全文検索。

やってはみたものの、どちらもあまり使っていないんだけどね。

| | コメント (0) | トラックバック (0)

2006年9月 1日 (金)

疑似インデックス(2)

忙しいにも関わらず、手をつけてしまったら止まらなくなった。ていうわけで、疑似インデックスサポート版をリリース。

内容はこんな感じ。

  • 受信したメールは "estcmd draft" で文書ドラフトに変換してからV3で必要な属性を追加して、疑似インデックスフォルダに保存。
  • 検索時には疑似インデックスを含めて検索。
  • 疑似インデックスフォルダに文書ドラフトがあるメールの属性変更は、文書ドラフトを直接書き換える。
  • 通常のインデックスへマージしたら、文書ドラフトを削除。

受信後の待ち時間は劇的に改善された。つーかメールが増えたせいか、optimize してなかったせいか、最近待たされる時間が長くなっていたので、かなりの達成感。

| | コメント (3) | トラックバック (0)

2006年8月28日 (月)

疑似インデックス

疑似インデックス

これはまさにV3のために用意されたような機能ではないだろうか。

しかし公私にわたって多忙が続いているため、いつ手を付けられるのかわからない・・・。

ところで「疑似」と「擬似」って後者の方が良く使われると思ってたけど、そうでもないのかな?

| | コメント (0) | トラックバック (0)

2006年6月19日 (月)

xml-http-request(2)

XMLHttpRequest から文字化けせずにデータを取得・・・

そうなんだよな~。取り出す方法がないんだよね~。XML的には文字コード指定がなければ、UTF-8だ、ってのはそうかもしれないけど、余計なことせずにそのまま渡してくれればいいのに・・・。

| | コメント (0) | トラックバック (0)

2006年6月13日 (火)

xml-http-request

xml-http-request 0.1。 素晴らしい!

でもしばらくさわる時間がとれそうもないな~。

あと、parser が壁になっている状況は変わってない?

| | コメント (1) | トラックバック (0)

2006年5月18日 (木)

なんだかんだ

delicious.l

こうかな?

--- delicious.l.1~      2006-05-18 18:05:18.265625000 +0900
+++ delicious.l 2006-05-18 18:12:30.765625000 +0900
@@ -136,7 +136,7 @@
     (:use "lisp" "editor")))

 (require "xml-parser-modoki")
-(require "junk/lib")
+(require "junk/http")

 (provide "delicious")

Kamail3で正規表現が使えたり使えなかったり

本文を正規表現で検索するときは、"/" じゃなくて "?" で [RX] 使って。

2ch-modeのパッチ

ていうか、「誰かメンテナンス引き継ぎません?」て感じかも。まじめに普及に努めれば、●のフィーでウハウハになるかもよ?

| | コメント (3) | トラックバック (0)

2006年5月14日 (日)

第三回xyzzyオフ会

NANRIさん、皆さんお疲れ様でした。

今回はあまり宿題をもらってこなかったような気がする。要望は頂いたような気がするけどまぁ酒の席だし、とか。

とりあえず、sourceforge使えるようにしとくぐらいはやった方がいいのかも。周辺lispだけでなくて本体のエンハンスを含めといてもいいと思うけど。

パッケージ管理だけど、他のを参考にしようとするとどこかで全体を管理しなくてはいけなくなるんじゃないかと思う。まぁ先の話だけど。

| | コメント (0) | トラックバック (1)

2006年5月 8日 (月)

Hyper Estraier 1.2.5

Hyper Estraier 1.2.5 リリース。またまた対応して頂きました。ありがとうございます。

ヘッダーの Date にコメントが入っていたり、曜日が省略されていた時にソートがうまくいっていなかったので対応をお願いしていたり。要 casket 作り直し。

次にやるべき事を思いついていないので、なんとなくP2P機能を試してみたり。面白いので、しばらく遊んでしまいそう。

| | コメント (0) | トラックバック (0)

2006年5月 1日 (月)

Hyper Estraier 1.2.4

Hyper Estraier 1.2.4 リリース。またまた対応して頂きました。ありがとうございます。

実は km3::he-dump して km3:he-restore した後にメールを削除しても casket から消えない問題が発生したりしてたので、その対応をお願いしていたり。

一度でも上記の手順で casket を作り直していた人向けのへなちょこな修正用。km3:he-dump してから km3:he-restore する前に実行。

(defun url2lpath ()
  (let (uri
        lpath)
    (save-excursion
      (goto-char (point-min))
      (when (scan-buffer "^@uri=\\([^\n]+\\)$" :regexp t)
        (setq uri (match-string 1))
        (when (scan-buffer "^_lpath=\\([^\n]+\\)$" :regexp t)
          (setq lpath (match-string 1))
          (goto-char (match-beginning 1))
          (unless (string= uri lpath)
            (insert uri)
            (delete-region (point)
                           (progn
                             (goto-eol)
                             (point)))
            t))))))

(defun he-modify-draft-lpath ()
  (interactive)
  (let ((bufout "*result*")
        sout
        (buftmp "*temp*")
        (cnt 0))
    (set-buffer (get-buffer-create bufout))
    (erase-buffer (selected-buffer))
    (setq sout (make-buffer-stream (selected-buffer)))
    (set-buffer (get-buffer-create buftmp))
    (dolist (file (directory *he-dump-directory*
                             :file-only t
                             :absolute t))
      (let (res)
        (incf cnt)
        (erase-buffer (selected-buffer))
        (insert-file-contents file)
        (when (setq res (url2lpath))
          (write-region (point-min)
                        (point-max)
                        file
                        nil
                        *encoding-utf8n*
                        *eol-lf*))
        (format sout "~S\t~A~%"
                res
                file)
        (when (= (mod cnt 1000) 0)
          (message "~D ..." cnt))
        (do-events)))
    (delete-buffer buftmp)
    (set-buffer bufout)
    (message "~D ... done." cnt)))

| | コメント (0) | トラックバック (0)

2006年4月28日 (金)

インターフェース

誉められたとはちっとも思ってなかったり。ていうか誉められてはいけないところを誉められたというか。

最近少しずつxyzzyで作っているインターフェースのパターンが見えてきた気がするので、何か省力化を考えたほうがいいんだろうねぇ、きっと。

ただ、今の作り方でホントにイイのかっていうのもあるしなぁ。次に何か作るときに考えよう、とかいって考えないな、きっと。

| | コメント (0) | トラックバック (0)

春になって

なんとなく暖かくなってくると、途端にモチベーションが下がる。ネタを思いついても、ちっとも作ろうという気が起きない。

少なくともここ数年xyzzyがらみである程度まとまったものを作ったのって冬の間だけ。(それも2、3月が多い)

なんか冬になるとモチベーションが上がる、というより現実逃避したくなるんだろうな。確かに冬は大嫌いなんだが・・・。

では次の冬までさようなら、というわけにもいかないので、暖かい日々の過ごし方を考えよう。

| | コメント (0) | トラックバック (0)

2006年4月17日 (月)

検索ベースの・・・

検索ベースのブログ構想とか。XML-RPCかAtom PP対応は欲しいところだけど、検索が活かせないか。

ブログじゃぁないけど、V3を作ってから似たようなことを思いついていたり。

今考えてるのはメモ取りツールなんだけど、V3の送受信部分を取っ払って、書いたものを保存してgatherすればとりあえずは使えるようになりそうだな~とか。

一番問題になりそうなのは分類方法をどうするかだと思うけど、Hyper Estraierベースにするならある程度後からでも何とかなりそうだから進められそうな気がする。その辺を考え出すと進まなくなるからね~。

ただメモツールって割と人によって使い方が全然違うものだと思ってるので、汎用的なものを作る気はあんましなかったり。あくまで自分の用途中心で。

| | コメント (0) | トラックバック (0)

LDAP

そっか動くのか、とか。よくよく考えてみれば、LDIF形式で返されるから大した違いはないわな。

ちょっと試してみたいけど環境作るのが大変だな。

| | コメント (0) | トラックバック (1)

2006年4月14日 (金)

Hyper Estraier 1.2.2

Hyper Estraier 1.2.2リリース

| | コメント (0) | トラックバック (0)

2006年4月12日 (水)

Hyper Estraier 1.2.1 (3)

とりあえずunseenフォルダも属性インデックスが効く検索に変更。これまた劇的に速くなった。(要インデックス再構築)

これで残った主だった問題点は、受信時のgatherに時間がかかるところだけか。ここさえなんとかすれば、マジで使えるものになるかもしれん。ちょっと考えてみよう。

とかいいつつ、他のネタも思いついてしまっていたり。さてどうしたもんか・・・。

| | コメント (2) | トラックバック (0)

2006年4月11日 (火)

Hyper Estraier 1.2.1 (2)

要望メールを出してしまった後に真っ当に対応する方法に気がついた。当然その方法で対応してくれ、との返信が来た。次からはもうちょっと考えてから出すことにしよう・・・。orz

というわけで、V3を対応させてみたり。とりあえずinboxの表示は劇的に速くなった(当社比)。

unseenは遅いままなんだけど、これはもう少し考えないとダメだな。一番ほったらかしなとこの一つだし。

| | コメント (0) | トラックバック (0)

2006年4月10日 (月)

Hyper Estraier 1.2.1

Hyper Estraier 1.2.1リリース

属性にインデックスが張れるようになったので、早速試してみた。確かに速くなっているのだが、別の問題が発生。

V3のフォルダは x-kamail3-folder 属性に "km3:" + フォルダ名 を設定することにしているのだが、inboxは「x-kamail3-folder属性がない」メッセージということにしているため、インデックスを張ってそちらを見に行くようにしてしまうとひっかからなくなってしまう。

真っ当にやるなら、受信時に属性をつけてやることになるのだが、受信時の処理がさらに遅くなるのがイヤなところ。

もう一つはお願いして「属性がないものを検索」できるようにしてもらう手。unseen フォルダも同じようなことなのでどちらにしてもお願いしてみようかな。

| | コメント (0) | トラックバック (0)

2006年4月 1日 (土)

1号とV3

あー、1号とV3は別々に戦う動作するもので、連携することはできないっす。

1号からメールを取り込もうとすると、1号側からメールを削除してしまうのでダメっす。インポートは別として。

じゃあfetch-mh.lは何のためにあるかというと、fetchmail+procmailみたいなメール受信用のプログラムが別に動いている場合とかのため。

最初にHyper Estraier回りだけ作ってテストしてたときに、POP3関係を作るのが面倒だったのでcygwinのfetchmail+procmailで受信してテストしてたから存在するだけのもの。今じゃ使ってないし。

1号のフォルダは、以前取得したメールを除いて持ってくるなんてことができないので連携はムリっぽい。どうしてもやるなら受信時にメールを別フォルダにコピーしといてそこから持ってくるとかかな。

| | コメント (1) | トラックバック (0)

V3の今後

3代目に関してはとりあえず予定していたところまでは作ったので、しばらくは使いつつ問題を見つけて直したり、どうしても必要な機能だけ追加したりすることにする。

初代の時みたいに必要そうだと思った機能を節操なく追加するとわけがわかんなくなるし。

で、問題点をどうするか考えないといけないんだけど、さてどうしようか。

いちおういくつか改良案を考えついてはいるものの、どれも簡単じゃないし。簡単じゃないと途中で投げ出す可能性が高いので最初からやめといた方がいいし。

ていったことを含めて、しばらく考えよう。他にネタもないし。

| | コメント (0) | トラックバック (0)

2006年3月31日 (金)

Subversion

またまたCVSで更新できなくなったので、これを機にSubversionに切り替えることにした。

最初Cygwinのを使って改行コードではまりかけたので、Windows版を入れてそちらを使うことに。

今のところこれといって問題なし。コマンドは徐々に覚えることにしよう。

| | コメント (0) | トラックバック (0)

2006年3月26日 (日)

junk

もう少しネーミングを真面目に考えておくんだったとちょっと後悔。

junk/mail とか junk/smtp とか、SPAMメール送信用ライブラリとしか思えんし。

| | コメント (0) | トラックバック (0)

2006年3月25日 (土)

Hyper Estraier 1.1.6

Hyper Estraier 1.1.6がリリースされました。

V3公開をお知らせするとともに図々しくも要望を投げさせて頂いたところ、早速対応して頂きました。ありがとうございます!

というわけで、こちらも対応版をリリース。といっても属性名の入力にカンマを許しただけなんだけど。

で、ついでにスレッド検索らしきものを作ってみたのだがそれは、

  1. Message-Id, In-Reply-To, ReferencesからMessage-Idのリストを取得。
  2. リストから正規表現を生成。
  3. Message-Id, In-Reply-To, Referencesを正規表現で検索。
というものなので、遅い上に完全ではない。途中にReferencesを付けないメーラが入ってたりするとそこから先は検索できないとか。

似たようなものなのだが、In-Reply-ToもしくはMessage-Idで検索というのも作ってみたり。 スレッドの前のメッセージと後のメッセージを主に検索するというもの。 正規表現じゃないから多少速いかも、というぐらいしか意味はないけど。

まぁこれは完全にやろうとするとmorqみたいに別管理するしかないから今のところはこれでいいや、ってことで。

| | コメント (2) | トラックバック (0)

CVS

sf.netのCVSが、やっとコミットを受けつけてくれたので更新できた。

そろそろSubversionに切り替えたようかな~。

| | コメント (0) | トラックバック (0)

V3の問題点(2)

まぁ第1の問題点は、バグだな。やっぱり。特にメール作成とかは、今回一から書いてるから不安がいっぱい。
ぶっちゃけ方向を間違えたような気がしてるので、大幅に変えるかも。

タイミングのいいことに、message/partialなメールが届く。ていうかそのことをすっかり忘れてたんだけど。
テスト用に大切に取っておこう。

インデックスの登録が重いのなら、とりあえず登録せずに別管理して後から登録すれば、というような助言を頂く。

別管理方法をどうするかを考えないといけないのは置いといて、逃げ道はそれしかないかも。 例えば受信したてのメール用に別casketを用意して、アーカイブするタイミングとかで移すとかもあるかな。移す時が重いけどね。

| | コメント (0) | トラックバック (0)

2006年3月23日 (木)

V3の問題点

一番の問題点はインデックスへの登録が重いこと、ってことは間違いない。

しかもメールが増えれば増えるほどどんどん重くなっていくから始末が悪い。メールを受信した後しばらく待たないとメールが閲覧できないっていうのはちょっとイヤすぎるかも。

最初はexecute-subprocessで裏で走らせとけばいいかと思ったんだけど、V3では既読情報やタグなどをHyper Estraierの属性情報として管理しているので、その操作ができなくなってしまうのでダメ。

二番目は多分属性検索かな。これもメールが増えたときが怖い。V3ではinboxなどのフォルダ的なものは全て属性検索なので、inboxを開くのにしばらく待たないといけないような事態になりかねない。ていうかそうなる。

どちらも真っ当な解決方法はないっぽい。してみると、この構成自体が問題アリってことか?

2,3万件くらいまでは結構快適そうなんだけどな~。

| | コメント (7) | トラックバック (0)

2006年3月21日 (火)

V3

Hyper Estraierを使った検索ベースのメーラを作ってみた。最初はKaMailに組み込んで使ってみるつもりだったんだけど、KaMailみたいにフォルダ間でメールを動かすようなタイプだと相性が最悪なので、結局別に作ることに。

ネーミングをしばらく考えたんだけど、何も浮かんでこなかったのでとりあえず KaMailV3 とした。カメときて3代目といったらV3だろうとか。いや、私はネーミングセンスないっすよ。確かに。

最初からわかっていたことではあったんだけど、やっぱりインデックスを登録するところが重い。とりあえず回避策も見つからず。まぁいいけど。

自分でも併用を始めたところなんで、この先どうなるかはさっぱりわからない。もう少し使ってみてから行く末を考えることにしておく。

| | コメント (0) | トラックバック (0)

2006年2月27日 (月)

sarge

morqを試してみるために、VMwaredebianを入れてみることに。

debianに触るのは実に5年振りくらい。インストーラパッケージマネージャ(のフロントエンド)が違うとかなり戸惑うもんだな、と思ったり。

ていうかEmacsに触れるのも久しぶりだったので、そこでもやたら手間取った。

で、肝心のmorqだが、思ったよりmorq側で頑張っている感じ。

Hyper Estraierだともっと楽ができそうな気がする・・・気がするだけかもしれんけど。

| | コメント (0) | トラックバック (0)

2006年2月20日 (月)

流行に乗る

「バッファバーの代わりにolt2を表示」という最近の流行に乗ってみたり。

| | コメント (0) | トラックバック (0)

2006年2月15日 (水)

Hyper Estraier

RastをWindowsで動かすのは敷居が高いので、Hyper Estraier (とxyzzy) でmorqみたいなことができないかどうか、試してみることにする。
とりあえず、estcmd 呼ぶだけでなんとかする前提にしておこう。

  • 「普通に全文検索」。当たり前だけど問題なし。
    大量にヒットするとxyzzy側のparseとか描画速度が問題になりそう。まあどっちにしても n件で次に送るしかないからいいか。
    インデックスの更新はやっぱり重いんだけど、裏で走らせればいいから良しとしておこう。 検索ベースにするならフォルダ間でメールを移動するとかがなくなるからなんとかなるだろう。
  • 「ある人とのやり取りを検索して表示」とか。これがすでに難しいじゃんか。
    いや、from/to/cc にアドレスがあるメールを検索っていうだけなんだけど、今のところ属性のOR検索はできないみたい(全文検索ではもちろんOR検索できるけど)なので別々に検索してマージしなければいけない。
    ていうかそんなことしたら、ページ送りできなくなるからダメじゃん。第一属性検索は遅いみたいだし。
    まあ「名前が署名とかに入ってるんじゃネーノ」とか全文検索でもなんとかなるかもしれないけど。
  • 「メールにラベルをつける」。これは属性を追加すればいいから大丈夫、だろう。
  • 「表示しているメールのスレッドを表示」。これまた簡単にはいかない。
    適当にやるとすると、
    1. References の最初を取ってくる。なければ Message-Id。
    2. それが Message-Id もしくは In-Reply-To もしくは References に入ってるのを探す。
    とかなんだけど、前述の通り属性のOR検索はできないっぽいので別々に検索してマージ(ry
    ていうか morq はどうしてるんだろうとソースを眺めてみると、どうもスレッドだけ別に(たぶんqdbmに)記録してやってるみたい。うーん・・・。

ていうわけで、そんなに簡単にはいかないことだけはわかった。orz
とりあえず、KaMailに組み込んで使ってみて考えるとするか。

| | コメント (0) | トラックバック (0)

2006年2月12日 (日)

データセンター

OHKUBOさん、おめでとうございます。
データセンターは心と体を蝕むので気をつけたほうがいいですよ、とか。 いやマジで常人に耐えられる場所ではないと思う。

| | コメント (0) | トラックバック (1)

パッケージ管理システム

ってやっぱりシステムより管理することのほうが大変なのではないかと思ったり。

| | コメント (0) | トラックバック (0)

Rast

Rastか・・・。今さらだけどヤバイものを知ってしまった気がする。

いや、Rast自体よりもmorqがね・・・。やっぱり今はこういう方向だよなあ・・・。

| | コメント (0) | トラックバック (0)

2006年2月 9日 (木)

誰にともなく聞いてみる

WindowsWebフォルダってアクセスできるんですかね?ちょっとぐぐってみたけど何も出てこない・・・
いや、WebDAVモドキをでっち上げずに済むならそうしたいだけなんですが。

中身は全然見てないけどXULRunnerはちょっと面白そうかも。時間が欲しいなとちょっと思ったり。
自分向きのネタじゃぁ全然ないけどね。

| | コメント (0) | トラックバック (0)

2006年2月 5日 (日)

かゆいところに

全然手が届かないじゃん。Wiki RPC Interface 2って・・・。利用のイメージが違うのかな?

まあそもそも普及してないんで、どうしようもないんだけど、AtomForWikiとかに期待することにしておこう。

| | コメント (0) | トラックバック (0)

2006年2月 4日 (土)

とりあえず beta ってつけておくと

なんだか気が楽ってことに気がついた。つーか取りづらい。

何はともあれ、rss-mode の今回の機能追加は完了・・・と思う。まぁこんなもんでしょう。

いくつか、あったらいいなぁというのはあるんだけど、どれも大変だしなくても困らないから勘弁してやることにしよう。

| | コメント (0) | トラックバック (0)

2006年2月 1日 (水)

ぜんぜん気付いてなかったけど

バッファ不可視?にすると title-bar-format 効かないのか・・・。

| | コメント (0) | トラックバック (0)

2006年1月28日 (土)

自分では使わないもの

は、やっぱ作っちゃだめだな。

メンテできない、つーかしないし。

| | コメント (0) | トラックバック (0)

2006年1月26日 (木)

一から作り直し

っていつも思うのだが実際にはなかなかできないもんだ。

大体そう思うこと自体、前に作ったものがロクでもないとかダメダメだとかそういう状態なわけで、そういう時に作り直そうと考えるとやっぱりスバラシイものを作ろうとかっていう考えがあったりするわけ。

で、スバラシイものを作ろうとするとそれなりに構想とか設計とかなんだかんだが必要になってくるのだが、自分のようなへなちょこ現実逃避系の場合はそれだと逃避先になりにくいみたい。いや、ならないこともないと思うんだけど、今みたいにちょこっと逃避したいなぁぐらいではムリで、本格的に腰を据えて逃避しないとダメっぽい。

ってなわけで作り直すのはやめて、既存のものに手を加えてみたり。しかも大幅に・・・。ダメダメだと思ってるのを直すわけではなく手を加えてるわけなので、イイものになるわけもなく。

やっぱ一から作り直したいなぁ(以下無限ループ)。

| | コメント (0) | トラックバック (0)

2006年1月18日 (水)

ドナドナ二日目

支給されたPCの環境構築の一環として、何はともあれと xyzzy を入れてみる。
いや当分使い道はないんだけどね。

| | コメント (0) | トラックバック (0)

2006年1月14日 (土)

車輪の再発明(3)

あとのことは知らねぇっ!・・・なんて言っていられないバグが早速出てしまいましたorz

さぁどうしよう。って言ったって致命的な順に何とかしていくしかないんだけどね・・・。

それにしても今までよく動いていたな・・・。偶然ていうのは恐ろしいもんだ・・・。

続きを読む "車輪の再発明(3)"

| | コメント (0) | トラックバック (0)

2006年1月13日 (金)

車輪の再発明(2)

で、やってしまいました。あとのことは知らねぇっ!・・・と言いたい・・・。

ていうか、ちょっとXML-RPCで遊んでみたかっただけなのに何故こんなことになったんだ?

しかもAtomは思いっきり規格の過渡期だし・・・orz

| | コメント (2) | トラックバック (0)

2006年1月10日 (火)

車輪の再発明

なんでかわからないけど、時代から数年遅れたネタに手をつけてしまった。

とりあえず動けばいいや、っていういつもの方針に転換することにして早く楽になろうかな、とか。

| | コメント (0) | トラックバック (0)

2005年12月23日 (金)

ダウンロード数とか

ni-0.0.1.1-2.lzhのni経由のダウンロード数をはてなグラフ
ni-0.0.1.1-2
けっこう波があるのは何でだかわからん。

| | コメント (0) | トラックバック (0)

2005年12月22日 (木)

はしごをかけられたら

ヒャッホウ。(遅い)
ていうかこっちは某OHKUBOさんと違って大して中身は更新してないんだけど。

しかしライセンスのために一通りソースを眺めてしまったのはマズかった。見ると手を入れたくなるもんだなやっぱり。

でもひとしきりいじってみて、手を入れてもムダなことがあらためてわかったので適当なところで手を打ってやめとかないとさらにマズイかも。


で、やっぱり登らないといけないのだろうか。
登った後で外されるよりはいいようなそうでもないような・・・。

| | コメント (2) | トラックバック (0)

2005年12月14日 (水)

創作意欲と現実逃避

久しぶりに創作意欲がガンガンに湧いてて、アイデアも来てるんだけどなぁ。
これで現実逃避できたら何か作れそうな気がするんだけど、とても逃避できる状態じゃないし。

ていうか読書記録がメインのはずが、本読む暇もないし。

| | コメント (0) | トラックバック (0)

2005年12月 8日 (木)

xyzzy-0.2.2.235

ライセンス付のxyzzyが!ついにオープンソースだよ。

MITライセンスか~。そっちに変えようかと一瞬思ったり。
意味ないし、めんどくさいからやらないけど・・・。

| | コメント (1) | トラックバック (0)

2005年11月27日 (日)

WinHTTPで

お手軽にhttpsアクセスできそうな気がしたので、試してみた。
Windows HTTP Services (WinHTTP)

(defun user::test (url)
  (interactive "sUrl: ")
  (let ((obj (ed:ole-create-object "WinHttp.WinHttpRequest.5.1")))
    #{obj.Open["GET"][url][nil]}
    #{obj.Send}
    #{obj.WaitForResponse}
    (msgbox "~S ~S~%~S~%~%~S"
        #{obj.Status}
        #{obj.StatusText}
        #{obj.GetAllResponseHeaders}
        #{obj.ResponseText}
        )))

アクセスはできるんだけど、ResponseHeaderに文字コードの指定がない場合に、文字化けが起こるみたい。勝手に判別・変換しようとして失敗してるのか?
すでに投げ出し気味・・・。

| | コメント (0) | トラックバック (0)

2005年11月25日 (金)

ライセンスを

適用する作業をやっとこさ始めているところ。
ていうかこれが始めてみると、けっこう難しい。「これはあれを使っているからあれのライセンスが・・・」とかやってるとちっとも進まなかったり。

| | コメント (2) | トラックバック (0)

2005年11月 7日 (月)

宿題とか

なんだかんだと宿題とかを頂いた気がする。
とりあえず思い出したところからやっていく方針で。
というか以前の開発環境がPCとともにオシャカになってしまったままなのが、最大の問題なんだけど。

・xml-parser-modokiでコメント前後のスペースが消える

コメント前後のテキストに別々にtrimかけてるのがたぶん原因。なんとかなりそうな気がします。

・w3mの新しいバージョンは"-halfdump"がない?

w3m-0.5.1に上げてみました。が、あるようです。
ただエンコーディングとかその他オプションがだいぶ変わってるようなので、少しいじらないとダメそう。

| | コメント (1) | トラックバック (0)