Skip to main content

Fork of Markdown-checklist: Python Markdown extension for task lists with checkboxes

Project description

[Markdown Checklists](

a [Python Markdown]( extension for lists of
tasks with checkboxes inspured by [GitHub task lists](

Markdown-Checklists is forked from [Markdown Checklist]( and extended with addtional features.

## Features

* a dash can be used instead of an asterisk for list items
* both upper- and lowercase "x" are accepted to activate checkboxes

## Additional Features

* MakeFile provides task to create for Sublime-Text 3 Plugin [OmniMarkupPreviewer]( an Markdown-Renderer extension with additonal template files.
* `class` attribute for `<ul>`-Tag for Checklists.
* `class` attribute for `<li>`-Tag of Checklists.
* Genearting key (hash) for each checkpoint text, using hash to make checklist check"ed" able.
* `id` attribute for `<input>`-Tag of Checklists.
* `for` attribute for `<label>`-Tag of Checklists.

## Example HTML Output

h1>Hello World</h1>
<ul class="checklist">
<li class="task-list-item"><input type="checkbox" id="ca052d1d7e0a2f787f4ef9937840dcf91e647b08b208df4bbce2e78d527a4f8c"><label for="ca052d1d7e0a2f787f4ef9937840dcf91e647b08b208df4bbce2e78d527a4f8c"> foo</label></li>
<li class="task-list-item"><input type="checkbox" id="375719a43941c6a5e7f957c74b6f1d7e20cfefd0040181aaf6d3074c8eaac311" checked><label for="375719a43941c6a5e7f957c74b6f1d7e20cfefd0040181aaf6d3074c8eaac311"> bar</label></li>
<li class="task-list-item"><input type="checkbox" id="7d80d75283fdbf2a3d8a0e2eed45e9d844d1a7482372cd8bc59581725373c179"><label for="7d80d75283fdbf2a3d8a0e2eed45e9d844d1a7482372cd8bc59581725373c179"> baz</label></li>
<li class="task-list-item"><input type="checkbox"></li>
<li class="task-list-item"><input type="checkbox" checked></li>
<p>lorem ipsum</p>

## Installation

$ pip install markdown-checklists

### Markdown-Renderer Extension for OmniMarkupPreviewer

*installs the extension to the current user.*

$ make OmniMarkupPreviewerInstall

## Usage

import markdown
html = markdown.markdown(source, extensions=['markdown_checklists.extension'])


import markdown
from markdown_checklists.extension import ChecklistsExtension
html = markdown.markdown(source, extensions=[ChecklistsExtension()])

There is also a small JavaScript/jQuery library to make checkboxes interactive:

new Checklists("article", function(checkbox, callback) {
var uri = checkbox.closest("article").find("h1 a").attr("href");
jQuery.get(uri, callback);
}, function(markdown, checkbox, callback) {
var uri = checkbox.closest("article").find("h1 a").attr("href");
type: "put",
uri: uri,
data: markdown,
success: callback

See included `checklists.js` for details.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for markdown-checklists, version 0.6.3
Filename, size File type Python version Upload date Hashes
Filename, size markdown-checklists-0.6.3.tar.gz (9.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page