僕の競プロ環境(2018/4現在)
競プロ初めて1年が経ちました.
まだ全然実力が付いてないのですが,RUPC以降精進しまくってるので伸びると信じてます.
ちょうどMacBookAirを買って1年にもなり,競プロ環境が整ってきた気もするので,現在の競プロの環境を紹介します.
環境
現在競プロをする時に使っているのは以下のものです.
- iTerm2
- Neovim
iTerm2
これはターミナルです.⌘D
で左右に画面を分割できるので良いですね.
shellはfishです.
これは最初からコマンド補完機能やら付いていて,文字入力をサボることが出来るのでいいです.
fishのプラグインで入れているものは以下のものです.
- z (雑にディレクトリ移動ができる)
- agnoster (おしゃれなテーマ ※要powerline font)
Neovim
エディタとしてNeovimというものを利用してます. iTerm2上で起動します.
理由は特にないです.
色々と便利にしていったのでこれ以外で競プロ出来ないくらいになってしまいました.
プラグインとして色々入れてますが,ここでは競プロ時に利用しているものだけを紹介します
- deoplete
- neosnippet
- ale
deoplete
補完してくれるやつです.次に紹介するneosnippetと連携してます.
neosnippet
スニペット機能を利用できます.
独自にスニペットを登録することができ,僕はテンプレートとライブラリを登録して,使う時にさっと展開してます.
例えばこう書いて <C-k>
~/.config/nvim/snippets/cpp.snip
にスニペットを書くことで登録できます.
ただそうすると,cpp.snipがかなり膨大になるのでオススメしません.
そこでsnipファイルを分ける方法があります.
cpp.snip
にinclude cpp/*.snip
と書くと,cpp.snip
と同じディレクトリにあるcpp
ディレクトリ以下の*.snip
ファイルをincludeしてくれます.
これをすると競プロライブラリをいい感じに管理できるようになります.
僕は以下のリポジトリをcpp
ディレクトリ以下に置いています.
現在は競プロライブラリを随時増やしていってる途中です.
ale
aleは非同期コードチェックをしてくれるプラグインです.
コーディング中に色々と指摘してくれるので,コンパイルをせずにエラーを潰すことが出来ます.
最後に
競プロはいいぞ