Документация

Работа с клиентом

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

Сообщения в панели чата

У каждого заголовка сообщения есть значок перевода — рядом со временем у ваших сообщений, справа от имени отправителя и времени у ответов модели, справа от метки Думает... у блоков рассуждений:

  • Первый клик отправляет исходный Markdown сообщения на сервер и меняет тело сообщения на перевод. Пока показывается перевод, значок подсвечен;
  • Ещё один клик возвращает исходный текст;
  • Перевод держится за сообщением, пока разговор открыт, включая блоки Думает... после разворачивания.

Переведённые сообщения рендерятся как обычный Markdown, поэтому списки, таблицы и блоки кода сохраняют форму.

Сообщение чата со значком перевода в заголовке и переведённым телом ниже

Черновик сообщения коммита

В поле коммита Git-панели кнопка перевода появляется рядом с AI-кнопкой, как только черновик превышает одну строку:

  • Клик переводит весь черновик — переведённый текст заменяет черновик в поле как доступный только для чтения предпросмотр;
  • Клик ещё раз возвращает вашу исходную формулировку (сам черновик никогда не менялся);
  • Пока показывается предпросмотр, ввод отключён; сначала переключитесь обратно, затем продолжайте править.
Поле коммита с кнопкой перевода и переведённым предпросмотром

Попап деталей коммита

Наведите на коммит в истории Git, чтобы открыть попап деталей. Рядом с кнопкой копирования хеша — значок перевода: клик переводит сообщение коммита внутри попапа; ещё один клик показывает оригинал. Переведённое сообщение рендерится как оригинал — строка темы, Markdown-тело и блоки кода включительно.

Попап деталей коммита — кнопки копирования и перевода в строке хеша

Выделения в редакторе кода

Выделите текст в редакторе кода — обычное и блочное (прямоугольное) выделения работают — кликните правой кнопкой и выберите Перевести (первый пункт меню):

  1. Над номером строки первого выделения появляется залитый значок-глобус;
  2. Карточка перевода сразу открывается с заполнителем Translating… и заполняется, когда сервер отвечает;
  3. Карточка липкая: она остаётся на месте при прокрутке, и только её кнопка закрытия, Esc или клик снаружи убирают её. Наведение на значок возвращает её.

У каждого переведённого выделения свой значок, а перевод тех же строк повторно просто показывает кэшированную карточку. Значки исчезают при открытии другого файла.

Выделение в редакторе кода и Перевести в контекстном меню

Выделения в просмотре диффа

Дифф работает так же: выделите строки в теле диффа, правая кнопка, Перевести. Значок заменяет новый номер строки первой выделенной строки, а карточка результата крепится под ней. Выделения в режиме редактирования тоже переводятся; переключение на другой файл или коммит очищает значки.

Дифф с переведённым выделением — значок в гуттере и карточка перевода

Что переводится

Сервер сообщает модели, откуда пришёл текст:

  • Проза (сообщения чата, сообщения коммитов) — форматирование Markdown сохраняется, переводится только естественный язык;
  • Файловые выделения (редактор, дифф) — вместе с запросом передаётся имя файла, поэтому модель знает маркеры комментариев этого файла (//, #, --, …). Маркеры комментариев убираются, а текст комментария переводится как проза; Markdown внутри комментария (заголовки, списки, блоки кода) выживает. Если выделение — обычный код, переводятся только комментарии и строковые литералы; идентификаторы и структура остаются нетронутыми.