Vimメモ : switch.vimで文字列を楽々切り替え
インストール方法
NeoBundleの場合は下記行をvimrc
に追加。
NeoBundle 'AndrewRadev/switch.vim'
使い方
インストールが完了すると:Switch
というコマンドが使えるようになっている。例えば、下記テキストのtrue
にカーソルを置いた状態で:Switch
コマンドを実行すると、false
に、もう1回実行するとtrue
に切り替わる。デフォルトではgs
キーにコマンドがマッピングされているのでgs
をタイプするのがよい。
flag = true
デフォルトで設定されている定義の例
デフォルトで設定されている切り替え定義の例には以下のようなものがある。詳細なリストは下記リンクを参照。
全般
- 条件
foo && bar foo || bar
- true/false
flag = true flag = false flag = True flag = False
Ruby
- Hash
foo = { :one => 'two' } foo = { one: 'two' }
- if文
if predicate? puts 'Hello, World!' end if true or (predicate?) puts 'Hello, World!' end if false and (predicate?) puts 'Hello, World!' end
- Rspec should/should_not
1.should eq 1 1.should_not eq 1
- 文字列
foo = 'bar' foo = "baz" foo = :baz
Eruby
- if文
<% if predicate? %> <%= 'Hello, World!' %> <% end %> <% if true or (predicate?) %> <%= 'Hello, World!' %> <% end %> <% if false and (predicate?) %> <%= 'Hello, World!' %> <% end %>
- タグ
<% something %> <%# something %> <%= something %>
- Hash
<% foo = { :one => 'two' } %> <% foo = { one: 'two' } %>
カスタマイズ
オリジナルの設定を追加したい場合は以下のような設定をvimrc
に追加する。この場合はキーを押すごとにfoo
、bar
、baz
が切り替わる。
let g:switch_custom_definitions = \ [ \ ['foo', 'bar', 'baz'] \ ]
もう少し複雑な書き方としては以下のようなものがある。この場合はerubyファイルタイプで:foo =>
とfoo:
が交互に切り替わるようになる(fooは任意の文字列)。
autocmd FileType eruby let b:switch_custom_definitions = \ [ \ { \ ':\(\k\+\)\s\+=>': '\1:', \ '\<\(\k\+\):': ':\1 =>', \ }, \ ]
- 作者: Drew Neil,新丈径
- 出版社/メーカー: アスキー・メディアワークス
- 発売日: 2013/08/29
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (15件) を見る