GithubHelp home page GithubHelp logo

fcitx5's Introduction

Next generation of fcitx

Fcitx 5 is a generic input method framework released under LGPL-2.1+.

Jenkins Build Status Coverity Scan Status Documentation

Packaging status

fcitx5's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fcitx5's Issues

my fcitx5 not work in jetbrains product

my fcitx5 not work in jetbrains product, and I cannot figure its reason.

Is there some clue you can provide to help me?

OS: archlinux
Installation: through archlinuxcn repo
Problem: works perfectly in other applications, but not in jetbrains products, like idea, goland, etc.

Thank you very much.

Can't repeat key input in Firefox

How to reproduce:

  1. On Firefox, open google.com and focus on any input or textarea element
  2. Press the "d" key (or any key) and hold it down for 3 seconds

Symptom:
Only single "d" letter appears in the input box.

Expected behavior:
Repeating "d" letters should appear in the input box.

The bug only occurs with Firefox+Fcitx5 combined, as shown in the following video:
https://user.fm/files/v2-1ed6131059be478b2bb8b6f90e5892cb/firefox.mkv

The bug disappears on Chromium+Fcitx5:
https://user.fm/files/v2-cfa9f78065813f79160d4971268cdf02/chromium.mkv

Fcitx5 crashes KDE Konsole when pressing Context key

oops, press enter and it got sent.


Some possible infomation:
OS/DE: Arch Linux + KDE
Fcitx5 version: latest in repo, has this issue for possibly all the versions
After killing fcitx5, context key doesn't crash konsole.
Should be quiet easy to reproduce.


Sorry for such a messy issue, please holler if you need any more info

Different behavior between sync mode and async mode im module

This usually happens, when a commit string and forward key happens at the same time.

When it is sync mode:

  1. key event received. (im module block on process key event)
  2. commit string (not recevied yet)
  3. process key event returns.
  4. commit string.

In async mode, commit string happens before the key event because im module does not block on process key event anymore.

We should try to piggyback the commit string and any other event after the key event to make sure we have the consistent behavior.

Is it possible to package fcitx5 without systemd?

I ever asked this question in #fcitx IRC channel, but nobody seems avaliable at that time. Now I think, I should open an issue to ask about it. In CMakeLists.txt , there is:

find_package(Systemd REQUIRED)

This is a hard dependency and it hurts for systemd-free distro packagers. A reasonable question to ask is Is it possible to package fcitx5 without systemd? It would be nice to see that an input method will be independent of any init system or service manager with respect to systemd.

fcitx binded ime is not working other than terminal

issue

when other than terminal application(e.g. firefox search input, or leafpad), Japanese input(nihongo nyuuryoku) is not reacted.(seem to running IME)

attenuate:
At first, I seem the ploblem is only mozc, but also fcitx-anthy occurred same ploblem.
so I think this is fcitx bug(or config miss?).
And I am trying add new linux user that not root environmnt, result is same....

environment

root@kaliProvisional:~# uname -a
Linux kaliProvisional 4.6.0-kali1-amd64 #1 SMP Debian 4.6.4-1kali1 (2016-07-21) x86_64 GNU/Linux
root@kaliProvisional:~# fcitx-diagnose 
# System Info:
1.  `uname -a`:

        Linux kaliProvisional 4.6.0-kali1-amd64 #1 SMP Debian 4.6.4-1kali1 (2016-07-21) x86_64 GNU/Linux

2.  `lsb_release -a`:

        No LSB modules are available.
        Distributor ID:	Kali
        Description:	Kali GNU/Linux Rolling
        Release:	kali-rolling
        Codename:	kali-rolling

3.  `lsb_release -d`:

        Description:	Kali GNU/Linux Rolling

4.  `/etc/lsb-release`:

        DISTRIB_ID=Kali
        DISTRIB_RELEASE=kali-rolling
        DISTRIB_CODENAME=kali-rolling
        DISTRIB_DESCRIPTION="Kali GNU/Linux Rolling"

5.  `/etc/os-release`:

        PRETTY_NAME="Kali GNU/Linux Rolling"
        NAME="Kali GNU/Linux"
        ID=kali
        VERSION="2016.1"
        VERSION_ID="2016.1"
        ID_LIKE=debian
        ANSI_COLOR="1;31"
        HOME_URL="http://www.kali.org/"
        SUPPORT_URL="http://forums.kali.org/"
        BUG_REPORT_URL="http://bugs.kali.org/"

6.  Desktop Environment:

    Desktop environment is `gnome3`.

7.  Bash Version:

        BASH_VERSION='4.3.46(1)-release'

I will attached full log.
diagnose.txt

[Feature]svg support in the classic UI

Hi, this is the long living feature request...it's year 2017 with so many HDPI screens existing, we really shouldn't use the 9 parts theming engine any more:-(

Cannot start if disable keyboard addon.

If disable this option

image

I2020-04-29 19:25:16.006697 instance.cpp:1010] Override Enabled Addons: {}
I2020-04-29 19:25:16.006762 instance.cpp:1011] Override Disabled Addons: {keyboard, clipboard}
I2020-04-29 19:25:16.112126 addonmanager.cpp:189] Loaded addon unicode
I2020-04-29 19:25:16.112703 addonmanager.cpp:189] Loaded addon wayland
I2020-04-29 19:25:16.114320 addonmanager.cpp:189] Loaded addon quickphrase
I2020-04-29 19:25:16.170934 addonmanager.cpp:189] Loaded addon xcb
I2020-04-29 19:25:16.171293 addonmanager.cpp:189] Loaded addon waylandim
I2020-04-29 19:25:16.179581 addonmanager.cpp:189] Loaded addon xim
W2020-04-29 19:25:16.179790 inputmethodmanager.cpp:111] Failed to load input method addon: keyboard
I2020-04-29 19:25:16.236789 addonmanager.cpp:189] Loaded addon classicui
E2020-04-29 19:25:16.238347 instance.cpp:1020] Couldn't find keyboard-us

Need to manually delete the relevant options in the configuration file to successfully start.

~/.config/fcitx5/config

[Behavior/DisabledAddons]
0=keyboard

部分应用中 fcitx5 的单行默认无效

终端、Firefox、Chrome等中单行正常,Sublime Text 和 WPS 中就只显示双行,如图
xfce4-terminal、Firefox、Chrome 正常:
1
2
到WPS、subl中就变成了双行模式:
3
4

对这个新版本,我有一个新建议--状态跟随光标

只要输入法激活就让状态栏跟随在光标上,当有候选时,隐藏状态栏,显示候选栏。一点也不冲突。

因为在开始输入法时我真的不知道我当前是中文状态还是英文状态啊。每次都输了四五个键又回头改。

make error

Prepare targets for installation.

     ([this](dbus::DBusStruct<bool> value) {
       ^

/root/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
[this, method = SETMETHOD](::fcitx::dbus::Message &msg) {
^~~~~~~~~
/root/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp: In lambda function:
/root/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:596:13: error: ‘this’ was not captured for this lambda function
clientCommitPreedit_ = std::get<0>(value);
^
/root/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
[this, method = SETMETHOD](::fcitx::dbus::Message &msg) {
^~~~~~~~~
/root/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:596:13: error: invalid use of non-static data member ‘fcitx::IBusInputContext::clientCommitPreedit_’
clientCommitPreedit_ = std::get<0>(value);
^
/root/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
[this, method = SETMETHOD](::fcitx::dbus::Message &msg) {
^~~~~~~~~
/root/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:604:33: note: declared here
bool clientCommitPreedit_ = false;
^~~~~
src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/build.make:62: recipe for target 'src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/ibusfrontend.cpp.o' failed
make[2]: *** [src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/ibusfrontend.cpp.o] Error 1
CMakeFiles/Makefile2:1918: recipe for target 'src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/all' failed
make[1]: *** [src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

Missing header-only target for libfmt in Debian

hosiet@hosiet-tp [20时56分58秒] [~/src/debian/pkg-ime/fcitx5] [master]
-> % cmake .      
-- The C compiler identification is GNU 7.2.0
-- The CXX compiler identification is GNU 7.2.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29") 
-- Found Systemd: /lib/x86_64-linux-gnu/libsystemd.so (found version "234") 
-- Found DL: /usr/include  
-- Looking for dgettext
-- Looking for dgettext - found
-- Found LIBINTL: /usr/include  
-- Found LibUUID: /usr/lib/x86_64-linux-gnu/libuuid.so (found version "2.29.2") 
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Found Pthread: /usr/include  
-- Looking for backtrace
-- Looking for backtrace - found
-- Found Execinfo: /usr/include  
-- Found Gettext: /usr/bin/msgmerge (found version "0.19.8.1") 
-- XCB: XFIXES requires XCB;RENDER;SHAPE
-- XCB: XFIXES requires XCB;RENDER;SHAPE
-- Found XCB_XCB: /usr/lib/x86_64-linux-gnu/libxcb.so (found version "1.12") 
-- Found XCB_RENDER: /usr/lib/x86_64-linux-gnu/libxcb-render.so (found version "1.12") 
-- Found XCB_SHAPE: /usr/lib/x86_64-linux-gnu/libxcb-shape.so (found version "1.12") 
-- Found XCB_XFIXES: /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so (found version "1.12") 
-- Found XCB_AUX: /usr/lib/x86_64-linux-gnu/libxcb-util.so (found version "0.3.8") 
-- Found XCB_ICCCM: /usr/lib/x86_64-linux-gnu/libxcb-icccm.so (found version "0.4.1") 
-- Found XCB_RANDR: /usr/lib/x86_64-linux-gnu/libxcb-randr.so (found version "1.12") 
-- Found XCB_XINERAMA: /usr/lib/x86_64-linux-gnu/libxcb-xinerama.so (found version "1.12") 
-- Found XCB_XKB: /usr/lib/x86_64-linux-gnu/libxcb-xkb.so (found version "1.12") 
-- Found XCB: /usr/lib/x86_64-linux-gnu/libxcb.so;/usr/lib/x86_64-linux-gnu/libxcb-render.so;/usr/lib/x86_64-linux-gnu/libxcb-shape.so;/usr/lib/x86_64-linux-gnu/libxcb-xfixes.so;/usr/lib/x86_64-linux-gnu/libxcb-util.so;/usr/lib/x86_64-linux-gnu/libxcb-icccm.so;/usr/lib/x86_64-linux-gnu/libxcb-randr.so;/usr/lib/x86_64-linux-gnu/libxcb-xinerama.so;/usr/lib/x86_64-linux-gnu/libxcb-xkb.so (found version "1.12") found components:  XCB AUX XKB XFIXES ICCCM XINERAMA RANDR 
-- Found XKBCommon_XKBCommon: /usr/lib/x86_64-linux-gnu/libxkbcommon.so (found version "0.7.1") 
-- Found XKBCommon_X11: /usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so (found version "0.7.1") 
-- Found XKBCommon: /usr/lib/x86_64-linux-gnu/libxkbcommon.so;/usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so (found version "0.7.1") found components:  XKBCommon X11 
-- Checking for module 'iso-codes'
--   Found iso-codes, version 3.76
-- Found IsoCodes: /usr/share/xml/iso-codes/iso_639.xml  
-- Found Expat: /usr/lib/x86_64-linux-gnu/libexpat.so (found version "2.2.3") 
-- Found XKeyboardConfig: /usr/share/X11/xkb (found version "2.19") 
-- Checking for module 'cairo'
--   Found cairo, version 1.14.10
-- Checking for module 'cairo-xcb'
--   Found cairo-xcb, version 1.14.10
-- Checking for module 'cairo-egl'
--   No package 'cairo-egl' found
-- Checking for modules 'pango;pangocairo'
--   Found pango, version 1.40.12
--   Found pangocairo, version 1.40.12
-- Found Wayland_Client: /usr/lib/x86_64-linux-gnu/libwayland-client.so (found version "1.14.0") 
-- Found Wayland_Egl: /usr/lib/x86_64-linux-gnu/libwayland-egl.so (found version "17.2.2") 
-- Found Wayland: /usr/lib/x86_64-linux-gnu/libwayland-client.so;/usr/lib/x86_64-linux-gnu/libwayland-egl.so (found version "1.14.0") found components:  Client Egl 
-- Found WaylandScanner: /usr/bin/wayland-scanner  
-- Found WaylandProtocols: /usr/share/wayland-protocols   
-- Found EGL: /usr/lib/x86_64-linux-gnu/libEGL.so (found version "1.5") 
-- Found Enchant: /usr/lib/x86_64-linux-gnu/libenchant.so (found version "1.6.0") 
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- The following OPTIONAL packages have been found:

 * Execinfo
 * XCB, X protocol C-language Binding, <http://xcb.freedesktop.org>
 * XKBCommon, Keyboard handling library using XKB data, <http://xkbcommon.org>
 * XCBImdkit
 * IsoCodes
 * Expat
 * XKeyboardConfig
 * Wayland, C library implementation of the Wayland protocol: a protocol for a compositor to talk to its clients, <http://wayland.freedesktop.org>
 * WaylandScanner, Executable that converts XML protocol files to C code, <http://wayland.freedesktop.org>
 * WaylandProtocols
 * EGL, A platform-agnostic mechanism for creating rendering surfaces for use with other graphics libraries, such as OpenGL|ES and OpenVG., <https://www.khronos.org/egl/>

-- The following REQUIRED packages have been found:

 * ECM
 * Systemd, A system and service manager for Linux, <http://www.freedesktop.org/wiki/Software/systemd>
 * DL
 * LibIntl
 * LibUUID, uuid library in util-linux, <http://www.kernel.org/pub/linux/utils/util-linux/>
 * Pthread
 * Gettext
 * fmt
 * Enchant

-- Configuring done
CMake Error at src/lib/fcitx/CMakeLists.txt:56 (add_library):
  Target "Fcitx5Core" links to target "fmt::fmt-header-only" but the target
  was not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?


CMake Error at src/server/CMakeLists.txt:1 (add_executable):
  Target "fcitx5" links to target "fmt::fmt-header-only" but the target was
  not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?


CMake Error at src/im/keyboard/CMakeLists.txt:1 (add_library):
  Target "keyboard" links to target "fmt::fmt-header-only" but the target was
  not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?


-- Generating done
-- Build files have been written to: /home/hosiet/src/debian/pkg-ime/fcitx5

Any suggestions?

aur安装报错

``[ 41%] Built target spell
Scanning dependencies of target spell-en-download
-- Downloading 'https://download.fcitx-im.org/data/en_dict-20121020.tar.gz' to '/tmp/pamac-build-captain/fcitx5-git/src/fcitx5/src/modules/spell/dict/en_dict-20121020.tar.gz'...
CMake Error at spell-en-download-download.cmake:3 (file):
file DOWNLOAD HASH mismatch

for file: [/tmp/pamac-build-captain/fcitx5-git/src/fcitx5/src/modules/spell/dict/en_dict-20121020.tar.gz]
  expected hash: [c44a5d7847925eea9e4d2d04748d442cd28dd9299a0b572ef7d91eac4f5a6ceb]
    actual hash: [e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855]
         status: [22;"HTTP response code said error"]

make[2]: *** [src/modules/spell/dict/CMakeFiles/spell-en-download.dir/build.make:57:src/modules/spell/dict/CMakeFiles/spell-en-download] 错误 1
make[1]: *** [CMakeFiles/Makefile2:914:src/modules/spell/dict/CMakeFiles/spell-en-download.dir/all] 错误 2

Unable to save modified quickphrase list.

When I try to add single "keyword"->"phrase" or edit multiple lines, it works properly, until click "apply" or "OK" button. It can show in the "快速输入编辑器", but when you click "OK" and open the editor again, it's gone, and a file with same name as the list which has extension .mb appears in ~.local/share/fcitx5/data/quickphrase.d and it's empty.

Repeated key in st

On some applications such as st, fcitx5 have weird behavior such that there feels like some keys are slow to appear (on us-dvorak) when holding the keys for a short while, the problem does not appear on fcitx.

Holding the keys in fcitx5 shuangpin input and mozc japanese input causes fcitx to kimpanel to hang (or crash) and I need to xkill st. Not sure if this is a bug in st or fcitx5 since it works with fcitx.

For example, hold j for a while and then press k when stop holding the key, the old keys will still be inserted. Maybe because I have a high keyboard typematic rate, xset r rate 150 60?

Question about code base

This question is part curiosity and part a desire to build an IME for myself. I see that the codebase is almost 32000 lines. Are there any pointers to how one can build a bare bones IME? Handling x etc. How many lines of C++ would that be?

"fcitx" does not work in qt5-based applications in Crostini (Linux container in chrome OS)

I did a lot of testings on running "fcitx" in Crostini on my chromebook.

I recorded all my setups of "fcitx" at: https://github.com/eliranwong/Chrome-OS-Linux/blob/master/non-english/chinese.md#inputs

In my testings, "fcitx" works with the following applications:
LibreOffice, WPS office, Dolphin, Thunar, Atom, Geany, Leafpad, etc.

However, not all Linux applications work with "fcitx" in Crostini.

Running "im-config", the message there tells me that it supports gtk2, gtk3 & qt4 frontends. It does not mention qt5. Even we installed fcitx-frontend-qt5, I haven't managed to run "fcitx" in Qt5-based applications we tested.

I also tried to manually copy /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so to /Qt/plugins/platforminputcontexts/ folder of Qt5-based applications, but it does not work.

Please advise. Thanks in advance.

Any idea of bindings?

Well we used to have lua scripting system...but during the years I can hardly see any such plugins developed by 3rd parties.

So maybe we chose a wrong scripting language? What about python/ruby or even rust bindings?

libreoffice第一次输入文字时只能通过鼠标切换输入法

本来libreoffice甚至无法输入中文,后来安装 scim 后可以正常输入中文了。但是打开libreoffice后第一次切换输入法必须通过鼠标切换,ctrl + shiftsuper + space 快捷键切换输入法都无效。

该问题在 libreoffice writer、Draw、impress都存在

桌面环境: 5.6.11-arch1-1、kde 5.18.5、libreoffice-fresh 6.4.3-3、fcitx5 0.0.0.20200509-3

问题的详细情况如gif所示:

Peek 2020-05-10 17-46

此外,calibre的一个issues可能也与这个问题有关:在 calibre -> 编辑元数据 -> 逐个编辑元数据 -> 出版商 有时候没法切换输入法,这个issues我提在:
fcitx5-chinese-addons : #17

Fcitx5 immeidately quite when launch it

System: Arch
X: Wayland, weston

Installed packages from archlinuxcn repo:

> pacman -Qs fcitx5
local/fcitx5-chinese-addons-git r135.d32c013-1
    Addons related to Chinese, including IME previous bundled inside fcitx4
local/fcitx5-git r425.c2b3517-1
    Next generation of fcitx
local/fcitx5-gtk-git r33.6f9ef64-1
    Gtk im module for fcitx5 and glib based dbus client library
local/fcitx5-qt5-git r142.000427e-2
    Fcitx Qt Library, for Qt5

When running with regular user, it outputs the following logs with immeidately exit.

> fcitx5 --verbose "*=5"
D i18n.cpp:27] Add gettext domain fcitx5 at /usr/share/locale
D instance.cpp:1170] Trigger Key: Control+space Zenkaku_Hankaku Hangul
I instance.cpp:903] Override Enabled Addons: {}
I instance.cpp:904] Override Disabled Addons: {}
D addonmanager.cpp:147] Call loadAddon() with xim checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with dbus checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with xcb checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon xcb
D addonmanager.cpp:147] Call loadAddon() with ibusfrontend checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with waylandim checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with dbusfrontend checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with quickphrase checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon quickphrase
D addonmanager.cpp:147] Call loadAddon() with keyboard checkDependencies() returns 0
D i18n.cpp:27] Add gettext domain xkeyboard-config at /usr/share/locale
I isocodes.cpp:42] 639-3
I isocodes.cpp:42] 3166-1
I addonmanager.cpp:177] Loaded addon keyboard
D addonmanager.cpp:147] Call loadAddon() with clipboard checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon clipboard
D addonmanager.cpp:147] Call loadAddon() with wayland checkDependencies() returns 0
D inputcontextmanager.cpp:316] Register focus group for display: wayland:
I addonmanager.cpp:177] Loaded addon wayland
D addonmanager.cpp:147] Call loadAddon() with punctuation checkDependencies() returns 0
D i18n.cpp:27] Add gettext domain fcitx5-chinese-addons at /usr/share/locale
I addonmanager.cpp:177] Loaded addon punctuation
D addonmanager.cpp:147] Call loadAddon() with unicode checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon unicode
D addonmanager.cpp:147] Call loadAddon() with xim checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with dbus checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon dbus
D addonmanager.cpp:147] Call loadAddon() with ibusfrontend checkDependencies() returns 0
D ibusfrontend.cpp:706] Requesting IBus service name.
D ibusfrontend.cpp:728] Writing ibus daemon info.
I addonmanager.cpp:177] Loaded addon ibusfrontend
D addonmanager.cpp:147] Call loadAddon() with waylandim checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon waylandim
D addonmanager.cpp:147] Call loadAddon() with dbusfrontend checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon dbusfrontend
D addonmanager.cpp:147] Call loadAddon() with xim checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon xim
I inputmethodmanager.cpp:117] Found 676 input method(s) in addon keyboard
D addonmanager.cpp:147] Call loadAddon() with kimpanel checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon kimpanel
D addonmanager.cpp:147] Call loadAddon() with classicui checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon classicui
D addonmanager.cpp:147] Call loadAddon() with notificationitem checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon notificationitem
D waylandmodule.cpp:90] Display removed 
D instance.cpp:909] Running save...
I addonmanager.cpp:265] Unloading addon notificationitem
I addonmanager.cpp:265] Unloading addon classicui
I addonmanager.cpp:265] Unloading addon kimpanel
I addonmanager.cpp:265] Unloading addon xim
I addonmanager.cpp:265] Unloading addon dbusfrontend
I addonmanager.cpp:265] Unloading addon waylandim
I addonmanager.cpp:265] Unloading addon ibusfrontend
I addonmanager.cpp:265] Unloading addon dbus
I addonmanager.cpp:265] Unloading addon unicode
I addonmanager.cpp:265] Unloading addon punctuation
I addonmanager.cpp:265] Unloading addon wayland
I addonmanager.cpp:265] Unloading addon clipboard
I addonmanager.cpp:265] Unloading addon keyboard
I addonmanager.cpp:265] Unloading addon quickphrase
I addonmanager.cpp:265] Unloading addon xcb

When running with sudo:

> sudo fcitx5 --verbose "*=5"
D i18n.cpp:27] Add gettext domain fcitx5 at /usr/share/locale
D instance.cpp:1170] Trigger Key: Control+space Zenkaku_Hankaku Hangul
I instance.cpp:903] Override Enabled Addons: {}
I instance.cpp:904] Override Disabled Addons: {}
D addonmanager.cpp:147] Call loadAddon() with xim checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with dbus checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with xcb checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon xcb
D addonmanager.cpp:147] Call loadAddon() with ibusfrontend checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with waylandim checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with dbusfrontend checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with quickphrase checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon quickphrase
D addonmanager.cpp:147] Call loadAddon() with keyboard checkDependencies() returns 0
D i18n.cpp:27] Add gettext domain xkeyboard-config at /usr/share/locale
I isocodes.cpp:42] 639-3
I isocodes.cpp:42] 3166-1
I addonmanager.cpp:177] Loaded addon keyboard
D addonmanager.cpp:147] Call loadAddon() with clipboard checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon clipboard
D addonmanager.cpp:147] Call loadAddon() with wayland checkDependencies() returns 0
error: XDG_RUNTIME_DIR not set in the environment.
I addonmanager.cpp:177] Loaded addon wayland
D addonmanager.cpp:147] Call loadAddon() with punctuation checkDependencies() returns 0
D i18n.cpp:27] Add gettext domain fcitx5-chinese-addons at /usr/share/locale
I addonmanager.cpp:177] Loaded addon punctuation
D addonmanager.cpp:147] Call loadAddon() with unicode checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon unicode
D addonmanager.cpp:147] Call loadAddon() with xim checkDependencies() returns 1
D addonmanager.cpp:147] Call loadAddon() with dbus checkDependencies() returns 0
E addonloader.cpp:63] Failed to create addon: dbus Unable to request dbus name
D addonmanager.cpp:147] Call loadAddon() with ibusfrontend checkDependencies() returns 3
D addonmanager.cpp:147] Call loadAddon() with waylandim checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon waylandim
D addonmanager.cpp:147] Call loadAddon() with dbusfrontend checkDependencies() returns 3
D addonmanager.cpp:147] Call loadAddon() with xim checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon xim
I inputmethodmanager.cpp:117] Found 676 input method(s) in addon keyboard
D addonmanager.cpp:147] Call loadAddon() with kimpanel checkDependencies() returns 3
D addonmanager.cpp:147] Call loadAddon() with classicui checkDependencies() returns 0
I addonmanager.cpp:177] Loaded addon classicui
D addonmanager.cpp:147] Call loadAddon() with notificationitem checkDependencies() returns 3

It hangs on the last output. However, Ctrl+Shift or Ctrl+Space does not help on switching the IME. After press Ctrl+C, it outputs:

=========================
Fcitx 4.99.0 -- Get Signal No.: 2
Date: try "date -d @1576999345" if you are using GNU date ***
ProcessID: 10213
fcitx5(+0x95cc)[0x561b737df5cc]
/usr/lib/libc.so.6(+0x3bfb0)[0x7fcfa5c41fb0]
/usr/lib/libc.so.6(epoll_wait+0x1a)[0x7fcfa5d055ca]
/usr/lib/libsystemd.so.0(sd_event_wait+0xe2)[0x7fcfa5b2b672]
/usr/lib/libsystemd.so.0(sd_event_run+0x12c)[0x7fcfa5b2c79c]
/usr/lib/libsystemd.so.0(sd_event_loop+0x58)[0x7fcfa5b2c928]
/usr/lib/libFcitx5Utils.so.1(_ZN5fcitx9EventLoop4execEv+0x12)[0x7fcfa604f9b2]
/usr/lib/libFcitx5Core.so.5(_ZN5fcitx8Instance4execEv+0x2c)[0x7fcfa610c49c]
fcitx5(+0x805a)[0x561b737de05a]
/usr/lib/libc.so.6(__libc_start_main+0xf3)[0x7fcfa5c2d153]
fcitx5(+0x87ce)[0x561b737de7ce]
D instance.cpp:909] Running save...
I addonmanager.cpp:265] Unloading addon classicui
I addonmanager.cpp:265] Unloading addon xim
I addonmanager.cpp:265] Unloading addon waylandim
I addonmanager.cpp:265] Unloading addon unicode
I addonmanager.cpp:265] Unloading addon punctuation
I addonmanager.cpp:265] Unloading addon wayland
I addonmanager.cpp:265] Unloading addon clipboard
I addonmanager.cpp:265] Unloading addon keyboard
I addonmanager.cpp:265] Unloading addon quickphrase
I addonmanager.cpp:265] Unloading addon xcb

However, if I run weston and fcitx5 when loggin as root, it outputs the same as a regular user.

Implement SecondThirdCandWordKey

In fcitx4, the feature of SecondThirdCandWordKey greatly improved typing efficiency. How about implementing this feature in fcitx5?

fcitx5 system tray overlap

托盘图标重叠,在xfce Manjaro.

英文状态:

yingwen

中文状态:

zhongwen


激活中文之后英文状态图标并没有消失。

fcitx5 start failed

fcitx5 start failed

fcitx5: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory
名字           : json-c
版本           : 0.14-1
描述           : A JSON implementation in C
架构           : x86_64
URL            : https://github.com/json-c/json-c/wiki
软件许可       : MIT
组             : 无
提供           : libjson-c.so=5-64
依赖于         : glibc
可选依赖       : 无
依赖它         : bind-tools  bluez  cryptsetup  libmypaint  mysql-workbench  ndctl  netdata  psensor  tpm2-tss  yubikey-personalization
被可选依赖     : 无
与它冲突       : 无
取代           : 无
安装后大小     : 168.96 KiB
打包者         : Jan Alexander Steffens (heftig) <[email protected]>
编译日期       : 2020年04月21日 星期二 02时50分40秒
安装日期       : 2020年04月30日 星期四 16时11分36秒
安装原因       : 作为其他软件包的依赖关系安装
安装脚本       : 否
验证者         : 数字签名

Make fcitx5-configtool use kcm-fcitx5 even outside KDE

Seems kcm-fcitx5 is the only GUI configuration tool for fcitx5 so far? Currently I can run kcmshell5 fcitx5 from the terminal, and it would be great to be able to invoke this tool from the main menu on other desktop environments.

I'm using LXQt, which has fcitx5-configtool.desktop in its main menu. However, it doesn't work as fcitx5-configtool checks KDE_SESSION_VERSION. Could you consider dropping this check?

A workaround - make fcitx5-configtool believe we're on KDE (source)

xprop -root -f KDE_SESSION_VERSION 32c -set KDE_SESSION_VERSION 5

And it would be great to run fcitx-configtool from the "Configure" option of Fcitx5's system tray, too. Looks like it does nothing for now?

fcitx-rime与libre office不兼容问题

使用的fcitx-rime输入法

fcitx-rime开启时,在libreoffice-writer里,

  1. 鼠标点击无法移动光标位置
  2. 打字第一次无法输入到文本,第二次才可以。每移动一次输入位置,都要输入两遍。
  3. 打字出现在非光标位置,看不懂出现字位置的逻辑。

切换到其他中文输入法比如fcitx-google-pinyin就没这些问题。
发issue到librime他们说是fcitx-rime的问题,fcitx-rime那边是机器人自动打包的吗?没办法提交issue

如何显示状态栏?

以前用fcitx4的时候,可以显示出输入法的状态栏(看中英文状态), 现在换成 fcitx5 不知道显示输入法状态栏了.

我用的是kde环境,虽然有输入法小部件可以看中英文状态,但是用了输入法小部件,fcitx5配置的皮肤就会改成系统默认的,系统默认的皮肤颜色选字序号不易看清,所以不想用输入法小部件.

Fcitx5 在 i3wm 下显示托盘图标有一个黑框。

环境变量

export QT_QPA_PLATFORMTHEME=qt5ct
export XDG_CURRENT_DESKTOP=gnome

fcitx 版本

$ fcitx5 --version
4.99.0

i3wm version

$ i3 --version
i3 version 4.18.1 (2020-04-23) © 2009 Michael Stapelberg and contributors

i3bar version

$ i3bar --versionl
i3bar version 4.18.1 (2020-04-23) © 2010 Axel Wagner and contributors

尝试过重启电脑和 fcitx, 黑边均没有消失。

另外 fcitx5 不会随图标主题改变(通过 qt5ct 修改图标主题)。
下图中为 papirus 主题。

p-200509_092135
p-200509_092148

Compilation error - error: ‘this’ was not captured for this lambda function

Compiling from current master 9e3bc8d I get the following error

(Building on Linux Mint 19.3 tricia)

In file included from /home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/bus.h:24:0,
                 from /home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/servicewatcher.h:22,
                 from /home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.h:22,
                 from /home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:20:
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:588:11: warning: already captured ‘this’ in lambda expression
         ([this](dbus::DBusStruct<uint32_t, uint32_t> type) {
           ^
/home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
         [this, method = SETMETHOD](::fcitx::dbus::Message &msg) {              \
                         ^~~~~~~~~
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp: In lambda function:
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:589:64: error: ‘this’ was not captured for this lambda function
             setContentType(std::get<0>(type), std::get<1>(type));
                                                                ^
/home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
         [this, method = SETMETHOD](::fcitx::dbus::Message &msg) {              \
                         ^~~~~~~~~
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:589:64: error: cannot call member function ‘void fcitx::IBusInputContext::setContentType(uint32_t, uint32_t)’ without object
             setContentType(std::get<0>(type), std::get<1>(type));
                                                                ^
/home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
         [this, method = SETMETHOD](::fcitx::dbus::Message &msg) {              \
                         ^~~~~~~~~
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp: At global scope:
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:595:11: warning: already captured ‘this’ in lambda expression
         ([this](dbus::DBusStruct<bool> value) {
           ^
/home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
         [this, method = SETMETHOD](::fcitx::dbus::Message &msg) {              \
                         ^~~~~~~~~
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp: In lambda function:
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:596:13: error: ‘this’ was not captured for this lambda function
             clientCommitPreedit_ = std::get<0>(value);
             ^
/home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
         [this, method = SETMETHOD](::fcitx::dbus::Message &msg) {              \
                         ^~~~~~~~~
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:596:13: error: invalid use of non-static data member ‘fcitx::IBusInputContext::clientCommitPreedit_’
             clientCommitPreedit_ = std::get<0>(value);
             ^
/home/user/dev/fcitx5/src/lib/fcitx/../fcitx-utils/dbus/objectvtable.h:180:25: note: in definition of macro ‘FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY’
         [this, method = SETMETHOD](::fcitx::dbus::Message &msg) {              \
                         ^~~~~~~~~
/home/user/dev/fcitx5/src/frontend/ibusfrontend/ibusfrontend.cpp:604:33: note: declared here
     bool clientCommitPreedit_ = false;
                                 ^~~~~
src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/build.make:62: recipe for target 'src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/ibusfrontend.cpp.o' failed
make[2]: *** [src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/ibusfrontend.cpp.o] Error 1
CMakeFiles/Makefile2:1918: recipe for target 'src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/all' failed
make[1]: *** [src/frontend/ibusfrontend/CMakeFiles/ibusfrontend.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

fcitx5 crash in archlinux, which is installed by package fcitx5-git r441.9436416-2

crash log:

I instance.cpp:919] Override Enabled Addons: {}
I instance.cpp:920] Override Disabled Addons: {}
I addonmanager.cpp:177] Loaded addon xcb
I addonmanager.cpp:177] Loaded addon quickphrase
I isocodes.cpp:42] 639-3
I isocodes.cpp:42] 3166-1
I addonmanager.cpp:177] Loaded addon keyboard
I addonmanager.cpp:177] Loaded addon clipboard
I addonmanager.cpp:177] Loaded addon wayland
I addonmanager.cpp:177] Loaded addon dbus
I addonmanager.cpp:177] Loaded addon punctuation
I addonmanager.cpp:177] Loaded addon unicode
I addonmanager.cpp:177] Loaded addon xim
I addonmanager.cpp:177] Loaded addon ibusfrontend
I addonmanager.cpp:177] Loaded addon waylandim
I addonmanager.cpp:177] Loaded addon dbusfrontend
I inputmethodmanager.cpp:117] Found 683 input method(s) in addon keyboard
I addonmanager.cpp:177] Loaded addon kimpanel
I addonmanager.cpp:177] Loaded addon classicui
I addonmanager.cpp:177] Loaded addon notificationitem
I kimpanel.cpp:101] Kimpanel new owner
I addonmanager.cpp:177] Loaded addon pinyin
I addonmanager.cpp:177] Loaded addon fullwidth
I addonmanager.cpp:177] Loaded addon chttrans
I addonmanager.cpp:177] Loaded addon cloudpinyin
I addonmanager.cpp:177] Loaded addon spell
I addonmanager.cpp:177] Loaded addon pinyinhelper
=========================
Fcitx 4.99.0 -- Get Signal No.: 11
Date: try "date -d @1581684686" if you are using GNU date ***
ProcessID: 5612
fcitx5(+0xa7fe)[0x5581f51317fe]
/usr/lib/libc.so.6(+0x3bd70)[0x7fb1d99add70]
/usr/lib/libFcitx5Core.so.5(_ZN5fcitx19CommonCandidateListD1Ev+0x70)[0x7fb1d9ece810]
/usr/lib/libFcitx5Core.so.5(_ZN5fcitx19CommonCandidateListD0Ev+0xa)[0x7fb1d9ece8aa]
/usr/lib/libFcitx5Core.so.5(_ZN5fcitx10InputPanel5resetEv+0x84)[0x7fb1d9ecd814]
/usr/lib/fcitx5/pinyin.so(+0x151f1)[0x7fb1d43961f1]
/usr/lib/fcitx5/pinyin.so(+0x18fb9)[0x7fb1d4399fb9]
/usr/lib/libFcitx5Core.so.5(_ZN5fcitx8Instance9postEventERNS_5EventE+0x304)[0x7fb1d9e728a4]
/usr/lib/fcitx5/dbusfrontend.so(+0xe69b)[0x7fb1d7ed169b]
/usr/lib/libFcitx5Utils.so.1(+0x3b744)[0x7fb1d9dba744]
/usr/lib/libsystemd.so.0(+0x6c729)[0x7fb1d98c4729]
/usr/lib/libsystemd.so.0(+0x54151)[0x7fb1d98ac151]
/usr/lib/libsystemd.so.0(+0x545f4)[0x7fb1d98ac5f4]
/usr/lib/libsystemd.so.0(+0x3c977)[0x7fb1d9894977]
/usr/lib/libsystemd.so.0(sd_event_dispatch+0x11a)[0x7fb1d989540a]
/usr/lib/libsystemd.so.0(sd_event_run+0x99)[0x7fb1d9898709]
/usr/lib/libsystemd.so.0(sd_event_loop+0x58)[0x7fb1d9898928]
/usr/lib/libFcitx5Utils.so.1(_ZN5fcitx9EventLoop4execEv+0x12)[0x7fb1d9dbc992]
/usr/lib/libFcitx5Core.so.5(_ZN5fcitx8Instance4execEv+0x2c)[0x7fb1d9e7a61c]
fcitx5(+0x90ca)[0x5581f51300ca]
/usr/lib/libc.so.6(__libc_start_main+0xf3)[0x7fb1d9999023]
fcitx5(+0x983e)[0x5581f513083e]

Need documents

With no documents and GUI I will die when using it...

[Bug] fcitx5 doesn't work well under boost-libs.

Description

After I update boost-libs from testing, the fcitx5 Chinese pinyin doesn't work. I have to downgrade to the old version and it works well.

Enviroment

  • Arch Linux latest
  • testing/boost-libs 1.67.0-3

Logs

E addonloader.cpp:40] Failed to load library for addon punctuation on /usr/lib/fcitx5/punctuation.so. Error: libboost_iostreams.so.1.66.0: cannot open shared object file: No such file or directory

[Feature Request] 对特定程序使用特定输入法

希望能够增加一个能够手动指定特定程序默认使用特定输入法,而不是全局状态。比如
对于 konsole,gnome-terminal,xfce4-terminal 等这种终端类程序默认使用英文输入法比较好,
而对于中文用户 telegram,firefox 这种默认使用中文输入法可能会好点.

因为不同 APP 功能不同,对于默认输入法有不同的需求,希望能够增加一个类似白名单东西,用户可以手动指定某个程序默认使用某个输入,比如:指定 xfce下文本编辑器 mousepad 默认使用 rime 输入法,指定xfce4-terminal默认使用英文输入法(非激活状态?)

fcitx5无法在mendeley中输入

大家好。这两天又尝试了一下fcitx5,没有其它什么毛病了,就是不能在mendeley(1.19.5)中输入。
我的系统是manjaro,qt版本是5.14.2,而mendeley自带的qt版本是5.10.1。
我尝试编译fcitx5-qt,但发现需要安装5.10.1的qt;
编译该版本的qt时,发现gcc 9.3无法产生其需要的qmake;
因而没法获得mendeley所需的libfcitxplatforminputcontextplugin.so文件,
而fcitx的该文件拷贝过去没有用了。
请问有没有什么解决办法?

Build failed when #define CAIRO_EGL_FOUND

In file included from ../fcitx5-999999999/src/ui/classic/waylandeglwindow.cpp:13:
In file included from ../fcitx5-999999999/src/ui/classic/waylandeglwindow.h:16:
In file included from ../fcitx5-999999999/src/ui/classic/waylandui.h:11:
In file included from ../fcitx5-999999999/src/ui/classic/classicui.h:12:
In file included from ../fcitx5-999999999/src/lib/fcitx-config/configuration.h:10:
In file included from ../fcitx5-999999999/src/lib/fcitx-config/option.h:17:
In file included from ../fcitx5-999999999/src/lib/fcitx-config/marshallfunction.h:14:
In file included from ../fcitx5-999999999/src/lib/fcitx-utils/key.h:22:
../fcitx5-999999999/src/lib/fcitx-utils/keysym.h:23:5: error: expected identifier
    None = 0,
    ^
/usr/include/X11/X.h:115:30: note: expanded from macro 'None'
#define None                 0L /* universal null resource or null atom */
                             ^

include tree:

  1. src/ui/classic/waylandeglwindow.cpp: 11 #include <cairo/cairo-gl.h>
  2. /usr/include/cairo/cairo-gl.h #include <GL/glx.h>
  3. /usr/include/GL/glx.h: #include <X11/Xlib.h>
  4. /usr/include/X11/Xlib.h: #include <X11/X.h>
  5. /usr/include/X11/X.h: #define None

See also:
microcai/gentoo-zh#592 (comment)
#52

Please note Archlinux disable cargo-gl: https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/cairo

[Feature Request] 由主题控制预编辑区文本和背景颜色

Fcitx5 最近加入了我非常喜欢的 inline_preedit 模式,但是我发现 预编辑区那块的文本和背景颜色 好像不能由主题控制,
比如同一个主题,fcitx5自带pinyin和fcitx5-rime 行为就不一致,如图:
fcitx5-rime:深度截图_选择区域_20191227151405
fcitx5-pinyin:深度截图_选择区域_20191227151453

而且同样是fcitx5-rime,在gtk和qt程序中也不一致:

GTK:深度截图_选择区域_20191227151405
QT:深度截图_选择区域_20191227152006

这一块的 文本颜色和背景高亮颜色 能否直接由fcitx5主题来控制,这样的话不同输入法在不同程序中也能做到外观一直

我编制了一个“单手笔顺输入法”的码表,希望您能在您正在开发的输入法中加入这个功能。

我编制了一个“单手笔顺输入法”的码表,希望您能在您正在开发的输入法中加入这个功能。(我不会编程)
其中已经包括了近3万汉字、15万核心词汇、150万扩展词汇,全部都是TXT文本码表(而且都带拼音)。

笔顺的国家标准编码就是数字12345,我设计的六全码和精简码是0~9,
因此,“单手笔顺输入法”使用数字小键盘作为输入工具,不会与您开发中的输入法有冲突,
相反,两个输入法能成为互补关系,大大提高汉字输入效率。
用户不记得您的输入法时,就输入笔顺;用户不记得笔顺时,就输入您的输入法。

“单手笔顺输入法”开源项目网址:
https://github.com/YQ-YSY/stroke-seq_MB
发布在Ubuntu论坛的帖子介绍:
http://forum.ubuntu.org.cn/viewtopic.php?f=35&t=484603

因为笔顺码有个优点,它和拼音一样,每个人在上小学时就已经学会了,不用背字根。
所以,继五笔、拼音之后,笔顺输入也许是汉字输入法的又一个重大的改进机会,
未来甚至可以替代拼音输入法,成为最主流的汉字输入法。

fcitx5在wayland下没有候选框

我使用gnome on wayland,输入法配置为fcitx5,在wayland原生软件下不显示候选框,但能看到输入的字,可以通过tab选词,很不方便;在通过Xwayland运行的X应用下有输入框,但因为我的屏幕是2k分辨率,由于Xwayland的只会渲染出1080P的像素,再由系统放大2倍,所有界面模糊

搜遍了文档和各种fcitx5介绍文章,没看到相关的解决方法。通过xeyes我看到fcitx5的输入框是运行在Xorg下的,所以跟wayland原生软件不太搭,是否可以迫使它运行在wayland下来解决?

我的系统是Arch Linux, 内核5.6.3,fcitx5的版本是4.99.0

请问该怎么解决这问题呢?

Abolish bindings of keyboard input, use keycodes instead

The keybindings should be independent of the keyboard layout.

There are indefinitely many examples how the bindings of Fcitx do not work because it uses the strings produced via the keyboard layout for input.

One example: Shift + Ctrl + Alt + U is the default binding for the Unicode typing add-on. But it only works if you have a Latin layout. If you have switched to an input method which is not a Latin layout, i.e. for example you type Arabic or Russian and want to browse in Unicode, you cannot use this bind.
Another example: “-” “=” are keybindings for switching between candidates. Currently these do not make sense at all if your default layout is for example German, where the hyphen-minus character “-” is mapped on ⟨AB10⟩ and the equality sign “=” on ⟨AE10⟩.
Third example: The same way it does not make sense to map the combination to activate the Input Method as Ctrl + some alphabetic key like Control + i because then you cannot change back to your default layout.

I know that there countless examples of such a programming accross all types of programs, but I strongly affirm that there is no good reason whatsoever to do that – it’s a child of Anglosaxon sloth. And an IME is the most wrong place for it, because it is not only one of the most blatant offences against multilingualization in computing, but an offence against m17n directly rooted in a lack of concern for different keyboard layouts. I have caused this bug to vanish in some dwindling games where only few could care – it inflicts dire grief that such an error is present in Fcitx, the purpose of which is exactly to put in various languages, in the whole systems of users.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.