blob: dec045c2fee39d9f05e2d829499d79680497f58f (
plain) (
tree)
|
|
#+SETUPFILE: ~/.emacs.d/org-templates/projects.org
#+EXPORT_FILE_NAME: index
#+TITLE: Draco
Draco is a script to convert reddit thread to Org document. It accepts a
url & prints the Org document to STDOUT.
It'll also print comments along with their replies. It's limited by
the reddit API.
| Project Home | [[https://andinus.nand.sh/draco/][Draco]] |
| Source Code | [[https://git.tilde.institute/andinus/draco/][Andinus / Draco]] |
| GitHub (Mirror) | [[https://github.com/andinus/draco/][Draco - GitHub]] |
*Tested on*:
- OpenBSD 6.8 (Perl v5.30.3)
* Why?
I reference things from the web in my Journal & don't want those links
to break so I save them locally. Previously I used to manually archive
the whole thread, this automates it.
* Demo
This was recorded with =asciinema(1)=.
[[https://asciinema.org/a/373860][https://asciinema.org/a/373860.png]]
+ Draco v0.1.2: https://asciinema.org/a/373860
+ Draco 2020-11-19: https://asciinema.org/a/373851
* Installation
#+BEGIN_SRC sh
# Clone the project.
git clone https://git.tilde.institute/andinus/draco && \
cd draco
# Install dependencies. (OpenBSD)
doas pkg_add p5-Unicode-LineBreak p5-JSON-MaybeXS
cpan install HTTP::Tiny
# Install. (Use sudo if doas is not present)
doas make install
#+END_SRC
* Dependencies
** Unicode::LineBreak
This is used to wrap the text at 76 columns. Draco can work without this
module.
** JSON::MaybeXS
This module is required for Draco to work, it can be replaced with any
other module that parses JSON & produces same data structure.
** =HTTP::Tiny=
Draco can work without this module if you can get the file some other
way.
|