u_sho競プロぶろぐ

21歳。みゃーくぴとぅ。ゆる~く続けますたぶん。  デザイン変えました(2019/2/25)これでいきます

Atomエディタの入力補完機能をいじくってみた

 おはこんばんにちは、u_shoです(=^・ω・^=)

 私はエディタとして、入力補完の優秀さなどの点からAtomを使っているのですが、
main関数やnamespaceの補完では、「競プロ向け」*1でない補完をしやがるので少しばかり不満に思っていました。

 そこで今回、Atomの入力補完機能(スニペットというらしい)を「競プロ向け」に魔改造することにしました。
参考はこのブログ↓
rfs.jp


 まずは「ファイル(もしくはEdit)」から「スニペット(Snippets)」を開きます。*2
f:id:u_sho:20180709233442p:plain
 そしたらこのファイル(snippets.cson)が開きます(たぶん)。Atomのバージョンとかによっては違うかも
f:id:u_sho:20180709233438p:plain
 んでこのファイルの末尾にこんな感じで書いてあげます。最初っから書いてあるやつはコメント(トリセツ)なので消しても消さなくてもいいです。
f:id:u_sho:20180709234055p:plain
 '.source.cpp':ってのが、このスニペットはcppファイルの中で使いますよ~ってことです。
次にはインデントをしっかり*3とってスニペットの名前(補完時に表示される)を書きます。
そこからインデントをしっかりとって'prefix:'以下に、この文字打ち込んだらスニペットを呼び出しますよ~ってのを書きます。私はsettingとしました。
次に、インデントをしっかり(しつこい)とったら'body:'以降にこーゆー補完して! ってのを書きます。$1で最初のカーソル位置、$2でタブキーで移動した後のカーソル位置を指定できます。私はいわゆる競プロテンプレートにしました。

 これで完成!!

試しにやってみる。
f:id:u_sho:20180709235620p:plain
setと打ってエンターキーを押すと・・・
f:id:u_sho:20180709235616p:plain
できた~(*´▽`*)

*1:個人の主観です

*2:画質が荒いのは通信量とかめんどくささとか諸々の関係

*3:ちゃんとインデントしないと認識されないので注意