8e713b91c788aaedd6ef1a58afb7982ec7e4346f
[librarian.git] / scripts / book2epub
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 #
4 # This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
5 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.  
6 #
7 import os.path
8 import optparse
9
10 from librarian import epub, DirDocProvider
11
12
13 if __name__ == '__main__':
14     # Parse commandline arguments
15     usage = """Usage: %prog [options] SOURCE
16     Convert SOURCE file to EPUB format."""
17
18     parser = optparse.OptionParser(usage=usage)
19
20     parser.add_option('-v', '--verbose', action='store_true', dest='verbose', default=False,
21         help='print status messages to stdout')
22     parser.add_option('-d', '--make-dir', action='store_true', dest='make_dir', default=False,
23                       help='create a directory for author and put the PDF in it')
24
25     options, input_filenames = parser.parse_args()
26
27     if len(input_filenames) != 1:
28         parser.print_help()
29         exit(1)
30
31     # Do some real work
32     main_input = input_filenames[0]
33     if options.verbose:
34         print main_input
35     basepath, ext = os.path.splitext(main_input)
36     path, slug = os.path.realpath(basepath).rsplit('/', 1)
37     provider = DirDocProvider(path)
38     epub.transform(provider, slug, output_dir=path, make_dir=options.make_dir)