Конвертер табуляций и пробелов
Конвертация между табуляциями и пробелами в тексте. Замените табуляции пробелами или пробелы табуляциями для единообразного отступа в коде.
Ввод
Вывод
Документация
Почему важно различать табуляцию и пробелы в коде?
Табуляция и пробелы — два основных способа расстановки отступов в исходном коде, и их смешивание является одной из наиболее распространённых причин несоответствий форматирования в проектах. Разные редакторы отображают символы табуляции с различной шириной — одни показывают их как 2 пробела, другие как 4 или 8 — а это означает, что код, выглядящий идеально выровненным на одной машине, может отображаться некорректно на другой. Пробелы, в свою очередь, отображаются одинаково везде, однако занимают больше байт и требуют нескольких нажатий клавиш без поддержки редактора.
Большинство современных руководств по стилю и линтеры требуют единого стиля отступов. Такие языки, как Python, чувствительны к пробельным символам и могут выдавать ошибки при смешивании табуляции и пробелов внутри одного блока. Конфигурационные файлы, такие как YAML и Makefile, также имеют строгие правила обработки пробельных символов, что делает выбор правильного символа принципиально важным.
Описание инструмента
Этот инструмент выполняет преобразование между табуляцией и пробелами в любом тексте или фрагменте кода. Вставьте или введите содержимое с отступами на основе табуляции, чтобы заменить каждый символ табуляции настраиваемым количеством пробелов, или преобразуйте отступы на основе пробелов обратно в табуляцию. Как входные, так и выходные данные отображаются в редакторе кода с визуализацией пробельных символов, поэтому вы сразу видите точки вместо пробелов и стрелки вместо табуляции.
Примеры
Табуляция в пробелы (4 пробела на табуляцию):
Входные данные:
function greet() {
→ const name = "World";
→ console.log(`Hello, ${name}`);
}Результат:
function greet() {
const name = "World";
console.log(`Hello, ${name}`);
}Пробелы в табуляцию (2 пробела на табуляцию):
Входные данные:
def greet():
name = "World"
print(f"Hello, {name}")Результат:
def greet():
→ name = "World"
→ print(f"Hello, {name}")Возможности
- Двунаправленное преобразование между табуляцией и пробелами
- Настраиваемое количество пробелов на табуляцию (1–32)
- Редактор кода с подсветкой синтаксиса невидимых символов (точки для пробелов, стрелки для табуляции)
- Мгновенное преобразование в реальном времени по мере ввода
- Работает с любым языком программирования или обычным текстом
Сценарии использования
- Переформатирование кода в соответствии с правилами
.editorconfigили линтера проекта перед коммитом - Преобразование устаревших кодовых баз, использующих табуляцию, в стандарт на основе пробелов (и наоборот)
- Очистка кода, скопированного из Stack Overflow или документации с непоследовательными отступами
Описание параметров
| Параметр | Описание |
|---|---|
| Пробелов на табуляцию | Задаёт количество пробелов, соответствующих одному символу табуляции. Распространённые значения: 2 (Ruby, JS) и 4 (Python, Java). Принимает любое значение от 1 до 32. |
| Направление преобразования | Выберите «Табуляция» → «Пробелы» или переключитесь на «Пробелы» → «Табуляция» с помощью кнопки смены направления. |
Советы
- Используйте отображение невидимых символов в редакторе, чтобы убедиться, что входные данные действительно содержат символы табуляции перед преобразованием — многие редакторы автоматически заменяют табуляцию пробелами при вставке.
- При преобразовании пробелов в табуляцию убедитесь, что заданное количество пробелов соответствует исходной ширине отступа, иначе часть отступов может остаться непреобразованной.