summaryrefslogtreecommitdiffstats
path: root/man-pages-posix-2003/man1p/unexpand.1p
diff options
context:
space:
mode:
Diffstat (limited to 'man-pages-posix-2003/man1p/unexpand.1p')
-rw-r--r--man-pages-posix-2003/man1p/unexpand.1p187
1 files changed, 187 insertions, 0 deletions
diff --git a/man-pages-posix-2003/man1p/unexpand.1p b/man-pages-posix-2003/man1p/unexpand.1p
new file mode 100644
index 0000000..7727966
--- /dev/null
+++ b/man-pages-posix-2003/man1p/unexpand.1p
@@ -0,0 +1,187 @@
+.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
+.TH "UNEXPAND" 1P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
+.\" unexpand
+.SH PROLOG
+This manual page is part of the POSIX Programmer's Manual.
+The Linux implementation of this interface may differ (consult
+the corresponding Linux manual page for details of Linux behavior),
+or the interface may not be implemented on Linux.
+.SH NAME
+unexpand \- convert spaces to tabs
+.SH SYNOPSIS
+.LP
+\fBunexpand\fP \fB[\fP \fB-a| -t\fP \fItablist\fP\fB][\fP\fIfile\fP\fB...\fP\fB]\fP\fB\fP
+.SH DESCRIPTION
+.LP
+The \fIunexpand\fP utility shall copy files or standard input to standard
+output, converting <blank>s at the beginning of
+each line into the maximum number of <tab>s followed by the minimum
+number of <space>s needed to fill the same column
+positions originally filled by the translated <blank>s. By default,
+tabstops shall be set at every eighth column position.
+Each <backspace> shall be copied to the output, and shall cause the
+column position count for tab calculations to be
+decremented; the count shall never be decremented to a value less
+than one.
+.SH OPTIONS
+.LP
+The \fIunexpand\fP utility shall conform to the Base Definitions volume
+of IEEE\ Std\ 1003.1-2001, Section 12.2, Utility Syntax Guidelines.
+.LP
+The following options shall be supported:
+.TP 7
+\fB-a\fP
+In addition to translating <blank>s at the beginning of each line,
+translate all sequences of two or more <blank>s
+immediately preceding a tab stop to the maximum number of <tab>s followed
+by the minimum number of <space>s needed to
+fill the same column positions originally filled by the translated
+<blank>s.
+.TP 7
+\fB-t\ \fP \fItablist\fP
+Specify the tab stops. The application shall ensure that the \fItablist\fP
+option-argument is a single argument consisting of
+a single positive decimal integer or multiple positive decimal integers,
+separated by <blank>s or commas, in ascending order.
+If a single number is given, tabs shall be set \fItablist\fP column
+positions apart instead of the default 8. If multiple numbers
+are given, the tabs shall be set at those specific column positions.
+.LP
+The application shall ensure that each tab-stop position \fIN\fP is
+an integer value greater than zero, and the list shall be
+in strictly ascending order. This is taken to mean that, from the
+start of a line of output, tabbing to position \fIN\fP shall
+cause the next character output to be in the ( \fIN\fP+1)th column
+position on that line. When the \fB-t\fP option is not
+specified, the default shall be the equivalent of specifying \fB-t\ 8\fP
+(except for the interaction with \fB-a\fP, described
+below).
+.LP
+No <space>-to- <tab> conversions shall occur for characters at positions
+beyond the last of those specified in a
+multiple tab-stop list.
+.LP
+When \fB-t\fP is specified, the presence or absence of the \fB-a\fP
+option shall be ignored; conversion shall not be limited
+to the processing of leading <blank>s.
+.sp
+.SH OPERANDS
+.LP
+The following operand shall be supported:
+.TP 7
+\fIfile\fP
+A pathname of a text file to be used as input.
+.sp
+.SH STDIN
+.LP
+See the INPUT FILES section.
+.SH INPUT FILES
+.LP
+The input files shall be text files.
+.SH ENVIRONMENT VARIABLES
+.LP
+The following environment variables shall affect the execution of
+\fIunexpand\fP:
+.TP 7
+\fILANG\fP
+Provide a default value for the internationalization variables that
+are unset or null. (See the Base Definitions volume of
+IEEE\ Std\ 1003.1-2001, Section 8.2, Internationalization Variables
+for
+the precedence of internationalization variables used to determine
+the values of locale categories.)
+.TP 7
+\fILC_ALL\fP
+If set to a non-empty string value, override the values of all the
+other internationalization variables.
+.TP 7
+\fILC_CTYPE\fP
+Determine the locale for the interpretation of sequences of bytes
+of text data as characters (for example, single-byte as
+opposed to multi-byte characters in arguments and input files), the
+processing of <tab>s and <space>s, and for the
+determination of the width in column positions each character would
+occupy on an output device.
+.TP 7
+\fILC_MESSAGES\fP
+Determine the locale that should be used to affect the format and
+contents of diagnostic messages written to standard
+error.
+.TP 7
+\fINLSPATH\fP
+Determine the location of message catalogs for the processing of \fILC_MESSAGES
+\&.\fP
+.sp
+.SH ASYNCHRONOUS EVENTS
+.LP
+Default.
+.SH STDOUT
+.LP
+The standard output shall be equivalent to the input files with the
+specified <space>-to- <tab> conversions.
+.SH STDERR
+.LP
+The standard error shall be used only for diagnostic messages.
+.SH OUTPUT FILES
+.LP
+None.
+.SH EXTENDED DESCRIPTION
+.LP
+None.
+.SH EXIT STATUS
+.LP
+The following exit values shall be returned:
+.TP 7
+\ 0
+Successful completion.
+.TP 7
+>0
+An error occurred.
+.sp
+.SH CONSEQUENCES OF ERRORS
+.LP
+Default.
+.LP
+\fIThe following sections are informative.\fP
+.SH APPLICATION USAGE
+.LP
+One non-intuitive aspect of \fIunexpand\fP is its restriction to leading
+spaces when neither \fB-a\fP nor \fB-t\fP is
+specified. Users who always want to convert all spaces in a file can
+easily alias \fIunexpand\fP to use the \fB-a\fP or
+\fB-t\ 8\fP option.
+.SH EXAMPLES
+.LP
+None.
+.SH RATIONALE
+.LP
+On several occasions, consideration was given to adding a \fB-t\fP
+option to the \fIunexpand\fP utility to complement the
+\fB-t\fP in \fIexpand\fP (see \fIexpand\fP ). The historical
+intent of \fIunexpand\fP was to translate multiple <blank>s into tab
+stops, where tab stops were a multiple of eight column
+positions on most UNIX systems. An early proposal omitted \fB-t\fP
+because it seemed outside the scope of the User Portability
+Utilities option; it was not described in any of the base documents.
+However, hard-coding tab stops every eight columns was not
+suitable for the international community and broke historical precedents
+for some vendors in the FORTRAN community, so \fB-t\fP
+was restored in conjunction with the list of valid extension categories
+considered by the standard developers. Thus,
+\fIunexpand\fP is now the logical converse of \fIexpand\fP.
+.SH FUTURE DIRECTIONS
+.LP
+None.
+.SH SEE ALSO
+.LP
+\fIexpand\fP, \fItabs\fP
+.SH COPYRIGHT
+Portions of this text are reprinted and reproduced in electronic form
+from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
+-- Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group. In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard
+is the referee document. The original Standard can be obtained online at
+http://www.opengroup.org/unix/online.html .