From 4c671cb8405c51120061b6853be3a12adcbf377f Mon Sep 17 00:00:00 2001 From: Johannes Findeisen Date: Mon, 17 Oct 2022 04:40:13 +0200 Subject: [PATCH] Initial commit of the idea. --- .gitignore | 2 + README.md | 23 +++- idea.mmd | 17 +++ tmp/df.html | 298 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 339 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 idea.mmd create mode 100644 tmp/df.html diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..309adef --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.idea/ +man2ebook.iml diff --git a/README.md b/README.md index d96ac35..67e6e5d 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,24 @@ # man2ebook -A tool to convert all installed man pages to a simple ebook with contents in the head. \ No newline at end of file +A tool to convert all installed man pages to a simple ebook with contents in the head. + +Maybe this could be only a small shell script but if not I will use Python. + +## Why man pages as ebook? + +Because I want to read them comfortable on my ebook when traveling. Not more... ;) + +## Helpful libraries and tools + +- https://pandoc.org/ - Haskell and then maybe make use of https://pypi.org/project/pypandoc/. + (very mature features for document conversion like direct manpage input and epub output, + but I don't know much about pandoc, so I need to discover this. (https://pypi.org/project/pandoc/)) +- https://www.gnu.org/software/groff/ + (man -Thtml df > df.html) +- https://linux.die.net/man/1/man2html + (is nice because it must not generate html, head and body) +- https://pypi.org/project/epubmaker/ - Python + (maybe nice but unmaintained) +- https://docutils.sourceforge.io/ - Python + (as I can see now it only converts from .rst files.) +- https://github.com/hanez/aov-html2epub - Bash diff --git a/idea.mmd b/idea.mmd new file mode 100644 index 0000000..b1c49c4 --- /dev/null +++ b/idea.mmd @@ -0,0 +1,17 @@ +Mind Map generated by NB MindMap plugin +> __version__=`1.1`,showJumps=`true` +--- + +# man page + +## "pandoc", "man2html" or "man \-Thtml df \> df\.html" + +### maybe create a metadata file + +### create contents and index files + +### cleanup contents and index files + +### merge contents and index files + +### create epub file \(pandoc\) diff --git a/tmp/df.html b/tmp/df.html new file mode 100644 index 0000000..a6150a5 --- /dev/null +++ b/tmp/df.html @@ -0,0 +1,298 @@ + + + + + + + + + +DF + + + + +

DF

+ +NAME
+SYNOPSIS
+DESCRIPTION
+OPTIONS
+AUTHOR
+REPORTING BUGS
+COPYRIGHT
+SEE ALSO
+ +
+ + +

NAME + +

+ + +

df − +report file system space usage

+ +

SYNOPSIS + +

+ + +

df +[OPTION]... [FILE]...

+ +

DESCRIPTION + +

+ + +

This manual +page documents the GNU version of df. df +displays the amount of space available on the file system +containing each file name argument. If no file name is +given, the space available on all currently mounted file +systems is shown. Space is shown in 1K blocks by default, +unless the environment variable POSIXLY_CORRECT is set, in +which case 512-byte blocks are used.

+ +

If an argument +is the absolute file name of a device node containing a +mounted file system, df shows the space available on +that file system rather than on the file system containing +the device node. This version of df cannot show the +space available on unmounted file systems, because on most +kinds of systems doing so requires very nonportable intimate +knowledge of file system structures.

+ +

OPTIONS + +

+ + +

Show +information about the file system on which each FILE +resides, or all file systems by default.

+ +

Mandatory +arguments to long options are mandatory for short options +too.
+−a
, −−all

+ +

include pseudo, duplicate, +inaccessible file systems

+ +

−B, +−−block−size=SIZE

+ +

scale sizes by SIZE before +printing them; e.g., ’−BM’ prints sizes in +units of 1,048,576 bytes; see SIZE format below

+ +

−h, +−−human−readable

+ +

print sizes in powers of 1024 +(e.g., 1023M)

+ +

−H, +−−si

+ +

print sizes in powers of 1000 +(e.g., 1.1G)

+ +

−i, +−−inodes

+ +

list inode information instead +of block usage

+ + + + + + + + +
+ + +

−k

+ + +

like −−block−size=1K

+
+ +

−l, +−−local

+ +

limit listing to local file +systems

+ + +

−−no−sync

+ +

do not invoke sync before +getting usage info (default)

+ + +

−−output[=FIELD_LIST]

+ +

use the output format defined +by FIELD_LIST, or print all fields if FIELD_LIST is +omitted.

+ +

−P, +−−portability

+ +

use the POSIX output format

+ + + + + + + + +
+ + +

−−sync

+ + +

invoke sync before getting usage info

+
+ +

−−total

+ +

elide all entries insignificant +to available space, and produce a grand total

+ +

−t, +−−type=TYPE

+ +

limit listing to file systems +of type TYPE

+ +

−T, +−−print−type

+ +

print file system type

+ +

−x, +−−exclude−type=TYPE

+ +

limit listing to file systems +not of type TYPE

+ + + + + + + + + + + + + + +
+ + +

−v

+ + +

(ignored)

+
+ + +

−−help

+ + +

display this help and exit

+
+ + +

−−version

+ +

output version information and +exit

+ +

Display values +are in units of the first available SIZE from +−−block−size, and the +DF_BLOCK_SIZE, BLOCK_SIZE and BLOCKSIZE environment +variables. Otherwise, units default to 1024 bytes (or 512 if +POSIXLY_CORRECT is set).

+ +

The SIZE +argument is an integer and optional unit (example: 10K is +10*1024). Units are K,M,G,T,P,E,Z,Y (powers of 1024) or +KB,MB,... (powers of 1000). Binary prefixes can be used, +too: KiB=K, MiB=M, and so on.

+ +

FIELD_LIST is a +comma−separated list of columns to be included. Valid +field names are: ’source’, ’fstype’, +’itotal’, ’iused’, +’iavail’, ’ipcent’, +’size’, ’used’, ’avail’, +’pcent’, ’file’ and +’target’ (see info page).

+ +

AUTHOR + +

+ + +

Written by +Torbjorn Granlund, David MacKenzie, and Paul Eggert.

+ +

REPORTING BUGS + +

+ + +

GNU coreutils +online help: <https://www.gnu.org/software/coreutils/> +
+Report any translation bugs to +<https://translationproject.org/team/>

+ +

COPYRIGHT + +

+ + +

Copyright +© 2022 Free Software Foundation, Inc. License GPLv3+: +GNU GPL version 3 or later +<https://gnu.org/licenses/gpl.html>.
+This is free software: you are free to change and +redistribute it. There is NO WARRANTY, to the extent +permitted by law.

+ +

SEE ALSO + +

+ + +

Full +documentation +<https://www.gnu.org/software/coreutils/df>
+or available locally via: info '(coreutils) df +invocation'

+
+ +