The VSCode and Cursor extensions for JetBrains IntelliJ IDEA-LSP server is quite interesting:
blog.jetbrains.com
But, you know as an aVId user, I have my eyes on the Neovim extension:
JetBrains/intellij-lsp.nvim
2 likes · 1 repost
The VSCode and Cursor extensions for JetBrains IntelliJ IDEA-LSP server is quite interesting:
blog.jetbrains.com
But, you know as an aVId user, I have my eyes on the Neovim extension:
JetBrains/intellij-lsp.nvim
7 likes · 2 reposts · 943 views
oh, @intellijidea is coming to @Neovim
JetBrains/intellij-lsp.nvim
1 like · 37 views
IntelliJ IDEAがLSPをしゃべるようになりVS CodeやCursorで使えるようになった
IntelliJがLSPをしゃべるようになり、VS CodeやCursorからExtension経由で呼び出せるようになる話が、夏頃から徐々に発表されていました。8月初旬にプレビューが開始されていました。
blog.jetbrains.com
これがようやく1.0を迎えました。
blog.jetbrains.com
VS CodeやCursorでは、下記をインストールすることで利用可能になります。
marketplace.visualstudio.com
何ができるのか
CursorやVS CodeといったJetBrains製以外のLSPを利用できるエディタでIntelliJの補完やリファクタリングといった機能を一通り利用できるようになります1。対応する言語はJavaとKotlinです。使ってみた限りではIntelliJでのスピードを維持しつつかなり安定的に動作する印象です。他のrust-analyzerなどのLanguage Serverに期待する動きのだいたいはできているように思います。
将来的には、コーディングエージェントからの呼び出しも想定しているようです。今やエディタを開いてコードを書く人の数は激減しており、主戦場はコーディングエージェントに移りつつあります。そして多くのコーディングエージェントはLSPとやりとりし、中身を解析することができます。適切にLSPを利用できるとそもそもの応答速度の高速化と、トークン効率の向上に少なからぬ影響を与えます。
利用料金
ただし、IntelliJのExtensionをVS CodeやCursorで利用するには、IntelliJ IDEA Ultimateライセンスが必要です。発表では30日の無料トライアルが付与されるようですが、その後の利用にはUltimateが必要になります。JetBrainsはIntelliJのライセンスで生計を立てている会社であるためやや仕方ない面はあります。
Kotlinの場合kotlin-lspが引き続き開発されており、Kotlinを書く際にはそちらを利用することで事実上無料でLanguage Serverの支援を得られますが、やや微妙です。kotlin-lspは開発がややのんびりな上に、直近でもkotlin-lspのバージョンを上げようとするとCDNの署名問題にあたって404が帰ってきてしまい最新バージョンに追従できずサーバーを起動できないなど、なかなか安定感のない状況にあるように思います。2したがって、ライセンス代さえ許せば今回のIntelliJのExtensionを使用する方が得策なのではないかと思います。
Neovimでの利用
さて私はNeovimユーザーなのでNeovimでの利用可否が当然気になりますが、問題なく使えました。LSPに対応しているということは当然Neovimでも起動できるだろう…と期待するわけですが、NeovimからはVisual Studio Marketplaceに接続できません。ではどうすればとなるわけですが、JetBrainsからintellij-lsp.nvimなるものが公開されており、これをNeovimの設定に記述するだけで利用できます。
JetBrains/intellij-lsp.nvim
全体的なアーキテクチャとしては、バックエンドはintellij-server、フロントエンドがNeovim内蔵のLSPクライアントと連携しながら動いているようです。バックエンドではIntelliJのコード解析エンジン部分をヘッドレス化し、stdio経由でLSPと会話する独立したプロセスになっているようです。IntelliJからの値の返却にはやや癖があり、補完時にNeovim側のUIと競合しないように実装を調整するなどの工夫も行われているようです。
当然ですがNeovimで利用したとしてもUltimateライセンス契約の確認は走ります。バックエンドのintellij-server起動時にNeovim側からEULA(利用規約)のハッシュ値を送信しないとエラーを吐いて即座に終了する仕様になっています。
私は今回kotlin-lspの設定(正確にはAlexandrosAlexiou/kotlin.nvimを使用していましたが)を全部剥がしてintellij-lspの設定を使うように変更しました。dotfilesにコミットを積んであるので、もし気になる方がいれば参考にしてみてください。3
github.com/yuk1ty/dotfiles/commit/567180437ba30e5…
まとめ
というわけでIntelliJ IDEA以外のエディタでもIntelliJのコードジャンプや補完機能を使った開発ができるようになりました。コーディングエージェントからの呼び出しにも対応されるとのことで、そちらも楽しみです。
脚注
詳しくないのですがOpen VSX(Visual Studio Marketplaceに依存しないレジストリ)にも公開されているため、Eclipse Theiaでも利用できるようです。 ↩︎
しかも定期的に発生する。これはZed Extensionでの報告事例ですが、kotlin#120 や kotlin#109 など。 ↩︎
プライベートではUltimateライセンスを持ってはいませんが、まあKotlinをプライベートで書くことはないのでまずよいでしょう。 ↩︎
2 likes
@unix_ash @MarcoBehler Yes, there is an experimental Neovim plugin for Neovim 0.11+: JetBrains/intellij-lsp.nvim It is pre-alpha, so expect rough edges. It uses the same IntelliJ IDEA language server, so an IntelliJ IDEA Ultimate subscription is necessary after the 30-day trial.
3 likes · 51 views
Neovim? Anyone?
JetBrains/intellij-lsp.nvim
5 likes · 3 reposts · 254 views
@sextapirov @ThePrimeagen @teej_dv @sudobunni @Folke @nicknisi @joshmedeski @Exosyphon @elijahmanor @dillon_mulroy @lewis6991 Actually @sextapirov
JetBrains/intellij-lsp.nvim
Please give it a try and let me know what you think!
😀😀😀😀😀
2 likes · 13 views
Mentions
The VSCode and Cursor extensions for JetBrains IntelliJ IDEA-LSP server is quite interesting: blog.jetbrains.com But, you know as an aVId user, I have my eyes on the Neovim extension: JetBrains/intellij-lsp.nvim
The VSCode and Cursor extensions for JetBrains IntelliJ IDEA-LSP server is quite interesting: blog.jetbrains.com But, you know as an aVId user, I have my eyes on the Neovim extension: JetBrains/intellij-lsp.nvim
oh, @intellijidea is coming to @Neovim JetBrains/intellij-lsp.nvim
IntelliJ IDEAがLSPをしゃべるようになりVS CodeやCursorで使えるようになった IntelliJがLSPをしゃべるようになり、VS CodeやCursorからExtension経由で呼び出せるようになる話が、夏頃から徐々に発表されていました。8月初旬にプレビューが開始されていました。 blog.jetbrains.com これがようやく1.0を迎えました。 blog.jetbrains.com VS CodeやCursorでは、下記をインストールすることで利用可能になります。 marketplace.visualstudio.com 何ができるのか CursorやVS CodeといったJetBrains製以外のLSPを利用できるエディタでIntelliJの補完やリファクタリングといった機能を一通り利用できるようになります1。対応する言語はJavaとKotlinです。使ってみた限りではIntelliJでのスピードを維持しつつかなり安定的に動作する印象です。他のrust-analyzerなどのLanguage Serverに期待する動きのだいたいはできているように思います。 将来的には、コーディングエージェントからの呼び出しも想定しているようです。今やエディタを開いてコードを書く人の数は激減しており、主戦場はコーディングエージェントに移りつつあります。そして多くのコーディングエージェントはLSPとやりとりし、中身を解析することができます。適切にLSPを利用できるとそもそもの応答速度の高速化と、トークン効率の向上に少なからぬ影響を与えます。 利用料金 ただし、IntelliJのExtensionをVS CodeやCursorで利用するには、IntelliJ IDEA Ultimateライセンスが必要です。発表では30日の無料トライアルが付与されるようですが、その後の利用にはUltimateが必要になります。JetBrainsはIntelliJのライセンスで生計を立てている会社であるためやや仕方ない面はあります。 Kotlinの場合kotlin-lspが引き続き開発されており、Kotlinを書く際にはそちらを利用することで事実上無料でLanguage Serverの支援を得られますが、やや微妙です。kotlin-lspは開発がややのんびりな上に、直近でもkotlin-lspのバージョンを上げようとするとCDNの署名問題にあたって404が帰ってきてしまい最新バージョンに追従できずサーバーを起動できないなど、なかなか安定感のない状況にあるように思います。2したがって、ライセンス代さえ許せば今回のIntelliJのExtensionを使用する方が得策なのではないかと思います。 Neovimでの利用 さて私はNeovimユーザーなのでNeovimでの利用可否が当然気になりますが、問題なく使えました。LSPに対応しているということは当然Neovimでも起動できるだろう…と期待するわけですが、NeovimからはVisual Studio Marketplaceに接続できません。ではどうすればとなるわけですが、JetBrainsからintellij-lsp.nvimなるものが公開されており、これをNeovimの設定に記述するだけで利用できます。 JetBrains/intellij-lsp.nvim 全体的なアーキテクチャとしては、バックエンドはintellij-server、フロントエンドがNeovim内蔵のLSPクライアントと連携しながら動いているようです。バックエンドではIntelliJのコード解析エンジン部分をヘッドレス化し、stdio経由でLSPと会話する独立したプロセスになっているようです。IntelliJからの値の返却にはやや癖があり、補完時にNeovim側のUIと競合しないように実装を調整するなどの工夫も行われているようです。 当然ですがNeovimで利用したとしてもUltimateライセンス契約の確認は走ります。バックエンドのintellij-server起動時にNeovim側からEULA(利用規約)のハッシュ値を送信しないとエラーを吐いて即座に終了する仕様になっています。 私は今回kotlin-lspの設定(正確にはAlexandrosAlexiou/kotlin.nvimを使用していましたが)を全部剥がしてintellij-lspの設定を使うように変更しました。dotfilesにコミットを積んであるので、もし気になる方がいれば参考にしてみてください。3 github.com/yuk1ty/dotfiles/commit/567180437ba30e5… まとめ というわけでIntelliJ IDEA以外のエディタでもIntelliJのコードジャンプや補完機能を使った開発ができるようになりました。コーディングエージェントからの呼び出しにも対応されるとのことで、そちらも楽しみです。 脚注 詳しくないのですがOpen VSX(Visual Studio Marketplaceに依存しないレジストリ)にも公開されているため、Eclipse Theiaでも利用できるようです。 ↩︎ しかも定期的に発生する。これはZed Extensionでの報告事例ですが、kotlin#120 や kotlin#109 など。 ↩︎ プライベートではUltimateライセンスを持ってはいませんが、まあKotlinをプライベートで書くことはないのでまずよいでしょう。 ↩︎
@unix_ash @MarcoBehler Yes, there is an experimental Neovim plugin for Neovim 0.11+: JetBrains/intellij-lsp.nvim It is pre-alpha, so expect rough edges. It uses the same IntelliJ IDEA language server, so an IntelliJ IDEA Ultimate subscription is necessary after the 30-day trial.
Neovim? Anyone? JetBrains/intellij-lsp.nvim
@sextapirov @ThePrimeagen @teej_dv @sudobunni @Folke @nicknisi @joshmedeski @Exosyphon @elijahmanor @dillon_mulroy @lewis6991 Actually @sextapirov JetBrains/intellij-lsp.nvim Please give it a try and let me know what you think! 😀😀😀😀😀