Re: [PATCH] scripts: use ':Original:' tag to locate the origin file

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 13, 2024 at 4:17 PM Cheng Ziqiu <chengziqiu@xxxxxxxxxxx> wrote:
>
> Simply substitute path may cause file finding failed
> if we have a different dir map for translation. The
> ':Original:' tag could be used to locate the origin
> file if both the tag and file exist.

+cc yanteng's new email

>
> Signed-off-by: Cheng Ziqiu <chengziqiu@xxxxxxxxxxx>
> ---
>  scripts/checktransupdate.py | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
>
> diff --git a/scripts/checktransupdate.py b/scripts/checktransupdate.py
> index 578c3fecfdfd..f28176691b03 100755
> --- a/scripts/checktransupdate.py
> +++ b/scripts/checktransupdate.py
> @@ -25,6 +25,7 @@ commit 42fb9cfd5b18 ("Documentation: dev-tools: Add link to RV docs")
>
>  import os
>  import time
> +import re
>  import logging
>  from argparse import ArgumentParser, ArgumentTypeError, BooleanOptionalAction
>  from datetime import datetime
> @@ -32,6 +33,18 @@ from datetime import datetime
>
>  def get_origin_path(file_path):
>      """Get the origin path from the translation path"""
> +    with open(file_path, "r") as f:
> +        content = f.read()
> +    # find the origin path in the content
> +    match = re.search(r":Original:\s*(?::ref:`|:doc:`)?([^\s`]+)", content)
> +    if match:
> +        f = match.group(1)
> +        if os.path.exists(f):
> +            logging.debug("Origin tag found: %s", f)
> +            return f
> +        else:
> +            logging.warning("Origin tag found but file not exists: %s", f)
> +
>      paths = file_path.split("/")
>      tidx = paths.index("translations")
>      opaths = paths[:tidx]
> --
> 2.34.1
>
>





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux