Biber::Input::file::bibtex

Section: User Contributed Perl Documentation (3)
Updated: 2020-07-27
Page Index
 

init_cache

    Invalidate the T::B object cache. Used only in tests when e.g. we change the encoding
    settings and therefore must force a re-read of the data

 

TBSIG

     Signal handler to catch fatal Text::BibTex SEGFAULTS. It has bugs
     and we want to say at least something if it coredumps

 

extract_entries

   Main data extraction routine.
   Accepts a data source identifier, preprocesses the file and then
   looks for the passed keys, creating entries when it finds them and
   passes out an array of keys it didn't find.

 

create_entry

   Create a Biber::Entry object from a Text::BibTeX object
   Be careful in here, all T::B set methods are UTF-8/NFC boundaries
   so be careful to encode(NFC()) on calls. Windows won't handle UTF-8
   in T::B btparse gracefully and will die.

 

cache_data

   Caches file data into T::B objects indexed by the original
   datasource key, decoded into UTF8

 

preprocess_file

   Convert file to UTF-8 and potentially decode LaTeX macros to UTF-8

 

parse_decode

  Partially parse the .bib datasource and latex_decode the data contents.
  We do this because latex_decoding the entire buffer is difficult since
  such decoding is regexp based and since braces are used to protect data in
  .bib files, it makes it hard to do some parsing.

 

parsename

    Given a name string, this function returns a Biber::Entry::Name object
    with all parts of the name resolved according to the BibTeX conventions.

    parsename('John Doe', 'author', 'key')
    returns an object which internally looks a bit like this:

    { given          => {string => 'John', initial => ['J']},
      family         => {string => 'Doe', initial => ['D']},
      prefix         => {string => undef, initial => undef},
      suffix         => {string => undef, initial => undef},
      id             => 32RS0Wuj0P,
      strip          => {'given'  => 0,
                         'family' => 0,
                         'prefix' => 0,
                         'suffix' => 0}
      }

 

parsename_x

    Given a name string in extended format, this function returns a Biber::Entry::Name object
    with all parts of the name resolved according to the BibTeX conventions.

    parsename_x('given=John, family=Doe')
    returns an object which internally looks a bit like this:

    { given          => {string => 'John', initial => ['J']},
      family         => {string => 'Doe', initial => ['D']},
      prefix         => {string => undef, initial => undef},
      suffix         => {string => undef, initial => undef},
      id             => 32RS0Wuj0P,
      sortingnamekeytemplatename => 'template name',
    }

 

NAME

Biber::Input::file::bibtex - look in a BibTeX file for an entry and create it if found  

DESCRIPTION

Provides the extract_entries() method to get entries from a BibTeX data source and instantiate Biber::Entry objects for what it finds  

AUTHOR

Philip Kime "<philip at kime.org.uk>"  

BUGS

Please report any bugs or feature requests on our Github tracker at <https://github.com/plk/biber/issues>.  

COPYRIGHT & LICENSE

Copyright 2009-2012 Francois Charette and Philip Kime, all rights reserved. Copyright 2012-2019 Philip Kime, all rights reserved.

This module is free software. You can redistribute it and/or modify it under the terms of the Artistic License 2.0.

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.


 

Index

init_cache
TBSIG
extract_entries
create_entry
cache_data
preprocess_file
parse_decode
parsename
parsename_x
NAME
DESCRIPTION
AUTHOR
BUGS
COPYRIGHT & LICENSE