« howmで書いてからアップする日記 |Main| legacyFormatの短いサンプル »

« howmで書いてからアップする日記 | zakki(雑記) | howmで書く日記3日目 »

眠たい日記

[2006-11-12 07:28] howmで書いてから貼る日記、第二弾。

土曜日の朝4時に、そろそろ眠いから寝ようと思って布団に入ったものの、 眠れなかった。体と脳のリズムが一致していないと、疲れて眠りたいのに 眠れなくて困る。こういうときに「睡眠改善薬ドリエル♪」とか飲めばいいのかなぁ。

【よい睡眠をとるために】 睡眠障害の診断・治療ガイドラインを読んでみたが、やっぱり「同じ時間に毎日起床」を守っていないのがいけないのだろう。

脳よりも先に体が疲れてしまう原因をなくすのも重要かもしれない。 まず作業に没頭しすぎて食事を取らないのはよくない。 ある限界を超えると急に肩こりや頭痛になって出てくる。 冷えも要注意だが、暖房による乾燥も目によくない。 昨日のは空気が乾燥して目が脳より先にダウンしたのかもしれない。

杜仲茶の有効成分が熱に強いのを利用して、杜仲茶を濃く出しつつ加湿器代わりにしてみる。

リズムが崩れて変なことになったせいで、昨日は18時に起きて、そして今朝だけど眠い。ここで寝ると手がつけられなくなるので、頑張って起きておいて、早めに寝て、明日も早起きしよう。そうしよう。


__ = [2006-11-12 17:11] ダメだった(´・ω・`) 遅めの朝ご飯を10時頃に食べたら眠くなって、眠気覚ましにゲームを始めたら退屈な展開になってなおさら眠くなって、途中でやめて30分だけ寝ることにして、目覚ましをかけて寝て、一瞬で30分経って驚いて、もう30分寝て、もう30分寝て、もう一度寝て、起きたら17時。

時間帯的に朝ご飯のはずなのにたくさん食べ過ぎたのが眠くなった原因か。胃がいっぱいだったので当初の予定だった「自転車でららぽーとへ」ができなかった。あと、何よりも根源的な問題は意志の弱さかも知れない。滝に打たれると意志が強くなったりするんだろうか?

まだ5時なのでまにあう。自転車で買い物に行ってこよう。 ラベンダーのエッセンシャルオイルを買ってきて寝る前につけることにしよう。


__ = [2006-11-12 20:15] ささださんとこから。 第1回 UEC コンピュータ 大貧民大会。じゃんけん大会より面白そう。


__ = [2006-11-13 00:40] Javaでファイル名からそのファイルのアイコンを取得するのは、 思ったより難しそう。com.ms.win32.SHFILEINFOを使って ファイルに関連付けられたアイコンを取得するには?[2.0のみ、C#、VB] - @IT で紹介されているAPIを叩けば可能だと思うけど、これは WFC (Windows Foundation Classes for Java)っていうMSのJavaVMでしか動かない ライブラリの中にあるらしい。

しばらく調べてダメだったら「外部ファイルへのリンク」を表現するマークと拡張子の組み合わせで行くしかないかなぁ。


__ = [2006-11-13 01:03] GNU Emacs Lispリファレンスマニュアル: Emacs Lisp関数のアドバイス。 おー、ドキュメント文字列っぽいものがあるみたい。しかもアスペクト指向?!

GNU Emacs Lispリファレンスマニュアル: Coding Conventions 「C-c letter」はユーザ向けに予約されており、他にもメジャーモード用、マイナーモード用の割り当てもあるんだそうな。

とりあえず(replace-string "foo" "bar")で置換できるとか (insert "foo")で挿入できるとかがわかった。 これらの関数はみんなカレントバッファや 現在のポイントに対して処理を行うようだ。 目的を果たすにはまずバッファをコピーしてから置換する必要があるのかなぁ。 でも、よく考えると、今までブラウザで書いていたときはsplitボタンで <split><p><a name="040358" href="http://www.nishiohirokazu.org/blog/2006/11/howm.html#040358">__</a> 等という文字列が挿入されるようになっていたわけなので、 howmで書いたのを置換するまでもなく、両方で有効な書き方で挿入すればいいだけじゃないかと。 ローカルのhowmの文章に多少タグが混じろうと、読むのは自分だけなんだから別に問題ないし。

じゃあaction-lock.elの105行目あたりにあるaction-lock-dateあたりを参考に

(insert
 (format-time-string
  "<split><a name='%H%M%S' href='#%H%M%S'>\n= %Y-%m-%d %H:%M:%S\n</a>"))
って感じで。

知らない構文がいくつか。,とか&とか@とか。

あとはこれをなんかのキーに割り当てる方法を調べよう。 howm-mode.elの300行目にあるhowm-set-keymapの中で、 define-keyという関数が呼ばれているのでこれを使うみたいだけど、 使い方がわかりにくいなぁ。

(defun mylib-insert-split ()
  (insert
   (format-time-string
    "<split><a name='%H%M%S' href='#%H%M%S'>\n= %Y-%m-%d %H:%M:%S\n</a>")))

(define-key global-map "\C-cs" 'mylib-insert-split)
と書いたら C-c sとタイプしたときにWrong type argument commandpといわれてしまう。

interactive - refwiki こういうのに使う関数は、 ただの関数じゃなくて(interactive)と宣言しないと行けないらしい。 これ、見かけ上は関数の中で別の関数を呼んでるだけに見えるけど、 挙動から考えると関数オブジェクトに何らかの属性をつけているように思える。 マクロでなんかするのだろうか。謎が多い。

でもとりあえず使えるようになったからいいとしよう。 マウスを使わない分、もとのよりいいかも。 Meadowはこうやって簡単に自分用のカスタマイズができることを考えると便利。 viも慣れるとPythonでカスタマイズできて便利なのかも知れないけど、 viと違ってEmacs Lispは「腐った言語」じゃないし、 オムニ補完よりオリジナルのhowmの方を使いたいので、 とりあえずはMeadowでいいや。

サクラエディタをアンインストールしてもいいと思えるまでには、 あとgrepの使い方を調べないとな。


= 2006-11-13 02:47:42 今日はラベンダーのエッセンシャルオイルを買いに行ったのだけど、 ピュアなのをかいでみて、いまいちピンと来なかったので 「眠り姫」というブレンドものを買ってきました。

トラックバック(Trackback)

Trackback URL: http://www.nishiohirokazu.org/mt/mt-tb.cgi/415

フィードバック

by スイト | 2006年11月13日 06:09

ドリエルは体質に合わないと気持ち悪くなりますよ。 私は去年 不眠で一度 トライしましたが、 眠くならず、むしろ気持ち悪かったです。

ホットミルクとか意外と眠れますよ。

by れり | 2006年11月14日 00:13

>アスペクト指向?!

アドバイスってのがEmacs Lispにあるのは知らなかったけど,ぱっとリンク先見ると(というか最初しか読んでないけど),単純に関数フックして処理の前後に処理をはさんでるだけな感じ.多分マクロで処理してるんじゃないかと妄想. アスペクト指向っていうと,複数のオブジェクトのメソッドに同じ処理はさむような感じじゃないかしら.(適当

まぁ、もちろん関数をフックして前後に処理を挟んでるだけなんだけど、関数を再定義しないでそういう「アドバイス」の追加で挙動を変化させる、というのがアスペクト指向っぽくない?「もしかして源流はここだったのか?」と思ったわけですよ。

「アスペクト指向入門」を読みました — ありえるえりあによれば 「AOPには独特な用語があります。特に「アドバイス」という用語には違和感がありました。本を読んで、「アドバイス」がLisp由来だと知りました。」だそうな。

by れり | 2006年11月14日 23:05

なるほど. しっかし,まさかアドバイスって言葉が,Lispからきていたとは・・・.勉強になりました.

又聞きなので本にどういうことが書いてあったのかはよくわかんないけどね。

ご意見・ご感想をお送りください(フィードバック)

(フィードバックはメールで送信され、基本的に表示されませんが、内容によっては公開させていただくこともございます。ご了承ください。Your comment doesn't appear the page immediately. If the comment has value to other people, it will be put on the page or subsequent entries. Thank you.)

上の情報は、いずれも未記入でかまいません。 All of above questions are optional.