Remove more old stuff.
This commit is contained in:
parent
cfcfcc2468
commit
3c4b3fdfc3
10 changed files with 6 additions and 872 deletions
2
.gitattributes
vendored
2
.gitattributes
vendored
|
@ -1,5 +1,3 @@
|
|||
.gitattributes export-ignore
|
||||
.gitignore export-ignore
|
||||
/scripts/*.json export-ignore
|
||||
/doc/web export-ignore
|
||||
.travis.yml export-ignore
|
||||
|
|
10
.gitignore
vendored
10
.gitignore
vendored
|
@ -1,13 +1,15 @@
|
|||
*.orig
|
||||
*.pyc
|
||||
*.pyo
|
||||
/.cache
|
||||
/.coverage
|
||||
/.eggs
|
||||
/AUTHORS
|
||||
/ChangeLog
|
||||
/Comics
|
||||
/build
|
||||
/dist
|
||||
/ChangeLog
|
||||
/testresults.txt
|
||||
/dosage.prof
|
||||
/dosage.egg-info
|
||||
/dosage.prof
|
||||
/scripts/*.json
|
||||
/AUTHORS
|
||||
/testresults.txt
|
||||
|
|
|
@ -1,2 +1 @@
|
|||
exclude .*
|
||||
recursive-exclude scripts dosage.*
|
||||
|
|
173
Makefile
173
Makefile
|
@ -1,173 +0,0 @@
|
|||
# This Makefile is only used by developers.
|
||||
# See doc/install.txt on how to install dosage
|
||||
PYTHON:=python
|
||||
VERSION:=$(shell $(PYTHON) setup.py --version)
|
||||
MAINTAINER:=$(shell $(PYTHON) setup.py --maintainer)
|
||||
AUTHOR:=$(shell $(PYTHON) setup.py --author)
|
||||
APPNAME:=$(shell $(PYTHON) setup.py --name)
|
||||
ARCHIVE_SOURCE:=$(APPNAME)-$(VERSION).tar.gz
|
||||
ARCHIVE_WIN32:=$(APPNAME)-$(VERSION).exe
|
||||
GITUSER:=wummel
|
||||
GITREPO:=$(APPNAME)
|
||||
HOMEPAGE:=$(HOME)/public_html/dosage-webpage.git
|
||||
WEBMETA:=doc/web/app.yaml
|
||||
DEBUILDDIR:=$(HOME)/projects/debian/official
|
||||
DEBORIGFILE:=$(DEBUILDDIR)/$(APPNAME)_$(VERSION).orig.tar.gz
|
||||
DEBPACKAGEDIR:=$(DEBUILDDIR)/$(APPNAME)-$(VERSION)
|
||||
# Default pytest options
|
||||
# Note that using -n silently swallows test creation exceptions like
|
||||
# import errors.
|
||||
PYTESTOPTS?=--resultlog=testresults.txt --tb=short -n10
|
||||
CHMODMINUSMINUS:=--
|
||||
# directory or file with tests to run
|
||||
TESTS ?= tests
|
||||
# set test options, eg. to "--verbose"
|
||||
TESTOPTS=
|
||||
|
||||
all:
|
||||
|
||||
chmod:
|
||||
-chmod -R a+rX,u+w,go-w $(CHMODMINUSMINUS) *
|
||||
find . -type d -exec chmod 755 {} \;
|
||||
|
||||
dist:
|
||||
[ -d dist ] || mkdir dist
|
||||
$(PYTHON) setup.py sdist --formats=tar
|
||||
gzip --best dist/$(APPNAME)-$(VERSION).tar
|
||||
[ ! -f ../$(ARCHIVE_WIN32) ] || cp ../$(ARCHIVE_WIN32) dist
|
||||
|
||||
sign:
|
||||
[ -f dist/$(ARCHIVE_SOURCE).asc ] || gpg --detach-sign --armor dist/$(ARCHIVE_SOURCE)
|
||||
[ -f dist/$(ARCHIVE_WIN32).asc ] || gpg --detach-sign --armor dist/$(ARCHIVE_WIN32)
|
||||
|
||||
upload: upload_source upload_binary
|
||||
|
||||
upload_source:
|
||||
twine upload dist/$(ARCHIVE_SOURCE) dist/$(ARCHIVE_SOURCE).asc
|
||||
|
||||
upload_binary:
|
||||
cp dist/$(ARCHIVE_WIN32) dist/$(ARCHIVE_WIN32).asc \
|
||||
$(HOMEPAGE)/dist
|
||||
|
||||
update_webmeta:
|
||||
# update metadata
|
||||
@echo "version: \"$(VERSION)\"" > $(WEBMETA)
|
||||
@echo "name: \"$(APPNAME)\"" >> $(WEBMETA)
|
||||
@echo "maintainer: \"$(MAINTAINER)\"" >> $(WEBMETA)
|
||||
@echo "author: \"$(AUTHOR)\"" >> $(WEBMETA)
|
||||
git add $(WEBMETA)
|
||||
-git commit -m "Updated webpage meta info"
|
||||
|
||||
homepage: update_webmeta
|
||||
# update documentation and release website
|
||||
$(MAKE) -C doc
|
||||
$(MAKE) -C doc/web release
|
||||
|
||||
release: distclean releasecheck
|
||||
$(MAKE) dist sign upload homepage tag register changelog deb
|
||||
|
||||
tag:
|
||||
git tag upstream/$(VERSION)
|
||||
git push --tags origin upstream/$(VERSION)
|
||||
|
||||
register:
|
||||
@echo "Register at Python Package Index..."
|
||||
$(PYTHON) setup.py register
|
||||
|
||||
releasecheck:
|
||||
git checkout master
|
||||
$(MAKE) check test
|
||||
# test console output (behaves differently than redirected output)
|
||||
$(MAKE) test PYTESTOPTS="-s" TESTS=tests/test_dosage.py
|
||||
@if egrep -i "xx\.|xxxx|\.xx" doc/changelog.txt > /dev/null; then \
|
||||
echo "Could not release: edit doc/changelog.txt release date"; false; \
|
||||
fi
|
||||
@if [ ! -f ../$(ARCHIVE_WIN32) ]; then \
|
||||
echo "Missing WIN32 distribution archive at ../$(ARCHIVE_WIN32)"; \
|
||||
false; \
|
||||
fi
|
||||
# $(PYTHON) setup.py check --restructuredtext
|
||||
git checkout debian
|
||||
@if ! head -1 debian/changelog | grep "$(VERSION)" > /dev/null; then \
|
||||
echo "Could not release: update debian/changelog version"; false; \
|
||||
fi
|
||||
@if head -1 debian/changelog | grep UNRELEASED >/dev/null; then \
|
||||
echo "Could not release: set debian/changelog release name"; false; \
|
||||
fi
|
||||
git checkout master
|
||||
|
||||
# The check programs used here are mostly local scripts on my private system.
|
||||
# So for other developers there is no need to execute this target.
|
||||
check:
|
||||
check-copyright
|
||||
check-py-encoding patoolib tests
|
||||
check-pofiles -v
|
||||
py-tabdaddy
|
||||
py-unittest2-compat tests/
|
||||
$(MAKE) doccheck
|
||||
|
||||
doccheck:
|
||||
py-check-docstrings --force \
|
||||
dosagelib/*.py \
|
||||
dosage \
|
||||
scripts \
|
||||
*.py
|
||||
|
||||
pyflakes:
|
||||
pyflakes dosage dosagelib scripts tests doc/web
|
||||
|
||||
count:
|
||||
@sloccount dosage dosagelib/*.py
|
||||
|
||||
clean:
|
||||
find . -name \*.pyc -delete
|
||||
find . -name \*.pyo -delete
|
||||
rm -rf build dist
|
||||
|
||||
distclean: clean
|
||||
rm -rf $(APPNAME).egg-info $(APPNAME).prof test.sh Comics
|
||||
rm -f _$(APPNAME)_configdata.py MANIFEST
|
||||
|
||||
localbuild:
|
||||
$(PYTHON) setup.py build
|
||||
|
||||
test: localbuild
|
||||
env LANG=en_US.utf-8 http_proxy="" $(PYTHON) -m pytest $(PYTESTOPTS) $(TESTOPTS) $(TESTS)
|
||||
|
||||
testall: localbuild
|
||||
env LANG=en_UR.utf-8 http_proxy="" TESTALL=1 $(PYTHON) -m pytest $(PYTESTOPTS) $(TESTOPTS) $(TESTS)
|
||||
|
||||
deb:
|
||||
# Build an official .deb package; only useful for Debian maintainers.
|
||||
# To build a local .deb package, use:
|
||||
# $ sudo apt-get build-dep dosage; apt-get source dosage; cd dosage-*; debuild binary
|
||||
[ -f $(DEBORIGFILE) ] || cp dist/$(ARCHIVE_SOURCE) $(DEBORIGFILE)
|
||||
sed -i -e 's/VERSION_$(APPNAME):=.*/VERSION_$(APPNAME):=$(VERSION)/' $(DEBUILDDIR)/$(APPNAME).mak
|
||||
[ -d $(DEBPACKAGEDIR) ] || (cd $(DEBUILDDIR); \
|
||||
patool extract $(DEBORIGFILE); \
|
||||
cd $(CURDIR); \
|
||||
git checkout debian; \
|
||||
cp -r debian $(DEBPACKAGEDIR); \
|
||||
rm -f $(DEBPACKAGEDIR)/debian/.gitignore; \
|
||||
git checkout master)
|
||||
$(MAKE) -C $(DEBUILDDIR) $(APPNAME)_clean $(APPNAME)
|
||||
|
||||
update-copyright:
|
||||
# update-copyright is a local tool which updates the copyright year for each
|
||||
# modified file.
|
||||
update-copyright --holder="$(MAINTAINER)"
|
||||
|
||||
update-comics:
|
||||
# update all scripted comic plugins (takes ca. one hour on my computer)
|
||||
scripts/generate_json.sh
|
||||
scripts/update_plugins.sh
|
||||
|
||||
|
||||
changelog:
|
||||
# github-changelog is a local tool which parses the changelog and automatically
|
||||
# closes issues mentioned in the changelog entries.
|
||||
github-changelog $(DRYRUN) $(GITUSER) $(GITREPO) doc/changelog.txt
|
||||
|
||||
.PHONY: update-copyright deb test clean distclean count pyflakes changelog
|
||||
.PHONY: doccheck check releasecheck release dist chmod localbuild sign
|
||||
.PHONY: register tag homepage
|
11
doc/Makefile
11
doc/Makefile
|
@ -1,11 +0,0 @@
|
|||
all: dosage.1.html dosage.txt
|
||||
|
||||
dosage.txt: dosage.1
|
||||
# make text file from man page for Windows builds
|
||||
cols=`stty size | cut -d" " -f2`; stty cols 72; man -l $< | sed -e 's/.\cH//g' > $@; stty cols $$cols
|
||||
|
||||
dosage.1.html: dosage.1
|
||||
man2html -r $< | tail -n +2 | sed 's/Time:.*//g' | sed 's@/:@/@g' > $@
|
||||
patch --no-backup-if-mismatch --quiet $@ dosage.1.html.diff
|
||||
|
||||
.PHONY: all
|
184
doc/dosage.1
184
doc/dosage.1
|
@ -1,184 +0,0 @@
|
|||
.TH DOSAGE 1
|
||||
.SH NAME
|
||||
dosage \- a comic strip downloader and archiver
|
||||
.SH SYNOPSIS
|
||||
\fBdosage\fP [\fIoptions\fP] \fImodule\fP...
|
||||
.SH DESCRIPTION
|
||||
.B dosage
|
||||
is an application designed to keep a local mirror of specific
|
||||
web comics and other picture\-based content, such as
|
||||
\fIPicture Of The Day\fP sites, with a variety of options
|
||||
for updating and maintaining collections.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-b\fP \fIPATH\fP, \fB\-\-basepath=\fP\fIPATH\fP
|
||||
Specifies a base path to put comic subdirectories. The default is \fBComics\fP.
|
||||
.TP
|
||||
\fB\-\-baseurl=\fP\fIPATH\fP
|
||||
Specifies the base URL for output handlers. The default is a local file URI.
|
||||
.TP
|
||||
\fB\-a\fP, \fB\-\-all\fP
|
||||
Traverses all available strips backwards from the current one.
|
||||
This can be useful you want a full collection of a new comic strip,
|
||||
or update an existing one where files are missing.
|
||||
.
|
||||
Catchups can start at a specific strip by using the index syntax, see
|
||||
the
|
||||
.B INDEX SYNTAX
|
||||
and
|
||||
.B SPECIAL SYNTAX
|
||||
sections for more information. This is useful when you missed some days
|
||||
and want only to download the missing files.
|
||||
.TP
|
||||
\fB\-c\fP, \fB\-\-continue\fP
|
||||
Same as \fB\-\-all\fP, but stop at the first existing image file.
|
||||
Useful for cron jobs that are not executed every day.
|
||||
.TP
|
||||
\fB\-h\fP, \fB\-\-help\fP
|
||||
Output brief help information.
|
||||
.TP
|
||||
\fB\-l\fP, \fB\-\-list\fP
|
||||
List available comic modules in multi\-column fashion.
|
||||
.TP
|
||||
\fB\-\-singlelist\fP
|
||||
List available comic modules in single\-column fashion.
|
||||
.TP
|
||||
\fB\-m\fP \fIMODULE\fP, \fB\-\-modulehelp=\fP\fIMODULE\fP
|
||||
Output module-specific help for \fIMODULE\fP.
|
||||
.TP
|
||||
\fB\-o\fP \fIOUTPUT\fP, \fB\-\-output=\fP\fIOUTPUT\fP
|
||||
\fIOUTPUT\fP may be any one of the following:
|
||||
.PP
|
||||
.RS
|
||||
.BR "html " \-
|
||||
Writes out an HTML file linking to the strips actually downloaded in the
|
||||
current run, named by date (ala dailystrips). The files can be found in the
|
||||
\fBhtml\fP directory of your \fBComics\fP directory.
|
||||
.RE
|
||||
.PP
|
||||
.RS
|
||||
.BR "rss " \-
|
||||
Writes out an RSS feed detailing what strips were downloaded in the last 24
|
||||
hours. The feed can be found in \fBComics/dailydose.xml\fP.
|
||||
.RE
|
||||
.PP
|
||||
.RS
|
||||
.BR "json " \-
|
||||
Write a JSON file with all download infos (URLs, images). Can be used with
|
||||
other scripts, eg. order-symlinks.py to add symbolic links.
|
||||
.RE
|
||||
This option can be given multiple times.
|
||||
.TP
|
||||
\fB\-t\fP, \fB\-\-timestamps\fP
|
||||
Print timestamps for all output at any level.
|
||||
.TP
|
||||
\fB\-v\fP, \fB\-\-verbose\fP
|
||||
Increase the output level by one with each occurence.
|
||||
.TP
|
||||
\fB\-V\fP, \fB\-\-version\fP
|
||||
Display the version number.
|
||||
.TP
|
||||
\fB\-\-vote\fP
|
||||
Vote for the selected comics to tell others that you like them.
|
||||
The sum of all votes for a comic will be displayed at the comic
|
||||
index pages at http://wummel.github.io/dosage/comic-index.html
|
||||
.I module
|
||||
At least one valid
|
||||
.I module
|
||||
must be specified. A list of valid modules can be found by passing the
|
||||
.B \-l
|
||||
option. Multiple
|
||||
.I module
|
||||
arguments can be specified on the command line.
|
||||
Module names are case insensitive, and it is sufficient to specify a
|
||||
unique substring of the module name.
|
||||
.SH INDEX SYNTAX
|
||||
Instead of starting at the latest comic strip, an index lets dosage start
|
||||
at a certain strip. The index can be specified by appending a colon \fB:\fP
|
||||
and the index name after the module. Multiple comma-spearated indices can
|
||||
also be specified.
|
||||
.PP
|
||||
The index name itself usually is the part of the comic strip URL that identifiess
|
||||
a strip, eg. a number or a date. The expected format is documented when using
|
||||
the \fB\-\-modulehelp\fP option.
|
||||
.SH SPECIAL SYNTAX
|
||||
.TP
|
||||
.B @
|
||||
This expands to mean all the comics currently in your \fBComics\fP
|
||||
directory. All other specified comic module names will be ignored.
|
||||
.TP
|
||||
.B @@
|
||||
This expands to mean all the comics available to Dosage.
|
||||
.PP
|
||||
\fBINDEX SYNTAX\fP can not be used with \fBSPECIAL SYNTAX\fP.
|
||||
.SH EXAMPLES
|
||||
Retrieve all Mega Tokyo comics:
|
||||
.RS
|
||||
.B dosage \-a megatokyo
|
||||
.RE
|
||||
.PP
|
||||
Retrieve the current comic of Cyanide and Happiness:
|
||||
.RS
|
||||
.B dosage cyanideandhappiness
|
||||
.RE
|
||||
.PP
|
||||
Retrieve the current strip of all comics in your \fBComics\fP directory:
|
||||
.RS
|
||||
.B dosage @
|
||||
.RE
|
||||
.PP
|
||||
Vote for the comics in your \fBComics\fP directory:
|
||||
.RS
|
||||
.B dosage --vote @
|
||||
.RE
|
||||
.PP
|
||||
Retrieve the current strip of every comic that there is a module for:
|
||||
.RS
|
||||
.B dosage @@
|
||||
.RE
|
||||
.PP
|
||||
Retrieve the Penny Arcade strip for a given index:
|
||||
.RS
|
||||
.B dosage pennyarcade:2004\-07\-22
|
||||
.RE
|
||||
.PP
|
||||
Retrieve Calvin and Hobbes strips from a given index going backwards to
|
||||
the beginning.
|
||||
.RS
|
||||
.B dosage \-a calvinandhobbes:2012/07/22
|
||||
.RE
|
||||
.PP
|
||||
.SH ENVIRONMENT
|
||||
.IP HTTP_PROXY
|
||||
.B dosage
|
||||
will use the specified HTTP proxy when downloading URL contents.
|
||||
.SH NOTES
|
||||
Should retrieval fail on any given strip
|
||||
.B dosage
|
||||
will attempt to retry. However the retry information is only outputted
|
||||
in the
|
||||
.B second
|
||||
and successive output levels.
|
||||
.PP
|
||||
At the time of writing, a
|
||||
.B complete
|
||||
Dosage collection weighs in at around 3.0GB.
|
||||
.SH RETURN VALUE
|
||||
The return value greater than zero when
|
||||
.IP \(bu
|
||||
a program error occurred.
|
||||
.IP \(bu
|
||||
comics could not be found or downloaded
|
||||
.IP \(bu
|
||||
the program run was aborted with Ctrl\-C
|
||||
.PP
|
||||
Else the return value is zero.
|
||||
.SH BUGS
|
||||
Users can report or view bugs, patches or feature suggestions at
|
||||
.I https://github.com/wummel/dosage/issues
|
||||
.SH AUTHORS
|
||||
Jonathan Jacobs, Tristan Seligmann, Bastian Kleineidam <bastian.kleineidam@web.de>
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2004-2005 Tristan Seligmann and Jonathan Jacobs
|
||||
.br
|
||||
Copyright \(co 2012-2014 Bastian Kleineidam
|
|
@ -1,288 +0,0 @@
|
|||
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<HTML><HEAD><TITLE>Man page of DOSAGE</TITLE>
|
||||
</HEAD><BODY>
|
||||
<H1>DOSAGE</H1>
|
||||
Section: User Commands (1)<BR><A HREF="#index">Index</A>
|
||||
<A HREF="index.html">Return to Main Contents</A><HR>
|
||||
|
||||
<A NAME="lbAB"> </A>
|
||||
<H2>NAME</H2>
|
||||
|
||||
dosage - a comic strip downloader and archiver
|
||||
<A NAME="lbAC"> </A>
|
||||
<H2>SYNOPSIS</H2>
|
||||
|
||||
<B>dosage</B> [<I>options</I>] <I>module</I>...
|
||||
<A NAME="lbAD"> </A>
|
||||
<H2>DESCRIPTION</H2>
|
||||
|
||||
<B>dosage</B>
|
||||
|
||||
is an application designed to keep a local mirror of specific
|
||||
web comics and other picture-based content, such as
|
||||
<I>Picture Of The Day</I> sites, with a variety of options
|
||||
for updating and maintaining collections.
|
||||
<A NAME="lbAE"> </A>
|
||||
<H2>OPTIONS</H2>
|
||||
|
||||
<DL COMPACT>
|
||||
<DT><B>-b</B> <I>PATH</I>, <B>--basepath=</B><I>PATH</I><DD>
|
||||
Specifies a base path to put comic subdirectories. The default is <B>Comics</B>.
|
||||
<DT><B>--baseurl=</B><I>PATH</I><DD>
|
||||
Specifies the base URL for output handlers. The default is a local file URI.
|
||||
<DT><B>-a</B>, <B>--all</B><DD>
|
||||
Traverses all available strips backwards from the current one.
|
||||
This can be useful you want a full collection of a new comic strip,
|
||||
or update an existing one where files are missing.
|
||||
Catchups can start at a specific strip by using the index syntax, see
|
||||
the
|
||||
<B>INDEX SYNTAX</B>
|
||||
|
||||
and
|
||||
<B>SPECIAL SYNTAX</B>
|
||||
|
||||
sections for more information. This is useful when you missed some days
|
||||
and want only to download the missing files.
|
||||
<DT><B>-c</B>, <B>--continue</B><DD>
|
||||
Same as <B>--all</B>, but stop at the first existing image file.
|
||||
Useful for cron jobs that are not executed every day.
|
||||
<DT><B>-h</B>, <B>--help</B><DD>
|
||||
Output brief help information.
|
||||
<DT><B>-l</B>, <B>--list</B><DD>
|
||||
List available comic modules in multi-column fashion.
|
||||
<DT><B>--singlelist</B><DD>
|
||||
List available comic modules in single-column fashion.
|
||||
<DT><B>-m</B> <I>MODULE</I>, <B>--modulehelp=</B><I>MODULE</I><DD>
|
||||
Output module-specific help for <I>MODULE</I>.
|
||||
<DT><B>-o</B> <I>OUTPUT</I>, <B>--output=</B><I>OUTPUT</I><DD>
|
||||
<I>OUTPUT</I> may be any one of the following:
|
||||
</DL>
|
||||
<P>
|
||||
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>html </B>-
|
||||
|
||||
Writes out an HTML file linking to the strips actually downloaded in the
|
||||
current run, named by date (ala dailystrips). The files can be found in the
|
||||
<B>html</B> directory of your <B>Comics</B> directory.
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>rss </B>-
|
||||
|
||||
Writes out an RSS feed detailing what strips were downloaded in the last 24
|
||||
hours. The feed can be found in <B>Comics/dailydose.xml</B>.
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>json </B>-
|
||||
|
||||
Write a JSON file with all download infos (URLs, images). Can be used with
|
||||
other scripts, eg. order-symlinks.py to add symbolic links.
|
||||
</DL>
|
||||
|
||||
This option can be given multiple times.
|
||||
<DL COMPACT>
|
||||
<DT><B>-t</B>, <B>--timestamps</B><DD>
|
||||
Print timestamps for all output at any level.
|
||||
<DT><B>-v</B>, <B>--verbose</B><DD>
|
||||
Increase the output level by one with each occurence.
|
||||
<DT><B>-V</B>, <B>--version</B><DD>
|
||||
Display the version number.
|
||||
<DT><B>--vote</B><DD>
|
||||
Vote for the selected comics to tell others that you like them.
|
||||
The sum of all votes for a comic will be displayed at the comic
|
||||
index pages at <A HREF="http://wummel.github.io/dosage/comic-index.html">http://wummel.github.io/dosage/comic-index.html</A>
|
||||
<I>module</I>
|
||||
|
||||
At least one valid
|
||||
<I>module</I>
|
||||
|
||||
must be specified. A list of valid modules can be found by passing the
|
||||
<B>-l</B>
|
||||
|
||||
option. Multiple
|
||||
<I>module</I>
|
||||
|
||||
arguments can be specified on the command line.
|
||||
Module names are case insensitive, and it is sufficient to specify a
|
||||
unique substring of the module name.
|
||||
</DL>
|
||||
<A NAME="lbAF"> </A>
|
||||
<H2>INDEX SYNTAX</H2>
|
||||
|
||||
Instead of starting at the latest comic strip, an index lets dosage start
|
||||
at a certain strip. The index can be specified by appending a colon <B>:</B>
|
||||
and the index name after the module. Multiple comma-spearated indices can
|
||||
also be specified.
|
||||
<P>
|
||||
|
||||
The index name itself usually is the part of the comic strip URL that identifiess
|
||||
a strip, eg. a number or a date. The expected format is documented when using
|
||||
the <B>--modulehelp</B> option.
|
||||
<A NAME="lbAG"> </A>
|
||||
<H2>SPECIAL SYNTAX</H2>
|
||||
|
||||
<DL COMPACT>
|
||||
<DT><B>@</B>
|
||||
|
||||
<DD>
|
||||
This expands to mean all the comics currently in your <B>Comics</B>
|
||||
directory. All other specified comic module names will be ignored.
|
||||
<DT><B>@@</B>
|
||||
|
||||
<DD>
|
||||
This expands to mean all the comics available to Dosage.
|
||||
</DL>
|
||||
<P>
|
||||
|
||||
<B>INDEX SYNTAX</B> can not be used with <B>SPECIAL SYNTAX</B>.
|
||||
<A NAME="lbAH"> </A>
|
||||
<H2>EXAMPLES</H2>
|
||||
|
||||
Retrieve all Mega Tokyo comics:
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>dosage -a megatokyo</B>
|
||||
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
Retrieve the current comic of Cyanide and Happiness:
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>dosage cyanideandhappiness</B>
|
||||
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
Retrieve the current strip of all comics in your <B>Comics</B> directory:
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>dosage @</B>
|
||||
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
Vote for the comics in your <B>Comics</B> directory:
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>dosage --vote @</B>
|
||||
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
Retrieve the current strip of every comic that there is a module for:
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>dosage @@</B>
|
||||
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
Retrieve the Penny Arcade strip for a given index:
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>dosage pennyarcade:2004-07-22</B>
|
||||
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
Retrieve Calvin and Hobbes strips from a given index going backwards to
|
||||
the beginning.
|
||||
<DL COMPACT><DT><DD>
|
||||
<B>dosage -a calvinandhobbes:2012/07/22</B>
|
||||
|
||||
</DL>
|
||||
|
||||
<P>
|
||||
|
||||
<A NAME="lbAI"> </A>
|
||||
<H2>ENVIRONMENT</H2>
|
||||
|
||||
<DL COMPACT>
|
||||
<DT>HTTP_PROXY<DD>
|
||||
<B>dosage</B>
|
||||
|
||||
will use the specified HTTP proxy when downloading URL contents.
|
||||
</DL>
|
||||
<A NAME="lbAJ"> </A>
|
||||
<H2>NOTES</H2>
|
||||
|
||||
Should retrieval fail on any given strip
|
||||
<B>dosage</B>
|
||||
|
||||
will attempt to retry. However the retry information is only outputted
|
||||
in the
|
||||
<B>second</B>
|
||||
|
||||
and successive output levels.
|
||||
<P>
|
||||
|
||||
At the time of writing, a
|
||||
<B>complete</B>
|
||||
|
||||
Dosage collection weighs in at around 3.0GB.
|
||||
<A NAME="lbAK"> </A>
|
||||
<H2>RETURN VALUE</H2>
|
||||
|
||||
The return value greater than zero when
|
||||
<DL COMPACT>
|
||||
<DT>•<DD>
|
||||
a program error occurred.
|
||||
<DT>•<DD>
|
||||
comics could not be found or downloaded
|
||||
<DT>•<DD>
|
||||
the program run was aborted with Ctrl-C
|
||||
</DL>
|
||||
<P>
|
||||
|
||||
Else the return value is zero.
|
||||
<A NAME="lbAL"> </A>
|
||||
<H2>BUGS</H2>
|
||||
|
||||
Users can report or view bugs, patches or feature suggestions at
|
||||
<I><A HREF="https://github.com/wummel/dosage/issues">https://github.com/wummel/dosage/issues</A></I>
|
||||
|
||||
<A NAME="lbAM"> </A>
|
||||
<H2>AUTHORS</H2>
|
||||
|
||||
Jonathan Jacobs, Tristan Seligmann, Bastian Kleineidam <<A HREF="mailto:bastian.kleineidam@web.de">bastian.kleineidam@web.de</A>>
|
||||
<A NAME="lbAN"> </A>
|
||||
<H2>COPYRIGHT</H2>
|
||||
|
||||
Copyright © 2004-2005 Tristan Seligmann and Jonathan Jacobs
|
||||
<BR>
|
||||
|
||||
Copyright © 2012-2014 Bastian Kleineidam
|
||||
<P>
|
||||
|
||||
<HR>
|
||||
<A NAME="index"> </A><H2>Index</H2>
|
||||
<DL>
|
||||
<DT><A HREF="#lbAB">NAME</A><DD>
|
||||
<DT><A HREF="#lbAC">SYNOPSIS</A><DD>
|
||||
<DT><A HREF="#lbAD">DESCRIPTION</A><DD>
|
||||
<DT><A HREF="#lbAE">OPTIONS</A><DD>
|
||||
<DT><A HREF="#lbAF">INDEX SYNTAX</A><DD>
|
||||
<DT><A HREF="#lbAG">SPECIAL SYNTAX</A><DD>
|
||||
<DT><A HREF="#lbAH">EXAMPLES</A><DD>
|
||||
<DT><A HREF="#lbAI">ENVIRONMENT</A><DD>
|
||||
<DT><A HREF="#lbAJ">NOTES</A><DD>
|
||||
<DT><A HREF="#lbAK">RETURN VALUE</A><DD>
|
||||
<DT><A HREF="#lbAL">BUGS</A><DD>
|
||||
<DT><A HREF="#lbAM">AUTHORS</A><DD>
|
||||
<DT><A HREF="#lbAN">COPYRIGHT</A><DD>
|
||||
</DL>
|
||||
<HR>
|
||||
This document was created by
|
||||
man2html,
|
||||
using the manual pages.<BR>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
172
doc/dosage.txt
172
doc/dosage.txt
|
@ -1,172 +0,0 @@
|
|||
DOSAGE(1) DOSAGE(1)
|
||||
|
||||
|
||||
|
||||
NAME
|
||||
dosage - a comic strip downloader and archiver
|
||||
|
||||
SYNOPSIS
|
||||
dosage [options] module...
|
||||
|
||||
DESCRIPTION
|
||||
dosage is an application designed to keep a local mirror of
|
||||
specific web comics and other picture-based content, such as
|
||||
Picture Of The Day sites, with a variety of options for updat‐
|
||||
ing and maintaining collections.
|
||||
|
||||
OPTIONS
|
||||
-b PATH, --basepath=PATH
|
||||
Specifies a base path to put comic subdirectories. The
|
||||
default is Comics.
|
||||
|
||||
--baseurl=PATH
|
||||
Specifies the base URL for output handlers. The default
|
||||
is a local file URI.
|
||||
|
||||
-a, --all
|
||||
Traverses all available strips backwards from the cur‐
|
||||
rent one. This can be useful you want a full collection
|
||||
of a new comic strip, or update an existing one where
|
||||
files are missing. Catchups can start at a specific
|
||||
strip by using the index syntax, see the INDEX SYNTAX
|
||||
and SPECIAL SYNTAX sections for more information. This
|
||||
is useful when you missed some days and want only to
|
||||
download the missing files.
|
||||
|
||||
-c, --continue
|
||||
Same as --all, but stop at the first existing image
|
||||
file. Useful for cron jobs that are not executed every
|
||||
day.
|
||||
|
||||
-h, --help
|
||||
Output brief help information.
|
||||
|
||||
-l, --list
|
||||
List available comic modules in multi-column fashion.
|
||||
|
||||
--singlelist
|
||||
List available comic modules in single-column fashion.
|
||||
|
||||
-m MODULE, --modulehelp=MODULE
|
||||
Output module-specific help for MODULE.
|
||||
|
||||
-o OUTPUT, --output=OUTPUT
|
||||
OUTPUT may be any one of the following:
|
||||
|
||||
html - Writes out an HTML file linking to the strips
|
||||
actually downloaded in the current run, named by date
|
||||
(ala dailystrips). The files can be found in the html
|
||||
directory of your Comics directory.
|
||||
|
||||
rss - Writes out an RSS feed detailing what strips were
|
||||
downloaded in the last 24 hours. The feed can be found
|
||||
in Comics/dailydose.xml.
|
||||
|
||||
json - Write a JSON file with all download infos (URLs,
|
||||
images). Can be used with other scripts, eg. order-sym‐
|
||||
links.py to add symbolic links.
|
||||
This option can be given multiple times.
|
||||
|
||||
-t, --timestamps
|
||||
Print timestamps for all output at any level.
|
||||
|
||||
-v, --verbose
|
||||
Increase the output level by one with each occurence.
|
||||
|
||||
-V, --version
|
||||
Display the version number.
|
||||
|
||||
--vote Vote for the selected comics to tell others that you
|
||||
like them. The sum of all votes for a comic will be
|
||||
displayed at the comic index pages at http://wum‐
|
||||
mel.github.io/dosage/comic-index.html module At least
|
||||
one valid module must be specified. A list of valid mod‐
|
||||
ules can be found by passing the -l option. Multiple
|
||||
module arguments can be specified on the command line.
|
||||
Module names are case insensitive, and it is sufficient
|
||||
to specify a unique substring of the module name.
|
||||
|
||||
INDEX SYNTAX
|
||||
Instead of starting at the latest comic strip, an index lets
|
||||
dosage start at a certain strip. The index can be specified by
|
||||
appending a colon : and the index name after the module. Multi‐
|
||||
ple comma-spearated indices can also be specified.
|
||||
|
||||
The index name itself usually is the part of the comic strip
|
||||
URL that identifiess a strip, eg. a number or a date. The
|
||||
expected format is documented when using the --modulehelp
|
||||
option.
|
||||
|
||||
SPECIAL SYNTAX
|
||||
@ This expands to mean all the comics currently in your
|
||||
Comics directory. All other specified comic module names
|
||||
will be ignored.
|
||||
|
||||
@@ This expands to mean all the comics available to Dosage.
|
||||
|
||||
INDEX SYNTAX can not be used with SPECIAL SYNTAX.
|
||||
|
||||
EXAMPLES
|
||||
Retrieve all Mega Tokyo comics:
|
||||
dosage -a megatokyo
|
||||
|
||||
Retrieve the current comic of Cyanide and Happiness:
|
||||
dosage cyanideandhappiness
|
||||
|
||||
Retrieve the current strip of all comics in your Comics direc‐
|
||||
tory:
|
||||
dosage @
|
||||
|
||||
Vote for the comics in your Comics directory:
|
||||
dosage --vote @
|
||||
|
||||
Retrieve the current strip of every comic that there is a mod‐
|
||||
ule for:
|
||||
dosage @@
|
||||
|
||||
Retrieve the Penny Arcade strip for a given index:
|
||||
dosage pennyarcade:2004-07-22
|
||||
|
||||
Retrieve Calvin and Hobbes strips from a given index going
|
||||
backwards to the beginning.
|
||||
dosage -a calvinandhobbes:2012/07/22
|
||||
|
||||
ENVIRONMENT
|
||||
HTTP_PROXY
|
||||
dosage will use the specified HTTP proxy when download‐
|
||||
ing URL contents.
|
||||
|
||||
NOTES
|
||||
Should retrieval fail on any given strip dosage will attempt to
|
||||
retry. However the retry information is only outputted in the
|
||||
second and successive output levels.
|
||||
|
||||
At the time of writing, a complete Dosage collection weighs in
|
||||
at around 3.0GB.
|
||||
|
||||
RETURN VALUE
|
||||
The return value greater than zero when
|
||||
|
||||
· a program error occurred.
|
||||
|
||||
· comics could not be found or downloaded
|
||||
|
||||
· the program run was aborted with Ctrl-C
|
||||
|
||||
Else the return value is zero.
|
||||
|
||||
BUGS
|
||||
Users can report or view bugs, patches or feature suggestions
|
||||
at https://github.com/wummel/dosage/issues
|
||||
|
||||
AUTHORS
|
||||
Jonathan Jacobs, Tristan Seligmann, Bastian Kleineidam <bas‐
|
||||
tian.kleineidam@web.de>
|
||||
|
||||
COPYRIGHT
|
||||
Copyright © 2004-2005 Tristan Seligmann and Jonathan Jacobs
|
||||
Copyright © 2012-2014 Bastian Kleineidam
|
||||
|
||||
|
||||
|
||||
DOSAGE(1)
|
|
@ -1,23 +0,0 @@
|
|||
Installation
|
||||
-------------
|
||||
The easy way with pip:
|
||||
|
||||
```shell
|
||||
pip install dosage
|
||||
```
|
||||
|
||||
You can invoke Dosage directly from the source code as
|
||||
`./dosage`. Alternatively,
|
||||
you can install Dosage using python distutils by invoking
|
||||
setup.py in the root of the distribution. For example:
|
||||
|
||||
```shell
|
||||
python setup.py install
|
||||
```
|
||||
|
||||
or if you do not have root permissions:
|
||||
|
||||
```shell
|
||||
python setup.py install --home=$HOME
|
||||
```
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
#!/bin/sh
|
||||
# Copyright (C) 2012-2014 Bastian Kleineidam
|
||||
set -e
|
||||
set -u
|
||||
# generates a convenience test script from failed tests
|
||||
# since py.test has no way to rerun only the failed ones
|
||||
|
||||
script=test.sh
|
||||
|
||||
rm -f "$script"
|
||||
echo "#!/bin/sh" > "$script"
|
||||
echo "set -e" >> "$script"
|
||||
egrep "^F " testresults.txt | cut -b "3-" | sort | awk '{ print "make testall PYTESTOPTS=--tb=short TESTS=" $0; }' >> "$script"
|
||||
chmod 755 "$script"
|
Loading…
Reference in a new issue