12 điểm bởi GN⁺ 2026-03-02 | 1 bình luận | Chia sẻ qua WhatsApp
  • Một trình giả lập terminal đa nền tảng nhanh và giàu tính năng, tận dụng giao diện gốc của từng hệ điều hành và tăng tốc GPU (Mac/Linux)
  • Có thể chạy ngay sau khi cài đặt, được thiết kế theo cấu trúc không cần cấu hình riêng
  • Cung cấp hàng trăm chủ đề, key binding linh hoạttùy chọn cấu hình phong phú để người dùng thiết lập môi trường theo ý muốn
  • Cũng bao gồm tài liệu API dựa trên VT cho các nhà phát triển ứng dụng terminal, giúp tăng khả năng ứng dụng trong phát triển

Tổng quan về Ghostty

  • Ghostty là một trình giả lập terminal có hiệu năng nhanh và nhiều tính năng, hoạt động trên macOS và Linux
    • Sử dụng giao diện gốc của từng nền tảng và hỗ trợ render tăng tốc GPU
  • Được thiết kế để có thể chạy ngay sau khi cài đặt, theo đuổi triết lý Zero Configuration

Cài đặt và chạy

  • Người dùng macOS có thể tải trực tiếp tệp nhị phân để chạy ngay
  • Người dùng Linux có thể chọn cài đặt gói hoặc build từ mã nguồn
    • Trang chính thức cung cấp các liên kết DownloadBuild from Source

Tài liệu tính năng chính

  • Keybindings: hỗ trợ key binding tùy chỉnh thông qua tùy chọn cấu hình keybind
  • Color Theme: cung cấp hàng trăm chủ đề tích hợp, có thể tách riêng chủ đề cho chế độ sáng/tối
  • Configuration: với hàng trăm tùy chọn cấu hình chi tiết, có thể tinh chỉnh kỹ giao diện và hành vi
  • Terminal API (VT): cung cấp tài liệu tham chiếu về control sequence và các khái niệm terminal dành cho nhà phát triển ứng dụng terminal

1 bình luận

 
GN⁺ 2026-03-02
Ý kiến trên Hacker News
  • Tôi là tác giả gốc của Ghostty. Đã mấy năm rồi mà nó lại lên trang nhất HN nên khá bất ngờ. Tôi muốn chia sẻ vài cập nhật đáng chú ý.
    Dạo này libghostty còn thú vị hơn nhiều. Nó đã được dùng làm backend trong nhiều dự án terminal miễn phí lẫn thương mại. Có thể xem danh sách liên quan tại awesome-libghostty.
    Như tôi đã nói từ lần công bố đầu tiên vào năm 2023, mục tiêu là xây dựng một hệ sinh thái nơi nhiều terminal emulator khác nhau cùng phát triển dựa trên một lõi chung ổn định và hiệu năng cao là libghostty. Và điều đó thực sự đang diễn ra. Xem thêm tại libghostty is coming
    Tôi dự đoán đến khoảng năm 2027, số người dùng Ghostty thông qua libghostty sẽ nhiều hơn rất nhiều so với GUI. Đây là mối quan hệ cùng có lợi. Càng nhiều nơi dùng libghostty thì Ghostty GUI cũng càng ổn định hơn.
    Ghostty cho macOS hiện ghi nhận khoảng một triệu lượt tải mỗi tuần, và phiên bản 1.3 sẽ bổ sung các tính năng quan trọng như tìm kiếm (cmd+f), thanh cuộn, v.v.
    Ngoài ra, Ghostty hiện đã được hỗ trợ bởi một tổ chức phi lợi nhuận, và gần đây đã bắt đầu trả thù lao thực tế cho 4 cộng tác viên đầu tiên. Toàn bộ tài chính đều được công khai. Xem thêm tại Ghostty non-profit
    Tóm lại, đây là một giai đoạn rất thú vị đối với Ghostty.

    • Tôi tò mò việc quản lý một dự án khá lớn bằng Zig sẽ như thế nào. Gần đây ngôn ngữ Zig thay đổi khá nhiều, nên tôi muốn biết điều đó ảnh hưởng gì đến việc phát triển terminal emulator, và liệu độ khó bảo trì có tăng lên không
    • Thật thú vị khi thấy terminal emulator lại được chú ý trở lại sau sự xuất hiện của các công cụ như Claude Code. Trước đây thường nghe kiểu “sao lại làm terminal, phải nhìn về tương lai chứ”, còn giờ thì lại hay nghe nói mọi người dùng terminal nhiều hơn trình duyệt. Thế giới thay đổi thật nhanh
    • Tôi tò mò về tình trạng hiện tại của việc dùng libghostty trong trình duyệt. Có vài dự án cộng đồng biên dịch nó sang wasm, và tôi muốn đưa một số tính năng thiên về TUI lên web
    • Tôi là tác giả của Trolley. Nhờ libghostty mà việc triển khai tính năng terminal trở nên rất dễ. Phần lớn thời gian tôi chỉ dùng để xây thêm chức năng bên trên nó. Cảm ơn
    • Sáng nay tôi nghe phỏng vấn của The Pragmatic Engineer, và rất ấn tượng với những câu chuyện thời kỳ đầu của HashiCorp cùng quá trình IPO. Nếu không gặp người đã rút con chuột đó ra thì có lẽ cuộc đời đã khác. Ghostty là terminal chính của tôi suốt một năm qua
  • Tôi đã dùng qua nhiều terminal, và vì đang muốn rời khỏi Mac nên cũng thử Ghostty. Nhưng tôi bỏ cuộc vì thiếu tính năng tìm kiếm. WezTerm là cái gần với iTerm2 nhất và render cũng hoàn hảo. Alacritty thì bất tiện vì không có tab, còn tmux thì tôi ghét vì phải bấm quá nhiều phím. Tôi cũng đang cân nhắc các terminal chỉ dành cho Linux. Rất hoan nghênh gợi ý

    • Nên xem lại Kitty. Nó có cả chế độ terminal kiểu quake và có thể mở rộng bằng kittens. Bản kế tiếp cũng dự kiến thêm cuộn mượt. Tôi cũng đánh giá cao nỗ lực chuẩn hóa bền bỉ của tác giả Kovid
    • Tôi không hẳn yêu tmux, nhưng nó hữu ích vì có thể dùng cùng một giao diện quản lý pane trên nhiều máy khác nhau. Đặc biệt là nhờ tích hợp với neovim nên tôi vẫn tiếp tục dùng
    • Tôi cũng đề xuất Foot terminal. Đây là terminal duy nhất có thời gian khởi động dưới 50ms. Tuy nhiên nó phù hợp hơn với môi trường window manager không cần tab
    • Ghostty cũng có tính năng scrollback. Chỉ cần chuyển sang bản build “tip” trong cấu hình. Nó rất ổn định và cũng đã sửa được nhiều lỗi
    • Terminology cũng đáng được nhắc đến. Nó dùng GUI dựa trên Enlightenment nhưng nhanh và nhiều tính năng. Greg Kroah-Hartman cũng đang dùng
  • Tôi đã tổng hợp các thread lớn trước đây về Ghostty.
    Ví dụ: AI Usage Policy, Ghostty 1.0, Ghostty non-profit, v.v.
    Đây là một kho timeline giúp xem toàn bộ quá trình phát triển của Ghostty trong nháy mắt

  • Tôi thích UI của Ghostty hơn Kitty rất nhiều. Nhưng nó thường xuyên bị lỗi hiển thị khi kết nối SSH. Vì vậy tôi vẫn dùng Kitty cho công việc qua SSH

    • Tôi cũng gặp vấn đề tương tự. Dù có chép term-info sang thì vẫn không giải quyết hoàn toàn. Ở góc độ người dùng đây là một trải nghiệm khá bất tiện
    • Ở bản mới nhất, có thể khôi phục bằng cách chạy reset trong command palette. Gán nó vào phím tắt sẽ tiện hơn
    • Cũng có người hỏi UI của Kitty là gì. Tức là họ thấy nhận xét rằng UI của Ghostty tốt hơn có phần hơi mơ hồ
  • Tôi đã thử Ghostty từ sớm nhưng bỏ cuộc vì không có tìm kiếm bằng CMD+F. Đây là tính năng rất cần khi tail log

    • Các bản tip gần đây đã có sẵn tính năng tìm kiếm. Xem issue #189tweet của Mitchell. Dự kiến sẽ có chính thức trong Ghostty 1.3
  • Tôi nghĩ sự tôn sùng công cụ (fetishization) là đặc trưng của tư duy nghiệp dư. Điều quan trọng không phải công cụ mà là kỹ năng và sự sáng tạo.

    • Nhưng công cụ thay đổi theo workflow, nên việc người dùng mới thử nghiệm là điều tự nhiên. Bản thân tôi sau khi tìm được bộ vim+tmux thì cũng không còn chạy theo công cụ mới nữa
    • Đúng là người mới thường ám ảnh với trang bị, nhưng cả chuyên gia cũng bàn về các đánh đổi kỹ thuật của công cụ. Đó là một cuộc trò chuyện hữu ích
    • Tôi nhớ đến giai thoại Charlie Parker từng chơi xuất sắc bằng saxophone nhựa. Cuối cùng thì kỹ năng mới là thứ quan trọng (bài liên quan)
    • Nhưng cũng có ý kiến cho rằng sáng tạo, ánh sáng và bố cục suy cho cùng cũng là một phần của công cụ
    • Càng lớn tuổi càng thấy khó hơn để giữ được đam mê so với việc tranh luận mấy chuyện này
  • Ghostty có vấn đề làm top, ncdu... bị lỗi khi dùng qua SSH. Phải chỉnh $TERM. Cũng hơi tiếc là nó không có tính năng chuyển toàn màn hình tạm thời như iTerm

    • Có thể giải quyết bằng phím tắt toggle_split_zoom (cmd+shift+enter). Nó giống hệt iTerm. Cũng có đề xuất thêm chức năng phóng to bằng nhấp đúp
    • Việc dùng TERM riêng là chủ đích trong thiết kế. Có thể xử lý bằng cách chỉnh terminfo
    • Kitty hay urxvt cũng từng có vấn đề tương tự. Có vẻ đây là vấn đề cấu trúc của toàn bộ hệ sinh thái terminal
    • Giá mà $TERMcơ chế fallback kiểu ‘ghostty:xterm-256color’ thì tốt, nhưng có lẽ giờ đã muộn
    • Dùng qua SSH vẫn thường xuyên bị lỗi. iTerm thì cứ thế là chạy tốt
  • Nếu muốn tắt ligature như != trong Ghostty, chỉ cần thêm đoạn sau vào file cấu hình

    font-feature = -dlig
    font-feature = -liga
    font-feature = -calt
    
    • Trong Ghostty 1.3, một số ligature sẽ được tắt mặc định
    • Hoặc dùng font 0xProto thì sẽ giải quyết khá tự nhiên. Rất đáng khuyên dùng
  • Khi kết nối qua SSH, một số chương trình (ví dụ: less) không nhận ra Ghostty. Nhưng có thể khắc phục dễ dàng bằng thiết lập terminfo. Hy vọng sau này các bản phân phối Linux sẽ đưa nó vào mặc định

    • Dù vậy, cũng có ý kiến cho rằng các vấn đề liên quan đến SSH trông giống một lỗi thiết kế nghiêm trọng
    • Tôi thấy buồn cười với cách tài liệu viết kiểu “thế giới đã cũ kỹ nên Ghostty không khớp”. Nhưng việc phải thêm cấu hình vào máy chủ từ xa mỗi lần như vậy đúng là bất tiện trong môi trường làm việc thực tế
  • Tôi tò mò độ trễ đầu vào (latency) thế nào. xterm vẫn là nhanh nhất

    • Theo benchmark này, Ghostty có độ trễ đầu vào cao nhất. Xem thảo luận liên quan ở đây
    • Ngược lại, tôi lại ngạc nhiên vì hóa ra có thể làm được nhiều thứ đến vậy với terminal
    • Nếu xét theo throughput, Ghostty nhanh tương tự Alacritty và Ptyxis nhờ tăng tốc GPU
    • Kitty có thể phản hồi nhanh hơn nếu chỉnh cấu hình
      repaint_delay 5
      input_delay 1
      sync_to_monitor no
      
    • Trên màn hình 240Hz của tôi, độ trễ từ nhập đến hiển thị khá dễ nhận ra. Vì thế tôi lại quay về terminal khác