NAME

App::PDFLibrarian - Manage a library of academic papers in PDF format with embedded BibTeX metadata.

INSTALLATION

Requires the following packages:

Then install from CPAN:

cpanm App::PDFLibrarian

APPLICATIONS

pdf-lbr-import-pdf - Import PDF files into the PDF library.

SYNOPSIS

pdf-lbr-import-pdf --version pdf-lbr-import-pdf --help|-h

pdf-lbr-import-pdf [ --no-pdf-bib ] [ --manual-entry|-e type --manual-field|-f field=value ... ] files|directories ...

... files|directories ... | pdf-lbr-import-pdf ...

DESCRIPTION

pdf-lbr-import-pdf imports PDF files and/or any PDF files in directories into the PDF library. If --no-pdf-bib is specified, any BibTeX metadata embedded in the PDF files will be ignored. If files|directories are not given on the command line, they are read from standard input, one per line.

The user will be asked to select an online query database and supply a query value which uniquely identifies the paper(s), in order for App::PDFLibrarian to retrieve a BibTeX record for the paper(s). By default App::PDFLibrarian tries to extract a Digital Object Identifier from the PDF paper(s) for use in the query. If the query is successful, the user will have an opportunity to edit the BibTeX record(s) before the PDF files are added to the library.

The user may also enter the BibTeX record manually. The type of the manual BibTeX entry defaults to article, unless the --manual-entry option specifies a different type. Additional manual BibTeX _field_s may be set using the --manual-field option.

Note that the editor will open the BibTeX entries of all PDF files passed to the command line, even if they are already in the library. In this way, the user may call up relevant existing BibTeX entries as a guide to filling out a new BibTeX entry; for example: entries of the same type (e.g. book, techreport), entries that appear in the same journal/conference series, etc.

pdf-lbr-edit-bib - Edit BibTeX bibliographic metadata in PDF files.

SYNOPSIS

pdf-lbr-edit-bib --version pdf-lbr-edit-bib --help|-h

pdf-lbr-edit-bib links|link-directories ...

... links|link-directories ... | pdf-lbr-edit-bib ...

DESCRIPTION

pdf-lbr-edit-bib reads BibTeX bibliographic metadata embedded in PDF files given by links and/or within link-directories in the PDF links directory. If links|link-directories are not given on the command line, they are read from standard input, one per line.

The BibTeX metadata is written to a temporary file, which is then opened in an editing program, given either by the $VISUAL or $EDITOR environment variables, or else the program editor. The macros section of the configuration file is parsed for custom BibTeX macros to define.

Any modifications are then written back to the PDF files given by the file field in each BibTeX entry, and the PDF library links rebuilt as needed.

pdf-lbr-output-bib - Output BibTeX bibliographic metadata from PDF files.

SYNOPSIS

pdf-lbr-output-bib --version pdf-lbr-output-bib --help|-h

pdf-lbr-output-bib [ --clipboard|-c ] [ --max-authors|-m count [ --only-first-author|-f ] ] [ --filter|-F [type:]field[?iffield|!ifnotfield...]=spec ... ] [ --no-default-filter|-N ] [ --abbreviate|-a scheme ... ] [ --output-text-format|-o type=<format> ... | --output-text|-O | --pdf-file-comment|-P ] files|directories ...

... files|directories ... | pdf-lbr-output-bib ...

DESCRIPTION

pdf-lbr-output-bib reads BibTeX bibliographic metadata embedded in PDF files and/or any PDF files in directories. If files|directories are not given on the command line, they are read from standard input, one per line.

The BibTeX metadata is then printed to standard output; if --clipboard is given, it is instead copied to the clipboard.

OPTIONS

pdf-lbr-output-key - Output BibTeX bibliographic keys from PDF files.

SYNOPSIS

pdf-lbr-output-key --version pdf-lbr-output-key --help|-h

pdf-lbr-output-key [ --clipboard|-c ] files|directories ...

... files|directories ... | pdf-lbr-output-key ...

DESCRIPTION

pdf-lbr-output-key reads BibTeX bibliographic keys for PDF files and/or any PDF files in directories. If files|directories are not given on the command line, they are read from standard input, one per line.

The BibTeX keys are then printed to standard output, separated by commas; if --clipboard is given, they are instead copied to the clipboard.

pdf-lbr-replace-pdf - Replace a PDF file in the PDF library with a new PDF file.

SYNOPSIS

pdf-lbr-replace-pdf --version pdf-lbr-replace-pdf --help|-h

pdf-lbr-replace-pdf [-o output-directory] old-link new-file

DESCRIPTION

pdf-lbr-replace-pdf replaces a PDF file, given by a old-link in the PDF links directory, with a new PDF file.

The replaced PDF file is moved to the directory output-directory, or else to the user's home directory.

pdf-lbr-remove-pdf - Remove a PDF file from the PDF library.

SYNOPSIS

pdf-lbr-remove-pdf --version pdf-lbr-remove-pdf --help|-h

pdf-lbr-remove-pdf [-o output-directory] link

DESCRIPTION

pdf-lbr-remove-pdf removes a PDF file, given by a link in the PDF links directory, from the PDF library.

The PDF file is moved to the directory output-directory, or else to the user's home directory.

SYNOPSIS

pdf-lbr-rebuild-links --version pdf-lbr-rebuild-links --help|-h

pdf-lbr-rebuild-links [-o output-directory]

DESCRIPTION

pdf-lbr-rebuild-links rebuilds the PDF links directory.

All BibTeX metadata is written to a temporary file, which is then opened in an editing program to check for errors. The editing program is given either by the $VISUAL or $EDITOR environment variables, or else the program editor.

PDF files for any BibTeX entries removing during editing are moved to the directory output-directory, or else to the user's home directory.

pdf-lbr-iso4-abbr - Output ISO4 abbreviations.

SYNOPSIS

pdf-lbr-iso4-abbr --version pdf-lbr-iso4-abbr --help|-h

pdf-lbr-iso4-abbr [ --separator|-s ] words ...

DESCRIPTION

pdf-lbr-iso4-abbr outputs the ISO4 abbreviation of words using the ISSN List of Title Word Abbreviations. The abbreviation is also copied to the clipboard.

OPTIONS

COPYRIGHT AND LICENSE

Copyright (C) 2016--2026 Karl Wette. Licensed under the GNU General Public License, version 3 or later.