March 30, 2007

ダブルクリックで選択する文字範囲の変更

先日ちょっとした事故でgnome-terminalのprofileをすべて消失させてしまってから、ダブルクリックによる文字選択の挙動が変わってしまったので、ちょっとメモ。

まず何が悪かったかというと、profileのdialogにある「単語単位で選択する文字」が空だったことで、これによって英数字のみ単語として認識する、という状況だった。これだと、ちょっと不便なので、設定を次のように変えた。

.0-9A-Za-z-

実際にこれを処理しているのがvte_terminal_set_word_chars()で、レンジ指定を可能にするためにハイフンのみ特殊な役割を担っている。よって-そのものを含めたい場合は、その出現位置に注意しないといけない。ややバグっぽい挙動だけど

0-9A-Za-z.-

と記述すると.が無視されてしまう。まあ単独の文字として扱われる条件が

                if ((wbuf[i] != '-') && (wbuf[i + 1] != '-')) {

で、レンジの条件が

                if ((wbuf[i] != '-') &&
(wbuf[i + 1] == '-') &&
(wbuf[i + 2] != '-') &&
(wbuf[i + 2] != 0)) {

となっていて、これに漏れた条件については救済していないのが原因。BK臭が漂ってはいるけれども最初に書いたようにしておいた。

March 28, 2007

rpmでのbuild手順の省略方法

rpmをbuild中にspecファイルの記述ミスとかで、散々待たされた挙句エラー、なんてことを経験したことはないだろうか。そんな時に役立つのが--short-circuitオプション。

-bc-biと組み合わせて使い、それぞれ、%buildから開始、%installから開始という具合に動作する。configureを%prepとかに書いとけば、makeでこけても

$ rpmbuild -bc --short-circuit foo.spec

とかやれば、続きからbuildしてくれる。
ほとんどがconfigureは%buildに書かれているので、便利か不便かはspecの書き方次第になってしまうのがちょっと悲しいところ。

March 26, 2007

URLの補完

URLを入力するときにctrl+enterでwww. + .com、shift+enterでwww. + .net、ctrl+shift+enterでwww. + .orgを補完してくれるらしい。

他にはctrl+Lでロケーションバーに移動とか、ロケーションバーにフォーカスがある状態で、ctrl+UでURL削除とか。その他のEmacs keybindings