sapling/mercurial/identity.py
Mark Thomas 01a7b3fdf7 identity: add templating of program name
Summary:
Add templating for the program name.  This maps:

* `prog@` -> `hg`
* `Product@` -> `Mercurial`
* `LongProduct@` -> `Mercurial Distributed SCM`

It also adds `:prog:command` as an alias for `:hg:command` in the help text definition.

Reviewed By: mitrandir77

Differential Revision: D10461874

fbshipit-source-id: 7006fc9c41ede6b16d9a1a56ed1c99979a5f2f7e
2018-10-26 04:19:01 -07:00

21 lines
582 B
Python

# identity.py - program identity
#
# Copyright 2018 Facebook, Inc.
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
prog = "hg"
product = "Mercurial"
longproduct = "Mercurial Distributed SCM"
templatemap = {"@prog@": prog, "@Product@": product, "@LongProduct@": longproduct}
def replace(s):
"""Replace template instances in the given string"""
if s is not None:
for template, replacement in templatemap.items():
s = s.replace(template, replacement)
return s