Author Archives: misohena

2011-09-07

スケート座の祝福を受けた乙女たち

先週のプリティリズムをようやく見た。

サブタイトルの「スケート座」というのはオペラ座とかと同じような意味での「座」であって、まさか星座では無いだろうと思ってみたら、本当に星座だった。びっくりした。

彼女たちが生まれたとき、天にはスケート座が輝いていたらしい。たまにしか現れない星座っていったいどういう原理なのだろう。長周期の変光星か何かだろうか。

2011-09-04

財布プロトタイプ2

というわけで、触発されて財布のプロトタイプ2を作った。

20110904_wallet_proto2_1.jpg
20110904_wallet_proto2_2.jpg
20110904_wallet_proto2_3.jpg
20110904_wallet_proto2_4.jpg
20110904_wallet_proto2_5.jpg

両側を止める必要は無かったんだ。L字ファスナーは必須になるけど。部品点数は少なくなったので作りやすくなった。

札をコイン入れを挟むように入れるか、それとも写真のように一つの区画に収めてしまうかは微妙なところ。おつりとして札を受け取ったときに入れやすい方で。

2011-09-04

良さそうな財布

先月からの続き。特急電車の中で座席に備え付けの冊子をなんとなく眺めていたら、良さそうな財布が目にとまった。

20110904_wallet.jpg

厚さ1cmでコンパクト。ぱかっとファスナーを開けばすべてが取り出せる。

惜しい。かなりいい線いっている。だが、先日挙げた要求を満たしていない。機能が絞られている分薄いのが魅力か。

2011-08-31

Wanderlustでhtmlメールをfirefoxで見る(NTEmacs/Meadow)

検索してみるとしれっと~/.mailcapに「text/html; /usr/bin/firefox %s」と書けと書かれていて、ふむふむそうなのかと思ってfirefoxのパスを変えてやってみたらとんでもなくはまったのでメモ。Windows上だと色々細かいところで注意が必要。あ、ちなみにキー操作自体はメッセージが表示されてるバッファでvとかeとかである。

  1. .mailcapを作る。
    text/html; "c:/Program Files (x86)/Mozilla Firefox/firefox.exe" file:///%s
    

    Program Filesとか空白が入るのでダブルクォーテーションで囲む。%sだけだとc:/Users/~略のようになりc:というプロトコルだと判断してしまうのでダメ。頭に file:/// をつけたら大丈夫だった。

  2. flimのmel-q-ccl.elを次のように変更(書き出されたファイルの行末に=が入ってしまう問題を解消するため)。
    --- ./mel-q-ccl.el.~1.5.6.3.~   2006-06-13 00:10:02.000000000 +0900
    +++ mel-q-ccl.el        2007-11-28 19:01:00.750000000 +0900
    @@ -932,7 +932,10 @@
     (defun quoted-printable-ccl-write-decoded-region (start end filename)
       "Decode quoted-printable encoded current region and write out to FILENAME."
       (interactive "*rnFWrite decoded region to file: ")
    -  (let ((coding-system-for-write 'mel-ccl-quoted-printable-lf-lf-rev)
    +  (let ((coding-system-for-write
    +        (if (coding-system-p 'mel-ccl-quoted-printable-lf-lf-rev-unix)
    +            'mel-ccl-quoted-printable-lf-lf-rev-unix
    +          'mel-ccl-quoted-printable-lf-lf-rev))
            jka-compr-compression-info-list jam-zcat-filename-list)
         (write-region start end filename)))
    

    Quoted-Printable なエンティティの保存に失敗するより。
    他にも添付メッセージの保存 (Wanderlustで)とか。

  3. 関連するもの全部バイトコンパイルし直す。 (mel-q-ccl.elだけバイトコンパイルしてもダメっぽい)
2011-08-30

財布のプロトタイプを作る

というわけで、色々考えながら財布のプロトタイプを作ってみた。

必要な区分は5つなのだから、素直に中身を5つに区切ることにした。1つのフタを開いたら5つのものがすぐに取り出せる状態になるわけだ。日曜に近所の駅ビルで探してみたのだけど、こんな単純なものが意外にも見つからなかった。たぶん一生懸命探せば見つかるのだろうが、こういうのはたいてい自分で作った方が良いということなのだ(少ない選択肢の中から無理に選ぶよりも)。

財布外観:

20110830_wallet1.jpg

財布を開いたところ:

20110830_wallet2.jpg

財布を開いたところ:

20110830_wallet3.jpg

財布の中の底上げされたポケット:

20110830_wallet4.jpg

財布の側面部品:

20110830_wallet5.jpg

A4のコピー用紙とボールペン、三角定規、はさみ、ホッチキスで作成。途中ホッチキスの芯が無くなったので一部クリップで代用。

考えたこと:

  • よくある財布の形状に対する一番の疑問点。蓋がいくつもあり、取り出し方向もバラバラ。一回の会計であっちを開けたりこっちを開けたり。これを解決するにはフタが一つであることが必要。
  • 札の入れ方。この形だとどうしても札は折って入れることになる。二つ折りにするか、多く折り曲げて小さくするか。二つ折りにするとして、どういう向きに入れるか。折り曲げた山(札の中央)を上、下、手前、奥のいずれにするのが良いのか。手前にするのがよさそう。重なっていても狙った枚数を素早く取り出せる。
  • 深さとコインやカードの取り出しやすさとの関係。札、コイン、カードといった高さが異なるものを同一の深さのポケットに入れると、どうしても取り出しにくいものが出てしまう。二つ折りにした札の高さは約7.5cm。横にしたカードは約5.5cm。コインは100円玉で約2.5cm。札の高さに合わせてポケットを深くすると、コインを取り出すときに指をポケットの奥まで入れて取り出さなければならない。解決案。札を四つ折りにする(受け取った札を入れるのが大変なので却下)。底上げする。指を突っ込みやすいようにポケットが開く幅を大きめにする。ポケットの仕切りを低くすると、鞄の中で財布が暴れたときにコインが別のポケットに移動してしまうのでダメ(実際に写真の通り切り込みを入れてみたのだが、財布を振るとコインがカードの方へ入ってしまう)。
  • ポケットの幅。最小幅(閉じたときの幅)はポケットあたり一律5mmとした。つまり、財布全体で2.5cmの幅となる。区分によってもう少し詰めてもいいかも。

課題:

  • カードが一つのポケットに入っているのは悪くはないのだが、狙ったカードがすぐに出せるような工夫がもう少しありそうだ。一番端っこのポケットなので、二つ三つスリットを入れてもいいのではないか。
  • フタをどうするか。ボタン(ホック)型にするのかL字ファスナーにするのか。ファスナーはカードを取り出すときに引っかからないか。
  • 実際にどんな素材で作るか。やはり革だろうか。革細工はやったことが無いけどやってみたい。
2011-08-29

財布について考える

いつだって本当に自分にフィットするものは自分で作るしかないのである。

今日、財布の中のカードを整理していて思うところがあって、新しい財布が欲しいと思った。

要求:

  • 収納するものは次の5種類。
    • 札(区分けの必要なし。多くても五枚程度)
    • 硬貨大(500円、100円)
    • 硬貨小(50円、10円、5円、1円)
    • カード(カードは1ヶ月に1回以上使うものを基準に厚いものから薄いものまで合わせて7枚に絞った。使用頻度は少ないが出先で突発的に必要になるカードは財布ではなく鞄のポケットに入れる(ただし貴重なものは財布へ)。鞄への入れ方については色々問題があるのだが、それはまた別の話。下手なカードフォルダーに入れてすぐに取り出せないようにはしないとだけは言っておく)
    • レシート(レシートは家計簿をつけているので捨てない)
  • カードが一枚一枚別々のポケット(スリット)に入っている必要は無い。よく使う2枚が取り出しやすければ良い。
  • 中身が飛び出して紛失するようなことがないこと。穴が空かないように最低限の耐久性があることと、カードがするりと抜け落ちるのを防ぐ構造であること。
  • 店での支払いがスムーズに出来ること。例えば次のようなケースが効率よくできること。
    • ローソンでの買い物の例: 商品と一緒にPontaカードを出し、商品とPontaのバーコード読み取ってもらい、Pontaカードを財布に戻して、支払いはSuicaでと言ってSuicaをリーダーに当て決済し、Suicaを財布に戻し、商品とレシートを受け取ってレシートを財布に入れる。
    • 現金払いの例: 商品を出して合計金額を聞き、合計金額の下の桁からマッチする硬貨・札を出していき出した金額が合計金額を超えたら出し終わり、商品と釣り銭とレシートを受け取って釣り銭を札と硬貨100円以上と硬貨100円未満に分けて財布に入れ、レシートも(必要なら二つ折りにして)財布に入れる。
  • 上記を満たした上で可能な限り薄くて小さいこと。

このような要求を満たす財布の形状とはどのようなものだろうか。

2011-08-28 ,

Android版MobileOrgの問題

Android版のMobileOrgには色々と問題がある。

さしあたって、私が良く遭遇する問題には次のようなものがある。(0.6.1時点)

これらの問題があっても注意すれば十分使えるのだが、改善に期待がかかるところではある。7月半ばから何もコミットがないところが気になるが……。

2011-08-28 ,

org-mode 7.7 の org-toggle-checkbox

org-modeを7.5から7.7へアップデートしたらorg-toggle-checkbox (C-c C-x C-b) が動かなくなった(call-interactively: Wrong type argument: markerp, 304 のようなエラーが出る)。

調べてみるとorg-list.elのorg-toggle-checkbox関数内でマーカーの取扱がおかしいようだった。org-modeのリポジトリを見ると7.7リリース以降にそれらしい変更が加えられていた。

上の二つを手動でorg-list.elに適用したら正しく動くようになった。

ソースコードを読んで初めてorg-toggle-checkboxがリージョン一括変更に対応していることを知った。でも7.7の段階では最後の行の扱いが良くない。7.7以降org-list.elには色々手が入っているようなので、改善されていると良いのだけど。

2011-08-21 ,

org-modeで自動的にpushする

AndroidのMobileOrgを今ひとつ活用できていない理由はorg-mobile-pushを忘れるからなのである。なので、書き換えたら自動的にpushするようにしてみた。

;;; org-agenda-filesに該当するファイルをセーブしたときは、
;;; 一定時間後かEmacs終了時に自動的にorg-mobile-pushを実行する。

(setq my-org-mobile-push-timer-id nil)

(defun my-org-mobile-push-schedule ()
  (my-org-mobile-push-cancel)
  (setq my-org-mobile-push-timer-id
        (run-at-time "1 min" nil 'my-org-mobile-push))
  (add-hook 'kill-emacs-hook 'my-org-mobile-push)
)
(defun my-org-mobile-push-cancel ()
  (if my-org-mobile-push-timer-id
      (progn
        (cancel-timer my-org-mobile-push-timer-id)
        (setq my-org-mobile-push-timer-id nil)))
  (remove-hook 'kill-emacs-hook 'my-org-mobile-push)
)
(defun my-org-mobile-push ()
  (my-org-mobile-push-cancel) ;org-mobile-pre-push-hookをフックしているから不要なんだけど、一応。
  (org-mobile-push))

;; セーブ時に自動pushをスケジュールする。
(add-hook 'org-mode-hook
          ;; NOTE: org-mode-hookが呼ばれるときに
          ;; (org-agenda-files)を使った判定を行うとなぜか終了時
          ;; にorg-mobile-pushが失敗する。仕方ないので判定は
          ;; after-save-hook呼び出し時点で行っている。
          #'(lambda ()
              (add-hook 'after-save-hook
                        #'(lambda ()
                            (if (member (expand-file-name (buffer-file-name)) (mapcar 'expand-file-name (org-agenda-files)))
                                (my-org-mobile-push-schedule)))
                        nil t)
              ))
;; 手動でorg-mobile-pushしたときは自動pushを行わないようにする。
(add-hook 'org-mobile-pre-push-hook #'(lambda ()
                                        (my-org-mobile-push-cancel)))

最も単純な方法では、(add-hook 'kill-emacs-hook 'org-mobile-push)だけで十分なのだけど、これだとEmacs終了時に必ずorg-mobile-pushを実行するので終了が遅くなってしまう。

既存のものが何かないかなと探したらorg-mode+MobileOrg(+Dropbox)でGTD始めました。オレオレ改造をごっそり公開 - ヒルズで働くholidays-lの技ログに終了時にファイルのタイムスタンプを見てorg-mobile-pushを実行するかどうか判定するコードが掲載されていた。しかし、customでorg-mobile-directoryを設定していると変数org-mobile-directoryがpushやpullをするまで有効にならなかったり、org-mode使うまで関数org-agenda-filesが有効にならなかったり、そのままではうまく動かなかった。

上の実装ではorg-agenda-filesに該当するファイルをセーブしたときに、一定時間後または終了時にpushするようにしている。一定時間以内に何回もセーブした場合は最後にセーブした時点から一定時間後にpushする。また、手動でpushしたときは一定時間後のpushをキャンセルする。

Emacs以外から書き換えた場合などを考慮すると、タイムスタンプを見る方式の方がいいのだろうけど、まあいいや。

2011-08-08

吉野家のカレー

今日初めて牛丼カレーではない単体のカレーを食べた。あれ、何かすごく物足りない。普通のカレーって感じ。ルーの粘度が低いのが気になっちゃう。吉野家の今回のカレーは牛丼と一緒に食べて初めて成立するものなのだなと感じた。牛丼には牛肉だけでなく玉ねぎも入ってるしね。