mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Ignore errors in translations of template lang docs
This commit is contained in:
parent
d9de854a72
commit
262cc42c5a
@ -18,6 +18,10 @@ def info(*a):
|
||||
getLogger(__name__).info(*a)
|
||||
|
||||
|
||||
def warn(*a):
|
||||
getLogger(__name__).warn(*a)
|
||||
|
||||
|
||||
include_pat = re.compile(r'^.. include:: (\S+.rst)', re.M)
|
||||
|
||||
|
||||
@ -45,14 +49,24 @@ def formatter_funcs():
|
||||
return ans
|
||||
|
||||
|
||||
def ffdoc(m):
|
||||
def ffdoc(language, m):
|
||||
func_name = m.group(1)
|
||||
return formatter_funcs()['doc'][func_name]
|
||||
try:
|
||||
return formatter_funcs()['doc'][func_name]
|
||||
except Exception as e:
|
||||
if language in ('en', 'eng'):
|
||||
raise
|
||||
warn(f'Failed to process template language docs for in the {language} language with error: {e}')
|
||||
|
||||
|
||||
def ffsum(m):
|
||||
def ffsum(language, m):
|
||||
func_name = m.group(1)
|
||||
return formatter_funcs()['sum'][func_name]
|
||||
try:
|
||||
return formatter_funcs()['sum'][func_name]
|
||||
except Exception as e:
|
||||
if language in ('en', 'eng'):
|
||||
raise
|
||||
warn(f'Failed to process template language summary docs for in the {language} language with error: {e}')
|
||||
|
||||
|
||||
def source_read_handler(app, docname, source):
|
||||
@ -65,8 +79,8 @@ def source_read_handler(app, docname, source):
|
||||
src = re.sub(r'(\s+generated/)en/', r'\1' + app.config.language + '/', src)
|
||||
if docname == 'template_lang':
|
||||
try:
|
||||
src = re.sub(r':ffdoc:`(.+?)`', ffdoc, src)
|
||||
src = re.sub(r':ffsum:`(.+?)`', ffsum, src)
|
||||
src = re.sub(r':ffdoc:`(.+?)`', partial(ffdoc, app.config.language), src)
|
||||
src = re.sub(r':ffsum:`(.+?)`', partial(ffsum, app.config.language), src)
|
||||
except Exception:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
@ -360,7 +374,7 @@ def generate_docs(language):
|
||||
|
||||
def template_docs(language):
|
||||
from template_ref_generate import generate_template_language_help
|
||||
raw = generate_template_language_help(language)
|
||||
raw = generate_template_language_help(language, getLogger(__name__))
|
||||
update_cli_doc('template_ref', raw, language)
|
||||
|
||||
|
||||
|
@ -50,7 +50,7 @@ functions.
|
||||
'''
|
||||
|
||||
|
||||
def generate_template_language_help(language):
|
||||
def generate_template_language_help(language, log):
|
||||
from tempfile import TemporaryDirectory
|
||||
|
||||
from calibre.db.legacy import LibraryDatabase
|
||||
@ -75,7 +75,13 @@ def generate_template_language_help(language):
|
||||
func = categories[cat_name][name]
|
||||
a(f"\n\n.. _ff_{name}:\n\n{name}\n{'^'*len(name)}\n\n")
|
||||
a(f'.. class:: {func.__class__.__name__}\n\n')
|
||||
a(ffml.document_to_rst(func.doc, name))
|
||||
try:
|
||||
a(ffml.document_to_rst(func.doc, name))
|
||||
except Exception as e:
|
||||
if language in ('en', 'eng'):
|
||||
raise
|
||||
log.warn(f'Failed to process template language docs for {name} in the {language} language with error: {e}')
|
||||
a(' TRANSLATION INVALID')
|
||||
a('\n\n')
|
||||
db.close()
|
||||
del db
|
||||
|
Loading…
x
Reference in New Issue
Block a user