質問: vimで行をコメント/コメント解除する簡単な方法は何ですか? 私はviでrubyコードファイルを開いています。#でコメントアウトされている行があります。class search < activerecord::migration def self.up # create_table :searches do |t| # t.integer :user_id # t.string :name # t.string :all_of # t.string :any_of # t.string :none_of # t.string :exact_phrase # # t.timestamps # end end def self.down # drop_table :searches end end 最初のdef ... endセクションのすべての行のコメントを外したいとしましょう。 vimでそれを行うための効率的な方法は何ですか?一般的に、私は行をコメントしたりコメントを外したりする簡単で流動的な方法を探しています。ここではrubyのコードを扱っていますが、それはjavascript(//)またはhaml(-#)かもしれません。
回答: これがc-vとそれに続くiメソッドに基づく基本的なワンライナーです。 このコマンド(:comment)は、選択した文字列を選択した行の先頭に追加します。 command! -range -nargs=1 comment :execute "'<,'>normal! <c-v>0i" . <f-args> . "<esc><esc>" この行を.vimrcに追加して、単一の引数を受け入れ、その引数を現在の選択の各行の先頭に配置するコマンドを作成します。例えば。次のテキストが選択されている場合1 2 :comment //を実行すると、結果は次のようになります。//1 //2