Ngó Sen

Bộ gõ tiếng Việt cho fcitx5 trên Linux.

tiếng Việt

Tắt bộ gõ tiếng Việt trên máy trước khi gõ. Ô này ghép dấu bằng bamboo-core bản Go; gói Ngó Sen dùng bản Go hoặc Rust tuỳ distro, gõ ra chữ như nhau. Trang web chỉ thử được phần ghép dấu, còn đưa chữ vào đúng chỗ trong từng app thì phải cài Ngó Sen.

curl -fsSL https://raw.githubusercontent.com/ngosen/ngosen/main/install.sh | bash

Chỉ cho fcitx5

Ngó Sen chỉ làm cho fcitx5. Bản IBus và bản chạy thẳng trên Sway, Hyprland mà không qua fcitx5 đã bỏ; trên Sway và Hyprland vẫn gõ được qua fcitx5. Mã bản IBus vẫn còn ở nhánh feat/ibus-engine.

Nên dùng chế độ nào

Dùng Gõ Sen làm chế độ gõ chính: trong cửa sổ cài đặt Ngó Sen, trang Gõ chữ, click nút Gõ Sen ở hàng Chế độ gõ. Gõ Sen dùng được cho hầu hết app: gõ nhanh không mất chữ, gõ đúng trong trình duyệt, thanh địa chỉ, Facebook, app Electron như Zalo và terminal. Chế độ này trước đây tên là Uinput; cấu hình cũ tự chuyển sang tên mới.

Chế độ Gạch chân (Preedit) hiện chữ gạch chân trong lúc gõ, dành cho app không hợp với Gõ Sen. Kiểu gõ được dùng và test hằng ngày là Telex. VNI và các kiểu khác dùng được nhưng chưa test kỹ.

Telex nằm ở những phím này

Phím mờ chỉ gõ ra chữ của nó; phím đậm còn thêm dấu hoặc bỏ dấu.

Dấu thanh
Gõ sau nguyên âm: s sắc, f huyền, r hỏi, x ngã, j nặng. as ra á.
Mũ, móc, trăng, gạch
aa â, ee ê, oo ô, aw ă, ow ơ, uw ư, dd đ.
Bỏ dấu
z bỏ dấu thanh vừa gõ: asz ra a.

Cửa sổ cài đặt

Sáng hay tối, KDE hay GNOME, cửa sổ dùng giao diện đang có. Đổi gì lưu ngay, có nút Hoàn tác.

Cửa sổ có 4 trang: Gõ chữ, Gõ tắt & Từ điển, Phím, Khác. Ô tìm ở đầu thanh bên tìm được cả khi gõ không dấu. Sao lưu và Khôi phục là hai nút ở thanh dưới.

Muốn một app dùng chế độ riêng thì chọn chế độ trong menu chế độ lúc đang gõ ở app đó; Ngó Sen nhớ cho app đó. Chọn “Chế độ gõ mặc định” trong menu để app quay về chế độ chung. Nút Mặc định xoá mọi chế độ đã nhớ.

Cửa sổ cài đặt Ngó Sen, trang Gõ chữ: hàng nút Chế độ gõ với Gõ Sen đang chọn, Kiểu gõ Telex, Bảng mã Unicode.
Trang Gõ chữ trên CachyOS (GNOME), giao diện Breeze. Ảnh sáng hay tối tuỳ theo máy đang mở trang này.
Kiểm tra chính tả vừa tắt; dòng “Đã lưu Kiểm tra chính tả” ở đầu trang Gõ chữ, bên phải là nút Hoàn tác.
Mỗi lần lưu hiện dòng “Đã lưu” kèm nút Hoàn tác.
Dòng “Đã hoàn tác.” ở đầu trang Gõ chữ, Kiểm tra chính tả được bật lại.
Click Hoàn tác thì cài đặt trước đó quay lại.

Máy tôi có chạy được không?

Lệnh cài chọn được gói cho các distro dưới đây, trên máy x86_64. Build được gói chưa có nghĩa là gõ được, nên mỗi distro mang một dấu ghi nó đã được thử tới đâu.

Môi trường dùng chính
Máy người giữ dự án dùng để gõ hằng ngày.
Đã test
Đã gõ thử trong một số app trên máy ảo. Chưa ai dùng hằng ngày.
Chỉ build
Gói build được và qua test lúc build. Chưa ai gõ thử trên distro đó.
Các distro và mức đã thử của từng distro
Distro Đã thử tới đâu Dựa trên
Fedora 44 Môi trường dùng chính KDE Plasma, Wayland
Arch, CachyOS Đã test 5 app ở chế độ Gõ Sen trên máy ảo CachyOS (Hyprland)
Ubuntu 26.04 Đã test 9 app trên máy ảo (GNOME, Wayland), với bản tự build
Ubuntu 24.04 Đã test 7 app trên máy ảo Linux Mint 22 (cùng nền 24.04), với bản tự build
Debian 13 Đã test 6 app trên máy ảo MX 25 (cùng nền Debian 13)
Fedora 43 Chỉ build chỉ build và chạy test lúc build
openSUSE Tumbleweed Chỉ build chỉ build và chạy test lúc build
Ubuntu 22.04 Chỉ build chỉ build và chạy test lúc build
Debian 12 Chỉ build chỉ build và chạy test lúc build

Chép theo ghi chú của bản 1.4.1-1, ngày 14/10/2026. Mức đã test lấy từ lần test bản 0.5. Các bản sửa bảng tính trong 1.0 được test trên máy ảo CachyOS (KDE Wayland), với LibreOffice Calc, WPS Office và Google Sheets trong Firefox. Bản 1.1 đổi tên các file cài vào máy. Lần cập nhật từ 1.0.0-1 được test trên máy ảo Linux Mint 22 (Cinnamon X11): cấu hình cũ được chép sang, bộ gõ vẫn nằm trong danh sách và gõ ra đúng chữ. Bản 1.2 thay cửa sổ cài đặt. Lưu và Hoàn tác qua fcitx5 thật được test trên máy ảo Linux Mint 22 (Cinnamon X11), CachyOS (KDE Wayland) và Ubuntu 26.04 (GNOME Wayland). Trên máy ảo CachyOS (KDE Wayland), bản 1.2 gõ ra đúng chữ trong GNOME Text Editor. Bản sửa lỗi đảo chữ trong gnome-terminal được test bằng client D-Bus giả lập và gõ tay trong gnome-terminal: không còn đảo chữ. Bản 1.2.1 chỉ bỏ trang Ứng dụng khỏi cửa sổ cài đặt, bộ gõ không đổi. Cửa sổ 4 trang được mở trên máy ảo CachyOS (KDE Wayland), cả giao diện sáng và tối. Bản 1.2.2 sửa nhãn cạnh con trỏ và lỗi mất dấu trên thanh địa chỉ Edge. Lỗi Edge được tái hiện bằng một test viết lại từ log gõ phím trên Fedora 44 (KDE Wayland), rồi gõ tay lại trên Edge sau khi sửa: ra đúng “ngó”, cạnh con trỏ hiện “vi”. Bản 1.3.0 thêm tuỳ chọn Backspace xoá dấu thanh, được gõ tay trên Fedora 44 (KDE Wayland) với bản build từ nhánh next. Icon khay mới được xem trên máy ảo Linux Mint 22.3 (Cinnamon) và MX Linux 25.3 (Xfce). Gói Debian 13 được cài trên máy ảo MX Linux 25.3: Telex “vieejt” ra “việt” trong terminal GTK. Lần cập nhật từ 1.0.0-1 rồi chạy fcitx5 -rd cũng được test trên máy ảo MX Linux 25.3: Ngó Sen vẫn nằm trong danh sách bộ gõ. Bản 1.4.0 chủ yếu đổi lệnh cài một dòng. Lệnh cài được chạy trên máy ảo Ubuntu 26.04 (GNOME Wayland), CachyOS (GNOME 51), Linux Mint (Cinnamon X11) và MX Linux 25 (Xfce X11) với bản build từ nhánh next: sau khi đăng nhập lại, Ctrl+Shift rồi Telex “tieengs vieetj” ra “tiếng việt” trong ô chữ GTK3, 3/3 lần trên mỗi máy. Lệnh gỡ được test trên Ubuntu 26.04 (IBus chạy lại) và MX Linux 25. Bản 1.4.1 chỉ đổi lệnh cài, bộ gõ giữ nguyên như 1.4.0. Lệnh cài trên KDE được chạy trên máy ảo CachyOS (Plasma 6.7 Wayland) với tài khoản chưa cấu hình bộ gõ: sau khi đăng nhập lại, Ctrl+Shift rồi Telex “tieengs vieetj” ra “tiếng việt” 3/3 lần trong ô chữ Qt6 và 3/3 lần trong ô chữ GTK3; trước khi sửa, ô chữ Qt6 ra chữ thô. Với gói 1.4.0, Chrome 155, VS Code, Discord, Firefox và GNOME Text Editor (Flatpak) gõ đúng trên máy ảo Ubuntu 26.04 (GNOME Wayland); Chrome ép chạy qua XWayland sai 5/30 lần. Distro khác thì tự build từ source.

Cài bằng một dòng lệnh

Lệnh này tìm gói build sẵn cho đúng distro của máy trong bản release mới nhất, hỏi lại rồi mới tải, so hash SHA-256 của file tải về, rồi cài bằng trình quản lý gói của máy. Cấu hình cũ giữ nguyên.

curl -fsSL https://raw.githubusercontent.com/ngosen/ngosen/main/install.sh | bash

Không muốn chạy lệnh qua curl? Tải gói .rpm, .deb hoặc .pkg.tar.zst ở bản release mới nhất, so hash với file SHA256SUMS rồi cài bằng trình quản lý gói. Chọn đúng file cho từng distro.

Trên GNOME, KDE Plasma (Wayland) và Xfce, Cinnamon, MATE, lệnh cài tự đặt fcitx5 làm bộ gõ và thêm Ngó Sen. Cài xong chỉ cần đăng xuất rồi đăng nhập lại, sau đó bấm Ctrl+Shift để bật tiếng Việt. Lệnh cài làm những gì.

Trên desktop khác hoặc khi cài gói bằng tay, còn ba việc

  1. Khởi động lại fcitx5.

    fcitx5 -rd

    Trên KDE Wayland: đăng xuất rồi đăng nhập lại, vì KDE tự mở fcitx5 và lệnh trên không thay được.

  2. Mở “Fcitx5 Configuration” và thêm bộ gõ Ngó Sen.

  3. Trên KDE Wayland: vào System Settings, mục Virtual Keyboard, chọn “Fcitx 5”.

Ubuntu 26.04: lệnh cài tự bật extension sửa lỗi GNOME làm mất phím Backspace. Cài gói bằng tay thì đăng xuất rồi đăng nhập lại, sau đó chạy một lần gnome-extensions enable forward-keys@ngosen.github.io.

Gỡ: chạy lệnh cài với --uninstall. Trên GNOME, lệnh này trả lại những gì lệnh cài đã đổi. Lệnh gỡ và cách gỡ tay.

Bản 1.4.1-1 đổi gì

  • Trên KDE Plasma (Wayland), lệnh cài chọn fcitx5 làm bàn phím ảo của KDE, thêm Ngó Sen và đặt phím Ctrl+Shift.

    Trước đây fcitx5 vẫn tự chạy nhưng app Qt như Kate, Dolphin không gõ được tiếng Việt cho tới khi tự chọn mục Virtual Keyboard trong System Settings. Lệnh gỡ để nguyên lựa chọn này. #64

Các bản trước: xem trang Các bản release.

Chưa sửa

  • Game dùng SDL không chạy trên X11 thì không nhận forward key, nên gõ ra chữ không dấu.
  • VS Code bản snap gõ ra Telex thô. Cách chữa tạm là cho nó gõ qua XIM, và khi đó khoảng một câu trong mười có một chữ sai dấu.
  • Ubuntu 26.04 cần bật một extension của Ngó Sen để sửa lỗi GNOME làm mất phím Backspace, cho tới khi Ubuntu đưa bản sửa của GNOME vào.
  • Kiểu gõ được dùng và test hằng ngày là Telex. VNI và các kiểu khác dùng được nhưng chưa test kỹ.

Ghi chép

Tất cả bài viết