contrib/windows/update_tortoisehg_libs.py @ 0dc141617716
Display obsolete comments/signoff with lower opacity. Add a obsolete class on comments and signoff messages, which sets the opacity to 0.6
| author | Christophe de Vienne <cdevienne@gmail.com> |
|---|---|
| date | Tue, 28 Oct 2014 00:28:05 +0100 |
| parents | 1d9c439bfe54 |
| children | fc97fabaf28d |
# this script will update tortoisehgs python libs to include the missing libs that hg-review needs # (tested with Python 2.6 and Tortoisehg 1.1) # # Daniel Newton <djpnewton@gmail.com> # # Version 1.0 (2010/07/28) import sys import os # check python version if sys.version[:3] != '2.6': sys.exit('Need Python 2.6') # check for windows if sys.platform != 'win32': sys.exit('Script only works on win32') # list of libs to add libs = ('Cookie.py', 'decimal.py', 'htmlentitydefs.py', 'code.py', 'codeop.py', 'compiler', 'numbers.py', 'symbol.py', 'uuid.py') # find python lib path pylib_path = os.path.join(os.path.dirname(sys.executable), 'lib') # find tortoisehg libary.zip import _winreg hKey = _winreg.OpenKey (_winreg.HKEY_CURRENT_USER, r"Software\TortoiseHg") value, type = _winreg.QueryValueEx (hKey, "") # default key value hKey.Close() torthg_lib_path = os.path.join(value, "library.zip") # check validity of paths if not os.path.exists(pylib_path): sys.exit("%s does not exist" % pylib_path) if not os.path.exists(torthg_lib_path): sys.exit("%s does not exist" % torthg_lib_path) # backup tortoisehg lib import shutil shutil.copyfile(torthg_lib_path, torthg_lib_path + ".bak") # add libs to tortoisehg import zipfile zip = zipfile.ZipFile(torthg_lib_path, 'a') for lib in libs: lib_path = os.path.join(pylib_path, lib) lib_path_arcname = os.path.basename(lib_path) zip.write(lib_path, lib_path_arcname) if os.path.isdir(lib_path): child_paths = os.listdir(lib_path) for lib_path_child in child_paths: lib_path_child_arcname = os.path.join(lib_path_arcname, lib_path_child) lib_path_child = os.path.join(lib_path, lib_path_child) zip.write(lib_path_child, lib_path_child_arcname) zip.close() print 'all done'