buildframework/helium/external/python/lib/2.5/docutils-0.5-py2.5.egg/docutils/parsers/rst/directives/html.py
changeset 179 d8ac696cc51f
parent 1 be27ed110b50
child 180 e02a83d4c571
child 592 3215c239276a
--- a/buildframework/helium/external/python/lib/2.5/docutils-0.5-py2.5.egg/docutils/parsers/rst/directives/html.py	Wed Oct 28 14:39:48 2009 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-# $Id: html.py 4667 2006-07-12 21:40:56Z wiemann $
-# Author: David Goodger <goodger@python.org>
-# Copyright: This module has been placed in the public domain.
-
-"""
-Directives for typically HTML-specific constructs.
-"""
-
-__docformat__ = 'reStructuredText'
-
-import sys
-from docutils import nodes, utils
-from docutils.parsers.rst import Directive
-from docutils.parsers.rst import states
-from docutils.transforms import components
-
-
-class MetaBody(states.SpecializedBody):
-
-    class meta(nodes.Special, nodes.PreBibliographic, nodes.Element):
-        """HTML-specific "meta" element."""
-        pass
-
-    def field_marker(self, match, context, next_state):
-        """Meta element."""
-        node, blank_finish = self.parsemeta(match)
-        self.parent += node
-        return [], next_state, []
-
-    def parsemeta(self, match):
-        name = self.parse_field_marker(match)
-        indented, indent, line_offset, blank_finish = \
-              self.state_machine.get_first_known_indented(match.end())
-        node = self.meta()
-        pending = nodes.pending(components.Filter,
-                                {'component': 'writer',
-                                 'format': 'html',
-                                 'nodes': [node]})
-        node['content'] = ' '.join(indented)
-        if not indented:
-            line = self.state_machine.line
-            msg = self.reporter.info(
-                  'No content for meta tag "%s".' % name,
-                  nodes.literal_block(line, line),
-                  line=self.state_machine.abs_line_number())
-            return msg, blank_finish
-        tokens = name.split()
-        try:
-            attname, val = utils.extract_name_value(tokens[0])[0]
-            node[attname.lower()] = val
-        except utils.NameValueError:
-            node['name'] = tokens[0]
-        for token in tokens[1:]:
-            try:
-                attname, val = utils.extract_name_value(token)[0]
-                node[attname.lower()] = val
-            except utils.NameValueError, detail:
-                line = self.state_machine.line
-                msg = self.reporter.error(
-                      'Error parsing meta tag attribute "%s": %s.'
-                      % (token, detail), nodes.literal_block(line, line),
-                      line=self.state_machine.abs_line_number())
-                return msg, blank_finish
-        self.document.note_pending(pending)
-        return pending, blank_finish
-
-
-class Meta(Directive):
-
-    has_content = True
-
-    SMkwargs = {'state_classes': (MetaBody,)}
-
-    def run(self):
-        self.assert_has_content()
-        node = nodes.Element()
-        new_line_offset, blank_finish = self.state.nested_list_parse(
-            self.content, self.content_offset, node,
-            initial_state='MetaBody', blank_finish=1,
-            state_machine_kwargs=self.SMkwargs)
-        if (new_line_offset - self.content_offset) != len(self.content):
-            # incomplete parse of block?
-            error = self.state_machine.reporter.error(
-                'Invalid meta directive.',
-                nodes.literal_block(self.block_text, self.block_text),
-                line=self.lineno)
-            node += error
-        return node.children