Lisp

虹色の括弧、灰色の括弧

私は Vim では S 式は書かないんですが、たまたまヘルプを見ていてちょっと面白い機能を発見しました。括弧の色付けをカラフルにする機能です:多分お遊び的なものだと思いますが、括弧が何重にネストされていても色で対応関係が分かって便利そうですよね。基…

Emacs - Scheme 間通信 ~ S 式オブジェクト記法による ~

最近 MP3 のタグを読むプログラムが必要になり、elisp で書こうとしました。が、バイナリ・データの扱いが無理っぽい気がしたので、Scheme で書くことにしました。一応それは上手くいったんですが、アプリケーション自体は emacs 上に作りたかったため、Sche…

関数生成関数の利用例: ミニバッファ履歴の整理

id:reinyannyan:20070416:p1 (簡易クロージャの実装) で、変数の値を関数式の中にインライン展開することで擬似クロージャを作成する方法を考えました*1。今回はその応用編です。savehist-mode を有効にして、ミニバッファの入力履歴を Emacs セッションを通…

ワイルドカードを含むディレクトリをブックマーク登録

dired (ディレクトリ一覧モード) でワイルドカードが使えるのをご存知でしょうか? C-x d でディレクトリを開く際にワイルドカードを使うと、そのバターンにマッチするファイルだけを一覧することができます。ファイルが乱雑に置かれているような作業ディレ…

ミニバッファ上でワイルドカード展開

Vim から Emacs に移行して (併用はしてますが) 困ったことの一つが、ファイルを開く時 (C-x C-f) にグロブ記号を展開してくれない、ということでした。厳密には、内部的にはグロブ文字を受け取ってはくれるんです。が、マッチした全てのファイルを開いてし…

リストとしての関数 -> 簡易クロージャの実装

最近 Lisp がお気に入りです。今日は、Lisp プログラムがリスト (括弧で括られた式) として表記される、という当たり前の事実について、Emacs Lisp をベースにしながら考察してみたいと思います。 関数はリスト、リストは関数 古い Lisp では、関数は第一要…

折り畳み表示

emacs を使いだして困ったことの一つが、ファイルを折り畳み表示する (一覧性を高める) 方法がなかなか分からなかったことです。Vim ではインデント単位で折り畳む設定が便利なんですが (set fdm=indent)、emacs ではどうするのか、調べることすらままならな…

はじめての elisp (LDR の未読件数を表示)

emacs はじめました。Lisp への関心、と言うより憧れの感情から Scheme を学び始め、Vim+Scheme の組み合わせが案外扱いづらいな、という感想から emacs に手を出したところ、後戻りできなくなってしまった、という感じです。元来私はガチガチの Vimmer だっ…