Урок 4. Cursor Tab и Inline Edit — быстрое написание кода
Tab и Inline Edit — ежедневные инструменты Cursor. Tab предлагает продолжение вашего кода. Inline Edit (Cmd+K) позволяет вносить изменения в выделенный код. С этими двумя инструментами вы работаете в 3-5 раз быстрее.
Описание темы
Cursor Tab — это не обычный autocomplete. Классический autocomplete предлагает только имена переменных. Cursor Tab предсказывает целые строки, функции и даже логические блоки. Он понимает контекст вашего проекта, стиль кода и вашу цель.
Inline Edit (Cmd+K на Mac, Ctrl+K на Windows) — быстрое редактирование строки или блока. Выделяете код, нажимаете Cmd+K, описываете что нужно сделать — AI вносит изменения. Например: 'добавь error handling в эту функцию' или 'оптимизируй этот цикл'.
Tab и Inline Edit отлично работают вместе: при написании нового кода Tab предлагает продолжение, а при редактировании существующего кода используется Inline Edit. Не нужно заходить в Chat или Agent mode — это быстрые инструменты с минимальными действиями.
Практический совет: для полного принятия подсказки Tab нажимайте Tab, для частичного — Cmd+→ (слово за словом). Если подсказка не подходит — просто продолжайте печатать, AI предложит новый вариант.
Что вы получите из этого урока
- Понимаете принцип работы Tab completion и эффективно его используете
- Редактируете существующий код с помощью Inline Edit (Cmd+K / Ctrl+K)
- Владеете техникой partial accept (частичного принятия)
- Различаете когда использовать Tab, а когда Inline Edit
- Запомните основные клавиатурные сочетания
Углублённое объяснение
Техническая работа Tab completion: Cursor отправляет позицию курсора, окружающий код (50-100 строк сверху и снизу), открытые файлы и структуру проекта AI-модели. Модель за 100-200мс возвращает наиболее вероятное продолжение. По мере ввода подсказка обновляется. Это предсказание в реальном времени — вам даже не нужно ничего спрашивать.
Сила Inline Edit в том, что он изменяет только выделенный код, не трогая остальной файл. Это отличает его от Chat — Chat может переписать весь файл, а Inline Edit работает как хирургическая операция: точно в нужном месте. Например: добавить error handling в одну функцию, переименовать переменную, оптимизировать один цикл.
Pro-техника — Multi-cursor Tab: разместив несколько курсоров (Alt+Click), можно получить подсказку Tab для каждого. Это очень полезно при написании повторяющегося кода — например, нескольких похожих функций или тестов.
Стратегия partial accept: иногда подсказка Tab начинается правильно, но заканчивается неверно. В этом случае нажмите Cmd+→ чтобы принять только первое слово/часть, затем снова Tab — придёт новая подсказка. Это называется 'progressive accept' и опытные пользователи всегда так работают.
Готовый шаблон промпта
Скопируйте и адаптируйтеЭта функция проверяет возраст пользователя. Пожалуйста: 1) добавь input validation (проверку что это число), 2) для значений меньше 0 и больше 150 возвращай ошибку, 3) добавь TypeScript типы.
Почему это работает
Контекст: 'Эта функция' — Inline Edit работает с выделенным кодом
Чёткий список задач: 1, 2, 3 — AI выполняет каждую последовательно
Техническое требование: 'input validation', 'возвращай ошибку' — конкретная функциональность
Языковое требование: 'TypeScript типы' — AI конвертирует JavaScript в TypeScript
Практическое задание
- Создайте новый файл в Cursor: utils.ts
- Напишите 'export function ' и дождитесь подсказки Tab — примите её
- Создайте простую функцию: 'function greet(name) { return "Hello " + name }'
- Выделите функцию, нажмите Cmd+K и напишите 'Добавь TypeScript типы и используй template literal'
- Посмотрите результат и нажмите Accept/Reject
- Начните новую строку и напишите 'function calculate' — попробуйте подсказку Tab
Частые ошибки
- Слепо принимать каждую подсказку Tab — принимайте только если предложение логично, иначе продолжайте печатать
- Выделять слишком большой блок кода для Inline Edit — 5-20 строк оптимально, для 100+ строк лучше Chat
- Забывать сочетание клавиш — Cmd+K — самое используемое, запомните его
- Принимать результат Inline Edit без просмотра diff — всегда просматривайте изменения
Вопросы и ответы по уроку
Как улучшить качество Tab completion?
Используйте описательные имена (переменных, функций), пишите комментарии и храните файлы в логичном порядке. Cursor учится из контекста — чистый код = хорошие подсказки.
Сколько строк может изменить Inline Edit?
Технического ограничения нет, но 5-30 строк — оптимально. Для больших блоков (50+ строк) лучше использовать Chat-режим — он работает с большим контекстом.
Можно ли отключить подсказки Tab?
Да, в Settings > Cursor Tab можно отключить 'Enable'. Или отключить для определённых типов файлов. Но не рекомендуется — Tab это основа вайб-кодинга.