check-variable-fonts.py: add a helper to display instructions

Use lib docstring to output the comments via --help/-h. With
that, update the default instructions to recomment it instead
of asking the user to read the source code.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Message-ID: <577162cf4e07de74c4a783f16e3404f0040e5e0a.1758196090.git.mchehab+huawei@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
Mauro Carvalho Chehab
2025-09-18 13:54:40 +02:00
committed by Jonathan Corbet
parent 4515ffdf3c
commit 92ea342ff6
2 changed files with 20 additions and 5 deletions

View File

@@ -12,11 +12,21 @@ Detect problematic Noto CJK variable fonts.
or more details, see lib/latex_fonts.py.
"""
import argparse
import sys
from lib.latex_fonts import LatexFontChecker
msg = LatexFontChecker().check()
checker = LatexFontChecker()
parser=argparse.ArgumentParser(description=checker.description(),
formatter_class=argparse.RawTextHelpFormatter)
parser.add_argument("--deny-vf",
help="XDG_CONFIG_HOME dir containing fontconfig/fonts.conf file")
args=parser.parse_args()
msg = LatexFontChecker(args.deny_vf).check()
if msg:
print(msg)

View File

@@ -105,14 +105,18 @@ class LatexFontChecker:
translations.
"""
def __init__(self):
deny_vf = os.environ.get('FONTS_CONF_DENY_VF', "~/deny-vf")
def __init__(self, deny_vf=None):
if not deny_vf:
deny_vf = os.environ.get('FONTS_CONF_DENY_VF', "~/deny-vf")
self.environ = os.environ.copy()
self.environ['XDG_CONFIG_HOME'] = os.path.expanduser(deny_vf)
self.re_cjk = re.compile(r"([^:]+):\s*Noto\s+(Sans|Sans Mono|Serif) CJK")
def description(self):
return __doc__
def get_noto_cjk_vf_fonts(self):
"""Get Noto CJK fonts"""
@@ -154,8 +158,9 @@ class LatexFontChecker:
For CJK pages in PDF, they need to be hidden from XeTeX by denylisting.
Or, CJK pages can be skipped by uninstalling texlive-xecjk.
For more info on denylisting, other options, and variable font, see header
comments of {rel_file}.
For more info on denylisting, other options, and variable font, run:
tools/docs/check-variable-fonts.py -h
""")
msg += "=" * 77