#github #link #add #source-file #edit #page #linker

bin+lib mdbook-open-on-gh

mdbook preprocessor to add a open-on-github link on every page

21 stable releases

2.4.3 May 13, 2024
2.4.2 Dec 13, 2023
2.4.1 Aug 5, 2023
2.3.3 Feb 14, 2023
1.0.1 Jan 30, 2020

#337 in Text processing

Download history 23/week @ 2024-08-08 28/week @ 2024-08-15 53/week @ 2024-08-22 58/week @ 2024-08-29 36/week @ 2024-09-05 34/week @ 2024-09-12 115/week @ 2024-09-19 43/week @ 2024-09-26 27/week @ 2024-10-03 20/week @ 2024-10-10 52/week @ 2024-10-17 51/week @ 2024-10-24 31/week @ 2024-10-31 49/week @ 2024-11-07 33/week @ 2024-11-14 40/week @ 2024-11-21

156 downloads per month
Used in mdbook-dtmo

MPL-2.0 license

25KB
206 lines

mdbook-open-on-gh

A preprocessor for mdbook to add a open-on-github link on every page.

It adds an "Edit this file on GitHub" link on the bottom of every page, linking directly to the source file. It uses the configured git-repository-url as the base.

Installation

If you want to use only this preprocessor, install the tool:

cargo install mdbook-open-on-gh

Add it as a preprocessor to your book.toml:

[preprocessor.open-on-gh]
command = "mdbook-open-on-gh"
renderer = ["html"]

Configuration

mdbook-open-on-gh is configured using additional options under [output.html]:

[output.html]
# Required: Your repository URL used in the link.
git-repository-url = "https://github.com/$user/$project"

# Your git branch. Defaults to `main`
git-branch = "main"

# The text to use in the footer.
# The link text is marked by `[]`
open-on-text = "Found a bug? [Edit this page on GitHub.]"

To style the footer add a custom CSS file for your HTML output:

[output.html]
additional-css = ["open-in.css"]

And in open-in.css style the <footer> element or directly the CSS element id open-on-gh:

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.
Copyright (c) 2020-2022 Jan-Erik Rediger janerik@fnordig.de

Dependencies

~11–23MB
~331K SLoC