by
Changes to 265 files · Browse files at f8db13c42758 Showing diff from parent c82f1b25de67 117befc5cb56 Diff from another changeset...
@@ -38,3 +38,5 @@ *~
tortoisehg/util/__version__.py
*.wixobj
+tortoisehg/hgqt/workbench_rc.py
+tortoisehg/hgqt/*_ui.py
|
@@ -43,4 +43,6 @@ d7070fe8ed54ffec748ba98918f59f40c2ae4976 1.1.6
b740366bf49f2ad67ff923fa30e875acfba05892 1.1.6.1
d5840485b34265572ffb4d5bb1226b1577163115 1.1.7
+653ff9fb4ccf16833bab58fbc765ff8829dc1265 1.9
edc8ec8b18a98abada33fb312e2c5cfb8e336eb4 1.1.8
+6f97499d3d53aaf4cc1ec3c626191b13eb3aed58 1.9.1
|
@@ -14,7 +14,7 @@ application is still reasonably usable with the base library versions listed
below.
-PyGtk: 2.10
+PyQt: 4.6
=== Python version ===
|
|
@@ -0,0 +1,7 @@ + The history viewer of TortoiseHg is based on hgview
+<http://www.logilab.org/project/hgview>, a tool developped by David
+Douard <david.douard@logilab.fr> and others, with the financial
+support of Logilab <http://www.logilab.fr>
+
+TortoiseHg Windows installers include TortoiseOverlays handlers, as
+provided by the TortoiseSVN project <http://tortoisesvn.net/>
|
@@ -2,6 +2,7 @@ include contrib/_hgtk
include contrib/nautilus-thg.py
include contrib/mergetools.rc
+include contrib/tortoisehg.desktop
include COPYING.txt
recursive-include i18n *.po
recursive-include doc *
|
@@ -1,5 +1,6 @@ Steps for making a release:
+* hg status -ar --rev 1.6:tip # find new files that WiX needs to know about
* Pull latest translations from Launchpad
* set revision number in tortoisehg/hgtk/gdialog.py (major release only)
* set revision number in doc/source/conf.py
|
|
|
@@ -2,24 +2,42 @@ # messages printed. Takes an optional logfile as first command
# line parameter
-import gc
+import sys
+
+if hasattr(sys, "frozen"):
+ class BlackHole(object):
+ closed = True
+ softspace = 0
+ def write(self, data):
+ pass
+ def close(self):
+ pass
+ def flush(self):
+ pass
+ sys.stdout = BlackHole()
+ sys.stderr = BlackHole()
+
import os
-import sys
import time
import threading
import cStringIO
import Queue
+import traceback
+import gc
-from win32api import *
-from win32gui import *
-
-import win32pipe
-import win32con
-import win32event
-import win32file
-import winerror
-import pywintypes
-import win32security
+try:
+ from win32api import *
+ from win32gui import *
+ import win32pipe
+ import win32con
+ import win32event
+ import win32file
+ import winerror
+ import pywintypes
+ import win32security
+except ImportError, e:
+ print 'Fatal error at startup', e
+ sys.exit(1)
from mercurial import demandimport
demandimport.ignore.append('win32com.shell')
@@ -28,11 +46,6 @@from tortoisehg.util.i18n import agettext as _
from tortoisehg.util import thread2, paths, shlib
-if hasattr(sys, "frozen"):
- # Give stdout/stderr closed attributes to prevent ui.py errors
- sys.stdout.closed = True
- sys.stderr.closed = True
-
APP_TITLE = _('TortoiseHg Overlay Icon Server')
EXIT_CMD = 1025
@@ -155,7 +168,7 @@ except:
pass
cnt += 1
-
+
if self.pipethread.isAlive():
print "WARNING: unable to stop server after %d trys." % max_try
return False
@@ -203,11 +216,16 @@ for path in batch:
r = paths.find_root(path)
if r is None:
- for n in os.listdir(path):
- r = paths.find_root(os.path.join(path, n))
- if (r is not None):
- roots.add(r)
- notifypaths.add(r)
+ try:
+ for n in os.listdir(path):
+ r = paths.find_root(os.path.join(path, n))
+ if (r is not None):
+ roots.add(r)
+ notifypaths.add(r)
+ except Exception, e:
+ # This exception raises in case of fixutf8 extension enabled
+ # and folder name contains '0x5c'(backslash).
+ logger.msg('Failed listdir %s (%s)' % (path, str(e)))
else:
roots.add(r);
notifypaths.add(path)
@@ -350,12 +368,12 @@ # Create an event which we will use to wait on.
# The "service stop" request will set this event.
self.hWaitStop = win32event.CreateEvent(None, 0, 0, None)
-
+
# We need to use overlapped IO for this, so we dont block when
# waiting for a client to connect. This is the only effective way
# to handle either a client connection, or a service stop request.
self.overlapped = pywintypes.OVERLAPPED()
-
+
# And create an event to be used in the OVERLAPPED object.
self.overlapped.hEvent = win32event.CreateEvent(None,0,0,None)
@@ -425,15 +443,18 @@ except SystemExit:
raise SystemExit # interrupted by thread2.terminate()
except:
- import traceback
print "WARNING: something went wrong in requests.put"
- print traceback.format_exc()
+ logger.msg(traceback.format_exc())
status = "ERROR"
# Clean up when we exit
self.SvcStop()
RUNMUTEXNAME = 'thgtaskbar-' + GetUserName()
+def ehook(etype, values, tracebackobj):
+ elist = traceback.format_exception(etype, values, tracebackobj)
+ logger.msg(''.join(elist))
+
def main():
args = sys.argv[1:]
sa = win32security.SECURITY_ATTRIBUTES()
@@ -451,6 +472,20 @@ logfilename = arg
if logfilename:
logger.setfile(logfilename)
+ elif hasattr(sys, "frozen"):
+ try:
+ from win32com.shell import shell, shellcon
+ appdir = shell.SHGetSpecialFolderPath(0, shellcon.CSIDL_APPDATA)
+ except pywintypes.com_error:
+ appdir = os.environ['APPDATA']
+ logfilename = os.path.join(appdir, 'TortoiseHg', 'OverlayServerLog.txt')
+ try:
+ os.makedirs(os.path.dirname(logfilename))
+ except EnvironmentError:
+ pass
+ logger.setfile(logfilename)
+
+ sys.excepthook = ehook
w=MainWindow()
PumpMessages()
|
|
@@ -0,0 +1,73 @@ + #!/usr/bin/env python
+# ipythg.py - Run TortoiseHg Qt from IPython
+#
+# Copyright 2011 Yuya Nishihara <yuya@tcha.org>
+#
+# This software may be used and distributed according to the terms of the
+# GNU General Public License version 2, incorporated herein by reference.
+"""Interactive Python shell for TortoiseHg
+
+? -> Introduction and overview of IPython's features.
+%quickref -> Quick reference.
+help -> Python's own help system.
+object? -> Details about 'object'. ?object also works, ?? prints more.
+
+hg -> Run hg command in cmdui.Dialog. Usage: hg verify
+thg -> Run thg command. Usage: thg log -R mercurial
+
+dialogs -> List of currently-opened dialogs.
+repos -> Dict of repository objects.
+run -> Module to run TortoiseHg dialogs. Usage: run.log(ui)
+ui -> Mercurial's ui object.
+"""
+import os, sys, shlex
+from IPython import ipapi
+from IPython.Shell import IPShellQt4
+from PyQt4 import QtCore, QtGui
+
+sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__),
+ '..')))
+if 'HGPATH' in os.environ and os.path.isdir(os.environ['HGPATH']):
+ sys.path.insert(1, os.environ['HGPATH'])
+
+from mercurial import ui
+from tortoisehg.hgqt import cmdui, thgrepo, run
+
+def _runhgcommand(self, arg):
+ def newdlg(ui):
+ return cmdui.Dialog(shlex.split(arg))
+ run.qtrun(newdlg, self.user_ns['ui'])
+
+def _runthgcommand(self, arg):
+ run.runcommand(self.user_ns['ui'], shlex.split(arg))
+
+def _banner():
+ lines = __doc__.splitlines()
+ lines[2:2] = [run.shortlicense.strip(), '']
+ return '\n'.join(lines) + '\n'
+
+def _execipyshell(ui):
+ """Setup IPython shell and enter mainloop"""
+ ns = {}
+ for mod in (QtCore, QtGui):
+ ns.update((k, v) for k, v in vars(mod).iteritems()
+ if not k.startswith('_'))
+ ns.update({'dialogs': run.qtrun._dialogs, 'repos': thgrepo._repocache,
+ 'run': run, 'ui': ui})
+ shell = IPShellQt4(argv=[], user_ns=ns)
+ ip = ipapi.IPApi(shell.IP)
+ ip.expose_magic('hg', _runhgcommand)
+ ip.expose_magic('thg', _runthgcommand)
+ shell.mainloop(banner=_banner())
+
+def _hookqtrun(ui):
+ """Hook qtrun() at dlgfunc() to hijack exec_()"""
+ run.qtrun._mainapp.exec_ = lambda: _execipyshell(ui)
+
+def main():
+ os.environ['THGDEBUG'] = '1'
+ os.environ['THG_GUI_SPAWN'] = '1'
+ run.qtrun(_hookqtrun, ui.ui())
+
+if __name__ == '__main__':
+ main()
|
@@ -1,5 +1,5 @@ [merge-tools]
-; Windows version of BeyondCompare
+; Windows version of BeyondCompare 3
beyondcompare3.priority=-1
beyondcompare3.args=$local $other $base /mergeoutput=$output /ro /lefttitle=parent1 /centertitle=base /righttitle=parent2 /outputtitle=merged /automerge /reviewconflicts /solo
beyondcompare3.premerge=False
@@ -10,6 +10,15 @@beyondcompare3.diff3args=$parent1 $parent2 $child /lefttitle='$plabel1' /centertitle='$clabel' /righttitle='$plabel2' /solo /ro
beyondcompare3.dirdiff=True
+; Windows version of BeyondCompare 2 (2-way diff only)
+beyondcompare2.priority=-4
+beyondcompare2.args= /ro /title1="Original" /title2="Working copy" $local $other
+beyondcompare2.regkey=Software\Scooter Software\Beyond Compare
+beyondcompare2.regname=ExePath
+beyondcompare2.gui=True
+beyondcompare2.diffargs=/lro /title1='$plabel1' /title2='$clabel' $parent $child
+beyondcompare2.dirdiff=True
+
araxis.regkey=SOFTWARE\Classes\TypeLib\{46799e0a-7bd1-4330-911c-9660bb964ea2}\7.0\HELPDIR
araxis.regappend=\ConsoleCompare.exe
;araxis.executable=${ProgramFiles}/Araxis/Araxis Merge/ConsoleCompare.exe
@@ -38,13 +47,24 @@kdiff3.args=--auto --L1 base --L2 parent1 --L3 parent2 $base $local $other -o $output
kdiff3.regkey=Software\KDiff3
kdiff3.regappend=\kdiff3.exe
-kdiff3.fixeol=True
+kdiff3.fixeol=False
kdiff3.premerge=False
kdiff3.gui=True
kdiff3.diffargs=--L1 '$plabel1' --L2 '$clabel' $parent $child
kdiff3.diff3args=--L1 '$plabel1' --L2 '$clabel' --L3 '$plabel2' $parent1 $child $parent2
kdiff3.dirdiff=True
+thgKdiff3.regkey=Software\TortoiseHg
+thgKdiff3.regappend=\kdiff3.exe
+thgKdiff3.priority=-4
+thgKdiff3.args=--auto --L1 base --L2 parent1 --L3 parent2 $base $local $other -o $output
+thgKdiff3.fixeol=False
+thgKdiff3.premerge=False
+thgKdiff3.gui=True
+thgKdiff3.diffargs=--L1 '$plabel1' --L2 '$clabel' $parent $child
+thgKdiff3.diff3args=--L1 '$plabel1' --L2 '$clabel' --L3 '$plabel2' $parent1 $child $parent2
+thgKdiff3.dirdiff=True
+
diffmerge.regkey=Software\SourceGear\SourceGear DiffMerge\
diffmerge.regname=Location
diffmerge.priority=-7
|
@@ -12,6 +12,9 @@ import os
import sys
+thg_main = 'thg'
+idstr_prefix = 'HgNautilus2'
+
if gtk.gtk_version < (2, 14, 0):
# at least on 2.12.12, gtk widgets can be confused by control
# char markups (like ""), so use cgi.escape instead
@@ -65,7 +68,7 @@ self.inv_dirs = set()
from tortoisehg.util import menuthg
- self.hgtk = paths.find_in_path('hgtk')
+ self.hgtk = paths.find_in_path(thg_main)
self.menu = menuthg.menuThg()
self.notify = os.path.expanduser('~/.tortoisehg/notify')
try:
@@ -171,7 +174,7 @@ else: #bg
passcwd = self.cwd
for menu_info in menus:
- idstr = 'HgNautilus::%02d%s' % (self.pos, menu_info.hgcmd)
+ idstr = '%s::%02d%s' % (idstr_prefix ,self.pos, menu_info.hgcmd)
self.pos += 1
if menu_info.isSep():
# can not insert a separator till now
@@ -212,7 +215,7 @@ return self.buildMenu(vfs_files, False)
def get_columns(self):
- return nautilus.Column("HgNautilus::80hg_status",
+ return nautilus.Column(idstr_prefix + "::80hg_status",
"hg_status",
"Hg Status",
"Version control status"),
|
|
|
@@ -0,0 +1,200 @@ + #!/usr/bin/env python
+# plot-annotate-colors.py - Display how annotation colors are assigned
+#
+# Copyright 2010 Yuya Nishihara <yuya@tcha.org>
+#
+# This software may be used and distributed according to the terms of the
+# GNU General Public License version 2, incorporated herein by reference.
+import os, sys, math
+
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..'))
+
+from mercurial import hg, ui, cmdutil, util
+from tortoisehg.util import colormap, hglib
+
+from PyQt4.QtCore import *
+from PyQt4.QtGui import *
+
+SECS_PER_DAY = 24 * 60 * 60
+
+class ColorPlot(QWidget):
+ """Display annotation colors as x-y graph
+
+ ::
+ +-------------------------------------------------> age
+ |
+ | o ... filled by its color
+ |
+ | O ... size of circle describes number of lines
+ |
+ | *
+ | ... missing ctx is
+ | filled by yellow
+ | (error marker)
+ v
+ committer
+ """
+
+ def __init__(self, parent=None):
+ super(ColorPlot, self).__init__(parent)
+ self.setSizePolicy(QSizePolicy(QSizePolicy.Expanding,
+ QSizePolicy.Expanding))
+ pal = QPalette()
+ pal.setColor(self.backgroundRole(), QColor('black'))
+ self.setPalette(pal)
+ self.setAutoFillBackground(True)
+
+ self._updatetimer = QTimer(self, singleShot=True)
+ self._updatetimer.timeout.connect(self.update)
+
+ self._maxhues = None
+ self._maxsaturations = None
+ self._mindate = None
+ self._maxcolors = 0
+
+ self._latestdate = None
+ self._fctxs = None
+
+ def paintEvent(self, event):
+ if self._fctxs is None:
+ return
+
+ mindate = None
+ if self._mindate:
+ mindate = self._latestdate - self._mindate * SECS_PER_DAY
+ palette, cm = colormap._makeannotatepalette(
+ list(sorted(set(self._fctxs), key=lambda fctx: -fctx.date()[0])),
+ now=self._latestdate, maxcolors=self._maxcolors,
+ maxhues=self._maxhues, maxsaturations=self._maxsaturations,
+ mindate=mindate)
+
+ weights = {}
+ for fctx in self._fctxs:
+ try:
+ weights[fctx] += 1
+ except KeyError:
+ weights[fctx] = 1
+
+ p = QPainter(self)
+ p.setRenderHint(QPainter.Antialiasing)
+ for fctx, w in weights.iteritems():
+ i = abs(hash(fctx.user()))
+ j = self._latestdate - fctx.date()[0]
+ c = cm.get_color(fctx, self._latestdate)
+ if c not in palette:
+ b = QBrush(QColor('yellow'), Qt.Dense4Pattern) # error marker
+ else:
+ b = QBrush(QColor(c))
+ p.setPen(QPen(b, math.sqrt(w) * 2, Qt.SolidLine, Qt.RoundCap))
+ p.drawPoint(j / SECS_PER_DAY + 2,
+ i / (sys.maxint / (self.height() - 4)) + 2)
+
+ p.setPen(QColor('yellow'))
+ p.setFont(QFont('monospace', 8))
+ p.drawText(2, self.height() - 8,
+ 'maxsaturations: %d' % cm._maxsaturations)
+
+ def sizeHint(self):
+ return QSize(365, 200)
+
+ @pyqtSlot(int)
+ def setMaxHues(self, value):
+ self._maxhues = value or None
+ self._updatetimer.start(100)
+
+ @pyqtSlot(int)
+ def setMaxSaturations(self, value):
+ self._maxsaturations = value or None
+ self._updatetimer.start(100)
+
+ @pyqtSlot(int)
+ def setMinDate(self, value):
+ self._mindate = value or None
+ self._updatetimer.start(100)
+
+ @pyqtSlot(int)
+ def setMaxColors(self, value):
+ self._maxcolors = value
+ self._updatetimer.start(100)
+
+ def plot(self, repo, canonpath, rev='.'):
+ latestfctx = repo[rev][canonpath]
+ self._fctxs = [fctx for fctx, line in latestfctx.annotate(follow=True)]
+ self._latestdate = latestfctx.date()[0]
+ self._updatetimer.start(100)
+
+class ColorPlotter(QWidget):
+ def __init__(self, parent=None):
+ super(ColorPlotter, self).__init__(parent)
+ self.setLayout(QVBoxLayout(self))
+ self._plot = ColorPlot(self)
+ self.layout().addWidget(self._plot)
+
+ form = QFormLayout()
+ self.layout().addLayout(form)
+
+ self._maxhues_edit = QSpinBox(self, minimum=0, maximum=360,
+ specialValueText='inf')
+ self._maxhues_edit.valueChanged.connect(self._plot.setMaxHues)
+ self._maxhues_edit.setValue(8)
+ form.addRow('Max Hues (committers):', self._maxhues_edit)
+
+ self._maxsats_edit = QSpinBox(self, minimum=0, maximum=255,
+ specialValueText='inf')
+ self._maxsats_edit.valueChanged.connect(self._plot.setMaxSaturations)
+ self._maxsats_edit.setValue(16)
+ form.addRow('Max Saturations (ages):', self._maxsats_edit)
+
+ self._mindate_edit = QSpinBox(self, minimum=0, maximum=720,
+ specialValueText='n/a')
+ self._mindate_edit.valueChanged.connect(self._plot.setMinDate)
+ self._mindate_edit.setValue(365)
+ form.addRow('Minimal revision age to include', self._mindate_edit)
+
+ self._maxcols_edit = QSpinBox(self, minimum=0, maximum=255)
+ self._maxcols_edit.valueChanged.connect(self._plot.setMaxColors)
+ self._maxcols_edit.setValue(32)
+ form.addRow('Max Colors (palette size):', self._maxcols_edit)
+
+ @pyqtSlot(unicode)
+ def setPath(self, path):
+ spath = hglib.fromunicode(path)
+ reporoot = cmdutil.findrepo(os.path.abspath(spath))
+ if not reporoot:
+ QMessageBox.warning(self, 'Repository Not Found',
+ 'Repository not found for path: %s' % path)
+ repo = hg.repository(ui.ui(), reporoot)
+ canonpath = util.canonpath(repo.root, os.getcwd(), spath)
+ self._plot.plot(repo, canonpath)
+
+class ColorPlotterWindow(QMainWindow):
+ def __init__(self, parent=None):
+ super(ColorPlotterWindow, self).__init__(parent)
+ self._plotter = ColorPlotter(self)
+ self.setCentralWidget(self._plotter)
+
+ self.setMenuBar(QMenuBar())
+ filemenu = self.menuBar().addMenu('&File')
+ filemenu.addAction('&Open', self._openFile, QKeySequence.Open)
+
+ @pyqtSlot()
+ def _openFile(self):
+ path = QFileDialog.getOpenFileName(self, 'File to Annotate')
+ if path:
+ self.setPath(path)
+
+ @pyqtSlot(unicode)
+ def setPath(self, path):
+ self.setWindowFilePath(path)
+ self._plotter.setPath(path)
+
+def main(args=sys.argv):
+ app = QApplication(args)
+ w = ColorPlotterWindow()
+ w.show()
+ if len(args) > 1:
+ QTimer.singleShot(100, lambda: w.setPath(args[1]))
+ return app.exec_()
+
+if __name__ == '__main__':
+ sys.exit(main())
|
|
@@ -0,0 +1,8 @@ + [Desktop Entry]
+Type=Application
+Name=TortoiseHg
+GenericName=Version Control GUI
+Comment=GUI application for using Mercurial
+Icon=tortoisehg_logo
+Exec=thg --nofork
+Categories=Development;RevisionControl;
|
@@ -5,7 +5,7 @@ Name: tortoisehg
Version: hg
Release: hg
-Summary: Mercurial GUI command line tool hgtk
+Summary: Mercurial GUI command line tool thg
Group: Development/Tools
License: GPLv2
# Few files are under the more permissive GPLv2+
@@ -16,11 +16,14 @@# subpackage has to be arch-specific (because of lib64)
# BuildArch: noarch
BuildRequires: python, python-devel, gettext, python-sphinx
-Requires: python >= 2.4, python-iniparse, mercurial >= 1.3, gnome-python2-gconf
-Requires: gnome-python2-gtksourceview, pycairo, pygobject2, pygtk2 >= 2.10
+BuildRequires: PyQt4-devel
+Requires: python >= 2.4, python-iniparse, mercurial >= 1.6
+# gconf needs at util/shlib.py for browse_url(url).
+Requires: gnome-python2-gconf
+Requires: PyQt4 >= 4.6, qscintilla-python
%description
-This package contains the hgtk command line tool which provides a
+This package contains the thg command line tool which provides a
graphical user interface to the Mercurial distributed revision control system.
%package nautilus
@@ -63,6 +66,9 @@mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/mercurial/hgrc.d
install contrib/mergetools.rc $RPM_BUILD_ROOT%{_sysconfdir}/mercurial/hgrc.d/thgmergetools.rc
+ln -s tortoisehg/icons/svg/thg_logo.svg %{buildroot}%{_datadir}/pixmaps/%{name}_logo.svg
+desktop-file-install --dir=%{buildroot}%{_datadir}/applications contrib/%{name}.desktop
+
%find_lang %{name}
%clean
@@ -72,10 +78,12 @@
%defattr(-,root,root,-)
%doc COPYING.txt doc/build/html/
-%{_bindir}/hgtk
+%{_bindir}/thg
%{python_sitelib}/tortoisehg/
%{python_sitelib}/tortoisehg-*.egg-info
%{_datadir}/pixmaps/tortoisehg/
+%{_datadir}/pixmaps/%{name}_logo.svg
+%{_datadir}/applications/%{name}.desktop
# /usr/share/zsh/site-functions/ is owned by zsh package which we don't want to
# require. We also don't want to create a sub-package just for this dependency.
|
|
@@ -1,35 +0,0 @@ - """
-config.py
- Copyright (C) 2009 Steve Borho <steve@borho.org>
-
-This software may be used and distributed according to the terms
-of the GNU General Public License, incorporated herein by reference.
-"""
-
-# This version of config.py is used in the binary installer
-# distributions of TortoiseHg on Windows. Since we no longer need to
-# worry about Python shell extensions, we can use the path of the
-# current executable to find our package data.
-
-import os
-import sys
-import win32api, win32process
-
-proc = win32api.GetCurrentProcess()
-try:
- # This will fail on windows < NT
- procpath = win32process.GetModuleFileNameEx(proc, 0)
-except:
- procpath = win32api.GetModuleFileName(0)
-
-bin_path = os.path.dirname(procpath)
-license_path = os.path.join(bin_path, 'COPYING.txt')
-locale_path = os.path.join(bin_path, 'locale')
-icon_path = os.path.join(bin_path, 'icons')
-
-enc = sys.getfilesystemencoding()
-if enc:
- bin_path = bin_path.encode(enc)
- license_path = license_path.encode(enc)
- locale_path = locale_path.encode(enc)
- icon_path = icon_path.encode(enc)
|
|
@@ -1,1 +0,0 @@ - 275690997c5f2ace0476775b3b59fe50b639d3de 0.9.2-1
|
|
|
@@ -1,120 +0,0 @@ - ; System-wide Mercurial config file.
-;
-; See http://www.selenic.com/mercurial/hgrc.5.html or the file
-; 'hgrc.5.html' in the 'docs' subdirectory for help about the syntax
-; and semantics of mercurial.ini files.
-;
-; !!! Do Not Edit This File !!!
-;
-; This file will be replaced by the installer on every upgrade.
-; Editing this file can cause strange side effects on Vista.
-;
-; http://bitbucket.org/tortoisehg/stable/issue/135
-;
-; To change settings you see in this file, override (or enable) them in
-; your user Mercurial.ini file, where USERNAME is your Windows user name:
-;
-; XP or older - C:\Documents and Settings\USERNAME\Mercurial.ini
-; Vista or later - C:\Users\USERNAME\Mercurial.ini
-
-[ui]
-; editor used to enter commit logs, etc. Most any text editor
-; will suffice.
-editor = notepad
-
-; In order to push/pull over ssh you must specify a ssh tool
-ssh = "TortoisePlink.exe" -ssh -2
-;ssh = C:\cygwin\bin\ssh
-
-;
-; For more information about mercurial extensions, start here
-; http://www.selenic.com/mercurial/wiki/index.cgi/UsingExtensions
-;
-
-[extensions]
-; extensions shipped with Mercurial by default
-;
-;acl =
-;bookmarks =
-;bugzilla =
-;children =
-;churn =
-; Warning: the color extension is not recommended for Windows
-;color =
-;convert =
-;extdiff =
-;fetch =
-;gpg =
-;graphlog =
-;hgcia =
-;hgk =
-;highlight =
-;interhg =
-;keyword =
-;mq =
-;notify =
-;pager =
-;parentrevspec =
-;patchbomb =
-;progress =
-;purge =
-;rebase =
-;record =
-;schemes =
-;transplant =
-;win32mbcs =
-;win32text =
-;zeroconf =
-; Extra extensions bundled with TortoiseHg
-;fold =
-;hgcr-gui =
-;perfarce =
-;hgeol =
-;mercurial_keyring =
-
-; fixfrozenexts is enabled by default. It allows extension help
-; to work "out of the box" from binary installers.
-fixfrozenexts =
-
-;
-; Define external diff commands, for hg command line use only
-;
-[extdiff]
-;kdiff3 =
-
-; The git extended diff format will properly store binary files,
-; file permission changes, and rename information that the normal
-; patch format cannot cover. However it is also not 100% compatible
-; with tools which expect normal patches. so enable these at your
-; own risk.
-;
-[diff]
-;git = false
-;nodates = false
-
-;
-; Keyword extension example configuration. To use, one must
-; enable the keyword extension, then uncomment and modify these
-; two sections. Before using the keyword extension, be sure to
-; thoroughly read it's documentation and understand how it works,
-; and why it is not a core feature of Mercurial.
-;
-; http://www.selenic.com/mercurial/wiki/index.cgi/KeywordExtension
-; http://www.selenic.com/mercurial/wiki/index.cgi/KeywordPlan
-;
-; If you encounter strange problems using Mercurial, a good first
-; debugging step would be to disable this extension.
-;
-[keyword]
-; expand keywords in all python files in working dir
-;**.py =
-
-[keywordmaps]
-; See documentation for examples
-
-; The schemes extension must be enabled to use one of these shortcuts.
-; See http://mercurial.selenic.com/wiki/SchemesExtension
-[schemes]
-;bb = http://bitbucket.org/
-;bb+ssh = ssh://hg@bitbucket.org/
-;py = http://code.python.org/hg/
|
|
@@ -1,24 +0,0 @@ - [merge-patterns]
-**.doc = docdiff
-**.docx = docdiff
-**.docm = docdiff
-**.ods = docdiff
-**.odt = docdiff
-**.sxw = docdiff
-
-[diff-patterns]
-**.doc = docdiff
-**.docx = docdiff
-**.docm = docdiff
-**.ppt = docdiff
-**.pptx = docdiff
-**.pptm = docdiff
-**.xls = docdiff
-**.xlsx = docdiff
-**.xlsm = docdiff
-**.xlsb = docdiff
-**.xlam = docdiff
-**.ods = docdiff
-**.odt = docdiff
-**.sxw = docdiff
-**.nb = docdiff
|
|
@@ -1,6 +0,0 @@ - [py2exe]
-excludes=pywin, pywin.dialogs, pywin.dialogs.list, pyreadline
-includes=cairo, pango, pangocairo, atk, gobject, dbhash, gtk.keysyms, gio
-packages=ctypes, email, hgext, hgext.convert, encodings, tortoisehg.hgtk, tortoisehg.hgtk.logview, tortoisehg.util, iniparse, pygments, dulwich, nntplib
-
-dll_excludes=iconv.dll, intl.dll, libatk-1.0-0.dll, libgdk_pixbuf-2.0-0.dll, libgdk-win32-2.0-0.dll, libglib-2.0-0.dll, libgmodule-2.0-0.dll, libgobject-2.0-0.dll, libgthread-2.0-0.dll, libgtk-win32-2.0-0.dll, libpango-1.0-0.dll, libpangowin32-1.0-0.dll, libcairo-2.dll, libglade-2.0-0.dll, libpangocairo-1.0-0.dll, libpangoft2-1.0-0.dll, libgio-2.0-0.dll, mswsock.dll, powrprof.dll, shfolder.dll, credui.dll, msvcp60.dll, secur32.dll
|
|
|
|
@@ -1,8 +0,0 @@ - <Include>
- <?define TOverlaysVersion = 1.1.2.19334 ?>
- <?define TOverlaysSrcDir = ..\contrib\TortoiseOverlays ?>
- <?define TOverlaysSrcFilenameX86 = TortoiseOverlays-$(var.TOverlaysVersion)-win32.msm ?>
- <?define TOverlaysSrcFilenameX64 = TortoiseOverlays-$(var.TOverlaysVersion)-x64.msm ?>
-
- <?define TOverlaysRegistryKey = Software\TortoiseOverlays ?>
-</Include>
|
|
|
|
@@ -1,24 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <?define thgcmenulangs =
- cs;da;de;en_GB;en_US;es;fa;fr;he;hr;it;ja;ko;nl;nn;pl;pt;pt_BR;ru;tr;uk;zh_CN;zh_TW
- ?>
- <!-- lang 'ca' is used for key path -->
-
- <Fragment>
- <DirectoryRef Id="i18ndir">
- <Directory Id="cmenuI18n" Name="cmenu" FileSource="$(var.SourceDir)">
- <Component Id="cmenuI18n" Guid="$(var.cmenuI18n.guid)">
- <File Name="thg-cmenu-ca.reg" KeyPath="yes"/>
- <?foreach LANG in $(var.thgcmenulangs) ?>
- <File Name="thg-cmenu-$(var.LANG).reg" />
- <?endforeach?>
- </Component>
- </Directory>
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,43 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <Fragment>
- <ComponentGroup Id="contribFolder">
- <ComponentRef Id="contrib" />
- <ComponentRef Id="contrib.vim" />
- </ComponentGroup>
- </Fragment>
-
- <Fragment>
- <DirectoryRef Id="INSTALLDIR">
- <Directory Id="contribdir" Name="contrib" FileSource="$(var.SourceDir)">
- <Component Id="contrib" Guid="$(var.contrib.guid)">
- <File Name="bash_completion" KeyPath="yes" />
- <File Name="hgk" />
- <File Name="hgweb.fcgi" />
- <File Name="hgweb.wsgi" />
- <File Name="logo-droplets.svg" />
- <File Name="mercurial.el" />
- <File Name="sample.hgrc" />
- <File Name="tcsh_completion" />
- <File Name="tcsh_completion_build.sh" />
- <File Name="xml.rnc" />
- <File Name="zsh_completion" />
- </Component>
- <Directory Id="vimdir" Name="vim">
- <Component Id="contrib.vim" Guid="$(var.contrib.vim.guid)">
- <File Name="hg-menu.vim" KeyPath="yes" />
- <File Name="HGAnnotate.vim" />
- <File Name="hgcommand.vim" />
- <File Name="patchreview.txt" />
- <File Name="patchreview.vim" />
- <File Name="hgtest.vim" />
- </Component>
- </Directory>
- </Directory>
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,49 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <Fragment>
- <ComponentGroup Id="docFolder">
- <ComponentRef Id="doc.hg.1.html" />
- <ComponentRef Id="doc.hgignore.5.html" />
- <ComponentRef Id="doc.hgrc.5.html" />
- <ComponentRef Id="doc.style.css" />
- </ComponentGroup>
- </Fragment>
-
- <Fragment>
- <DirectoryRef Id="INSTALLDIR">
- <Directory Id="docdir" Name="doc" FileSource="$(var.SourceDir)">
- <Component Id="doc.hg.1.html" Guid="$(var.doc.hg.1.html.guid)">
- <File Name="hg.1.html" KeyPath="yes">
- <Shortcut Id="hg1StartMenu" Directory="ProgramMenuDir"
- Name="Mercurial Command Reference"
- Icon="hgIcon.ico" IconIndex="0" Advertise="yes"
- />
- </File>
- </Component>
- <Component Id="doc.hgignore.5.html" Guid="$(var.doc.hgignore.5.html.guid)">
- <File Name="hgignore.5.html" KeyPath="yes">
- <Shortcut Id="hgignore5StartMenu" Directory="ProgramMenuDir"
- Name="Mercurial Ignore Files"
- Icon="hgIcon.ico" IconIndex="0" Advertise="yes"
- />
- </File>
- </Component>
- <Component Id="doc.hgrc.5.html" Guid="$(var.doc.hgrc.5.html)">
- <File Name="hgrc.5.html" KeyPath="yes">
- <Shortcut Id="hgrc5StartMenu" Directory="ProgramMenuDir"
- Name="Mercurial Configuration Files"
- Icon="hgIcon.ico" IconIndex="0" Advertise="yes"
- />
- </File>
- </Component>
- <Component Id="doc.style.css" Guid="$(var.doc.style.css)">
- <File Name="style.css" KeyPath="yes" />
- </Component>
- </Directory>
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,81 +0,0 @@ - <Include>
- <!-- These are component GUIDs used for TortoiseHg installers.
- YOU MUST CHANGE ALL GUIDs below when copying this file
- and replace 'TortoiseHg' in this notice with the name of
- your project. Component GUIDs have global namespace! -->
-
- <!-- contrib.wxs -->
- <?define contrib.guid = {D3BC122A-163C-4ef9-91C2-62E04B128A16} ?>
- <?define contrib.vim.guid = {503B4329-50F4-48BE-A8D2-8E5EB531927E} ?>
-
- <!-- doc.wxs -->
- <?define doc.hg.1.html.guid = {6289D803-14D9-4AF8-AE67-4DB12D1EA5A6} ?>
- <?define doc.hgignore.5.html.guid = {4E80FFF0-C28A-460F-ABC4-85BC25422B80} ?>
- <?define doc.hgrc.5.html = {F392839B-CEB6-462E-8F23-A85D48F99BD3} ?>
- <?define doc.style.css = {5C276050-DDDD-49FB-86ED-C636FD629242} ?>
-
- <!-- help.wxs -->
- <?define helpFolder.guid = {B43FC643-9B06-4FF5-AFD4-9EEB13B5F83A} ?>
-
- <!-- i18n.wxs -->
- <?define i18nFolder.guid = {3115A038-CA56-4413-97C1-6F0070D6034C} ?>
-
- <!-- templates.wxs -->
- <?define templates.root.guid = {C609F85B-91CD-463f-8C07-57931D53B99F} ?>
- <?define templates.atom.guid = {0155E267-F0D5-4115-A7D4-F217599B06C7} ?>
- <?define templates.coal.guid = {310F768C-0817-4a07-907C-89AB8FDAE9DE} ?>
- <?define templates.gitweb.guid = {5651A560-B483-4A0B-9525-BE0814B1088E} ?>
- <?define templates.monoblue.guid = {00FFEE20-2950-4C46-8E5A-DC700DCFC921} ?>
- <?define templates.paper.guid = {F81420D7-C77F-4624-B649-CD341665BC04} ?>
- <?define templates.raw.guid = {F71E0FEB-32F9-4b18-91A5-A59722C682DC} ?>
- <?define templates.rss.guid = {23DA0B15-6463-400b-95E0-CD5FAD6B75B5} ?>
- <?define templates.spartan.guid = {0686468F-D950-422f-A904-1B09FFD3C852} ?>
- <?define templates.static.guid = {9AC0E261-7563-4147-9974-12022C1CBD4E} ?>
-
- <!-- cmenu-i18n.wxs -->
- <?define cmenuI18n.guid = {B0AB4947-248C-4c6b-841C-49284EF99022} ?>
-
- <!-- icons.wxs -->
- <?define Icons.guid = {30E997E7-FB02-4d34-AF61-A6FD6C93E268} ?>
- <?define SvgIcons.guid = {7C87CCC7-8377-49c8-ACFD-1F246ED14747} ?>
-
- <!-- thg-i18n.wxs -->
- <?define thgI18nFolder.guid = {69E6E182-BCD2-4b03-A941-7B9A054DF7AF} ?>
-
- <!-- tortoisehg.wxs -->
- <?define ProductUpgradeCode = {838657CF-C9EC-452D-800D-0E70FC021D0A} ?>
-
- <?define ComponentMainExecutableGUID = {5A98EB92-2C82-406E-81A5-1161CA87ED8E} ?>
-
- <?define thgshellx86dll.guid = {1126CF42-3994-428B-A746-464E1BC680F3} ?>
- <?define thgshellx64dll.guid = {59FD2A49-BA62-40CC-B155-D11DB11EE611} ?>
-
- <?define CmenuShellRegistrationX86.guid = {287A355F-3DF6-4f55-9DD5-FABD09498B0C} ?>
- <?define CmenuShellRegistrationX64.guid = {46DF4532-7BFF-427a-BC59-F3B4D1022F56} ?>
-
- <?define OverlaysShellRegistrationX86.guid = {5592F837-8C78-43f0-AD8D-2E2EA4B17E45} ?>
- <?define OverlaysShellRegistrationX64.guid = {9B1300FC-3D05-4c82-991D-96277404C4BA} ?>
- <?define OverlayServerEXE.guid = {DC5D9CC4-8330-4146-99EC-30D3AA255DD4} ?>
-
- <?define ExtensionVersions.guid = {1996AB0D-634D-4DC8-9581-326151F38B11} ?>
- <?define COPYING.guid = {382A8405-CB7B-42E8-8B9D-88B5C5283E73} ?>
-
- <?define docdiffEXE.guid = {4BA6389A-6A0B-483B-A3FE-86EE436FDD31} ?>
- <?define KDiff3EXE.guid = {B2A5EFD4-A385-45E0-8467-46B955979672} ?>
- <?define TortoisePlinkEXE.guid = {A18BFE4D-BED0-4EF9-97CC-5B4326E3CD2F} ?>
- <?define PageantEXE.guid = {EA7EF381-076C-47CE-8F51-355DB7F86D1A} ?>
-
- <?define chmFile.guid = {A26038DC-C686-4296-9335-FA4B9ABC769C} ?>
- <?define pdfFile.guid = {1C5792DA-C48F-4F7F-9CD8-FC467995B8E4} ?>
- <?define hgbook.guid = {A5F6D094-BCFD-4AC0-8675-7DF8CC94FEE5} ?>
-
- <?define mercurial.rc.guid = {28ACE5D7-FFCE-488E-A94A-8F13A21DD25D} ?>
- <?define mergetools.rc.guid = {30CC047C-48B4-4D91-B8EC-79975327A9C7} ?>
- <?define mergepatterns.rc.guid = {05860DA7-8391-43A4-A4E7-6E9E084D11C6} ?>
- <?define paths.rc.guid = {3872C21C-3DB7-4A63-B088-785CBDBA47BD} ?>
- <?define cacert.pem.guid = {6E5ED0E2-DD8C-4CD7-B065-A686357D0330} ?>
-
- <?define ProgramMenuDir.guid = {D5A63320-1238-489B-B68B-CF053E9577CA} ?>
- <?define ThgAppData.guid = {94B8FBB5-4AE3-4960-B3D8-94BEFC6366E9} ?>
-
-</Include>
|
|
@@ -1,30 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <Fragment>
- <DirectoryRef Id="INSTALLDIR">
- <Directory Id="helpdir" Name="help" FileSource="$(var.SourceDir)">
- <Component Id="helpFolder" Guid="$(var.helpFolder.guid)">
- <File Name="config.txt" KeyPath="yes" />
- <File Name="dates.txt" />
- <File Name="diffs.txt" />
- <File Name="environment.txt" />
- <File Name="extensions.txt" />
- <File Name="glossary.txt" />
- <File Name="hgweb.txt" />
- <File Name="merge-tools.txt" />
- <File Name="multirevs.txt" />
- <File Name="patterns.txt" />
- <File Name="revisions.txt" />
- <File Name="revsets.txt" />
- <File Name="subrepos.txt" />
- <File Name="templates.txt" />
- <File Name="urls.txt" />
- </Component>
- </Directory>
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,25 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <?define hg_po_langs =
- da;de;el;fr;it;ja;pt_BR;sv;zh_CN;zh_TW
- ?>
-
- <Fragment>
- <DirectoryRef Id="INSTALLDIR">
- <Directory Id="i18ndir" Name="i18n" FileSource="$(var.SourceDir)">
- <Component Id="i18nFolder" Guid="$(var.i18nFolder.guid)">
- <File Name="hggettext" KeyPath="yes" />
- <?foreach LANG in $(var.hg_po_langs) ?>
- <File Id="hg.$(var.LANG).po"
- Name="$(var.LANG).po"
- />
- <?endforeach?>
- </Component>
- </Directory>
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,86 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <Fragment>
- <DirectoryRef Id="INSTALLDIR">
-
- <Directory Id="IconsDirectory" Name="icons" FileSource="$(var.SourceDir)">
-
- <Component Id='Icons' Guid='$(var.Icons.guid)'>
- <File Name="branch.ico" KeyPath="yes" />
- <File Name="detect_rename.ico" />
- <File Name="fileadd.ico" />
- <File Name="filedelete.ico" />
- <File Name="filemodify.ico" />
- <File Name="general.ico" />
- <File Name="hg.ico" />
- <File Name="hg_60.ico" />
- <File Name="hgB.ico" />
- <File Name="ignore.ico" />
- <File Name="menuabout.ico" />
- <File Name="menuadd.ico" />
- <File Name="menublame.ico" />
- <File Name="menucheckout.ico" />
- <File Name="menuclone.ico" />
- <File Name="menucommit.ico" />
- <File Name="menucreaterepos.ico" />
- <File Name="menudelete.ico" />
- <File Name="menudiff.ico" />
- <File Name="menuhelp.ico" />
- <File Name="menuimport.ico" />
- <File Name="menulog.ico" />
- <File Name="menumerge.ico" />
- <File Name="menupatch.ico" />
- <File Name="menurelocate.ico" />
- <File Name="menurepobrowse.ico" />
- <File Name="menurevert.ico" />
- <File Name="menurevisiongraph.ico" />
- <File Name="menusettings.ico" />
- <File Name="menushowchanged.ico" />
- <File Name="menusynch.ico" />
- <File Name="menuunmerge.ico" />
- <File Name="proxy.ico" />
- <File Name="python.ico" />
- <File Name="README.txt" />
- <File Name="refresh_overlays.ico" />
- <File Name="settings_repo.ico" />
- <File Name="settings_user.ico" />
- <File Name="shelve.ico" />
- <File Name="thg_logo.ico" />
- <File Name="thg_logo_92x50.png" />
- <File Name="TortoiseMerge.ico" />
- </Component>
-
- <Directory Id="SvgDirectory" Name="svg">
- <Component Id='SvgIcons' Guid='$(var.SvgIcons.guid)'>
- <File Name="add.svg" KeyPath="yes" />
- <File Name="checkout.svg" />
- <File Name="clone.svg" />
- <File Name="commit.svg" />
- <File Name="detect_rename.svg" />
- <File Name="ignore.svg" />
- <File Name="init.svg" />
- <File Name="log.svg" />
- <File Name="merge.svg" />
- <File Name="proxy.svg" />
- <File Name="recovery.svg" />
- <File Name="refresh_overlays.svg" />
- <File Name="remove.svg" />
- <File Name="repobrowse.svg" />
- <File Name="revert.svg" />
- <File Name="shelve.svg" />
- <File Name="status.svg" />
- <File Name="sync.svg" />
- <File Name="thg_logo.svg" />
- </Component>
-
- </Directory>
-
- </Directory>
-
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,32 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?define hglocales =
- da;de;el;fr;it;ja;pt_BR;sv;zh_CN;zh_TW
- ?>
-
- <Fragment>
- <ComponentGroup Id="localeFolder">
- <?foreach LOC in $(var.hglocales) ?>
- <ComponentRef Id="hg.locale.$(var.LOC)"/>
- <?endforeach?>
- </ComponentGroup>
- </Fragment>
-
- <Fragment>
- <DirectoryRef Id="INSTALLDIR">
- <Directory Id="localedir" Name="locale" FileSource="$(var.SourceDir)">
- <?foreach LOC in $(var.hglocales) ?>
- <Directory Id="hg.locale.$(var.LOC)" Name="$(var.LOC)">
- <Directory Id="hg.locale.$(var.LOC).LC_MESSAGES" Name="LC_MESSAGES">
- <Component Id="hg.locale.$(var.LOC)" Guid="*">
- <File Id="hg.mo.$(var.LOC)" Name="hg.mo" KeyPath="yes" />
- </Component>
- </Directory>
- </Directory>
- <?endforeach?>
- </Directory>
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,26 +0,0 @@ - :: %1 - TortoiseHg Version first level
-:: %2 - second level
-:: %3 - third level
-:: %4 - platform (x86 or x64)
-:: %5 - msi product id (GUID)
-
-set _SDKBIN_=%PROGRAMFILES%\Microsoft SDKs\Windows\v7.0\Bin
-if exist "%_SDKBIN_%" goto :ok
-set _SDKBIN_=%ProgramW6432%\Microsoft SDKs\Windows\v7.0\Bin
-if exist "%_SDKBIN_%" goto :ok
-echo Microsoft Windows SDK 7 SP1 not installed
-pause
-exit 1
-:ok
-
-cd win32\shellext
-
-call "%_SDKBIN_%\SetEnv.cmd" /xp /%4 /release
-set DEBUG=1
-set THG_PLATFORM=%4
-set THG_EXTRA_CPPFLAGS=/DTHG_PRODUCT_ID=%5
-set THG_EXTRA_RCFLAGS=/dTHG_VERSION_FIRST=%1 /dTHG_VERSION_SECOND=%2 /dTHG_VERSION_THIRD=%3 /dTHG_PRODUCT_ID="%5"
-nmake /f Makefile.nmake clean
-nmake /f Makefile.nmake
-move ThgShell%4.dll ..
-move terminate-%4.exe ..
|
|
@@ -1,56 +0,0 @@ - <Include>
- <!-- cmenu COM component -->
- <RegistryValue
- Root='HKCR' Key='CLSID\$(var.CLSID_TortoiseHgCmenu)'
- Type='string' Value='TortoiseHg'
- />
- <RegistryValue
- Root='HKCR' Key='CLSID\$(var.CLSID_TortoiseHgCmenu)\InProcServer32'
- Type='string' Name='ThreadingModel' Value='Apartment'
- />
-
- <!-- cmenu registration -->
- <RegistryValue
- Root='HKCR' Key='Directory\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='Directory\Background\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='Drive\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='Folder\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='InternetShortcut\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='LibraryLocation\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='LibraryFolder\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='LibraryFolder\Background\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
- <RegistryValue
- Root='HKCR' Key='*\shellex\ContextMenuHandlers\TortoiseHgCMenu'
- Type='string' Value='$(var.CLSID_TortoiseHgCmenu)'
- />
-
- <!-- Mark all as approved -->
- <RegistryValue
- Root='HKLM' Key='Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved'
- Type='string' Name='$(var.CLSID_TortoiseHgCmenu)' Value='TortoiseHg'
- />
-
-</Include>
|
|
@@ -1,40 +0,0 @@ - <Include>
- <!-- overlay components -->
- <?foreach CLSID in $(var.OverlayCLSIDList) ?>
- <RegistryValue
- Root='HKCR' Key='CLSID\$(var.CLSID)'
- Type='string' Value='TortoiseHg'
- />
- <RegistryValue
- Root='HKCR' Key='CLSID\$(var.CLSID)\InProcServer32'
- Type='string' Name='ThreadingModel' Value='Apartment'
- />
- <?endforeach?>
-
- <!-- register overlay components with TortoiseOverlays -->
- <RegistryValue
- Root='HKLM' Key='$(var.TOverlaysRegistryKey)\Normal'
- Type='string' Name='TortoiseHgMsi' Value='$(var.CLSID_TortoiseHgNormal)'
- />
- <RegistryValue
- Root='HKLM' Key='$(var.TOverlaysRegistryKey)\Added'
- Type='string' Name='TortoiseHgMsi' Value='$(var.CLSID_TortoiseHgAdded)'
- />
- <RegistryValue
- Root='HKLM' Key='$(var.TOverlaysRegistryKey)\Modified'
- Type='string' Name='TortoiseHgMsi' Value='$(var.CLSID_TortoiseHgModified)'
- />
- <RegistryValue
- Root='HKLM' Key='$(var.TOverlaysRegistryKey)\Unversioned'
- Type='string' Name='TortoiseHgMsi' Value='$(var.CLSID_TortoiseHgUnversioned)'
- />
-
- <!-- Mark all as approved -->
- <?foreach CLSID in $(var.OverlayCLSIDList) ?>
- <RegistryValue
- Root='HKLM' Key='Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved'
- Type='string' Name='$(var.CLSID)' Value='TortoiseHg'
- />
- <?endforeach?>
-
-</Include>
|
|
|
@@ -1,212 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <Fragment>
- <ComponentGroup Id="templatesFolder">
-
- <ComponentRef Id="templates.root" />
-
- <ComponentRef Id="templates.atom" />
- <ComponentRef Id="templates.coal" />
- <ComponentRef Id="templates.gitweb" />
- <ComponentRef Id="templates.monoblue" />
- <ComponentRef Id="templates.paper" />
- <ComponentRef Id="templates.raw" />
- <ComponentRef Id="templates.rss" />
- <ComponentRef Id="templates.spartan" />
- <ComponentRef Id="templates.static" />
-
- </ComponentGroup>
- </Fragment>
-
- <Fragment>
- <DirectoryRef Id="INSTALLDIR">
-
- <Directory Id="templatesdir" Name="templates" FileSource="$(var.SourceDir)">
-
- <Component Id="templates.root" Guid="$(var.templates.root.guid)">
- <File Name="map-cmdline.changelog" KeyPath="yes" />
- <File Name="map-cmdline.compact" />
- <File Name="map-cmdline.default" />
- <File Name="map-cmdline.xml" />
- <File Name="template-vars.txt" />
- </Component>
-
- <Directory Id="templates.atomdir" Name="atom">
- <Component Id="templates.atom" Guid="$(var.templates.atom.guid)">
- <File Id="atom.changelog.tmpl" Name="changelog.tmpl" KeyPath="yes" />
- <File Id="atom.changelogentry.tmpl" Name="changelogentry.tmpl" />
- <File Id="atom.error.tmpl" Name="error.tmpl" />
- <File Id="atom.filelog.tmpl" Name="filelog.tmpl" />
- <File Id="atom.header.tmpl" Name="header.tmpl" />
- <File Id="atom.map" Name="map" />
- <File Id="atom.tagentry.tmpl" Name="tagentry.tmpl" />
- <File Id="atom.tags.tmpl" Name="tags.tmpl" />
- </Component>
- </Directory>
-
- <Directory Id="templates.coaldir" Name="coal">
- <Component Id="templates.coal" Guid="$(var.templates.coal.guid)">
- <File Id="coal.header.tmpl" Name="header.tmpl" KeyPath="yes" />
- <File Id="coal.map" Name="map" />
- </Component>
- </Directory>
-
- <Directory Id="templates.gitwebdir" Name="gitweb">
- <Component Id="templates.gitweb" Guid="$(var.templates.gitweb.guid)">
- <File Id="gitweb.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
- <File Id="gitweb.changelog.tmpl" Name="changelog.tmpl" />
- <File Id="gitweb.changelogentry.tmpl" Name="changelogentry.tmpl" />
- <File Id="gitweb.changeset.tmpl" Name="changeset.tmpl" />
- <File Id="gitweb.error.tmpl" Name="error.tmpl" />
- <File Id="gitweb.fileannotate.tmpl" Name="fileannotate.tmpl" />
- <File Id="gitweb.filediff.tmpl" Name="filediff.tmpl" />
- <File Id="gitweb.filelog.tmpl" Name="filelog.tmpl" />
- <File Id="gitweb.filerevision.tmpl" Name="filerevision.tmpl" />
- <File Id="gitweb.footer.tmpl" Name="footer.tmpl" />
- <File Id="gitweb.graph.tmpl" Name="graph.tmpl" />
- <File Id="gitweb.header.tmpl" Name="header.tmpl" />
- <File Id="gitweb.index.tmpl" Name="index.tmpl" />
- <File Id="gitweb.manifest.tmpl" Name="manifest.tmpl" />
- <File Id="gitweb.map" Name="map" />
- <File Id="gitweb.notfound.tmpl" Name="notfound.tmpl" />
- <File Id="gitweb.search.tmpl" Name="search.tmpl" />
- <File Id="gitweb.shortlog.tmpl" Name="shortlog.tmpl" />
- <File Id="gitweb.summary.tmpl" Name="summary.tmpl" />
- <File Id="gitweb.tags.tmpl" Name="tags.tmpl" />
- <File Id="gitweb.help.tmpl" Name="help.tmpl" />
- <File Id="gitweb.helptopics.tmpl" Name="helptopics.tmpl" />
- </Component>
- </Directory>
-
- <Directory Id="templates.monobluedir" Name="monoblue">
- <Component Id="templates.monoblue" Guid="$(var.templates.monoblue.guid)">
- <File Id="monoblue.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
- <File Id="monoblue.changelog.tmpl" Name="changelog.tmpl" />
- <File Id="monoblue.changelogentry.tmpl" Name="changelogentry.tmpl" />
- <File Id="monoblue.changeset.tmpl" Name="changeset.tmpl" />
- <File Id="monoblue.error.tmpl" Name="error.tmpl" />
- <File Id="monoblue.fileannotate.tmpl" Name="fileannotate.tmpl" />
- <File Id="monoblue.filediff.tmpl" Name="filediff.tmpl" />
- <File Id="monoblue.filelog.tmpl" Name="filelog.tmpl" />
- <File Id="monoblue.filerevision.tmpl" Name="filerevision.tmpl" />
- <File Id="monoblue.footer.tmpl" Name="footer.tmpl" />
- <File Id="monoblue.graph.tmpl" Name="graph.tmpl" />
- <File Id="monoblue.header.tmpl" Name="header.tmpl" />
- <File Id="monoblue.index.tmpl" Name="index.tmpl" />
- <File Id="monoblue.manifest.tmpl" Name="manifest.tmpl" />
- <File Id="monoblue.map" Name="map" />
- <File Id="monoblue.notfound.tmpl" Name="notfound.tmpl" />
- <File Id="monoblue.search.tmpl" Name="search.tmpl" />
- <File Id="monoblue.shortlog.tmpl" Name="shortlog.tmpl" />
- <File Id="monoblue.summary.tmpl" Name="summary.tmpl" />
- <File Id="monoblue.tags.tmpl" Name="tags.tmpl" />
- <File Id="monoblue.help.tmpl" Name="help.tmpl" />
- <File Id="monoblue.helptopics.tmpl" Name="helptopics.tmpl" />
- </Component>
- </Directory>
-
- <Directory Id="templates.paperdir" Name="paper">
- <Component Id="templates.paper" Guid="$(var.templates.paper.guid)">
- <File Id="paper.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
- <File Id="paper.changeset.tmpl" Name="changeset.tmpl" />
- <File Id="paper.error.tmpl" Name="error.tmpl" />
- <File Id="paper.fileannotate.tmpl" Name="fileannotate.tmpl" />
- <File Id="paper.filediff.tmpl" Name="filediff.tmpl" />
- <File Id="paper.filelog.tmpl" Name="filelog.tmpl" />
- <File Id="paper.filelogentry.tmpl" Name="filelogentry.tmpl" />
- <File Id="paper.filerevision.tmpl" Name="filerevision.tmpl" />
- <File Id="paper.footer.tmpl" Name="footer.tmpl" />
- <File Id="paper.graph.tmpl" Name="graph.tmpl" />
- <File Id="paper.header.tmpl" Name="header.tmpl" />
- <File Id="paper.index.tmpl" Name="index.tmpl" />
- <File Id="paper.manifest.tmpl" Name="manifest.tmpl" />
- <File Id="paper.map" Name="map" />
- <File Id="paper.notfound.tmpl" Name="notfound.tmpl" />
- <File Id="paper.search.tmpl" Name="search.tmpl" />
- <File Id="paper.shortlog.tmpl" Name="shortlog.tmpl" />
- <File Id="paper.shortlogentry.tmpl" Name="shortlogentry.tmpl" />
- <File Id="paper.tags.tmpl" Name="tags.tmpl" />
- <File Id="paper.help.tmpl" Name="help.tmpl" />
- <File Id="paper.helptopics.tmpl" Name="helptopics.tmpl" />
- </Component>
- </Directory>
-
- <Directory Id="templates.rawdir" Name="raw">
- <Component Id="templates.raw" Guid="$(var.templates.raw.guid)">
- <File Id="raw.changeset.tmpl" Name="changeset.tmpl" KeyPath="yes" />
- <File Id="raw.error.tmpl" Name="error.tmpl" />
- <File Id="raw.fileannotate.tmpl" Name="fileannotate.tmpl" />
- <File Id="raw.filediff.tmpl" Name="filediff.tmpl" />
- <File Id="raw.index.tmpl" Name="index.tmpl" />
- <File Id="raw.manifest.tmpl" Name="manifest.tmpl" />
- <File Id="raw.map" Name="map" />
- <File Id="raw.notfound.tmpl" Name="notfound.tmpl" />
- </Component>
- </Directory>
-
- <Directory Id="templates.rssdir" Name="rss">
- <Component Id="templates.rss" Guid="$(var.templates.rss.guid)">
- <File Id="rss.changelog.tmpl" Name="changelog.tmpl" KeyPath="yes" />
- <File Id="rss.changelogentry.tmpl" Name="changelogentry.tmpl" />
- <File Id="rss.error.tmpl" Name="error.tmpl" />
- <File Id="rss.filelog.tmpl" Name="filelog.tmpl" />
- <File Id="rss.filelogentry.tmpl" Name="filelogentry.tmpl" />
- <File Id="rss.header.tmpl" Name="header.tmpl" />
- <File Id="rss.map" Name="map" />
- <File Id="rss.tagentry.tmpl" Name="tagentry.tmpl" />
- <File Id="rss.tags.tmpl" Name="tags.tmpl" />
- </Component>
- </Directory>
-
- <Directory Id="templates.spartandir" Name="spartan">
- <Component Id="templates.spartan" Guid="$(var.templates.spartan.guid)">
- <File Id="spartan.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
- <File Id="spartan.changelog.tmpl" Name="changelog.tmpl" />
- <File Id="spartan.changelogentry.tmpl" Name="changelogentry.tmpl" />
- <File Id="spartan.changeset.tmpl" Name="changeset.tmpl" />
- <File Id="spartan.error.tmpl" Name="error.tmpl" />
- <File Id="spartan.fileannotate.tmpl" Name="fileannotate.tmpl" />
- <File Id="spartan.filediff.tmpl" Name="filediff.tmpl" />
- <File Id="spartan.filelog.tmpl" Name="filelog.tmpl" />
- <File Id="spartan.filelogentry.tmpl" Name="filelogentry.tmpl" />
- <File Id="spartan.filerevision.tmpl" Name="filerevision.tmpl" />
- <File Id="spartan.footer.tmpl" Name="footer.tmpl" />
- <File Id="spartan.graph.tmpl" Name="graph.tmpl" />
- <File Id="spartan.header.tmpl" Name="header.tmpl" />
- <File Id="spartan.index.tmpl" Name="index.tmpl" />
- <File Id="spartan.manifest.tmpl" Name="manifest.tmpl" />
- <File Id="spartan.map" Name="map" />
- <File Id="spartan.notfound.tmpl" Name="notfound.tmpl" />
- <File Id="spartan.search.tmpl" Name="search.tmpl" />
- <File Id="spartan.shortlog.tmpl" Name="shortlog.tmpl" />
- <File Id="spartan.shortlogentry.tmpl" Name="shortlogentry.tmpl" />
- <File Id="spartan.tags.tmpl" Name="tags.tmpl" />
- </Component>
- </Directory>
-
- <Directory Id="templates.staticdir" Name="static">
- <Component Id="templates.static" Guid="$(var.templates.static.guid)">
- <File Id="static.background.png" Name="background.png" KeyPath="yes" />
- <File Id="static.coal.file.png" Name="coal-file.png" />
- <File Id="static.coal.folder.png" Name="coal-folder.png" />
- <File Id="static.excanvas.js" Name="excanvas.js" />
- <File Id="static.graph.js" Name="graph.js" />
- <File Id="static.hgicon.png" Name="hgicon.png" />
- <File Id="static.hglogo.png" Name="hglogo.png" />
- <File Id="static.style.coal.css" Name="style-coal.css" />
- <File Id="static.style.gitweb.css" Name="style-gitweb.css" />
- <File Id="static.style.monoblue.css" Name="style-monoblue.css" />
- <File Id="static.style.paper.css" Name="style-paper.css" />
- <File Id="static.style.css" Name="style.css" />
- </Component>
- </Directory>
-
- </Directory>
-
- </DirectoryRef>
- </Fragment>
-
- </Wix>
|
|
@@ -1,24 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?include guids.wxi ?>
-
- <?define thg_po_langs =
- cs;da;de;en_GB;es;fa;fr;he;hr;hu;it;ja;ko;nl;nn;oc;pl;pt;pt_BR;ru;sv;tr;uk;zh_CN;zh_TW
- ?>
- <!-- lang 'ca' is used for key path -->
-
- <Fragment>
- <DirectoryRef Id="i18ndir" FileSource="$(var.SourceDir)">
- <Directory Id="thgI18nFolder" Name="tortoisehg">
- <Component Id="thgI18nFolder" Guid="$(var.thgI18nFolder.guid)">
- <File Id="thg.ca.po" Name="ca.po" KeyPath="yes" />
- <?foreach LANG in $(var.thg_po_langs) ?>
- <File Id="thg.$(var.LANG).po" Name="$(var.LANG).po" />
- <?endforeach?>
- </Component>
- </Directory>
- </DirectoryRef>
- </Fragment>
-
-</Wix>
|
|
@@ -1,30 +0,0 @@ - <?xml version="1.0" encoding="utf-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
-
- <?define thglocales =
- ca;cs;da;de;en_GB;es;fa;fr;he;hr;hu;it;ja;nl;nn;pl;pt;pt_BR;ru;sv;tr;uk;zh_CN;zh_TW
- ?>
-
- <Fragment>
- <ComponentGroup Id="thgLocaleFolder">
- <?foreach LOC in $(var.thglocales) ?>
- <ComponentRef Id="thg.locale.$(var.LOC)"/>
- <?endforeach?>
- </ComponentGroup>
- </Fragment>
-
- <?foreach LOC in $(var.thglocales) ?>
- <Fragment>
- <DirectoryRef Id="localedir" FileSource="$(var.SourceDir)">
- <Directory Id="thg.locale.$(var.LOC)" Name="$(var.LOC)">
- <Directory Id="thg.locale.$(var.LOC).LC_MESSAGES" Name="LC_MESSAGES">
- <Component Id="thg.locale.$(var.LOC)" Guid="*">
- <File Id="tortoisehg.mo.$(var.LOC)" Name="tortoisehg.mo" KeyPath="yes" />
- </Component>
- </Directory>
- </Directory>
- </DirectoryRef>
- </Fragment>
- <?endforeach?>
-
-</Wix>
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
@@ -2,7 +2,7 @@ setlocal
if not exist %hhc_compiler%. (
- set hhc_compiler="%ProgramFiles%\HTML Help Workshop\hhc.exe"
+ set hhc_compiler=hhc.exe
)
set PDFLATEX=PdfLatex
set SPHINXBUILD=sphinx-build
|
|
@@ -2,42 +2,11 @@ ===============
.. module:: common.dialog
- :synopsis: Common features to all the dialog
+ :synopsis: Features common to many dialogs
These features are common to many TortoiseHg tools, so we document them
here just once.
-Keyboard Accelerators
----------------------
-
-We define a few keyboard accelerators that all of the TortoiseHg tools support.
-
-:kbd:`Ctrl-Q`
- quit the application, including all open windows
-
-:kbd:`Ctrl-W`
- close the current window (same as :kbd:`Ctrl-Q` if only one window is open)
-
-:kbd:`Ctrl-D`
- visual diff of currently selected file or changeset
-
-:kbd:`Ctrl-Enter`
- activation
-
-:kbd:`Ctrl-.` and :kbd:`Ctrl-,`
- select next or previous file in a file list
-
-:kbd:`Ctrl-[` and :kbd:`Ctrl-]`
- page up or down a text pane
-
-:kbd:`F5`, :kbd:`Ctrl-R`
- refresh
-
-On `Mac OS X <http://bitbucket.org/tortoisehg/stable/wiki/MacOSX>`_, the
-apple (command) key is used as the modifier instead of :kbd:`Ctrl`.
-However some keyboard accelerators are internal to GTK+ so you must use
-the control key to access cut-paste functionality, for instance.
-
Visual Diffs
------------
@@ -164,46 +133,4 @@`merge-patterns <http://www.selenic.com/mercurial/hgrc.5.html#merge-patterns>`_
section.
-
-Treeview searches
------------------
-
-Many TortoiseHg dialogs use treeviews to present lists of data to the
-user. The file lists in the status, commit, shelve, and changelog tools
-are treeviews. The changelog graph pane is a treeview. And even the
-annotate pane in the datamine tool is a treeview.
-
-Most of the TortoiseHg treeviews are configured for live searches.
-Ensure that the treeview has focus (by clicking on a row), and begin
-typing a search phrase. A small entry window will appear containing the
-text you have typed, and the treeview will immediately jump to the first
-row that matches the text you have entered thus far. As you enter more
-characters, the search is refined. (Do not hit return to 'complete' the
-search, before using the keys mentioned below, or the entry window will
-disappear, ending the search instead.)
-
-* :kbd:`Ctrl-F` opens the search window explicitly
-* :kbd:`Ctrl-G` advances the search to the next match
-* :kbd:`Shift-Ctrl-G` searches backwards
-* The mouse scroll wheel will advance forwards and backwards through
- matching lines
-
-Hg command dialog
------------------
-
-Many TortoiseHg tools use the *hgcmd* dialog to execute Mercurial
-commands that could potentially be interactive.
-
-.. figure:: figures/hgcmd.jpg
- :alt: Mercurial command dialog
-
- Interactive Mercurial Command Dialog
-
-.. note::
- Error messages are given a dark red color for contrast
-
-When the Mercurial command has completed, the dialog gives focus to its
-:guilabel:`Close` button. So pressing :kbd:`Enter` is all that is
-required to close the window.
-
.. vim: noet ts=4
|
@@ -49,9 +49,9 @@ # built documents.
#
# The short X.Y version.
-version = '1.1'
+version = '2.0'
# The full version, including alpha/beta/rc tags.
-release = '1.1.8'
+release = '1.9.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
|
@@ -7,12 +7,10 @@
common
explorer
+ workbench
init
clone
commit
- shelve
- changelog
- datamine
synchronize
serve
guess
|
|
|
@@ -1,136 +0,0 @@ - Datamine
-========
-
-.. module:: datamine.dialog
- :synopsis: Dialog used to search repository history
-
-The datamine application is used to inspect the revision history of your
-repository. It is a tabbed application that supports two tab types,
-*Search* and *Annotate*.
-
-
-Search Tabs
------------
-
-.. figure:: figures/search.png
- :alt: Search dialog
-
- Search tabs
-
-The search tab is used to search (*grep*) through your entire revision
-history for keywords, variable names, functions, etc...
-
-The text entry fields have these purposes:
-
- :guilabel:`regexp`
- Regular expression search criteria.
- :guilabel:`includes`
- Comma separated list of paths to include in your search. If no
- paths are given, the search is assumed to be repository wide. In
- other words, specifying an include path actually narrows the
- search criteria.
- :guilabel:`excludes`
- Comma separated list of paths to exclude from your search.
- Exclusion patterns are applied after inclusion patterns.
-
-The toggle buttons below the entry fields are for:
-
- :guilabel:`Follow copies and renames`
- follow searches through copies and renames out of inclusion filters
- :guilabel:`Ignore case`
- Perform the search without case considerations
- :guilabel:`Show line numbers`
- Show line numbers at the front of the matching lines
- :guilabel:`Show all matching revisions`
- Show every instance where the search criteria matches in a file,
- not just the most recent revision. It shows +/- to indicate
- whether the change adds or removes your search text.
-
-Search tabs are named after the search string most recently used to
-start a search. The :guilabel:`New Search` toolbar button will
-obviously open a new search tab while the :guilabel:`Stop` button will
-terminate an ongoing search (the :guilabel:`Stop` button is only
-sensitive when a search is in progress).
-
-Matches
-^^^^^^^
-
-Each match will be a link to a changeset and will have a descriptive
-tooltip (author, date/time, summary). Right clicking on a matched line
-will bring up a context menu with these features:
-
- :guilabel:`display change`
- open a changeset window with this changeset, to see the full context
- :guilabel:`annotate file`
- open an annotation tab for this file at this revision
- :guilabel:`file history`
- open a changelog window with this file's revision history
- :guilabel:`view file at revision`
- open the current file at the specified revision in your favorite
- text editor.
-
-
-Annotate Tabs
--------------
-
-.. figure:: figures/annotate.png
- :alt: Annotate tabs
-
- Annotate tabs
-
-
-The revision graph has a simple context menu for opening the entire
-changeset in the changeset browser. Activating a row in the revision
-graph updates the file annotation to that revision.
-
-In the bottom pane is the actual annotation. Each line in the annotation
-is also a link to the changeset which provided that line. Activating a
-row will zoom the changelog (top pane) to the changeset that introduced
-that line and change focus to the top pane.
-
-The color scheme in the annotation pane is two dimensional. Authors
-determine hue, and age determines saturation. The older a change, the
-lighter the color.
-
-By right-clicking on the annotate pane's column headers (Line, Rev,
-Source) you can bring up a menu for showing two optional columns:
-:guilabel:`filename` and :guilabel:`user`.
-
-Following Renames
-^^^^^^^^^^^^^^^^^
-
-The annotation data will automatically follow lines of code back through
-copies and renames to find the initial changeset that introduced the
-line. The graph log pane will also attempt to follow renames and
-copies, so some lines in the graph may correlate to different filenames
-than the original annotated file path. Renames are indicated in the
-graph by color changes within a column.
-
-Configurables
-^^^^^^^^^^^^^
-
-The annotate tabs support the following configurations defined primarily
-for other tools:
-
-:menuselection:`Changelog --> Author Coloring`
- Give each author a separate color in the changelog graph
-:menuselection:`Changelog --> Long Summary`
- Concatenates lines of commit message together to reach an 80
- character summary.
-:menuselection:`TortoiseHg --> Tab width`
- Number of spaces to expand tabs in diffs and annotate output
-
-From command line
------------------
-
-The datamine tool can be started from command line ::
-
- hgtk datamine
-
- aliases: annotate, blame
-
- repository search and annotate tool
-
- use "hgtk -v help datamine" to show global options
-
-.. vim: noet ts=4
|
@@ -50,62 +50,6 @@ :command:`hg debugsetparents <number of tip revision>`.
You can find the number of the tip revision by running :command:`hg log -l 2`.
-Hgcr-gui
-========
-
-`CodeReview <http://bitbucket.org/glimchb/hgcr-gui/wiki/Home>`_ management tool
-
-* This extension allows you to manage reviews for your code in any project you like.
-* It helps to keep the review management inside the mercurial.
-* One can add files to the review, remove them and notify reviewr that files are ready for review.
-* The reviewer can mark the code as 'completed' review cycle and return the message to the developer.
-* The project manager can check the review status - which files are reviewd and which are not yet.
-* The extension will automatically spot the files that were changed since their last review and notify about that.
-* This extension uses GUI from TortoiseHg but also implements command line interface.
-* Code review database is stored in .code-review file in your repository root directory as a map of file and revision when review was done.
-
-**Usage**::
-
- hg cr [OPTIONS] [FILES]
-
- Code Review Plugin (requires Mercurial 1.3.x and TortoiseHg 0.9)
-
- options:
-
- -c --complete Mark CR as complete
- -a --add Add files to CR list
- -r --remove Remove files from CR list
- -l --list Print files in CR list
-
- use "hg -v help cr" to show global options
-
-.. note::
- To start GUI don't give any options.
-
-**More Details**
-
-* I've implemented the review around files and not changesets, because at the end,
- I want to be able to tell for the specific project if all the files went through
- code review process or not - the project status.
-* Suppose you have some project that you are in charge and many developers do
- write code for it. And there is a group of reviewrs that review the developers code.
-* Is is very difficult to keep track of changes developers do, but simple to find
- out what files have already been reviewd (by reviewers) and what were not.
-* Using this extension, Developer can mark his files (when finished development
- process) as "Ready for review" and send notice to reviewer.
-* Reviewer will pick up the changeset (because changesets are stored in the code
- review database) and perform code review (put notes inside the developer's code).
-* Afterwards Reviewr will mark the files as "Review Completed" and return the
- notice to the developer.
-* The project manager can follow every time what is going on with his/her project.
-
-**Installation**
-
-You may want to add it to your Mercurial.ini or a repository's hgrc like this::
-
- [extensions]
- hgcr-gui=
-
Perfarce
========
|
|
@@ -7,17 +7,18 @@
A Windows shell extension for the Mercurial revision control system,
similar to the Tortoise clients for Subversion and CVS. It also
- includes an hgtk application for command line use on many platforms.
+ includes a thg application for command line use on many platforms.
*What comes included in the TortoiseHg binary installer for Windows?*
`Mercurial <http://mercurial.selenic.com/wiki/>`_,
`kdiff3 <http://kdiff3.sourceforge.net/>`_,
`TortoisePlink <http://www.chiark.greenend.org.uk/%7Esgtatham/putty/>`_
- four bonus extensions: hgfold, hgcr-gui, perfarce, mercurial-keyring.
+ bonus extensions: hgfold, perfarce, mercurial-keyring. fixfrozenexts,
python-svn for hgsubversion and convert extensions, and dulwich for
hg-git use.
- See :file:`extension-versions.txt` in installer root for more details
+ See :file:`extension-versions.txt` in the TortoiseHg folder for more
+ details on the exact versions packaged.
*Is Mercurial on Windows compatible with the index service and virus scanners?*
@@ -32,45 +33,10 @@ locale you would like to use, double-click on it, and confirm all
requests.
-*Can I configure the toolbars in TortoiseHg applications?*
-
- TortoiseHg dialogs are PyGtk applications, so they can be configured by
- modifying the gtkrc file that is installed as
- :file:`C:\\Program Files\\TortoiseHg\\gtk\\etc\\gtk-2.0\\gtkrc`::
-
- gtk-toolbar-icon-size = GTK_ICON_SIZE_LARGE_TOOLBAR
- # Pick an icon size from:
- # GTK_ICON_SIZE_MENU
- # GTK_ICON_SIZE_SMALL_TOOLBAR
- # GTK_ICON_SIZE_LARGE_TOOLBAR (default)
- # GTK_ICON_SIZE_BUTTON
- # GTK_ICON_SIZE_DND
- # GTK_ICON_SIZE_DIALOG
- gtk-toolbar-style = GTK_TOOLBAR_BOTH
- # Pick a toolbar style from:
- # GTK_TOOLBAR_ICONS
- # GTK_TOOLBAR_TEXT
- # GTK_TOOLBAR_BOTH (default)
- # GTK_TOOLBAR_BOTH_HORIZ
-
- These settings are applied globally to all TortoiseHg applications.
-
*How do I do merges and arbitrary version checkouts?*
Merges and updates are intended to be done within the
- :guilabel:`Repository Explorer`, using changeset context menus
-
-*How do I use TortoiseHg's shelve extension from the hg command line?*
-
- Enable the extension in your Mercurial.ini file::
-
- [extensions]
- tortoisehg.util.hgshelve=
-
-*Why can't I connect to an ssh server (TortoisePlink.exe* ``...cannot execute specified...`` *error message)?*
-
- See `ssh <http://bitbucket.org/tortoisehg/stable/wiki/ssh>`_.
-
+ :guilabel:`Workbench`, using changeset context menus
*Why can't I connect to an ssh server (remote: bash: <server name>: command not found)?*
@@ -87,10 +53,6 @@ diff tools and make them available for selection from the
:guilabel:`Visual Diff Tool` item in the settings tool.
-*I'm a CLI user, how do I disable the shell extension (overlay icons and context menus)?*
-
- Simply ask the installer to remove the shell extension entirely.
-
*How is TortoiseHg configured?*
TortoiseHg gets configuration settings from two systems.
@@ -110,31 +72,9 @@ editor = gvim
tabwidth = 4
longsummary = True
- graphlimit = 500
authorcolor = True
authorcolor.steve = blue
-*Is it possible to change fonts?*
-
- In some cases, yes. The gtools based dialogs (commit, status,
- shelve) allow some font configuration. ::
-
- [gtools]
- # font used in changeset viewer and commit log text
- fontcomment = courier 10
- # font used for diffs in status and commit tools
- fontdiff = courier 10
- # font used in file lists in status and commit tools
- fontlist = courier 9
- # font used in command output window
- fontlog = courier 10
-
-*How do I switch GTK themes?*
-
- You can download new themes and copy them into the
- :file:`gtk\\share\\themes` directory of your install and then enable
- them in :file:`gtk\\etc\\gtk-2.0\\gtkrc`.
-
*Where do TortoiseHg extensions look for external Python modules on Windows?*
TortoiseHg includes an entire Python distribution bundled up as
@@ -165,20 +105,4 @@ [extensions]
00setSysPath = C:\path\to\setsyspath.py
-*How do I fix odd characters in dialogs?*
-
- The default font of the MS-Windows theme may cause problems in some
- environments. In order to fix this issue, add following setting to
- TortoiseHg's :file:`gtkrc` file::
-
- style "msw-default"
- {
- font_name = "MS UI Gothic 9"
- }
-
- You can find :file:`gtkrc` file in your TortoiseHg install directory:
- i.e. :file:`C:\\Program Files\\TortoiseHg\\gtk\\etc\\gtk-2.0\\gtkrc`
-
- Also see the :guilabel:`Fonts` page of the settings tool
-
.. vim: noet ts=4
|
@@ -14,10 +14,10 @@
preface
intro
+ whatsnew
quick
daily
settings
- recovery
patches
extensions
nonhg
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
@@ -34,10 +34,7 @@
:doc:`settings` describes how to configure TortoiseHg.
-:doc:`recovery` describes the recovery operations one can perform on a
-project.
-
-:doc:`nonhg` describes how to use TortoiseHg as a client to
+:doc:`nonhg` describes how to use TortoiseHg as a client for
non-Mercurial servers.
:doc:`faq` has a list of common questions and their answers.
@@ -58,22 +55,28 @@Mailing Lists:
* `Users <https://lists.sourceforge.net/lists/listinfo/tortoisehg-discuss>`_ - Announcements, user Q&A, and feature discussions.
-* `Developers <https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop>`_ - Patches, bug reports, development discussions.
+* `Developers <thg-dev@googlegroups.com>`_ - Patches, bug reports, development discussions.
* `Issues <https://lists.sourceforge.net/lists/listinfo/tortoisehg-issues>`_ - Notifications from the issue tracker.
-And our `wiki <http://bitbucket.org/tortoisehg/stable/wiki/Home>`_ on Bitbucket.
+And our `wiki <http://bitbucket.org/tortoisehg/thg/wiki/Home>`_ on Bitbucket.
-Acknowledgement
-===============
+Acknowledgements
+================
Thanks to the many people who contribute to the TortoiseHg project. It
takes a community of developers, translators, and users to build a
-truly useful tool. Especially users who care enough to report bugs and
-file feature requests.
+truly useful tool (especially users who care enough to report bugs and
+file feature requests).
The TortoiseHg installer for Windows includes the TortoiseOverlays handler,
as provided by the `TortoiseSVN <http://tortoisesvn.net>`_ project.
+The history viewer of TortoiseHg is based on hgview
+`hgview <http://www.logilab.org/project/hgview>`_, a tool developped by
+`David Douard <david.douard@logilab.fr>`_ and others, with the financial
+support of `Logilab <http://www.logilab.fr>`_.
+
+
Conventions used in this manual
===============================
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
@@ -1,41 +0,0 @@ - ********
-Recovery
-********
-
-.. module:: recovery.dialog
- :synopsis: Dialog used to perform recovery operations
-
-.. figure:: figures/recover.png
- :alt: Recovery dialog
-
- Recovery Dialog
-
-The toolbar buttons equate to a Mercurial command
-
-:guilabel:`clean`
- :command:`hg update --clean` - performs a clean checkout of the
- current (first) working directory parent revision. Undoes an
- aborted or partially completed merge. This will destroy all
- changes, please use carefully. You should shelve any changes you
- wish to keep before using this command.
-
-
-:guilabel:`rollback`
- :command:`hg rollback` - undo operation for the most recent
- repository transaction, which is usually a commit or a pull. There
- is no way to know for certain what operation will be rolled back, so
- only use this in situations where you know what the last transaction
- was.
-
-
-:guilabel:`recover`
- :command:`hg recover` - recover from a badly aborted transaction.
- This is rarely necessary, and Mercurial will inform you if it ever
- needs to be performed.
-
-
-:guilabel:`verify`
- :command:`hg verify` - perform a consistency check of the contents of your
- repository. Completely safe.
-
-.. vim: noet ts=4
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
@@ -18,7 +18,6 @@ inkscape:export-filename="E:\src\mercurial\thg\thg-init-icon\icons\tortoise\init-32.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90"
- sodipodi:docbase="E:\src\thg\thg-icons\icons\tortoise"
sodipodi:docname="init.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"
style="display:inline">
@@ -164,22 +163,6 @@ </rdf:RDF>
</metadata>
<g
- inkscape:groupmode="layer"
- id="layer2"
- inkscape:label="Original Bitmap"
- style="display:none"
- sodipodi:insensitive="true">
- <image
- style="display:inline"
- y="0"
- x="0"
- id="image4474"
- height="32"
- width="32"
- sodipodi:absref="E:\src\mercurial\thg\thg-init-icon\icons\tortoise\menucreaterepos.ico"
- xlink:href="E:\src\mercurial\thg\thg-init-icon\icons\tortoise\menucreaterepos.ico" />
- </g>
- <g
inkscape:label="Cylinder"
inkscape:groupmode="layer"
id="layer1"
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
@@ -0,0 +1,9 @@ + # HG changeset patch
+# User test
+# Date 0 0
+# Node ID b124d3c17d0d93e83d26c00d7a176c02c42d73d1
+# Parent 0000000000000000000000000000000000000000
+add aloha
+
+diff --git a/����ϡ� b/����ϡ�
+new file mode 100644
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
copied from icons/svg/repobrowse.svg
|
||
---|---|---|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
renamed from tortoisehg/hgtk/logview/colormap.py
|
||
---|---|---|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
|
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
Loading...