diff options
Diffstat (limited to 'Master/tlpkg/TeXLive/TLPSRC.pm')
-rw-r--r-- | Master/tlpkg/TeXLive/TLPSRC.pm | 147 |
1 files changed, 78 insertions, 69 deletions
diff --git a/Master/tlpkg/TeXLive/TLPSRC.pm b/Master/tlpkg/TeXLive/TLPSRC.pm index 71f5263c286..22c0d077b08 100644 --- a/Master/tlpkg/TeXLive/TLPSRC.pm +++ b/Master/tlpkg/TeXLive/TLPSRC.pm @@ -409,27 +409,27 @@ __END__ =head1 NAME -TeXLive::TLPSRC - TeX Live Package Source access module +C<TeXLive::TLPSRC> -- TeX Live Package Source access module =head1 SYNOPSIS - use TeXLive::TLPSRC; + use TeXLive::TLPSRC; - my $tlpsrc = TeXLive::TLPSRC->new( name => "foobar" ); - $tlpsrc->from_file("/some/tlpsrc/package.tlpsrc"); - $tlpsrc->from_file("package"); - $tlpsrc->writeout; - $tlpsrc->writeout(\*FILEHANDLE); + my $tlpsrc = TeXLive::TLPSRC->new(name => "foobar"); + $tlpsrc->from_file("/some/tlpsrc/package.tlpsrc"); + $tlpsrc->from_file("package"); + $tlpsrc->writeout; + $tlpsrc->writeout(\*FILEHANDLE); =head1 DESCRIPTION -The L<TeXLive::TLPSRC> module provide access to TeX Live Package Source +The C<TeXLive::TLPSRC> module provide access to TeX Live Package Source files, which contains all the information which cannot be automatically derived from the files in the TeX Live subversion repository. =head1 FILE SPECIFICATION -A L<tlpsrc> file has to consist of non-empty lines (except that initial +A C<tlpsrc> file has to consist of non-empty lines (except that initial and final empty lines are ignored) of the form I<key value> @@ -440,11 +440,11 @@ C<execute>, or C<depend>. The interpretation of the respective I<values> are: -=over +=over 6 =item C<name> -identifies the package, C<value> must consist only of [-_a-zA-Z0-9] +identifies the package, C<value> must consist only of C<[-_a-zA-Z0-9]>. =item C<category> @@ -461,8 +461,9 @@ package can be found in the TeX Catalogue. =item C<shortdesc> -gives a one line description of the package. Susequent entries will overwrite -the former ones. In TeX Live only used for collections and schemes. +gives a one line description of the package. Subsequent entries will +overwrite the former ones. In TeX Live only used for collections and +schemes. =item C<longdesc> @@ -484,28 +485,29 @@ the following possible values are understood by the installers: =over 6 -=item C<execute addMap I<font.map>> +=item C<execute addMap> I<font>C<.map> -enables the font map file I<font.map> in the F<updmap.cfg> file. +enables the font map file I<font>C<.map> in the C<updmap.cfg> file. -=item C<execute addMixedMap I<font.map>> +=item C<execute addMixedMap> I<font>C<.map> -enables the font map file I<font.map>> for Mixed mode in the F<updmap.cfg> file. +enables the font map file I<font>C<.map> for Mixed mode in the +C<updmap.cfg> file. =item C<execute BuildLanguageDat NN> activates all the hyphenation patterns found in -F<Master/texmf/tex/generic/config/language.NN.dat> in the generated -F<language.dat> file. +C<Master/texmf/tex/generic/config/language.NN.dat> in the generated +C<language.dat> file. =item C<execute BuildFormat FMTCFG> -activates all the formats present in F<Master/texmf/fmtutil/format.FMTCFG.cnf> -in the generated F<fmtutil.cnf> file. +activates all the formats present in C<Master/texmf/fmtutil/format.FMTCFG.cnf> +in the generated C<fmtutil.cnf> file. =back -=item C<(src|run|doc|bin)pattern I<pattern>> +=item C<(src|run|doc|bin)pattern> I<pattern> adds a pattern (see below) to the respective list of patterns. @@ -516,37 +518,38 @@ adds a pattern (see below) to the respective list of patterns. Patterns specify which files are to be included into a C<tlpobj> at expansion time. Patterns are of the form - [PREFIX]TYPE PAT + [PREFIX]TYPE PAT where - PREFIX = + | +! | ! - TYPE = t | f | d | r + PREFIX = + | +! | ! + TYPE = t | f | d | r The meaning of the various pattern types is =over -=item C<f path> +=item C<f >I<path> -includes all files which match C<path> where B<only> the last component -of C<path> can contain the usual glob characters * and ? (but no others!). +includes all files which match C<path> where B<only> the last +component of C<path> can contain the usual glob characters C<*> and +C<?> (but no others!). -=item C<d path> +=item C<d >I<path> includes all the files in and below the directory specified as C<path>. -=item C<t word1 ... wordN worldL> +=item C<t >I<word1 ... wordN worldL> includes all the files in and below all directories of the form - word1/word2/.../wordN/.../any/dirs/.../wordL/ + word1/word2/.../wordN/.../any/dirs/.../wordL/ i.e., the first words but the last form the prefix of the path, then there can be an arbitrary nesting of directories, followed by C<wordL> as another directory. -=item C<r regexp> +=item C<r> I<regexp> includes all files matching the regexp C</^regexp$/> @@ -557,73 +560,75 @@ patterns have the prefix C<+> (e.g., C<+f ...>), then the following patterns are B<automatically> added at expansion time (but never written to the textual representation): -=over +=over 6 -=item runpattern +=item C<runpattern> for runpatterns of category C<Package> - t texmf-dist topdir $name + t texmf-dist topdir $name -where C<topdir> is one of: bibtex context dvips fonts makeindex metafont -metapost mft omega scripts tex vtex. +where C<topdir> is one of: C<bibtex>, C<context>, C<dvips>, C<fonts>, +C<makeindex>, C<metafont>, C<metapost>, C<mft>, C<omega>, C<scripts>, +C<tex>, C<vtex>. For other categories B<no> patterns are automatically added to the list of runpatterns. -=item docpattern +=item C<docpattern> -for docpattern of category C<Package> +for C<docpattern> of category C<Package> - t texmf-dist doc $name + t texmf-dist doc $name -for docpattern of category C<Documentation> +for C<docpattern> of category C<Documentation> - t texmf-doc doc $name + t texmf-doc doc $name -=item srcpattern +=item C<srcpattern> -for srcpattern of category C<Package> +for C<srcpattern> of category C<Package> - t texmf-dist source $name + t texmf-dist source $name -for srcpattern of category C<Documentation> +for C<srcpattern> of category C<Documentation> - t texmf-doc source $name + t texmf-doc source $name =back binpatterns are never automatically added. -If the C<PREFIX> contains the symbol ! the meaning of the pattern is +If the C<PREFIX> contains the symbol C<!> the meaning of the pattern is reversed, i.e., file matching this pattern are removed from the list of included files. =head2 arch expansion -In case the string C<${ARCH}> occurs in one C<binpattern> it is +In case the string C<${>I<ARCH>C<}> occurs in one C<binpattern> it is automatically expanded to the respective architecture. -=head2 bat/exe/dll for win32 +=head2 C<bat/exe/dll> for win32 -For C<binpatterns> of the form C<f bin/win32/foobar> (i.e., also for a -binpattern of the form C<f bin/${ARCH}/foobar>) files F<foobar.bat>, -F<foobar.dll>, and F<foobar.exe> are also matched. +For C<binpattern>s of the form C<f bin/win32/foobar> (i.e., also for a +binpattern of the form C<f bin/${ARCH}/foobar>) files C<foobar.bat>, +C<foobar.dll>, and C<foobar.exe> are also matched. -The above two properties allows to capture the binaries for all architectures -in one binpattern +The above two properties allows to capture the binaries for all +architectures in one binpattern - binpattern f bin/${ARCH}/dvips + binpattern f bin/${ARCH}/dvips -and would get F<bin/win32/dvips.exe> into the runfiles for arch=win32. +and would get C<bin/win32/dvips.exe> into the runfiles for C<arch=win32>. -Note that the bat/exe expansion B<only> works for patterns of the C<f> type! +Note that the C<bat>/C<exe> expansion B<only> works for patterns of +the C<f> type! =head1 MEMBER ACCESS FUNCTIONS For any of the above I<keys> a function - $tlpsrc->key + $tlpsrc->key is available, which returns the current value when called without an argument, and sets the respective value when called with an argument. @@ -642,33 +647,37 @@ The following functions can be called for an C<TLPSRC> object: =over =item C<new> -(constructor) returns a new C<TLPSRC> object. The arguments to the C<new> -constructor can be in the usual hash representation for the different keys -above: - $tlpsrc = TLPSRC->new ( name => "foobar", shortdesc => "The foobar package" ); +The constructor C<new> returns a new C<TLPSRC> object. The arguments +to the C<new> constructor can be in the usual hash representation for +the different keys above: + + $tlpsrc=TLPSRC->new(name => "foobar", shortdesc => "The foobar package"); =item C<from_file("filename")> + reads a C<tlpsrc> file from disk. C<filename> can either be a full path (if it's readable, it's used), or just a package identifier such as C<plain>. In the latter case, the directory searched is the C<tlpsrc> sibling of the C<TeXLive> package directory where C<TLPSRC.pm> was found. - $tlpsrc = new TeXLive::TLPSRC; - $tlpsrc->from_file("/path/to/the/tlpsrc/somepkg.tlpsrc"); - $tlpsrc->from_file("somepkg"); + $tlpsrc=new TeXLive::TLPSRC; + $tlpsrc->from_file("/path/to/the/tlpsrc/somepkg.tlpsrc"); + $tlpsrc->from_file("somepkg"); =item C<writeout> + writes the textual representation of a C<TLPSRC> object to stdout, or the filehandle if given: - $tlpsrc->writeout; - $tlpsrc->writeout(\*FILEHANDLE); + $tlpsrc->writeout; + $tlpsrc->writeout(\*FILEHANDLE); =item C<make_tlpobj($tltree)> + creates a C<TLPOBJ> object from a C<TLPSRC> object and a C<TLTREE> object. This function does the necessary work to expand the manual data and -enrich it which the actual content from <$tltree> to a C<TLPOBJ> object. +enrich it which the actual content from C<$tltree> to a C<TLPOBJ> object. =back |