emacs-lisp-intro 輪講(4)
emacs-lisp-intro の輪講 4 回目です. 今回は「7. 基本関数 car, cdr, cons」から開始します.
7. 基本関数 car, cdr, cons
- (a b c d) というリストがあったとき, car は a, cdr は (b c d) となる.
- car と cdr は非破壊的にリストを操作する.
- (cons ‘a ‘(b c d)) とすると (a b c d) となる.
- length はリスト長を返す
- nthcdr ははじめて見た. なににつかうかな?
- nth は C 言語の配列インデックスと同じ.
- setcar はリスト先頭要素変更
- setcdr はリスト2番目以降の要素変更
7 章は, 関数の意味を知っても使いどころがわからないのであまり身についていない気がします.
あたまの片隅に覚えておいて, 今後必要になった時に使って覚える感じになるかと思います.
8. テキストのカットと保存
- interactive “p” は前置引数を関数の引数として渡す. デフォルトは 1.
- interactive “c” は関数の引数としてプロンプトして問い合わせた文字を渡す.
- search-forward は一文字の探索を行うときに使う. 見つけた文字の次の位置にポイントを移動する. 逆の動作を行うには search-backword を使う.
- kill-region は第一引数がキルの始まり point, 第二引数がキルの終わり point をうけとる. この二つの point の範囲を切り取ってキルリングへコピーする.
- last-command 変数は直前に実行したコマンドが格納されている. この変数, 自分で関数作るときに結構便利に使えるような気がする.
今日はここまでです. 次回は 8.3 章からです.