Sendai.vimに参加してきた

Sendai.vim(どこにリンク貼ればいいんだろ)というvimの勉強会に参加してきた。

こういう勉強会にいつも行きたいと思ってたんだけど、だいたい後になってから知るというパターンが多くて、あんまり参加できていなかった。今回は事前に知ることができたので申し込んで参加できた。

内容

最初の方はひとりずつ自己紹介。みんなvim歴(やvi歴)が長くてさすがだなーと思った。自分は、サーバの設定のときとかに騙し騙しviとか使っていたのが数年と、最近やっとクロスプラットフォームなアプリの便利さを実感して、本気でvimを使い始めてまだ数ヶ月くらいなので、ついていけるか最初は結構不安だった。

その後、いろんな使い方の話になって、id:yuichi_katahira さんと id:masanobuimai さんがいろいろしゃべってるのを聞きながら、「あーそんなのあるのかー」とか思いながらいろいろメモる感じだった。

ついていけないかなーという心配は無用だった。全然ついていけたのでよかった。

覚えたこと

いくつか新しいことを覚えた。

control + [でesc

今日一番衝撃的だったのは、「control + [でescキーの代わりになる」というところかも。escキーは遠くて打ちづらいだけでなく、キーボードによって位置が微妙に違うのよね。特にThinkPadだと間違ってF1を押してヘルプが開いちゃうことが良くあるし、大きな悩みだった。これは頑張って習得したい。

f/F

「fとかFはあんまり使わないかも」みたいな話題もあった。実は個人的にはf/Fは最近マイブームなコマンドで、t/T、;/,とあわせて使いまくりなので、やっぱvimは人それぞれで参考になるなーと思った。

fとか使わなくても、wとか使えばほとんど同じタイプ数で目的地に行けるのか。なるほど。そういわれてみればそうだ。

control + w, s と control + w, v と control + w, c
  • control + w, s でウィンドウを上下に分割
  • control + w, v で左右に分割
  • control + w, c で分割したウィンドウを閉じる

今までこの操作は、ショートカットキーではなく「:vs」「:sp」「:clo」のコマンドでやっていた。でもよく考えたら、ウィンドウの移動はcontrol + w, control + wをいつも使ってるので、分割もショートカットでやった方が統一感があって良いかも。

[追記]ウィンドウの移動をcontrol + w, hjklでやると、狙ったところに移動できるのでさらにラクになるとトラックバックで教えていただいた。[/追記]

検索のハイライトを消すには :nohl

これも知らなかった。いつも「:noh」でやってた。どこが違うんだろう。使い分けれるようになりたいな。

[追記]:nohと:nohlは同じだとコメント欄で教えていただいた。ヘルプによると、正式名称が:nohlsearchで、それを省略した形。[/追記]

control + x, control + o で補完

control + pとかcontrol + nはよく使ってたけど、辞書からの補完はプラグインが必要なのかとばかり思っていたら、ある程度標準でもやれるっぽい。

ちなみに補完候補のメニューが開いて、メニューを上下にたどりたいときはcontrol + oとcontrol + pでいける。

template.vim

新規作成時にテンプレを読ませられる。

たぶんこれだと思う。~/.vim/template/ 以下に「template.hoge」を作ると、拡張子hogeのファイルのときにテンプレにしてくれる。さらにパスやファイル名のプレフィックスとかサフィックスとかによってもテンプレートを使い分けられるようだ。

こりゃいいわ。

autoclose

括弧とかクォートを開くと自動で閉じてくれる。閉じてほしくないときはcontrol + vを押してから括弧とかを入力。\aコマンドでon/offをトグル。

htmlのタグとかRubyのdefとかを閉じるのもやってたみたいだけど、あれはどうやるんだろう?このautocloseじゃないのかな?

[追記]autoendか!なるほどー[/追記]

gjとgk

物理行じゃなく論理行で上下移動するコマンド。jとkにマップするという話があったが、実は自分もこれをやっている。プログラム書くときはf/Fとかで移動するからどうでもいいんだけど、日本語を入力するときはどうしても物理行が長くなってしまって、しかもfとかで移動しづらいので(日本語だから)、結構便利。

以前Emacs使ってるときもこれをやってたんだけど、これと同じことを設定するとなると大変だったなあ。vimは標準で入ってるからすごいわ。

なんか自分も語れるようになりたい

参加っていうか、今日はただただ聞いてメモるだけで結構いっぱいいっぱいなところがあった。早く一人前になって、LTとかで語れるようになりたい。