chore(docs): update README.md

This commit is contained in:
草师傅 2025-08-15 18:39:39 +08:00
parent daa3df13ad
commit ee714021e6
Signed by: gb
GPG key ID: 43330A030E2D6478

View file

@ -70,11 +70,48 @@ All commands are run from the root of the project, from a terminal:
- [x] Better support for printing version - [x] Better support for printing version
- [ ] Add support for more comment engines - [ ] Add support for more comment engines
- [x] Add support for umami statics - [x] Add support for umami statics
- [ ] Improve documentation - [x] Improve documentation
- [ ] Release v1.0 - [ ] Release v1.0
- [ ] ~~Integrate with Fediverse w/ activityPub~~ - [ ] ~~Integrate with Fediverse w/ activityPub~~
- [ ] ~~Plain text version when visiting the site via `curl`~~ (can't be done with SSG mode) - [ ] ~~Plain text version when visiting the site via `curl`~~ (can't be done with SSG mode)
## ⚙️ Advanced Usage
### i18n
I have implemented i18n support for UI text, but not for content translations yet.
To further implement i18n, you can:
1. Create a new folder under `src/content/posts/` with the language code as the name (e.g., `en`, `zh-CN`, etc.).
2. Copy your translated markdown files into the new folder.
3. Copy the `src/pages/blog/` folder to `src/pages/[langcode]/blog`.
4. Update the i18n config in `astro.config.mjs` to include the new language code.
5. Rebuild the site.
### plain text version when visiting the site via `curl`
The text version of the site is generated by `src/pages/blog/[slug].txt.js`, which outputs a plain text version of the blog post.
To access it, you can visit `https://your-site.com/blog/your-post-slug.txt`.
To automatically output the text version when visiting the site via `curl`, you can:
1. If you are using caddy, add the following to your `Caddyfile`:
```caddyfile
@curl {
header_regexp User-Agent (?i)curl
}
@text {
path_regexp text /blog/(.*)
}
handle @curl {
rewrite @text /blog/{http.regexp.text.1}.txt
}
```
2. If you are using cloudflare to proxy your site, you can add a page rule to redirect requests with the `curl` user agent to the `.txt` version of the blog post:
If incoming requests match (Custom filter expression):
```
(http.request.full_uri wildcard r"https://yourblog/blog/*" and http.user_agent contains "curl")
```
Then (Rewrite to,static):
```
/blog/${1}.txt
```
3. If you are using other web servers, you can use functions like `rewrite` or `redirect` by user agent (HTTP header) to achieve the same effect.
## 👀 Want to learn more? ## 👀 Want to learn more?
See the post [🕊](). I hope you like it. 💜 See the post [🕊](). I hope you like it. 💜
@ -88,6 +125,6 @@ Other tools like GitHub Copilot helps too.
(I know the LLMs sometimes sucks, but it really helps most of the time) (I know the LLMs sometimes sucks, but it really helps most of the time)
Also [delucis/astro-blog-full-text-rss](https://github.com/delucis/astro-blog-full-text-rss) for implementing full text RSS in pretty easy way Also, [delucis/astro-blog-full-text-rss](https://github.com/delucis/astro-blog-full-text-rss) for implementing full text RSS in pretty easy way.
## ⚖️ License ## ⚖️ License
GNU Affero Public License 3.0 GNU Affero Public License 3.0