1
0
Fork 0
mirror of https://github.com/Findus23/PaperLibrary-cli.git synced 2024-09-20 17:03:46 +02:00
PaperLibrary-cli/paperlibrary/pap.py

45 lines
980 B
Python
Raw Normal View History

2020-10-14 21:38:36 +02:00
import click
from paperlibrary.api import PaperLibraryAPI
2020-12-29 17:16:16 +01:00
from paperlibrary.config import get_config, Config, save_config
2020-11-08 22:25:56 +01:00
from paperlibrary.library import write_symlinks, update_pdfs, write_bibliography
2020-10-14 21:38:36 +02:00
@click.group()
2020-12-29 17:16:16 +01:00
@click.pass_context
def cli(ctx):
ctx.obj = get_config()
2020-10-14 21:38:36 +02:00
pass
2020-11-01 13:48:40 +01:00
2020-10-14 21:38:36 +02:00
@cli.command()
2020-12-29 17:16:16 +01:00
@click.pass_obj
def update(config: Config):
api = PaperLibraryAPI(config.url, auth_token=config.auth_token)
write_bibliography(api, config)
write_symlinks(api, config)
update_pdfs(api, config)
2020-10-14 21:38:36 +02:00
2020-11-01 13:48:40 +01:00
@cli.command()
2020-12-29 17:16:16 +01:00
@click.pass_obj
def test(config: Config):
api = PaperLibraryAPI(config.url, auth_token=config.auth_token)
2020-11-01 13:48:40 +01:00
print(api.fetch_papers())
2020-12-29 17:16:16 +01:00
@cli.command()
def init():
url = click.prompt("URL", type=str)
auth_token = click.prompt("auth_token", type=str)
basedir = click.prompt("basedir", type=str)
config = Config(url=url, auth_token=auth_token, basedir=basedir)
save_config(config)
2020-10-14 21:38:36 +02:00
if __name__ == '__main__':
cli()