# DVISELECT - extract pages from DVI files - man(1) - [phpMan]

[_DVISELECT_(1)](https://www.chedong.com/phpMan.php/man/DVISELECT/1/markdown)                           General Commands Manual                          [_DVISELECT_(1)](https://www.chedong.com/phpMan.php/man/DVISELECT/1/markdown)

## NAME
       dviselect - extract pages from DVI files

## SYNOPSIS
       **dviselect **[ **-s **] [ **-i _**infile_ ] [ **-o _**outfile_ ] _list_ _of_ _pages_ [ _infile_ [ _outfile_ ] ]

## DESCRIPTION
       _Dviselect_  selects  pages  from a DVI file produced by TeX, creating a new DVI file usable by
       any of the TeX conversion programs, or even by _dviselect_ itself.

       A _range_ is a string of the form _even_, _odd_, or _first:last_ where both _first_ and  _last_  are  op‐
       tional  numeric  strings,  with  negative numbers indicated by a leading underscore character
       ``_''.  If both _first_ and _last_ are omitted, the colon may also be omitted, or may be replaced
       with an asterisk ``*''.  A _page_ _range_ is a list of ranges separated by periods.   A  _list_  _of_
       _pages_ is described by a set of page ranges separated by commas and/or white space.

       _Dviselect_  actually  looks  at  the  ten  _count_ variables that TeX writes; the first of these
       (\count0) is the page number, with \count1 through \count9 having varied  uses  depending  on
       which  macro  packages are in use.  (Typically \count1 might be a chapter or section number.)
       A page is included in _dviselect_'s output if all its \count values match any one of the ranges
       listed on the command line.  For example, the  command  ``dviselect  *.1,35:''  might  select
       everything  in chapter 1, as well as pages 35 and up.  ``dviselect 10:30'' would select pages
       10 through 30 (inclusive).  ``:43'' means everything up to and including page  43  (including
       negative-numbered  pages).  To get all even-numbered pages, use ``even''; to get all odd-num‐
       bered pages, use ``odd''.  If a Table of Contents has negative page numbers, ``:_1'' will se‐
       lect it.  Note that ``*'' must be quoted from the shell; the empty string is more  convenient
       to use, if harder to read.

       Instead  of  \count  values, _dviselect_ can also select by ``absolute page number'', where the
       first page is page 1, the second page 2, and so forth.  Absolute page numbers  are  indicated
       by a leading equal sign ``=''.  Ranges of absolute pages are also allowed: ``dviselect =3:7''
       will  extract  the  third  through  seventh  pages.  Dot separators are not legal in absolute
       ranges, and there are no negative absolute page numbers.  Even/odd specifiers,  however,  are
       legal; ``dviselect =even'' selects every other page, starting with the second.

       More precisely, an asterisk or an empty string implies no limit; an equal sign means absolute
       page  number  rather  than  \counts; a leading colon means everything up to and including the
       given page; a trailing colon means everything from the given page on; the word ``even'' means
       only even values shall be accepted; the word ``odd'' means only odd values shall be accepted;
       and a period indicates that the next \count should be examined.  If fewer than 10 ranges  are
       specified,  the  remaining  \counts are left unrestricted (that is, ``1:5'' and ``1:5.*'' are
       equivalent).  A single number _n_ is treated as if it were the range _n:n_.  An arbitrary  number
       of  page selectors may be given, separated by commas or whitespace; a page is selected if any
       of the selectors matches its \counts or absolute page number.

       Dviselect normally prints the page numbers of the pages selected; the  _-s_  option  suppresses
       this.

## AUTHOR
       Chris Torek, University of Maryland

## SEE ALSO
       [dviconcat(1)](https://www.chedong.com/phpMan.php/man/dviconcat/1/markdown), [latex(1)](https://www.chedong.com/phpMan.php/man/latex/1/markdown), [tex(1)](https://www.chedong.com/phpMan.php/man/tex/1/markdown)
       _MC-TeX_ _User's_ _Guide_
       _The_ _TeXbook_

## BUGS
       A  leading ``-'' ought to be allowed for negative numbers, but it is currently used as a syn‐
       onym for ``:'', for backwards compatibility.

       Section or subsection selection will sometimes fail, for the DVI file lists only  the  \count
       values  that  were  active  when the page ended.  Clever macro packages can alleviate this by
       making use of other ``free'' \count registers.  Chapters normally begin on new pages, and  do
       not suffer from this particular problem.

       The heuristic that decides which arguments are page selectors and which are file names is of‐
       ten wrong.  Using shell redirection or the -i and -o options is safest.

       _Dviselect_  does  not  adjust the parameters in the postamble; however, since these values are
       normally used only to size certain structures in the output conversion programs, and the  pa‐
       rameters never need to be adjusted upward, this has not proven to be a problem.

                                                                                        [_DVISELECT_(1)](https://www.chedong.com/phpMan.php/man/DVISELECT/1/markdown)
