Exemple #1
0
    def __init__(self, *args):
        Directive.__init__(self, *args)
        env = self.state.document.settings.env
        config_block = env.app.config.config_block

        for language in config_block:
            self.formats[language] = config_block[language]
    def __init__(self, *args):
        Directive.__init__(self, *args)
        env = self.state.document.settings.env
        config_block = env.app.config.config_block

        for language in config_block:
            self.formats[language] = config_block[language]
Exemple #3
0
    def __init__(self, *args, **kwargs):
        Directive.__init__(self, *args, **kwargs)

        role_re_src = '(:ref:|:cref:|:target:)'
        if self.state.document.settings.env.config.default_role == 'cref':
            role_re_src += '?' # explicit role is optional

        role_re_src += '`(.+?)(\s*<([^<>]*)>)?`'
        self.role_re_prog = re.compile(role_re_src)
        self.ws_re_prog = re.compile('\s+')
Exemple #4
0
def make_dummy_directive(directive_name,
                         has_content=True,
                         option_spec=None,
                         optional_arguments=1,
                         final_argument_whitespace=True,
                         **kwargs):
    """
    Creates a dummy_directive that does not have a usable run()
    This makes it possible to do some manual processing of directives with
    self.state.parse_directive_* (where self.state = docutils.parsers.rst.states.Body)

    Defaults differ from Directive defaults because we don't know what content will exist
    in the dummy_directive. So, we assume has_content, no options, and one long argument.

    Any additional **kwargs will be applied as dummy_directive.name = value
    :param string directive_name:
    :param bool has_content:
    :param dict option_spec:
    :param int optional_arguments:
    :param bool final_argument_whitespace:
    """
    dummy_directive = Directive(directive_name, None, None, None, None, None, None, None, None)
    dummy_directive.has_content = has_content
    dummy_directive.option_spec = option_spec
    dummy_directive.optional_arguments = optional_arguments
    dummy_directive.final_argument_whitespace = final_argument_whitespace
    for name, value in kwargs:
        dummy_directive.__setattr__(name, value)

    return dummy_directive
Exemple #5
0
    def __init__(self, *args, **kwargs):
        Directive.__init__(self, *args, **kwargs)

        # pv name valid chars including macros
        pvNameRegex = '[a-zA-Z0-9_\-:\[\]<>;$(),]+'

        self.reRecord = re.compile('\s*record\(\s*(\w+)\s*,\s*"(%s)"\s*\)' %
                                   pvNameRegex)
        self.reField = re.compile(
            '(\s*)field\(\s*(FLNK|LNK.?|INP.?|OUT.?|DOL)\s*,\s*"(%s)(.*)"\s*\)'
            % pvNameRegex)
        self.reComment = re.compile('#')
        self.reVDCTComment = re.compile('#\!')
        self.reTagComment = re.compile('#\$\ *(\w+)')
        self.reExpand = re.compile('\s*expand')
        self.reEndRecord = re.compile('\s*}$')
Exemple #6
0
    def __init__(self, *args, **kwargs):
        Directive.__init__(self, *args, **kwargs)

        name = self.arguments[0].strip()

        if len(self.arguments) > 1:
            arguments = self.arguments[1].split()
        else:
            arguments = []

        macro = {
            'name': name,
            'arguments': arguments,
            'body': self.content,
            'body_offset': self.content_offset,
        }

        if not 'macros' in self.state.document:
            self.state.document['macros'] = {}

        self.state.document['macros'][name] = macro
Exemple #7
0
 def __init__(self, *args, **keys):
     self.re_start = re.compile(r'^#\[(?P<eq>=*)\[\.rst:$')
     Directive.__init__(self, *args, **keys)
Exemple #8
0
 def __init__(self, *args, **keys):
     self.re_start = re.compile(r'^#\[(?P<eq>=*)\[\.rst:$')
     Directive.__init__(self, *args, **keys)
Exemple #9
0
 def __init__(self, *args, **kwargs):
     Directive.__init__(self, *args, **kwargs)
Exemple #10
0
 def __init__(self, *args, **kwargs):
     Directive.__init__(self, *args, **kwargs)
     self.re_prog = re.compile('(:c?ref:)?`((.+?)(\s*<([^<>]*)>)?)`(_+)?')
Exemple #11
0
 def __init__(self, context, name, *a, **b):
     Directive.__init__(self, *a, **b)
     self.context        = context
     self.directive_name = name
Exemple #12
0
 def __init__(self, *args):
     Directive.__init__(self, *args)
     env = self.state.document.settings.env
     config_block = env.app.config.config_block