From 4a9225ab54c95efafd2534812e2f53697fd0f6d9 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 25 Oct 2015 22:57:55 +0000 Subject: bibtexperllibs (25oct15) git-svn-id: svn://tug.org/texlive/trunk@38711 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/support/bibtexperllibs/BibTeXParser.3pm | 204 ++++++++++++++++++ .../support/bibtexperllibs/BibTeXParserAuthor.3pm | 193 ++++++++++++++++++ .../support/bibtexperllibs/BibTeXParserEntry.3pm | 227 +++++++++++++++++++++ .../doc/support/bibtexperllibs/LaTeXToUnicode.3pm | 180 ++++++++++++++++ .../bibtexperllibs/LaTeXToUnicodeTables.3pm | 179 ++++++++++++++++ 5 files changed, 983 insertions(+) create mode 100644 Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParser.3pm create mode 100644 Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserAuthor.3pm create mode 100644 Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserEntry.3pm create mode 100644 Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicode.3pm create mode 100644 Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicodeTables.3pm (limited to 'Master/texmf-dist/doc/support') diff --git a/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParser.3pm b/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParser.3pm new file mode 100644 index 00000000000..fa79185547d --- /dev/null +++ b/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParser.3pm @@ -0,0 +1,204 @@ +.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "BibTeX::Parser 3pm" +.TH BibTeX::Parser 3pm "2015-10-24" "perl v5.10.1" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH "NAME" +BibTeX::Parser \- A pure perl BibTeX parser +.SH "VERSION" +.IX Header "VERSION" +version 0.65 +.SH "SYNOPSIS" +.IX Header "SYNOPSIS" +Parses BibTeX files. +.PP +.Vb 2 +\& use BibTeX::Parser; +\& use IO::File; +\& +\& my $fh = IO::File\->new("filename"); +\& +\& # Create parser object ... +\& my $parser = BibTeX::Parser\->new($fh); +\& +\& # ... and iterate over entries +\& while (my $entry = $parser\->next ) { +\& if ($entry\->parse_ok) { +\& my $type = $entry\->type; +\& my $title = $entry\->field("title"); +\& +\& my @authors = $entry\->author; +\& # or: +\& my @editors = $entry\->editor; +\& +\& foreach my $author (@authors) { +\& print $author\->first . " " +\& . $author\->von . " " +\& . $author\->last . ", " +\& . $author\->jr; +\& } +\& } else { +\& warn "Error parsing file: " . $entry\->error; +\& } +\& } +.Ve +.SH "NAME" +BibTeX::Parser \- A pure perl BibTeX parser +.SH "VERSION" +.IX Header "VERSION" +version 0.65 +.SH "FUNCTIONS" +.IX Header "FUNCTIONS" +.SS "new" +.IX Subsection "new" +Creates new parser object. +.PP +Parameters: +.PP +.Vb 1 +\& * fh: A filehandle +.Ve +.SS "next" +.IX Subsection "next" +Returns the next parsed entry or undef. +.SS "\s-1SEE\s0 \s-1ALSO\s0" +.IX Subsection "SEE ALSO" +.IP "\(bu" 4 +BibTeX::Parser::Entry +.IP "\(bu" 4 +BibTeX::Parser::Author +.SH "AUTHOR" +.IX Header "AUTHOR" +Gerhard Gossen +.SH "COPYRIGHT AND LICENSE" +.IX Header "COPYRIGHT AND LICENSE" +This software is copyright (c) 2013 by Gerhard Gossen. +.PP +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. diff --git a/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserAuthor.3pm b/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserAuthor.3pm new file mode 100644 index 00000000000..0f1509c5489 --- /dev/null +++ b/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserAuthor.3pm @@ -0,0 +1,193 @@ +.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "BibTeX::Parser::Author 3pm" +.TH BibTeX::Parser::Author 3pm "2015-10-24" "perl v5.10.1" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH "NAME" +BibTeX::Parser::Author +.SH "VERSION" +.IX Header "VERSION" +version 0.65 +.SH "SYNOPSIS" +.IX Header "SYNOPSIS" +This class ist a wrapper for a single BibTeX author. It is usually created +by a BibTeX::Parser. +.PP +.Vb 1 +\& use BibTeX::Parser::Author; +\& +\& my $entry = BibTeX::Parser::Author\->new($full_name); +\& +\& my $firstname = $author\->first; +\& my $von = $author\->von; +\& my $last = $author\->last; +\& my $jr = $author\->jr; +\& +\& # or ... +\& +\& my ($first, $von, $last, $jr) = BibTeX::Author\->split($fullname); +.Ve +.SH "NAME" +BibTeX::Author \- Contains a single author for a BibTeX document. +.SH "VERSION" +.IX Header "VERSION" +version 0.65 +.SH "FUNCTIONS" +.IX Header "FUNCTIONS" +.SS "new" +.IX Subsection "new" +Create new author object. Expects full name as parameter. +.SS "first" +.IX Subsection "first" +Set or get first name(s). +.SS "von" +.IX Subsection "von" +Set or get 'von' part of name. +.SS "last" +.IX Subsection "last" +Set or get last name(s). +.SS "jr" +.IX Subsection "jr" +Set or get 'jr' part of name. +.SS "split" +.IX Subsection "split" +Split name into (firstname, von part, last name, jr part). Returns array +with four strings, some of them possibly empty. +.SS "to_string" +.IX Subsection "to_string" +Return string representation of the name. +.SH "AUTHOR" +.IX Header "AUTHOR" +Gerhard Gossen +.SH "COPYRIGHT AND LICENSE" +.IX Header "COPYRIGHT AND LICENSE" +This software is copyright (c) 2013 by Gerhard Gossen. +.PP +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. diff --git a/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserEntry.3pm b/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserEntry.3pm new file mode 100644 index 00000000000..c145295b33a --- /dev/null +++ b/Master/texmf-dist/doc/support/bibtexperllibs/BibTeXParserEntry.3pm @@ -0,0 +1,227 @@ +.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "BibTeX::Parser::Entry 3pm" +.TH BibTeX::Parser::Entry 3pm "2015-10-24" "perl v5.10.1" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH "NAME" +BibTeX::Parser::Entry +.SH "VERSION" +.IX Header "VERSION" +version 0.65 +.SH "SYNOPSIS" +.IX Header "SYNOPSIS" +This class ist a wrapper for a single BibTeX entry. It is usually created +by a BibTeX::Parser. +.PP +.Vb 1 +\& use BibTeX::Parser::Entry; +\& +\& my $entry = BibTeX::Parser::Entry\->new($type, $key, $parse_ok, \e%fields); +\& +\& if ($entry\->parse_ok) { +\& my $type = $entry\->type; +\& my $key = $enty\->key; +\& print $entry\->field("title"); +\& my @authors = $entry\->author; +\& my @editors = $entry\->editor; +\& +\& ... +\& } +.Ve +.SH "NAME" +BibTeX::Entry \- Contains a single entry of a BibTeX document. +.SH "VERSION" +.IX Header "VERSION" +version 0.65 +.SH "FUNCTIONS" +.IX Header "FUNCTIONS" +.SS "new" +.IX Subsection "new" +Create new entry. +.SS "parse_ok" +.IX Subsection "parse_ok" +If the entry was correctly parsed, this method returns a true value, false otherwise. +.SS "error" +.IX Subsection "error" +Return the error message, if the entry could not be parsed or undef otherwise. +.SS "type" +.IX Subsection "type" +Get or set the type of the entry, eg. '\s-1ARTICLE\s0' or '\s-1BOOK\s0'. Return value is +always uppercase. +.SS "key" +.IX Subsection "key" +Get or set the reference key of the entry. +.ie n .SS "field($name [, $value])" +.el .SS "field($name [, \f(CW$value\fP])" +.IX Subsection "field($name [, $value])" +Get or set the contents of a field. The first parameter is the name of the +field, the second (optional) value is the new value. +.SS "cleaned_field($name)" +.IX Subsection "cleaned_field($name)" +Retrieve the contents of a field in a format that is cleaned of TeX markup. +.SS "cleaned_author" +.IX Subsection "cleaned_author" +Get an array of BibTeX::Parser::Author objects for the authors of this +entry. Each name has been cleaned of accents and braces. +.SS "cleaned_editor" +.IX Subsection "cleaned_editor" +Get an array of BibTeX::Parser::Author objects for the editors of this +entry. Each name has been cleaned of accents and braces. +.SS "author([@authors])" +.IX Subsection "author([@authors])" +Get or set the authors. Returns an array of BibTeX::Author +objects. The parameters can either be BibTeX::Author objects +or strings. +.PP +Note: You can also change the authors with \f(CW$entry\fR\->field('author', \f(CW$authors_string\fR) +.SS "editor([@editors])" +.IX Subsection "editor([@editors])" +Get or set the editors. Returns an array of BibTeX::Author +objects. The parameters can either be BibTeX::Author objects +or strings. +.PP +Note: You can also change the authors with \f(CW$entry\fR\->field('editor', \f(CW$editors_string\fR) +.SS "\fIfieldlist()\fP" +.IX Subsection "fieldlist()" +Returns a list of all the fields used in this entry. +.SS "has($fieldname)" +.IX Subsection "has($fieldname)" +Returns a true value if this entry has a value for \f(CW$fieldname\fR. +.SS "raw_bibtex" +.IX Subsection "raw_bibtex" +Return raw BibTeX entry (if available). +.SH "AUTHOR" +.IX Header "AUTHOR" +Gerhard Gossen +.SH "COPYRIGHT AND LICENSE" +.IX Header "COPYRIGHT AND LICENSE" +This software is copyright (c) 2013 by Gerhard Gossen. +.PP +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. diff --git a/Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicode.3pm b/Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicode.3pm new file mode 100644 index 00000000000..8c53a9fb0ec --- /dev/null +++ b/Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicode.3pm @@ -0,0 +1,180 @@ +.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "LaTeX::ToUnicode 3pm" +.TH LaTeX::ToUnicode 3pm "2015-10-24" "perl v5.10.1" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH "NAME" +LaTeX::ToUnicode \- Convert LaTeX commands to Unicode +.SH "VERSION" +.IX Header "VERSION" +version 0.03 +.SH "SYNOPSIS" +.IX Header "SYNOPSIS" +.Vb 1 +\& use LaTeX::ToUnicode qw( convert ); +\& +\& convert( \*(Aq{\e"a}\*(Aq ) eq \*(Aqa\*:\*(Aq; # true +\& convert( \*(Aq"a\*(Aq, german => 1 ) eq \*(Aqa\*:\*(Aq; # true, \`german\*(Aq package syntax +\& convert( \*(Aq"a\*(Aq, ) eq \*(Aq"a\*(Aq; # not enabled by default +.Ve +.SH "DESCRIPTION" +.IX Header "DESCRIPTION" +This module provides a method to convert LaTeX-style markups for accents etc. +into their Unicode equivalents. It translates commands for special characters +or accents into their Unicode equivalents and removes formatting commands. +.PP +I use this module to convert values from BibTeX files into plain text, if your +use case is different, \s-1YMMV\s0. +.PP +In contrast to TeX::Encode, this module does not create \s-1HTML\s0 of any kind. +.SH "FUNCTIONS" +.IX Header "FUNCTIONS" +.ie n .SS "convert( $string, %options )" +.el .SS "convert( \f(CW$string\fP, \f(CW%options\fP )" +.IX Subsection "convert( $string, %options )" +Convert the text in \f(CW$string\fR that contains LaTeX into a plain(er) Unicode +string. All escape sequences for special characters (e.g. \ei, \e"a, ...) are +converted, formatting commands (e.g. {\eit ...}) are removed. +.PP +\&\f(CW%options\fR allows you to enable additional translations. This values are +recognized: +.ie n .IP """german""" 4 +.el .IP "\f(CWgerman\fR" 4 +.IX Item "german" +If true, the commands introduced by the package `german' (e.g. \f(CW\*(C`"a\*(C'\fR eq \f(CW\*(C`a\*:\*(C'\fR, +note the missing backslash) are also handled. +.SH "AUTHOR" +.IX Header "AUTHOR" +Gerhard Gossen +.SH "COPYRIGHT AND LICENSE" +.IX Header "COPYRIGHT AND LICENSE" +This software is copyright (c) 2010 by Gerhard Gossen. +.PP +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. diff --git a/Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicodeTables.3pm b/Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicodeTables.3pm new file mode 100644 index 00000000000..5ffd04ef9b8 --- /dev/null +++ b/Master/texmf-dist/doc/support/bibtexperllibs/LaTeXToUnicodeTables.3pm @@ -0,0 +1,179 @@ +.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "LaTeX::ToUnicode::Tables 3pm" +.TH LaTeX::ToUnicode::Tables 3pm "2015-10-24" "perl v5.10.1" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH "NAME" +LaTeX::ToUnicode::Tables \- Character tables for LaTeX::ToUnicode +.SH "VERSION" +.IX Header "VERSION" +version 0.03 +.SH "CONSTANTS" +.IX Header "CONSTANTS" +.ie n .SS "%COMMANDS" +.el .SS "\f(CW%COMMANDS\fP" +.IX Subsection "%COMMANDS" +Names of argument-less commands like \f(CW\*(C`\eLaTeX\*(C'\fR as keys. +Values are the replacements. +.ie n .SS "@SPECIALS" +.el .SS "\f(CW@SPECIALS\fP" +.IX Subsection "@SPECIALS" +TeX's metacharacters that need to be escaped in TeX documents +.ie n .SS "%SYMBOLS" +.el .SS "\f(CW%SYMBOLS\fP" +.IX Subsection "%SYMBOLS" +Predefined escape commands for extended characters. +.ie n .SS "%ACCENTS" +.el .SS "\f(CW%ACCENTS\fP" +.IX Subsection "%ACCENTS" +Two-level hash of accented characters like \f(CW\*(C`\e\*(Aq{a}\*(C'\fR. The keys of this hash +are the accent symbols, e.g \f(CW\*(C`\`\*(C'\fR, \f(CW\*(C`"\*(C'\fR or \f(CW\*(C`\*(Aq\*(C'\fR. The corresponding values are +references to hashes, where the keys are the base letters and the values are +the decoded characters. As an example, \f(CW\*(C`$ACCENTS{\*(Aq\`\*(Aq}\->{a} eq \*(Aqa\*`\*(Aq\*(C'\fR. +.ie n .SS "%GERMAN" +.el .SS "\f(CW%GERMAN\fP" +.IX Subsection "%GERMAN" +Escape sequences as defined by the package `german'/`ngerman', e.g. +\&\f(CW\*(C`"a\*(C'\fR (a with umlaut), \f(CW\*(C`"s\*(C'\fR (german sharp s) or \f(CW"\`"\fR (german left quote). +Note the missing backslash. +.PP +The keys of this hash are the literal escape sequences. +.ie n .SS "@MARKUPS" +.el .SS "\f(CW@MARKUPS\fP" +.IX Subsection "@MARKUPS" +Command names of formatting commands like \f(CW\*(C`\ett\*(C'\fR +.SH "AUTHOR" +.IX Header "AUTHOR" +Gerhard Gossen +.SH "COPYRIGHT AND LICENSE" +.IX Header "COPYRIGHT AND LICENSE" +This software is copyright (c) 2010 by Gerhard Gossen. +.PP +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. -- cgit v1.2.3