fcitx / fcitx-configtool Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v2.0
License: GNU General Public License v2.0
Fcitx 4 is under maintainence Mode now, so no new issue and PR should be created. Please give fcitx 5 a try if possible. If you're experiencing problem, you can reach out mail list (fcitx[at]googlegroups.com) or IRC (fcitx[at]freenode) for help. Please read http://fcitx-im.org for further help. See COPYING and COPYING.LIBS for License information.
cmake ..
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
-- 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
-- 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
-- Found Gettext: /usr/bin/msgmerge (found version "0.18.2")
CMake Error at CMakeLists.txt:6 (FIND_PACKAGE):
By not providing "FindFcitx.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Fcitx", but
CMake did not find one.
Could not find a package configuration file provided by "Fcitx" (requested
version 4.2.7) with any of the following names:
FcitxConfig.cmake
fcitx-config.cmake
Add the installation prefix of "Fcitx" to CMAKE_PREFIX_PATH or set
"Fcitx_DIR" to a directory containing one of the above files. If "Fcitx"
provides a separate development package or SDK, be sure it has been
installed.
-- Configuring incomplete, errors occurred!
It seemed that it was looking for FcitxConfig.cmake inside fcitx's source code.
Can I compile it without fcitx source code?
During cmake, it checks the required minimal version of fcitx is 4.2.6.
-- Checking for module 'fcitx-gclient>=4.2.6'
-- Found fcitx-gclient, version 4.2.8
But the build finally failed with:
cd /builddir/build/BUILD/fcitx-configtool-0.4.10/build/gtk3 && /usr/bin/cmake3 -E cmake_link_script CMakeFiles/fcitx-config-gtk3.dir/link.txt --verbose=1
/usr/lib64/ccache/cc -Wall -Wextra -Wno-sign-compare -Wno-unused-local-typedefs -Wno-unused-parameter -fvisibility=hidden -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro CMakeFiles/fcitx-config-gtk3.dir/sub_config_parser.c.o CMakeFiles/fcitx-config-gtk3.dir/sub_config_widget.c.o CMakeFiles/fcitx-config-gtk3.dir/config_widget.c.o CMakeFiles/fcitx-config-gtk3.dir/configdesc.c.o CMakeFiles/fcitx-config-gtk3.dir/keygrab.c.o CMakeFiles/fcitx-config-gtk3.dir/main.c.o CMakeFiles/fcitx-config-gtk3.dir/main_window.c.o CMakeFiles/fcitx-config-gtk3.dir/im_widget.c.o CMakeFiles/fcitx-config-gtk3.dir/ui_widget.c.o CMakeFiles/fcitx-config-gtk3.dir/gdm-languages.c.o CMakeFiles/fcitx-config-gtk3.dir/im_dialog.c.o CMakeFiles/fcitx-config-gtk3.dir/common.c.o CMakeFiles/fcitx-config-gtk3.dir/im_config_dialog.c.o CMakeFiles/fcitx-config-gtk3.dir/dummy_config.c.o CMakeFiles/fcitx-config-gtk3.dir/fcitx-config-gtk3-resources.c.o -o fcitx-config-gtk3 -rdynamic -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lfcitx-utils -lfcitx-config -lfcitx-utils -lfcitx-core -lfcitx-config -lfcitx-utils -lfcitx-gclient -lfcitx-utils -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lfcitx-config -lfcitx-core -lfcitx-gclient
CMakeFiles/fcitx-config-gtk3.dir/sub_config_widget.c.o: In function `run_plugin':
/builddir/build/BUILD/fcitx-configtool-0.4.10/gtk3/sub_config_widget.c:274: undefined reference to `FCITX_ARRAY_SIZE'
/builddir/build/BUILD/fcitx-configtool-0.4.10/gtk3/sub_config_widget.c:298: undefined reference to `FCITX_ARRAY_SIZE'
/builddir/build/BUILD/fcitx-configtool-0.4.10/gtk3/sub_config_widget.c:298: undefined reference to `FCITX_ARRAY_SIZE'
CMakeFiles/fcitx-config-gtk3.dir/sub_config_widget.c.o: In function `open_native_file':
/builddir/build/BUILD/fcitx-configtool-0.4.10/gtk3/sub_config_widget.c:197: undefined reference to `FCITX_ARRAY_SIZE'
/builddir/build/BUILD/fcitx-configtool-0.4.10/gtk3/sub_config_widget.c:221: undefined reference to `FCITX_ARRAY_SIZE'
CMakeFiles/fcitx-config-gtk3.dir/sub_config_widget.c.o:/builddir/build/BUILD/fcitx-configtool-0.4.10/gtk3/sub_config_widget.c:221: more undefined references to `FCITX_ARRAY_SIZE' follow
collect2: error: ld returned 1 exit status
The environment is CentOS 7 with epel.
I can switch input methods in Iceweasel, as well as Libreoffice, but not konsole nor kate. Pressing Ctrl+Space or manually clicking the tray icon to select other input methods (e.g. sunpinyin) does nothing. I am stuck with fcitx-keyboard-us-alt-intl-unicode
for kde applications. I am using i3wm mainly, along with KF5 (such as Konsole, Kate, dolphin etc.) Here are my diagnosis output and config file.
# System Info:
1. `uname -a`:
Linux ThPad 4.2.0-1-amd64 #1 SMP Debian 4.2.6-3 (2015-12-06) x86_64 GNU/Linux
2. `lsb_release -a`:
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux testing-updates (sid)
Release: testing-updates
Codename: sid
3. `lsb_release -d`:
Description: Debian GNU/Linux testing-updates (sid)
4. `/etc/lsb-release`:
`/etc/lsb-release` not found.
5. `/etc/os-release`:
PRETTY_NAME="Debian GNU/Linux stretch/sid"
NAME="Debian GNU/Linux"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
6. Desktop Environment:
Cannot determine desktop environment.
7. Bash Version:
BASH_VERSION='4.3.42(1)-release'
# Environment:
1. DISPLAY:
DISPLAY=':0'
2. Keyboard Layout:
1. `setxkbmap`:
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us(alt-intl-unicode)+us:2+cn(ug):3+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
2. `xprop`:
_XKB_RULES_NAMES(STRING) = "evdev", "pc105", "us,us,cn", "alt-intl-unicode,,ug", ""
3. Locale:
1. All locale:
C
C.UTF-8
en_US.utf8
POSIX
ug_CN
ug_CN.utf8
zh_CN.gb18030
zh_CN.utf8
2. Current locale:
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
4. Directories:
1. Home:
/home/hyiltiz
2. `${XDG_CONFIG_HOME}`:
Environment variable `XDG_CONFIG_HOME` is not set.
Current value of `XDG_CONFIG_HOME` is `~/.config` (`/home/hyiltiz/.config`).
3. Fcitx Settings Directory:
Current fcitx settings directory is `~/.config/fcitx` (`/home/hyiltiz/.config/fcitx`).
5. Current user:
The script is run as hyiltiz (1000).
# Fcitx State:
1. executable:
Found fcitx at `/usr/bin/fcitx`.
2. version:
Fcitx version: `4.2.9`
3. process:
Found 2 fcitx processes:
1625 fcitx
1635 fcitx-dbus-watc
4. `fcitx-remote`:
`fcitx-remote` works properly.
# Fcitx Configure UI:
1. Config Tool Wrapper:
Found fcitx-configtool at `/usr/bin/fcitx-configtool`.
2. Config GUI for gtk2:
**Config GUI for gtk2 not found.**
3. Config GUI for gtk3:
Found `fcitx-config-gtk3` at `/usr/bin/fcitx-config-gtk3`.
4. Config GUI for kde:
Found fcitx kcm module.
kcm_fcitx - Configure Input Method
# Frontends setup:
## Xim:
1. `${XMODIFIERS}`:
Environment variable XMODIFIERS is set to "@im=fcitx" correctly.
Xim Server Name from Environment variable is fcitx.
2. XIM_SERVERS on root window:
Xim server name is the same with that set in the environment variable.
3. XIM for Emacs:
**Your LC_CTYPE is set to en_US.UTF-8 instead of one of zh, ja, ko. You may not be able to use input method in emacs because of an really old emacs bug that upstream refuse to fix for years.**
## Qt:
1. qt4 - `${QT4_IM_MODULE}`:
Environment variable QT4_IM_MODULE is set to "fcitx" correctly.
2. qt5 - `${QT_IM_MODULE}`:
Environment variable QT_IM_MODULE is set to "fcitx" correctly.
3. Qt IM module files:
Found fcitx im module for Qt4: `/usr/lib/x86_64-linux-gnu/qt4/plugins/inputmethods/qtim-fcitx.so`.
Found fcitx im module for Qt5: `/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so`.
Found fcitx qt module: `/usr/lib/x86_64-linux-gnu/fcitx/qt/libfcitx-libpinyin-dictmanager.so`.
## Gtk:
1. gtk - `${GTK_IM_MODULE}`:
Environment variable GTK_IM_MODULE is set to "fcitx" correctly.
2. `gtk-query-immodules`:
1. gtk 2:
**Cannot find `gtk-query-immodules` for gtk 2**
**Cannot find fcitx im module for gtk 2.**
2. gtk 3:
**Cannot find `gtk-query-immodules` for gtk 3**
**Cannot find fcitx im module for gtk 3.**
3. Gtk IM module cache:
1. gtk 2:
Found immodules cache for gtk `2.24.28` at `/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache`.
Version Line:
# Created by /usr/lib/x86_64-linux-gnu/libgtk2.0-0/gtk-query-immodules-2.0 from gtk+-2.24.28
Found fcitx im modules for gtk `2.24.28`.
"/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-fcitx.so"
"fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"
2. gtk 3:
Found immodules cache for gtk `3.18.5` at `/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache`.
Version Line:
# Created by /usr/lib/x86_64-linux-gnu/libgtk-3-0/gtk-query-immodules-3.0 from gtk+-3.18.5
Found fcitx im modules for gtk `3.18.5`.
"/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so"
"fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"
4. Gtk IM module files:
1. gtk 2:
All found Gtk 2 immodule files exist.
2. gtk 3:
All found Gtk 3 immodule files exist.
# Configuration:
## Fcitx Addons:
1. Addon Config Dir:
Found fcitx addon config directory: `/usr/share/fcitx/addon`.
2. Addon List:
1. Found 28 enabled addons:
fcitx-autoeng
fcitx-chttrans
fcitx-classic-ui
fcitx-clipboard
fcitx-cloudpinyin
fcitx-dbus
fcitx-freedesktop-notify
fcitx-fullwidth-char
fcitx-googlepinyin
fcitx-imselector
fcitx-ipc
fcitx-keyboard
fcitx-kimpanel-ui
fcitx-libpinyin
fcitx-lua
fcitx-m17n
fcitx-notificationitem
fcitx-punc
fcitx-quickphrase
fcitx-remote
fcitx-spell
fcitx-sunpinyin
fcitx-unicode
fcitx-vk
fcitx-x11
fcitx-xim
fcitx-xkb
fcitx-xkbdbus
2. Found 0 disabled addons:
3. Addon Libraries:
**Cannot find file `fcitx-xkbdbus.so` of addon `fcitx-xkbdbus`.**
**Cannot find file `fcitx-keyboard.so` of addon `fcitx-keyboard`.**
**Cannot find file `fcitx-vk.so` of addon `fcitx-vk`.**
**Cannot find file `fcitx-autoeng.so` of addon `fcitx-autoeng`.**
**Cannot find file `fcitx-x11.so` of addon `fcitx-x11`.**
**Cannot find file `fcitx-classic-ui.so` of addon `fcitx-classic-ui`.**
**Cannot find file `fcitx-notificationitem.so` of addon `fcitx-notificationitem`.**
**Cannot find file `fcitx-sunpinyin.so` of addon `fcitx-sunpinyin`.**
**Cannot find file `fcitx-cloudpinyin.so` of addon `fcitx-cloudpinyin`.**
**Cannot find file `fcitx-quickphrase.so` of addon `fcitx-quickphrase`.**
**Cannot find file `fcitx-lua.so` of addon `fcitx-lua`.**
**Cannot find file `fcitx-fullwidth-char.so` of addon `fcitx-fullwidth-char`.**
**Cannot find file `fcitx-unicode.so` of addon `fcitx-unicode`.**
**Cannot find file `fcitx-googlepinyin.so` of addon `fcitx-googlepinyin`.**
**Cannot find file `fcitx-spell.so` of addon `fcitx-spell`.**
**Cannot find file `fcitx-libpinyin.so` of addon `fcitx-libpinyin`.**
**Cannot find file `fcitx-xim.so` of addon `fcitx-xim`.**
**Cannot find file `fcitx-freedesktop-notify.so` of addon `fcitx-freedesktop-notify`.**
**Cannot find file `fcitx-kimpanel-ui.so` of addon `fcitx-kimpanel-ui`.**
**Cannot find file `fcitx-clipboard.so` of addon `fcitx-clipboard`.**
**Cannot find file `fcitx-dbus.so` of addon `fcitx-dbus`.**
**Cannot find file `fcitx-punc.so` of addon `fcitx-punc`.**
**Cannot find file `fcitx-xkb.so` of addon `fcitx-xkb`.**
**Cannot find file `fcitx-m17n.so` of addon `fcitx-m17n`.**
**Cannot find file `fcitx-imselector.so` of addon `fcitx-imselector`.**
**Cannot find file `fcitx-ipc.so` of addon `fcitx-ipc`.**
**Cannot find file `fcitx-chttrans.so` of addon `fcitx-chttrans`.**
**Cannot find file `fcitx-remote-module.so` of addon `fcitx-remote`.**
4. User Interface:
Found 2 enabled user interface addons:
fcitx-classic-ui
fcitx-kimpanel-ui
## Input Methods:
1. Found 5 enabled input methods:
fcitx-keyboard-us-alt-intl-unicode
sunpinyin
googlepinyin
pinyin-libpinyin
fcitx-keyboard-cn-ug
2. Default input methods:
You have a keyboard input method "fcitx-keyboard-us-alt-intl-unicode" correctly added as your default input method.
# Log:
1. `date`:
Mon Dec 14 03:55:35 EST 2015
2. `~/.config/fcitx/log/`:
total 4
-rw-r--r-- 1 hyiltiz hyiltiz 44 Dec 13 21:10 crash.log
3. `~/.config/fcitx/log/crash.log`:
fcitx: BadWindow (invalid Window parameter)
[Hotkey]
# Trigger Input Method
#TriggerKey=CTRL_SPACE
# Use extra trigger key only after using it to inactivate
# Available Value:
# True False
#UseExtraTriggerKeyOnlyWhenUseItToInactivate=True
# Extra key for trigger input method
# Available Value:
# R_CTRL
# R_SHIFT
# L_SHIFT
# L_CTRL
# ALT_L_SHIFT
# ALT_R_SHIFT
# CTRL Both
# SHIFT Both
# L_ALT
# R_ALT
# ALT Both
# Left Super
# Right Super
# Super Both
# Ctrl+Left Super
# Ctrl+Right Super
# Super+Left Ctrl
# Super+Right Ctrl
# Disabled
# Custom
#SwitchKey=L_SHIFT
# Custom switch key
#CustomSwitchKey=
# Activate input method
#ActivateKey=
# Inactivate Input Method
#InactivateKey=
# Enable Hotkey to scroll Between Input Method
# Available Value:
# True False
#IMSwitchKey=True
# Include Inactivate when scrolling between Input Method
# Available Value:
# True False
#IMSwitchIncludeInactive=False
# Scroll between Input Method
# Available Value:
# CTRL_SHIFT
# ALT_SHIFT
# CTRL_SUPER
# ALT_SUPER
#IMSwitchHotkey=CTRL_SHIFT
# Reload configuration
#ReloadConfig=CTRL_5
# Interval of Two Key Input
#TimeInterval=250
# Switching Virtual Keyboard
#VKSwitchKey=CTRL_ALT_B
# Switching Remind Mode
#RemindSwitchKey=
# Switching Full Width Character Mode
#FullWidthSwitchKey=
# Switch Full Width Punc Mode
#PuncSwitchKey=CTRL_.
# Prev Page
#PrevPageKey=- UP
# Next Page
#NextPageKey== DOWN
# Choose Second and Third Candidate Word
#SecondThirdCandWordKey=
# Saving All Config and Input History
#SaveAllKey=CTRL_ALT_S
# Switch Embeded Preedit
#SwitchPreedit=CTRL_ALT_P
# Previous Candidate Word
#PrevWord=SHIFT_TAB
# Next Candidate Word
#NextWord=TAB
[Program]
# Seconds sleep before fcitx really start
#DelayStart=0
# Share State Among Window
# Available Value:
# No
# All
# PerProgram
#ShareStateAmongWindow=No
# Default Input Method State
# Available Value:
# Inactive
# Active
#DefaultInputMethodState=Inactive
[Output]
# Type half width Punc After a Number
# Available Value:
# True False
#HalfPuncAfterNumber=True
# Disable Paging in Remind Mode
# Available Value:
# True False
#RemindModeDisablePaging=True
# Commit when toggle state
# Available Value:
# True False
#SendTextWhenSwitchEng=True
# Candidate Word Number
CandidateWordNumber=10
# Give the tips of Phrase
# Available Value:
# True False
#PhraseTips=True
# Do not commit preedit text when unfocus a window
# Available Value:
# True False
#DontCommitPreeditWhenUnfocus=False
[Appearance]
# Show Input Method Hint After Input method changed
# Available Value:
# True False
#ShowInputWindowAfterTriggering=True
# Show Input Method Hint After Input method changed and Focus in
# Available Value:
# True False
#ShowInputWindowWhenFocusIn=False
# Input Method Hint will be only shown when state is active
# Available Value:
# True False
#ShowInputWindowOnlyWhenActive=True
# Show Input Speed
# Available Value:
# True False
#ShowInputSpeed=False
# Show Version
# Available Value:
# True False
#ShowVersion=False
# Do not show input window if there is only preedit string
# Available Value:
# True False
#HideInputWindowWhenOnlyPreeditString=False
# Do not show input window if there is only one candidate and preedit
# Available Value:
# True False
#HideInputWindowWhenOnlyOneCandidate=False
Currently, we uses EXEC_PREFIX
to locate fcitx-remote
here and here, and EXEC_PREFIX
is set to CMAKE_INSTALL_PREFIX
.
However, fcitx-remote
may not be installed to the same directory as fcitx-configtool
. The name of EXEC_PREFIX
is quite ambiguous and misleading.
Now EXEC_PREFIX
is only used to locate fcitx-remote
, so maybe we can pass FCITX_REMOTE_PATH
through cmake flags to make it clear and easier to customize?
Related: NixOS/nixpkgs#73272
This button/filter creates a mode on the UI and will surprise users who don't use the desktop in their native language (e.g. Japanese users who prefer the English UI but still want to type Japanese). It took me around 15 seconds and a few frustrating tries to realize that this button exists at all.
I understand that its purpose is to help the user find an appropriate IME quickly. I think this can also be achieved by sorting the IME list to show IMEs matching the current language on top.
Because the "super key " in most of keyboard is printed with a window logo,the "super key" is confused.
I changed "Extra key for trigger input method" to disabled using fcitx-configtool, it always reverted it back to the default "Shift Both" after restart current session. Following the suggestion from this link does not help neither, the configuration "profile" file will revert to the default. Please suggestion a way of permanently change this setting. Thanks.
Here are some related information:
$ inxi -S
System: Kernel: 4.4.0-31-generic x86_64 (64 bit) Desktop: Cinnamon 3.0.7
Distro: Linux Mint 18 Sarah
$ fcitx --version
fcitx version: 4.2.9.1
From @hlx98007 on June 11, 2015 16:26
在Fedora 22中(通过fedup从f21升级的,f21没这个问题),fcitx无法正常显示输入法选择的画面,如下:
求解?
Copied from original issue: fcitx/fcitx#205
When adding input methods using fcitx-config-gtk3, the list of input methods is always blank. However, fcitx-config-gtk (gtk2 tool) works fine.
OS: Fedora 22
GNOME: 3.16.2
fcitx-configtool: 0.4.7-4.fc22.x86_64
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.