Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

うろ覚えvimコマンド (sublime text 卒業)

$
0
0

私、菊池は、Sublime Textを卒業し、Vimへの移行をすることを決意しました。
そこで、私的用によく使うであろうVimコマンドを書こうと思います。
これは、私の決意表明であり、決してご覧いただいた方の役に立つとは思っておりません。
何卒よろしくお願いします。

(※覚えたものを慣れるために書きます。随時更新いたします)

文字を書き込むぜい!(入力モード!!)

基本的な書き込みコマンド。
シンプルに文字を入力するだけで、あとはどこから書き始めるかが変わってくる。

コマンド説明
i文字入力モードにする
a単語の末尾にカーソルを移動し、文字入力モードにする
oカーソルの下の行を一つあけ、その行から入力モードにする
shift + oカーソルの上の行を一つあけ、その行から入力モードにする

やばい、取り消し(キャンセル)したい!

vimでは「cmd + z」が使用できないので、多少取り乱すかもしれない。
だが、適切なキャンセルコマンドを打ち込んであげれば何一つ問題ない。

コマンド説明
u直前の変更を取り消す
ctrl + r直前の変更の取り消しを取り消す

ここどこだよ(場所検索)

sublimeとかのエディタと違って、どのファイルでファイルのどこらへんにいるかがわからないことがあるが、vimはそこらへんを明示してくれたりする。

コマンド説明
ctrl + g現在の階層、ファイル名、行番号、全体からの行の割合を下に表示する。
:!外部コマンドを実行する
:!ls現在の階層のファイル一覧を表示する

削除させてくれ

文字の削除が単語単位や行単位でできるのでとても便利。

コマンド説明
dwカーソル位置の単語を削除する。(空白を含む)
deカーソル位置の単語を削除する。(空白を含まない)
d$カーソル位置から行末まで削除する。
ddカーソル位置の行末を全て削除する。
[数値]d[モーション]数値の回数分削除モーションを実行する。

※モーションとは、wやeのような削除実行コマンド(d)に付与するコマンド

変更するぜい

わざわざ削除してから、文字を入力!みたいなことをやらなくても、そのまま文字を変更できるので、vimさんいい。

コマンド説明
cwカーソル位置から単語の末尾までを削除し、入力モードにする
c$カーソル位置から行の末尾までを削除し、入力モードにする
c[数値]w数値の回数分の単語(空白区切り)を削除し、入力モードにする。
:s/[old]/[new] ENTERカーソルの行で最初に見つけた[old]だけを[new]に置き換える
:s/[old]/[new]/g ENTERカーソルの行で見つけた[old]を全て[new]に置き換える
:%s/[old]/[new]/g ENTERファイルの中身の[old]を全て[new]に置き換える
:%s/[old]/[new]/gc ENTERファイルの中身の[old]を全て[new]に、一つ一つ確認しながら置き換える
ctrl + rカーソル位置から置換モードにする

*置換モードはカーソル位置の単語を削除しながら、文字を挿入していきます。気をつけてへぺろ。

単語どこだよ(文字を検索)

こちらは、本来文字検索をするときの「cmd + f」が通用しない。
困らず焦らず、以下のコマンドを打てば、どこに文字があるか教えてくれるよ。

コマンド説明
/[単語]単語をファイルの下へと検索していく。
?[単語]単語をファイルの上へと検索していく。
(単語検索中):set ic検索文字に部分マッチしている部分を表示する
(単語検索中):set hlsマッチしている部分の文字を強調表示する
(単語検索中):set noic検索文字に部分マッチしている部分を表示しないようにする
(単語検索中):set nohlsマッチしている部分の文字を強調表示しないようにする

コピーお願いします。(選択&コピー、貼り付け)

選択とコピー、そして貼り付け。
こちらも、「cmd + 」が使えないのが要注意。

コマンド説明
vビジュアルモードに突入。移動は選択しながら移動する。
y選択範囲をコピー
p削除したやつを貼り付ける
ggVGファイルの中身を全選択

おれは一番下に行きたいんだ。。(カーソルを移動させるよ)

他のエディタにはないけど、文字間や行間の移動コマンド。
また別ウィンドウの移動も出来たりして、便利。

コマンド説明
shift + g一番下にジャンプ
[行番号] shift + g行番号にジャンプ
gg一番上にジャンプ
(括弧開きもしくは括弧閉じにカーソルを合わせながら)%開きだったら閉じ、閉じだったら開きの括弧にジャンプ
0カーソル位置の行頭へ移動
$カーソル位置の行末へ移動
e単語(次の単語)の末尾に移動する
w単語(次の単語)の先頭に移動する
ctrl + w ctrl + w別ウィンドウへと移動する

まとめ

vimさんあざーす。


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>