Пример #1
0
def cli(ctx, db, fuzzy, no_abbr, input, output):
    config = Config(db, fuzzy)

    with open(input, 'r', encoding='utf-8') as fp:
        bib = bibtexparser.load(fp)

    failed = False
    for entry in bib.entries:
        filter_entry(config, entry)

        if no_abbr:
            continue
        try:
            journal_name = entry['journal']
        except KeyError:
            continue
        else:
            abbr = config.lookup(journal_name)
        if abbr:
            entry['journal'] = abbr
        else:
            failed = True

    with open(output, 'w', encoding='utf-8') as fp:
        bibtexparser.dump(bib, fp)

    if failed:
        ctx.exit(1)
Пример #2
0
def query(ctx, db, no_fuzzy, journal_name):
    """Query journal abbreviations database."""
    config = Config(db, not no_fuzzy)
    abbr = config.lookup(journal_name)
    if abbr:
        click.echo(abbr)
    else:
        ctx.exit(1)
Пример #3
0
def write_config():
    """Create a user config file with default values."""
    path = Config.create_user_config()
    click.echo('Config written to {}'.format(path))