機能 ショートカットキー
リファレンス(参考URL)一覧へ移動 R
記事URLをMarkDownとしてコピー Ctrl+M
前のコードタグへ移動 Ctrl+←
次のコードタグへ移動 Ctrl+→
ヘルプを表示・非表示 H
Tips
- ショートカットキーは記事上で有効です。ヘッダー/フッター付近では機能しないことがあります。
- コードタグ移動機能がうまく動かないときは、Shift+F5でページを更新してみてください。
- このウィンドウを閉じるには、Hキーをもう一度押してください

vimに入門してみた ~ amix vimrcの導入から基本操作まで

プログラミング

rmateが使えない環境で、nanoとかでやってたんですけど、どうしてもコピペとか検索ができない(しづらい)のがストレスで、
仕方なくvimを導入しようかと思ったところです。

以前一度vimは触っていて、viもそこそこ触ることはできてたので、ちょっと復習みたいな感じですかね。

atomっぽくしてみたかった

プログラミング

atom使いなのでatomっぽく出来たらなーと思って調べたらめっちゃよさげなのがありました。

I build stuff: How to to make Vim to look like Atom

Not an editor command: Plugというエラーが出るので、パッケージ管理ツールであるplugをインストールする。

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

……できなかったです。

エラーが出てしまいます。

んー、わからん。

amix vimrcを使ってみる

プログラミング

vimrcプラグインを色々組み合わせていい感じのエディタになっている.vimrcが配布されているので使ってみます。

amix/vimrc: The ultimate Vim configuration: vimrc

amix vimrcのAwesome versionをインストール。

git clone --depth=1 https://github.com/amix/vimrc.git ~/.vim_runtime
sh ~/.vim_runtime/install_awesome_vimrc.sh

amix vimrcのすごいところ:

  • 標準でctrl+c/ctrl+vのコピペができる
  • HOME/ENDキーが使える。ctrl+END[HOME]なんかもできるので便利
  • Python,Javascript,shなど一部言語は標準で色付けされる
  • エディタっぽくなる

基本操作をやってみた

プログラミング
  • モード

i 文字入力モードにする
ESC ノーマルモードに戻る
Ctrl-[ ノーマルモードに戻る

  • 文字列検索

/ 続けて文字を打ち, Enterで文字列を確定し, 後方検索をかける
n 次の単語に移る
N 前の単語に移る

  • 戻す/戻したのを戻す ctrl+z/ctrl+y

u undo(アンドゥ)一動作分、前の状態に戻す。
Ctrl + r redo(リドゥ)。アンドゥで戻した操作を、元に戻す。

  • 置換

:%s/before/after/g ファイル上の全ての”before”を”after”に置換
:s/before/after/g カーソルの行の全ての”before”を”after”に置換
:10,20s/before/after/g 10~20行目の全ての”before”を”after”に置換
:'<,’>s/before/after/g ビジュアルモードで選択中の範囲の全ての”before”を”after”に置換

()の置換文字は\1。 e.g. :%s/(”文字”)/h(\1)/ => h(“文字”)

vim置換 – Qiita

  • コマンド実行

:! シェルコマンドの実行 e.g. :!pwd
:r! コマンドを実行し,その結果を挿入 e.g. :r!pwd
:shell シェルを呼び出す。exitなどでシェルを抜ければviに戻る

  • 保存 / ctrl+s

:w 上書保存
:w <ファイル名> 編集中のデータを<ファイル名>のファイルに保存
:q 終了
:wq 保存して終了
:q! 保存せず終了

  • 強制終了

ctrl+z: 抜ける(終了する)
ノーマルモードでctrl+z: 抜ける

:h ヘルプ表示

感想

プログラミング

やっぱatomの方が便利感ありますね今のところは。

まず、いちいちコマンドモードにしないと大概の操作ができないっていうのがまず拒絶反応です。
今回見つけたvimrcでマウスカーソル操作とかコピペとかのショートカットキーが使えるようになったので結構救われましたが…

ctrl+ / ctrl+shift+ / っていうショートカットキーに慣れてしまっていると、その前に ctrl+[ しなきゃいけないっていうのが…。

色々できるっていうのは良いと思うんですけど…簡単な操作はワンキーでできる方がいいですよね……。

プロジェクト管理なんかもできるにはできるみたいですが、面倒そう…。そもそもそういうのを設定するまでに数日/数週間かかるっていうのが…きついでしょ。

まぁ今回はrmateが使えないvirtualboxのための取り急ぎの策としてだったので、notepadくらいの機能が実装できれば十分なのでいいでしょう。

実装したいこと

プログラミング

今のvim環境に足りないなぁって思うところを挙げてみました。

  • 複数行の入力ができない : あれ…なんていうんでしたっけ。x形入力。漢字読めない。アレができない。できるんでしょうけどやり方が今の所わからない。
  • 同一文字列の選択: atomだと、文字列選択状態でctrl+dで同じ文字列を選択してくれます。こういう機能がほしいんだけど…ないよなぁ。あっても見つけるまでに* 1年くらいかかりそうです。これができると結構便利で…。
  • プロジェクト管理 ファイルの検索+開く : atomだとctrl+tでできるアレ。たぶん調べればできるようになると思いますが。…できてほしい。

ここまでatomに依存してしまっているので、いっそatomをそのままvimに移してほしいんですけど…先程のvimrcは使えませんでしたし…時間が解決してくれるのを待つのが一番でしょうか。

この記事で欲しい情報が見つからなかった方へ

この記事の更新情報がある場合があります。
この記事は以下の記事とも関連性があると思われます。

vimで正規表現検索する
vimでinsertモードで編集を開始するには
vim 検索結果のハイライトを非表示にする
vimを使ってみた 便利ワザとかtipsとか


管理人の方針で、既存の記事の編集はせず、新しい情報や大きな既存情報の更新があった場合には、新しい記事として公開することになっています。
当記事で欲しい情報が見つからなかった・解決に至らなかった場合、これらのリンクがお役に立てるかも知れません。

どうやってこの関連記事を生成しているの?
この機能のPHPソースコード(2500行)

コメントを残す

Close Menu