Server IP : 162.0.209.157 / Your IP : 18.118.28.31 [ Web Server : LiteSpeed System : Linux premium178.web-hosting.com 4.18.0-513.24.1.lve.2.el8.x86_64 #1 SMP Fri May 24 12:42:50 UTC 2024 x86_64 User : balaoqob ( 2395) PHP Version : 8.0.30 Disable Function : NONE Domains : 1 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/hc_python/lib64/python3.8/site-packages/mako/ext/ |
Upload File : |
# ext/linguaplugin.py # Copyright 2006-2024 the Mako authors and contributors <see AUTHORS file> # # This module is part of Mako and is released under # the MIT License: http://www.opensource.org/licenses/mit-license.php import contextlib import io from lingua.extractors import Extractor from lingua.extractors import get_extractor from lingua.extractors import Message from mako.ext.extract import MessageExtractor class LinguaMakoExtractor(Extractor, MessageExtractor): """Mako templates""" use_bytes = False extensions = [".mako"] default_config = {"encoding": "utf-8", "comment-tags": ""} def __call__(self, filename, options, fileobj=None): self.options = options self.filename = filename self.python_extractor = get_extractor("x.py") if fileobj is None: ctx = open(filename, "r") else: ctx = contextlib.nullcontext(fileobj) with ctx as file_: yield from self.process_file(file_) def process_python(self, code, code_lineno, translator_strings): source = code.getvalue().strip() if source.endswith(":"): if source in ("try:", "else:") or source.startswith("except"): source = "" # Ignore try/except and else elif source.startswith("elif"): source = source[2:] # Replace "elif" with "if" source += "pass" code = io.StringIO(source) for msg in self.python_extractor( self.filename, self.options, code, code_lineno - 1 ): if translator_strings: msg = Message( msg.msgctxt, msg.msgid, msg.msgid_plural, msg.flags, " ".join(translator_strings + [msg.comment]), msg.tcomment, msg.location, ) yield msg