An MkDocs plugin to export content pages to any files that pandoc can handle
Project description
Mkdoc Pandoc Plugin
This plugin is based on https://github.com/HaoLiuHust/mkdocs-mk2pdf-plugin and aims to use pandoc as a generic engine to convert to many document format that pandoc suports.
An MkDocs plugin to convert content pages to many format
The plugin will use pandoc to export all markdown pages in your MkDocs repository.
Requirements
- This package requires MkDocs version 1.0 or higher (0.17 works as well)
- Python 3.4 or higher
- pandoc, xelatex(to support Chinese)
sudo apt install pandoc sudo apt install texlive texlive-latex-extra texlive-latex-recommended texlive-xetex
Installation
Install the package with pip:
pip install mkdocs-pandoc-plugin
Enable the plugin in your mkdocs.yml
:
plugins:
- search
- pandoc
Note: If you have no
plugins
entry in your config file yet, you'll likely also want to add thesearch
plugin. MkDocs enables it by default if there is noplugins
entry set, but now you have to enable it explicitly.
More information about plugins in the [MkDocs documentation][mkdocs-plugins].
Testing
When building your repository with mkdocs build
, you should now see the following message at the end of your build output:
Converting 17 files to PDF took 15.6s
In your site_dir
you should now have a PDF file for every markdown page.
Options
You may customize the plugin by passing options in mkdocs.yml
:
plugins:
- pandoc:
enabled_if_env: ENABLE_PANDOC_EXPORT
enabled_if_env
Setting this option will enable the build only if there is an environment variable set to 1. This is useful to disable building the files during development, since it can take a long time to export all files. Default is not set.
combined
Setting this to true
will combine all pages into a single file. All download links will point to this file. Default is false
.
combined_output_path
This option allows you to use a different destination for the combined file. Has no effect when combined
is set to false
. Default is pandoc/combined.pdf
.
pandoc_template
This option allows you to use a custom pandoc template to convert markdown file to translated document files.
mkdocs.yml
:
plugins:
- pandoc:
project-root
├── docs
├── mkdocs.yml
├── site
.
.
Contributing
From reporting a bug to submitting a pull request: every contribution is appreciated and welcome. Report bugs, ask questions and request features using [Github issues][github-issues]. If you want to contribute to the code of this project, please read the [Contribution Guidelines][contributing].
Special thanks
Special thanks go to HaoLiuHust for developing the mkdocs-mk2pdf-plugin.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mkdocs-pandoc-plugin-1.0.1.tar.gz
.
File metadata
- Download URL: mkdocs-pandoc-plugin-1.0.1.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb5a13cd269c8e7f2fda8ac9ad3adb3b4ad39fdb3b81bde288de7c82a5b5aed0 |
|
MD5 | 8aaf3d893dada6ed9721560583d81a5d |
|
BLAKE2b-256 | 95196fbc782d2f973d16fc07e75d7e8375b55b8babf08835bcb3f7aa168f9b1a |
File details
Details for the file mkdocs_pandoc_plugin-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: mkdocs_pandoc_plugin-1.0.1-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dedfbf35c1fa5d590d021b1befa020e2ae569b7b891ecf5a70775109603af824 |
|
MD5 | bb098026a2066abafb8575d99cd6c602 |
|
BLAKE2b-256 | 10f6b44d2ddb6740392267a96726b853e77b87325e76c19b3766ed22b4e00086 |