LINUX.ORG.RU

Ghostty 1.0 👻

 , , ,

Ghostty 1.0 👻

2

5

На днях вышла первая версия Ghostty, одного из самых быстрых эмуляторов терминала из существующих. Reddit и многие тематические каналы на YouTube уже успели окрестить его лучшим. На Github проект за короткий период собрал >15k ⭐.

Особенности:

  • Мультиплатформенный.
  • Написан на набирающем популярность языке программирования Zig.
  • Использует нативный UI (в Linux требует наличия GTK 4) и GPU-ускорение.
  • Не требует предварительной конфигурации.
  • Автоматически интегрируется с шеллом (поддерживает bash, zsh, fish и экзотический elvish).
  • Имеет вкладки и разделение окна.
  • Поддерживает лигатуры и другие настройки шрифтов.
  • Также автор настаивает на том, что данный эмулятор быстрее, чем kitty.
  • Поддерживает вывод изображений через протокол того же kitty.
  • Имеет 344 встроенные темы.

Установка:

# Arch Linux
sudo pacman -S ghostty

# MacOS
brew install --cask ghostty

Просмотр тем:

ghostty +list-themes

Пример конфига:

~/.config/ghostty/config

font-family = "JetBrainsMono Nerd Font Mono"
theme = tokyonight
background-opacity = 0.9

>>> Официальный сайт

★★

Проверено: dataman ()
Последнее исправление: dataman (всего исправлений: 6)

Собрал с glfw вместо gtk. Действительно шустрый. Но, блин, 26 мегабайт эльф. Что туда понапихано?

imul ★★★★★
()

попробовал пару дней поюзать, но каких-то киллер фич по сравнению с iterm2 не увидел. Визуально какого-то сильного ускорения не видно, хотя iterm2 по всяким тестам один из самых тормозных.

Зато криво обрабатываются ctrl+ хоткеи в русской раскладке(решается через keybinding) и полностью отсутствует поиск (не решается никак)

user_undefined
()
Ответ на: комментарий от FishHook

Берешь и открываешь несколько окон, если вдруг надо

Не всем заходит тайлинг. Как по мне, так кроме как для работы в нескольких консолях, тайлинг более ни для чего и не удобен. Тайлинг встроенный в эмулятор терминала решает проблему - можешь работать в любимом, прости Господи, гноме, и тайлить консольки.

Дело не в тайлинге. Дело в том, что современные т.н. менеджеры окон свою единственную работу – управления окнами на экране – делают настолько херово, что приходится костыли в сами приложения встраивать. Казалось бы, почему не сделать табы на уровне WM один раз и не пердолиться с этим в каждой проге? Но нет, это слишком сложно. Аналогично со склейкой нескольких окон в одно.

hateyoufeel ★★★★★
()
Ответ на: комментарий от hateyoufeel

Казалось бы, почему не сделать табы на уровне WM один раз и не пердолиться с этим в каждой проге?

Не надо, пожалуйста. У меня памяти не хватит каждый файл в отдельном экземпляре Idea открывать.

FishHook
()
Ответ на: комментарий от FishHook

У меня памяти не хватит каждый файл в отдельном экземпляре Idea открывать.

Идея не умеет в несколько окон? Вот это говнософтина! Переходи на emacs, в нём всё норм.

hateyoufeel ★★★★★
()

Странный проект: первый релиз, куча багов на гитхабе, функционал +/- ничем не отличается от других проектов, бенчмарков - нет. Но уже «все назвали самым-самым…» и даже худо-бедно сайтик запилили. Что-то мне подсказывает, что все эти «все» это zig-фанбои.

bdrbt
()
Ответ на: комментарий от bdrbt

Что-то мне подсказывает, что все эти «все» это zig-фанбои.

По мне так zig-фанбоев сильно меньше, чем пользователей макоси.

Тут один жалуется на артефакты отрисовки, другой жалуется на мыло со шрифтами, а там в интернетах все безумно счастливы. Странно.

Собственно, быть zig-фанбоем это нормально. Zig как язык программирования потрясающий. Жаль, чтобы понять его красоту нужно предварительно повидать некоторое дерьмо.

sarumeister
()
Ответ на: комментарий от hateyoufeel

Идея не умеет в несколько окон?

Пошёл проверил, оказывается умеет.

Переходи на emacs, в нём всё норм.

в нем все норм, потому что он не умеет нихрена. Ваш экскаватор жрёт много солярки? Переходите на лопаты фирмы «Лох» - нулевое потребление углеводородов, легкость в управлении, минимализм и плавная кривая обучения!

FishHook
()
Ответ на: комментарий от RealMrSugoma

Будь на GTK 2/3 — было бы нужно

Зачем? Эмулятору терминала в принципе GTK любой версии как собаке пятая нога.

CrX ★★★★★
()
Ответ на: комментарий от RealMrSugoma

жирными контекстными меню и жирными меню File, Edit

Это всё тоже в эмуляторе терминала в принципе не нужно. Ни жирное, ни постное :)

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от sarumeister

Тут один жалуется на артефакты отрисовки, другой жалуется на мыло со шрифтами, а там в интернетах все безумно счастливы. Странно.

https://github.com/ghostty-org/ghostty/issues?q=is%3Aissue%20state%3Aopen%20type%3ABug

Да как-бы там таких жалоб на отрисовку, мыло, некорректный подсчёт размера и высоты строк, потери фокуса и т.д. немало, причём некоторые ошибки прям очень «смешные». Вангую, что когда их всех устранят - он станет не «не самым быстрым», а может даже и «самым не быстрым».

bdrbt
()
Ответ на: комментарий от Harliff

Чем оно лучше именно в плане юзабилити?

Если только режимом показа миниатюр всех вкладок, может быть полезно при большом количестве вкладок в 1 окне. Больше ничего не нашёл.

Ja-Ja-Hey-Ho ★★★★★
()
Ответ на: комментарий от FishHook

в нем все норм, потому что он не умеет нихрена. Ваш экскаватор жрёт много солярки? Переходите на лопаты фирмы «Лох» - нулевое потребление углеводородов, легкость в управлении, минимализм и плавная кривая обучения!

Ты не шаришь. Емакс умеет куда больше чем идея.

hateyoufeel ★★★★★
()

очередное gtk-говно с миллионом зависимостей хайпануло у идиотов.

Lrrr ★★★★★
()

Я не знаю как они это сделали, но у меня каждое закрытие (!) вкладки приводит к утечке ~20 Мб памяти 🤦‍♂️

Ja-Ja-Hey-Ho ★★★★★
()
Ответ на: комментарий от hateyoufeel

Ты не шаришь. Емакс умеет куда больше чем идея.

хоть одну киллер фичу имакса можно в студию?

вангую, сейчас на свет явится ""у""чий орг-мод

FishHook
()

Ставил несколько модных терминалов на попробовать - kitty, warp, alacritty, tabby - последний показался самым интересным. Этот тоже попробовал, но пока ничего кроме мерзкого CSD в нём не увидел.

overmind88 ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

Я не думаю, что этот термин уже уместен. 2011 уже давно ушёл. Где эти хипстеры? Я бы называл их альтернативно технически одарёнными.

mamina_radost
()
Ответ на: комментарий от FishHook

хоть одну киллер фичу имакса можно в студию?

Ваще легко. В нём можно одновременно писать код на нескольких языках без необходимости покупать сраные clion или pycharm в дополнение к идее.

hateyoufeel ★★★★★
()
Ответ на: комментарий от hateyoufeel

В нём можно одновременно писать код на нескольких языках без необходимости покупать сраные clion или pycharm в дополнение к идее.

Сразу через месяц настройки :D

bdrbt
()
Ответ на: комментарий от hateyoufeel

Казалось бы, почему не сделать табы на уровне WM один раз и не пердолиться с этим в каждой проге? Но нет, это слишком сложно.

Сложно для юзера. Если бы у приложений не было нативных табов, то ещё куда ни шло. А так получается 3 слоя управления разнородными окнами (окно-контейнер -> вложенные окна -> окна приложения). Слишком заморочено. Но идеологически конечно правильнее группировать окна на уровне wm. Просто у нас весь гуй родом из винды, где каждый сам себе wm. Вот так и живем.

bread
()
Ответ на: комментарий от bdrbt

«Лучше весь день потерять, потом за 5 минут долететь» (c)

Да, в оригинале это лютый сарказм, но здесь вполне может быть правдой - я похожих примеров в мире opensource-а видал много.

Насчет самого emacs я правда хз, как-то ни он ни vi у меня не прижились - для чего-то мелкого есть nano(собственно большую часть кода я пишу именно им), а для крупного - можно и IDE какую-нибудь расчехлить.

Pinkbyte ★★★★★
()
Ответ на: комментарий от hateyoufeel

Во-первых, нет, не надо ничего покупать для питона, ставишь бесплатное расширение и вперед. Про Си не знаю, если честно, не занимаюсь подобным.

Во-вторых, речь была про «умеет куда больше», а не про бесплатность. Имакс отсосёт с причмоком хоть у пайшарма, хоть у силайна. Если у тебя нищеброда нет денег на нормальный комплект инструментов, это не делает бесплатное говно, которое кое-как справляется с задачей, лучше продвинутого профессионального ПО.

как и ожидалось, вместо конкретных фичей, страндартный для мамкиного линуксоида высер - ой, оно проприетарное, ой оно платное, ой-ой-ой. А все-таки, по факту будет что-то? Именно в плане «умеет»?

FishHook
()
Ответ на: комментарий от Pinkbyte

Да сам неовимом пользуюсь, просто не удержался. К тому же уже не помню когда переписывал конфиг с нуля, вроде в момент, когда луа-конфиг стал в нём мэйнстримом.

bdrbt
()
Ответ на: комментарий от FishHook

Во-первых, нет, не надо ничего покупать для питона, ставишь бесплатное расширение и вперед. Про Си не знаю, если честно, не занимаюсь подобным.

Не, не ставишь. Оно урезанное донельзя. Тут основная претензия не в необходимости платить, а в том, что приходится запускать отдельный инструмент. В итоге I из IDE почему-то пропадает, потому что интеграции нету.

Во-вторых, речь была про «умеет куда больше», а не про бесплатность. Имакс отсосёт с причмоком хоть у пайшарма, хоть у силайна. Если у тебя нищеброда нет денег на нормальный комплект инструментов, это не делает бесплатное говно, которое кое-как справляется с задачей, лучше продвинутого профессионального ПО.

Так я пользовался идеей и всеми этими пайчармами. Они реально сосут. Даже за деньги.

К слову, забавный такой факт: почему-то VSCode намного популярнее высеров JetBrains. Почему же так вышло?

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от Shadow

Насколько он быстрее xterm?

Я измерил Typometer'ом. Ghostty оказался намного медленней, чем xterm. Быстрее него так ничего и не сделали.

posixbit ★★
()
Ответ на: комментарий от hateyoufeel

Не, не ставишь. Оно урезанное донельзя. Тут основная претензия не в необходимости платить, а в том, что приходится запускать отдельный инструмент. В итоге I из IDE почему-то пропадает, потому что интеграции нету.

Нет, именно что ставлю. Конкретно в ИДЕА я лично своими руками и головой работаю над проектром где есть код на питоне, котлине, джаве и тайп-скрипт. Для души немного прогаю на расте. Все в одной ИДЕшке Idea Ultimate. И нет оно не урезанное, это вранье.

FishHook
()
Ответ на: комментарий от hateyoufeel

почему-то VSCode намного популярнее высеров JetBrains. Почему же так вышло?

пользователей самогона тоже больше чем пользователей марочного коньяка

FishHook
()
Ответ на: комментарий от FishHook

Все в одной ИДЕшке Idea Ultimate. И нет оно не урезанное, это вранье.

Оно урезанное и вдобавок ещё и тормозное.

почему-то VSCode намного популярнее высеров JetBrains. Почему же так вышло?

пользователей самогона тоже больше чем пользователей марочного коньяка

Да-да-да, конечно. Мне нравится как фанаты идеи работают бесплатными рекламщиками для JetBrains. Я бы за такое денег попросил, а ты вот готов за так трудиться!

hateyoufeel ★★★★★
()
Ответ на: комментарий от hateyoufeel

Так я пользовался идеей и всеми этими пайчармами.

Я все еще жду, что же такого имакс «умеет». Я же тоже пользовался имаксом. И я знаю, что нету, просто не существует физически ни одного плагина для имакса, который умеет вменяемо в питон, хотя бы тривиальные вещи, хотя бы автодополнять питоний код. Даже такая тривиальная вещь, как автоимпорт модулей, для имакса задача сверхестественная. Дебаг просто угробищный. Он лагает даже на простом коде, а на многопроцессной приложеньке он умирает и ложит всё. Поддержка юнит тестов какая-то просто смехотворная, её можно сказать нет совсем. Может имакс показать дифф между двумя значениями в ассерте? Нет, конечно, мамкиным хакерам такая функциональность не нужна, какие еще тесты. Про джаву в имаксе можно просто забыть сразу. Может имакс отдебажить сприг-бут приложение в докер-контейнере? Могу я скопировать код и вставить в его в другой модуль так чтобы автоматически разрезолвились зависимости? Умеет имакс автоматически сконвертировать вставляемый из буфера обмена код джава в код котлин? Сравнивать имакс и ИДЕА просто несерьезно, это вещи из разных не просто весовых категорий, они из разных видов спорта.

FishHook
()
Последнее исправление: FishHook (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Оно урезанное и вдобавок ещё и тормозное.

конкретику, камрад, подкинь фактов. Что конкретно не умеет делать с питоном Идея Ультимейт, что умеет Пайшарм.

FishHook
()
Ответ на: комментарий от hateyoufeel

@hateyoufeel

https://i.postimg.cc/05VYTQZT/Screenshot-2024-12-30-at-15-51-05.png

Challenge accepted? Покажешь хоть что-то близкое по функционалу в имаксе? Только не надо аппелировать к тому, что конкретно тебе подобные интеллектуальные фишки не нужны, и ты сам гений и поклонник минимализма. Мы не про личные предпочтения говорим, а сравниваем кто что «умеет». Идея умеет вот так. Покажи, как умеет имакс.

FishHook
()
Ответ на: комментарий от FishHook

Доки во всплывающем окне? Это всё что ты смог придумать? Погуглил бы, позорище.

https://github.com/emacs-lsp/lsp-ui?tab=readme-ov-file

Грепать по lsp-ui-doc.

Или, если тебе предложения рефакторинга нужны, LSP это всё тоже умеет. Было бы интереснее с тобой спорить, если бы ты реально умел в емакс, а не просто орал тут «нинужно».

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от Smacker

Быстрота это вообще ничто, у в стандартный терминал GNOME иногда строка не помещается, все содержимое окна рас^орашивает, и еще были какие то вопросы к нему. Надо бы оценить данное поделие.

uin ★★★
()
Ответ на: комментарий от hateyoufeel

Это не доки, глупыш, ты включи верхнюю голову и внимательней посмотри

FishHook
()
Последнее исправление: FishHook (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Было бы интереснее с тобой спорить

Ты даже и не пытался еще спорить. Ты заявил бездоказательную лажу. Брось мне вызов, покажи что именно умеет имакс, чего я не повторю в Идеа. Я даже готов согласиться с тем, что она кастрированная относительно питона. Ну и отлично, тем легче тебе будет показать могущество имакса. Давай, смелее. Пример того, как демонстрировать фичи я дал.

FishHook
()
Ответ на: комментарий от uin

у в стандартный терминал GNOME иногда строка не помещается, все содержимое окна рас^орашивает

В mate-terminal тоже расπ♪рашивает, но на мой поверхностный взгляд, дело в наличии цвета через ANSI коды в расπ♪рашиваемых строках.

А скорость терминала это вообще Ъ-ржач. Нашли, что оптимизировать.

Smacker ★★★★★
()
Ответ на: комментарий от Smacker

А скорость терминала это вообще Ъ-ржач. Нашли, что оптимизировать.

видимо для кого-то это стало очень важно, раз последние годы стали часто проскакивать новости с новыми «супер быстрыми» терминалами и тестами за сколько мс вывести десятки гб текста

вот сколько пробовал новые терминалы так и не заметил разницы и возвращался обратно на iterm

user_undefined
()
Ответ на: комментарий от user_undefined

видимо для кого-то это стало очень важно, раз последние годы стали часто проскакивать новости с новыми «супер быстрыми» терминалами и тестами за сколько мс вывести десятки гб текста

А, ну так тогда понятно — за всем этим стоит индустрия Школ Скорочтения. Книжки читать на скорость стало не модно, они нашли новый рычаг влияния на массы.

Smacker ★★★★★
()
Ответ на: комментарий от Ja-Ja-Hey-Ho

До закрытия очередной вкладки:

$ cat /proc/$(pgrep ghostty)/smaps |grep -A1 '\\[heap]'
55a31d5b7000-55a327256000 rw-p 00000000 00:00 0                          [heap]
Size:             160380 kB

После:

> cat /proc/$(pgrep ghostty)/smaps |grep -A1 '\\[heap]'
55a31d5b7000-55a3287e1000 rw-p 00000000 00:00 0                          [heap]
Size:             182440 kB

По ~22060 KB за раз получается.

Ja-Ja-Hey-Ho ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.