epub-gen icon indicating copy to clipboard operation
epub-gen copied to clipboard

CLI tool

Open aurium opened this issue 9 years ago • 5 comments

This is a nice lib, and most options cam be easily defined in a command line.

epub-gen could be a nice CLI tool for epub users.

aurium avatar Jan 31 '16 21:01 aurium

Hi @aurium!

That's an interesting idea. How do you see adding contents work out in a CLI? As in, how would one feed the contents array to the CLI?

Cheers.

pedrosanta avatar May 17 '16 10:05 pedrosanta

Well, i can't say nothing new. :-)

If we consider all inputs as a list at the end of option parameters, we can have nice lies like this:

$ epub-gen --opt1=abc --opt2=def front-page.md chapter*.md
Loading...
front-page.md
chapter01.md
chapter02.md
chapter03.md

If we have ordered filenames, we can just:

$ epub-gen --opt1=abc --opt2=def content/*.md

It looks simple for most use cases, but there may be a complex list of content files, so we can have a parameter called --content-list witch points to a file with a list of filenames (one by line), like wget does with URLs. Example:

front-page.md
chapter01.md
chapter02.md
chapter03.md

The chapter title must be extracted from the first recognized h1 inside the markdown file, but a content-list file may give more power, like defining the chapter title, chapter style, the auto-generated TOC place... Example:

"file":"front-page.md", "title":"my nice book", "style":"front-page.css"
"auto":"TOC", "title":"Summary", "style":"summary.css"
"file":"chapter01.md", "title":"Red Story", "style":"red.css"
"file":"chapter02.md", "title":"Green Story", "style":"green.css"
"file":"chapter03.md", "title":"Blue Story", "style":"blue.css"

With no content list file the epub-gen may use an .css file with the same .md name like VLC does with subtitles for movies.

aurium avatar May 18 '16 19:05 aurium

I see, definitely interesting. Some command line framework like https://github.com/tj/commander.js could help. Ideally we should update the code to have the lib as well as the command line tool.

pedrosanta avatar May 18 '16 22:05 pedrosanta

Or nopt, the CLI parser used by NPM https://www.npmjs.com/package/nopt https://www.npmjs.com/package/nopt-usage

aurium avatar May 20 '16 21:05 aurium

Bumping this. I have tried pandoc, it was a memory hog. I’m currently using calibre’s ebook-convert, but it doesn’t seem to download the images.

NightMachinery avatar Jul 16 '19 14:07 NightMachinery