いろいろやった

はいはい、また環境設定のお話ですよ。

GnomeでAlt-Spaceを無効化

今日Emacsでやっと動的略語展開なるものを知ったのですが、M-/だと遠いのでM-Spaceでやりたい。でもGnomeからEmacs使ってるとメニューバーの表示、非表示と被って使えない。ので、メニューのキーボードショートカットにいって、無効化しておく。あとディフォルトではM-Spaceにならないので.emacs.el*1

(global-set-key "\M- " 'dabbrev-expand)

を付け加えておく。

Gnomeでコピー、切り取りのキーバインドを変更

ディフォルトではCtrl-Shift-cとかになっていていみふ。なので、これまたさっきのキーボードショートカットキーにいってCtrl-cとかに変えておく。

追記
これはemacsのキーバインドにかぶるのでやっぱり却下。

SCIMの変更

Vineでは(?)Ctrl-Spaceを押すと漢字に変換するやつが立ち上がってGnomeからEmacs使うときにリージョンの選択をC-@でせざるおえない。こっちはあんまり好きではないので「デスクトップ→設定→SCIM入力メソッドの設定→全体設定→ホットキー」でC-Spaceを外しておく。これで幸せ。ちなみに僕はSCIMとか言われても全く分かりません。たぶん大丈夫。

sql-modeの追加

二学期にsqlを再勉強しはじめたのだが、「selectとかはまだしもテーブル名とか長くて覚えらんねー。補完とかやってくれよ、Emacsなんだから。。。」とか思っていた。なので、そういうのができるっぽいのを探す。で、あった。

「sql-indent.el」とかをコピペして/usr/share/emacs/site-lispとかに置いて、設定を.emacs.elにコピペでgo!とか思っていたら動かないorz。よく見てみるとelispのファイルに「^L」とかいうのが入っていてinvalid escapeうんたら言われていたので、5つのファイルから取り除く。でも、動かない。むむーとか思って、おもむろにsql.elだけを取り除くと動いた。最新版emacsにはsql-modeが入っていて、そいつとぶつかったりしたのかな。よく分からんけど、動いたからよし。それがすべて。

で、こいつを設定してやるとC-cC-cとかでバッファの内容をsqlに送ってくれる。が、まだ補完とかしてくれない。なので、このページとかに言ってみた。

こいつで静的略語展開とかいうのをやってくれるらしく「sでselect」、「faでfrom *」とかを補完してくれる。タイプ数が少なくてよい。が、まだテーブル名とかを補完してくれない。ということでさっき言っていた動的略語展開にたどり着いた。

「desc table;」とかやっておいて、M-Spaceでカーソルの位置に近いものから補完というか展開してくれる。これでテーブル名とか覚えなくてよい。さいこー。なお、この動的略語展開というのはsqlにもちろん限ったものではない。のでRとかの長い名前のオブジェクトとか、perlのプログラムとかそういうのにも使える。すばらしす。

まあ、「環境構築とかやってないで、sql自体を勉強しろよ」ってのが正論なのだが、こういうのはやらないと生きていけない主義。

あー、あとemacsのw3mでクリップボードからurl指定とかってどうやるんだろ?

*1:.emacsなど適宜読みかえて