Skip to content
isthaisonPublic

About

GoTV — Bộ gõ tiếng Việt Telex/VNI mã nguồn mở cho Windows, Linux và macOS; từ điển ngoại tuyến, macro/emoji. MIT

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

GoTV — Bộ gõ tiếng Việt Telex/VNI cho Linux, Windows & macOS

Build Linux Build Windows Build macOS Release License: MIT 🌐 Trang chủ: https://isthaison.github.io/gotv/

Từ phiên bản 0.9.0, dự án của isthaison đổi tên từ GoTiengViet thành GoTV để tránh nhầm với phần mềm GoTiengViet của Trần Kỳ Nam. Hai dự án độc lập. Xem hướng dẫn chuyển đổi cho người đang dùng bản cũ.

Bộ gõ tiếng Việt mã nguồn mở: một lõi gõ duy nhất viết bằng C (không Go, không CGO, không runtime ngoài), chạy trên cả ba hệ điều hành qua adapter mỏng của từng nền tảng — IBus trên Linux, TSF Text Service trên Windows, InputMethodKit trên macOS.

English: GoTV is a free, open-source Vietnamese input method (Telex & VNI) for Linux (IBus), Windows 10/11 (TSF) and macOS (InputMethodKit) — a lightweight Unikey/EVKey alternative with offline spellcheck, text macros/emoji and an offline dictionary (word suggestions + typo corrections, auto-updated from GitHub).

$ build/gotv-demo --transform telex duocjwd
được

Tính năng

  • Một thuật toán chung cho Telex và VNI — chỉ khác bảng ánh xạ phím; kiểu đặt dấu hiện đại (hòa) hoặc truyền thống (hoà).
  • Chính tả ngoại tuyến (Linux): gạch đỏ ngay khi gõ theo quy tắc âm tiết (âm đầu–vần–phụ âm cuối–thanh), không cần mạng. Bản Windows/macOS dùng AI balloon thay thế.
  • Gợi ý từ điển ngoại tuyến: hoàn thành tiền tố (thong→thông) và sửa lỗi chính tả (kông→không), không cần mạng. Từ điển (data/dict-vi.txt, ~7000 từ) tự cập nhật từ GitHub release; từ bạn chọn được nhớ vào từ điển học riêng.
  • Macro/emoji bằng file text: tự thêm cty=Công ty TNHH (gõ cty rồi nhấn Tab để bung (macro/emoji đều cần Tab), phím Space giữ nguyên chữ), :smile:→😊, (y)→👍.
  • Nhẹ, riêng tư: lõi C thuần + glib; không keylogger đám mây, mọi gợi ý chạy offline trên máy.
  • Tự cập nhật: kiểm tra release GitHub mỗi ngày, cài đè giữ nguyên cấu hình.

Trạng thái nền tảng

Nền tảng Cách gõ Trạng thái
Linux (Ubuntu/GNOME) IBus engine + app khay (indicator) ✅ Ổn định — .deb ở Releases
Windows 10/11 TSF Text Service + app khay ✅ Ổn định — gotv-*-x64-setup.exe ở Releases
macOS InputMethodKit .app 🧪 Preview (đang hoàn thiện) — xem docs/macos.md

Bắt đầu nhanh

Linux (Ubuntu/GNOME):

sudo apt install build-essential pkg-config libibus-1.0-dev libgtk-3-dev \
  libayatana-appindicator3-dev librsvg2-bin
./gtv.sh build
sudo ./gtv.sh install

Rồi vào Settings → Keyboard → Input Sources thêm GoTV (một nguồn duy nhất; chuyển Telex/VNI trong app indicator hoặc Setup), chuyển bằng Super+Space. Chi tiết: docs/dev.md.

Windows 10/11: tải gotv-<version>-x64-setup.exe ở trang Releases và chạy (cài per-user, không cần admin) → đăng xuất/đăng nhập lại → chọn GoTV bằng Win+Space. Chi tiết: docs/windows.md.

macOS: tải gotv-<version>-macos.dmg hoặc .pkg ở trang Releases (bản preview), cài vào ~/Library/Input Methods (.pkg tự cài, .dmg kéo thả), đăng xuất/đăng nhập lại. Chuyển bằng Fn/Caps Lock hoặc Control+Space. Chi tiết: docs/macos.md.

Quy tắc gõ (Telex/VNI)

Thao tác Telex VNI
Sắc, huyền, hỏi, ngã, nặng s f r x j 1 2 3 4 5
Mũ (â ê ô) lặp nguyên âm (aa) 6
Móc/trăng (ơ ư, ă) w 7 / 8
Gạch chữ đ dd 9
Xóa dấu thanh z 0
Chữ thô (không dấu) gõ lặp (ass → as) gõ lặp tương tự

Ví dụ: bawst → bắt, duocjwd → được, hoaf → hoà/hòa (tùy kiểu đặt dấu).

So với Unikey / EVKey / OpenKey

GoTV Unikey EVKey/OpenKey
Telex + VNI ✅ ✅ ✅
Linux (IBus) / Windows / macOS ✅ cả 3 Win + Linux Win + macOS
Chính tả khi gõ ✅ gạch đỏ (Linux) ❌ ❌ (balloon thay thế)
Gợi ý từ điển offline ✅ ❌ ❌
Mã nguồn mở ✅ MIT ✅ ✅

Tài liệu

Lệnh thường dùng

build/gotv-demo --transform telex duocjwd   # thử thuật toán
build/gotv-demo --suggest thong            # hoàn thành tiền tố (offline)
build/gotv-demo --correct kông            # sửa lỗi (offline)
ibus-setup-gotv            # GUI Linux (tự bật tray nền)
ibus-setup-gotv --tray     # chỉ indicator
ibus-setup-gotv --cli      # terminal
./gtv.sh build | test | vet | install | uninstall | package | bump | help
# Windows (MSYS2 MinGW hoặc cmd):  gtv build | test | install | uninstall | package
# macOS: ./gtv.sh build | test | install | uninstall | package  (app vào ~/Library/Input Methods)

Xử lý sự cố

  • Không thấy GoTV trong Input Sources (Linux): ibus restart, đăng xuất/đăng nhập lại, kiểm tra /usr/share/ibus/component/gotv.xml.
  • Gõ không ra dấu (Linux): đang ở engine gotv? Kiểm tra Super+Space và method trong ~/.config/gotv/config.
  • Không thấy GoTV sau khi cài (Windows): đăng xuất/đăng nhập lại; Settings → Time & Language → Language → Options → Add a keyboard → GoTV.
  • Crash (Linux): xem ~/.cache/gotv/crash.log, báo kèm phiên bản và log liên quan.
  • Updater (Windows): xem %APPDATA%\gotv\update.log.

Đóng góp

Mời issue/PR: mở issue mô tả lỗi kèm OS + phiên bản + log, hoặc PR nhỏ, test xanh (./gtv.sh test mọi nền tảng — Windows chạy trong MSYS2 MinGW hoặc gtv test từ cmd). Chuẩn code: engine/ thuần C đa nền tảng, adapter riêng từng OS trong linux/, windows/, macos/.

💡 Gợi ý topics cho repo (mục About → ⚙️): vietnamese tieng-viet telex vni input-method ime ibus tsf unikey linux windows macos dictionary c

Star History & Stargazers

Star History Chart

Cảm ơn các bạn đã ủng hộ dự án! Xem danh sách chi tiết những người đã star tại GitHub Stargazers.

Giấy phép: MIT.

About

GoTV — Bộ gõ tiếng Việt Telex/VNI mã nguồn mở cho Windows, Linux và macOS; từ điển ngoại tuyến, macro/emoji. MIT

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages