Emacs の CSV 用メジャーモード。シンタックスハイライトだけでなく、 CSV 編集に便利な機能がいくつかある。マニュアルを読んでも使い方がよくわからなかったが、何度か試して理解できた。 特に csv-kill-fields は感動した。「CSV ファイルの特定の列のデータだけ抜き出したい」ということはよくあり、いつも AWK でがんばるか、 Excel/Open Office 等を経由するか、はたまた Perl/Ruby のワンライナーでやっつけるか、など多少の手間をかけてしまっていた。 C-c C-k のフィールド指定は "1 2" とか "1,3" とか "1-3" と入力する。ハイフン入りのときだけ range 指定扱い。 特定の列だけ消したいときは C-c C-k で、逆に特定の列だけ取り出したいときは C-c C-k のあと C-c C-z で貼り付ければよい。 C-c
今回はこのバッチモードでのEmacs Lispに焦点を当てて,テキストを処理するスクリプトやサーバーデーモンを書くためのテクニックを紹介したいと思います. ■■ バッチモードでの標準入出力 バッチモードでは一部の関数が標準入出力を扱うための関数に変化します.早速おきまりのスクリプトを書いてみましょう(リスト1). ------------------ <リスト1> hello.el (princ "Hello, world.\n") ------------------ princ関数は第一引数を標準出力に出力する関数です.このスクリプトを実行するにはターミナル上でEmacsを起動します(リスト2). ------------------ <リスト2> % emacs --script hello.el Loading subst-ksc... oading subst-gb2312...
今年最後のポストがコレってのもどうかと思いましたが 今回はemacs lispを扱います。 短いスクリプトなら --batch --eval $ emacs --batch --eval '(print (+ 2 (* 6 3)))' 20計算機代わりに使えますね。 外部スクリプトを読むときには --script (emacs 23以降) (princ "Hello, World!") $ emacs --script hello.el Hello, World!この程度だと旨味がないですが…… emacsの特徴であるbufferを使うと、文字列の移動、カーソル移動を使うこなしてスバラシイ結果を得る事ができます。 若葉マーク故、綺麗じゃないですが...... dquote.el (with-temp-buffer (insert-file-contents-literally (car a
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く