Explore

This command is in an experimental stage but it might be useful for many people.

Imagine you want to search for some papers online, but you don’t want to go into a browser and look for it. Explore gives you way to do this, using several services available online, more should be coming on the way.

An excellent such resource is crossref, which you can use by using the subcommand crossref:

papis explore crossref --author 'Freeman Dyson'

If you issue this command, you will see some text but basically nothing will happen. This is because explore is conceived in such a way as to concatenate commands, doing a simple

papis explore crossref -h

will tell you which commands are available. Let us suppose that you want to look for some documents on crossref, say some papers of Schroedinger, and you want to store them into a bibtex file called lib.bib, then you could concatenate the commands crossref and export --format bibtex as such

papis explore crossref -a 'Schrodinger' export --format bibtex lib.bib

This will store everything that you got from crossref in the file lib.bib and store in bibtex format. explore is much more flexible than that, you can also pick just one document to store, for instance let’s assume that you don’t want to store all retrieved documents but only one that you pick, the pick command will take care of it

papis explore crossref -a 'Schrodinger' pick export --format bibtex lib.bib

notice how the pick command is situated before the export. More generally you could write something like

papis explore \
    crossref -a Schroedinger \
    crossref -a Einstein \
    arxiv -a 'Felix Hummel' \
    export --format yaml docs.yaml \
    pick  \
    export --format bibtex specially-picked-document.bib

The upper command will look in crossref for documents authored by Schrodinger, then also by Einstein, and will look on the arxiv for papers authored by Felix Hummel. At the end, all these documents will be stored in the docs.yaml. After that we pick one document from them and store the information in the file specially-picked-document.bib, and we could go on and on.

If you want to follow-up on these documents and get them again to pick one, you could use the yaml command to read in document information from a yaml file, i.e., the previously created docs.yaml

papis explore \
    yaml docs.yaml \
    pick \
    cmd 'papis scihub {doc[doi]}' \
    cmd 'firefox {doc[url]}'

In this last example, we read the documents’ information from docs.yaml and pick a document, which then feed into the explore cmd command, that accepts a papis formatting string to issue a general shell command. In this case, the picked document gets fed into the papis scihub command which tries to download the document using scihub, and also this very document is tried to be opened by firefox (in case the document does have a url).

Cli

papis explore

Explore new documents using a variety of resources

papis explore [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...

Options

-h, --help

Show this message and exit.

add

papis explore add [OPTIONS]

arxiv

Look for documents on ArXiV.org.

Examples of its usage are

papis explore arxiv -a ‘Hummel’ -m 100 arxiv -a ‘Garnet Chan’ pick

If you want to search for the exact author name ‘John Smith’, you should enclose it in extra quotes, as in the example below

papis explore arxiv -a ‘“John Smith”’ pick

papis explore arxiv [OPTIONS]

Options

-h, --help

Show this message and exit.

-q, --query <query>
-a, --author <author>
-t, --title <title>
--abstract <abstract>
--comment <comment>
--journal <journal>
--report-number <report_number>
--category <category>
--id-list <id_list>
--page <page>
-m, --max <max>

base

Look for documents on the BielefeldAcademicSearchEngine

Examples of its usage are

papis explore base -q ‘Albert einstein’ pick cmd ‘firefox {doc[url]}’

papis explore base [OPTIONS]

Options

-h, --help

Show this message and exit.

-q, --query <query>

bibtex

Import documents from a bibtex file

Examples of its usage are

papis explore bibtex lib.bib pick

papis explore bibtex [OPTIONS] BIBFILE

Options

-h, --help

Show this message and exit.

Arguments

BIBFILE

Required argument

citations

Query the citations of a paper

Example:

Go through the citations of a paper and export it in a yaml file

papis explore citations ‘einstein’ export –format yaml einstein.yaml

papis explore citations [OPTIONS] [QUERY]

Options

--doc-folder <doc_folder>

Apply action to a document path

-h, --help

Show this message and exit.

-s, --save

Store the citations in the document’s folder for later use

--rmfile

Remove the stored citations file

-m, --max-citations <max_citations>

Number of citations to be retrieved

Arguments

QUERY

Optional argument

cmd

Run a general command on the document list

Examples of its usage are:

Look for 200 Schroedinger papers, pick one, and add it via papis-scihub

papis explore crossref -m 200 -a ‘Schrodinger’

pick cmd ‘papis scihub {doc[doi]}’

papis explore cmd [OPTIONS] COMMAND

Options

-h, --help

Show this message and exit.

Arguments

COMMAND

Required argument

crossref

Look for documents on crossref.org.

Examples of its usage are

papis explore crossref -a ‘Albert einstein’ pick export –bibtex lib.bib

papis explore crossref [OPTIONS]

Options

-h, --help

Show this message and exit.

-q, --query <query>

General query

-a, --author <author>

Author of the query

-t, --title <title>

Title of the query

-m, --max <_ma>

Maximum number of results

-f, --filter <_filters>

Filters to apply

-o, --order <order>

Order of appearance according to sorting

Default

desc

Options

asc | desc

-s, --sort <sort>

Sorting parameter

Default

score

Options

relevance | score | updated | deposited | indexed | published | published-print | published-online | issued | is-referenced-by-count | references-count

dissemin

Look for documents on dissem.in

Examples of its usage are

papis explore dissemin -q ‘Albert einstein’ pick cmd ‘firefox {doc[url]}’

papis explore dissemin [OPTIONS]

Options

-h, --help

Show this message and exit.

-q, --query <query>

export

Export retrieved documents into various formats for later use

Examples of its usage are

papis explore crossref -m 200 -a ‘Schrodinger’ export –yaml lib.yaml

papis explore export [OPTIONS]

Options

-h, --help

Show this message and exit.

-f, --format <fmt>

Format for the document

Options

json | yaml | bibtex

-o, --out <out>

Outfile to write information to

isbn

Look for documents using isbnlib

Examples of its usage are

papis explore isbn -q ‘Albert einstein’ pick cmd ‘firefox {doc[url]}’

papis explore isbn [OPTIONS]

Options

-h, --help

Show this message and exit.

-q, --query <query>
-s, --service <service>
Options

wcat | goob | openl

isbnplus

Look for documents on isbnplus.com

Examples of its usage are

papis explore isbnplus -q ‘Albert einstein’ pick cmd ‘firefox {doc[url]}’

papis explore isbnplus [OPTIONS]

Options

-h, --help

Show this message and exit.

-q, --query <query>
-a, --author <author>
-t, --title <title>

json

Import documents from a json file

Examples of its usage are

papis explore json lib.json pick

papis explore json [OPTIONS] JSONFILE

Options

-h, --help

Show this message and exit.

Arguments

JSONFILE

Required argument

lib

Query for documents in your library

Examples of its usage are

papis lib -l books einstein pick

papis explore lib [OPTIONS] [QUERY]

Options

-h, --help

Show this message and exit.

--doc-folder <doc_folder>

Apply action to a document path

-l, --library <library>

Papis library to look

Arguments

QUERY

Optional argument

pick

Pick a document from the retrieved documents

Examples of its usage are

papis explore bibtex lib.bib pick

papis explore pick [OPTIONS]

Options

-h, --help

Show this message and exit.

-n, --number <number>

Pick automatically the n-th document

yaml

Import documents from a yaml file

Examples of its usage are

papis explore yaml lib.yaml pick

papis explore yaml [OPTIONS] YAMLFILE

Options

-h, --help

Show this message and exit.

Arguments

YAMLFILE

Required argument