BibTeX...::Entry(3pm)

๐ŸŒธ NAME ๐ŸŒธ

okay bestie, welcome to the BibTeX...::Entry(3pm) page from User Contributed Perl Documentation. This is all about BibTeX::Parser::Entry โ€” the lil class that contains a single entry of a BibTeX document. Itโ€™s giving โ€œone entry, whole objectโ€ energy. ๐Ÿ’–

โœจ SYNOPSIS โœจ

This class is literally a wrapper for a single BibTeX entry. It is usually created by BibTeX::Parser. No cap.

use BibTeX::Parser::Entry;

my $entry = BibTeX::Parser::Entry->new($type, $key, $parse_ok, \%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;

        ...

        print $entry->to_string;
}

๐Ÿ› ๏ธ FUNCTIONS ๐Ÿ› ๏ธ

โœจ new โœจ

Create new entry. Fresh entry, fresh vibes. ๐ŸŽ€

๐ŸŒŸ parse_ok ๐ŸŒŸ

If the entry was correctly parsed, this method returns a true value, false otherwise. Vibe check: parsed or not parsed.

๐Ÿฉน error ๐Ÿฉน

Return the error message, if the entry could not be parsed or undef otherwise. So if it flopped, this tells you why. ๐Ÿ˜ญ

๐Ÿท๏ธ type ๐Ÿท๏ธ

Get or set the type of the entry, eg. 'ARTICLE' or 'BOOK'. Return value is always uppercase. Uppercase always, periodt.

๐Ÿ”‘ key ๐Ÿ”‘

Get or set the reference key of the entry. Thatโ€™s the entryโ€™s main-character identifier. ๐Ÿ‘‘

๐Ÿ“ 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.

๐Ÿงผ cleaned_field($name) ๐Ÿงผ

Retrieve the contents of a field in a format that is cleaned of TeX markup. Clean, clean, clean.

๐Ÿงš 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.

๐Ÿงš 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.

๐Ÿ‘ฏ author([@authors]) ๐Ÿ‘ฏ

Get or set the authors. Returns an array of BibTeX::Author objects. The parameters can either be BibTeX::Author objects or strings.

Note: You can also change the authors with $entry->field('author', $authors_string)

๐Ÿ‘ฏ editor([@editors]) ๐Ÿ‘ฏ

Get or set the editors. Returns an array of BibTeX::Author objects. The parameters can either be BibTeX::Author objects or strings.

Note: You can also change the authors with $entry->field('editor', $editors_string)

๐Ÿ“‹ fieldlist () ๐Ÿ“‹

Returns a list of all the fields used in this entry. The whole field roster, bestie. ๐Ÿซถ

โœ… has($fieldname) โœ…

Returns a true value if this entry has a value for $fieldname.

โฎ๏ธ pre () โฎ๏ธ

Return the text in BibTeX file before the entry.

๐Ÿ“ฆ raw_bibtex () ๐Ÿ“ฆ

Return raw BibTeX entry (if available).

๐ŸŽ€ to_string ([options]) ๐ŸŽ€

Returns a text of the BibTeX entry in BibTeX format. Options are a hash.

The return string is the entry reformated with lines indented by 4 spaces and the @entrytype uppercased. Example:

@BOOK{Knuth:TAOCP1,
    author = {Knuth, Donald E.},
    publisher = {Addison-Wesley},
    title = {The Art of Computer Programming},
    year = {1968},
    url = {https://www-cs-faculty.stanford.edu/~knuth/taocp.html},
}
  • canonize_names โ€” If true (the default), authors' and editors' names are translated into canonical bibtex form. The command $entry->to_string(canonize_names=>0) overrides this behavior.
  • field_capitalization โ€” Capitalization of the field names. Can take values 'Uppercase', 'Lowercase' (the default) or 'Titlecase'
  • print_pre โ€” False by default. If true, the text in the Bib file before the entry is printed. Note that at present we assume the text before the entry NEVER has the @ symbol inside
  • type_capitalization โ€” Capitalization of the type names. Can take values 'Uppercase' (the default), 'Lowercase' or 'Titlecase'

๐Ÿท๏ธ VERSION ๐Ÿท๏ธ

version 1.95

๐Ÿ‘‘ AUTHOR ๐Ÿ‘‘

Gerhard Gossen <gerhard.gossen@googlemail.com> and Boris Veytsman <boris@varphi.com> and Karl Berry <karl@freefriends.org>

Copyright 2013-2026 Gerhard Gossen, Boris Veytsman, Karl Berry

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

okay bestie, thatโ€™s the whole page โ€” perl v5.40.1, 2026-06-26, and the BibTeX...::Entry(3pm) manual. bye and slay! ๐Ÿ’…โœจ

๐Ÿ“ฆ where this page comes from