logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Text::BibTeX::BibSort - generate sort keys for bibliographic entries

Author

       Greg Ward <gward@python.net>

Description

       "Text::BibTeX::BibSort" is a base class of "Text::BibTeX::BibEntry" for generating sort keys from
       bibliography entries.  It could in principle (and, someday, might) offer a wide range of highly
       customizable sort-key generators.  Currently, though, it provides only a single method ("sort_key") for
       public use, and that method only pays attention to one structure option, "sortby".

Methods

       sort_key ()
           Generates  a  sort  key  for  a single bibliographic entry.  Assumes this entry conforms to the "Bib"
           database structure.  The nature of this sort key is controlled by the "sortby" option, which  can  be
           either  "name"  or  "year".  (The "namestyle" also has a role, in determining how author/editor names
           are formatted for inclusion in the sort key.)

           For by-name sorting (which is how BibTeX's standard styles work), the sort key consists of one of the
           "author", "editor", "organization", or "key" fields (depending on the entry type and which fields are
           actually present), followed by the year and the title.  All  fields  are  drastically  simplified  to
           produce  the  sort key: non-English letters are mercilessly anglicized, non-alphabetic characters are
           stripped,  and  everything  is  forced  to  lowercase.   (The  first  two  steps  are  done  by   the
           "purify_string"  routine;  see  "Generic  string-processing  functions"  in  Text::BibTeX for a brief
           description, and the description of the C function bt_purify_string() in bt_misc  for  all  the  gory
           details.)

Name

       Text::BibTeX::BibSort - generate sort keys for bibliographic entries

See Also

       Text::BibTeX::Structure, Text::BibTeX::Bib, Text::BibTeX::BibFormat

Synopsis

          # Assuming $entry comes from a database of the 'Bib' structure
          # (i.e., that it's blessed into the BibEntry class, which inherits
          # the sort_key method from BibSort):
          $sort_key = $entry->sort_key;

See Also