-
Notifications
You must be signed in to change notification settings - Fork 0
Log (RU)
English · Русский
Kitten для kitty: оверлей просмотра истории git — экран списка коммитов (текущая ветка или все ветки, с графом веток) и по выбранному коммиту его изменения в двухпанельном виде (дерево файлов + unified diff), как в review, с подсветкой синтаксиса, поиском и копированием в буфер для вставки в промт Claude.
Двухпанельная diff-механика — тот же базовый класс, что у review; здесь добавлен экран списка коммитов, граф веток и панель подробностей.

-
Список коммитов текущей ветки; переключатель
a— показать все ветки (--all). -
Граф веток слева (тумблер
g) — цветные лейны слияний/ответвлений, как в IDE. -
Панель подробностей справа (тумблер
i): полное сообщение коммита, автор, почта, дата, коммиттер (если отличается) и список веток, в которых есть коммит. -
Ref-метки в строке: локальные ветки,
origin & name(схлопнутая пара локаль+удалёнка), удалённые и теги — каждая своим цветом. -
git fetchпрямо из оверлея (f) — подтянуть удалёнки и перечитать список. -
git push(p) — запушить текущую ветку после подтвержденияy. -
Копировать hash выбранного коммита (
⌘c) — для вставки в промт/команду. - Ленивая подгрузка: коммиты тянутся пачками по мере докрутки вниз.
-
Фильтр (
/) — по subject, короткому hash и автору. - По выбранному коммиту (
Enter/→) — его изменения относительно первого родителя: дерево файлов + unified diff с подсветкой синтаксиса, word-diff, sticky-заголовком, режимом «только hunk'и ↔ весь файл» (a), прыжками по изменениям ([/]), горизонтальным скроллом (h/l) и поиском (/,n/N). - Русская раскладка шорткатов (по позиции клавиши).
Папка проекта и git-корень определяются по cwd окна, из которого нажат хоткей.
familiar enable logПерезагрузить конфиг: Cmd+Ctrl+, (или перезапустить kitty). Открыть: cmd+shift+l.
Минимальный fallback — ручной map в ~/.config/kitty/kitty.conf (или
include-файле):
map cmd+shift+l kitten /path/to/familiar/plugins/log.pyВ отличие от familiar enable, голый map лишён toggle-закрытия, защиты от
повторного открытия оверлея поверх самого себя, кириллических дублей клавиш и
проброса cmd+c / cmd+shift+c для копирования внутри оверлея.
Список коммитов
| Клавиша | Действие |
|---|---|
↑/↓ |
навигация по коммитам |
PgUp PgDn
|
страница вверх/вниз |
Home / End
|
в начало / конец списка |
Enter →
|
открыть изменения коммита |
⌘c |
скопировать hash выбранного коммита |
f |
git fetch — подтянуть удалёнки и перечитать |
p |
git push текущей ветки; подтверждение — y. Ветку без upstream создаёт на origin и привязывает к нему. Подсказка видна, только пока есть незапушенное |
a |
текущая ветка ↔ все ветки (--all) |
g |
граф веток вкл/выкл |
i |
панель подробностей вкл/выкл |
/ |
фильтр по subject / hash / автору |
q Esc
|
выход |
Дерево файлов коммита (Enter/→ из списка)
| Клавиша | Действие |
|---|---|
↑/↓ |
навигация по файлам (дифф справа обновляется) |
g / G
|
первый / последний файл |
Enter Space
|
свернуть/развернуть папку |
→ Tab
|
перейти в дифф |
u |
показать/скрыть «шумные» папки (.idea, node_modules, …) |
⌘c |
скопировать @путь файла/папки |
← Esc
|
назад к списку коммитов |
Дифф коммита (→/Tab из дерева)
| Клавиша | Действие |
|---|---|
↑/↓ |
курсор по строкам диффа |
g / G
|
к началу / концу диффа |
Enter |
на разделителе ┈ — раскрыть скрытые строки контекста |
[ / ]
|
предыдущее / следующее изменение |
PgUp PgDn
|
скролл диффа |
h / l
|
горизонтальный скролл (длинные строки) |
a |
режим просмотра: только hunk'и ↔ весь файл целиком |
v |
вид панели: unified diff ↔ финальный код (как в IDE) |
/ n/N
|
поиск по диффу и переходы по совпадениям |
⌘c |
скопировать выделение (или строку под курсором) |
⌘shift+c |
скопировать @путь#L42 (#L42-58 для выделенного диапазона) |
← Tab
|
назад в дерево |
Esc |
снять выделение/поиск → назад в дерево → назад к списку |
Мышь: клик по коммиту — выбрать, повторный — открыть; колесо — прокрутка списка.
В диффе — как в review (клик — курсор, клик по ┈ — раскрыть, выделение с зажатым Shift).
В обеих панелях есть полоса прокрутки; колесо скроллит панель под курсором, не двигая выделение.
Статусы файлов и «шумные» папки — как в review. В отличие от review, log — просмотр только для чтения: без аннотаций, refresh и открытия в редакторе.
Из истории удобно сослать Claude Code на конкретное место в коде:
-
⌘cкладёт hash коммита (в списке), @-упоминание@путь/до/файла.py(в дереве) или выделение / строку под курсором (в диффе). -
⌘shift+cв диффе кладёт@путь/до/файла.py#L42, а при выделении диапазона мышью —#L42-58.
Пути — от корня репозитория, в том виде, какого ждёт Claude Code: он разрешает @путь
относительно директории, из которой запущен. Навёлся на строку в диффе → ⌘shift+c →
Cmd+V в промт, и не нужно пересказывать словами, где смотреть.
English
Русский