gvimのカレントディレクトリがおかしい
何故か自分のUbuntu9.10ではgvimのカレントディレクトリが毎回/home/usernameになってしまいます;
毎回cdするのはだるいので
cd %:h
をvimrcに書いてカレントディレクトリを定義しなおすようにして解決しました
他のMacやwindowsでは遭遇したことのない不具合なのですが…;
何故か自分のUbuntu9.10ではgvimのカレントディレクトリが毎回/home/usernameになってしまいます;
毎回cdするのはだるいので
cd %:h
をvimrcに書いてカレントディレクトリを定義しなおすようにして解決しました
他のMacやwindowsでは遭遇したことのない不具合なのですが…;
#追記
時代はGNU screenからtmuxへ – それ、Gentooだとどうなる?
tmuxというのもいいかもしれません
というのも、tmuxは特別な操作をしなくてもdetach時点での分割状態を保存してくれます
screenだとどうやれば分割状態を保存出来るのか自分は分かっていません
ただ、tmuxは現状パッケージマネージャで入れられないようなので更新が面倒ではあります
#追記終了
Linuxでは大体ターミナルから操作を行っているのですが、前からターミナルを便利に活用できるらしいscreenというのが気になっていました
screenは複数のシェルを切り替えて使えたり、分割表示したり出来るというのは知っていたので興味津々
早速インストールして実行すると普通のシェルっぽい表示です
このままだと複数のシェルを起動した時にどれを操作しているのか分からないので.screenrcを弄ります
hardstatus alwayslastline “%{= wk} %-w%{=bu dr}%n %t%{-}%+w %= %{=b wb}%y/%m/%d %{=b wb}%c”
とりあえずこれだけ書いてscreenを再起動
すると画面下部に0 bashみたいな表示になると思います(shellがbashの場合)
その状態で^a-c(又は^a-^c)と押すと0 bash 1 bashという表示になると思います(1 bashが赤文字の反転状態、そのシェルがフォーカスされている)
※^はCtrl、-は一度指を離す操作(つまり^a-cはCtrl押しながらa押下、指を離す、c押下という操作になる)
これでシェルが2つ起動している状態になります
シェルの切り替えは^a-0とかで出来ます(数字はシェルごとの番号に置き換え)
次に、screenで画面を分割してみます
^a-S(大文字のS)で画面が上下に分割されます
新たに生成された画面にはシェルがないと思うので^a-TABで画面を移動し、
^a-cしてシェルを生成するか、^a-0などして既存のシェルを割り当てます
環境(screenのビルド具合)によっては縦にも分割できます
^a-|(小文字のLではなく縦棒、いわゆるパイプなので注意)で縦に分割されます
画面の移動は同じくTABで出来ます
これで3ペイン表示とか出来るようになりました
ちなみにシェルの切り替えはvimの操作中とかでも普通に出来ます
ただし、screenのコマンド(^a-*)がvimなんかのコマンドと被らないように注意しなければなりません
さらにvimにおける画面分割も覚書
:split、:spで横分割
:vsplit、:vsで縦分割
これだけでかなり効率が上がると思います
windowsではKaoriyaさんのを使っているのですが、Mac版は公開されてないようでした
検索するとmacvim-kaoriya – Project Hosting on Google Codeなるプロジェクトを発見
早速インストール
portで云々などの情報も見たので面倒臭そうとか思ったのですが、普通にdmgを入れるだけでOKでした
自動更新も出来るみたいなのでport経由じゃなくても更新は簡単そうですね
今までもKaoriYa.netさんのgvimを使っていたのですが、1つ問題がありました
それは何故かtxt等を開くプログラムとしてgvimを指定しても、txtをダブルクリックすると新規ファイルが作成されてしまうのです
これは、エクスプローラーのツール->フォルダオプション->ファイルの種類で該当する拡張子でアクションのプログラムをgvimにし、
引数として“%1″(ダブルクォーテーション必須)を渡すようにします
引数の指定は”~”で囲われたプログラム名の後に半角スペースで区切って追記するだけです
自分の環境で何かの設定がおかしかったのかもしれませんが、
引数がgvimに渡された時にクォーテーションで囲まれておらず、
パスに含まれる半角スペースのせいでファイル名が切れていたためでした;
何はともあれ、これでD&Dなどせずにgvimでの編集が実行出来るようになりました
%s /before/after/gc
でbeforeをafterに置換します
先頭に%を付けると開いているファイル内全て
末尾はgで行内複数回置換、cで確認ありとなります
とりあえずこれだけ覚えておけば基本的な置換は出来ますね