Ghostty Nightly тепер підтримує розширення 'click_events', яке ввела Кітті і підтримує Фіш. Якщо ви використовуєте Fish 4.1+, ви можете натиснути (без модифікаторів!) будь-де на підказці, щоб рухати мишу. Я вважаю, що Ghostty — перший, хто підтримує це розширення поза межами Кітті. Наскільки я можу знайти, єдина оболонка, яка це підтримує, — Fish (4.1+), а єдиний термінал, який підтримував це раніше, — Kitty. Було б чудово, якби більше екосистем обох екосистем підтримували це. Інші термінали підтримують переміщення курсора мишкою в певній мірі (Ghostty входить з версії 1.0), але роблять це іншим, більш крихким механізмом: коли ви клацаєте, він просто обчислює кілька синтетичних натискань лівої стрілки, щоб удавати, що рухаєте курсор. Це дуже крихко, бо не може врахувати поведінку оболонки, особливо щодо інденції, багаторядковості, і якщо ви зовсім не на підказці... Розширення 'click_events' дозволяє Ghostty знати, коли ви на рядку запиту, і працює шляхом кодування події кліку миші, перебуваючи на рядку запиту до оболонки. Оболонка тоді бере на себе всю логіку руху курсора, що має найбільший сенс! PR:
@Tyriar Зверніть увагу, що нам довелося додати власне нестандартне (наразі незадокументоване) розширення до OSC133 для bash — 'redraw=last', оскільки bash підтримує лише перемалювання фінального рядка запиту. Коли це є, Ghostty очищає лінію LAST лише при зміні розміру. Тільки Bash це потребує.
96