ダッシュで奪取

レガシーSIer → webエンジニア(見習い) 新しく知ったことのメモを書いています。

【Vim】基本の設定

目次

  1. Vimって何?
  2. Vimを使うと何が良いの?
  3. 起動方法
  4. 初期設定
  5. 基本の設定
  6. 参考URL

Mac使用です!

この記事の目標
  • Vimに良い感じの設定を反映させる

1. Vimって何?

  • 読み方:ゔぃむ
  • テキストエディタだよ!

2. Vimを使うと何が良いの?

  • Mac、Windows、Linux…環境に依存せずに使えるよ!【重要】
  • 使いこなすと、カーソルの移動とかコピペがサクサクできるようになる(らしい)よ!

使い始めは慣れていないため作業効率爆遅になってしまいますが、いつか使いこなせるようになれると信じてしばらく触ってみます。

スマホのフリック入力やペンタブでのお絵かきもそんな感じだったので…慣れるまでの!辛抱!

3. 起動方法

ターミナルで下記コマンドを実行して起動

$ vim

閉じるには

:q

4. 初期設定

Vimの設定は .vimrcというファイルに記述していきます!
このファイルは存在しないので、下記コマンドを実行して自分で作ります。

$ vim ~/.vimrc

※ホームディレクトリ ~ の直下に、 .vimrc というファイルを作ってVimで開く

お試しで、Vimに行番号を表示してみる

.vimrc に、下記を記載します。

"行番号を表示
set number

※設定ファイルのコメントアウトは "(ダブルクォーテーション)

esc キーを押してから、下記コマンドを実行

:wq

もう一度Vimを起動してみると、エディタ上に行番号が表示されるようになっています!

上記操作の意味

escキー
Vimではファイルの編集:入力モード、ファイルの保存等:コマンドモードで行います。入力モードでescキーを押すことで、コマンドモードに移行できます。

:wq
コマンドモードで、Vimのコマンドを実行することができます。

  • :w ファイルを保存
  • :q Vimを閉じる

:wq と記載することで、「ファイルを保存して閉じる」になります。

5. 基本の設定

色々な記事を参考に、自分が使いたいな〜と思う設定を選びました。
保存して閉じたら、再起動して反映!

" ---------------------------
" -- 基本の設定              --
" ---------------------------
set fenc=utf-8                             "文字コードをUTF-8にする
set nobackup                               "バックアップファイルを作らない 
set autoread                               "編集中のファイルが変更されたら自動で読み直す
set confirm                                "保存されていないファイルがあるとき、終了前に保存確認
set hidden                                 "保存されていないファイルがあるときでも、別のファイルを開けるようにする
syntax enable                              "シンタックスハイライトを有効にする
set mouse=a                                "マウスでの操作を受け付ける
set backspace=indent,eol,start             "インサートモードでもバックスペースで削除できるようにする
set wildmenu wildmode=list:longest,full    "コマンドモードで、tabキーで補完入力できるようにする
set history=1000                           "コマンド入力履歴を1000件保存しておく
set clipboard=unnamed,autoselect           "コピーしたものがクリップボードに入るようにする

" ---------------------------
" -- カーソル移動関連の設定    --
" ---------------------------
set whichwrap=b,s,h,l,<,>,[,]              "行頭行末の左右移動で、行を移動できるようにする
set scrolloff=8                            "上下8行分の視界を確保する

" ---------------------------
" -- 画面表示系の設定         -- 
" ---------------------------
set number                                 "行番号を表示
set cursorline                             "カーソル行を強調表示
set cursorcolumn                           "カーソル位置を強調表示
set showcmd                                "入力中のコマンドを表示
set display=lastline                       "長い行も省略せずに表示
set list                                   "不可視文字を表示
set listchars=eol:↲,trail:_                "不可視文字の表示設定 eol:改行 trail:末尾スペース

" ---------------------------
" -- ステータスラインの設定     --
" ---------------------------
set laststatus=2                           "ステータスラインを表示
set statusline=%F                          "ファイル名を表示
set statusline+=%=                         "これ以降は右寄せ表示
set statusline+=[ENCODE=%{&fileencoding}]  "文字コードを表示
set statusline+=[LOW=%l/%L]                "今の行数/全体行数

" ---------------------------
" -- tabとインデントの設定      --
" ---------------------------
set expandtab                              "tabを半角スペースにする
set tabstop=2                              "tabは半角スペース2個分
set shiftwidth=2                           "インデントは半角スペース2個分
set autoindent                             "改行時、前の行のインデントを継続
set smartindent                            "改行時、末尾に合わせて次の行を自動インデントする

" ---------------------------
" -- 検索と置換の設定         --
" ---------------------------
set hlsearch                               "検索結果をハイライト
set incsearch                              "インクリメンタルサーチを有効にする
set ignorecase                             "大文字と小文字を区別しない
set smartcase                              "大文字と小文字が混在した状態で検索した場合、大文字と小文字を区別する
set wrapscan                               "最後まで検索したら戦闘に戻る
set gdefault                               "置換のとき、カーソル行をまとめて置換する
  • set nobackup バックアップファイルを作らない

    • 編集中、バックアップとして末尾に「~(チルダ)」が付いたファイルを自動生成するので、これを無効にする(個人的に、勝手にファイルが作られるのは好きではない…)
    • 何かの拍子でファイルが壊れたとき、バックアップファイルで壊れたファイルを上書きすることで変更前のファイルに戻せるよ!ということみたいです
  • ビジュアルモード

    • コマンドモードで、 v で入れる
    • テキスト選択とかコピーができる
    • コピーは y
  • 検索

    • コマンドモードで /

f:id:kyoruni:20191103134358p:plain めっちゃ見やすくなった…!(オタク背景すみません)

6. 参考URL