Name | mksync JSON |
Version |
0.1.6
JSON |
| download |
home_page | None |
Summary | None |
upload_time | 2025-07-31 10:55:08 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.10 |
license | None |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# mksync
MkSync replaces directives in a Markdown file with corresponding content. It's a useful tool to add nice
features to your project's `README.md` file, such as a table of contents, without the manual upkeep.
<!-- table of contents -->
* [Example](#example)
* [Available Directives](#available-directives)
* [Synopsis](#synopsis)
* [Changelog](#changelog)
* [0.1.6 (2025-07-31)](#016-2025-07-31)
* [0.1.5 (2025-07-31)](#015-2025-07-31)
* [0.1.4 (2023-06-29)](#014-2023-06-29)
* [0.1.3 (2023-06-29)](#013-2023-06-29)
<!-- end table of contents -->
## Example
Say this is your `README.md`:
```md
# My Project
<!-- toc -->
## Installation
## Documentation
```
Then running `mksync README.md` will update the file in-place to:
```md
# My Project
<!-- toc -->
* [Installation](#installation)
* [Documentation](#documentation)
<!-- end toc -->
## Installation
## Documentation
```
## Available Directives
* `toc` or `table of contents`: Produce an unordered list of links to all headers in the document after the directive.
* `include <path>`: Include the contents of the file at the given path. You can optionally specify a language name to
wrap the content in a code block, e.g. `include code:python <path>`.
* `runcmd <command>`: Run the given command and include the output in the document. You can optionally specify a
language name to wrap the output in a code block, e.g. `runcmd code:python <command>`.
## Synopsis
<!-- runcmd code: mksync --help -->
```
usage: mksync [-h] [--inplace] [--verbose] [--change-dir] file
MkSync is a utility to update Markdown files in-place to automate some common upkeep tasks, such as inling
example code and updating table of contents.
positional arguments:
file the file to process
options:
-h, --help show this help message and exit
--inplace, -i update the file in-place
--verbose, -v enable verbose logging
--change-dir, -c change into parent directory of the file
```
<!-- end runcmd -->
---
# Changelog
<!-- runcmd slap changelog format --all --markdown -->
## 0.1.6 (2025-07-31)
<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>
<tr><td>Fix</td><td>
Fix using correct filename when `--change-dir,-c` is used</td><td></td><td></td><td>@NiklasRosenstein</td></tr>
</table>
## 0.1.5 (2025-07-31)
<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>
<tr><td>Hygiene</td><td>
Use Uv and Tire instead of Slap and manual config of Mypy, Black, Flake8, isort, Pycln</td><td><a href="https://github.com/NiklasRosenstein/mksync/pull/2">2</a></td><td></td><td>@NiklasRosenstein</td></tr>
<tr><td>Fix</td><td>
The `toc` directive no longer considers `#` in the middle of the line</td><td><a href="https://github.com/NiklasRosenstein/mksync/pull/2">2</a></td><td></td><td>@NiklasRosenstein</td></tr>
<tr><td>Feature</td><td>
add `--change-dir,-c` option</td><td><a href="https://github.com/NiklasRosenstein/mksync/pull/2">2</a></td><td></td><td>@NiklasRosenstein</td></tr>
<tr><td>Improvement</td><td>
log failing runcmd executions</td><td><a href="https://github.com/NiklasRosenstein/mksync/pull/2">2</a></td><td></td><td>@NiklasRosenstein</td></tr>
<tr><td>Improvement</td><td>
Upgrade to `python-adjudicator>=0.5.1,<0.6`</td><td><a href="https://github.com/NiklasRosenstein/mksync/pull/2">2</a></td><td></td><td>@NiklasRosenstein</td></tr>
</table>
## 0.1.4 (2023-06-29)
<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>
<tr><td>Fix</td><td>
Fix placement of code block when rendering `include` directive back into the Markdown file.</td><td></td><td></td><td>@NiklasRosenstein</td></tr>
<tr><td>Improvement</td><td>
Keep the same keyword that was used for the TOC directive, which can be one of `toc` and `table of contents`</td><td></td><td></td><td>@NiklasRosenstein</td></tr>
</table>
## 0.1.3 (2023-06-29)
<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>
<tr><td>Fix</td><td>
Fix parsing of `include` directives</td><td></td><td></td><td>@NiklasRosenstein</td></tr>
</table>
<!-- end runcmd -->
Raw data
{
"_id": null,
"home_page": null,
"name": "mksync",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "Niklas Rosenstein <rosensteinniklas@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/66/d3/aae722676afb7103b6c627987085741cc85c263e50635f1887c8d552caa2/mksync-0.1.6.tar.gz",
"platform": null,
"description": "# mksync\n\nMkSync replaces directives in a Markdown file with corresponding content. It's a useful tool to add nice\nfeatures to your project's `README.md` file, such as a table of contents, without the manual upkeep.\n\n<!-- table of contents -->\n * [Example](#example)\n * [Available Directives](#available-directives)\n * [Synopsis](#synopsis)\n* [Changelog](#changelog)\n * [0.1.6 (2025-07-31)](#016-2025-07-31)\n * [0.1.5 (2025-07-31)](#015-2025-07-31)\n * [0.1.4 (2023-06-29)](#014-2023-06-29)\n * [0.1.3 (2023-06-29)](#013-2023-06-29)\n<!-- end table of contents -->\n\n## Example\n\nSay this is your `README.md`:\n\n```md\n# My Project\n\n<!-- toc -->\n\n## Installation\n\n## Documentation\n```\n\nThen running `mksync README.md` will update the file in-place to:\n\n```md\n# My Project\n\n<!-- toc -->\n* [Installation](#installation)\n* [Documentation](#documentation)\n<!-- end toc -->\n\n## Installation\n\n## Documentation\n```\n\n## Available Directives\n\n* `toc` or `table of contents`: Produce an unordered list of links to all headers in the document after the directive.\n* `include <path>`: Include the contents of the file at the given path. You can optionally specify a language name to\n wrap the content in a code block, e.g. `include code:python <path>`.\n* `runcmd <command>`: Run the given command and include the output in the document. You can optionally specify a\n language name to wrap the output in a code block, e.g. `runcmd code:python <command>`.\n\n## Synopsis\n\n<!-- runcmd code: mksync --help -->\n```\nusage: mksync [-h] [--inplace] [--verbose] [--change-dir] file\n\nMkSync is a utility to update Markdown files in-place to automate some common upkeep tasks, such as inling\nexample code and updating table of contents.\n\npositional arguments:\n file the file to process\n\noptions:\n -h, --help show this help message and exit\n --inplace, -i update the file in-place\n --verbose, -v enable verbose logging\n --change-dir, -c change into parent directory of the file\n```\n<!-- end runcmd -->\n\n---\n\n# Changelog\n\n<!-- runcmd slap changelog format --all --markdown -->\n## 0.1.6 (2025-07-31)\n\n<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>\n <tr><td>Fix</td><td>\n\nFix using correct filename when `--change-dir,-c` is used</td><td></td><td></td><td>@NiklasRosenstein</td></tr>\n</table>\n\n## 0.1.5 (2025-07-31)\n\n<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>\n <tr><td>Hygiene</td><td>\n\nUse Uv and Tire instead of Slap and manual config of Mypy, Black, Flake8, isort, Pycln</td><td><a href=\"https://github.com/NiklasRosenstein/mksync/pull/2\">2</a></td><td></td><td>@NiklasRosenstein</td></tr>\n <tr><td>Fix</td><td>\n\nThe `toc` directive no longer considers `#` in the middle of the line</td><td><a href=\"https://github.com/NiklasRosenstein/mksync/pull/2\">2</a></td><td></td><td>@NiklasRosenstein</td></tr>\n <tr><td>Feature</td><td>\n\nadd `--change-dir,-c` option</td><td><a href=\"https://github.com/NiklasRosenstein/mksync/pull/2\">2</a></td><td></td><td>@NiklasRosenstein</td></tr>\n <tr><td>Improvement</td><td>\n\nlog failing runcmd executions</td><td><a href=\"https://github.com/NiklasRosenstein/mksync/pull/2\">2</a></td><td></td><td>@NiklasRosenstein</td></tr>\n <tr><td>Improvement</td><td>\n\nUpgrade to `python-adjudicator>=0.5.1,<0.6`</td><td><a href=\"https://github.com/NiklasRosenstein/mksync/pull/2\">2</a></td><td></td><td>@NiklasRosenstein</td></tr>\n</table>\n\n## 0.1.4 (2023-06-29)\n\n<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>\n <tr><td>Fix</td><td>\n\nFix placement of code block when rendering `include` directive back into the Markdown file.</td><td></td><td></td><td>@NiklasRosenstein</td></tr>\n <tr><td>Improvement</td><td>\n\nKeep the same keyword that was used for the TOC directive, which can be one of `toc` and `table of contents`</td><td></td><td></td><td>@NiklasRosenstein</td></tr>\n</table>\n\n## 0.1.3 (2023-06-29)\n\n<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>\n <tr><td>Fix</td><td>\n\nFix parsing of `include` directives</td><td></td><td></td><td>@NiklasRosenstein</td></tr>\n</table>\n<!-- end runcmd -->\n",
"bugtrack_url": null,
"license": null,
"summary": null,
"version": "0.1.6",
"project_urls": {
"Bug Tracker": "https://github.com/NiklasRosenstein/mksync/issues",
"Repository": "https://github.com/NiklasRosenstein/mksync"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "abff0adbcecfc506b74672664c5776f23b927717038daad69fbf60ca30e00f7d",
"md5": "449b63069952f9cf777fee4c4f0a349b",
"sha256": "3646be17da6b5290c5f3793a8736754870310bf7f8112fb225acf599a0d8d051"
},
"downloads": -1,
"filename": "mksync-0.1.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "449b63069952f9cf777fee4c4f0a349b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 10963,
"upload_time": "2025-07-31T10:55:07",
"upload_time_iso_8601": "2025-07-31T10:55:07.683835Z",
"url": "https://files.pythonhosted.org/packages/ab/ff/0adbcecfc506b74672664c5776f23b927717038daad69fbf60ca30e00f7d/mksync-0.1.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "66d3aae722676afb7103b6c627987085741cc85c263e50635f1887c8d552caa2",
"md5": "5159498a855fcbbde6f5c9340e56feff",
"sha256": "74f9c3f50fbec2966d125010314d9a4a266adcf29c40634a517527006e1a539a"
},
"downloads": -1,
"filename": "mksync-0.1.6.tar.gz",
"has_sig": false,
"md5_digest": "5159498a855fcbbde6f5c9340e56feff",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 6707,
"upload_time": "2025-07-31T10:55:08",
"upload_time_iso_8601": "2025-07-31T10:55:08.849107Z",
"url": "https://files.pythonhosted.org/packages/66/d3/aae722676afb7103b6c627987085741cc85c263e50635f1887c8d552caa2/mksync-0.1.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-31 10:55:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "NiklasRosenstein",
"github_project": "mksync",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "mksync"
}