Quote:
Originally Posted by pawcook
I really want to get this working but keep getting an 'Exception while compiling function' error when clicking on Create, it seems to be a 'SyntaxError: invalid syntax
I have tried over and over copy and pasting the program code but no joy. I am using Calibre 0.8.34
Thanks in advance for any help
|
Hi pawcook
Hmm, I wonder if all indents in the program code are <TABS> ?
Must be.
Your quote of original post step 5 looks weird ?
Looks like 1 line, should be 22 lines like this:
Code:
def evaluate(self, formatter, kwargs, mi, locals, val, is_read_pct,
is_reading_str, no_page_read_str):
try:
test_val = int(is_read_pct)
except:
return 'is_read_pct is not a number'
import re
mg = re.match('.*\s(\d+[-/]\d+[-/]\d+).*?Last Page Read: Location \d+ \((\d+)%\)', val, re.I + re.DOTALL);
if mg is None:
return no_page_read_str
date = mg.group(1)
pct = mg.group(2)
try:
f = int(pct)
if f > test_val:
return date
elif f > 0:
return is_reading_str + ': ' + pct + '%'
except:
pass
return no_page_read_str
Please give it another try.
Cheers, Per