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ớ.
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 đó.
| 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
-
Khởi động lại fcitx5.
fcitx5 -rdTrê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.
-
Mở “Fcitx5 Configuration” và thêm bộ gõ Ngó Sen.
-
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
-
Ngó Sen 1.4 tối ưu lại lệnh cài và bỏ bớt tuỳ chọn thừa
Trên GNOME và Xfce, Cinnamon, MATE, lệnh cài một dòng tự đặt fcitx5 làm bộ gõ và thêm Ngó Sen. Có thêm lệnh gỡ, cửa sổ cấu hình bớt mục thừa.
-
Ngó Sen chỉ làm cho fcitx5
Ngó Sen thôi làm bản IBus và bản chạy thẳng trên Sway, Hyprland. Người dùng GNOME và Ubuntu vẫn gõ được bằng fcitx5.
-
Ubuntu 26.04 lỗi gõ tiếng Việt ra chữ sai với nhiều bộ gõ
GNOME Shell trên Ubuntu 26.04 làm mất phím Backspace mà bộ gõ gửi, nên Chrome gõ ra tieêngếng. Bản sửa đã có; còn chờ Ubuntu đưa vào bản cập nhật.