準備
- サンプルの rev-list-options.po を C-x C-f で開きます(po-modeになります。po-modeにならないときは po-mode をパッケージインストールしてください)
- po-ediff-previous-msgid.el を C-x C-f で開きます。
最初の関数
(defun po-ediff-previous-msgid ()
"Ediff previous msgid (marked #| ) and msgid."
(po-find-span-of-entry)
(po-get-msgid))
まずは関数の定義です
(defun hogehoge (引数1 引数2 ... ) "説明" body1 body2 ... )
ですけど、読みにくいので、通常は上記のように改行して書きます。
"説明" はこれっきり1つで済ませます。 説明のうしろは全部本体です。 body は幾つ並べ得てもいいです。同じレベルのを順番に実行(評価)します。
なお、最後の評価結果が関数の戻り値となるのが C言語 の return なんかと違うところです。 このため、処理結果を格納した値をわざと最後に単独で (resultvalue) とか置いたりします。
関数の登録
この関数を登録するには、これを評価します。再度評価すると新しい定義に更新されます。 我々が普段「関数の実行」と言っているのは、厳密にいうと「関数の呼び出し」です。わりナチュラルに混同しますので、文脈で使い分け、分からない時は素直に尋ねた方がよいでしょう。
さてこの関数を登録(更新)する操作は C-M-x (CTRL+ALT+x) です。
関数の実行(評価)
登録したら早速試してみましょう。
サンプルのバッファに行って、適当なエントリに行って、 M-: (ALT+:)で eval: とプロンプトが出るので
(po-ediff-previous-msgid)
とすると、ミニバッファーに結果が表示されます。 msgid の文字列(とその後ろにごちゃごちゃ)が表示されます。後ろのごちゃごちゃは文字のプロパティです。ここではとりあえず気にしなくていいです。
今回はここまで。