ユーザ用ツール

サイト用ツール


vim

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
vim [2011/06/17 05:36] – 作成 nullponvim [2019/07/25 05:06] (現在) nullpon
行 4: 行 4:
 ''~/.vim/plugin''に入れるだけ ''~/.vim/plugin''に入れるだけ
   * [[http://www.vim.org/scripts/script.php?script_id=1567|rails.vim]] - Rails用のプラグイン   * [[http://www.vim.org/scripts/script.php?script_id=1567|rails.vim]] - Rails用のプラグイン
-  * [[http://www.vim.org/scripts/script.php?script_id=922|svncommand.vim ]] - SVNを操作する +  * [[http://www.vim.org/scripts/script.php?script_id=922|svncommand.vim]] - SVNを操作する 
-  * [[http://www.vim.org/scripts/script.php?script_id=13|closetag.vimg]] - HTML/XMLタグを閉じる+  * [[http://www.vim.org/scripts/script.php?script_id=13|closetag.vim]] - HTML/XMLタグを閉じる
   * [[http://www.vim.org/scripts/script.php?script_id=2419|quickrun.vim]] - その場で実行する   * [[http://www.vim.org/scripts/script.php?script_id=2419|quickrun.vim]] - その場で実行する
 +  * unite.vim - ファイルを簡単に開くなど
 +  * tagbar.vim - コードのアウトラインを作成し、見出しジャンプ
  
 +vbaやvmbのプラグインはファイルは開いて
 +
 +  :so % 
 +  
 +でインストールできる
 +
 +==== プラグイン管理 ====
 +
 +プラグインを個別にインストールせずに、vundle.vim や neobundle.vim を使って管理するのが今時なやり方。
 +
 +<code>
 +$ mkdir .vim
 +$ cd .vim
 +$ git init 
 +$ git submodule add git://github.com/gmarik/vundle.git
 +$ git submodule init 
 +$ git submodule update 
 +</code>
 +
 +さらに ~/.vim/vimrc というファイルを作り、ln -s .vim/vimrc .vimrc のようにして使えば vimrc もgit管理下に置けるので良いかも
 ===== vimrc ===== ===== vimrc =====
 Mac の vim のデフォルト設定は非常に寂しいので色々設定してやる。ホームディレクトリに''.vimrc''を作って以下の記述 Mac の vim のデフォルト設定は非常に寂しいので色々設定してやる。ホームディレクトリに''.vimrc''を作って以下の記述
行 22: 行 44:
 set expandtab=on set expandtab=on
  
-" 折り返しの設定 +単語途中で折り返しせず、ホワイトスペースで折り返しする 
-set nolinebreak+set linebreak 
 + 
 +" 折り返し表示しない
 set nowrap set nowrap
  
行 98: 行 122:
  
 ===== コマンドいろいろ ===== ===== コマンドいろいろ =====
-今開いているエディタに指定のファイルの中身をコピー + 
-  :read filename +==== ノーマルモード ==== 
-分割オプン + 
-  :split filename +移動 
-  :vsplit filename+ 0 行頭へ 
 + ^ 行頭へ(空白無視) 
 + $ 行末尾へ 
 +  j 一行下へ 
 +  k 一行上へ 
 +  h 右へ 
 +  l 左へ 
 +  gg  ファイルの最初の行へ 
 +  G ファイルの最後の行へ 
 +  H 画面最初の行へ 
 +  L 画面の最後の行へ 
 +  Ctrl-d 半画面下へ 
 +  Ctrl-f 1画面下へ 
 +  Ctrl-u 半画面上へ 
 +  Ctrl-b 半画面上へ 
 +  w 次の語までカソルを移動(W: 空白までを語として扱う) 
 +  e 次の語の末尾までカーソルを移動(E:同上) 
 +  b 前の語までカーソル移動(B:同上)
  
 分割画面の移動は 分割画面の移動は
行 110: 行 151:
   Ctrl-w l 右の画面に移動   Ctrl-w l 右の画面に移動
   Ctrl-w h 左の画面に移動   Ctrl-w h 左の画面に移動
 +
 サイズ調整は サイズ調整は
   Ctrl-w + 選択中の画面を一行分大きくする   Ctrl-w + 選択中の画面を一行分大きくする
   Ctrl-w - 選択中の画面を一行分小さくする   Ctrl-w - 選択中の画面を一行分小さくする
   Ctrl-w = 画面のサイズを同じにする   Ctrl-w = 画面のサイズを同じにする
 +
 +行内で指定文字まで移動(;で次へ、,で前へ)
 +  f文字
 +  
 +範囲指定削除(d:カットのみ、c:カットしてインサートモードに、f:指定文字までカット、t:指定文字の前までカット)
 +  df指定文字
 +  cf指定文字
 +  dt指定文字
 +  ct指定文字
 +
 +繰り返し
 +  .
 +カーソルの下の文字列をパスとみなしてファイルを開く
 +  gf
 +  
 +戻る場合は
 +  Ctrl-o  
 +
 +分割して開く
 +  Ctrl-w f
 +  
 +タブで開く
 +  Ctrl-w gf
 +  
 +タブ移動は…
 +  gt
 +  gT
 +  
 +カーソル下の単語を検索
 +<code>*</code>
 +次を検索
 +  ;
 +前回のビジュアルモード選択を再度行う
 +  gv
 +大文字小文字切り替え
 +  ~
 +
 +==== ビジュアルモード ====
 +ノーマルモードからビジュアルモードへ移行
 +  v  文字選択モード
 +  V  行選択モード
 +  gv 再選択
 +  Ctrl-v 矩形選択
 +  
 +  > 右シフト
 +  < 左シフト
 +  ~ 大文字小文字切り替え
 +  J 連結
 +  d 削除してノーマルモードに
 +  c 削除してインサートモードに
 +  y ヤンク
 +  = インデント整形
 +
 +  w  カーソル位置から右に単語区切りまで選択
 +  iw カーソルの下の単語を選択
 +  aw カーソルの下の単語を選択
 +  b  カーソル位置から左に単語区切りまで選択
 +  W  vwと同じだが、記号も選択する
 +  B  vbと同じだが、記号も選択する
 +  is 文を選択
 +  as 文を選択
 +  ip パラグラフを選択
 +  ap パラグラフを選択
 +  ib ()内を選択
 +  ab ()を選択
 +  iB {}内を選択
 +  aB {}を選択
 +  it ()内を選択
 +  at ()を選択
 +  
 +※ iとaの違い、iは後ろの空白を含まない、wは後ろの空白を含む。カッコ選択の場合はカッコを含むかどうか  
 +
 +w等の選択方法は、ノーマルモードで削除やヤンクと組み合わせられる
 +  d 削除
 +  c 削除してインサートモードへ
 +  y ヤンク
 +  
 +
 +  diw 単語の削除
 +  yw  カーソル位置から右単語区切りまでヤンク
 +==== コマンドモード ====
 +
 +今開いているエディタに指定のファイルの中身をコピー
 +  :read filename
 +分割オープン
 +  :split filename
 +  :vsplit filename
 +空のページを分割で開く
 +  :new
 +  :vnew
 +全部閉じる
 +  :qa
 +自分以外閉じる
 +  :on
 +
  
 一時的にシェルへ(exitでviに戻る) 一時的にシェルへ(exitでviに戻る)
行 121: 行 258:
 コマンド実行 コマンド実行
   :!cmd   :!cmd
-指定の文字までカット +
-  df 指定文字 +
-繰り返し +
-  .+
 文字コードを指定して再読み込み 文字コードを指定して再読み込み
   :e ++enc=utf8   :e ++enc=utf8
行 134: 行 268:
 ここみれ ここみれ
 http://tonetsutomu.com/tone/linux/Reference/Vi/ViReference1.htm http://tonetsutomu.com/tone/linux/Reference/Vi/ViReference1.htm
 +
 +===== RSpecを実行する =====
 +rspec.vimというファイルを作って ~/.vim/plugin/ に設置
 +
 +<code vim>
 +function RunRspec ()
 + :!rspec -cfs %
 +endfunction
 +
 +function RunRspecLine ()
 + exe '!rspec -cfs -l ' . line('.') . ' %'
 +endfunction
 +
 +au BufRead,BufNewFile *_spec.rb :command! Rspec :call RunRspec()
 +au BufRead,BufNewFile *_spec.rb :command! Rspecl :call RunRspecLine()
 +
 +
 +function RunSpec ()
 + :!spec -cfs %
 +endfunction
 +
 +function RunSpecLine ()
 + exe '!spec -cfs -l ' . line('.') . ' %'
 +endfunction
 +
 +au BufRead,BufNewFile *_spec.rb :command! Spec :call RunSpec()
 +au BufRead,BufNewFile *_spec.rb :command! Specl :call RunSpecLine()
 +</code>
 +
 +:Rspecで今開いているRSpecファイルを全体を、:Rspeclで現在カーソルのある行を含むテストケースをRSpec2で実行する。RSpec1を実行したい場合は、:Spec、:Specl
 +
 +
vim.1308288985.txt.gz · 最終更新: 2011/06/17 05:36 by nullpon