Ubuntu22.04環境でvimを用いたC++コーディング環境構築
Ubuntu22.04環境でvimを用いたC++コーディング環境構築
はじめに
対象者
この記事は以下の条件に当てはまるユーザ向け記事です。
- vimの操作方法を知っている
- Ubuntu22.04LTS環境を準備済み
目標
以下の目的を達成することを本記事の目標とします。
- vimのコーディング環境を整える
- vimでC++のコーディング補完を行える
- C++のコンパイル&実行を可能にする
環境構築の流れ
- 要求パッケージのインストール
- vimプラグインインストール
- vimの環境設定
要求パッケージのインストール
update & upgrade
まずは、updateとupgradeを行いましょう。
sudo apt update && sudo apt upgrade -y
パッケージのインストール
sudo apt install -y build-essential cmake vim-nox python3-dev mono-complete golang nodejs openjdk-17-jdk openjdk-17-jre npm
build-essential は C++の開発に必要なビルドツールの集合です。
その他のパッケージは、後述するvimプラグインで要求されるものです。
vim環境構築
vimrcの作成
vimの設定ファイルである .vimrcをホームディレクトリに作成します。
touch ~/.vimrc
vimの環境設定は、このファイルを編集して行います。
インストール:プラグインマネージャ
まずはvimのプラグインマネージャであるVim Plugをインストールしていきます。
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
その後、.vimrcに以下をコピペして保存します。
call plug#begin('~/.vim/plugged')
"ここにインストールするプラグインを書き込んでいく
call plug#end()
以降、プラグイン情報を書き込むというのは、
「"ここにインストールするプラグインを書き込んでいく」 の下に情報を書き込むことを指します。
インストール:コード補完
vimでコード補完を行ってくれるYouCompleteMeをインストールします。
以下のプラグイン情報を書き込んでください
Plug 'ycm-core/YouCompleteMe'
その後、vimをいったん閉じて、再度.vimrcを開いて以下のコマンドを打ち込みます。
:PlugInstall
インストールが終わったら、YouCompleteMeの設定のため以下のコマンドを実行します。
cd ~/.vim/plugged/YouCompleteMe
python3 install.py --all
そして、YouCompleteMeの外部設定ファイルをダウンロードします。
cd ~/.vim/
wget ~/.vim/ https://raw.githubusercontent.com/ycm-core/ycmd/66030cd94299114ae316796f3cad181cac8a007c/.ycm_extra_conf.py
.vimrcの編集
.vimrcに以下の設定を追記していきます。
コメントに意味を書いていますので、好みに合わせて編集を行いましょう。
" バックアップファイルを作らない
set nobackup
" スワップファイルを作らない
set noswapfile
"インデントをスペース4つに
set tabstop=4
set shiftwidth=4
" エンコーディング
set encoding=utf-8
scriptencoding utf-8
"jキーを二度押しでESCキー
inoremap <silent> jj <Esc>
inoremap <silent> っj <ESC>
"行番号を表示
set number
" カーソルを棒状に
set cursorline
"オートコンプリート使用時のドロップダウン・ウィンドウの削除
set completeopt-=preview
"書き込み時間診断を無効にする
let g:ycm_show_diagnostics_ui = 0
C++用のテンプレートを作成
拡張子が.cppであるファイルを作成したときに、テンプレートをコピペする設定を行います。
具体的には.cppファイルを作成すると以下のコードが書き込まれた状態でファイルを作成できます。
#include <bits/stdc++.h>
using namespace std;
int main() {
return 0;
}
まずは、以下のコマンドを打ち込んで、テンプレート用フォルダと、c++テンプレートファイルを作成します。
mkdir -p ~/.vim/template
vim ~/.vim/template/c++
その後、上記のテンプレートのテキストをコピペします。
あとは、.vimrcに以下を追記すれば完了です。
autocmd BufNewFile ~/*.cpp :0r ~/.vim/template/c++
適当に.cppファイルを作成してください。テンプレートが書き込まれていると思います。
C++のコンパイル&実行
以下のコマンドでコンパイル
g++ {ファイル名}.cpp
実行ファイルの実行
./a.out
おすすめプラグイン
Auto-pairs
括弧補完機能インデントに合わせて括弧を入れてくれたり、対応する括弧をハイライトしてくれたりします。
Plug 'jiangmiao/auto-pairs'
Discussion