fcitx / fcitx5

maybe a new fcitx.
1.63k stars 117 forks source link

XIM frontend does not report about preedit #640

Closed KentaTheBugMaker closed 2 years ago

KentaTheBugMaker commented 2 years ago

Describe the bug XIM frontend does not report preedit.

To Reproduce Steps to reproduce the behavior:

  1. Open alacritty
  2. type hanabi with Mozc or anthy enabled

Expected behavior should appear はなび with underline. Report preedit like ibus does. Desktop (please complete the following information):

システム情報;

  1. uname -a:

    Linux t18b219k-vmwarevirtualplatform 5.15.76-1-MANJARO #1 SMP PREEMPT Sat Oct 29 14:22:16 UTC 2022 x86_64 GNU/Linux
  2. lsb_release -a:

    LSB Version:    n/a
    Distributor ID: ManjaroLinux
    Description:    Manjaro Linux
    Release:    22.0.0
    Codename:   Sikaris
  3. lsb_release -d:

    Description:    Manjaro Linux
  4. /etc/lsb-release:

    DISTRIB_ID=ManjaroLinux
    DISTRIB_RELEASE=22.0.0
    DISTRIB_CODENAME=Sikaris
    DISTRIB_DESCRIPTION="Manjaro Linux"
  5. /etc/os-release:

    NAME="Manjaro Linux"
    PRETTY_NAME="Manjaro Linux"
    ID=manjaro
    ID_LIKE=arch
    BUILD_ID=rolling
    ANSI_COLOR="32;1;24;144;200"
    HOME_URL="https://manjaro.org/"
    DOCUMENTATION_URL="https://wiki.manjaro.org/"
    SUPPORT_URL="https://forum.manjaro.org/"
    BUG_REPORT_URL="https://docs.manjaro.org/reporting-bugs/"
    PRIVACY_POLICY_URL="https://manjaro.org/privacy-policy/"
    LOGO=manjarolinux
  6. デスクトップ環境:

    デスクトップ環境は kde です。

  7. XDG SESSION TYPE:

    XDG_SESSION_TYPE='x11'
  8. Bash バージョン:

    BASH_VERSION='5.1.16(1)-release'

環境:

  1. DISPLAY:

    DISPLAY=':0'
    
    WAYLAND_DISPLAY=''
  2. キーボードレイアウト:

    1. setxkbmap:

      xkb_keymap {
          xkb_keycodes  { include "evdev+aliases(qwerty)" };
          xkb_types     { include "complete"  };
          xkb_compat    { include "complete+japan"    };
          xkb_symbols   { include "pc+jp+inet(evdev)" };
          xkb_geometry  { include "pc(pc104)" };
      };
    2. xprop:

      _XKB_RULES_NAMES(STRING) = "evdev", "pc104", "jp", "", ""
  3. ロケール:

    1. すべてのロケール:

      C
      C.UTF-8
      C.utf8
      POSIX
      aa_DJ.utf8
      aa_ER.utf8
      aa_ER.utf8@saaho
      aa_ET.utf8
      af_ZA.utf8
      agr_PE.utf8
      ak_GH.utf8
      am_ET.utf8
      an_ES.utf8
      anp_IN.utf8
      ar_AE.utf8
      ar_BH.utf8
      ar_DZ.utf8
      ar_EG.utf8
      ar_IN.utf8
      ar_IQ.utf8
      ar_JO.utf8
      ar_KW.utf8
      ar_LB.utf8
      ar_LY.utf8
      ar_MA.utf8
      ar_OM.utf8
      ar_QA.utf8
      ar_SA.utf8
      ar_SD.utf8
      ar_SS.utf8
      ar_SY.utf8
      ar_TN.utf8
      ar_YE.utf8
      as_IN.utf8
      ast_ES.utf8
      ayc_PE.utf8
      az_AZ.utf8
      az_IR.utf8
      be_BY.utf8
      be_BY.utf8@latin
      bem_ZM.utf8
      ber_DZ.utf8
      ber_MA.utf8
      bg_BG.utf8
      bhb_IN.utf8
      bho_IN.utf8
      bho_NP.utf8
      bi_VU.utf8
      bn_BD.utf8
      bn_IN.utf8
      bo_CN.utf8
      bo_IN.utf8
      br_FR.utf8
      brx_IN.utf8
      bs_BA.utf8
      byn_ER.utf8
      ca_AD.utf8
      ca_ES.utf8
      ca_ES.utf8@valencia
      ca_FR.utf8
      ca_IT.utf8
      ce_RU.utf8
      chr_US.utf8
      cmn_TW.utf8
      crh_UA.utf8
      cs_CZ.utf8
      csb_PL.utf8
      cv_RU.utf8
      cy_GB.utf8
      da_DK.utf8
      de_AT.utf8
      de_BE.utf8
      de_CH.utf8
      de_DE.utf8
      de_IT.utf8
      de_LI.utf8
      de_LU.utf8
      doi_IN.utf8
      dsb_DE.utf8
      dv_MV.utf8
      dz_BT.utf8
      el_CY.utf8
      el_GR.utf8
      en_AG.utf8
      en_AU.utf8
      en_BW.utf8
      en_CA.utf8
      en_DK.utf8
      en_GB.utf8
      en_HK.utf8
      en_IE.utf8
      en_IL.utf8
      en_IN.utf8
      en_NG.utf8
      en_NZ.utf8
      en_PH.utf8
      en_SC.utf8
      en_SG.utf8
      en_US.utf8
      en_ZA.utf8
      en_ZM.utf8
      en_ZW.utf8
      eo.utf8
      es_AR.utf8
      es_BO.utf8
      es_CL.utf8
      es_CO.utf8
      es_CR.utf8
      es_CU.utf8
      es_DO.utf8
      es_EC.utf8
      es_ES.utf8
      es_GT.utf8
      es_HN.utf8
      es_MX.utf8
      es_NI.utf8
      es_PA.utf8
      es_PE.utf8
      es_PR.utf8
      es_PY.utf8
      es_SV.utf8
      es_US.utf8
      es_UY.utf8
      es_VE.utf8
      et_EE.utf8
      eu_ES.utf8
      fa_IR.utf8
      ff_SN.utf8
      fi_FI.utf8
      fil_PH.utf8
      fo_FO.utf8
      fr_BE.utf8
      fr_CA.utf8
      fr_CH.utf8
      fr_FR.utf8
      fr_LU.utf8
      fur_IT.utf8
      fy_DE.utf8
      fy_NL.utf8
      ga_IE.utf8
      gd_GB.utf8
      gez_ER.utf8
      gez_ER.utf8@abegede
      gez_ET.utf8
      gez_ET.utf8@abegede
      gl_ES.utf8
      gu_IN.utf8
      gv_GB.utf8
      ha_NG.utf8
      hak_TW.utf8
      he_IL.utf8
      hi_IN.utf8
      hif_FJ.utf8
      hne_IN.utf8
      hr_HR.utf8
      hsb_DE.utf8
      ht_HT.utf8
      hu_HU.utf8
      hy_AM.utf8
      ia_FR.utf8
      id_ID.utf8
      ig_NG.utf8
      ik_CA.utf8
      is_IS.utf8
      it_CH.utf8
      it_IT.utf8
      iu_CA.utf8
      ja_JP.utf8
      ka_GE.utf8
      kab_DZ.utf8
      kk_KZ.utf8
      kl_GL.utf8
      km_KH.utf8
      kn_IN.utf8
      ko_KR.utf8
      kok_IN.utf8
      ks_IN.utf8
      ks_IN.utf8@devanagari
      ku_TR.utf8
      kw_GB.utf8
      ky_KG.utf8
      lb_LU.utf8
      lg_UG.utf8
      li_BE.utf8
      li_NL.utf8
      lij_IT.utf8
      ln_CD.utf8
      lo_LA.utf8
      lt_LT.utf8
      lv_LV.utf8
      lzh_TW.utf8
      mag_IN.utf8
      mai_IN.utf8
      mai_NP.utf8
      mfe_MU.utf8
      mg_MG.utf8
      mhr_RU.utf8
      mi_NZ.utf8
      miq_NI.utf8
      mjw_IN.utf8
      mk_MK.utf8
      ml_IN.utf8
      mn_MN.utf8
      mni_IN.utf8
      mnw_MM.utf8
      mr_IN.utf8
      ms_MY.utf8
      mt_MT.utf8
      my_MM.utf8
      nan_TW.utf8
      nan_TW.utf8@latin
      nb_NO.utf8
      nds_DE.utf8
      nds_NL.utf8
      ne_NP.utf8
      nhn_MX.utf8
      niu_NU.utf8
      niu_NZ.utf8
      nl_AW.utf8
      nl_BE.utf8
      nl_NL.utf8
      nn_NO.utf8
      nr_ZA.utf8
      nso_ZA.utf8
      oc_FR.utf8
      om_ET.utf8
      om_KE.utf8
      or_IN.utf8
      os_RU.utf8
      pa_IN.utf8
      pa_PK.utf8
      pap_AW.utf8
      pap_CW.utf8
      pl_PL.utf8
      ps_AF.utf8
      pt_BR.utf8
      pt_PT.utf8
      quz_PE.utf8
      raj_IN.utf8
      ro_RO.utf8
      ru_RU.utf8
      ru_UA.utf8
      rw_RW.utf8
      sa_IN.utf8
      sah_RU.utf8
      sat_IN.utf8
      sc_IT.utf8
      sd_IN.utf8
      sd_IN.utf8@devanagari
      se_NO.utf8
      sgs_LT.utf8
      shn_MM.utf8
      shs_CA.utf8
      si_LK.utf8
      sid_ET.utf8
      sk_SK.utf8
      sl_SI.utf8
      sm_WS.utf8
      so_DJ.utf8
      so_ET.utf8
      so_KE.utf8
      so_SO.utf8
      sq_AL.utf8
      sq_MK.utf8
      sr_ME.utf8
      sr_RS.utf8
      sr_RS.utf8@latin
      ss_ZA.utf8
      st_ZA.utf8
      sv_FI.utf8
      sv_SE.utf8
      sw_KE.utf8
      sw_TZ.utf8
      szl_PL.utf8
      ta_IN.utf8
      ta_LK.utf8
      tcy_IN.utf8
      te_IN.utf8
      tg_TJ.utf8
      th_TH.utf8
      the_NP.utf8
      ti_ER.utf8
      ti_ET.utf8
      tig_ER.utf8
      tk_TM.utf8
      tl_PH.utf8
      tn_ZA.utf8
      to_TO.utf8
      tpi_PG.utf8
      tr_CY.utf8
      tr_TR.utf8
      ts_ZA.utf8
      tt_RU.utf8
      tt_RU.utf8@iqtelif
      ug_CN.utf8
      uk_UA.utf8
      unm_US.utf8
      ur_IN.utf8
      ur_PK.utf8
      uz_UZ.utf8
      uz_UZ.utf8@cyrillic
      ve_ZA.utf8
      vi_VN.utf8
      wa_BE.utf8
      wae_CH.utf8
      wal_ET.utf8
      wo_SN.utf8
      xh_ZA.utf8
      yi_US.utf8
      yo_NG.utf8
      yue_HK.utf8
      yuw_PG.utf8
      zh_CN.utf8
      zh_HK.utf8
      zh_SG.utf8
      zh_TW.utf8
      zu_ZA.utf8
    2. 現在のロケール:

      LANG=ja_JP.UTF-8
      LC_CTYPE="ja_JP.UTF-8"
      LC_NUMERIC=ja_JP.UTF-8
      LC_TIME=ja_JP.UTF-8
      LC_COLLATE="ja_JP.UTF-8"
      LC_MONETARY=ja_JP.UTF-8
      LC_MESSAGES="ja_JP.UTF-8"
      LC_PAPER=ja_JP.UTF-8
      LC_NAME=ja_JP.UTF-8
      LC_ADDRESS=ja_JP.UTF-8
      LC_TELEPHONE=ja_JP.UTF-8
      LC_MEASUREMENT=ja_JP.UTF-8
      LC_IDENTIFICATION=ja_JP.UTF-8
      LC_ALL=
  4. ディレクトリ:

    1. ホーム:

      /home/t18b219k
    2. ${XDG_CONFIG_HOME}:

      環境変数 XDG_CONFIG_HOME が設定されていません。

      現在の XDG_CONFIG_HOME の値は ~/.config (/home/t18b219k/.config) です。

    3. Fcitx5 設定ディレクトリ:

      現在の fcitx5 の設定ディレクトリは ~/.config/fcitx5 (/home/t18b219k/.config/fcitx5) です。

  5. 現在のユーザー:

    t18b219k (1000)としてスクリプトを実行

Fcitx 状態:

  1. 実行可能:

    fcitx5 を /usr/bin/fcitx5 で見つけました。

  2. バージョン:

    Fcitx のバージョン: 5.0.19

  3. プロセス:

    1 fcitx5 プロセスが見つかりました:

       4082 fcitx5
  4. fcitx5-remote:

    fcitx5-remote は正常に動作しています。

  5. DBus インターフェース:

    DBus をチェックするために dbus-send を使用します。

    DBus 名 org.fcitx.Fcitx5 の所有者は :1.89 です。

    DBus 名 org.fcitx.Fcitx5 の所有者の PID は4082 です。

    dbus からのデバッグ情報:

       Group [x11::0] has 6 InputContext(s)
      IC [f50e281b1cb74c0e98737703f5c67bb4] program:alacritty frontend:xim cap:4000000000 focus:1
      IC [2130199624244fd392d6be047c7837b6] program:plasmashell frontend:dbus cap:6000800072 focus:0
      IC [b14adf4fb81e43808735d52da873967b] program:plasmashell frontend:dbus cap:6000820072 focus:0
      IC [cee205ee386743299aab752335b29ec0] program:plasmashell frontend:dbus cap:6000800072 focus:0
      IC [2fe03d7073314dabb61db2fb9d5cacb6] program:konsole frontend:dbus cap:6000800072 focus:0
      IC [a6597197b09b40ab9ec5d5f796a6971e] program:plasmashell frontend:dbus cap:6000800072 focus:0
    Input Context without group

Fcitx 設定 UI:

  1. 設定ツールラッパー:

    fcitx5-configtool を /usr/bin/fcitx5-configtool で見つけました。

  2. qt 向け設定 GUI:

    fcitx5-config-qt/usr/bin/fcitx5-config-qt で見つけました。

  3. KDE 向け設定 GUI:

    fcitx5 kcm モジュールを見つけました。

    kcm_fcitx5                     - 入力メソッドの設定

フロントエンド設定:

Xim:

  1. ${XMODIFIERS}:

    環境変数 XMODIFIERS は "@im=fcitx" に正しく設定されています。 環境変数から取得した XIM サーバー名は fcitx です。

  2. ルートウィンドウでの XIM_SERVERS :

    XIM サーバー名は環境変数で設定されたものと同じです。

Qt:

  1. qt4 - ${QT4_IM_MODULE}:

    環境変数 QT_IM_MODULE は "fcitx" に正しく設定されています。

  2. qt5 - ${QT_IM_MODULE}:

    環境変数 QT_IM_MODULE は "fcitx" に正しく設定されています。

  3. Qt IM モジュールファイル:

    fcitx5 qt5 モジュールが見つかりました: /usr/lib/fcitx5/qt5/libfcitx-quickphrase-editor5.so。 qtの $3{3} im モジュールが見つかりました: /usr/lib/qt/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so 不明な fcitx qt モジュールが見つかりました: /usr/lib/qt/plugins/kcms/kcm_fcitx5.so。 qt6の $3{3} im モジュールが見つかりました: /usr/lib/qt6/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so Qt4 の fcitx5 入力メソッドモジュールが見つかりません。

Gtk:

  1. gtk - ${GTK_IM_MODULE}:

    環境変数 GTK_IM_MODULE は "fcitx" に正しく設定されています。

  2. gtk-query-immodules:

    1. gtk 2:

      gtk 2 の gtk-query-immodules が見つかりません

      gtk 2 の fcitx5 入力メソッドモジュールが見つかりません。

    2. gtk 3:

      gtk 3.24.34 用の gtk-query-immodules/usr/bin/gtk-query-immodules-3.0 に見つけました。 バージョンライン:

      # Created by /usr/bin/gtk-query-immodules-3.0 from gtk+-3.24.34

      gtk 3.24.34 用の fcitx5 入力メソッドモジュールが見つかりました。

      "/usr/lib/gtk-3.0/3.0.0/immodules/im-fcitx5.so" 
      "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
      "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
  3. Gtk IM モジュールキャッシュ:

    1. gtk 2:

      gtk 2 の immodules キャッシュが見つかりません

      キャッシュに gtk 2 の fcitx5 入力メソッドモジュールが見つかりません。

    2. gtk 3:

      gtk 3.24.34 の immodule cache を /usr/lib/gtk-3.0/3.0.0/immodules.cache に見つけました。 バージョンライン:

      # Created by /usr/bin/gtk-query-immodules-3.0 from gtk+-3.24.34

      gtk 3.24.34 用の fcitx5 入力メソッドモジュールが見つかりました。

      "/usr/lib/gtk-3.0/3.0.0/immodules/im-fcitx5.so" 
      "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
      "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
    3. gtk 4:

      gtk 4 の immodules キャッシュが見つかりません

      キャッシュに gtk 4 の fcitx5 入力メソッドモジュールが見つかりません。

  4. Gtk IM モジュールファイル:

    1. gtk 2:

      見つかった Gtk 2 IMモジュールファイルはすべて存在します。

    2. gtk 3:

      見つかった Gtk 3 IMモジュールファイルはすべて存在します。

    3. gtk 4:

      見つかった Gtk 4 IMモジュールファイルはすべて存在します。

設定:

Fcitx アドオン:

  1. アドオン設定ディレクトリ:

    fcitx5 アドオンの設定ディレクトリを見つけました: /usr/share/fcitx5/addon

  2. アドオン一覧:

    1. 29 個の有効なアドオンが見つかりました:

      Anthy 5.0.12
      Simplified and Traditional Chinese Translation 5.0.15
      Classic User Interface 5.0.19
      Clipboard 5.0.19
      Cloud Pinyin 5.0.15
      DBus 5.0.19
      DBus Frontend 5.0.19
      Emoji 5.0.19
      Fcitx4 Frontend 5.0.19
      Full width character 5.0.15
      Hangul 5.0.10
      IBus Frontend 5.0.19
      Input method selector 5.0.19
      Keyboard 5.0.19
      KDE Input Method Panel 5.0.19
      Mozc 
      Status Notifier 5.0.19
      Notification 5.0.19
      Pinyin 5.0.15
      Extra Pinyin functionality 5.0.15
      Punctuation 5.0.15
      Quick Phrase 5.0.19
      Spell 5.0.19
      Table 5.0.15
      Unicode 5.0.19
      Wayland 5.0.19
      Wayland Input method frontend 5.0.19
      XCB 5.0.19
      X Input Method Frontend 5.0.19
    2. 0 個の無効なアドオンが見つかりました:

  3. アドオンライブラリ:

    すべてのアドオン用ライブラリが見つかりました。

  4. ユーザーインターフェイス:

    2 が有効なユーザーインターフェイスアドオンが見つかりました:

    Classic User Interface
    KDE Input Method Panel

    Kimpanel のプロセス:

       3609 /usr/bin/plasmashell --no-respawn

入力メソッド:

  1. /home/t18b219k/.config/fcitx5/profile:

    [Groups/0]
    # Group Name
    Name=default
    # Layout
    Default Layout=jp
    # Default Input Method
    DefaultIM=mozc
    
    [Groups/0/Items/0]
    # Name
    Name=keyboard-jp
    # Layout
    Layout=
    
    [Groups/0/Items/1]
    # Name
    Name=mozc
    # Layout
    Layout=jp
    
    [Groups/0/Items/2]
    # Name
    Name=hangul
    # Layout
    Layout=
    
    [GroupOrder]
    0=default

ログ:

  1. date:

    2022年 11月  6日 日曜日 19:15:10 JST
  2. /home/t18b219k/.config/fcitx5/crash.log:

    /home/t18b219k/.config/fcitx5/crash.log は見つかりません

警告: fcitx5-diagnose の出力には、ディストリビューション名、カーネルバージョン、現在実行中のプログラムなどの機密情報が含まれています。

このような情報は開発者が診断するときに役に立つ場合がありますが、オンラインで公開する前に確認して、必要があれば削除してください。

Additional context

wengxt commented 2 years ago

over the spot is used by default. You can go to xim frontend configuration to change this.

due to one historical libx11 limitation(which only fixed very recently: https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/127) , preedit and correct popup window position can't work together. I'd prefer correct popup position instead of preedit.

KentaTheBugMaker commented 2 years ago

ok. Is there big difference between ibus frontend and dbus frontend?