Repository navigation
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
VietTelex (ViệtTelex / ViếtTelex) là bộ gõ tiếng Việt Telex cho macOS, được xây dựng trên InputMethodKit của Apple để tích hợp sâu. Không gạch chân từ đang gõ, con trỏ luôn ở cuối, dấu bỏ trực tiếp vào chữ, và gõ được cả trong Terminal mà không phá autocomplete của shell.
Triết lý: tối giản, nhanh, ổn định, mã nguồn mở — cài xong là gõ, hầu như không phải chỉnh gì thêm.
Dự án của Phil Trịnh, viết lại từ đầu sau gần 20 năm dùng macOS mà chưa thấy bộ gõ tiếng Việt nào thật sự ngon, chuẩn, mượt.
VietTelex-demo.mov
Demo gõ máy ở tốc độ ~380 WPM — dấu bung tức thì, không gạch chân, từ tiếng Anh tự khôi phục.
- Chuẩn IMKit — là input method thật của hệ thống (không phải app chặn phím), nên thừa hưởng miễn phí: tự đổi kiểu gõ theo từng app, chính tả/dự đoán/viết hoa của macOS, con trỏ/undo/VoiceOver đều đúng.
- Nhanh — luật chính tả compile thành trie + bitmap, incremental parse, SIMD, zero-alloc: ~130 ns/phím, gõ nhanh cỡ nào cũng mượt.
- Gõ được ở nơi bộ gõ khác hay vỡ — Terminal/iTerm (giữ autocomplete shell), address bar Chrome, ô Excel, Spotlight; tự học theo từng app.
- Thông minh với English/code — tự khôi phục
google/github, nhận token camelCase (OmS,JavaScript) để không bỏ dấu nhầm, có Telex nghiêm ngặt. - Đúng, có số đo — bộ regression 9.091 ca: 100% từ tiếng Việt ra đúng dấu, 98,9% từ tiếng Anh bị biến dạng được khôi phục. Chi tiết + phần chưa phủ:
docs/REGRESSION.md. - Gõ được trên mọi bố cục bàn phím — Colemak, Dvorak, Workman…: chọn ở Cài đặt → Tùy chỉnh → Bố cục bàn phím. Không chọn thì bố cục bị thừa hưởng từ nguồn nhập bạn vừa rời khỏi, nên cùng một phím ra chữ khác nhau tuỳ bạn chuyển từ đâu sang — chọn một lần là hết.
- Nhẹ & riêng tư — không chạy nền, không thu thập dữ liệu; chỉ gọi mạng khi bạn bấm Kiểm tra cập nhật.
| Menu trên thanh menu | Cửa sổ Cài đặt |
|---|---|
Website: ptrinh.github.io/viettelex · Homebrew: brew install --cask ptrinh/viettelex/viettelex
- Tải
VietTelex-x.y.z.pkgtừ Releases (đã ký + notarized). - Double-click → làm theo hướng dẫn (tự cài, đăng ký bộ gõ, mở sẵn System Settings → Keyboard).
- Input Sources → Edit… / + → Vietnamese → ViệtTelex → Add.
| ① Input Sources → Edit… | ② + → Vietnamese → ViệtTelex → Add |
|---|---|
Để gõ trong Terminal, iTerm, Chrome/Edge/Brave: bật quyền Accessibility cho VietTelex (Privacy & Security → Accessibility). Chuyển Việt/Anh bằng phím 🌐 hoặc ⌃Space (macOS nhớ theo từng app).
s f r x j = sắc huyền hỏi ngã nặng · aa ee oo = â ê ô · aw ow uw = ă ơ ư · dd = đ · z xóa dấu.
Ví dụ: vieejt → việt · truowngf → trường · hoas → hóa.
Chuyển bộ gõ thẳng, không qua HUD của ⌃Space: ⌃1 ABC · ⌃2 DH-Việt · ⌃3 VTX Telex · ⌃4 VTX Colemak (cần quyền Accessibility).
Tùy chọn (Simple Telex, bỏ dấu tự do, kiểu cũ/mới, kiểm tra chính tả, ưu tiên Anh/Việt khi từ trùng) ở menu bộ gõ → Cài đặt…
VTX không còn gõ tắt: bảng gõ tắt đã chuyển sang app riêng PasteMe (29/09/2026).
- Không thấy trong Input Sources → đăng xuất/đăng nhập lại một lần.
- Không gõ được trong Terminal/Chrome → cấp quyền Accessibility (đã bật mà vẫn lỗi thì bỏ tick rồi tick lại).
- Ô mật khẩu → tự tắt trong secure field (đúng hành vi).
- Một app cụ thể gõ lỗi → menu bộ gõ → dòng Cơ chế gõ: …: mở Bảng cơ chế gõ lọc sẵn app đang gõ để đổi cơ chế, đồng thời copy thông tin gỡ lỗi vào clipboard.
- Gõ qua Chrome Remote Desktop bị nhảy dấu → bật VTX trên máy ĐANG BỊ điều khiển, không phải máy đang ngồi gõ. Tab
remotedesktop.google.comtự passthrough (cần quyền Accessibility để đọc URL); hai bộ gõ cùng sửa một chuỗi phím thì con trỏ nhảy loạn. - Mở máy từ sleep, đang mở 1Password thì không gõ được → 1Password giữ Secure Input của macOS (mọi bộ gõ bên thứ ba đều chết). Bấm vào cửa sổ 1Password rồi bấm ra, hoặc Quit 1Password. Chi tiết: ghi chú kỹ thuật.
Gặp lỗi? Xem hướng dẫn báo lỗi kèm cách lấy nhật ký gỡ lỗi rồi mở issue.
Build, kiến trúc, benchmark: xem docs/CONTRIBUTE.md · độ chính xác: docs/REGRESSION.md · latency: docs/BENCHMARKS.md.
MIT License — © 2026 Phil Trinh (SENPRINTS LLC). Tự do dùng/sửa/tích hợp (kể cả thương mại), miễn giữ lại thông báo bản quyền.