(2020.7.30追記)
RubyMine 2020.2からはアンチエイリアス設定がGreyscaleモードかNo antialiasingモードの2つしかなくなりました。
Subpixelモードがなくなったことにより、この問題が発生する可能性が低くなったものと思われます。
ちなみにSubpixelモードがなくなったのは「このモードをAppleがサポートしなくなったから」とのことです。
参考情報
- IntelliJ IDEA 2020.2 EAP2 Is Here with Advanced Exception Stack Trace Analysis, Emoji Support on Linux, and More – IntelliJ IDEA Blog | JetBrains のコメント欄
- Subpixel(LCD) text is slow with UI font in 2020.1, switching to greyscale antialiasing helps : IDEA-238301
以下の本文はRubyMine 2020.1時代に書いたものです。
困っていたこと:RubyMine 2020.1がめちゃくちゃ遅い
RubyMineのバージョンが2020.1に上がってから文字入力がめちゃくちゃ遅くなりました。
どれくらい遅いのかというと、人間のタイピングスピードにIDEがまったく追いついていない、っていうぐらい遅いです。
実際のスピードについては以下のツイートに載せた動画を参考にしてください。
@yusuke RubyMine 2020.1から日本語入力が超遅いです。この記事( https://t.co/JEwYPo19He )を見ながらJBR8を設定しましたが改善されませんでした。全速力でタイピングしてこれぐらいの表示スピードです。実際に1行目の半分ぐらいでタイピングはすべて終わってます。他に何か原因は考えられますか? pic.twitter.com/fGoRHAlR3p
— Junichi Ito (伊藤淳一) (@jnchito) May 10, 2020
問題が発生した実行環境
僕の実行環境は以下のとおりです。
- RubyMine 2020.1.1
- macOS 10.15.4
- MacBook Pro (13-inch, 2017)
- Memory 16GB
RubyMineが遅い原因
RubyMineが遅い理由はどうやら4Kディスプレイにあるようです。
僕は普段Mac本体のディスプレイではなく、USB-Cで接続した4Kディスプレイ(EIZO EV2785)を使っているのですが、RubyMineのウインドウを4Kディスプレイで表示したときだけ、この現象が発生しました。
Mac本体のディスプレイに表示したときは、必要十分なスピードで入力できました。
同じような現象はIntelliJ IDEAやPhpStorm、PyCharmといった他のJetBrains製IDEでも発生しているようです。
解決策(というか、軽減策)
下記の情報を参考にして、IDEとEditorのアンチエイリアス設定をSubpixelからGreyscaleに変更すると、2019.3とほぼ同等の入力スピードに戻すことができました。
Maybe it will help someone: the integrated terminal was extremely slow, I was able to fix the performance issue by changing the Antialiasing to Greyscale for both the editor and IDE.
https://youtrack.jetbrains.com/issue/JBR-526#focus=streamItem-27-4144635.0-0
アンチエイリアス設定はPreferences > Appearance & Behavior > Appearanceで変更できます。

こちらはGreyscaleモードで入力したときの動画です。
これだと人間のタイピングスピードにもほぼ追従できています。
ただし、Greyscaleにすると画面の文字が少し細く(または暗く?)表示されるという副作用があります。
また、アンチエイリアスを完全になくすNo antialiasingというモードもありますが、これだとエディタの文字がガタガタして見栄えが悪いので、僕は選択しませんでした。
できればアンチエイリアス設定を変えずに、デフォルトのSubpixelモードで使いたいところですが、この問題は4Kディスプレイ、OS、JVMの兼ね合いに起因しているらしく、根本的な解決にはもうちょっと時間がかかりそうな気がします。
参考:あまり効果がなかった対策
JavaのRuntimeをJBR11からJBR8に変更する(もしくはJBR8からJBR11に戻す)と改善するかも、という情報がありましたが、これは効果がありませんでした。
ちなみに現在、僕のRubyMine 2020.1ではJBR8(jbsdk8u202b1491_osx_x64.tar.gz)を使用しています。
情報募集!
その他、この問題を解決するためのいい情報をご存じの方がいましたら、コメント欄等で情報をお願いします🙏
謝辞
本件については株式会社サムライズムのユースケさん(@yusuke)に解決のヒントをいただきました。
ユースケさん、どうもありがとうございました!