*2010.01.17 12:54:23 python restructured_text
*2010.01.17 12:37:37 python restructured_text
from docutils import core
def rst2html(rst):
  overrides = {'input_encoding': 'unicode',
               'doctitle_xform': 1,
               'initial_header_level': 1}
  parts = core.publish_parts(
      source=rst,
      writer_name='html', settings_overrides=overrides)
  fragment = parts['html_body']
  return fragment

summarized from earlier entries easy to just include when and where needed see also: | http://code.activestate.com/recipes/193890/

 

*2008.11.09 21:28 python restructured_text
*2008.07.17 11:52 python restructured_text

#http://docutils.sourceforge.net/docutils/examples.py def html_parts(input_string, source_path=None, destination_path=None,

System Message: ERROR/3 (<string>, line 3)

Unexpected indentation.
input_encoding='unicode', doctitle=1, initial_header_level=1):

System Message: WARNING/2 (<string>, line 4)

Block quote ends without a blank line; unexpected unindent.

""" Given an input string, returns a dictionary of HTML document parts.

Dictionary keys are the names of parts, and values are Unicode strings; encoding is up to the client.

Parameters:

  • input_string: A multi-line text string; required.
  • source_path: Path to the source file or object. Optional, but useful for diagnostic output (system messages).
  • destination_path: Path to the file or object which will receive the output; optional. Used for determining relative paths (stylesheets, source links, etc.).
  • input_encoding: The encoding of input_string. If it is an encoded 8-bit string, provide the correct encoding. If it is a Unicode string, use "unicode", the default.
  • doctitle: Disable the promotion of a lone top-level section title to document title (and subsequent section title to document subtitle promotion); enabled by default.
  • initial_header_level: The initial level for header elements (e.g. 1 for "<h1>").

System Message: WARNING/2 (<string>, line 26)

Bullet list ends without a blank line; unexpected unindent.

""" overrides = {'input_encoding': input_encoding,

System Message: ERROR/3 (<string>, line 28)

Unexpected indentation.
'doctitle_xform': doctitle, 'initial_header_level': initial_header_level}

System Message: WARNING/2 (<string>, line 30)

Block quote ends without a blank line; unexpected unindent.
parts = core.publish_parts(
source=input_string, source_path=source_path, destination_path=destination_path, writer_name='html', settings_overrides=overrides)

System Message: WARNING/2 (<string>, line 34)

Definition list ends without a blank line; unexpected unindent.

return parts

def html_body(input_string, source_path=None, destination_path=None,
input_encoding='unicode', output_encoding='unicode', doctitle=1, initial_header_level=1):

System Message: WARNING/2 (<string>, line 39)

Block quote ends without a blank line; unexpected unindent.

""" Given an input string, returns an HTML fragment as a string.

The return value is the contents of the <body> element.

Parameters (see html_parts() for the remainder):

  • output_encoding: The desired encoding of the output. If a Unicode string is desired, use the default value of "unicode" .

System Message: WARNING/2 (<string>, line 48)

Bullet list ends without a blank line; unexpected unindent.

""" parts = html_parts(

System Message: ERROR/3 (<string>, line 50)

Unexpected indentation.
input_string=input_string, source_path=source_path, destination_path=destination_path, input_encoding=input_encoding, doctitle=doctitle, initial_header_level=initial_header_level)

System Message: WARNING/2 (<string>, line 54)

Block quote ends without a blank line; unexpected unindent.

fragment = parts['html_body'] if output_encoding != 'unicode':

System Message: ERROR/3 (<string>, line 56)

Unexpected indentation.
fragment = fragment.encode(output_encoding)

System Message: WARNING/2 (<string>, line 57)

Block quote ends without a blank line; unexpected unindent.

return fragment

def text2html(content):

""" not sure if there is a way to do this with docutils, but just want to have html line breaks where there are new lines (n -> <br />n) """ #http://docutils.sourceforge.net/docs/user/rst/quickref.html new = '' for line in content.split('n'):

#s matches whitespace #S matches alphanumeric # #if it has characters, make it a 'line block' #http://docutils.sourceforge.net/docs/user/rst/quickref.html if re.search('S', line):

System Message: ERROR/3 (<string>, line 74)

Unexpected indentation.
new += "| " + line + 'n'

System Message: WARNING/2 (<string>, line 75)

Block quote ends without a blank line; unexpected unindent.

html = html_body(new) return literal(html)

 

*2008.07.14 11:25 python restructured_text
restructuredtext add line breaks - Google Search
Python Package Index : Index of Packages Matching 'templates'
Python Package Index : rest2web 0.5.0 Final
README: Docutils
Docutils Front-End Tools
Docutils Front-End Tools
The Docutils Publisher
The Docutils Publisher
Docutils Front-End Tools
Writing HTML (CSS) Stylesheets for Docutils
Docutils FAQ (Frequently Asked Questions)
Docutils FAQ (Frequently Asked Questions)
Docutils FAQ (Frequently Asked Questions)
Quick reStructuredText
python regular expressions - Google Search
4.2 re -- Regular expression operations
Regular Expression HOWTO

 

*2008.07.14 08:02 python restructured_text

adding in helpers to memory/web/browser/lib/helper.py

 

*2008.07.13 09:46 python restructured_text
*2008.07.06 11:38 python restructured_text

restructured text is part of the docutils library

in that library, there are scripts to do conversions in examples:

#2008.07.06 11:43:02 ubuntu@ubuntu:~ sudo easy_install docutils

edit: /usr/bin/rst2html.py # EASY-INSTALL-SCRIPT: 'docutils==0.4','rst2html.py' __requires__ = 'docutils==0.4' import pkg_resources pkg_resources.run_script('docutils==0.4', 'rst2html.py')

/usr/lib/python2.5/site-packages/ cd /usr/lib/python2.5/site-packages/docutils-0.4-py2.5.egg/docutils/

from docutils.core import publish_cmdline, default_description

description = ('Generates HTML from standalone reStructuredText '
'sources (for testing purposes). ' + default_description)

publish_cmdline(writer_name='html', description=description)

vi core.py