Rails向けの VSCode 拡張をつくりました

はじめに

Ruby on Rails Advent Calendar 2019 8日目の記事です。オクレテスミマセン👾

概要

Rails 用の vscode 拡張をつくりました。

前提

vscode が大好きで普段から利用しています。デフォルトの構成でも便利ですが、拡張機能を導入する事でより快適な開発環境を得ることができます。Rails 向けの拡張機能だと、こちらの記事に便利な拡張がまとめられており、私も参考にさせていただいています。

悩み

便利とはいえど、vscode でも悩みがあります。そのうちの 1 つが Controller と View 間の移動。ちょっと見たいだけなのに file searchclick といった手間がかかります。キーボードショートカットだけで Controller < -- > View 切り替えができないものだろうかと考えて vscode 拡張を検索してみるものの見つかりませんでした。(ご存知の方は教えてください)
そのため今回vscode 拡張を開発しました。

つくりたいもの

  • 起動
    • 任意のショートカットで起動する
  • 動作
    • アクティブエディタで Controller を開いている場合
      • カーソル位置のメソッドに対応するView ファイルを開く
        • 対応する View がなければ index の View ファイルを開く
    • アクティブエディタで View を開いている場合
      • 対応する Controller ファイルを開く
  • その他
    • View ファイルは html, haml, slim, erb あたりに対応する

開発

  1. 開発用のライブラリをインストールします(チュートリアル)
  2. yo で基礎部分を生成します
  3. vscode で開発します

できたもの


vscode extension demo

※↑は今回作った機能にショートカット割当を行っています。 f:id:yrinda:20191209020258p:plain

備考

アドベントカレンダーに間に合わずすみませんでした。後で vscode marketplace へ登録 + コードを公開しておきます。「既にこんな拡張があるぞ!」や「こんな機能が欲しい!」などなど便利そうな情報があれば教えていただければ幸いです。