示例#1
0
 def make_node(self):
     parser = self.parser
     if parser.text[parser.caret] != '_':
         return None
     if parser.text[parser.caret - 1] not in EMPTY:
         return None
     found = False
     index = parser.caret
     while found is False:
         index = parser.text.find('_', index + 1, parser.end)
         if index == -1 or parser.text[index - 1] in EMPTY:
             return None
         char = parser.text[index + 1:index + 2]
         if char.isalpha() or char in '&':
             pass
         else:
             found = True
     if parser.caret + 1 == index:
         return None
     pos = parser.copy_pos()
     parser.update(parser.caret + 1)
     node = Element('em')
     node.pos = pos
     node.smartem_end = index
     return node
 def make_node(self):
     parser = self.parser
     if parser.text[parser.caret] != '_':
         return None
     if parser.text[parser.caret-1] not in EMPTY:
         return None
     found = False
     index = parser.caret
     while found is False:
         index = parser.text.find('_', index+1, parser.end)
         if index == -1 or parser.text[index-1] in EMPTY:
             return None
         char = parser.text[index+1:index+2]
         if char.isalpha() or char in '&':
             pass
         else:
             found = True
     if parser.caret+1 == index:
         return None
     pos = parser.copy_pos()
     parser.update(parser.caret+1)
     node = Element('em')
     node.pos = pos
     node.smartem_end = index
     return node