解決fcitx輸入法在Intellij IDEA開發工具中輸入法候選框無法跟隨光標移動的問題

概述

在linux平臺下使用搜狗輸入法在IDEA中輸入中文時,輸入法候選框總是靜止在IDEA的左下角,而不能跟隨光標進行移動。雖然不影響輸入結果,但很影響輸入體驗。並且其實網上確實給了一些解決方法,但好多時候,這些解決方法對小白不太友好,因此,此處我嘗試站在巨人的肩膀上,對前輩的一些方法進行整合並且給出比較詳細的解決步驟。

系統環境:

KDE Plama Version:5.19.5
KDE Frameworks Version:5.73.0
Kernel Version:5.8.6-1-MANJARO

硬件環境:

處理器:Intel Core i5-8500 cp @3.00GHz

問題定位

具體問題官方其實七年前就有了(參考https://youtrack.jetbrains.com/issue/JBR-2460),但是比較坑的是官方也一直沒有解決這個問題🐶(此處忍不住吐槽一下哈)。簡單來說就是Ideajre運行環境一個bug,導致輸入法無法定位到鼠標位置。因此,我們要解決該問題必須要修改JetBrainsRuntime的運行代碼。

解決方法

如果只是想快速解決該問題,而對其原理不感興趣的話,僅僅使用方法1即可。

方法1:修改JetBrainsRuntime

  1. 下載已經修改好的JRE環境

    下載地址1(我有積分):https://download.csdn.net/download/Startapi/12894900

    下載地址2(白嫖也很好):

    百度雲鏈接: /s/1nUVPhXmgRqPBDe_8MeO-BQ 
    密碼: rjg4
    
  2. 下載完成後解壓到任意目錄,此處我是解壓到了~/Application目錄下

test

  1. 更改IDEA的啓動環境

    修改文件: home/idea-2020.1/bin/idea.sh (找到你自己的idea的安裝路徑)在開頭處添加

    export IDEA_JDK=xport IDEA_JDK=/home/vcjmhg/Application/java-11.0.7-jetbrain(改成自己的JRE目錄)

    img

方法2:使用path編譯JetBrainsRuntime

  1. 從Github下載JetBrainsRuntime,執行如下代碼:

    git clone https://github.com/JetBrains/JetBrainsRuntime.git
    
  2. 應用patch

    patch 下載地址: https://github.com/prehonor/myJetBrainsRuntime

    #將Path放到JetBrainsRuntime的根目錄下
    cd JetBrainsRuntime
    # 應用Patch
    git apply idea.patch
    
  3. 編譯JetBrainsRuntime

    這個可以參照官方的提供的方式來進行編譯:戳我。但就我個人嘗試的情況來看,使用docker編譯或者直接在自己的Arch linux中進行編譯都會出現錯誤。最終可行的方式是使用虛擬機虛擬一個Ububtu 20.0.4的環境進行編譯。但需要主要的是給該虛擬分配的內存空間應該大於2G,否則可能出現內存不足,編譯錯誤的情況發生。

  4. 參考方法一種的步驟,應該編譯好的JRE環境。

參考

  1. https://blog.csdn.net/qq_37303226/article/details/79640886
  2. https://blog.csdn.net/u011166277/article/details/106287587
  3. https://bbs.archlinuxcn.org/viewtopic.php?id=10529&p=2
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章