Thursday, January 9, 2014

QT apps and Ibus

Các ứng dụng viết bằng QT có nhược điểm là nó không nhận Ibus như Skype hay Opera,...Muốn nhận thì phải thông qua X input ( theo anh Yang nói vui là :" Đã vẽ được lên X thì phải dùng X" )
Sau khi check các env sau khi khởi động hệ thống thì kết luận là thiếu các biến môi trường:
nhấp phải chọn Input Method trên terminal chọn "X input method", chuyển bộ gõ không có kết quả.
env | grep ibus =>> không có kết quả
ibus-daemon -x --replace =>> không hiệu quả.
export XIM_PROGRAM=ibus =>> không có hiệu quả

Solved:
thêm ba dòng sau vào .bashrc:
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
Hầu hết các ứng dụng QT sẽ chạy với Ibus khi export đủ ba biến môi trường trên, tuyệt đối không thêm dòng: ibus-daemon -x -d vào .bashrc sẽ gây crash ibus !

với Opera:
Mặc dù đã thêm ba dòng trên vào .bashrc tuy nhiên có một số vấn đề trên Opera làm nhiều Users Nix khó chịu là không nhận ibus, có một số tip như sau:
XIM=ibus ( với mình không hiệu quả )

solved:
chạy opera trên terminal với lệnh:
XMODIFIERS=@im=ibus opera
=>> chung : XMODIFIERS=@im=ibus QT_Apps_command

Cảm ơn anh Yang đã giúp em kiểm tra, từ trước tới giờ em cứ nghĩ đã export đầy đủ các biến môi trường :D

Update:
Có thể chỉnh sửa /etc/profile như sau để giải quyết vấn đề (thật ra file /etc/profile nó được set đầu tiên trước .bashrc và wide trong system )
export XMODIFIERS="@im=ibus"
export GTK_IM_MODULE="ibus"
export QT4_IM_MODULE="ibus"
export QT_IM_MODULE="ibus"

Cảm ơn anh Trường An cho tip trick này :D

No comments:

Post a Comment