Открыть сервисСервис

Табуляция

Табуляция — это способ выравнивания и структурирования текстовых данных с помощью специальных символов или пробелов, а также процесс автоматического расчёта позиций колонок при наборе. В более узком смысле табуляция обозначает символ табуляции (табулятор) — управляющий знак, который перемещает курсор к следующей заранее определённой позиции (табуляционной остановке). Табуляция применяется в текстовых процессорах, языках программирования, таблицах и форматах обмена данными.

Термин и происхождение

Термин происходит от латинского tabula — «доска, таблица». Понятие пришло в информатику из типографии и пишущих машинок, где табуляция означала перевод каретки на заданную позицию для начала новой колонки или абзаца.

Табуляция в текстовых редакторах и форматах

Символ табуляции

Символ табуляции (табулятор) — управляющий символ, который в текстовых форматах отображается как горизонтальный таб (HT, ASCII-код 9). В Unicode ему соответствует U+0009. При отображении символ перемещает курсор к ближайшей следующей табуляционной остановке. По умолчанию многие редакторы устанавливают остановки через каждые 4 или 8 пробелов.

Отступы табом или пробелами

В программировании и текстовой вёрстке традиционно используются два подхода к созданию отступов: символы табуляции и последовательности пробелов. Дискуссия о предпочтительности одного из них ведётся давно. Сторонники табов указывают на меньший объём файлов и возможность настройки ширины отступа под конкретный редактор; сторонники пробелов — на единообразие отображения независимо от настроек. Многие стили оформления кода (например, PEP 8 для Python) рекомендуют использовать пробелы.

Табуляционные остановки

Табуляционные остановки (таб-стопы) — заранее заданные позиции по горизонтали, к которым перемещается курсор при вводе символа табуляции. В текстовых процессорах (Microsoft Word, LibreOffice Writer) остановки можно настраивать, задавая их тип: левое выравнивание, центр, правое выравнивание, десятичное выравнивание (для чисел с запятой) и разделитель. Десятичное выравнивание особенно удобно при оформлении бухгалтерских таблиц, где числа должны выстраиваться по запятой.

Табуляция в таблицах и разметке

Табличные форматы данных

Табуляция как разделитель полей используется в формате TSV (Tab-Separated Values), где колонки разделяются символом табуляции. TSV применяется для экспорта и импорта данных из баз данных, электронных таблиц и библиотек (например, в библиотеке Python pandas). Формат проще CSV, так как символ табуляции редко встречается в самих данных, и поэтому не требует экранирования.

HTML и вёрстка

В HTML для выравнивания текста по табуляционным остановкам используется CSS-свойство tab-size, позволяющее задать ширину табуляционного отступа в пробелах. Свойство text-align: justify и таблицы <table> исторически использовались для имитации табуляции в веб-вёрстке.

Табуляция в музыке

В музыкальной нотации табуляция (табулатура, от лат. tabulatura) — система записи музыки, в которой вместо нот на линейках указывается расположение пальцев на грифе инструмента. Табулатуры используются для гитары, лютни, банджо и других струнных инструментов. Гитарная табулатура состоит из шести горизонтальных линий (по числу струн), на которых цифрами обозначаются номера ладов. Формат широко распространён в интернете и музыкальном ПО (Guitar Pro, TuxGuitar).

Табуляция в пишущих машинках

В механических пишущих машинках табуляция была аппаратной функцией: оператор устанавливал табуляционные остановки на специальной шкале, а клавиша Tab переводила каретку к следующей остановке. Отсюда произошло разделение клавиш на Tab, Backspace и клавиши сдвига. В компьютерных клавиатурах клавиша Tab унаследована от этого механизма.

Клавиша Tab в компьютерных интерфейсах

В современных операционных системах клавиша Tab выполняет несколько функций:

  • перемещение фокуса между элементами интерфейса (окнами, полями ввода, кнопками);
  • автодополнение в командных оболочках (bash, PowerShell) и адресной строке браузера;
  • создание отступа в текстовых редакторах и IDE;
  • в некоторых приложениях — переключение вкладок.

Стандарты и кодирование

В ASCII символу табуляции присвоен код 9 (0x09). В семействе Unicode зарезервированы также вертикальная табуляция (VT, U+000B) и формат обмена данными (US, U+001F), хотя они используются значительно реже. В протоколах передачи данных (HTTP, XML) символ табуляции может быть представлен как управляющий символ или в виде последовательности &#9; / &#x9;.

Источники

  • ГОСТ 7.83-2001. Электронные издания. Основные виды и выходные сведения
  • PEP 8 — Style Guide for Python Code (Python Software Foundation)
  • Unicode Standard, Chapter 2. General Structure
  • Microsoft Typography documentation: Tab stops and tabulation
  • TSV format specification (Tab-Separated Values)
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru