AtCoder用のPythonスニペットをVSCodeの拡張として公開してみた
この記事は マイナビ Advent Calendar 2019 10日目の記事です。
一言でいうと
AtCoder用のPythonスニペット拡張を公開しました。URLは https://marketplace.visualstudio.com/items?itemName=hirosuzuki.atcoder-python-snippets になります。
概要
私はプログラミングコンテストサービス AtCoder に参加しています。現在、レーティングが目標の青に到達し、リアルタイムのコンテストからは引退しました。今はバーチャルコンテストでゆっくり過去問を Python で解いて楽しんでいます。コーディングは Virtual Studio Code + Remote Development を利用しています。AtCoder ではほぼ入力形式と出力形式が決まっていて、難易度の低い問題では使うモジュールも限られています。できるだけ楽にコーディングを行うため、定型コードを簡単に入力できるようスニペットを作成しました。
コーディング例
上の例は最大公約数を求める簡単なものです。スニペットと補完を利用して手早くコーディングができています。
拡張機能公開まで
拡張機能公開までの手順は以下のとおりです。
(1) スニペットを作成する
(2) スニペットのVSCode Extensionを作成する
(3) Extensionを公開する
(1) スニペットを作成する
コマンドパレットから Preferences: Configure User Snippets を利用して、各言語用のスニペットを作成します。
詳しくは https://code.visualstudio.com/docs/editor/userdefinedsnippets を参照ください。
(2) スニペットのVSCode Extensionを作成する
VSCode拡張としてパッケージにするため、package.json と(1)で作成した、スニペットファイル、ここでは snippets.json を用意します。
詳しくは https://code.visualstudio.com/api/language-extensions/snippet-guide を参照ください。
(3) Extensionを公開する
以下の流れになります。
・コマンドラインツール vsce をインストールする
・Azure DevOps のアカウントを作成する (既にアカウントがあるなら不要)
・Market に公開するための Personal Access Token を発行
・vsce に Personal Access Token を設定する
・コマンド vsce publish を実行して、公開する
詳しくは https://code.visualstudio.com/api/working-with-extensions/publishing-extension を参照ください。
まとめ
今回はじめて VSCode拡張を作成し、公開まで行いました。英語ながらドキュメントが十分にあり、動作するサンプルもあったので、スムーズに公開することができました。VSCodeやChromeなどほぼ毎日利用するツールを改善することは、生産性向上に直接つながります。これからも拡張機能を作成していきたいと思います。
この記事が気に入ったらサポートをしてみませんか?