はいはい、また環境設定のお話ですよ。
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など適宜読みかえて