merge search and replace

This commit is contained in:
ldolse 2011-01-15 11:24:38 +08:00
commit 01b12c5e8a
3 changed files with 26 additions and 27 deletions

View File

@ -183,7 +183,7 @@ def add_pipeline_options(parser, plumber):
} }
group_order = ['', 'LOOK AND FEEL', 'HEURISTICS', group_order = ['', 'LOOK AND FEEL', 'HEURISTICS',
'SEARCH AND REPLACE' 'STRUCTURE DETECTION', 'SEARCH AND REPLACE', 'STRUCTURE DETECTION',
'TABLE OF CONTENTS', 'METADATA', 'DEBUG'] 'TABLE OF CONTENTS', 'METADATA', 'DEBUG']
for group in group_order: for group in group_order:

View File

@ -540,8 +540,7 @@ OptionRecommendation(name='sr1_search',
OptionRecommendation(name='sr1_replace', OptionRecommendation(name='sr1_replace',
recommended_value='', level=OptionRecommendation.LOW, recommended_value='', level=OptionRecommendation.LOW,
help=_('Replace characters (can be lambda expression) to ' help=_('Replace characters to replace the text found with sr1-search.')),
'replace the text found with sr1-search.')),
OptionRecommendation(name='sr2_search', OptionRecommendation(name='sr2_search',
recommended_value='', level=OptionRecommendation.LOW, recommended_value='', level=OptionRecommendation.LOW,
@ -550,8 +549,7 @@ OptionRecommendation(name='sr2_search',
OptionRecommendation(name='sr2_replace', OptionRecommendation(name='sr2_replace',
recommended_value='', level=OptionRecommendation.LOW, recommended_value='', level=OptionRecommendation.LOW,
help=_('Replace characters (can be lambda expression) to ' help=_('Replace characters to replace the text found with sr2-search.')),
'replace the text found with sr2-search.')),
OptionRecommendation(name='sr3_search', OptionRecommendation(name='sr3_search',
recommended_value='', level=OptionRecommendation.LOW, recommended_value='', level=OptionRecommendation.LOW,
@ -560,8 +558,7 @@ OptionRecommendation(name='sr3_search',
OptionRecommendation(name='sr3_replace', OptionRecommendation(name='sr3_replace',
recommended_value='', level=OptionRecommendation.LOW, recommended_value='', level=OptionRecommendation.LOW,
help=_('Replace characters (can be lambda expression) to ' help=_('Replace characters to replace the text found with sr3-search.')),
'replace the text found with sr3-search.')),
] ]
# }}} # }}}

View File

@ -436,27 +436,29 @@ class HTMLPreProcessor(object):
if not getattr(self.extra_opts, 'keep_ligatures', False): if not getattr(self.extra_opts, 'keep_ligatures', False):
html = _ligpat.sub(lambda m:LIGATURES[m.group()], html) html = _ligpat.sub(lambda m:LIGATURES[m.group()], html)
if getattr(self.extra_opts, 'sr3_search', None):
try:
rules.insert(0, (re.compile(self.extra_opts.sr3_search), self.extra_opts.sr3_replace))
except:
import traceback
print 'Failed to parse sr3-search regexp'
traceback.print_exc()
if getattr(self.extra_opts, 'sr2_search', None):
try:
rules.insert(0, (re.compile(self.extra_opts.sr2_search), self.extra_opts.sr2_replace))
except:
import traceback
print 'Failed to parse sr2-search regexp'
traceback.print_exc()
if getattr(self.extra_opts, 'sr1_search', None):
try:
rules.insert(0, (re.compile(self.extra_opts.sr1_search), self.extra_opts.sr1_replace))
except:
import traceback
print 'Failed to parse sr1-search regexp'
traceback.print_exc()
end_rules = [] end_rules = []
if getattr(self.extra_opts, 'remove_header', None):
try:
rules.insert(0,
(re.compile(self.extra_opts.header_regex), lambda match : '')
)
except:
import traceback
print 'Failed to parse remove_header regexp'
traceback.print_exc()
if getattr(self.extra_opts, 'remove_footer', None):
try:
rules.insert(0,
(re.compile(self.extra_opts.footer_regex), lambda match : '')
)
except:
import traceback
print 'Failed to parse remove_footer regexp'
traceback.print_exc()
# delete soft hyphens - moved here so it's executed after header/footer removal # delete soft hyphens - moved here so it's executed after header/footer removal
if is_pdftohtml: if is_pdftohtml:
# unwrap/delete soft hyphens # unwrap/delete soft hyphens