18 poin oleh GN⁺ 2024-12-27 | 4 komentar | Bagikan ke WhatsApp
  • Emulator terminal lintas platform yang cepat dan kaya fitur. Mendukung UI native di Mac/Linux dan menggunakan akselerasi GPU
  • Menyediakan keybinding yang fleksibel, beragam tema warna, dan banyak opsi konfigurasi

Fitur utama

1. Biner native

  • Berjalan sebagai aplikasi native di macOS dan Linux
    • macOS: GUI ditulis dengan Swift dan menggunakan AppKit serta SwiftUI
    • Linux: GUI ditulis dengan Zig dan menggunakan GTK4 C API
  • Menggunakan komponen UI khas tiap platform untuk mewujudkan fitur seperti tab, split view, pesan kesalahan, dan lainnya
  • Mendukung pintasan keyboard dan mouse standar sesuai konvensi platform
  • Integrasi fitur khusus per platform
    • macOS: Quick Look, Force Touch, secure input API, pemulihan status jendela saat restart, dan lainnya

2. Beragam fitur terminal dan aplikasi

  • Fitur terminal:
    • Mendukung Kitty graphics protocol, notifikasi mode terang/gelap, hyperlink, dan lainnya
    • Memungkinkan pemanfaatan lebih banyak fitur di aplikasi terminal seperti Neovim dan Zellij
  • Fitur aplikasi:
    • Tab native, split view, terminal dropdown untuk macOS, peralihan mode terang/gelap, dan lainnya

3. Kinerja

  • Ghostty dirancang dengan target performa setara emulator terminal tercepat
  • Kompetitif di berbagai metrik performa dan dioptimalkan agar tidak terasa lambat
    • Contoh: kecepatan startup, kecepatan scroll, throughput IO, frame rate, dan lainnya
  • Pengguna awal menilai peningkatan performa Ghostty terasa jelas dalam penggunaan sehari-hari

Arsitektur

  • Inti Ghostty adalah libghostty, library kompatibel C-ABI lintas platform
    • Menyediakan emulasi terminal, pemrosesan font, dan rendering
  • Aplikasi GUI berjalan di atas libghostty
    • Aplikasi macOS: ditulis dengan Swift, menggunakan AppKit dan SwiftUI
    • Aplikasi Linux: ditulis dengan Zig, menggunakan GTK4 C API
  • Pemisahan yang jelas antara emulasi terminal dan GUI memungkinkan terbentuknya ekosistem tempat berbagai proyek emulator terminal dapat memanfaatkan libghostty
  • Tujuan ke depan:
    • Menstabilkan API libghostty dan merilisnya sebagai library mandiri

4 komentar

 
ahwjdekf 2025-02-03

Di lingkungan saya, wezterm mengalami lag saat digunakan, tetapi setelah beralih ke ghostty jadi lebih layak dipakai. Mungkin karena MB Pro saya sudah cukup tua, tetapi ghostty terasa jauh lebih mulus dan ringan.

 
ndrgrd 2024-12-28

Saya sedang mempertimbangkan untuk mencobanya, tetapi khusus di Linux apakah ada keunggulan yang benar-benar menonjol dibandingkan WezTerm?

 
redreamer 2024-12-28

Seperti Wezterm, pengetikan bahasa Korea juga berjalan dengan baik. Terutama di Mac, saya juga suka karena font Korea bisa terlihat berbeda tergantung komposisi NFC. Rasanya pembaruan Wez agak mandek.

 
GN⁺ 2024-12-27
Opini Hacker News
  • Ghostty adalah hasil dari kerja penuh semangat selama dua tahun terakhir, dan semoga banyak orang yang menggunakannya bisa merasakan cinta dan upaya yang dicurahkan di dalamnya. Ghostty tidak mengklaim lebih unggul dibanding terminal lain, karena masing-masing punya tujuan desain dan kompromi yang berbeda. Ada banyak terminal hebat seperti Kitty, WezTerm, Foot, iTerm2, dan Rio.

  • Ghostty cepat dan berkinerja tinggi, terutama saat menampilkan banyak informasi debugging sehingga terminal tidak menjadi bottleneck. Ini membuat perbedaan besar pada sistem pengembangan.

  • Ghostty terdiri dari kode Zig yang ditulis dengan sangat baik, dengan rendering teks yang akurat dan semua fitur yang dibutuhkan. Sebagian kode dari Bun.stringWidth digunakan.

  • Ada yang penasaran apakah Ghostty memiliki konsep Session/Workspace, dan tampaknya ada hal yang bisa dipelajari dari cara integrasi Alacritty dan tmux.

  • Ghostty memiliki fitur tersembunyi bernama "quake mode", yang bisa diatur dengan key binding tertentu di macOS. Tidak ada opsi untuk menetapkan tinggi default jendela "quick terminal", tetapi ukurannya bisa disesuaikan dengan menyeret jendelanya.

  • Setelah mencoba berbagai alat terminal emulator, seseorang memilih wave terminal, dan membagikan daftar alat yang bisa digunakan di MacOS dan Linux. Warp tidak digunakan karena merupakan produk VC.

  • Situs komunitas yang membantu membuat konfigurasi Ghostty sangat berguna.

  • Ghostty adalah perangkat lunak open source berkualitas tinggi yang baru dirilis, dan memberi harapan akan masa depan tanpa langganan. Terima kasih kepada Mitchell.

  • Awalnya ada sikap skeptis terhadap istilah "platform-native UI", tetapi menarik karena di Linux menggunakan GTK dan di MacOS menggunakan SwiftUI. Mencoba terminal emulator baru selalu menyenangkan. Sayangnya, font bitmap tidak didukung.

  • Postingan blog yang menjelaskan sebagian keajaiban Ghostty cukup menarik.