86 lines
2.0 KiB
Markdown
86 lines
2.0 KiB
Markdown
# mdbook-last-changed
|
|
|
|
A preprocessor for [mdbook][] to add a page's last change date and a link to the commit on every page.
|
|
|
|
[mdbook]: https://github.com/rust-lang/mdBook
|
|
|
|
It adds a "Last change" footer, including a date and a link to the corresponding commit.
|
|
It uses the configured `git-repository-url` as the base.
|
|
|
|
## Requirements
|
|
|
|
* The `git` command line tool.
|
|
* Access to the git repository checkout while building your book.
|
|
|
|
## Installation
|
|
|
|
If you want to use only this preprocessor, install the tool:
|
|
|
|
```
|
|
cargo install mdbook-last-changed
|
|
```
|
|
|
|
Add it as a preprocessor to your `book.toml`:
|
|
|
|
```toml
|
|
[preprocessor.last-changed]
|
|
command = "mdbook-last-changed"
|
|
renderer = ["html"]
|
|
```
|
|
|
|
## Configuration
|
|
|
|
`mdbook-last-changed` is configured using additional options under `[output.html]`:
|
|
|
|
|
|
```toml
|
|
[output.html]
|
|
# Optional: Your repository URL used in the link.
|
|
git-repository-url = "https://github.com/$user/$project"
|
|
```
|
|
|
|
If `git-repository-url` is not configured the footer will not contain the commit and a link to it and instead only show the last changed date.
|
|
|
|
Without `git-repository-url` configured:
|
|
```HTML
|
|
<footer id="last-change">Last change: 2023-07-09</footer>
|
|
```
|
|
|
|
With `git-repository-url` configured:
|
|
```HTML
|
|
<footer id="last-change">Last change: 2023-07-09, commit: <a href="https://github.com/$user/$project/commit/$commit">0000000</a></footer>
|
|
```
|
|
|
|
To style the footer add a custom CSS file for your HTML output:
|
|
|
|
```toml
|
|
[output.html]
|
|
additional-css = ["last-changed.css"]
|
|
```
|
|
|
|
And in `last-changed.css` style the `<footer>` element or directly the CSS element id `last-changed`:
|
|
|
|
```css
|
|
footer {
|
|
font-size: 0.8em;
|
|
text-align: center;
|
|
border-top: 1px solid black;
|
|
padding: 5px 0;
|
|
}
|
|
```
|
|
|
|
This code block shrinks the text size, center-aligns it under the rest of the content
|
|
and adds a small horizontal bar above the text to separate it from the page content.
|
|
|
|
|
|
Finally, build your book as normal:
|
|
|
|
```
|
|
mdbook path/to/book
|
|
```
|
|
|
|
## License
|
|
|
|
MPL. See [LICENSE](LICENSE).
|
|
Copyright (c) 2022 Jan-Erik Rediger <janerik@fnordig.de>
|