From 4f132737e490ebbef26605100bc65634936e3be5 Mon Sep 17 00:00:00 2001 From: Fabien Benureau Date: Tue, 25 Jun 2013 16:55:48 +0200 Subject: [PATCH] made init command more robust --- papers/commands/init_cmd.py | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/papers/commands/init_cmd.py b/papers/commands/init_cmd.py index a4ccba8..948a66b 100644 --- a/papers/commands/init_cmd.py +++ b/papers/commands/init_cmd.py @@ -24,13 +24,14 @@ def command(config, ui, path, doc_dir): else: papersdir = os.path.join(os.getcwd(), path) configs.add_and_write_option('papers', 'papers-directory', papersdir) - if not os.path.exists(papersdir): - ui.print_('Initializing papers in {}.'.format( - color.dye(papersdir, color.filepath))) - repo = Repository() - repo.init(papersdir) # Creates directories - repo.save() # Saves empty repository description - else: - ui.error('papers already present in {}.'.format( - color.dye(papersdir, color.filepath))) - ui.exit() + if os.path.exists(papersdir): + if len(os.listdir(papersdir)) > 0: + ui.error('directory {} is not empty.'.format( + color.dye(papersdir, color.filepath))) + ui.exit() + + ui.print_('Initializing papers in {}.'.format( + color.dye(papersdir, color.filepath))) + repo = Repository() + repo.init(papersdir) # Creates directories + repo.save() # Saves empty repository description \ No newline at end of file