Skip to content
Surf Wiki
Save to docs
general/typewriters

From Surf Wiki (app.surf) — the open knowledge base

Tab stop

Location at which typewriter carriage stops

Tab stop

Location at which typewriter carriage stops

A ruler depicting tab stops at the top of a word processor document

A tab stop or tabulator position on a typewriter is a location where the carriage movement is halted by an adjustable end stop. Tab stops are set manually, and pressing the tab key causes the carriage to go to the next tab stop. In text editors on a computer, the same concept is implemented simplistically with automatic, fixed tab stops.

Modern word processors generalize this concept by offering tab stops that have an alignment attribute and cause the text to be automatically aligned at left, at right or center of the tab stop itself. Such tab stops are paragraph-specific properties and can be moved to a different location in any moment, or even removed.

Sometimes, placeholders in code snippets are also called "tab stops" because the user can cycle through them by pressing the tab key.

Types of tab stops

A tab stop is a horizontal position which is set for placing and aligning text on a page. There are at least five kinds of tab stops in general usage in word processing or in Microsoft Word.

;Left: text extends to the right from the tab stop. ;Center: text is centered at the tab stop. ;Right: text extends to the left from the tab stop until the tab's space is filled, and then the text extends to the right. ;Decimal: text before the decimal point extends to the left, and text after the decimal point extends to the right. ;Bar: a vertical line at the specified position on each line in a document.

Dynamic tab stops

In contrast to fixed positioning, tab stops can be adjusted dynamically, based on the length of adjacent tab-delimited line segments, by alignment to a specific character or string in each line, etc. Adobe InDesign supports a non-printing "indent to here" character.

In 2006, Nick Gravgaard published an algorithm for automatic dynamic tab stops called "Elastic tabstops". This can be useful for viewing/editing source code and is naturally essential for tabular data. Various text editors and IDEs have implemented the elastic tabstops algorithm either directly or by extension.

Software which supports elastic tabstops

  • Visual Studio
  • Atom
  • Textadept
  • Code Browser
  • JEdit
  • Notepad++
  • Go tabwriter package
  • Rust tabwriter crate
  • Emacs
  • list of current implementations on Nick Gravgaard'r website

References

References

  1. "Snippets".
  2. "Elastic tabstops".
  3. "Code Browser – Elastic Tabstops".
  4. [https://www.alwaysaligned.net Always Aligned] {{Webarchive. link. (2017-10-05)
  5. "Always Aligned repository".
  6. [https://atom.io/packages/elastic-tabstops Elastic Tabstops package for Atom]
  7. [https://github.com/joshuakraemer/textadept-elastic-tabstops Elastic Tabstops for Textadept]
  8. "JEdit – Elastic Tabstops".
  9. "Elastic Tabstops plugin for Notepad++".
  10. [[Go (programming language)]] [http://golang.org/pkg/tabwriter/ tabwriter package] {{Webarchive. link. (2024-09-21)
  11. "Elastic tabs for Rust".
  12. "Emacs Manual – Indentation".
Info: Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Tab stop — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report