Skip to content

LotusInputMethod/fcitx5-lotus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

476 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

English | Tiếng Việt

Logo

Fcitx5 Lotus

Bộ gõ tiếng Việt đơn giản, hiệu năng cao cho Linux
Khám phá trang chủ »

Release License Website Stars Forks Issues All Contributors Ask DeepWiki

Cài đặt »

Báo lỗi · Yêu cầu tính năng


Dự án này là bản fork được tối ưu hóa từ bộ gõ VMK. Chân thành cảm ơn tác giả Thành đã đặt nền móng cho bộ gõ này.

Mục lục
  1. Cài đặt
  2. Bật bộ gõ
  3. Hướng dẫn sử dụng
  4. Gỡ cài đặt
  5. Đóng góp
  6. Giấy phép

📦 Cài đặt

💡 Bấm vào phần bên cạnh badge để mở rộng hướng dẫn.

Arch Linux

Hiện tại AUR có 3 gói cài đặt để bạn lựa chọn:

Gói Mô tả
fcitx5-lotus Build từ mã nguồn release ổn định
fcitx5-lotus-bin Dùng binary đã build sẵn
fcitx5-lotus-git Build từ danh sách commit mới nhất

Cài đặt bằng yay:

# Cú pháp: yay -S <tên-gói>
yay -S fcitx5-lotus

Hoặc paru:

# Cú pháp: paru -S <tên-gói>
paru -S fcitx5-lotus
Debian
# Tự động nhận diện codename và cài đặt
CODENAME=$(grep '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://fcitx5-lotus.pages.dev/pubkey.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/fcitx5-lotus.gpg
echo "deb [signed-by=/etc/apt/keyrings/fcitx5-lotus.gpg] https://fcitx5-lotus.pages.dev/apt/$CODENAME $CODENAME main" | sudo tee /etc/apt/sources.list.d/fcitx5-lotus.list
sudo apt update && sudo apt install fcitx5-lotus
Ubuntu
# Tự động nhận diện codename và cài đặt
CODENAME=$(grep '^UBUNTU_CODENAME=' /etc/os-release | cut -d'=' -f2)
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://fcitx5-lotus.pages.dev/pubkey.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/fcitx5-lotus.gpg
echo "deb [signed-by=/etc/apt/keyrings/fcitx5-lotus.gpg] https://fcitx5-lotus.pages.dev/apt/$CODENAME $CODENAME main" | sudo tee /etc/apt/sources.list.d/fcitx5-lotus.list
sudo apt update && sudo apt install fcitx5-lotus
Fedora
# Tự động nhận diện phiên bản và cài đặt
RELEASEVER=$(grep '^VERSION_ID=' /etc/os-release | cut -d'=' -f2)
sudo rpm --import https://fcitx5-lotus.pages.dev/pubkey.gpg
sudo dnf config-manager addrepo --from-repofile=https://fcitx5-lotus.pages.dev/rpm/fedora/fcitx5-lotus-$RELEASEVER.repo
sudo dnf install fcitx5-lotus
openSUSE
# Thêm repo và cài đặt (Tumbleweed)
sudo rpm --import https://fcitx5-lotus.pages.dev/pubkey.gpg
sudo zypper addrepo https://fcitx5-lotus.pages.dev/rpm/opensuse/fcitx5-lotus-tumbleweed.repo
sudo zypper refresh
sudo zypper install fcitx5-lotus
NixOS

Thêm input của fcitx5-lotus vào flake.nix:

{
  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";

    fcitx5-lotus = {
      url = "github:LotusInputMethod/fcitx5-lotus";
      inputs.nixpkgs.follows = "nixpkgs";
    };
  };

  outputs = {
    self,
  ...
}

Bật fcitx5-lotus service trong configuration.nix:

{
  inputs,
  ...
}: {
  imports = [
    inputs.fcitx5-lotus.nixosModules.fcitx5-lotus
  ];

  services.fcitx5-lotus = {
    enable = true;
    user = "your_username"; # Sửa thành tên user của bạn
  };
}

Rebuild lại system để cài đặt.

GitHub Releases

Tải file .deb hoặc .rpm trực tiếp từ GitHub Releases:

# Debian/Ubuntu
sudo dpkg -i fcitx5-lotus_*.deb
# Fedora / openSUSE
sudo rpm -i fcitx5-lotus-*.rpm
Source

KHUYẾN CÁO QUAN TRỌNG:

Vui lòng KHÔNG sử dụng cách này nếu distro của bạn đã được hỗ trợ thông qua Cloudflare Pages.

Việc biên dịch thủ công đòi hỏi bạn phải hiểu rõ về cấu trúc thư mục của hệ thống. Nếu bạn gặp lỗi "Not Available" hoặc thiếu thư viện khi cài theo cách này trên các distro phổ biến (Ubuntu/Fedora...), hãy quay lại dùng Cloudflare Pages để đảm bảo tính ổn định và tự động cập nhật.

Yêu cầu hệ thống

  • Debian/Ubuntu
sudo apt-get install cmake extra-cmake-modules libfcitx5core-dev libfcitx5config-dev libfcitx5utils-dev libinput-dev libudev-dev g++ golang hicolor-icon-theme pkg-config libx11-dev libfcitx5-qt6-dev qt6-base-dev fcitx5-modules-dev
  • Fedora/RHEL
sudo dnf install cmake extra-cmake-modules fcitx5-devel libinput-devel libudev-devel gcc-c++ golang hicolor-icon-theme systemd-devel libX11-devel fcitx5-qt-devel
  • openSUSE
sudo zypper install cmake extra-cmake-modules fcitx5-devel libinput-devel systemd-devel gcc-c++ go hicolor-icon-theme systemd-devel libX11-devel udev fcitx5-qt-devel

Biên dịch và cài đặt

# Clone repository
git clone https://github.com/LotusInputMethod/fcitx5-lotus.git
cd fcitx5-lotus

# Biên dịch
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib . # Tùy vào distro mà LIBDIR sẽ khác nhau
make

# Cài đặt (cần quyền root)
sudo make install

# Hoặc cài đặt vào thư mục tùy chỉnh
sudo make install PREFIX=/usr/local

⚙️ Bật bộ gõ

Sau khi cài đặt xong, bạn cần thực hiện các bước sau để bật bộ gõ fcitx5-lotus:

💡 Tự động hoá: Nếu bạn cài qua Debian/Ubuntu (.deb), post-install script sẽ tự động thực hiện các bước 1–3 bên dưới. Sau khi cài đặt, bạn chỉ cần làm tiếp từ bước 4.

1. Bật Lotus Server

Server giúp bộ gõ tương tác với hệ thống tốt hơn (đặc biệt là gửi phím xóa và sửa lỗi).

Bash / Zsh
# Bật và khởi động service (tự động fix lỗi thiếu user systemd nếu có)
sudo systemctl enable --now fcitx5-lotus-server@$(whoami).service || \
(sudo systemd-sysusers && sudo systemctl enable --now fcitx5-lotus-server@$(whoami).service)
Fish shell
# Bật và khởi động service (tự động fix lỗi thiếu user systemd nếu có)
sudo systemctl enable --now fcitx5-lotus-server@(whoami).service; or begin
    sudo systemd-sysusers; and sudo systemctl enable --now fcitx5-lotus-server@(whoami).service
end

Kiểm tra status (nếu thấy active (running) là OK):

systemctl status fcitx5-lotus-server@$(whoami).service

2. Thiết lập biến môi trường

Bộ gõ sẽ không hoạt động nếu thiếu các biến này.

Bash
# Thêm cấu hình vào ~/.bash_profile
cat <<EOF >> ~/.bash_profile
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export SDL_IM_MODULE=fcitx
export GLFW_IM_MODULE=ibus
EOF
Zsh
# Thêm cấu hình vào ~/.zprofile
cat <<EOF >> ~/.zprofile
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export SDL_IM_MODULE=fcitx
export GLFW_IM_MODULE=ibus
EOF
Fish shell
# Thêm cấu hình vào ~/.config/fish/config.fish
echo 'if status is-login
    set -Ux GTK_IM_MODULE fcitx
    set -Ux QT_IM_MODULE fcitx
    set -Ux XMODIFIERS "@im=fcitx"
    set -gx SDL_IM_MODULE fcitx
    set -gx GLFW_IM_MODULE ibus
end' >> ~/.config/fish/config.fish

Log out và log in để áp dụng thay đổi.

Nếu bạn vẫn chưa gõ được sau khi log out

Nếu cấu hình tại ~/.bash_profile, ~/.zprofile hay .config/fish/config.fish không hoạt động, bạn có thể thử thiết lập tại /etc/environment để áp dụng cho toàn bộ hệ thống:

Bash/Zsh
cat <<EOF | sudo tee -a /etc/environment
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus
EOF
Fish shell
echo "GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus" | sudo tee -a /etc/environment

Lưu ý: Cần khởi động lại máy sau khi thiết lập.

3. Tắt bộ gõ cũ (IBus)

Nếu máy bạn đang dùng IBus, hãy tắt nó đi trước khi chuyển sang Fcitx5 để tránh xung đột.

# Tắt IBus
killall ibus-daemon || ibus exit

Lưu ý: Hãy tắt autostart của IBus (thường là ibus-daemon hoặc ibus) để tránh xung đột. Tốt nhất là gỡ cài đặt IBus nếu không sử dụng.

4. Thêm Fcitx5 vào Autostart

DE / WM Hướng dẫn chi tiết
GNOME GNOME TweaksStartup Applications → Add → Fcitx 5
KDE Plasma System SettingsAutostart → Add... → Add Application... → Fcitx 5
Xfce SettingsSession and StartupApplication Autostart → Add → Fcitx 5
Cinnamon System SettingsStartup Applications+ → Choose application → Fcitx 5
MATE Control CenterStartup Applications → Add (Name: Fcitx 5, Command: fcitx5)
Pantheon System SettingsApplicationsStartupAdd Startup App...Fcitx 5
Budgie Budgie Desktop SettingsAutostart+ → Add application → Fcitx 5
LXQt LXQt Configuration CenterSession SettingsAutostartLXQt Autostart → Add (Name: Fcitx 5, Command: fcitx5)
COSMIC COSMIC SettingsApplicationsStartup Applications → Add app → Fcitx 5
i3 / Sway Thêm exec --no-startup-id fcitx5 -d vào file config (~/.config/i3/config hoặc ~/.config/sway/config)
Hyprland Thêm exec-once = fcitx5 -d vào ~/.config/hypr/hyprland.conf

5. Cấu hình Fcitx5

Sau khi đã log out và log in lại:

  1. Mở Fcitx5 Configuration (tìm trong menu ứng dụng hoặc chạy fcitx5-configtool).
  2. Tìm Lotus ở cột bên phải.
  3. Nhấn mũi tên < để thêm nó sang cột bên trái.
  4. Apply.
Cấu hình thêm cho Wayland (KDE, Hyprland, Chromium-based, Electron)
  • KDE Plasma: System SettingsKeyboardVirtual Keyboard → Chọn Fcitx 5.
  • Hyprland: Thêm dòng sau vào ~/.config/hypr/hyprland.conf:
permission = fcitx5-lotus-server, keyboard, allow
  • Chromium-based/Electron: Thêm flags sau vào ứng dụng cần chạy: --enable-features=UseOzonePlatform --ozone-platform=wayland --enable-wayland-ime --wayland-text-input-version=3
Cấu hình thêm cho Kanata

Thêm dòng sau vào file ~/.config/kanata/kanata.kbd

(defcfg
  ...
  linux-dev-names-exclude ("Lotus-Uinput-Server")
  ...
)

📖 Hướng dẫn sử dụng

1. Tùy chỉnh bộ gõ

Bạn có thể tùy chỉnh các thông số của bộ gõ qua 2 cách sau:

Cách 1: Menu chuột phải (Quick Settings)

Nhấp chuột phải vào biểu tượng Lotus trên system tray để mở nhanh các tùy chỉnh:

Tùy chọn Mô tả Mặc định
Charset Chọn bảng mã. Unicode
Spell Check Bật/tắt kiểm tra lỗi chính tả tiếng Việt. Bật
Macro Bật/tắt gõ tắt. Bật
Capitalize Macro Bật/tắt gõ tắt chữ hoa. Bật
Auto non-VN restore Bật/tắt tự động khôi phục với từ không phải tiếng Việt. Bật
Về vấn đề hiển thị icon trên systray của GNOME

Nếu bạn sử dụng GNOME, hãy ưu tiên sử dụng extension AppIndicator and KStatusNotifieritem Support để hiển thị đúng biểu tượng Lotus trên systray, tránh sử dụng Kimpanel

Cách 2: Menu cấu hình Lotus - Fcitx (Advanced Settings)

Nhấp chuột phải vào biểu tượng Lotus hoặc icon Fcitx -> Input Method Settings (Cấu hình bộ gõ) -> Chọn Lotus -> Nhấn biểu tượng Configure (bánh răng) ở giữa.

Hoặc nếu distro của bạn đủ mới để hỗ trợ PySide6, bạn có thể vào biểu tượng Lotus hoặc icon Fcitx -> Settings để mở ứng dụng cấu hình riêng của Lotus.

Tại đây bạn có thể tùy chỉnh chi tiết:

  • Gõ tắt / Macro: Nhấn bánh răng cạnh dòng Macro để quản lý danh sách gõ tắt toàn cục.
  • Keymap tùy chỉnh: Nhấn bánh răng dòng Custom Keymap để tự định nghĩa phím. Chọn kiểu gõ Custom để áp dụng.
  • Phím tắt Menu: Đổi phím nóng mở menu chế độ gõ (mặc định là `) tại dòng Mode menu hotkey.
Tùy chọn Mô tả Mặc định
Mode Chọn chế độ gõ. Uinput (Smooth)
Input Method Chọn kiểu gõ.
Lưu ý: Nếu bạn muốn sử dụng kiểu gõ Telex gõ w -> ư, hãy chọn kiểu gõ Telex W hoặc Telex 2
Telex
Use oà, uý (Instead Of òa, úy) Bật/tắt kiểu đặt dấu thanh hiện đại. Bật
Allow Type With More Freedom Bật/tắt bỏ dấu tự do. Bật
Allow dd To Produce đ When Auto Restore Keys With Invalid Words Is On Bật/tắt cho phép "dd" tạo "đ" khi dùng Auto non-VN restore. Bật
Fix Uinput Mode With Ack Khuyên dùng cho ứng dụng Chromium (Chrome, Brave, Edge, ...). Tắt
Use Lotus Status Icons Dùng icon Lotus thay vì icon V/E mặc định. Tắt

2. Menu chuyển chế độ gõ

Khi con trỏ đang ở trong ô nhập liệu (có thể gõ văn bản), nhấn phím ` (hoặc phím tắt bạn đã tuỳ chỉnh ở trên) để mở menu chọn chế độ gõ; bạn có thể dùng chuột hoặc phím tắt để chọn chế độ mong muốn.

Chế độ Phím tắt Mô tả
Uinput (Smooth) 1 Chế độ mặc định, phản hồi nhanh.
Tối ưu: ứng dụng có tốc độ xử lý input cao.
Uinput (Slow) 2 Tương tự Uinput (Smooth) nhưng tốc độ gửi phím chậm hơn.
Tối ưu: ứng dụng có tốc độ xử lý input thấp (ví dụ: Libre Office).
Uinput (Hardcore) 3 Biến thể của Uinput (Smooth).
Tối ưu: ứng dụng Windows qua Wine.
Surrounding Text 4 Cho phép sửa dấu trên văn bản đã gõ, hoạt động mượt.
Tối ưu: ứng dụng Qt/GTK.
Preedit Q Hiển thị gạch chân khi gõ.
Tối ưu: hầu hết ứng dụng.
Emoji Picker W Tìm kiếm và nhập Emoji (hỗ trợ fuzzy search).
OFF E Tắt bộ gõ.
Default Typing R Chế độ gõ mặc định được cấu hình tại tuỳ chọn Typing mode.
Type X X / F Gõ phím X (nếu phím để bật menu được thiết lập trong Fcitx5 configuration là phím đơn, ví dụ như phím X).

Bộ gõ sẽ tự động lưu chế độ gõ đã dùng gần nhất cho từng ứng dụng và khôi phục cấu hình đó khi bạn mở lại chúng.

3. Chỉnh sửa nhanh (Quick Phrase)

Lotus tương thích với tính năng Quick Phrase có sẵn của Fcitx5 (mặc định dùng Super + `). Bạn có thể nhập nhanh:

  • LaTeX: Ký tự toán học (vd: \alphaα).
  • Emoji Code: Biểu tượng cảm xúc (vd: :smile:😄).
  • Emoji: Các đoạn văn bản mẫu hoặc Kaomoji (vd: smile(・∀・)).

4. Đặt lại trạng thái đang gõ

Nhấp chuột hoặc chạm touchpad trong khi gõ sẽ tự động đặt lại trạng thái đang gõ, ngăn chặn hiện tượng dính ký tự giữa các từ.


🗑️ Gỡ cài đặt

💡 Bấm vào phần bên cạnh badge để mở rộng hướng dẫn.

Arch Linux

Bạn có thể dùng pacman (khuyên dùng), yay hoặc paru để gỡ cài đặt:

sudo pacman -Rns fcitx5-lotus
yay -Rns fcitx5-lotus
paru -Rns fcitx5-lotus

Lưu ý: Các file config ở $HOME sẽ được giữ lại.

Debian
sudo apt remove fcitx5-lotus
sudo rm /etc/apt/sources.list.d/fcitx5-lotus.list
sudo rm /etc/apt/keyrings/fcitx5-lotus.gpg
sudo apt update
Ubuntu
sudo apt remove fcitx5-lotus
sudo rm /etc/apt/sources.list.d/fcitx5-lotus.list
sudo rm /etc/apt/keyrings/fcitx5-lotus.gpg
sudo apt update
Fedora
sudo dnf remove fcitx5-lotus
sudo rm /etc/yum.repos.d/fcitx5-lotus-*.repo
openSUSE
sudo zypper remove fcitx5-lotus
sudo zypper removerepo fcitx5-lotus
NixOS

Xóa (hoặc comment) dòng services.fcitx5-lotusinputs trong file config, sau đó rebuild lại system. NixOS sẽ tự dọn dẹp.

GitHub Releases

Gỡ cài đặt tùy theo distro bạn đang sử dụng:

# Debian / Ubuntu
sudo apt remove fcitx5-lotus
# Fedora
sudo dnf remove fcitx5-lotus
# openSUSE
sudo zypper remove fcitx5-lotus
Source

Vào lại thư mục source code đã build và chạy:

sudo make uninstall

🧹 Dọn dẹp hệ thống (Tùy chọn)

Nếu muốn xóa hoàn toàn dữ liệu gõ tắt và cấu hình:

rm -rf ~/.local/share/fcitx5/lotus
rm -rf ~/.config/fcitx5/conf/lotus.conf

🤝 Đóng góp

Đóng góp là điều làm cho cộng đồng mã nguồn mở trở thành một nơi tuyệt vời để học hỏi, truyền cảm hứng và sáng tạo. Mọi đóng góp của bạn đều được đánh giá cao.

Vui lòng xem hướng dẫn chi tiết tại đây để biết cách tham gia phát triển dự án, quy trình Pull Request, quy tắc code style và quy tắc ứng xử.

Đừng quên tặng dự án một ⭐! Cảm ơn bạn rất nhiều!


Những người đóng góp ✨

Cảm ơn những con người tuyệt vời (chú thích emoji):

Nguyen Hoang Ky
Nguyen Hoang Ky

📝 💻 📖 📆 👀
Huỳnh Thiện Lộc
Huỳnh Thiện Lộc

🐛 📖 🎨 🌍 💻
Nguyễn Hồng Hiệp
Nguyễn Hồng Hiệp

📖
Đặng Quang Hiển
Đặng Quang Hiển

📖 💻
Zebra2711
Zebra2711

🐛 💻
Add your contributions

Dự án này tuân thủ cấu trúc của all-contributors. Mọi đóng góp đều được hoan nghênh!


📃 Giấy phép

Dự án được phân phối dưới giấy phép GNU General Public License v3. Xem LICENSE để biết thêm chi tiết.


✨ Lịch sử sao

Star History Chart

About

Bộ gõ tiếng Việt cho Linux mã nguồn mở, hướng đến trải nghiệm gõ không gạch chân mượt mà

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors