4 4
5# Настройте ваш терминал для Claude Code5# Настройте ваш терминал для Claude Code
6 6
7> Исправьте Shift+Enter для разрывов строк, получайте звуковой сигнал терминала когда Claude завершает работу, настройте tmux, сопоставьте цветовую тему и включите режим Vim в CLI Claude Code.7> Исправьте Shift+Enter для новых строк, получайте звуковой сигнал терминала при завершении Claude, настройте tmux, сопоставьте цветовую схему и включите режим Vim в CLI Claude Code.
8 8
9Claude Code работает в любом терминале без конфигурации. Эта страница предназначена для случаев, когда что-то конкретное ведёт себя не так, как вы ожидаете. Найдите ваш симптом ниже. Если всё уже работает правильно, вам не нужна эта страница.9Claude Code работает в любом терминале без конфигурации. Эта страница предназначена для случаев, когда что-то конкретное ведёт себя не так, как вы ожидаете. Найдите вашу проблему ниже. Если всё уже работает правильно, вам не нужна эта страница.
10 10
11* [Shift+Enter отправляет вместо вставки разрыва строки](#enter-multiline-prompts)11* [Shift+Enter отправляет вместо вставки новой строки](#enter-multiline-prompts)
12* [Сочетания клавиш с клавишей Option ничего не делают на macOS](#enable-option-key-shortcuts-on-macos)12* [Сочетания клавиш с Option на macOS ничего не делают](#enable-option-key-shortcuts-on-macos)
13* [Нет звука или оповещения когда Claude завершает работу](#get-a-terminal-bell-or-notification)13* [Нет звука или оповещения при завершении Claude](#get-a-terminal-bell-or-notification)
14* [Вы запускаете Claude Code внутри tmux](#configure-tmux)14* [Вы запускаете Claude Code внутри tmux](#configure-tmux)
15* [Дисплей мерцает или позиция прокрутки прыгает](#switch-to-fullscreen-rendering)15* [Backspace удаляет целое слово на Windows](#fix-backspace-deleting-a-whole-word-on-windows)
16* [Вы хотите клавиши Vim в приглашении](#edit-prompts-with-vim-keybindings)16* [Дисплей мерцает или прокрутка истории прыгает](#switch-to-fullscreen-rendering)
17* [Вы хотите использовать клавиши Vim в приглашении](#edit-prompts-with-vim-keybindings)
17 18
18Эта страница посвящена тому, чтобы ваш терминал отправлял правильные сигналы в Claude Code. Чтобы изменить, на какие клавиши сам Claude Code реагирует, см. вместо этого [сочетания клавиш](/ru/keybindings).19Эта страница посвящена тому, чтобы ваш терминал отправлял правильные сигналы в Claude Code. Чтобы изменить, на какие клавиши реагирует сам Claude Code, см. вместо этого [сочетания клавиш](/docs/ru/keybindings).
19 20
20<h2 id="enter-multiline-prompts">21<h2 id="enter-multiline-prompts">
21 Ввод многострочных приглашений22 Ввод многострочных подсказок
22</h2>23</h2>
23 24
24Нажатие Enter отправляет ваше сообщение. Чтобы добавить разрыв строки без отправки, нажмите Ctrl+J или введите `\` и затем нажмите Enter. Оба варианта работают в каждом терминале без настройки.25Нажатие Enter отправляет ваше сообщение. Чтобы добавить разрыв строки без отправки, нажмите Ctrl+J или введите `\` и затем нажмите Enter. Оба способа работают в любом терминале без настройки.
25 26
26В большинстве терминалов вы также можете нажать Shift+Enter, но поддержка варьируется в зависимости от эмулятора терминала:27В большинстве терминалов вы также можете нажать Shift+Enter, но поддержка зависит от эмулятора терминала:
27 28
28| Терминал | Shift+Enter для разрыва строки |29| Терминал | Shift+Enter для новой строки |
29| :---------------------------------------------------------------------- | :------------------------------------------------- |30| :---------------------------------------------------------------------- | :------------------------------------------------- |
30| Ghostty, Kitty, iTerm2, WezTerm, Warp, Apple Terminal, Windows Terminal | Работает без настройки |31| Ghostty, Kitty, iTerm2, WezTerm, Warp, Apple Terminal, Windows Terminal | Работает без настройки |
31| VS Code, Cursor, Devin Desktop, Alacritty, Zed | Запустите `/terminal-setup` один раз |32| VS Code, Cursor, Devin Desktop, Alacritty, Zed | Запустите `/terminal-setup` один раз |
32| gnome-terminal, JetBrains IDEs такие как PyCharm и Android Studio | Недоступно; используйте Ctrl+J или `\` затем Enter |33| gnome-terminal, JetBrains IDEs такие как PyCharm и Android Studio | Недоступно; используйте Ctrl+J или `\` затем Enter |
33 34
34Для VS Code, Cursor, Devin Desktop, Alacritty и Zed, `/terminal-setup` записывает Shift+Enter и другие сочетания клавиш в файл конфигурации терминала. Существующие привязки остаются на месте; если вы видите сообщение, такое как `VSCode terminal Shift+Enter key binding already configured`, никаких изменений не было сделано. Запустите `/terminal-setup` непосредственно в хост-терминале, а не внутри tmux или screen, так как ему нужно записать в конфигурацию хост-терминала.35Для VS Code, Cursor, Devin Desktop, Alacritty и Zed, `/terminal-setup` записывает сочетание клавиш Shift+Enter в файл конфигурации терминала. При первом запуске вы видите подтверждение, например `Installed VSCode terminal Shift+Enter key binding`. Существующие сочетания клавиш остаются на месте; если вы видите сообщение, например `VSCode terminal Shift+Enter key binding already configured`, изменений не было внесено. Запустите `/terminal-setup` непосредственно в хост-терминале, а не внутри tmux или screen, так как ему нужно записать в конфигурацию хост-терминала.
35 36
36В VS Code, Cursor и Devin Desktop, `/terminal-setup` также обновляет два параметра редактора: он устанавливает `terminal.integrated.gpuAcceleration` в `"off"` для предотвращения искажённого текста в интегрированном терминале и устанавливает `terminal.integrated.mouseWheelScrollSensitivity` для более плавной прокрутки в [полноэкранном режиме](/ru/fullscreen). Чтобы отменить изменение ускорения GPU, установите его обратно на `"auto"` и перезагрузите окно редактора.37В VS Code, Cursor и Devin Desktop, `/terminal-setup` также обновляет два параметра редактора: он устанавливает `terminal.integrated.gpuAcceleration` на `"off"` для предотвращения искажённого текста в интегрированном терминале и устанавливает `terminal.integrated.mouseWheelScrollSensitivity` для более плавной прокрутки в [полноэкранном режиме](/docs/ru/fullscreen). Чтобы отменить изменение ускорения GPU, установите его обратно на `"auto"` и перезагрузите окно редактора.
38
39В Zed, `/terminal-setup` обновляет ваш `keymap.json` на месте:
40
41* Если keymap уже содержит сочетания клавиш и ни одно из них не является Terminal `shift-enter`, Claude Code сначала создаёт его резервную копию в том же каталоге, например `keymap.json.1a2b3c4d.bak`, затем объединяет сочетание клавиш Shift+Enter в ваш keymap, сохраняя ваши другие сочетания клавиш и комментарии
42* Если Claude Code не может прочитать или разобрать keymap, не может создать резервную копию или не может проверить объединённый результат, он [оставляет файл без изменений и выводит блок сочетания клавиш для добавления вручную](/docs/ru/errors#terminal-setup-left-your-zed-keymap-unchanged)
37 43
38Если вы работаете внутри tmux, Shift+Enter также требует [конфигурацию tmux ниже](#configure-tmux) даже когда внешний терминал её поддерживает.44Если вы работаете внутри tmux, Shift+Enter также требует [конфигурацию tmux ниже](#configure-tmux) даже когда внешний терминал её поддерживает.
39 45
40Чтобы привязать разрыв строки к другой клавише или поменять поведение так, чтобы Enter вставлял разрыв строки, а Shift+Enter отправлял, сопоставьте действия `chat:newline` и `chat:submit` в вашем [файле сочетаний клавиш](/ru/keybindings).46Чтобы привязать новую строку к другой клавише или поменять поведение так, чтобы Enter вставлял новую строку, а Shift+Enter отправлял, сопоставьте действия `chat:newline` и `chat:submit` в вашем [файле сочетаний клавиш](/docs/ru/keybindings).
41 47
42<h2 id="enable-option-key-shortcuts-on-macos">48<h2 id="enable-option-key-shortcuts-on-macos">
43 Включите сочетания клавиш Option на macOS49 Включение сочетаний клавиш с клавишей Option на macOS
44</h2>50</h2>
45 51
46Некоторые сочетания клавиш Claude Code используют клавишу Option, такие как Option+Enter для разрыва строки или Option+P для переключения моделей. На macOS большинство терминалов не отправляют Option как модификатор по умолчанию, поэтому эти сочетания клавиш ничего не делают, пока вы это не включите. Параметр терминала для этого обычно называется "Use Option as Meta Key"; Meta — это историческое имя Unix для клавиши, которая теперь называется Option или Alt.52Некоторые сочетания клавиш Claude Code используют клавишу Option, например Option+Enter для новой строки или Option+P для переключения моделей. На macOS большинство терминалов по умолчанию не отправляют Option в качестве модификатора, поэтому эти сочетания клавиш не работают, пока вы их не включите. Параметр терминала для этого обычно называется "Use Option as Meta Key"; Meta — это историческое название Unix для клавиши, которая теперь называется Option или Alt.
47 53
48<Tabs>54<Tabs>
49 <Tab title="Apple Terminal">55 <Tab title="Apple Terminal">
50 Откройте Settings → Profiles → Keyboard и установите флажок "Use Option as Meta Key".56 Откройте Settings → Profiles → Keyboard и установите флажок "Use Option as Meta Key".
51 57
52 Если вы приняли первое приглашение Claude Code, которое предлагало "Option+Enter для разрывов строк и визуального звонка", это уже сделано. Это приглашение запускает `/terminal-setup` для вас, что включает Option как Meta и переключает звуковой звонок на визуальную вспышку экрана в вашем профиле Apple Terminal.58 Если вы приняли приглашение Claude Code для первоначальной настройки терминала, это уже сделано. Это приглашение запускает `/terminal-setup` для вас, что включает Option как Meta и отключает звуковой сигнал в вашем профиле Apple Terminal.
59
60 В [режиме чтения с экрана](/docs/ru/accessibility) `/terminal-setup` оставляет параметр звонка без изменений, чтобы звонок терминала оставался слышимым. До версии 2.1.211 `/terminal-setup` отключал звонок даже в режиме чтения с экрана. Если более ранний запуск отключил звонок, включите его снова в Settings → Profiles → Advanced → "Audible bell".
53 </Tab>61 </Tab>
54 62
55 <Tab title="iTerm2">63 <Tab title="iTerm2">
59 </Tab>67 </Tab>
60 68
61 <Tab title="VS Code">69 <Tab title="VS Code">
62 Добавьте `"terminal.integrated.macOptionIsMeta": true` в ваши настройки VS Code.70 Добавьте `"terminal.integrated.macOptionIsMeta": true` в ваши параметры VS Code.
63 </Tab>71 </Tab>
64</Tabs>72</Tabs>
65 73
66Для Ghostty, Kitty и других терминалов ищите параметр Option-as-Alt или Option-as-Meta в файле конфигурации терминала.74Для Ghostty, Kitty и других терминалов ищите параметр Option-as-Alt или Option-as-Meta в файле конфигурации терминала.
67 75
68<h2 id="get-a-terminal-bell-or-notification">76<h2 id="get-a-terminal-bell-or-notification">
69 Получите звуковой сигнал терминала или уведомление77 Получение звонка терминала или уведомления
70</h2>78</h2>
71 79
72Когда Claude завершает задачу или делает паузу для приглашения разрешения, он отправляет событие уведомления. Отображение этого как звукового сигнала терминала или уведомления рабочего стола позволяет вам переключиться на другую работу, пока выполняется длительная задача.80Когда Claude завершает задачу или ждёт разрешения, и вы, похоже, отошли от терминала, он отправляет событие уведомления. Смотрите [когда срабатывает каждый тип уведомления](/docs/ru/hooks#notification) для точного времени. Отображение этого как звонка терминала или уведомления рабочего стола позволяет вам переключиться на другую работу, пока выполняется длительная задача.
73 81
74По умолчанию Claude Code отправляет уведомление рабочего стола только в Ghostty, Kitty и iTerm2. В других терминалах установите [`preferredNotifChannel`](/ru/settings#available-settings) на `"terminal_bell"` для звукового сигнала терминала или настройте [хук Notification](#play-a-sound-with-a-notification-hook) для пользовательского звука или команды.82По умолчанию Claude Code отправляет уведомление рабочего стола только в Ghostty, Kitty и iTerm2. В других терминалах установите [`preferredNotifChannel`](/docs/ru/settings-reference#preferrednotifchannel) на `"terminal_bell"` для звонка терминала, или настройте [Notification hook](#play-a-sound-with-a-notification-hook) для пользовательского звука или команды. Следующая запись параметров включает звонок терминала:
83
84```json ~/.claude/settings.json theme={null}
85{
86 "preferredNotifChannel": "terminal_bell"
87}
88```
75 89
76Уведомление рабочего стола достигает вашей локальной машины через SSH, поэтому удалённый сеанс всё ещё может вас оповестить. Ghostty и Kitty перенаправляют его в центр уведомлений вашей ОС без дополнительной настройки. iTerm2 требует, чтобы вы включили перенаправление:90Уведомление рабочего стола достигает вашей локальной машины через SSH, поэтому удалённый сеанс всё ещё может вас оповестить. Ghostty и Kitty перенаправляют его в центр уведомлений вашей ОС без дополнительной настройки. iTerm2 требует включения перенаправления:
77 91
78<Steps>92<Steps>
79 <Step title="Откройте параметры уведомлений iTerm2">93 <Step title="Откройте параметры уведомлений iTerm2">
85 </Step>99 </Step>
86</Steps>100</Steps>
87 101
88Если уведомления всё ещё не появляются, убедитесь, что ваше приложение терминала имеет разрешение на уведомления в настройках вашей ОС, и если вы работаете внутри tmux, [включите passthrough](#configure-tmux).102Если уведомления по-прежнему не появляются, убедитесь, что приложение вашего терминала имеет разрешение на уведомления в параметрах ОС, и если вы работаете внутри tmux, [включите passthrough](#configure-tmux).
89 103
90<h3 id="play-a-sound-with-a-notification-hook">104<h3 id="play-a-sound-with-a-notification-hook">
91 Воспроизведите звук с помощью хука Notification105 Воспроизведение звука с помощью Notification hook
92</h3>106</h3>
93 107
94В любом терминале вы можете настроить [хук Notification](/ru/hooks-guide#get-notified-when-claude-needs-input) для воспроизведения звука или запуска пользовательской команды, когда Claude нуждается в вашем внимании. Хуки работают вместе с уведомлением рабочего стола, а не заменяя его, поэтому терминалы, которые не получают уведомление рабочего стола, такие как Warp или интегрированный терминал VS Code, могут использовать хук или установить `preferredNotifChannel` на `"terminal_bell"` вместо этого.108В любом терминале вы можете настроить [Notification hook](/docs/ru/hooks-guide#get-notified-when-claude-needs-input) для воспроизведения звука или запуска пользовательской команды, когда Claude нуждается в вашем внимании. Hooks работают наряду со встроенным уведомлением, а не заменяют его, поэтому терминалы, которые не получают уведомление рабочего стола, такие как Warp или встроенный терминал VS Code, могут использовать hook или установить `preferredNotifChannel` на `"terminal_bell"` вместо этого.
95 109
96Пример ниже воспроизводит системный звук на macOS. Связанное руководство содержит команды уведомлений рабочего стола для macOS, Linux и Windows.110Пример ниже воспроизводит системный звук на macOS. Связанное руководство содержит команды уведомлений рабочего стола для macOS, Linux и Windows.
97 111
108```122```
109 123
110<h2 id="configure-tmux">124<h2 id="configure-tmux">
111 Настройте tmux125 Настройка tmux
112</h2>126</h2>
113 127
114Когда Claude Code работает внутри tmux, две вещи ломаются по умолчанию: Shift+Enter отправляет вместо вставки разрыва строки, и уведомления рабочего стола и [полоса прогресса](/ru/settings#available-settings) никогда не достигают внешнего терминала. Добавьте эти строки в `~/.tmux.conf`, затем запустите `tmux source-file ~/.tmux.conf` чтобы применить их к работающему серверу:128Когда Claude Code работает внутри tmux, по умолчанию возникают две проблемы: Shift+Enter отправляет сообщение вместо вставки новой строки, и уведомления рабочего стола и [индикатор прогресса](/docs/ru/settings-reference#terminalprogressbarenabled) никогда не достигают внешнего терминала. Добавьте эти строки в `~/.tmux.conf`, затем запустите `tmux source-file ~/.tmux.conf`, чтобы применить их к работающему серверу:
115 129
116```bash ~/.tmux.conf theme={null}130```bash ~/.tmux.conf theme={null}
117set -g allow-passthrough on131set -g allow-passthrough on
119set -as terminal-features 'xterm*:extkeys'133set -as terminal-features 'xterm*:extkeys'
120```134```
121 135
122Строка `allow-passthrough` позволяет уведомлениям и обновлениям прогресса достичь внешний терминал вместо того, чтобы быть поглощёнными tmux. Строки `extended-keys` позволяют tmux различать Shift+Enter от простого Enter, чтобы сочетание клавиш разрыва строки работало.136Строка `allow-passthrough` позволяет уведомлениям и обновлениям прогресса достигать внешнего терминала вместо того, чтобы быть поглощенными tmux. Строки `extended-keys` позволяют tmux различать Shift+Enter и простой Enter, чтобы сочетание клавиш для новой строки работало.
137
138<h2 id="fix-backspace-deleting-a-whole-word-on-windows">
139 Исправление удаления целого слова при нажатии Backspace на Windows
140</h2>
141
142На Windows Claude Code читает Backspace, поступающий как `^H`, как Ctrl+Backspace, который [удаляет предыдущее слово](/docs/ru/interactive-mode#text-editing), за исключением случаев, когда `TERM_PROGRAM` имеет значение `mintty` или `TERM` имеет значение `cygwin`. На macOS и Linux Claude Code читает его как обычный Backspace.
143
144Если каждое нажатие Backspace удаляет целое слово, ваш терминал отправляет `^H` для обычного Backspace. Установите [`CLAUDE_CODE_BS_AS_CTRL_BACKSPACE=0`](/docs/ru/env-vars). Backspace и Ctrl+H затем стирают по одному символу каждый. Если Ctrl+Backspace стирает только один символ на macOS или Linux, потому что ваш терминал отправляет `^H` для него, установите переменную на `1` вместо этого.
123 145
124<h2 id="match-the-color-theme">146<h2 id="match-the-color-theme">
125 Сопоставьте цветовую тему147 Подберите цветовую тему
126</h2>148</h2>
127 149
128Используйте команду `/theme` или средство выбора темы в `/config` для выбора темы Claude Code, которая соответствует вашему терминалу. Выбор опции auto обнаруживает светлый или тёмный фон вашего терминала, поэтому тема следует изменениям внешнего вида ОС всякий раз, когда это делает ваш терминал. Claude Code не управляет цветовой схемой самого терминала, которая устанавливается приложением терминала.150Используйте команду `/theme` или средство выбора темы в `/config`, чтобы выбрать тему Claude Code, которая соответствует вашему терминалу. Выбор опции auto автоматически определяет светлый или тёмный фон вашего терминала, поэтому тема следует изменениям внешнего вида ОС всякий раз, когда это делает ваш терминал. Claude Code не контролирует собственную цветовую схему терминала, которая устанавливается приложением терминала.
129 151
130Чтобы настроить то, что отображается в нижней части интерфейса, настройте [пользовательскую строку состояния](/ru/statusline), которая показывает текущую модель, рабочий каталог, ветку git или другой контекст.152Чтобы настроить, что отображается в нижней части интерфейса, настройте [пользовательскую строку состояния](/docs/ru/statusline), которая показывает текущую модель, рабочий каталог, ветку git или другой контекст.
131 153
132<h3 id="create-a-custom-theme">154<h3 id="create-a-custom-theme">
133 Создайте пользовательскую тему155 Создайте пользовательскую тему
134</h3>156</h3>
135 157
136<Note>158Помимо встроенных предустановок, `/theme` отображает все определённые вами пользовательские темы и любые темы, предоставленные установленными [plugins](/docs/ru/plugins-reference#themes). Выберите **New custom theme…** в конце списка, чтобы создать её интерактивно: вы назовёте тему, а затем выберете отдельные цветовые токены для переопределения. Нажмите `Ctrl+E`, пока выделена пользовательская тема, чтобы отредактировать её.
137 Пользовательские темы требуют Claude Code v2.1.118 или более поздней версии.
138</Note>
139
140В дополнение к встроенным предустановкам, `/theme` отображает любые пользовательские темы, которые вы определили, и любые темы, предоставленные установленными [plugins](/ru/plugins-reference#themes). Выберите **New custom theme…** в конце списка, чтобы создать её интерактивно: вы назовёте тему, а затем выберете отдельные цветовые токены для переопределения. Нажмите `Ctrl+E`, пока выделена пользовательская тема, чтобы отредактировать её.
141 159
142Каждая пользовательская тема — это JSON-файл в `~/.claude/themes/`. Имя файла без расширения `.json` — это слаг темы, и выбор темы сохраняет `custom:<slug>` как ваше предпочтение темы. Файл имеет три необязательных поля:160Каждая пользовательская тема — это JSON-файл в `~/.claude/themes/`. Имя файла без расширения `.json` — это слаг темы, а выбор темы сохраняет `custom:<slug>` как ваше предпочтение темы. Файл имеет три необязательных поля:
143 161
144| Field | Type | Description |162| Поле | Тип | Описание |
145| :---------- | :----- | :---------------------------------------------------------------------------------------------------------------------------------------------- |163| :---------- | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------- |
146| `name` | string | Display label shown in `/theme`. Defaults to the filename slug |164| `name` | string | Метка отображения, показываемая в `/theme`. По умолчанию используется слаг имени файла |
147| `base` | string | Built-in preset the theme starts from: `dark`, `light`, `dark-daltonized`, `light-daltonized`, `dark-ansi`, or `light-ansi`. Defaults to `dark` |165| `base` | string | Встроенная предустановка, с которой начинается тема: `dark`, `light`, `dark-daltonized`, `light-daltonized`, `dark-ansi` или `light-ansi`. По умолчанию `dark` |
148| `overrides` | object | Map of color token names to color values. Tokens not listed here fall through to the base preset |166| `overrides` | object | Карта имён цветовых токенов на значения цветов. Токены, не указанные здесь, переходят к базовой предустановке |
149 167
150Цветовые значения принимают `#rrggbb`, `#rgb`, `rgb(r,g,b)`, `ansi256(n)` или `ansi:<name>`, где `<name>` — одно из 16 стандартных имён цветов ANSI, таких как `red` или `cyanBright`. Неизвестные токены и недопустимые цветовые значения игнорируются, поэтому опечатка не может нарушить отрисовку.168Значения цветов принимают `#rrggbb`, `#rgb`, `rgb(r,g,b)`, `ansi256(n)` или `ansi:<name>`, где `<name>` — одно из 16 стандартных имён цветов ANSI, таких как `red` или `cyanBright`. Неизвестные токены и недопустимые значения цветов игнорируются, поэтому опечатка не может нарушить отрисовку.
151 169
152Следующий пример определяет тему, которая сохраняет тёмную предустановку, но перекрашивает акцент приглашения, текст ошибки и текст успеха:170Следующий пример определяет тему, которая сохраняет тёмную предустановку, но перекрашивает акцент приглашения, текст ошибки и текст успеха:
153 171
163}181}
164```182```
165 183
166Claude Code отслеживает `~/.claude/themes/` и перезагружает при изменении файла, поэтому изменения, сделанные в вашем редакторе, применяются к работающему сеансу без перезагрузки.184Claude Code отслеживает `~/.claude/themes/` и перезагружается при добавлении или изменении файла, поэтому изменения, внесённые в вашем редакторе, применяются к работающему сеансу без перезагрузки. Если папка `~/.claude/themes/` не существовала при запуске Claude Code, перезагрузитесь один раз после создания первого файла темы. После этого изменения применяются без перезагрузки.
167 185
168Ниже приведён полный список настроек, которые вы можете установить в `overrides`. Интерактивный редактор в `/theme` показывает те же токены с живым предпросмотром, плюс несколько однозначных акцентов, таких как цвета экрана адаптации, которые опущены здесь.186Справочник ниже охватывает токены, которые вы можете установить в `overrides`. Интерактивный редактор в `/theme` показывает те же токены с живым предпросмотром, плюс несколько специализированных акцентов, таких как цвета экрана адаптации, которые здесь опущены.
169 187
170<Accordion title="Color token reference">188<Accordion title="Справочник цветовых токенов">
171 Следующий пример объединяет токены из нескольких групп ниже: фирменный акцент, граница режима Plan Mode, фоны diff и фон полноэкранного сообщения.189 Следующий пример объединяет токены из нескольких групп ниже: фирменный акцент, границу режима плана, фоны diff и фон сообщения.
172 190
173 ```json ~/.claude/themes/midnight.json theme={null}191 ```json ~/.claude/themes/midnight.json theme={null}
174 {192 {
185 ```203 ```
186 204
187 <h4 id="text-and-accent-colors">205 <h4 id="text-and-accent-colors">
188 Text and accent colors206 Цвета текста и акцентов
189 </h4>207 </h4>
190 208
191 Управляйте основным фирменным акцентом и оттенками переднего плана текста, используемыми во всём интерфейсе.209 Управляйте основным фирменным акцентом и оттенками переднего плана текста, используемыми во всём интерфейсе.
192 210
193 | Token | Controls |211 | Токен | Управляет |
194 | :------------ | :--------------------------------------------------------------- |212 | :------------ | :--------------------------------------------------------------------------- |
195 | `claude` | Primary brand accent, used for the spinner and assistant label |213 | `claude` | Основной фирменный акцент, используемый для спиннера и метки помощника |
196 | `text` | Default foreground text |214 | `text` | Текст переднего плана по умолчанию |
197 | `inverseText` | Text drawn on top of a colored background, such as status badges |215 | `inverseText` | Текст, нарисованный поверх цветного фона, такой как значки статуса |
198 | `inactive` | Secondary text such as hints, timestamps, and disabled items |216 | `inactive` | Вторичный текст, такой как подсказки, временные метки и отключённые элементы |
199 | `subtle` | Faint borders and de-emphasized secondary text |217 | `subtle` | Слабые границы и приглушённый вторичный текст |
200 | `suggestion` | Autocomplete suggestions and selection highlight in pickers |218 | `suggestion` | Предложения автодополнения и выделение выбора в средствах выбора |
201 | `permission` | Dialog borders, including permission prompts and pickers |219 | `permission` | Границы диалога, включая запросы разрешений и средства выбора |
202 | `remember` | Memory and `CLAUDE.md` indicators |220 | `remember` | Индикаторы памяти и `CLAUDE.md` |
203 221
204 <h4 id="status-colors">222 <h4 id="status-colors">
205 Status colors223 Цвета статуса
206 </h4>224 </h4>
207 225
208 Сигнализируйте об успехе, сбое и состояниях предупреждения в сообщениях и индикаторах.226 Сигнализируйте об успехе, отказе и состояниях предупреждения в сообщениях и индикаторах.
209 227
210 | Token | Controls |228 | Токен | Управляет |
211 | :-------- | :--------------------------------------------------- |229 | :-------- | :---------------------------------------------------------------- |
212 | `success` | Success messages and passing checks |230 | `success` | Сообщения об успехе и прошедшие проверки |
213 | `error` | Error messages and failures |231 | `error` | Сообщения об ошибках и отказы |
214 | `warning` | Warnings, caution messages, and the auto mode border |232 | `warning` | Предупреждения, сообщения о предостережении и граница режима auto |
215 | `merged` | Merged pull request status |233 | `merged` | Статус объединённого запроса на слияние |
216 234
217 <h4 id="input-box-and-mode-indicators">235 <h4 id="input-box-and-mode-indicators">
218 Input box and mode indicators236 Поле ввода и индикаторы режима
219 </h4>237 </h4>
220 238
221 Установите цвет границы поля ввода и акцент, отображаемый при активном режиме разрешения или индикаторе.239 Установите цвет границы поля ввода и акцент, отображаемый при активном режиме разрешения или индикаторе.
222 240
223 | Token | Controls |241 | Токен | Управляет |
224 | :------------- | :------------------------------------------------- |242 | :------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
225 | `promptBorder` | Input box border in the default permission mode |243 | `promptBorder` | Граница поля ввода в режиме Manual |
226 | `planMode` | Plan mode accent and border |244 | `planMode` | Акцент и граница режима Plan mode |
227 | `autoAccept` | Accept-edits mode accent and border |245 | `autoAccept` | Акцент и граница режима Accept-edits |
228 | `bashBorder` | Input box border when entering a `!` shell command |246 | `bashBorder` | Граница поля ввода при вводе команды оболочки `!` |
229 | `ide` | IDE connection indicator |247 | `ide` | Индикатор подключения IDE |
230 | `fastMode` | Fast mode indicator |248 | `fastMode` | Индикатор режима Fast mode |
249 | `effortUltra` | Тег `ultracode` на границе поля ввода, пока [ultracode](/docs/ru/model-config#adjust-effort-level) включён. Ваше переопределение этого цвета вступает в силу в Claude Code v2.1.239 или позже |
231 250
232 <h4 id="diff-rendering">251 <h4 id="diff-rendering">
233 Diff rendering252 Отрисовка diff
234 </h4>253 </h4>
235 254
236 Раскрасьте добавленный и удалённый код в редактировании файлов и рецензировании.255 Раскрасьте добавленный и удалённый код в правках и рецензиях файлов.
237 256
238 | Token | Controls |257 | Токен | Управляет |
239 | :------------------ | :------------------------------------------------- |258 | :------------------ | :------------------------------------------------------------------------------ |
240 | `diffAdded` | Background of added lines |259 | `diffAdded` | Фон добавленных строк |
241 | `diffRemoved` | Background of removed lines |260 | `diffRemoved` | Фон удалённых строк |
242 | `diffAddedDimmed` | Background of unchanged context near added lines |261 | `diffAddedDimmed` | Фон добавленных строк в приглушённом diff, показываемом после отклонения правки |
243 | `diffRemovedDimmed` | Background of unchanged context near removed lines |262 | `diffRemovedDimmed` | Фон удалённых строк в приглушённом diff, показываемом после отклонения правки |
244 | `diffAddedWord` | Word-level highlight within an added line |263 | `diffAddedWord` | Выделение на уровне слова в добавленной строке |
245 | `diffRemovedWord` | Word-level highlight within a removed line |264 | `diffRemovedWord` | Выделение на уровне слова в удалённой строке |
246 265
247 <h4 id="fullscreen-mode">266 <h4 id="fullscreen-mode">
248 Fullscreen mode267 Полноэкранный режим
249 </h4>268 </h4>
250 269
251 Применяется только в [режиме полноэкранной отрисовки](/ru/fullscreen), где сообщения имеют заливку фона.270 Claude Code рисует `userMessageBackground`, `bashMessageBackgroundColor` и `memoryBackgroundColor` как в средстве отрисовки по умолчанию, так и в полноэкранном. Он использует `userMessageBackgroundHover` и `selectionBg` только в [режиме полноэкранной отрисовки](/docs/ru/fullscreen).
252 271
253 | Token | Controls |272 | Токен | Управляет |
254 | :--------------------------- | :----------------------------------------------------------------- |273 | :--------------------------- | :--------------------------------------------------- |
255 | `userMessageBackground` | Background behind your messages in the transcript |274 | `userMessageBackground` | Фон позади ваших сообщений в стенограмме |
256 | `userMessageBackgroundHover` | Background behind a message while hovered or expanded |275 | `userMessageBackgroundHover` | Фон позади сообщения при наведении или развёртывании |
257 | `messageActionsBackground` | Background behind the selected message when the action bar is open |276 | `bashMessageBackgroundColor` | Фон позади записей команд оболочки `!` в стенограмме |
258 | `bashMessageBackgroundColor` | Background behind `!` shell command entries in the transcript |277 | `memoryBackgroundColor` | Фон позади записей памяти `#` в стенограмме |
259 | `memoryBackgroundColor` | Background behind `#` memory entries in the transcript |278 | `selectionBg` | Фон текста, выбранного мышью |
260 | `selectionBg` | Background of text selected with the mouse |
261 279
262 <h4 id="usage-meter-and-speaker-labels">280 <h4 id="usage-meter-and-speaker-labels">
263 Usage meter and speaker labels281 Счётчик использования и метки динамика
264 </h4>282 </h4>
265 283
266 Отрегулируйте полосу, показанную в представлении `/usage`, и метки, которые отличают ваши сообщения от сообщений Claude.284 Отрегулируйте полосу, показываемую в представлении `/usage`, и метки, которые отличают ваши сообщения от сообщений Claude.
267 285
268 | Token | Controls |286 | Токен | Управляет |
269 | :----------------- | :------------------------------------------------ |287 | :----------------- | :------------------------------------------ |
270 | `rate_limit_fill` | Filled portion of the usage meter |288 | `rate_limit_fill` | Заполненная часть счётчика использования |
271 | `rate_limit_empty` | Unfilled portion of the usage meter |289 | `rate_limit_empty` | Незаполненная часть счётчика использования |
272 | `briefLabelYou` | Color of the `You` label on your messages |290 | `briefLabelYou` | Цвет метки `You` на ваших сообщениях |
273 | `briefLabelClaude` | Color of the `Claude` label on assistant messages |291 | `briefLabelClaude` | Цвет метки `Claude` на сообщениях помощника |
274 292
275 <h4 id="shimmer-variants-and-subagent-colors">293 <h4 id="shimmer-variants-and-subagent-colors">
276 Shimmer variants and subagent colors294 Варианты shimmer и цвета подагентов
277 </h4>295 </h4>
278 296
279 Несколько токенов имеют парный вариант shimmer, который предоставляет более светлый цвет, используемый в анимированном градиенте спиннера. Переопределите shimmer вместе с его базовым токеном, если анимация выглядит несоответствующей.297 Несколько токенов имеют парный вариант shimmer, который предоставляет более светлый цвет, используемый в анимированном градиенте спиннера. Переопределите shimmer вместе с его базовым токеном, если анимация выглядит несовместимой.
280 298
281 * `claude` и `claudeShimmer`299 * `claude` и `claudeShimmer`
282 * `warning` и `warningShimmer`300 * `warning` и `warningShimmer`
285 * `inactive` и `inactiveShimmer`303 * `inactive` и `inactiveShimmer`
286 * `fastMode` и `fastModeShimmer`304 * `fastMode` и `fastModeShimmer`
287 305
288 Каждый [subagent](/ru/sub-agents) и параллельная задача отображаются в одном из восьми именованных цветов, чтобы вы могли различить их в транскрипте. Имена токенов следуют шаблону `<color>_FOR_SUBAGENTS_ONLY`, где `<color>` — это `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink` или `cyan`. Переопределите их, чтобы изменить внешний вид каждого именованного цвета. Например, subagent с `color: blue` в его определении отображается с использованием значения `blue_FOR_SUBAGENTS_ONLY`.306 Каждый [subagent](/docs/ru/sub-agents) и параллельная задача отображаются в одном из восьми именованных цветов, чтобы вы могли отличить их в стенограмме. Имена токенов следуют шаблону `<color>_FOR_SUBAGENTS_ONLY`, где `<color>` — это `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink` или `cyan`. Переопределите их, чтобы изменить внешний вид каждого именованного цвета. Например, подагент с `color: blue` в его определении отрисовывается с использованием значения `blue_FOR_SUBAGENTS_ONLY`.
289 307
290 Ключевые слова [`ultrathink`](/ru/model-config#use-ultrathink-for-one-off-deep-reasoning) и [`ultraplan`](/ru/ultraplan) в поле ввода приглашения отображаются с семицветным радужным градиентом. Имена токенов следуют шаблону `rainbow_<color>` и `rainbow_<color>_shimmer`, где `<color>` — это `red`, `orange`, `yellow`, `green`, `blue`, `indigo` или `violet`.308 Claude Code отрисовывает ключевое слово [`ultrathink`](/docs/ru/model-config#use-ultrathink-for-one-off-deep-reasoning) во входных данных приглашения с семицветным радужным градиентом. Имена токенов следуют шаблону `rainbow_<color>` и `rainbow_<color>_shimmer`, где `<color>` — это `red`, `orange`, `yellow`, `green`, `blue`, `indigo` или `violet`.
291</Accordion>309</Accordion>
292 310
293<h2 id="switch-to-fullscreen-rendering">311<h2 id="switch-to-fullscreen-rendering">
294 Переключитесь на полноэкранный рендеринг312 Переключение на полноэкранный рендеринг
295</h2>313</h2>
296 314
297Если дисплей мерцает или позиция прокрутки прыгает, пока Claude работает, переключитесь на [режим полноэкранного рендеринга](/ru/fullscreen). Он рисует на отдельном экране, который терминал зарезервировал для полноэкранных приложений, вместо добавления в вашу обычную прокрутку, что сохраняет использование памяти на плоском уровне и добавляет поддержку мыши для прокрутки и выделения. В этом режиме вы прокручиваете с помощью мыши или PageUp внутри Claude Code, а не с помощью встроенной прокрутки вашего терминала; см. [страницу полноэкранного режима](/ru/fullscreen#search-and-review-the-conversation) для того, как искать и копировать.315В [режиме чтения с экрана](/docs/ru/accessibility) этот раздел не применяется. Claude Code всегда отображается как обычный прокручиваемый текст, кроме присоединённых [фоновых сеансов](/docs/ru/agent-view), и если вы запустите `/tui fullscreen` в любом другом сеансе, Claude Code выведет объяснение вместо переключения.
316
317Если дисплей мерцает или позиция прокрутки прыгает во время работы Claude, переключитесь на [режим полноэкранного рендеринга](/docs/ru/fullscreen). В этом режиме вы прокручиваете с помощью мыши или PageUp внутри Claude Code, а не с помощью встроенной прокрутки вашего терминала; см. [страницу полноэкранного режима](/docs/ru/fullscreen#search-and-review-the-conversation) для получения информации о поиске и копировании.
318
319Если мерцание — единственная проблема и ваш терминал поддерживает синхронизированный вывод, но не определяется автоматически, например Emacs `eat`, установите [`CLAUDE_CODE_FORCE_SYNC_OUTPUT=1`](/docs/ru/env-vars), чтобы остановить мерцание без изменения рендеров.
298 320
299Запустите `/tui fullscreen` для переключения и сохранения предпочтения. Ваш разговор перезапускается нетронутым, и будущие сеансы начинаются в полноэкранном режиме. Вы также можете установить переменную окружения `CLAUDE_CODE_NO_FLICKER` перед запуском Claude Code:321Запустите `/tui fullscreen` для переключения и сохранения предпочтения. Ваш разговор перезапустится в целости и сохранности, и будущие сеансы начнутся в полноэкранном режиме, если только [полноэкранный запуск не завершится ошибкой](/docs/ru/fullscreen#fullscreen-renderer-didnt-finish-starting). Вы также можете установить переменную окружения `CLAUDE_CODE_NO_FLICKER` перед запуском Claude Code:
300 322
301<CodeGroup>323<CodeGroup>
302 ```bash Bash and Zsh theme={null}324 ```bash Bash and Zsh theme={null}
317</CodeGroup>339</CodeGroup>
318 340
319<h2 id="paste-large-content">341<h2 id="paste-large-content">
320 Вставьте большое содержимое342 Вставка большого содержимого
321</h2>343</h2>
322 344
323Когда вы вставляете более 10 000 символов в приглашение, Claude Code сворачивает ввод в заполнитель `[Pasted text]`, чтобы поле ввода оставалось пригодным для использования. Полное содержимое всё ещё отправляется Claude при отправке.345Когда вы вставляете более 800 символов или более трёх строк в подсказку, Claude Code сворачивает ввод в заполнитель, например `[Pasted text #1 +120 lines]`, чтобы поле ввода оставалось удобным для использования. В окне терминала высотой менее 12 строк лимит строк снижается, поэтому Claude Code сворачивает трёхстрочную вставку при 11 строках и любую многострочную вставку при 10 строках или меньше. Claude Code по-прежнему отправляет полное содержимое при отправке.
324 346
325Встроенный терминал VS Code может отбросить символы из очень больших вставок, прежде чем они достигнут Claude Code, поэтому предпочитайте рабочие процессы на основе файлов там. Для очень больших входных данных, таких как целые файлы или длинные журналы, запишите содержимое в файл и попросите Claude прочитать его вместо вставки. Это сохраняет стенограмму разговора читаемой и позволяет Claude ссылаться на файл по пути в более поздних ходах.347Когда вы удаляете с помощью сочетания клавиш для слова или строки, такого как `Ctrl+W` или `Ctrl+K`, или с помощью удаления vim через движение `f`/`t`, такое как `df]`, и удаляемый диапазон достигает внутри заполнителя, Claude Code удаляет заполнитель целиком. Вы можете вставить удаление обратно, чтобы восстановить его, с помощью [`Ctrl+Y`](/docs/ru/interactive-mode#text-editing) после сочетания клавиш для слова или строки, или с помощью [`p` в режиме NORMAL](/docs/ru/interactive-mode#editing-normal-mode) после удаления vim.
348
349Claude Code хранит свёрнутое содержимое в `~/.claude/paste-cache/`, поэтому когда вы вызываете подсказку из [истории команд](/docs/ru/interactive-mode#command-history) и повторно отправляете её, Claude Code отправляет полное вставленное содержимое снова, включая в более позднем сеансе, пока развёртка очистки не удалит файл кэша.
350
351Claude Code удаляет файлы кэша старше [`cleanupPeriodDays`](/docs/ru/settings-reference#cleanupperioddays), следуя [правилам развёртки очистки](/docs/ru/claude-directory#cleaned-up-automatically), поэтому вызванная подсказка может ссылаться на вставленный текст, который больше не существует. Когда вы отправляете такую подсказку, Claude Code никогда не отправляет буквальную строку `[Pasted text #N]` и показывает уведомление с названием отсутствующей вставки:
352
353* В простой подсказке с оставшимся текстом Claude Code удаляет заполнитель и отправляет оставшийся текст.
354* В [команде режима shell](/docs/ru/interactive-mode#shell-mode-with-prefix) или команде `/`, где удаление изменило бы то, что выполняется, и в любой подсказке, где удаление оставляет пусто, Claude Code отменяет отправку и сохраняет исходный текст в вводе с заполнителем, всё ещё находящимся в нём. Удалите заполнитель или отредактируйте команду, затем повторно отправьте.
355
356Интегрированный терминал VS Code может отбросить символы из очень больших вставок, прежде чем они достигнут Claude Code, поэтому предпочитайте там рабочие процессы на основе файлов. Для очень больших входных данных, таких как целые файлы или длинные журналы, запишите содержимое в файл и попросите Claude прочитать его вместо вставки. Это сохраняет стенограмму разговора читаемой и позволяет Claude ссылаться на файл по пути в более поздних ходах.
326 357
327<h2 id="edit-prompts-with-vim-keybindings">358<h2 id="edit-prompts-with-vim-keybindings">
328 Редактируйте приглашения с помощью сочетаний клавиш Vim359 Редактирование подсказок с сочетаниями клавиш Vim
329</h2>360</h2>
330 361
331Claude Code включает режим редактирования в стиле Vim для ввода приглашения. Включите его через `/config` → Editor mode или установив [`editorMode`](/ru/settings#available-settings) на `"vim"` в `~/.claude/settings.json`. Установите Editor mode обратно на `normal`, чтобы отключить его.362Claude Code включает режим редактирования в стиле Vim для ввода подсказок. Включите его через `/config` → Editor mode или установив [`editorMode`](/docs/ru/settings-reference#editormode) на `"vim"` в `~/.claude/settings.json`. Установите Editor mode обратно на `normal`, чтобы отключить его.
363
364Режим Vim поддерживает подмножество движений и операторов режимов NORMAL и VISUAL, таких как навигация `hjkl`, выделение `v`/`V` и `d`/`c`/`y` с текстовыми объектами. Полную таблицу клавиш см. в [справочнике режима редактора Vim](/docs/ru/interactive-mode#vim-editor-mode).
332 365
333Режим Vim поддерживает подмножество движений и операторов режима NORMAL и VISUAL, таких как навигация `hjkl`, выделение `v`/`V` и `d`/`c`/`y` с текстовыми объектами. См. [справочник режима редактора Vim](/ru/interactive-mode#vim-editor-mode) для полной таблицы клавиш. Движения Vim не переназначаются через файл сочетаний клавиш.366Движения Vim не переназначаются через файл сочетаний клавиш. Чтобы сопоставить двухклавишную последовательность режима INSERT, такую как `jj`, с Escape, установите [`vimInsertModeRemaps`](/docs/ru/interactive-mode#remap-insert-mode-key-sequences) в параметрах пользователя.
334 367
335Нажатие Enter всё ещё отправляет ваше приглашение в режиме INSERT, в отличие от стандартного Vim. Используйте `o` или `O` в режиме NORMAL или Ctrl+J для вставки разрыва строки вместо этого.368Нажатие Enter по-прежнему отправляет вашу подсказку в режиме INSERT, в отличие от стандартного Vim. Используйте `o` или `O` в режиме NORMAL или Ctrl+J, чтобы вставить новую строку.
336 369
337<h2 id="related-resources">370<h2 id="related-resources">
338 Связанные ресурсы371 Связанные ресурсы
339</h2>372</h2>
340 373
341* [Интерактивный режим](/ru/interactive-mode): полный справочник сочетаний клавиш и таблица клавиш Vim374* [Интерактивный режим](/docs/ru/interactive-mode): полный справочник сочетаний клавиш и таблица клавиш Vim
342* [Сочетания клавиш](/ru/keybindings): переназначьте любое сочетание клавиш Claude Code, включая Enter и Shift+Enter375* [Сочетания клавиш](/docs/ru/keybindings): переназначьте любое сочетание клавиш Claude Code, включая Enter и Shift+Enter
343* [Полноэкранный рендеринг](/ru/fullscreen): детали прокрутки, поиска и копирования в полноэкранном режиме376* [Полноэкранный рендеринг](/docs/ru/fullscreen): детали прокрутки, поиска и копирования в полноэкранном режиме
344* [Руководство по hooks](/ru/hooks-guide): больше примеров хуков Notification для Linux и Windows377* [Руководство по hooks](/docs/ru/hooks-guide): больше примеров хуков Notification для Linux и Windows
345* [Troubleshooting](/ru/troubleshooting): исправления для проблем вне конфигурации терминала378* [Troubleshooting](/docs/ru/troubleshooting): исправления для проблем вне конфигурации терминала