Hatena::ブログ(Diary)

ursmの日記

2009-04-04

Vim 勉強会 in MTL に参加してきました

http://atnd.org/events/482

http://www.lingr.com/room/vim_mtl/archives/2009/04/03

なんですかあの部屋! 入った瞬間挙動不審になるほど素晴らしい会場でした。MTL の皆様ありがとうございました。

Vim 捌きを上達させる、たったひとつの冴えたやりかた」というタイトルで、中身は Kinesis Contoured Keyboard の宣伝という酷い発表をしてきました。資料は Kinesis 公式サイトの写真をふんだんに使用しているため公開できなさそうです。ごめんなさい。

懇親会にて

Kinesis 体験コーナーの店番をやっていました。

  • プレミアムモルツSALVATORE CUOMO のピザだと…!!
  • 「フットスイッチはないんですか」って3回ぐらい聞かれた。持って行けば良かったね
  • Vim 神こと kana さんにお会いした。はじめまして!
  • Colemak いいよ! Dvorak は記号類の配置がクソだよ!」ってレオさんに教えてもらった
  • Application Errorの入会方法について。「fork して何らかの活動実績を書いて pull request する」でどうか lang:ja
    • TODO: あとでサイトに書く
  • Poken は誰も持ってなかった

2009-01-21

Vim で Haml や Sass を書くときに便利なスクリプト

vim-haml

http://github.com/tpope/vim-haml/tree/master

これでインデントと色付けはバッチリです。インラインの Ruby コードも上手い具合に扱ってくれます。

textobj-indent

http://www.vim.org/scripts/script.php?script_id=2484

インデントされたブロックをテキストオブジェクトとして扱うスクリプトです。

1 %ul
2   %li foo
3   %li
4     %ul
5       %li bar
6       %li baz
7   %li quux

例えば3行目で vii と入力すると2-7行目が選択されます。4行目だと4-6行目です。

2009-01-12

fish と Vim の組み合わせでエラーが起こる件

fish をログインシェルにして Vim を使っていると、こんなエラーに遭遇することがあります。

E484: ファイル "/var/folders/-Y/-YynMfXyF747mLbL50k7ak+++TI/-Tmp-/v838983/0" を開けません

これは Vim の外部プロセス呼び出しが POSIX 互換シェルを前提としているからです。.vimrc で別のシェルを設定してやることで回避できます。

if $SHELL =~ '/fish$'
  set shell=zsh
endif

2008-10-04

endwise.vim

以前 Ruby の end を自動的に入力する Vim スクリプト (d:id:ursm:20080124:1201187864) を作って結構便利に使っていたのですが、vim.org に同じ機能のものが投稿されているのを見つけました。

http://www.vim.org/scripts/script.php?script_id=2386

作者の Tim Pope 御大は rails.vim や surround.vim を作った凄い人です。全然勝てる気がしないので乗り換えます。

2008-09-08

Mercurial でコミットする時に diff を出す Vim スクリプト

.hgrc[ui] セクションに以下の設定を足して

[ui]
editor = vim '+set filetype=hg-commit'

.vim/ftplugin/hg-commit.vim に以下のスクリプトを置くと

hg commit で diff が出るようになります。