3 min read

Nhật ký phát triển fcitx5-lotus

#C++#Linux#Fcitx5

Dưới đây là nhật ký đóng góp cho dự án bộ gõ tiếng Việt fcitx5-lotus (tiền thân là fcitx5-vmk), từ tháng 2/2026 cho đến nay.

Giai đoạn dự án vmk (Tháng 2/2026)

  • 13/2: Chỉnh sửa thuật ngữ kỹ thuật trong file ngôn ngữ (vmk PR #41).
  • 14/2: Cập nhật icon bộ gõ fcitx-vmk.svg và tài liệu hướng dẫn (vmk PR #45).
  • 15/2: Tái cấu trúc và làm đẹp README, bổ sung bảng hướng dẫn tự chạy (autostart) (vmk PR #51).
  • 15/2: Cải thiện menu chọn chế độ ứng dụng (~), hỗ trợ chuột, phím mũi tên và bộ phím tắt QWER (vmk PR #52).
  • 17/2: Hoàn thiện dịch thuật, nhãn menu và logo (vmk PR #59).

Giai đoạn fcitx5-lotus (Tháng 3/2026 - nay)

Phát triển cốt lõi và Giao diện

  • 20/2: Thêm tùy chọn bật/tắt menu chế độ gõ vào cài đặt (PR #25).
  • 10/3: Tối ưu hóa xử lý phím nóng và logic chọn chế độ trong LotusEngine (PR #73).
  • 11/3: Phát triển bộ soạn thảo Macro và Keymap với giao diện Qt GUI (PR #77).
  • 15/3: Tái thiết kế toàn diện UI cài đặt với thanh menu bên (sidebar) và các trang xếp chồng (PR #3).
  • 16/3: Đăng ký plugin cấu hình Qt cho Fcitx5 (PR #5).
  • 17/3 - 19/3: Triển khai trang “About”, hệ thống quản lý chế độ theo từng ứng dụng (Mode Manager) và hiện đại hóa theme tối (PR #110, PR #121).
  • 21/3: Xây dựng hệ thống quản lý từ điển (PR #133).
  • 24/3 - 26/3: Bổ sung tính năng gõ w ra ư, hỗ trợ phím tắt trong chọn Emoji và hệ thống sao lưu/khôi phục toàn diện (PR #148, PR #149, PR #156).
  • 1/4 - 4/4: Tối ưu hóa dung lượng icon (giảm 70%), cho phép hiện/ẩn các mode menu tuỳ ý (PR #199, PR #202).
  • 8/4: Hoàn thiện hệ thống phím nóng với cơ chế chuẩn hóa kỹ thuật và hiển thị “visual keycap” trực quan (PR #220, PR #221).

Bảo mật và Hạ tầng

  • 14/3: Tự động hóa quy trình thiết lập sau cài đặt trên Debian (PR #99).
  • 28/3 - 29/3: Khắc phục các lỗ hổng bảo mật liên quan đến PATH injection, giả mạo tiến trình và xử lý an toàn luồng (thread safety) (PR #182, PR #8, PR #14).
  • 7/4: Thành công trong việc đề xuất và triển khai cơ chế lấy PID của ứng dụng vào nhân Fcitx5 (fcitx5 PR #1549), giúp toàn bộ hệ sinh thái Fcitx5 nhận diện ứng dụng ổn định hơn.
  • 7/4: Khắc phục lỗi cập nhật văn bản khi chuyển đổi context trong nhân Fcitx5 (fcitx5 PR #1548), đảm bảo trạng thái văn bản luôn đồng nhất.

Các dự án vệ tinh

  • Website: Triển khai trình cài đặt tương tác, tự động cập nhật danh sách người đóng góp và thông tin phiên bản mới nhất (Website PR #1, #2, #3).
  • Bamboo Core: Cải thiện logic xử lý từ, thêm các cờ tính năng mới và bộ test tự động (bamboo-core PR #2, #4).