mirror of
https://github.com/adulau/mastodon-markdown-archive.git
synced 2024-11-22 01:47:05 +00:00
Update README
This commit is contained in:
parent
e420c6f276
commit
5541665f54
1 changed files with 71 additions and 1 deletions
72
README.md
72
README.md
|
@ -14,6 +14,8 @@ This program essentially wraps the Mastodon API with a command line interface wi
|
||||||
- Optionally filter based on post visibility
|
- Optionally filter based on post visibility
|
||||||
- Optional affordances for scripting
|
- Optional affordances for scripting
|
||||||
- Optionally persist fetched post id cursors
|
- Optionally persist fetched post id cursors
|
||||||
|
- Optionally set authorization token to fetch private posts
|
||||||
|
|
||||||
|
|
||||||
I use this tool to create an archive of my Mastodon posts and [syndicate them to my own site](https://garrido.io/microblog/), per IndieWeb's [PESOS philosophy](https://indieweb.org/PESOS).
|
I use this tool to create an archive of my Mastodon posts and [syndicate them to my own site](https://garrido.io/microblog/), per IndieWeb's [PESOS philosophy](https://indieweb.org/PESOS).
|
||||||
|
|
||||||
|
@ -32,6 +34,11 @@ I use this tool to create an archive of my Mastodon posts and [syndicate them to
|
||||||
* [Available functions and variables](#available-functions-and-variables)
|
* [Available functions and variables](#available-functions-and-variables)
|
||||||
* [Functions](#functions)
|
* [Functions](#functions)
|
||||||
* [Variables](#variables)
|
* [Variables](#variables)
|
||||||
|
* [Template examples](#template-examples)
|
||||||
|
* [Jekyll](#jekyll)
|
||||||
|
* [Hugo and 11ty](#hugo-and-11ty)
|
||||||
|
* [HTML](#html)
|
||||||
|
* [Text only](#text-only)
|
||||||
* [Post media](#post-media)
|
* [Post media](#post-media)
|
||||||
* [Bundling](#bundling)
|
* [Bundling](#bundling)
|
||||||
|
|
||||||
|
@ -290,6 +297,69 @@ For both the post and filename templates, the following functions and variables
|
||||||
#### Variables
|
#### Variables
|
||||||
* [Post](https://pkg.go.dev/git.garrido.io/gabriel/mastodon-markdown-archive/client#Post)
|
* [Post](https://pkg.go.dev/git.garrido.io/gabriel/mastodon-markdown-archive/client#Post)
|
||||||
|
|
||||||
|
### Template examples
|
||||||
|
|
||||||
|
Here are some examples for basic templates that can be used. For an example on threading replies, see the [default template](files/templates/post.tmpl).
|
||||||
|
|
||||||
|
#### Jekyll
|
||||||
|
|
||||||
|
Template:
|
||||||
|
```md
|
||||||
|
---
|
||||||
|
layout: post
|
||||||
|
title: {{ .Post.Id }}
|
||||||
|
---
|
||||||
|
|
||||||
|
{{ .Post.Content | toMarkdown }}
|
||||||
|
```
|
||||||
|
|
||||||
|
Filename:
|
||||||
|
`{{.Post.CreatedAt | date "2006-01-02"}}-{{.Post.Id}}.md`
|
||||||
|
|
||||||
|
#### Hugo and 11ty
|
||||||
|
The default template and filename is built for Hugo as that's the static site generator that I use, but a minimum viable template that works for either can look like this:
|
||||||
|
|
||||||
|
```md
|
||||||
|
---
|
||||||
|
title: {{ .Post.Id }}
|
||||||
|
date: {{ .Post.CreatedAt | date "2006-01-02" }}
|
||||||
|
---
|
||||||
|
|
||||||
|
{{ .Post.Content | toMarkdown }}
|
||||||
|
```
|
||||||
|
|
||||||
|
Filename:
|
||||||
|
`{{.Post.CreatedAt | date "2006-01-02"}}-{{.Post.Id}}.md`
|
||||||
|
|
||||||
|
#### HTML
|
||||||
|
|
||||||
|
Template:
|
||||||
|
|
||||||
|
```html
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>{{ .Post.Id }}</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{{.Post.Content}}
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
```
|
||||||
|
Filename: `{{ .Post.Id }}.html`
|
||||||
|
|
||||||
|
#### Text only
|
||||||
|
|
||||||
|
Template:
|
||||||
|
|
||||||
|
```txt
|
||||||
|
{{ .Post.Content }}
|
||||||
|
```
|
||||||
|
|
||||||
|
Filename: `{{ .Post.Id }}.txt`
|
||||||
|
|
||||||
## Post media
|
## Post media
|
||||||
|
|
||||||
By default, a post's media is not downloaded. Use the `--download-media` flag with a path to download a post's media. The post's original file is downloaded, and the image's id is used as the filename.
|
By default, a post's media is not downloaded. Use the `--download-media` flag with a path to download a post's media. The post's original file is downloaded, and the image's id is used as the filename.
|
||||||
|
@ -298,7 +368,7 @@ For example, `--download-media=./images` saves any media to the `./images`.
|
||||||
|
|
||||||
Once downloaded, the media's path is available in [MediaAttachment.Path](https://pkg.go.dev/git.garrido.io/gabriel/mastodon-markdown-archive/client#MediaAttachment) as an absolute path.
|
Once downloaded, the media's path is available in [MediaAttachment.Path](https://pkg.go.dev/git.garrido.io/gabriel/mastodon-markdown-archive/client#MediaAttachment) as an absolute path.
|
||||||
|
|
||||||
Sprig's [path](https://masterminds.github.io/sprig/paths.html) functions can be used in the templates to manipulate the path as necessary. For example, the [default template](https://git.hq.ggpsv.com/gabriel/mastodon-markdown-archive/src/branch/main/files/templates/post.tmpl#L25-L27) uses `osBase` to get the last element of the filepath.
|
Sprig's [path](https://masterminds.github.io/sprig/paths.html) functions can be used in the templates to manipulate the path as necessary. For example, the [default template](files/templates/post.tmpl#L25-L27) uses `osBase` to get the last element of the filepath.
|
||||||
|
|
||||||
### Bundling
|
### Bundling
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue