Esempio n. 1
0
def convert_to_epub():
    """
    Pandoc markdown to epub
    """
    generate_epub_files(config.epub_build_dir, config.epub_md, BookType.EPUB)
    # fix_for_apple(epub_name())
    # fix_for_apple(epub_name("-Sample"))
    retain_files(config.epub_build_dir, ["epub"])
    return f"\n{config.epub_build_dir.name} Completed"
Esempio n. 2
0
def convert_to_mobi():
    """
    Pandoc markdown to mobi
    Create special EPUBs first in this directory that use AtomicKotlin-mobi.css
    """
    generate_epub_files(config.mobi_build_dir, config.mobi_md, BookType.MOBI)
    os.chdir(str(config.mobi_build_dir))
    for epf in Path('.').glob("*.epub"):
        # for epf in [Path() / "AtomicKotlin-monochrome.epub"]:
        cmd = f"kindlegen {epf.name} > {epf.stem}-kindlegen-messages.txt"
        print(f"\tCreating {epf.stem}.mobi")
        os.system(cmd)
        show_important_kindlegen_output(epf.stem)
        # os.system(f"start AtomicKotlin-monochrome.mobi")
    retain_files(config.mobi_build_dir, ["mobi"])
    return f"{config.mobi_build_dir.name} Completed"
Esempio n. 3
0
def create_release():
    "Create a release from scratch"
    import glob
    if config.release_dir.exists():
        clean(config.release_dir)
    os.makedirs(config.release_dir)
    convert_to_epub()
    convert_to_mobi()
    for src in config.built_ebooks:
        os.system(f"cp {config.epub_build_dir / src} {config.release_dir}")
    os.chdir(str(config.release_dir))

    def zzip(target_name, file_list):
        "zip utility"
        print(f"creating {target_name}.zip")
        os.system(f"zip -m {target_name}.zip {' '.join(file_list)}")

    files = glob.glob("*")
    zzip(config.base_name, [f for f in files if not "Sample" in f])
    zzip(config.base_name + "Sample", [f for f in files if "Sample" in f])
    retain_files(config.release_dir, ["zip"])
    return f"\n{config.release_dir} Completed"