mirror of
https://github.com/jarun/nnn.git
synced 2024-11-16 16:13:16 +00:00
50 lines
1.5 KiB
Bash
Executable file
50 lines
1.5 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
|
|
# Description: Browse Project Gutenberg catalogue by popularity, then download
|
|
# and read a book of your choice.
|
|
#
|
|
# Details: Set the variable EBOOK_ID to download in html format and read in w3m.
|
|
# Clear EBOOK_ID to browse available ebooks by popularity and set it to
|
|
# the ID once you find an interesting one.
|
|
# To dowload and read in epub format set READER to an epub reader like
|
|
# epr: https://github.com/wustho/epr
|
|
#
|
|
# More on EBOOK_ID:
|
|
# Wuthering Heights by Emily Brontë is at https://www.gutenberg.org/ebooks/768
|
|
# So EBOOK_ID would be 768
|
|
#
|
|
# Downloaded ebooks are at ${XDG_CACHE_HOME:-$HOME/.cache}/nnn/gutenbooks/
|
|
#
|
|
# Shell: POSIX compliant
|
|
# Author: Arun Prakash Jana
|
|
|
|
EBOOK_ID=
|
|
DIR=${XDG_CACHE_HOME:-$HOME/.cache}/nnn/gutenbooks/"$EBOOK_ID"
|
|
BROWSE_LINK="http://www.gutenberg.org/ebooks/search/?sort_order=downloads"
|
|
BROWSER=w3m
|
|
READER=
|
|
|
|
if [ ! -z "$EBOOK_ID" ]; then
|
|
if [ ! -e $DIR ]; then
|
|
mkdir -p $DIR
|
|
cd $DIR
|
|
|
|
if [ -z "$READER" ]; then
|
|
curl -L -O "https://www.gutenberg.org/files/"$EBOOK_ID"/"$EBOOK_ID"-h.zip"
|
|
unzip "$EBOOK_ID"-h.zip
|
|
else
|
|
curl -L -o "$EBOOK_ID".epub "http://www.gutenberg.org/ebooks/"$EBOOK_ID".epub.noimages"
|
|
fi
|
|
fi
|
|
|
|
if [ -d $DIR ]; then
|
|
if [ -z "$READER" ]; then
|
|
"$BROWSER" $DIR/"$EBOOK_ID"-h/"$EBOOK_ID"-h.htm
|
|
else
|
|
"$READER" $DIR/"$EBOOK_ID".epub
|
|
fi
|
|
fi
|
|
else
|
|
"$BROWSER" $BROWSE_LINK
|
|
fi
|