0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

vimの使い方・カスタマイズを学習

Posted at

普段使用するテキストエディタはVScodeですが、Docker環境で開発をする時など、将来的にvimを扱うことも出てくるかもなぁと思い、初心者ながらvimの扱い方やカスタマイズ方法について学習し、その記録を本記事に記していきます。

自身の利用デバイスと環境

  • Macbook Air (2020)
  • M1チップ
  • macOS Monterey バージョン12.3.1

vimとは?

  • vimとは、Linux向けのテキストエディタである。
  • visual editorまたはvisual interfaceの略称だと言われてるっぽい。
  • Linuxで人気のエディタであり、Linux環境でインストールされている。
  • MacOSでも使える。
  • Windowsの場合は、そのままでは使えないので別途設定が必要。(参考:https://original-game.com/windows-vim/)
  • viの進化版がvimだと、ざっくり覚えておく。

現在のvimの設定を確認する。

ターミナル
.gitconfig	.node-gyp	.vim	.zsh_history
  • ありました。
  • ホームディレクトリの配下に隠しファイルとしてあるようです。
  • ホームディレクトリでvimと叩くと、バージョンが確認します。
  • ~/ vim
vimのバージョン

vimの操作方法を覚える。

terminal
$ vim ファイル名
対象のファイルをvimで開く
vim
i
編集モードを起動する。
vim
esc
編集モードを終了し、ノーマルモード(閲覧)に戻す。
vim
:q
ファイルを終了する
vim
:q!
強制的にファイルを終了する
vim
:w
編集したファイルを保存する
vim
:wq
編集したファイルを保存して閉じる
vim
0
カーソルを行頭に移動させる(ノーマルモードで「0」コマンドを入力)
  • 万が一、vimの操作を間違えてしまったりして、動かなくなってしまったり、、、。
  • 予期せぬ上書き保存をしてしまった場合は、とりあえず、Google検索して調べてみる。
  • あるいは、おとなしくVScodeなど、自分の扱いやすいエディタを開いて確認してみるのが無難。

vimのカスタマイズ方法

.vimrc
set number " 行番号の追加
set cursorline " 編集中の行をハイライト
set ruler " 右下にカーソルの位置を表示
set showcmd " 入力中のコマンドを表示
set title " タイトルの追加
syntax enable " シンタックスハイライトを有効化
set wildmenu " vim上からファイルを選択できる機能を有効化
set ambiwidth=double " 全角文字の重なりを解消
set backspace=indent,eol,start " 挿入モードでbackspaceを使って削除を可能に
set laststatus=2 " ステータスバーを2行表示
set history=1000 " コマンドの履歴を1000件保存
set showmatch " 対応する括弧をハイライト
set smartindent " 前の行のインデントを保持
set clipboard+=unnamed " ヤンクの結果をクリップボードに保存
set noerrorbells " エラーの表示時にビープ音を鳴らさない
set mouse=a " マウスの有効化

set shiftwidth=0 " タブの設定(タブ幅4の場合)
set softtabstop=4
set tabstop=4

autocmd FileType python setlocal tabstop=4 " 言語ごとにタブ幅を設定する場合

set hlsearch " 検索結果をハイライト
set incsearch " 最初の一文字を入力した時点から検索開始
set wrapscan " ファイル末尾に到達すると再び先頭から検索

引用:https://qiita.com/Broccolingual/items/8facc5f36564b987807f

  • 行番号を追加するコマンドやマウスの有効化など、vimを使いやすくするためのカスタムが設定できるようです。
  • そのままのvimだと、扱いづらさを感じてしまうため、上記のようにカスタムするのが、
  • 初心者のうちは、ひとまず良いんじゃないかと感じます。
  • 今回は先人の設定をそのまま真似させていただくことにします。

.vimrcを作成して設定を実装する

  • 早速カスタマイズの設定を行なっていきます。
  • まずは、ホームディレクトリにて、.vimrcというファイルを作成します。
$ vim ~/.vimrc
  • $ touch .vimrcこっちでもいいのかなぁ?
  • 良くわかりませんが、、とりあえず、参考サイトに沿って$ vim ~/.vimrcコマンドでファイルを作成していきます。
  • $ vim ~/.vimrcでファイルを作成し、
  • iで編集モードにして
  • 参考サイトから拝借したコードをコピペ
  • escキーで編集モードから戻り、
  • :wで保存
  • :qでファイルを閉じる
  • $ ls -aコマンドでファイルが生成されていることを確認。
  • もう一度$ vim ~/.vimrcファイルを開いてみると、、、、
  • こんな感じのエディタが出現しました。
vimカスタマイズ後
  • 行番号が表示されるようになって、わかりやすくなりました。
  • マウス操作も可能に
  • カーソルや行の現在地がわかりやすく可視化されています。
  • まぁまぁ良い感じ!
htmlファイルをvimで開いた画面
  • 試しに他のファイルも確認してみます。
  • 良い感じで、色がついて、見やすくなりました。
  • また、少々色味がヴィヴィット過ぎて、目が疲れそう、、?
  • カーソル移動もできますね。
  • 現状だと、fn+十字キーで行末に飛んだりできるっぽいことを確認してますが、まだ使い慣れませんね💦
  • とはいえ、少しvimを使ってみたくなるようなカスタマイズをすることができました。
  • 今後を考えて、vimの扱いに少しでも慣れて置けるようにしていきます。

少し自分用にカスタマイズを変更した結果

.vimrc
set number " 行番号の追加
set cursorline " 編集中の行をハイライト
set ruler " 右下にカーソルの位置を表示
set showcmd " 入力中のコマンドを表示
set title " タイトルの追加
syntax enable " シンタックスハイライトを有効化
set wildmenu " vim上からファイルを選択できる機能を有効化
set ambiwidth=double " 全角文字の重なりを解消
set backspace=indent,eol,start " 挿入モードでbackspaceを使って削除を可能に
set laststatus=2 " ステータスバーを2行表示
set history=1000 " コマンドの履歴を1000件保存
set showmatch " 対応する括弧をハイライト
set smartindent " 前の行のインデントを保持
set clipboard+=unnamed " ヤンクの結果をクリップボードに保存
set noerrorbells " エラーの表示時にビープ音を鳴らさない
set mouse=a " マウスの有効化

set shiftwidth=0 " タブの設定(タブ幅2の場合)
set softtabstop=2
set tabstop=2

autocmd FileType ruby setlocal tabstop=2 " 言語ごとにタブ幅を設定する場合

set hlsearch " 検索結果をハイライト
set incsearch " 最初の一文字を入力した時点から検索開始
set wrapscan " ファイル末尾に到達すると再び先頭から検索
  • タブ幅は個人的に2が好きなので、変更しました。
  • また、使用する言語が今のところrubyが多いので、pythonから変更してます。

最後に

  • vimでは、コピーのことをyankと呼ぶらしく、yがコピーコマンドになるそうです💦
  • ペーストのことはputと呼び、pがペーストコマンドになるそうです💦
  • 範囲選択してコピーはy
  • 指定の場所にカーソルを合わせてp
  • vimでのYank&Put(コピー&ペースト)はこのように行うようです。
  • コピペ=c vで育ってきた私には正直キツイかも、、、

参考サイト

Qiita投稿に使用したhtmlタグ

<img src="" alt="" width=50%>
0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?