made replace optional for users who just want equivalent of old feature, eliminate requirement to populate replace box

This commit is contained in:
ldolse 2011-01-16 23:22:17 +08:00
parent fa3d7e2d1f
commit f8971944fb

View File

@ -453,27 +453,19 @@ 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): for search, replace in [['sr3_search', 'sr3_replace'], ['sr2_search', 'sr2_replace'], ['sr1_search', 'sr1_replace']]:
try: replace_pattern = ''
rules.insert(0, (re.compile(self.extra_opts.sr3_search), self.extra_opts.sr3_replace)) if getattr(self.extra_opts, search, None):
except: search_pattern = getattr(self.extra_opts, search, None)
import traceback if getattr(self.extra_opts, replace, None):
print 'Failed to parse sr3-search regexp' replace_pattern = getattr(self.extra_opts, replace, None)
traceback.print_exc() try:
if getattr(self.extra_opts, 'sr2_search', None): rules.insert(0, (re.compile(search_pattern), replace_pattern))
try: except:
rules.insert(0, (re.compile(self.extra_opts.sr2_search), self.extra_opts.sr2_replace)) import traceback
except: print 'Failed to parse sr3-search regexp'
import traceback traceback.print_exc()
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 = []
# 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