Pumping pads as files into publishing frameworks!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

150 lines
4.7 KiB

etherpump
9 years ago
=========
*Pumping text from etherpads into publications*
A command-line utility that extends the multi writing and publishing functionalities of the [etherpad](http://etherpad.org/) by exporting the pads in multiple formats.
Many pads, many networks
------------------------
5 years ago
*Etherpump* is a fork of [*etherdump*](https://gitlab.constantvzw.org/aa/etherdump), a command line tool written by [Michael Murtaugh](http://automatist.org/) that converts etherpad pages to files. This fork is made out of curiosities in the tool, a wish to study it and shared sparks of enthusiasm to use it in different situations within Varia.
Etherpump is a stretched version of etherdump. It is a playground in which we would like to add features to the initial tool that diffuse actions of *dumping* into *pumping*. So most of all, etherpump is a work-in-progress, exploring potential uses of etherpads to edit, structure and publish various types of content.
Added features are:
* opt-in publishing with the `__PUBLISH__` magic word
* the `publication` command, that listens to custom magic words such as `__RELEARN__`
Etherdump is a tool that is used from the command line. It dumps all pads of one etherpad installation to a folder, saving them as different text files, such as plain text and HTML. It also creates an index file, that allows one to easily navigate through the list of pads. Etherdump follows a document-driven idea of publishing, which means that it converts pads as database entries into pads as files. This seems to be a redundant act of copying, but is actually an important in-between step that allows for many different publishing projects and experiments.
We started to get to know etherdump through various editions of Relearn and/or the worksessions organized by Constant. Collaborative writing on an etherpad has been an important ingredient for these situations. The habit of using pads branched into the day-to-day practice of Varia, where we use etherpads for all sorts of things, ranging from organising remote-meetings with 10+ people, to writing and designing PDF documents collaboratively.
After installing etherdump on the Varia server, we collectively decided to not want to publish pads by default. Discussions in the group around the use of etherpads, privacy and ideas of what publishing means, led to a need to have etherdump only start the indexing work after it recognizes a `__PUBLISH__` marker on a pad. We decided to work on a `__PUBLISH__ vs. __NOPUBLISH__` branch of etherdump, which we now fork into **etherpump**.
Change log / notes
==================
**September 2019**
Forking *etherdump* into *etherpump*. (Work in progress!)
<https://git.vvvvvvaria.org/varia/etherpump>
-----
**May - September 2019**
Etherdump is used to produce the *Ruminating Relearn* section of the Network Of One's Own 2 (NOOO2) publication.
A new command is added to make a web publication, based on the custom magic word `__RELEARN__`.
-----
**June 2019**
Multiple conversations around etherdump emerged during Relearn Curved in Varia, Rotterdam.
Including the idea of executable pads (*etherhooks*), custom magic words, a federated snippet protocol (*etherstekje*) and more.
<https://varia.zone/relearn-2019.html>
-----
**April 2019**
Installation of etherdump on the Varia server.
<https://etherdump.vvvvvvaria.org/>
-----
**March 2019**
The `__PUBLISH__ vs. __NOPUBLISH__` was added to the etherdump repository by *decentral1se*.
<https://gitlab.constantvzw.org/aa/etherdump/issues/3>
-----
Originally designed for use at: [Constant](http://etherdump.constantvzw.org/).
More notes can be found in the [git repository of etherdump](https://gitlab.constantvzw.org/aa/etherdump).
Install etherpump
=================
Requirements
-------------
* python3
* html5lib
* requests (settext)
* python-dateutil, jinja2 (used by the index subcommand)
9 years ago
Installation
-------------
`$ pip install python-dateutil jinja2 html5lib`
`$ python setup.py install`
9 years ago
Example
---------------
```
$ mkdir mydump
$ cd myddump
$ etherdump init
9 years ago
```
9 years ago
The program then interactively asks some questions:
9 years ago
```
Please type the URL of the etherpad:
https://pad.vvvvvvaria.org/
```
9 years ago
The APIKEY is the contents of the file APIKEY.txt in the etherpad folder.
```
Please paste the APIKEY:
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
```
The settings are placed in a file called `.etherdump/settings.json` and are used (by default) by future commands.
Subcommands
9 years ago
----------
* init
* pull
9 years ago
* list
* listauthors
* gettext
8 years ago
* settext
* gethtml
* creatediffhtml
9 years ago
* revisionscount
* index
8 years ago
* deletepad
* publication (*etherpump*)
9 years ago
9 years ago
To get help on a subcommand:
9 years ago
`$ etherdump revisionscount --help`
6 years ago
License
=======
6 years ago
GNU AFFERO GENERAL PUBLIC LICENSE, Version 3
See `License.txt`