Skip to main content

CLI tool to convert txt file to ebook format

Project description

txt2ebook

A console tool to convert txt file to different ebook formats.

Installation

Stable version From PyPI:

python3 -m pip install txt2ebook

Upgrade to latest stable version:

python3 -m pip install txt2ebook --upgrade

Latest development version from GitHub:

python3 -m pip install -e git+https://github.com/kianmeng/txt2ebook.git

Usage

Showing help message of command-line options:

txt2ebook --help
usage: txt2ebook [-of OUTPUT_FOLDER] [-p] [-f {epub,gmi,md,pdf,tex,txt,typ}]
                 [-ik INDEX_KEYWORD] [-t TITLE] [-l LANGUAGE] [-a AUTHOR]
                 [-tr TRANSLATOR] [-c IMAGE_FILENAME] [-w WIDTH]
                 [-ff FILENAME_FORMAT] [-ps SEPARATOR] [-pz PAGE_SIZE]
                 [-rd REGEX] [-rvc REGEX] [-rv REGEX] [-rc REGEX] [-rt REGEX]
                 [-ra REGEX] [-rl REGEX] [-rr REGEX REGEX] [-ct]
                 [-et {clean,condense,noindent}] [-vp] [-tp] [-sp] [-ss]
                 [-toc] [-hn] [-fw] [-rw] [-ow] [-op] [-q] [-v] [-y] [-d]
                 [--env] [-h] [-V]
                 TXT_FILENAME [EBOOK_FILENAME]

txt2ebook/tte is a cli tool to convert txt file to ebook format.

  website: https://github.com/kianmeng/txt2ebook
  changelog: https://github.com/kianmeng/txt2ebook/blob/master/CHANGELOG.md
  issues: https://github.com/kianmeng/txt2ebook/issues

positional arguments:
  TXT_FILENAME
      source text filename
  EBOOK_FILENAME
      converted ebook filename (default: 'TXT_FILENAME.epub')

options:
  -of OUTPUT_FOLDER, --output-folder OUTPUT_FOLDER
      set default output folder (default: 'output')
  -p, --purge
      remove converted ebooks specified by --output-folder option (default: 'False')
  -f {epub,gmi,md,pdf,tex,txt,typ}, --format {epub,gmi,md,pdf,tex,txt,typ}
      ebook format (default: 'epub')
  -ik INDEX_KEYWORD, --index-keyword INDEX_KEYWORD
      keyword to index (default: '[]')
  -t TITLE, --title TITLE
      title of the ebook (default: 'None')
  -l LANGUAGE, --language LANGUAGE
      language of the ebook (default: 'None')
  -a AUTHOR, --author AUTHOR
      author of the ebook (default: '[]')
  -tr TRANSLATOR, --translator TRANSLATOR
      translator of the ebook (default: '[]')
  -ff FILENAME_FORMAT, --filename-format FILENAME_FORMAT
      the output filename format (default: TXT_FILENAME [EBOOK_FILENAME])
      1 - title_authors.EBOOK_EXTENSION
      2 - authors_title.EBOOK_EXTENSION
  -ps SEPARATOR, --paragraph_separator SEPARATOR
      paragraph separator (default: '\n\n')
  -rd REGEX, --regex-delete REGEX
      regex to delete word or phrase (default: '[]')
  -rvc REGEX, --regex-volume-chapter REGEX
      regex to parse volume and chapter header (default: by LANGUAGE)
  -rv REGEX, --regex-volume REGEX
      regex to parse volume header (default: by LANGUAGE)
  -rc REGEX, --regex-chapter REGEX
      regex to parse chapter header (default: by LANGUAGE)
  -rt REGEX, --regex-title REGEX
      regex to parse title of the book (default: by LANGUAGE)
  -ra REGEX, --regex-author REGEX
      regex to parse author of the book (default: by LANGUAGE)
  -rl REGEX, --regex-delete-line REGEX
      regex to delete whole line (default: '[]')
  -rr REGEX REGEX, --regex-replace REGEX REGEX
      regex to search and replace (default: '[]')
  -tp, --test-parsing
      test parsing for volume/chapter header
  -ss, --sort-volume-and-chapter
      short volume and chapter
  -rw, --raise-on-warning
      raise exception and stop parsing upon warning
  -ow, --overwrite
      overwrite massaged TXT_FILENAME
  -op, --open
      open the generated file using default program
  -q, --quiet
      suppress all logging
  -v, --verbose
      show verbosity of debugging log, use -vv, -vvv for more details
  -y, --yes
      yes to prompt
  -d, --debug
      show debugging log and stacktrace
  --env
      print environments information for bug reporting
  -h, --help
      show this help message and exit
  -V, --version
      show program's version number and exit

--format epub:
  -c IMAGE_FILENAME, --cover IMAGE_FILENAME
      cover of the ebook
  -et {clean,condense,noindent}, --epub-template {clean,condense,noindent}
      CSS template for epub ebook (default: 'clean')
  -vp, --volume-page
      generate each volume as separate page

--format pdf:
  -pz PAGE_SIZE, --page-size PAGE_SIZE
      page size of the ebook (default: 'a5')

--format txt:
  -w WIDTH, --width WIDTH
      width for line wrapping
  -sp, --split-volume-and-chapter
      split volume or chapter into separate file and ignore the --overwrite option
  -toc, --table-of-content
      add table of content

--format tex:
  -ct, --clean-tex
      purge artifacts generated by TeX (default: 'False')

--language zh-cn / --language zh-tw:
  -hn, --header-number
      convert section header from words to numbers
  -fw, --fullwidth
      convert ASCII character from halfwidth to fullwidth

Convert a txt file into epub:

txt2ebook ebook.txt

Copyright and License

Copyright (c) 2021,2022,2023,2024 Kian-Meng Ang

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.

The fish logo used in the documentation generated by Sphinx is a public domain drawing of Troschel's parrotfish (Chlorurus troschelii Var. A.) from https://commons.wikimedia.org/entity/M18506436. 18506436>.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

txt2ebook-0.1.113.tar.gz (43.4 kB view details)

Uploaded Source

Built Distribution

txt2ebook-0.1.113-py3-none-any.whl (74.4 kB view details)

Uploaded Python 3

File details

Details for the file txt2ebook-0.1.113.tar.gz.

File metadata

  • Download URL: txt2ebook-0.1.113.tar.gz
  • Upload date:
  • Size: 43.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.8.0-48-generic

File hashes

Hashes for txt2ebook-0.1.113.tar.gz
Algorithm Hash digest
SHA256 7e5f47f00f22a6654d322e108eb58a27ce330124f21fcd7d29786d6395e8e4a4
MD5 add31240446ca2bfcfc0c6779fd8e12f
BLAKE2b-256 3bac5c34ddae85ccbc3b87bf165e9480315d3d47e20e8ee701d4a30c7292740b

See more details on using hashes here.

File details

Details for the file txt2ebook-0.1.113-py3-none-any.whl.

File metadata

  • Download URL: txt2ebook-0.1.113-py3-none-any.whl
  • Upload date:
  • Size: 74.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.8.0-48-generic

File hashes

Hashes for txt2ebook-0.1.113-py3-none-any.whl
Algorithm Hash digest
SHA256 e396eaa420fa9b226a4bbf7d1b1e2cde05a202fdeedd20d251538717bbb83b9c
MD5 b55f30cbca7c946e0d2c33064ead33e1
BLAKE2b-256 5ca7f3c8345b1965070af8e015bce6fba400b1954ee33c9ee076df2b7c47a99f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page