Skip to main content

ReStructuredText to XAML for WPF and Silverlight / Moonlight

Project description

A XAML writer from reStructured Text source.

The goal is to be able to write out FlowDocument XAML from ReST documents for use in WPF and Silverlight / Moonlight projects.

It includes a Pygments formatter for outputting a syntax highlighted XAML representation of source code.

rst2xaml itself runs under CPython, but the generated XAML is intended for use from IronPython (or any other .NET language). There is an example IronPython script for displaying the generated XAML using a WPF FlowDocumentReader.

Requirements

rst2xaml depends on:

Tested with Python 2.5 and 2.6, but probably works fine under Python 2.4.

The Silverlight output is intended to work with Moonlight (the equivalent of Silverlight 2) and Silverlight 3. Let me know if there are any problems.

Current status

The docutils writer for both FlowDocument and Silverlight XAML can currently handle the following markup features:

  • title and headings
  • paragraphs
  • bold
  • italics
  • literal blocks
  • inline literals
  • line blocks
  • bullet lists
  • enumerated lists
  • blockquotes
  • the raw:: xaml directive
  • the pygments code-block directive

In addition the FlowDocument output can handle superscript, although that only works for fonts that support it.

Nested enumerated lists don’t yet work correctly for either FlowDocument or Silverlight output.

Scripts

There are three scripts that come with rst2xaml:

python rst2xaml.py source.txt output.xaml
python rst2xamlsl.py silverlight-source.txt silverlight-output.xaml
ipy.exe display_xaml.py output.xaml

If display_xaml.py is run without a command line argument it will open a file dialog for you to choose a xaml file to display.

Tests

The tests use the discover module, which is included in the repository for convenience. You run the tests with:

python discover.py

Development

The development version of rst2xaml is hosted on a google project page:

CHANGELOG

2009/08/29 Version 0.1.1

Bottom margin on list items increased.

Addition of xclass option for the Silverlight XAML, for use from Try Python.

2009/08/20 Version 0.1.0

Initial release.

Project details


Release history Release notifications

This version
History Node

0.1.1

History Node

0.1.0

History Node

0.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
rst2xaml-0.1.1.tar.gz (19.5 kB) Copy SHA256 hash SHA256 Source None Aug 29, 2009
rst2xaml-0.1.1.zip (24.4 kB) Copy SHA256 hash SHA256 Source None Aug 29, 2009

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page