Табуляция: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Нет описания правки
 
(не показано 50 промежуточных версий 21 участника)
Строка 1: Строка 1:
'''Горизонтальная табуляция''' ('''HT''', '''TAB''') — управляющий символ таблицы [[ASCII]] с кодом 09<sub>[[Шестнадцатеричная система|16]]</sub>, используется для выравнивания текста в строках. Встретив этот символ, терминал перемещает каретку (или курсор) вправо на ближайшую позицию табуляции. Традиционно эти позиции располагаются каждые 8 [[Текстовый режим|знакомест]], в колонках 1, 9, 17, 25… Вводится при помощи клавиши {{клавиша|Tab}}, во многих языках программирования обозначается как <tt>\t</tt>.
'''Горизонтальная табуляция''' ('''HT''', '''TAB''') — управляющий символ таблицы [[ASCII]] с кодом 09<sub>[[Шестнадцатеричная система|16]]</sub>, используется для выравнивания текста в строках. Встретив этот символ, терминал перемещает каретку (или курсор) вправо на ближайшую позицию табуляции. Традиционно эти позиции располагаются каждые 8 знакомест{{нет АИ|17|11|2022}}, в колонках 1, 9, 17, 25… Вводится при помощи клавиши {{клавиша|Tab}}, в языках программирования c [[Синтаксис и семантика языка Си|Си-подобным синтаксисом]] часто обозначается как <tt>\t</tt>.


Если отправить на печать текст (символ табуляции обозначен стрелкой)
Если отправить на печать текст (символ табуляции обозначен стрелкой)
Строка 8: Строка 8:


получим такую распечатку:
получим такую распечатку:
<pre>
<pre style='tab-size:8'>
один&#9;два&#9;три&#9;четыре
один&#9;два&#9;три&#9;четыре
1&#9;&#9;2&#9;3&#9;4
1&#9;2&#9;3&#9;4
5&#9;&#9;6&#9;7&#9;8
5&#9;6&#9;7&#9;8
9&#9;&#9;10&#9;11&#9;12
9&#9;10&#9;11&#9;12
</pre>
</pre>


Команда «табуляция» восходит к одноимённой клавише в [[пишущая машинка|пишущей машинке]], упрощавшей набор таблиц.
Также существует вертикальная табуляция VT с кодом 0B<sub>16</sub>, в настоящее время используемая крайне редко.


Изображение на клавише {{клавиша|Tab}} означает: простое нажатие совершает прыжок вперёд до определённой позиции, {{клавиша|Shift|Tab}} — прыжок назад.
== В текстовых редакторах ==


Также существует '''вертикальная табуляция''' VT с кодом 0B<sub>16</sub>, перемещающая позицию печати к следующей позиции вертикальной табуляции, в настоящее время используемая крайне редко. Название «вертикальная табуляция» дано по аналогии с горизонтальной, используется она для снижения шума и ускорения печати на готовых формулярах. В языках программирования типа Си обозначается как <code>\v</code>.

== В пишущих машинках ==
На задней стенке машинки располагалась линейка табуляторов. Машинистка могла расставлять на ней стопоры, и нажатие клавиши табуляции вело каретку до ближайшего стопора. Впоследствии линейку превратили в пакет пластин-табуляторов, и машинистка взводила нужные.

Числа в таблицах принято выравнивать по правому краю. Поэтому ставили табулятор за несколько позиций до нужной, а затем клавишами пробела и {{Клавиша|Backspace}} точно подводили каретку. В дорогих машинках были клавиши «10» и «100», останавливавшие каретку за одну и две позиции до табулятора (основная клавиша при этом называлась «1»). Далее шли клавиши «1т…100т» (тысячи, 3…5 позиций) и «1м…100м» (миллионы, 6…8 позиций).

В электрических машинках были команды «запомнить табуляцию» и «сбросить табуляцию».

== В текстовых редакторах ==
В текстовых редакторах позиции табуляции могут идти каждые 2 или 4 знакоместа: это удобно для работы с [[язык программирования|языками программирования]]. По желанию пользователя клавиша {{клавиша|Tab}} может не вставлять символ-табулятор, а имитировать его, вставляя нужное количество пробелов.
В текстовых редакторах позиции табуляции могут идти каждые 2 или 4 знакоместа: это удобно для работы с [[язык программирования|языками программирования]]. По желанию пользователя клавиша {{клавиша|Tab}} может не вставлять символ-табулятор, а имитировать его, вставляя нужное количество пробелов.


Строка 24: Строка 34:


== В текстовых процессорах ==
== В текстовых процессорах ==

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


Строка 31: Строка 40:
== Табуляция в (X)HTML ==
== Табуляция в (X)HTML ==
В ([[XHTML|X]])[[HTML]] горизонтальная табуляция обозначается как '''&amp;#9;''',
В ([[XHTML|X]])[[HTML]] горизонтальная табуляция обозначается как '''&amp;#9;''',
однако она отобразится браузером только будучи использованной внутри [[Тег (языки разметки)|тегов]] '''&lt;pre&gt;''' и '''&lt;textarea&gt;''':
однако она отобразится браузером, только будучи использованной внутри [[Тег (языки разметки)|тегов]] '''&lt;pre&gt;''' и '''&lt;textarea&gt;''':


Пример HTML-кода с&nbsp;использованием ''' ''' внутри тега '''&lt;pre&gt;'''
Пример HTML-кода с использованием внутри тега '''&lt;pre&gt;'''
<pre>
<pre>
&lt;pre&gt;
&lt;pre&gt;
Две строчки с табуляцией:
Две строчки с табуляцией:
2007&amp;#9;Табуляция внутри строки.
42&amp;#9;Табуляция внутри строки.
&amp;#9;Табуляция в начале строки.
&amp;#9;Табуляция в начале строки.


Строка 47: Строка 56:
<pre>
<pre>
Две строчки с табуляцией:
Две строчки с табуляцией:
2007&#9;Табуляция внутри строки.
42&#9;Табуляция внутри строки.
&#9;Табуляция в начале строки.
&#9;Табуляция в начале строки.


Строка 54: Строка 63:
Вертикальная табуляция обозначается как '''&amp;#11;''', однако она не используется в [[SGML]] (включая HTML) или [[XML]] 1.0.
Вертикальная табуляция обозначается как '''&amp;#11;''', однако она не используется в [[SGML]] (включая HTML) или [[XML]] 1.0.


Нестандартное, но широко действующее [[CSS]]-свойство <code>tab-size:8</code> позволяет задать размер табуляции в знакоместах. Последним из браузеров его реализовал Firefox (август 2021). В отдельных браузерах возможна анимация этого свойства и задание в единицах длины (<code>em, px</code> и других)<ref>{{Cite web |url=https://developer.mozilla.org/ru/docs/Web/CSS/tab-size |title=tab-size - CSS {{!}} MDN<!-- Заголовок добавлен ботом --> |access-date=2021-09-14 |archive-date=2021-09-14 |archive-url=https://web.archive.org/web/20210914200839/https://developer.mozilla.org/ru/docs/Web/CSS/tab-size |deadlink=no }}</ref>.
== Клавиша <span>{{клавиша|Tab}}</span> в прикладном ПО ==


== Клавиша <span>{{клавиша|Tab}}</span> в прикладном ПО ==
За клавишей {{клавиша|Tab}} закрепились такие функции:
За клавишей {{клавиша|Tab}} закрепились такие функции:
* В текстовых редакторах, текстовых процессорах — ввод символа табуляции, работа с отступами.
* В текстовых редакторах, текстовых процессорах — ввод символа табуляции, работа с отступами.
* В графических интерфейсах — прыжок. В частности, в [[Windows]] {{клавиша|Tab}} — переключение между элементами текущего окна, {{клавиша|Alt|Tab}} — переключение между программами. Прыжок в обратную сторону — {{клавиша|Shift|Tab}}.
* В графических интерфейсах — прыжок (смена фокуса). В частности, в [[Windows]] {{клавиша|Tab}} — переключение между элементами текущего окна, {{клавиша|Alt|Tab}} — переключение между программами, {{клавиша|Ctrl|Tab}} — переключение между окнами одной программы. В обратную сторону — дополнительно нажимаем {{клавиша|Shift}}: например, {{клавиша|Ctrl|Shift|Tab}}.
* В консольных интерфейсах (например [[Cisco IOS|IOS]], [[bash]], [[Zsh]]), в том числе в [[консоль|консолях]] компьютерных игр (например, [[Quake 3]], [[Doom 3]], [[Unreal Tournament]]) — [[автодополнение]] команды.
* В консольных интерфейсах (например, [[Cisco IOS|IOS]], [[bash]], [[Zsh]]), в том числе в консолях и чатах компьютерных игр (например, [[Minecraft]], [[Quake 3]], [[Doom 3]], [[Unreal Tournament]]) — [[автодополнение]] команды.
* В играх — показ дополнительных материалов (карты уровня, таблицы результатов, заданий).
* В играх — показ дополнительных материалов (карты уровня, таблицы результатов, заданий).
* В растровом графическом редакторе [[GIMP]] и редакторе карт [[JOSM]] — переключение между скрытием и отображением дополнительных панелей.


== См. также ==
== См. также ==
{{wiktionary|табуляция}}
{{wiktionary|табуляция}}
* [[TSV]] — формат представления табличных данных, использующий табуляцию как разделитель
* [[TSV]] — формат представления табличных данных, использующий табуляцию как разделитель

== Примечания ==
{{примечания}}



{{Нет ссылок|дата=15 мая 2011}}
{{Нет ссылок|дата=15 мая 2011}}
{{Клавиши клавиатуры}}
{{compu-stub}}
{{ASCII}}


[[Категория:Управляющие символы|TAB]]
[[Категория:Управляющие символы]]
[[Категория:Непечатаемые знаки]]
[[Категория:Пробельные символы]]
[[Категория:Пробельные символы]]
[[Категория:Стандарт оформления кода]]
[[Категория:Стандарт оформления кода]]

Текущая версия от 01:45, 11 марта 2024

Горизонтальная табуляция (HT, TAB) — управляющий символ таблицы ASCII с кодом 0916, используется для выравнивания текста в строках. Встретив этот символ, терминал перемещает каретку (или курсор) вправо на ближайшую позицию табуляции. Традиционно эти позиции располагаются каждые 8 знакомест[источник не указан 758 дней], в колонках 1, 9, 17, 25… Вводится при помощи клавиши Tab ↹, в языках программирования c Си-подобным синтаксисом часто обозначается как \t.

Если отправить на печать текст (символ табуляции обозначен стрелкой)

один→два→три→четыре
1→2→3→4
5→6→7→8
9→10→11→12

получим такую распечатку:

один	два	три	четыре
1	2	3	4
5	6	7	8
9	10	11	12

Команда «табуляция» восходит к одноимённой клавише в пишущей машинке, упрощавшей набор таблиц.

Изображение на клавише Tab ↹ означает: простое нажатие совершает прыжок вперёд до определённой позиции, ⇧ Shift+Tab ↹ — прыжок назад.

Также существует вертикальная табуляция VT с кодом 0B16, перемещающая позицию печати к следующей позиции вертикальной табуляции, в настоящее время используемая крайне редко. Название «вертикальная табуляция» дано по аналогии с горизонтальной, используется она для снижения шума и ускорения печати на готовых формулярах. В языках программирования типа Си обозначается как \v.

В пишущих машинках

[править | править код]

На задней стенке машинки располагалась линейка табуляторов. Машинистка могла расставлять на ней стопоры, и нажатие клавиши табуляции вело каретку до ближайшего стопора. Впоследствии линейку превратили в пакет пластин-табуляторов, и машинистка взводила нужные.

Числа в таблицах принято выравнивать по правому краю. Поэтому ставили табулятор за несколько позиций до нужной, а затем клавишами пробела и ← Backspace точно подводили каретку. В дорогих машинках были клавиши «10» и «100», останавливавшие каретку за одну и две позиции до табулятора (основная клавиша при этом называлась «1»). Далее шли клавиши «1т…100т» (тысячи, 3…5 позиций) и «1м…100м» (миллионы, 6…8 позиций).

В электрических машинках были команды «запомнить табуляцию» и «сбросить табуляцию».

В текстовых редакторах

[править | править код]

В текстовых редакторах позиции табуляции могут идти каждые 2 или 4 знакоместа: это удобно для работы с языками программирования. По желанию пользователя клавиша Tab ↹ может не вставлять символ-табулятор, а имитировать его, вставляя нужное количество пробелов.

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

В текстовых процессорах

[править | править код]

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

Сходная функциональность у таблиц. Но есть и отличия: текст, выровненный табуляторами, невозможно разлиновать на строки и столбцы. Зато в таблицах текст не может выходить за пределы ячеек.

Табуляция в (X)HTML

[править | править код]

В (X)HTML горизонтальная табуляция обозначается как &#9;, однако она отобразится браузером, только будучи использованной внутри тегов <pre> и <textarea>:

Пример HTML-кода с использованием внутри тега <pre>

<pre>
Две строчки с табуляцией:
42&#9;Табуляция внутри строки.
&#9;Табуляция в начале строки.

Строка без табуляции.
</pre>

Браузер отобразит этот код так:

Две строчки с табуляцией:
42	Табуляция внутри строки.
	Табуляция в начале строки.

Строка без табуляции.

Вертикальная табуляция обозначается как &#11;, однако она не используется в SGML (включая HTML) или XML 1.0.

Нестандартное, но широко действующее CSS-свойство tab-size:8 позволяет задать размер табуляции в знакоместах. Последним из браузеров его реализовал Firefox (август 2021). В отдельных браузерах возможна анимация этого свойства и задание в единицах длины (em, px и других)[1].

Клавиша Tab ↹ в прикладном ПО

[править | править код]

За клавишей Tab ↹ закрепились такие функции:

  • В текстовых редакторах, текстовых процессорах — ввод символа табуляции, работа с отступами.
  • В графических интерфейсах — прыжок (смена фокуса). В частности, в Windows Tab ↹ — переключение между элементами текущего окна, Alt+Tab ↹ — переключение между программами, Ctrl+Tab ↹ — переключение между окнами одной программы. В обратную сторону — дополнительно нажимаем ⇧ Shift: например, Ctrl+⇧ Shift+Tab ↹.
  • В консольных интерфейсах (например, IOS, bash, Zsh), в том числе в консолях и чатах компьютерных игр (например, Minecraft, Quake 3, Doom 3, Unreal Tournament) — автодополнение команды.
  • В играх — показ дополнительных материалов (карты уровня, таблицы результатов, заданий).
  • В растровом графическом редакторе GIMP и редакторе карт JOSM — переключение между скрытием и отображением дополнительных панелей.
  • TSV — формат представления табличных данных, использующий табуляцию как разделитель

Примечания

[править | править код]
  1. tab-size - CSS | MDN. Дата обращения: 14 сентября 2021. Архивировано 14 сентября 2021 года.