X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;ds=sidebyside;f=doc%2Fhtml%2Fman%2Ftabs.1.html;h=215646adbe04c74f1e6c2b648e25e449b2d5f1e3;hb=790a85dbd4a81d5f5d8dd02a44d84f01512ef443;hp=ab5201a489a33d41f6da7cd55a4a38352cff513d;hpb=6208c89f98f1cf9fe0980bd8e791846ce007a13d;p=ncurses.git diff --git a/doc/html/man/tabs.1.html b/doc/html/man/tabs.1.html index ab5201a4..215646ad 100644 --- a/doc/html/man/tabs.1.html +++ b/doc/html/man/tabs.1.html @@ -1,6 +1,7 @@
- +-tabs(1) tabs(1) +tabs(1) General Commands Manual tabs(1) @@ -54,47 +55,59 @@
- The tabs program clears and sets tab-stops on the termi- - nal. This uses the terminfo clear_all_tabs and set_tab - capabilities. If either is absent, tabs is unable to - clear/set tab-stops. The terminal should be configured to - use hard tabs, e.g., + The tabs program clears and sets tab-stops on the terminal. This uses + the terminfo clear_all_tabs and set_tab capabilities. If either is + absent, tabs is unable to clear/set tab-stops. The terminal should be + configured to use hard tabs, e.g., - stty tab0 + stty tab0 + + Like clear(1), tabs writes to the standard output. You can redirect + the standard output to a file (which prevents tabs from actually chang- + ing the tabstops), and later cat the file to the screen, setting tab- + stops at that point. + + These are hardware tabs, which cannot be queried rapidly by applica- + tions running in the terminal, if at all. Curses and other full-screen + applications may use hardware tabs in optimizing their output to the + terminal. If the hardware tabstops differ from the information in the + terminal database, the result is unpredictable. Before running curses + programs, you should either reset tab-stops to the standard interval + + tabs -8 + + or use the reset program, since the normal initialization sequences do + not ensure that tab-stops are reset.
-Tname - Tell tabs which terminal type to use. If this option - is not given, tabs will use the $TERM environment - variable. If that is not set, it will use the - ansi+tabs entry. + Tell tabs which terminal type to use. If this option is not + given, tabs will use the $TERM environment variable. If that is + not set, it will use the ansi+tabs entry. - -d The debugging option shows a ruler line, followed by - two data lines. The first data line shows the - expected tab-stops marked with asterisks. The second - data line shows the actual tab-stops, marked with - asterisks. + -d The debugging option shows a ruler line, followed by two data + lines. The first data line shows the expected tab-stops marked + with asterisks. The second data line shows the actual tab-stops, + marked with asterisks. - -n This option tells tabs to check the options and run - any debugging option, but not to modify the terminal - settings. + -n This option tells tabs to check the options and run any debugging + option, but not to modify the terminal settings. - -V reports the version of ncurses which was used in this - program, and exits. + -V reports the version of ncurses which was used in this program, and + exits. - The tabs program processes a single list of tab stops. - The last option to be processed which defines a list is - the one that determines the list to be processed. + The tabs program processes a single list of tab stops. The last option + to be processed which defines a list is the one that determines the + list to be processed.
- Use a single number as an option, e.g., "-5" to set tabs - at the given interval (in this case 1, 6, 11, 16, 21, - etc.). Tabs are repeated up to the right margin of the - screen. + Use a single number as an option, e.g., "-5" to set tabs at the given + interval (in this case 1, 6, 11, 16, 21, etc.). Tabs are repeated up + to the right margin of the screen. Use "-0" to clear all tabs. @@ -102,17 +115,18 @@
- An explicit list can be defined after the options (this - does not use a "-"). The values in the list must be in - increasing numeric order, and greater than zero. They are - separated by a comma or a blank, for example, + An explicit list can be defined after the options (this does not use a + "-"). The values in the list must be in increasing numeric order, and + greater than zero. They are separated by a comma or a blank, for exam- + ple, - tabs 1,6,11,16,21 - tabs 1 6 11 16 21 - Use a '+' to treat a number as an increment relative to - the previous value, e.g., + tabs 1,6,11,16,21 + tabs 1 6 11 16 21 - tabs 1,+5,+5,+5,+5 + Use a "+" to treat a number as an increment relative to the previous + value, e.g., + + tabs 1,+5,+5,+5,+5 which is equivalent to the 1,6,11,16,21 example. @@ -140,29 +154,63 @@
- X/Open describes a +m option, to set a terminal's left- - margin. Very few of the entries in the terminal database - provide this capability. + IEEE Std 1003.1/The Open Group Base Specifications Issue 7 + (POSIX.1-2008) describes a tabs utility. However + + o This standard describes a +m option, to set a terminal's left-mar- + gin. Very few of the entries in the terminal database provide the + smgl (set_left_margin) or smglp (set_left_margin_parm) capability + needed to support the feature. + + o There is no counterpart in X/Open Curses Issue 7 for this utility, + unlike tput(1). + + The -d (debug) and -n (no-op) options are extensions not provided by + other implementations. + + A tabs utility appeared in PWB/Unix 1.0 (1977). There was a reduced + version of the tabs utility in Unix 7th edition and in 3BSD (1979). + The latter supported a single "-n" option (to cause the first tab stop + to be set on the left margin). That option is not documented by POSIX. + + The PWB/Unix tabs utility, which was included in System III (1980), + used built-in tables rather than the terminal database, to support a + half-dozen terminal types. It also had built-in logic to support the + left-margin, as well as a feature for copying the tab settings from a + file. + + Later versions of Unix, e.g., SVr4, added support for the terminal + database, but kept the tables, as a fallback. In an earlier develop- + ment effort, the tab-stop initialization provided by tset (1982) and + incorporated into tput uses the terminal database, + + POSIX documents no limits on the number of tab stops. Documentation + for other implementations states that there is a limit on the number of + tab stops (e.g., 20 in PWB/Unix's tabs utility). While some terminals + may not accept an arbitrary number of tab stops, this implementation + will attempt to set tab stops up to the right margin of the screen, if + the given list happens to be that long. + + The Rationale section of the POSIX documentation goes into some detail + about the ways the committee considered redesigning the tabs and tput + utilities, without proposing an improved solution. It comments that - The -d (debug) and -n (no-op) options are extensions not - provided by other implementations. + no known historical version of tabs supports the capability of + setting arbitrary tab stops. - Documentation for other implementations states that there - is a limit on the number of tab stops. While some termi- - nals may not accept an arbitrary number of tab stops, this - implementation will attempt to set tab stops up to the - right margin of the screen, if the given list happens to - be that long. + However, the Explicit Lists described in this manual page were imple- + mented in PWB/Unix. Those provide the capability of setting abitrary + tab stops.
tset(1), infocmp(1m), curses(3x), terminfo(5). - This describes ncurses version 6.0 (patch 20160130). + This describes ncurses version 6.2 (patch 20200516). - tabs(1) + tabs(1)