Табы в пробелы и обратно

Вставьте код или текст и переведите отступы с табуляции на пробелы или наоборот. Выберите ширину табуляции и решите, менять только отступ в начале строки или каждый таб в строке; позиции табуляции учитываются, поэтому столбцы остаются выровненными.

Заменить на
Ширина таба

Изменено строк: 3

Работает в браузере: всё, что вы вводите, никуда не отправляется.

Как пользоваться

  1. Вставьте текст.
  2. Выберите пробелы или табы и ширину табуляции, принятую в вашем проекте.
  3. Для кода оставьте «Только отступы»; для таблиц, выровненных табами, снимите флажок.
  4. Скопируйте результат. Строка под ним показывает, сколько строк изменилось.

Как это работает

Конвертер измеряет каждую строку в столбцах. Таб сдвигает к следующему числу, кратному ширине; любой другой символ занимает один столбец. При замене на пробелы каждый таб заменяется пробелами до этой позиции. При замене на табы отступ измеряется и записывается целыми табами плюс оставшимися пробелами, а в режиме всей строки каждая серия из двух и более пробелов делится по позициям табуляции, которые она пересекает.

Пример

При ширине 4 строка, начинающаяся с двух табов, \t\treturn 1, превращается в восемь пробелов и return 1. В обратную сторону b (шесть пробелов) становится одним табом и двумя пробелами. По всей строке при ширине 8 ab\tc превращается в ab + шесть пробелов + c, потому что позиция табуляции — столбец 8.

Советы

  • Python запрещает непоследовательно смешивать табы и пробелы в одном блоке; преобразование всего файла устраняет такие ошибки.
  • В Makefile строки рецептов должны начинаться с таба: преобразуйте их в табы или не трогайте такие файлы.
  • Чтобы увидеть, какие символы есть в файле до и после, воспользуйтесь визуализатором пробелов.

Частые вопросы

Чем отличаются «только отступы» и строки целиком?

В режиме «только отступы» преобразуются лишь пробельные символы в начале каждой строки, поэтому табы и пробелы внутри строки — например, перед комментарием — остаются как были. Снимите флажок, чтобы преобразовать каждый таб или каждую серию пробелов, доходящую до позиции табуляции, в любом месте строки.

Почему таб иногда заменяется меньшим числом пробелов, чем ширина?

Таб сдвигает текст к следующей позиции табуляции, кратной ширине, а не на фиксированное расстояние. При ширине 4 таб после двух символов добавляет два пробела. Конвертер считает столбцы так же, поэтому текст, выровненный табами, остаётся выровненным.

Что происходит с отступом, не кратным ширине?

При замене на табы отступ превращается в столько табов, сколько помещается, плюс оставшиеся пробелы. Шесть пробелов при ширине 4 станут одним табом и двумя пробелами.

Превращаются ли одиночные пробелы между словами в табы?

Нет. При замене на табы по всей строке табами становятся только серии из двух и более пробелов, доходящие до позиции табуляции, — по тому же правилу, что у команды Unix unexpand -a. Одиночные пробелы между словами остаются.

Ещё в разделе «Текст»

Все инструменты раздела: Текст ·Обновлено 4 ноября 2026 г.

Настройки конфиденциальности

Google Analytics показывает нам, какими инструментами пользуются и работают ли они. Он может ставить cookie. Ваш выбор сохраняется в этом браузере.