Skip to main content

Django field and widget for editing markup content (PlainText, HTML,Markdown, reStructuredText, Textile) using the CodeMirror editor withlive preview.

Project description

django-markupmirror is a custom field and widget for editing markup text in Django. It utilizes the CodeMirror JS editor for a richer editing experience.

It uses parts of James Turk’s django-markupfield and adds a nicer widget with live-preview and an extension content-type for FeinCMS.

Documentation

on Read the Docs: http://django-markupmirror.readthedocs.org/

Code and issues

on bitbucket: https://bitbucket.org/fabianbuechler/django-markupmirror

Releases

on PyPi: http://pypi.python.org/pypi/django-markupmirror

Quickstart

  • To install django-markupmirror, use pip and add 'markupmirror' to the INSTALLED_APPS in your Django project.

  • In your settings.py specify at least MARKUPMIRROR_DEFAULT_MARKUP_TYPE which is 'plaintext' by default.

  • For the markup HTML-preview, you’ll need to add markupmirror’s URLs in your URLconf. In your urls.py add:

    import markupmirror.urls
    
    urlpatterns = patterns('',
        (r'^markupmirror/', include(markupmirror.urls.preview)),
    )
  • Add one or more markupmirror.fields.MarkupMirrorField s to your models and define markup_type or default_markup_type:

    class ModelWithMarkup(models.Model):
        content = MarkupMirrorField(
            verbose_name="content", markup_type='markdown')
  • If you want the FeinCMS content-type model MarkupMirrorContent, you’ll also need to add 'markupmirror.feincms' to your INSTALLED_APPS.

    Also, you need to register the content-type model with FeinCMS’ Page module:

    from feincms.module.page.models import Page
    from markupmirror.feincms.models import MarkupMirrorContent
    
    Page.create_content_type(MarkupMirrorContent)

By default, django-markupmirror comes with markup converters for plain text (converts links and linebreaks) and HTML (does nothing). Converters for Markdown, reStructuredText and Textile are also available, but require 3rd-party libraries to be installed. However, you can register your own markup converters.

Changelog

0.1c1 - 2012-08-25

  • A few documentation fixes. Thanks Paolo Dina.

0.1b2 - 2012-05-08

  • Fixed problem with initializing the editor in FeinCMS when adding new content blocks.

0.1b1 - 2012-05-08

  • Textarea to editor conversion and live preview now also works for standard models, in collapsed fieldsets, added inlines and when switching tabs in FeinCMS pages.

0.1a2 - 2012-05-03

  • Added jQuery plugin for CodeMirror initialization and preview updating. Thanks to Gustav Pursche!

  • Improved usage and installation docs.

0.1a1 - 2012-04-27

  • Initial release including MarkupMirrorField field, MarkupMirrorTextarea and AdminMarkupMirrorTextareaWidget widgets and providing FeinCMS integration with MarkupMirrorContent Page content-type. Supported markup types are plain text, HTML, Mardown, reStructuredText and Textile.

Project details


Download files

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

Source Distributions

django-markupmirror-0.2a1.tar.gz (189.2 kB view details)

Uploaded Source

django-markupmirror-0.1c1.tar.gz (374.5 kB view details)

Uploaded Source

File details

Details for the file django-markupmirror-0.2a1.tar.gz.

File metadata

File hashes

Hashes for django-markupmirror-0.2a1.tar.gz
Algorithm Hash digest
SHA256 669134861e2ba0506afc85cb36c85a7a54fa8a1ebe12c66ba4e381ff8d4ed29a
MD5 d3ff1c18bcb344f12a6e116954bb30f5
BLAKE2b-256 32cea7edb1a6968e21ffff0302059d0b76492c8143eeae2f72c27929e09ee5d9

See more details on using hashes here.

File details

Details for the file django-markupmirror-0.1c1.tar.gz.

File metadata

File hashes

Hashes for django-markupmirror-0.1c1.tar.gz
Algorithm Hash digest
SHA256 c0661aebb7aac617efa3c6bbb538157fea9b1a828a729ebb7712a1e35e64e438
MD5 cd30b811d3d75b9a3e58e407ad5e9e79
BLAKE2b-256 453524ca5b9f70e1e979e4863e5b4c078a2ba8338abfb0fd99b8a4da80106cf6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page