[PATCH] templater: add strip function with chars as an extra argument

Alexander Plavin me at aplavin.ru
Tue Jun 25 18:00:48 UTC 2013


This function will be used in my next patches, and it seems handy anyway.


2013/6/25 Alexander Plavin <me at aplavin.ru>

> # HG changeset patch
> # User Alexander Plavin <me at aplavin.ru>
> # Date 1372179742 -14400
> #      Tue Jun 25 21:02:22 2013 +0400
> # Node ID b86e8cb9939493bdccce4ec5301cd0b7ea5c9cd7
> # Parent  1bef6f99a12d9062e737bb623da627719a3987e6
> templater: add strip function with chars as an extra argument
>
> This allows specifying characters to strip, like the Python strip function.
>
> diff -r 1bef6f99a12d -r b86e8cb99394 mercurial/templater.py
> --- a/mercurial/templater.py    Thu May 23 17:53:38 2013 -0500
> +++ b/mercurial/templater.py    Tue Jun 25 21:02:22 2013 +0400
> @@ -333,6 +333,16 @@
>          return util.datestr(date, fmt)
>      return util.datestr(date)
>
> +def strip(context, mapping, args):
> +    if not (1 <= len(args) <= 2):
> +        raise error.ParseError(_("strip expects one or two arguments"))
> +
> +    text = args[0][0](context, mapping, args[0][1])
> +    if len(args) == 2:
> +        chars = args[1][0](context, mapping, args[1][1])
> +        return text.strip(chars)
> +    return text.strip()
> +
>  methods = {
>      "string": lambda e, c: (runstring, e[1]),
>      "symbol": lambda e, c: (runsymbol, e[1]),
> @@ -353,6 +363,7 @@
>      "sub": sub,
>      "fill": fill,
>      "date": date,
> +    "strip": strip,
>  }
>
>  # template engine
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-devel/attachments/20130625/88548c3a/attachment-0002.html>


More information about the Mercurial-devel mailing list