経緯 しばらく前から、Scalaを書く機会が訪れた。NeoVimのLanguage Clientプラグインとしてはcocを使っているので、Scalaでもcoc-metalsを入れて使うことにした。 github.com https://github.com/scalameta/coc-metals 2022年3月に coc-metalsの開発終了が宣言された 。 github.com なんとかしなきゃなと思いつつも、ひとまず現在のプロジェクトでは問題なく動いていたので、そのまま使い続けていた。 2022年10月、現在のプロジェクトのScalaバージョンアップに伴って、ついにいくつかの機能が動か…
Play Framework を始めたばかりの方向けに、サンプルを進めるうえで困ったところを共有する目的で書いています。 Play Framework 2.8.x を Visual Studio Code, Metals で開発しているときに、デバッグ機能を使ったときのメモです。 以下、目次 環境 手順 環境 Play Framework 2.8.8 Visual Studio Code 1.58.1 拡張機能: Scala (Metals) 1.10.9 手順 1 .vscode/launch.json に以下を追加 { "version": "0.2.0", "configurations…
こういう話がありました。 Feature Request : Support for scala in dap-mode · Issue #196 · emacs-lsp/dap-mode を見てもdap-modeの使い方がよく分からなかったし別に時間をかける所じゃないなと思ったので、デバッグする時だけはIntelliJを使うことにしようとしたのですが、私の環境だとUIが崩壊してデバッグ設定以前の問題になってしまいます。 実はMetalsの(というかlsp-mode+dap-modeの)デバッガはいま普通に機能するけど、確かに使い方(使える状態にするコツ)がちょっとむずかしい感じがしますね。実…
これまでScalaでの開発にはENSIMEを使ってきたけど, もうそろそろ頃合いだとおもうのでMetalsに乗り換えた. エディタ側でLSPのサポートが充実してきているのでこれはだいぶ簡単で, さっくり乗り換えることができた.Metalsはビルド部分は裏側でBloopを使っているので, テストの実行なんかもこれに乗っかるとだいぶ楽になる. けどEmacsからBloopを利用するにはまだちょっと面倒なところもあったので, この際いろいろ整備してみた.