Merged with the maintenance branch.

Sat, 19 Nov 2016 14:59:17 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 19 Nov 2016 14:59:17 +0100
changeset 5337
d478270045b2
parent 5332
41b32e1636e1 (diff)
parent 5336
1a31367a3db2 (current diff)
child 5338
b201f26d1722

Merged with the maintenance branch.

APIs/Python3/eric6.api file | annotate | diff | comparison | revisions
Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
changelog file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric6.api	Sat Nov 19 12:51:28 2016 +0100
+++ b/APIs/Python3/eric6.api	Sat Nov 19 14:59:17 2016 +0100
@@ -3559,7 +3559,7 @@
 eric6.MultiProject.MultiProject.MultiProject.setDirty?4(b)
 eric6.MultiProject.MultiProject.MultiProject.showMenu?7
 eric6.MultiProject.MultiProject.MultiProject?1(project, parent=None, filename=None)
-eric6.MultiProject.MultiProjectBrowser.MultiProjectBrowser?1(multiProject, parent=None)
+eric6.MultiProject.MultiProjectBrowser.MultiProjectBrowser?1(multiProject, project, parent=None)
 eric6.MultiProject.PropertiesDialog.PropertiesDialog.storeData?4()
 eric6.MultiProject.PropertiesDialog.PropertiesDialog?1(multiProject, new=True, parent=None)
 eric6.Network.IRC.IrcChannelEditDialog.IrcChannelEditDialog.getData?4()
@@ -4717,6 +4717,7 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksInOutDialog.HgBookmarksInOutDialog?1(vcs, mode, parent=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.HgBookmarksListDialog.closeEvent?4(e)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.HgBookmarksListDialog.keyPressEvent?4(evt)
+eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested?4(pos)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.HgBookmarksListDialog.on_buttonBox_clicked?4(button)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.HgBookmarksListDialog.on_input_returnPressed?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.HgBookmarksListDialog.on_passwordCheckBox_toggled?4(isOn)
@@ -4761,9 +4762,7 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.HgCommandDialog.HgCommandDialog.on_commandCombo_editTextChanged?4(text)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgCommandDialog.HgCommandDialog?1(argvList, ppath, parent=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.accepted?7
-eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.amend?4()
-eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.commitSubrepositories?4()
-eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.logMessage?4()
+eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.getCommitData?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.on_buttonBox_accepted?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.on_buttonBox_clicked?4(button)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.HgCommitDialog.on_buttonBox_rejected?4()
@@ -4847,6 +4846,7 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.COLORNAMES?7
 eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.COLORS?7
 eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.HgLogBrowserDialog.AuthorColumn?7
+eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.HgLogBrowserDialog.BookmarksColumn?7
 eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.HgLogBrowserDialog.BranchColumn?7
 eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.HgLogBrowserDialog.ClosedIndicator?7
 eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.HgLogBrowserDialog.DateColumn?7
@@ -4996,7 +4996,9 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog.on_buttonBox_clicked?4(button)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog.on_input_returnPressed?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog.on_passwordCheckBox_toggled?4(isOn)
+eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog.on_refreshButton_clicked?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog.on_sendButton_clicked?4()
+eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog.on_tagList_customContextMenuRequested?4(pos)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog.start?4(path, tags, tagsList, allTagsList)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.HgTagBranchListDialog?1(vcs, parent=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgTagDialog.HgTagDialog.CreateGlobalTag?7
@@ -5311,14 +5313,14 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgArchive?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBackout?4(name)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBisect?4(name, subcommand)
-eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkDefine?4(name)
-eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkDelete?4(name)
+eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkDefine?4(name, revision=None, bookmark=None)
+eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkDelete?4(name, bookmark=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkIncoming?4(name)
-eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkMove?4(name)
+eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkMove?4(name, revision=None, bookmark=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkOutgoing?4(name)
-eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkPull?4(name, current=False)
-eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkPush?4(name, current=False)
-eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkRename?4(name)
+eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkPull?4(name, current=False, bookmark=None)
+eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkPush?4(name, current=False, bookmark=None)
+eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBookmarkRename?4(name, renameInfo=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBranch?4(name)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgBundle?4(name)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgCancelMerge?4(name)
@@ -5333,6 +5335,7 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgForget?4(name)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgGetBookmarksList?4(repodir)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgGetBranchesList?4(repodir)
+eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgGetCurrentBranch?4(repodir)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgGetTagsList?4(repodir, withType=False)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgGraft?4(path, revs=None)
 eric6.Plugins.VcsPlugins.vcsMercurial.hg.Hg.hgGraftContinue?4(path)
@@ -8533,6 +8536,7 @@
 eric6.UI.Info.Homepage?7
 eric6.UI.Info.Program?7
 eric6.UI.Info.Version?7
+eric6.UI.Info.VersionOnly?7
 eric6.UI.LogView.LogViewer.appendToStderr?4(txt)
 eric6.UI.LogView.LogViewer.appendToStdout?4(txt)
 eric6.UI.LogView.LogViewer.preferencesChanged?4()
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Help/source.qhp	Sat Nov 19 14:59:17 2016 +0100
@@ -7070,6 +7070,7 @@
       <keyword name="Hg.hgForget" id="Hg.hgForget" ref="eric6.Plugins.VcsPlugins.vcsMercurial.hg.html#Hg.hgForget" />
       <keyword name="Hg.hgGetBookmarksList" id="Hg.hgGetBookmarksList" ref="eric6.Plugins.VcsPlugins.vcsMercurial.hg.html#Hg.hgGetBookmarksList" />
       <keyword name="Hg.hgGetBranchesList" id="Hg.hgGetBranchesList" ref="eric6.Plugins.VcsPlugins.vcsMercurial.hg.html#Hg.hgGetBranchesList" />
+      <keyword name="Hg.hgGetCurrentBranch" id="Hg.hgGetCurrentBranch" ref="eric6.Plugins.VcsPlugins.vcsMercurial.hg.html#Hg.hgGetCurrentBranch" />
       <keyword name="Hg.hgGetTagsList" id="Hg.hgGetTagsList" ref="eric6.Plugins.VcsPlugins.vcsMercurial.hg.html#Hg.hgGetTagsList" />
       <keyword name="Hg.hgGraft" id="Hg.hgGraft" ref="eric6.Plugins.VcsPlugins.vcsMercurial.hg.html#Hg.hgGraft" />
       <keyword name="Hg.hgGraftContinue" id="Hg.hgGraftContinue" ref="eric6.Plugins.VcsPlugins.vcsMercurial.hg.html#Hg.hgGraftContinue" />
@@ -7225,17 +7226,23 @@
       <keyword name="HgBookmarksListDialog" id="HgBookmarksListDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog" />
       <keyword name="HgBookmarksListDialog (Constructor)" id="HgBookmarksListDialog (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__init__" />
       <keyword name="HgBookmarksListDialog (Module)" id="HgBookmarksListDialog (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html" />
+      <keyword name="HgBookmarksListDialog.__deleteBookmark" id="HgBookmarksListDialog.__deleteBookmark" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__deleteBookmark" />
       <keyword name="HgBookmarksListDialog.__finish" id="HgBookmarksListDialog.__finish" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__finish" />
       <keyword name="HgBookmarksListDialog.__generateItem" id="HgBookmarksListDialog.__generateItem" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__generateItem" />
       <keyword name="HgBookmarksListDialog.__procFinished" id="HgBookmarksListDialog.__procFinished" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__procFinished" />
       <keyword name="HgBookmarksListDialog.__processOutputLine" id="HgBookmarksListDialog.__processOutputLine" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__processOutputLine" />
+      <keyword name="HgBookmarksListDialog.__pullBookmark" id="HgBookmarksListDialog.__pullBookmark" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__pullBookmark" />
+      <keyword name="HgBookmarksListDialog.__pushBookmark" id="HgBookmarksListDialog.__pushBookmark" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__pushBookmark" />
       <keyword name="HgBookmarksListDialog.__readStderr" id="HgBookmarksListDialog.__readStderr" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__readStderr" />
       <keyword name="HgBookmarksListDialog.__readStdout" id="HgBookmarksListDialog.__readStdout" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__readStdout" />
+      <keyword name="HgBookmarksListDialog.__renameBookmark" id="HgBookmarksListDialog.__renameBookmark" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__renameBookmark" />
       <keyword name="HgBookmarksListDialog.__resizeColumns" id="HgBookmarksListDialog.__resizeColumns" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__resizeColumns" />
       <keyword name="HgBookmarksListDialog.__resort" id="HgBookmarksListDialog.__resort" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__resort" />
       <keyword name="HgBookmarksListDialog.__showError" id="HgBookmarksListDialog.__showError" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__showError" />
+      <keyword name="HgBookmarksListDialog.__switchTo" id="HgBookmarksListDialog.__switchTo" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.__switchTo" />
       <keyword name="HgBookmarksListDialog.closeEvent" id="HgBookmarksListDialog.closeEvent" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.closeEvent" />
       <keyword name="HgBookmarksListDialog.keyPressEvent" id="HgBookmarksListDialog.keyPressEvent" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.keyPressEvent" />
+      <keyword name="HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested" id="HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested" />
       <keyword name="HgBookmarksListDialog.on_buttonBox_clicked" id="HgBookmarksListDialog.on_buttonBox_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.on_buttonBox_clicked" />
       <keyword name="HgBookmarksListDialog.on_input_returnPressed" id="HgBookmarksListDialog.on_input_returnPressed" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.on_input_returnPressed" />
       <keyword name="HgBookmarksListDialog.on_passwordCheckBox_toggled" id="HgBookmarksListDialog.on_passwordCheckBox_toggled" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html#HgBookmarksListDialog.on_passwordCheckBox_toggled" />
@@ -7293,9 +7300,7 @@
       <keyword name="HgCommitDialog" id="HgCommitDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog" />
       <keyword name="HgCommitDialog (Constructor)" id="HgCommitDialog (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.__init__" />
       <keyword name="HgCommitDialog (Module)" id="HgCommitDialog (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html" />
-      <keyword name="HgCommitDialog.amend" id="HgCommitDialog.amend" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.amend" />
-      <keyword name="HgCommitDialog.commitSubrepositories" id="HgCommitDialog.commitSubrepositories" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.commitSubrepositories" />
-      <keyword name="HgCommitDialog.logMessage" id="HgCommitDialog.logMessage" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.logMessage" />
+      <keyword name="HgCommitDialog.getCommitData" id="HgCommitDialog.getCommitData" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.getCommitData" />
       <keyword name="HgCommitDialog.on_buttonBox_accepted" id="HgCommitDialog.on_buttonBox_accepted" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.on_buttonBox_accepted" />
       <keyword name="HgCommitDialog.on_buttonBox_clicked" id="HgCommitDialog.on_buttonBox_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.on_buttonBox_clicked" />
       <keyword name="HgCommitDialog.on_buttonBox_rejected" id="HgCommitDialog.on_buttonBox_rejected" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html#HgCommitDialog.on_buttonBox_rejected" />
@@ -7512,6 +7517,8 @@
       <keyword name="HgLogBrowserDialog (Constructor)" id="HgLogBrowserDialog (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html#HgLogBrowserDialog.__init__" />
       <keyword name="HgLogBrowserDialog (Module)" id="HgLogBrowserDialog (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html" />
       <keyword name="HgLogBrowserDialog.__actionMode" id="HgLogBrowserDialog.__actionMode" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html#HgLogBrowserDialog.__actionMode" />
+      <keyword name="HgLogBrowserDialog.__bookmarkActTriggered" id="HgLogBrowserDialog.__bookmarkActTriggered" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html#HgLogBrowserDialog.__bookmarkActTriggered" />
+      <keyword name="HgLogBrowserDialog.__bookmarkMoveActTriggered" id="HgLogBrowserDialog.__bookmarkMoveActTriggered" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html#HgLogBrowserDialog.__bookmarkMoveActTriggered" />
       <keyword name="HgLogBrowserDialog.__branchColor" id="HgLogBrowserDialog.__branchColor" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html#HgLogBrowserDialog.__branchColor" />
       <keyword name="HgLogBrowserDialog.__diffRevisions" id="HgLogBrowserDialog.__diffRevisions" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html#HgLogBrowserDialog.__diffRevisions" />
       <keyword name="HgLogBrowserDialog.__fetchActTriggered" id="HgLogBrowserDialog.__fetchActTriggered" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html#HgLogBrowserDialog.__fetchActTriggered" />
@@ -8049,8 +8056,10 @@
       <keyword name="HgTagBranchListDialog" id="HgTagBranchListDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog" />
       <keyword name="HgTagBranchListDialog (Constructor)" id="HgTagBranchListDialog (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__init__" />
       <keyword name="HgTagBranchListDialog (Module)" id="HgTagBranchListDialog (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html" />
+      <keyword name="HgTagBranchListDialog.__closeBranch" id="HgTagBranchListDialog.__closeBranch" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__closeBranch" />
       <keyword name="HgTagBranchListDialog.__finish" id="HgTagBranchListDialog.__finish" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__finish" />
       <keyword name="HgTagBranchListDialog.__generateItem" id="HgTagBranchListDialog.__generateItem" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__generateItem" />
+      <keyword name="HgTagBranchListDialog.__highlightCurrentBranch" id="HgTagBranchListDialog.__highlightCurrentBranch" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__highlightCurrentBranch" />
       <keyword name="HgTagBranchListDialog.__procFinished" id="HgTagBranchListDialog.__procFinished" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__procFinished" />
       <keyword name="HgTagBranchListDialog.__processOutputLine" id="HgTagBranchListDialog.__processOutputLine" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__processOutputLine" />
       <keyword name="HgTagBranchListDialog.__readStderr" id="HgTagBranchListDialog.__readStderr" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__readStderr" />
@@ -8058,12 +8067,15 @@
       <keyword name="HgTagBranchListDialog.__resizeColumns" id="HgTagBranchListDialog.__resizeColumns" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__resizeColumns" />
       <keyword name="HgTagBranchListDialog.__resort" id="HgTagBranchListDialog.__resort" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__resort" />
       <keyword name="HgTagBranchListDialog.__showError" id="HgTagBranchListDialog.__showError" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__showError" />
+      <keyword name="HgTagBranchListDialog.__switchTo" id="HgTagBranchListDialog.__switchTo" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.__switchTo" />
       <keyword name="HgTagBranchListDialog.closeEvent" id="HgTagBranchListDialog.closeEvent" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.closeEvent" />
       <keyword name="HgTagBranchListDialog.keyPressEvent" id="HgTagBranchListDialog.keyPressEvent" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.keyPressEvent" />
       <keyword name="HgTagBranchListDialog.on_buttonBox_clicked" id="HgTagBranchListDialog.on_buttonBox_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.on_buttonBox_clicked" />
       <keyword name="HgTagBranchListDialog.on_input_returnPressed" id="HgTagBranchListDialog.on_input_returnPressed" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.on_input_returnPressed" />
       <keyword name="HgTagBranchListDialog.on_passwordCheckBox_toggled" id="HgTagBranchListDialog.on_passwordCheckBox_toggled" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.on_passwordCheckBox_toggled" />
+      <keyword name="HgTagBranchListDialog.on_refreshButton_clicked" id="HgTagBranchListDialog.on_refreshButton_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.on_refreshButton_clicked" />
       <keyword name="HgTagBranchListDialog.on_sendButton_clicked" id="HgTagBranchListDialog.on_sendButton_clicked" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.on_sendButton_clicked" />
+      <keyword name="HgTagBranchListDialog.on_tagList_customContextMenuRequested" id="HgTagBranchListDialog.on_tagList_customContextMenuRequested" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.on_tagList_customContextMenuRequested" />
       <keyword name="HgTagBranchListDialog.start" id="HgTagBranchListDialog.start" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html#HgTagBranchListDialog.start" />
       <keyword name="HgTagDialog" id="HgTagDialog" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagDialog.html#HgTagDialog" />
       <keyword name="HgTagDialog (Constructor)" id="HgTagDialog (Constructor)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgTagDialog.html#HgTagDialog.__init__" />
@@ -9724,6 +9736,7 @@
       <keyword name="MultiProjectBrowser.__newMultiProject" id="MultiProjectBrowser.__newMultiProject" ref="eric6.MultiProject.MultiProjectBrowser.html#MultiProjectBrowser.__newMultiProject" />
       <keyword name="MultiProjectBrowser.__openItem" id="MultiProjectBrowser.__openItem" ref="eric6.MultiProject.MultiProjectBrowser.html#MultiProjectBrowser.__openItem" />
       <keyword name="MultiProjectBrowser.__projectAdded" id="MultiProjectBrowser.__projectAdded" ref="eric6.MultiProject.MultiProjectBrowser.html#MultiProjectBrowser.__projectAdded" />
+      <keyword name="MultiProjectBrowser.__projectClosed" id="MultiProjectBrowser.__projectClosed" ref="eric6.MultiProject.MultiProjectBrowser.html#MultiProjectBrowser.__projectClosed" />
       <keyword name="MultiProjectBrowser.__projectDataChanged" id="MultiProjectBrowser.__projectDataChanged" ref="eric6.MultiProject.MultiProjectBrowser.html#MultiProjectBrowser.__projectDataChanged" />
       <keyword name="MultiProjectBrowser.__projectOpened" id="MultiProjectBrowser.__projectOpened" ref="eric6.MultiProject.MultiProjectBrowser.html#MultiProjectBrowser.__projectOpened" />
       <keyword name="MultiProjectBrowser.__projectRemoved" id="MultiProjectBrowser.__projectRemoved" ref="eric6.MultiProject.MultiProjectBrowser.html#MultiProjectBrowser.__projectRemoved" />
--- a/Documentation/Source/eric6.MultiProject.MultiProjectBrowser.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.MultiProject.MultiProjectBrowser.html	Sat Nov 19 14:59:17 2016 +0100
@@ -96,6 +96,9 @@
 <td><a href="#MultiProjectBrowser.__projectAdded">__projectAdded</a></td>
 <td>Private slot to handle the addition of a project to the multi project.</td>
 </tr><tr>
+<td><a href="#MultiProjectBrowser.__projectClosed">__projectClosed</a></td>
+<td>Private slot to handle the closing of a project.</td>
+</tr><tr>
 <td><a href="#MultiProjectBrowser.__projectDataChanged">__projectDataChanged</a></td>
 <td>Private slot to handle the change of a project of the multi project.</td>
 </tr><tr>
@@ -121,16 +124,19 @@
 </table>
 <a NAME="MultiProjectBrowser.__init__" ID="MultiProjectBrowser.__init__"></a>
 <h4>MultiProjectBrowser (Constructor)</h4>
-<b>MultiProjectBrowser</b>(<i>multiProject, parent=None</i>)
+<b>MultiProjectBrowser</b>(<i>multiProject, project, parent=None</i>)
 <p>
         Constructor
 </p><dl>
-<dt><i>multiProject</i></dt>
+<dt><i>multiProject</i> (MultiProject)</dt>
 <dd>
 reference to the multi project object
-</dd><dt><i>parent</i></dt>
+</dd><dt><i>project</i> (Project)</dt>
 <dd>
-parent widget (QWidget)
+reference to the project object
+</dd><dt><i>parent</i> (QWidget)</dt>
+<dd>
+parent widget
 </dd>
 </dl><a NAME="MultiProjectBrowser.__addNewProject" ID="MultiProjectBrowser.__addNewProject"></a>
 <h4>MultiProjectBrowser.__addNewProject</h4>
@@ -233,7 +239,12 @@
 <dd>
 reference to the project data dictionary
 </dd>
-</dl><a NAME="MultiProjectBrowser.__projectDataChanged" ID="MultiProjectBrowser.__projectDataChanged"></a>
+</dl><a NAME="MultiProjectBrowser.__projectClosed" ID="MultiProjectBrowser.__projectClosed"></a>
+<h4>MultiProjectBrowser.__projectClosed</h4>
+<b>__projectClosed</b>(<i></i>)
+<p>
+        Private slot to handle the closing of a project.
+</p><a NAME="MultiProjectBrowser.__projectDataChanged" ID="MultiProjectBrowser.__projectDataChanged"></a>
 <h4>MultiProjectBrowser.__projectDataChanged</h4>
 <b>__projectDataChanged</b>(<i>project</i>)
 <p>
@@ -245,15 +256,10 @@
 </dd>
 </dl><a NAME="MultiProjectBrowser.__projectOpened" ID="MultiProjectBrowser.__projectOpened"></a>
 <h4>MultiProjectBrowser.__projectOpened</h4>
-<b>__projectOpened</b>(<i>projectfile</i>)
+<b>__projectOpened</b>(<i></i>)
 <p>
         Private slot to handle the opening of a project.
-</p><dl>
-<dt><i>projectfile</i></dt>
-<dd>
-file name of the opened project file (string)
-</dd>
-</dl><a NAME="MultiProjectBrowser.__projectRemoved" ID="MultiProjectBrowser.__projectRemoved"></a>
+</p><a NAME="MultiProjectBrowser.__projectRemoved" ID="MultiProjectBrowser.__projectRemoved"></a>
 <h4>MultiProjectBrowser.__projectRemoved</h4>
 <b>__projectRemoved</b>(<i>project</i>)
 <p>
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarkRenameDialog.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarkRenameDialog.html	Sat Nov 19 14:59:17 2016 +0100
@@ -103,7 +103,7 @@
 </p><dl>
 <dt>Returns:</dt>
 <dd>
-tuple naming the new and old bookmark names
+tuple naming the old and new bookmark names
             (string, string)
 </dd>
 </dl><a NAME="HgBookmarkRenameDialog.on_bookmarkCombo_editTextChanged" ID="HgBookmarkRenameDialog.on_bookmarkCombo_editTextChanged"></a>
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgBookmarksListDialog.html	Sat Nov 19 14:59:17 2016 +0100
@@ -60,6 +60,9 @@
 <td><a href="#HgBookmarksListDialog.__init__">HgBookmarksListDialog</a></td>
 <td>Constructor</td>
 </tr><tr>
+<td><a href="#HgBookmarksListDialog.__deleteBookmark">__deleteBookmark</a></td>
+<td>Private slot to delete the selected bookmark.</td>
+</tr><tr>
 <td><a href="#HgBookmarksListDialog.__finish">__finish</a></td>
 <td>Private slot called when the process finished or the user pressed the button.</td>
 </tr><tr>
@@ -72,12 +75,21 @@
 <td><a href="#HgBookmarksListDialog.__processOutputLine">__processOutputLine</a></td>
 <td>Private method to process the lines of output.</td>
 </tr><tr>
+<td><a href="#HgBookmarksListDialog.__pullBookmark">__pullBookmark</a></td>
+<td>Private slot to pull the selected bookmark.</td>
+</tr><tr>
+<td><a href="#HgBookmarksListDialog.__pushBookmark">__pushBookmark</a></td>
+<td>Private slot to push the selected bookmark.</td>
+</tr><tr>
 <td><a href="#HgBookmarksListDialog.__readStderr">__readStderr</a></td>
 <td>Private slot to handle the readyReadStderr signal.</td>
 </tr><tr>
 <td><a href="#HgBookmarksListDialog.__readStdout">__readStdout</a></td>
 <td>Private slot to handle the readyReadStdout signal.</td>
 </tr><tr>
+<td><a href="#HgBookmarksListDialog.__renameBookmark">__renameBookmark</a></td>
+<td>Private slot to rename the selected bookmark.</td>
+</tr><tr>
 <td><a href="#HgBookmarksListDialog.__resizeColumns">__resizeColumns</a></td>
 <td>Private method to resize the list columns.</td>
 </tr><tr>
@@ -87,12 +99,18 @@
 <td><a href="#HgBookmarksListDialog.__showError">__showError</a></td>
 <td>Private slot to show some error.</td>
 </tr><tr>
+<td><a href="#HgBookmarksListDialog.__switchTo">__switchTo</a></td>
+<td>Private slot to switch the working directory to the selected revision.</td>
+</tr><tr>
 <td><a href="#HgBookmarksListDialog.closeEvent">closeEvent</a></td>
 <td>Protected slot implementing a close event handler.</td>
 </tr><tr>
 <td><a href="#HgBookmarksListDialog.keyPressEvent">keyPressEvent</a></td>
 <td>Protected slot to handle a key press event.</td>
 </tr><tr>
+<td><a href="#HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested">on_bookmarksList_customContextMenuRequested</a></td>
+<td>Private slot to handle the context menu request.</td>
+</tr><tr>
 <td><a href="#HgBookmarksListDialog.on_buttonBox_clicked">on_buttonBox_clicked</a></td>
 <td>Private slot called by a button of the button box clicked.</td>
 </tr><tr>
@@ -129,7 +147,12 @@
 <dd>
 parent widget (QWidget)
 </dd>
-</dl><a NAME="HgBookmarksListDialog.__finish" ID="HgBookmarksListDialog.__finish"></a>
+</dl><a NAME="HgBookmarksListDialog.__deleteBookmark" ID="HgBookmarksListDialog.__deleteBookmark"></a>
+<h4>HgBookmarksListDialog.__deleteBookmark</h4>
+<b>__deleteBookmark</b>(<i></i>)
+<p>
+        Private slot to delete the selected bookmark.
+</p><a NAME="HgBookmarksListDialog.__finish" ID="HgBookmarksListDialog.__finish"></a>
 <h4>HgBookmarksListDialog.__finish</h4>
 <b>__finish</b>(<i></i>)
 <p>
@@ -177,7 +200,17 @@
 <dd>
 output line to be processed (string)
 </dd>
-</dl><a NAME="HgBookmarksListDialog.__readStderr" ID="HgBookmarksListDialog.__readStderr"></a>
+</dl><a NAME="HgBookmarksListDialog.__pullBookmark" ID="HgBookmarksListDialog.__pullBookmark"></a>
+<h4>HgBookmarksListDialog.__pullBookmark</h4>
+<b>__pullBookmark</b>(<i></i>)
+<p>
+        Private slot to pull the selected bookmark.
+</p><a NAME="HgBookmarksListDialog.__pushBookmark" ID="HgBookmarksListDialog.__pushBookmark"></a>
+<h4>HgBookmarksListDialog.__pushBookmark</h4>
+<b>__pushBookmark</b>(<i></i>)
+<p>
+        Private slot to push the selected bookmark.
+</p><a NAME="HgBookmarksListDialog.__readStderr" ID="HgBookmarksListDialog.__readStderr"></a>
 <h4>HgBookmarksListDialog.__readStderr</h4>
 <b>__readStderr</b>(<i></i>)
 <p>
@@ -193,6 +226,11 @@
 </p><p>
         It reads the output of the process, formats it and inserts it into
         the contents pane.
+</p><a NAME="HgBookmarksListDialog.__renameBookmark" ID="HgBookmarksListDialog.__renameBookmark"></a>
+<h4>HgBookmarksListDialog.__renameBookmark</h4>
+<b>__renameBookmark</b>(<i></i>)
+<p>
+        Private slot to rename the selected bookmark.
 </p><a NAME="HgBookmarksListDialog.__resizeColumns" ID="HgBookmarksListDialog.__resizeColumns"></a>
 <h4>HgBookmarksListDialog.__resizeColumns</h4>
 <b>__resizeColumns</b>(<i></i>)
@@ -213,7 +251,12 @@
 <dd>
 error to be shown (string)
 </dd>
-</dl><a NAME="HgBookmarksListDialog.closeEvent" ID="HgBookmarksListDialog.closeEvent"></a>
+</dl><a NAME="HgBookmarksListDialog.__switchTo" ID="HgBookmarksListDialog.__switchTo"></a>
+<h4>HgBookmarksListDialog.__switchTo</h4>
+<b>__switchTo</b>(<i></i>)
+<p>
+        Private slot to switch the working directory to the selected revision.
+</p><a NAME="HgBookmarksListDialog.closeEvent" ID="HgBookmarksListDialog.closeEvent"></a>
 <h4>HgBookmarksListDialog.closeEvent</h4>
 <b>closeEvent</b>(<i>e</i>)
 <p>
@@ -233,6 +276,16 @@
 <dd>
 the key press event (QKeyEvent)
 </dd>
+</dl><a NAME="HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested" ID="HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested"></a>
+<h4>HgBookmarksListDialog.on_bookmarksList_customContextMenuRequested</h4>
+<b>on_bookmarksList_customContextMenuRequested</b>(<i>pos</i>)
+<p>
+        Private slot to handle the context menu request.
+</p><dl>
+<dt><i>pos</i> (QPoint)</dt>
+<dd>
+position the context menu was requetsed at
+</dd>
 </dl><a NAME="HgBookmarksListDialog.on_buttonBox_clicked" ID="HgBookmarksListDialog.on_buttonBox_clicked"></a>
 <h4>HgBookmarksListDialog.on_buttonBox_clicked</h4>
 <b>on_buttonBox_clicked</b>(<i>button</i>)
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgCommitDialog.html	Sat Nov 19 14:59:17 2016 +0100
@@ -69,14 +69,8 @@
 <td><a href="#HgCommitDialog.__init__">HgCommitDialog</a></td>
 <td>Constructor</td>
 </tr><tr>
-<td><a href="#HgCommitDialog.amend">amend</a></td>
-<td>Public method to retrieve the state of the amend flag.</td>
-</tr><tr>
-<td><a href="#HgCommitDialog.commitSubrepositories">commitSubrepositories</a></td>
-<td>Public method to retrieve the state of the commit sub-repositories flag.</td>
-</tr><tr>
-<td><a href="#HgCommitDialog.logMessage">logMessage</a></td>
-<td>Public method to retrieve the log message.</td>
+<td><a href="#HgCommitDialog.getCommitData">getCommitData</a></td>
+<td>Public method to retrieve the entered data for the commit.</td>
 </tr><tr>
 <td><a href="#HgCommitDialog.on_buttonBox_accepted">on_buttonBox_accepted</a></td>
 <td>Private slot called by the buttonBox accepted signal.</td>
@@ -117,36 +111,22 @@
 <dd>
 parent widget (QWidget)
 </dd>
-</dl><a NAME="HgCommitDialog.amend" ID="HgCommitDialog.amend"></a>
-<h4>HgCommitDialog.amend</h4>
-<b>amend</b>(<i></i>)
+</dl><a NAME="HgCommitDialog.getCommitData" ID="HgCommitDialog.getCommitData"></a>
+<h4>HgCommitDialog.getCommitData</h4>
+<b>getCommitData</b>(<i></i>)
 <p>
-        Public method to retrieve the state of the amend flag.
+        Public method to retrieve the entered data for the commit.
 </p><dl>
 <dt>Returns:</dt>
 <dd>
-state of the amend flag (boolean)
+tuple containing the log message, a flag indicating to amend
+            the last commit, a flag indicating to commit subrepositories as
+            well, name of the author and date/time of the commit
 </dd>
-</dl><a NAME="HgCommitDialog.commitSubrepositories" ID="HgCommitDialog.commitSubrepositories"></a>
-<h4>HgCommitDialog.commitSubrepositories</h4>
-<b>commitSubrepositories</b>(<i></i>)
-<p>
-        Public method to retrieve the state of the commit sub-repositories
-        flag.
-</p><dl>
-<dt>Returns:</dt>
+</dl><dl>
+<dt>Return Type:</dt>
 <dd>
-state of the sub-repositories flag (boolean)
-</dd>
-</dl><a NAME="HgCommitDialog.logMessage" ID="HgCommitDialog.logMessage"></a>
-<h4>HgCommitDialog.logMessage</h4>
-<b>logMessage</b>(<i></i>)
-<p>
-        Public method to retrieve the log message.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-the log message (string)
+tuple of str, bool, bool, str, str
 </dd>
 </dl><a NAME="HgCommitDialog.on_buttonBox_accepted" ID="HgCommitDialog.on_buttonBox_accepted"></a>
 <h4>HgCommitDialog.on_buttonBox_accepted</h4>
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgLogBrowserDialog.html	Sat Nov 19 14:59:17 2016 +0100
@@ -48,7 +48,7 @@
 QWidget, Ui_HgLogBrowserDialog
 <h3>Class Attributes</h3>
 <table>
-<tr><td>AuthorColumn</td></tr><tr><td>BranchColumn</td></tr><tr><td>ClosedIndicator</td></tr><tr><td>DateColumn</td></tr><tr><td>IconColumn</td></tr><tr><td>LargefilesCacheL</td></tr><tr><td>LargefilesCacheW</td></tr><tr><td>MessageColumn</td></tr><tr><td>PathSeparatorRe</td></tr><tr><td>PhaseColumn</td></tr><tr><td>RevisionColumn</td></tr><tr><td>TagsColumn</td></tr>
+<tr><td>AuthorColumn</td></tr><tr><td>BookmarksColumn</td></tr><tr><td>BranchColumn</td></tr><tr><td>ClosedIndicator</td></tr><tr><td>DateColumn</td></tr><tr><td>IconColumn</td></tr><tr><td>LargefilesCacheL</td></tr><tr><td>LargefilesCacheW</td></tr><tr><td>MessageColumn</td></tr><tr><td>PathSeparatorRe</td></tr><tr><td>PhaseColumn</td></tr><tr><td>RevisionColumn</td></tr><tr><td>TagsColumn</td></tr>
 </table>
 <h3>Class Methods</h3>
 <table>
@@ -63,6 +63,12 @@
 <td><a href="#HgLogBrowserDialog.__actionMode">__actionMode</a></td>
 <td>Private method to get the selected action mode.</td>
 </tr><tr>
+<td><a href="#HgLogBrowserDialog.__bookmarkActTriggered">__bookmarkActTriggered</a></td>
+<td>Private slot to bookmark the selected revision.</td>
+</tr><tr>
+<td><a href="#HgLogBrowserDialog.__bookmarkMoveActTriggered">__bookmarkMoveActTriggered</a></td>
+<td>Private slot to move a bookmark to the selected revision.</td>
+</tr><tr>
 <td><a href="#HgLogBrowserDialog.__branchColor">__branchColor</a></td>
 <td>Private method to calculate a color for a given branch name.</td>
 </tr><tr>
@@ -292,7 +298,17 @@
 <dd>
 selected action mode (string, one of filter or find)
 </dd>
-</dl><a NAME="HgLogBrowserDialog.__branchColor" ID="HgLogBrowserDialog.__branchColor"></a>
+</dl><a NAME="HgLogBrowserDialog.__bookmarkActTriggered" ID="HgLogBrowserDialog.__bookmarkActTriggered"></a>
+<h4>HgLogBrowserDialog.__bookmarkActTriggered</h4>
+<b>__bookmarkActTriggered</b>(<i></i>)
+<p>
+        Private slot to bookmark the selected revision.
+</p><a NAME="HgLogBrowserDialog.__bookmarkMoveActTriggered" ID="HgLogBrowserDialog.__bookmarkMoveActTriggered"></a>
+<h4>HgLogBrowserDialog.__bookmarkMoveActTriggered</h4>
+<b>__bookmarkMoveActTriggered</b>(<i></i>)
+<p>
+        Private slot to move a bookmark to the selected revision.
+</p><a NAME="HgLogBrowserDialog.__branchColor" ID="HgLogBrowserDialog.__branchColor"></a>
 <h4>HgLogBrowserDialog.__branchColor</h4>
 <b>__branchColor</b>(<i>branchName</i>)
 <p>
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgTagBranchListDialog.html	Sat Nov 19 14:59:17 2016 +0100
@@ -60,12 +60,18 @@
 <td><a href="#HgTagBranchListDialog.__init__">HgTagBranchListDialog</a></td>
 <td>Constructor</td>
 </tr><tr>
+<td><a href="#HgTagBranchListDialog.__closeBranch">__closeBranch</a></td>
+<td>Private slot to close the selected branch.</td>
+</tr><tr>
 <td><a href="#HgTagBranchListDialog.__finish">__finish</a></td>
 <td>Private slot called when the process finished or the user pressed the button.</td>
 </tr><tr>
 <td><a href="#HgTagBranchListDialog.__generateItem">__generateItem</a></td>
 <td>Private method to generate a tag item in the tag list.</td>
 </tr><tr>
+<td><a href="#HgTagBranchListDialog.__highlightCurrentBranch">__highlightCurrentBranch</a></td>
+<td>Private method to highlight the current branch with a bold font.</td>
+</tr><tr>
 <td><a href="#HgTagBranchListDialog.__procFinished">__procFinished</a></td>
 <td>Private slot connected to the finished signal.</td>
 </tr><tr>
@@ -87,6 +93,9 @@
 <td><a href="#HgTagBranchListDialog.__showError">__showError</a></td>
 <td>Private slot to show some error.</td>
 </tr><tr>
+<td><a href="#HgTagBranchListDialog.__switchTo">__switchTo</a></td>
+<td>Private slot to switch the working directory to the selected revision.</td>
+</tr><tr>
 <td><a href="#HgTagBranchListDialog.closeEvent">closeEvent</a></td>
 <td>Protected slot implementing a close event handler.</td>
 </tr><tr>
@@ -102,9 +111,15 @@
 <td><a href="#HgTagBranchListDialog.on_passwordCheckBox_toggled">on_passwordCheckBox_toggled</a></td>
 <td>Private slot to handle the password checkbox toggled.</td>
 </tr><tr>
+<td><a href="#HgTagBranchListDialog.on_refreshButton_clicked">on_refreshButton_clicked</a></td>
+<td>Private slot to refresh the log.</td>
+</tr><tr>
 <td><a href="#HgTagBranchListDialog.on_sendButton_clicked">on_sendButton_clicked</a></td>
 <td>Private slot to send the input to the subversion process.</td>
 </tr><tr>
+<td><a href="#HgTagBranchListDialog.on_tagList_customContextMenuRequested">on_tagList_customContextMenuRequested</a></td>
+<td>Private slot to handle the context menu request.</td>
+</tr><tr>
 <td><a href="#HgTagBranchListDialog.start">start</a></td>
 <td>Public slot to start the tags command.</td>
 </tr>
@@ -126,7 +141,12 @@
 <dd>
 parent widget (QWidget)
 </dd>
-</dl><a NAME="HgTagBranchListDialog.__finish" ID="HgTagBranchListDialog.__finish"></a>
+</dl><a NAME="HgTagBranchListDialog.__closeBranch" ID="HgTagBranchListDialog.__closeBranch"></a>
+<h4>HgTagBranchListDialog.__closeBranch</h4>
+<b>__closeBranch</b>(<i></i>)
+<p>
+        Private slot to close the selected branch.
+</p><a NAME="HgTagBranchListDialog.__finish" ID="HgTagBranchListDialog.__finish"></a>
 <h4>HgTagBranchListDialog.__finish</h4>
 <b>__finish</b>(<i></i>)
 <p>
@@ -151,7 +171,12 @@
 <dd>
 name of the tag/branch (string)
 </dd>
-</dl><a NAME="HgTagBranchListDialog.__procFinished" ID="HgTagBranchListDialog.__procFinished"></a>
+</dl><a NAME="HgTagBranchListDialog.__highlightCurrentBranch" ID="HgTagBranchListDialog.__highlightCurrentBranch"></a>
+<h4>HgTagBranchListDialog.__highlightCurrentBranch</h4>
+<b>__highlightCurrentBranch</b>(<i></i>)
+<p>
+        Private method to highlight the current branch with a bold font.
+</p><a NAME="HgTagBranchListDialog.__procFinished" ID="HgTagBranchListDialog.__procFinished"></a>
 <h4>HgTagBranchListDialog.__procFinished</h4>
 <b>__procFinished</b>(<i>exitCode, exitStatus</i>)
 <p>
@@ -210,7 +235,12 @@
 <dd>
 error to be shown (string)
 </dd>
-</dl><a NAME="HgTagBranchListDialog.closeEvent" ID="HgTagBranchListDialog.closeEvent"></a>
+</dl><a NAME="HgTagBranchListDialog.__switchTo" ID="HgTagBranchListDialog.__switchTo"></a>
+<h4>HgTagBranchListDialog.__switchTo</h4>
+<b>__switchTo</b>(<i></i>)
+<p>
+        Private slot to switch the working directory to the selected revision.
+</p><a NAME="HgTagBranchListDialog.closeEvent" ID="HgTagBranchListDialog.closeEvent"></a>
 <h4>HgTagBranchListDialog.closeEvent</h4>
 <b>closeEvent</b>(<i>e</i>)
 <p>
@@ -255,12 +285,27 @@
 <dd>
 flag indicating the status of the check box (boolean)
 </dd>
-</dl><a NAME="HgTagBranchListDialog.on_sendButton_clicked" ID="HgTagBranchListDialog.on_sendButton_clicked"></a>
+</dl><a NAME="HgTagBranchListDialog.on_refreshButton_clicked" ID="HgTagBranchListDialog.on_refreshButton_clicked"></a>
+<h4>HgTagBranchListDialog.on_refreshButton_clicked</h4>
+<b>on_refreshButton_clicked</b>(<i></i>)
+<p>
+        Private slot to refresh the log.
+</p><a NAME="HgTagBranchListDialog.on_sendButton_clicked" ID="HgTagBranchListDialog.on_sendButton_clicked"></a>
 <h4>HgTagBranchListDialog.on_sendButton_clicked</h4>
 <b>on_sendButton_clicked</b>(<i></i>)
 <p>
         Private slot to send the input to the subversion process.
-</p><a NAME="HgTagBranchListDialog.start" ID="HgTagBranchListDialog.start"></a>
+</p><a NAME="HgTagBranchListDialog.on_tagList_customContextMenuRequested" ID="HgTagBranchListDialog.on_tagList_customContextMenuRequested"></a>
+<h4>HgTagBranchListDialog.on_tagList_customContextMenuRequested</h4>
+<b>on_tagList_customContextMenuRequested</b>(<i>pos</i>)
+<p>
+        Private slot to handle the context menu request.
+</p><dl>
+<dt><i>pos</i> (QPoint)</dt>
+<dd>
+position the context menu was requetsed at
+</dd>
+</dl><a NAME="HgTagBranchListDialog.start" ID="HgTagBranchListDialog.start"></a>
 <h4>HgTagBranchListDialog.start</h4>
 <b>start</b>(<i>path, tags, tagsList, allTagsList</i>)
 <p>
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.hg.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.hg.html	Sat Nov 19 14:59:17 2016 +0100
@@ -212,6 +212,9 @@
 <td><a href="#Hg.hgGetBranchesList">hgGetBranchesList</a></td>
 <td>Public method to get the list of branches.</td>
 </tr><tr>
+<td><a href="#Hg.hgGetCurrentBranch">hgGetCurrentBranch</a></td>
+<td>Public method to get the current branch of the working directory.</td>
+</tr><tr>
 <td><a href="#Hg.hgGetTagsList">hgGetTagsList</a></td>
 <td>Public method to get the list of tags.</td>
 </tr><tr>
@@ -700,23 +703,32 @@
 </dd>
 </dl><a NAME="Hg.hgBookmarkDefine" ID="Hg.hgBookmarkDefine"></a>
 <h4>Hg.hgBookmarkDefine</h4>
-<b>hgBookmarkDefine</b>(<i>name</i>)
+<b>hgBookmarkDefine</b>(<i>name, revision=None, bookmark=None</i>)
 <p>
         Public method to define a bookmark.
 </p><dl>
 <dt><i>name</i></dt>
 <dd>
 file/directory name (string)
+</dd><dt><i>revision</i></dt>
+<dd>
+revision to set bookmark for (string)
+</dd><dt><i>bookmark</i></dt>
+<dd>
+name of the bookmark (string)
 </dd>
 </dl><a NAME="Hg.hgBookmarkDelete" ID="Hg.hgBookmarkDelete"></a>
 <h4>Hg.hgBookmarkDelete</h4>
-<b>hgBookmarkDelete</b>(<i>name</i>)
+<b>hgBookmarkDelete</b>(<i>name, bookmark=None</i>)
 <p>
         Public method to delete a bookmark.
 </p><dl>
 <dt><i>name</i></dt>
 <dd>
 file/directory name (string)
+</dd><dt><i>bookmark</i></dt>
+<dd>
+name of the bookmark (string)
 </dd>
 </dl><a NAME="Hg.hgBookmarkIncoming" ID="Hg.hgBookmarkIncoming"></a>
 <h4>Hg.hgBookmarkIncoming</h4>
@@ -730,13 +742,19 @@
 </dd>
 </dl><a NAME="Hg.hgBookmarkMove" ID="Hg.hgBookmarkMove"></a>
 <h4>Hg.hgBookmarkMove</h4>
-<b>hgBookmarkMove</b>(<i>name</i>)
+<b>hgBookmarkMove</b>(<i>name, revision=None, bookmark=None</i>)
 <p>
         Public method to move a bookmark.
 </p><dl>
 <dt><i>name</i></dt>
 <dd>
 file/directory name (string)
+</dd><dt><i>revision</i></dt>
+<dd>
+revision to set bookmark for (string)
+</dd><dt><i>bookmark</i></dt>
+<dd>
+name of the bookmark (string)
 </dd>
 </dl><a NAME="Hg.hgBookmarkOutgoing" ID="Hg.hgBookmarkOutgoing"></a>
 <h4>Hg.hgBookmarkOutgoing</h4>
@@ -750,7 +768,7 @@
 </dd>
 </dl><a NAME="Hg.hgBookmarkPull" ID="Hg.hgBookmarkPull"></a>
 <h4>Hg.hgBookmarkPull</h4>
-<b>hgBookmarkPull</b>(<i>name, current=False</i>)
+<b>hgBookmarkPull</b>(<i>name, current=False, bookmark=None</i>)
 <p>
         Public method to pull a bookmark from a remote repository.
 </p><dl>
@@ -760,10 +778,13 @@
 </dd><dt><i>current</i> (bool)</dt>
 <dd>
 flag indicating to pull the current bookmark
+</dd><dt><i>bookmark</i> (str)</dt>
+<dd>
+name of the bookmark
 </dd>
 </dl><a NAME="Hg.hgBookmarkPush" ID="Hg.hgBookmarkPush"></a>
 <h4>Hg.hgBookmarkPush</h4>
-<b>hgBookmarkPush</b>(<i>name, current=False</i>)
+<b>hgBookmarkPush</b>(<i>name, current=False, bookmark=None</i>)
 <p>
         Public method to push a bookmark to a remote repository.
 </p><dl>
@@ -773,16 +794,22 @@
 </dd><dt><i>current</i> (bool)</dt>
 <dd>
 flag indicating to push the current bookmark
+</dd><dt><i>bookmark</i> (str)</dt>
+<dd>
+name of the bookmark
 </dd>
 </dl><a NAME="Hg.hgBookmarkRename" ID="Hg.hgBookmarkRename"></a>
 <h4>Hg.hgBookmarkRename</h4>
-<b>hgBookmarkRename</b>(<i>name</i>)
+<b>hgBookmarkRename</b>(<i>name, renameInfo=None</i>)
 <p>
         Public method to rename a bookmark.
 </p><dl>
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-file/directory name (string)
+file/directory name
+</dd><dt><i>renameInfo</i> (tuple of str and str)</dt>
+<dd>
+old and new names of the bookmark
 </dd>
 </dl><a NAME="Hg.hgBranch" ID="Hg.hgBranch"></a>
 <h4>Hg.hgBranch</h4>
@@ -965,6 +992,26 @@
 <dd>
 list of branches (list of string)
 </dd>
+</dl><a NAME="Hg.hgGetCurrentBranch" ID="Hg.hgGetCurrentBranch"></a>
+<h4>Hg.hgGetCurrentBranch</h4>
+<b>hgGetCurrentBranch</b>(<i>repodir</i>)
+<p>
+        Public method to get the current branch of the working directory.
+</p><dl>
+<dt><i>repodir</i> (str)</dt>
+<dd>
+directory name of the repository
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+name of the current branch
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
 </dl><a NAME="Hg.hgGetTagsList" ID="Hg.hgGetTagsList"></a>
 <h4>Hg.hgGetTagsList</h4>
 <b>hgGetTagsList</b>(<i>repodir, withType=False</i>)
--- a/Documentation/Source/eric6.UI.Info.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/eric6.UI.Info.html	Sat Nov 19 14:59:17 2016 +0100
@@ -25,7 +25,7 @@
 </p>
 <h3>Global Attributes</h3>
 <table>
-<tr><td>BugAddress</td></tr><tr><td>Copyright</td></tr><tr><td>FeatureAddress</td></tr><tr><td>Homepage</td></tr><tr><td>Program</td></tr><tr><td>Version</td></tr>
+<tr><td>BugAddress</td></tr><tr><td>Copyright</td></tr><tr><td>FeatureAddress</td></tr><tr><td>Homepage</td></tr><tr><td>Program</td></tr><tr><td>Version</td></tr><tr><td>VersionOnly</td></tr>
 </table>
 <h3>Classes</h3>
 <table>
--- a/Documentation/Source/index-eric6.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/index-eric6.html	Sat Nov 19 14:59:17 2016 +0100
@@ -21,7 +21,7 @@
 <body>
 <h1>eric6</h1>
 <p>
-Package implementing the eric6 Python IDE (version 6.2).
+Package implementing the eric6 Python IDE.
 </p><p>
 To get more information about eric6 please see the
 <a href="http://eric-ide.python-projects.org/index.html">eric web site</a>.
--- a/Documentation/Source/index.html	Sat Nov 19 12:51:28 2016 +0100
+++ b/Documentation/Source/index.html	Sat Nov 19 14:59:17 2016 +0100
@@ -26,7 +26,7 @@
 <table>
 <tr>
 <td><a href="index-eric6.html">eric6</a></td>
-<td>Package implementing the eric6 Python IDE (version 6.2).</td>
+<td>Package implementing the eric6 Python IDE.</td>
 </tr>
 </table>
 
--- a/MultiProject/MultiProjectBrowser.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/MultiProject/MultiProjectBrowser.py	Sat Nov 19 14:59:17 2016 +0100
@@ -21,15 +21,20 @@
     """
     Class implementing the multi project browser.
     """
-    def __init__(self, multiProject, parent=None):
+    def __init__(self, multiProject, project, parent=None):
         """
         Constructor
         
         @param multiProject reference to the multi project object
-        @param parent parent widget (QWidget)
+        @type MultiProject
+        @param project reference to the project object
+        @type Project
+        @param parent parent widget
+        @type QWidget
         """
         super(MultiProjectBrowser, self).__init__(parent)
         self.multiProject = multiProject
+        self.project = project
         
         self.setWindowIcon(UI.PixmapCache.getIcon("eric.png"))
         self.setAlternatingRowColors(True)
@@ -52,8 +57,9 @@
             self.__projectAdded)
         self.multiProject.projectRemoved.connect(
             self.__projectRemoved)
-        self.multiProject.projectOpened.connect(
-            self.__projectOpened)
+        
+        self.project.projectOpened.connect(self.__projectOpened)
+        self.project.projectClosed.connect(self.__projectClosed)
         
         self.__createPopupMenu()
         self.setContextMenuPolicy(Qt.CustomContextMenu)
@@ -132,12 +138,11 @@
             
         self.sortItems(0, Qt.AscendingOrder)
     
-    def __projectOpened(self, projectfile):
+    def __projectOpened(self):
         """
         Private slot to handle the opening of a project.
-        
-        @param projectfile file name of the opened project file (string)
         """
+        projectfile = self.project.getProjectFile()
         project = {
             'name': "",
             'file': projectfile,
@@ -147,7 +152,21 @@
         }
         itm = self.__findProjectItem(project)
         if itm:
-            itm.setSelected(True)
+            font = itm.font(0)
+            font.setBold(True)
+            itm.setFont(0, font)
+    
+    def __projectClosed(self):
+        """
+        Private slot to handle the closing of a project.
+        """
+        for topIndex in range(self.topLevelItemCount()):
+            topItem = self.topLevelItem(topIndex)
+            for childIndex in range(topItem.childCount()):
+                childItem = topItem.child(childIndex)
+                font = childItem.font(0)
+                font.setBold(False)
+                childItem.setFont(0, font)
     
     def __contextMenuRequested(self, coord):
         """
--- a/Plugins/PluginAbout.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginAbout.py	Sat Nov 19 14:59:17 2016 +0100
@@ -23,7 +23,7 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "AboutPlugin"
 packageName = "__core__"
 shortDescription = "Show the About dialogs."
--- a/Plugins/PluginCodeStyleChecker.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginCodeStyleChecker.py	Sat Nov 19 14:59:17 2016 +0100
@@ -19,13 +19,14 @@
 from Utilities import determinePythonVersion
 
 import Preferences
+import UI.Info
 
 # Start-Of-Header
 name = "Code Style Checker Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "CodeStyleCheckerPlugin"
 packageName = "__core__"
 shortDescription = "Show the Python Code Style Checker dialog."
--- a/Plugins/PluginEricapi.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginEricapi.py	Sat Nov 19 14:59:17 2016 +0100
@@ -19,6 +19,7 @@
 from E5Gui.E5Action import E5Action
 
 import Utilities
+import UI.Info
 
 from eric6config import getConfig
 
@@ -27,7 +28,7 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "EricapiPlugin"
 packageName = "__core__"
 shortDescription = "Show the Ericapi dialogs."
--- a/Plugins/PluginEricdoc.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginEricdoc.py	Sat Nov 19 14:59:17 2016 +0100
@@ -19,6 +19,7 @@
 from E5Gui.E5Action import E5Action
 
 import Utilities
+import UI.Info
 
 from eric6config import getConfig
 
@@ -27,7 +28,7 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "EricdocPlugin"
 packageName = "__core__"
 shortDescription = "Show the Ericdoc dialogs."
--- a/Plugins/PluginSyntaxChecker.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginSyntaxChecker.py	Sat Nov 19 14:59:17 2016 +0100
@@ -20,13 +20,14 @@
 from Project.ProjectBrowserModel import ProjectBrowserFileItem
 
 import Preferences
+import UI.Info
 
 # Start-Of-Header
 name = "Syntax Checker Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "SyntaxCheckerPlugin"
 packageName = "__core__"
 shortDescription = "Show the Syntax Checker dialog."
--- a/Plugins/PluginTabnanny.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginTabnanny.py	Sat Nov 19 14:59:17 2016 +0100
@@ -19,13 +19,14 @@
 from Utilities import determinePythonVersion
 
 import Preferences
+import UI.Info
 
 # Start-Of-Header
 name = "Tabnanny Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "TabnannyPlugin"
 packageName = "__core__"
 shortDescription = "Show the Tabnanny dialog."
--- a/Plugins/PluginVcsMercurial.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginVcsMercurial.py	Sat Nov 19 14:59:17 2016 +0100
@@ -21,13 +21,14 @@
 from VcsPlugins.vcsMercurial.HgUtilities import getConfigPath
 
 import Utilities
+import UI.Info
 
 # Start-Of-Header
 name = "Mercurial Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = False
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 pluginType = "version_control"
 pluginTypename = "Mercurial"
 className = "VcsMercurialPlugin"
@@ -162,6 +163,9 @@
             "UseLogBrowser": True,
             "LogLimit": 20,
             "CommitMessages": 20,
+            "Commits": [],
+            "CommitAuthorsLimit": 20,
+            "CommitAuthors": [],
             "PullUpdate": False,
             "PreferUnbundle": False,
             "ServerPort": 8000,
@@ -248,10 +252,11 @@
                    "ConsiderHidden"]:
             return Preferences.toBool(Preferences.Prefs.settings.value(
                 "Mercurial/" + key, self.__mercurialDefaults[key]))
-        elif key in ["LogLimit", "CommitMessages", "ServerPort"]:
+        elif key in ["LogLimit", "CommitMessages", "CommitAuthorsLimit",
+                     "ServerPort"]:
             return int(Preferences.Prefs.settings.value(
                 "Mercurial/" + key, self.__mercurialDefaults[key]))
-        elif key in ["Commits"]:
+        elif key in ["Commits", "CommitAuthors"]:
             return Preferences.toList(Preferences.Prefs.settings.value(
                 "Mercurial/" + key))
         else:
--- a/Plugins/PluginVcsPySvn.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginVcsPySvn.py	Sat Nov 19 14:59:17 2016 +0100
@@ -17,6 +17,7 @@
 
 import Preferences
 from Preferences.Shortcuts import readShortcuts
+import UI.Info
 
 from VcsPlugins.vcsPySvn.SvnUtilities import getConfigPath, getServersPath
 
@@ -25,7 +26,7 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = False
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 pluginType = "version_control"
 pluginTypename = "PySvn"
 className = "VcsPySvnPlugin"
--- a/Plugins/PluginVcsSubversion.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginVcsSubversion.py	Sat Nov 19 14:59:17 2016 +0100
@@ -21,13 +21,14 @@
 from VcsPlugins.vcsSubversion.SvnUtilities import getConfigPath, getServersPath
 
 import Utilities
+import UI.Info
 
 # Start-Of-Header
 name = "Subversion Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = False
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 pluginType = "version_control"
 pluginTypename = "Subversion"
 className = "VcsSubversionPlugin"
--- a/Plugins/PluginVmListspace.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginVmListspace.py	Sat Nov 19 14:59:17 2016 +0100
@@ -14,12 +14,14 @@
 from PyQt5.QtCore import QT_TRANSLATE_NOOP, QObject
 from PyQt5.QtGui import QPixmap
 
+import UI.Info
+
 # Start-Of-Header
 name = "Listspace Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = False
 deactivateable = False
-version = "6.2.0"
+version = UI.Info.VersionOnly
 pluginType = "viewmanager"
 pluginTypename = "listspace"
 displayString = QT_TRANSLATE_NOOP('VmListspacePlugin', 'Listspace')
--- a/Plugins/PluginVmTabview.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginVmTabview.py	Sat Nov 19 14:59:17 2016 +0100
@@ -14,12 +14,14 @@
 from PyQt5.QtCore import QT_TRANSLATE_NOOP, QObject
 from PyQt5.QtGui import QPixmap
 
+import UI.Info
+
 # Start-Of-Header
 name = "Tabview Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = False
 deactivateable = False
-version = "6.2.0"
+version = UI.Info.VersionOnly
 pluginType = "viewmanager"
 pluginTypename = "tabview"
 displayString = QT_TRANSLATE_NOOP('VmTabviewPlugin', 'Tabbed View')
--- a/Plugins/PluginWizardE5MessageBox.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardE5MessageBox.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "E5MessageBox Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "E5MessageBoxWizard"
 packageName = "__core__"
 shortDescription = "Show the E5MessageBox wizard."
--- a/Plugins/PluginWizardPyRegExp.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardPyRegExp.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "Python re Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "PyRegExpWizard"
 packageName = "__core__"
 shortDescription = "Show the Python re wizard."
--- a/Plugins/PluginWizardQColorDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardQColorDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "QColorDialog Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "ColorDialogWizard"
 packageName = "__core__"
 shortDescription = "Show the QColorDialog wizard."
--- a/Plugins/PluginWizardQFileDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardQFileDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -18,12 +18,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "QFileDialog Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "FileDialogWizard"
 packageName = "__core__"
 shortDescription = "Show the QFileDialog wizard."
--- a/Plugins/PluginWizardQFontDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardQFontDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "QFontDialog Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "FontDialogWizard"
 packageName = "__core__"
 shortDescription = "Show the QFontDialog wizard."
--- a/Plugins/PluginWizardQInputDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardQInputDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "QInputDialog Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "InputDialogWizard"
 packageName = "__core__"
 shortDescription = "Show the QInputDialog wizard."
--- a/Plugins/PluginWizardQMessageBox.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardQMessageBox.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "QMessageBox Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "MessageBoxWizard"
 packageName = "__core__"
 shortDescription = "Show the QMessageBox wizard."
--- a/Plugins/PluginWizardQRegExp.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardQRegExp.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "QRegExp Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "QRegExpWizard"
 packageName = "__core__"
 shortDescription = "Show the QRegExp wizard."
--- a/Plugins/PluginWizardQRegularExpression.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/PluginWizardQRegularExpression.py	Sat Nov 19 14:59:17 2016 +0100
@@ -16,12 +16,14 @@
 from E5Gui.E5Action import E5Action
 from E5Gui import E5MessageBox
 
+import UI.Info
+
 # Start-Of-Header
 name = "QRegularExpression Wizard Plugin"
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "6.2.0"
+version = UI.Info.VersionOnly
 className = "QRegularExpressionWizard"
 packageName = "__core__"
 shortDescription = "Show the QRegularExpression wizard."
--- a/Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.py	Sat Nov 19 14:59:17 2016 +0100
@@ -53,6 +53,8 @@
         # commit
         self.commitSpinBox.setValue(
             self.__plugin.getPreferences("CommitMessages"))
+        self.commitAuthorsSpinBox.setValue(
+            self.__plugin.getPreferences("CommitAuthorsLimit"))
         # incoming/outgoing
         self.logBrowserCheckBox.setChecked(
             self.__plugin.getPreferences("UseLogBrowser"))
@@ -88,6 +90,8 @@
         # commit
         self.__plugin.setPreferences(
             "CommitMessages", self.commitSpinBox.value())
+        self.__plugin.setPreferences(
+            "CommitAuthorsLimit", self.commitAuthorsSpinBox.value())
         # incoming/outgoing
         self.__plugin.setPreferences(
             "UseLogBrowser", self.logBrowserCheckBox.isChecked())
--- a/Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui	Sat Nov 19 14:59:17 2016 +0100
@@ -134,15 +134,15 @@
      <property name="title">
       <string>Commit</string>
      </property>
-     <layout class="QHBoxLayout">
-      <item>
+     <layout class="QGridLayout" name="gridLayout_2">
+      <item row="0" column="0">
        <widget class="QLabel" name="label_2">
         <property name="text">
          <string>No. of commit messages to remember:</string>
         </property>
        </widget>
       </item>
-      <item>
+      <item row="0" column="1">
        <widget class="QSpinBox" name="commitSpinBox">
         <property name="toolTip">
          <string>Enter the number of commit messages to remember</string>
@@ -158,7 +158,7 @@
         </property>
        </widget>
       </item>
-      <item>
+      <item row="0" column="2">
        <spacer>
         <property name="orientation">
          <enum>Qt::Horizontal</enum>
@@ -171,6 +171,42 @@
         </property>
        </spacer>
       </item>
+      <item row="1" column="0">
+       <widget class="QLabel" name="label_6">
+        <property name="text">
+         <string>No. of commit authors to remember:</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="1">
+       <widget class="QSpinBox" name="commitAuthorsSpinBox">
+        <property name="toolTip">
+         <string>Enter the number of commit authors to remember</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+        </property>
+        <property name="minimum">
+         <number>1</number>
+        </property>
+        <property name="maximum">
+         <number>100</number>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="2">
+       <spacer name="spacer">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>329</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
      </layout>
     </widget>
    </item>
@@ -322,6 +358,7 @@
   <tabstop>hiddenChangesetsCheckBox</tabstop>
   <tabstop>logSpinBox</tabstop>
   <tabstop>commitSpinBox</tabstop>
+  <tabstop>commitAuthorsSpinBox</tabstop>
   <tabstop>logBrowserCheckBox</tabstop>
   <tabstop>pullUpdateCheckBox</tabstop>
   <tabstop>preferUnbundleCheckBox</tabstop>
--- a/Plugins/VcsPlugins/vcsMercurial/HgBookmarkRenameDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgBookmarkRenameDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -67,10 +67,10 @@
         """
         Public method to retrieve the entered data.
         
-        @return tuple naming the new and old bookmark names
+        @return tuple naming the old and new bookmark names
             (string, string)
         """
         return (
+            self.bookmarkCombo.currentText().replace(" ", "_"),
             self.nameEdit.text().replace(" ", "_"),
-            self.bookmarkCombo.currentText().replace(" ", "_")
         )
--- a/Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -15,14 +15,18 @@
 
 import os
 
-from PyQt5.QtCore import pyqtSlot, QProcess, Qt, QTimer, QCoreApplication
+from PyQt5.QtCore import pyqtSlot, QProcess, Qt, QTimer, QCoreApplication, \
+    QPoint
 from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QHeaderView, \
-    QTreeWidgetItem, QLineEdit
+    QTreeWidgetItem, QLineEdit, QMenu, QInputDialog
 
+from E5Gui.E5Application import e5App
 from E5Gui import E5MessageBox
 
 from .Ui_HgBookmarksListDialog import Ui_HgBookmarksListDialog
 
+import UI.PixmapCache
+
 
 class HgBookmarksListDialog(QDialog, Ui_HgBookmarksListDialog):
     """
@@ -50,8 +54,10 @@
         self.process = QProcess()
         self.vcs = vcs
         self.__bookmarksList = None
-        self.__path = None
+        self.__repoDir = None
         self.__hgClient = vcs.getClient()
+        self.__bookmarksDefined = False
+        self.__currentRevision = ""
         
         self.bookmarksList.headerItem().setText(
             self.bookmarksList.columnCount(), "")
@@ -91,6 +97,7 @@
             (list of strings)
         """
         self.bookmarksList.clear()
+        self.__bookmarksDefined = False
         
         self.errorGroup.hide()
         
@@ -99,7 +106,6 @@
         
         self.__bookmarksList = bookmarksList
         del self.__bookmarksList[:]     # clear the list
-        self.__path = path
         
         dname, fname = self.vcs.splitPath(path)
         
@@ -109,6 +115,7 @@
             repodir = os.path.dirname(repodir)
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
+        self.__repoDir = repodir
         
         args = self.vcs.initCommand("bookmarks")
         
@@ -176,8 +183,21 @@
             # no bookmarks defined
             self.__generateItem(
                 self.tr("no bookmarks defined"), "", "", "")
+            self.__bookmarksDefined = False
+        else:
+            self.__bookmarksDefined = True
+        
         self.__resizeColumns()
         self.__resort()
+        
+        # restore current item
+        if self.__currentRevision:
+            items = self.bookmarksList.findItems(
+                self.__currentRevision, Qt.MatchExactly, 0)
+            if items:
+                self.bookmarksList.setCurrentItem(items[0])
+                self.__currentRevision = ""
+                self.bookmarksList.setFocus(Qt.OtherFocusReason)
     
     def on_buttonBox_clicked(self, button):
         """
@@ -355,4 +375,118 @@
         """
         Private slot to refresh the status display.
         """
-        self.start(self.__path, self.__bookmarksList)
+        # save the current items commit ID
+        itm = self.bookmarksList.currentItem()
+        if itm is not None:
+            self.__currentRevision = itm.text(0)
+        else:
+            self.__currentRevision = ""
+        
+        self.start(self.__repoDir, self.__bookmarksList)
+    
+    @pyqtSlot(QPoint)
+    def on_bookmarksList_customContextMenuRequested(self, pos):
+        """
+        Private slot to handle the context menu request.
+        
+        @param pos position the context menu was requetsed at
+        @type QPoint
+        """
+        itm = self.bookmarksList.itemAt(pos)
+        if itm is not None:
+            menu = QMenu(self.bookmarksList)
+            menu.addAction(
+                UI.PixmapCache.getIcon("vcsSwitch.png"),
+                self.tr("Switch to"), self.__switchTo)
+            menu.addSeparator()
+            menu.addAction(
+                UI.PixmapCache.getIcon("deleteBookmark.png"),
+                self.tr("Delete"),  self.__deleteBookmark)
+            menu.addAction(
+                UI.PixmapCache.getIcon("renameBookmark.png"),
+                self.tr("Rename"), self.__renameBookmark)
+            menu.addSeparator()
+            act = menu.addAction(
+                UI.PixmapCache.getIcon("pullBookmark.png"),
+                self.tr("Pull"), self.__pullBookmark)
+            act.setEnabled(self.vcs.canPull())
+            act = menu.addAction(
+                UI.PixmapCache.getIcon("pushBookmark.png"),
+                self.tr("Push"), self.__pushBookmark)
+            act.setEnabled(self.vcs.canPush())
+            menu.popup(self.bookmarksList.mapToGlobal(pos))
+    
+    def __switchTo(self):
+        """
+        Private slot to switch the working directory to the selected revision.
+        """
+        itm = self.bookmarksList.currentItem()
+        bookmark = itm.text(3).strip()
+        if bookmark:
+            shouldReopen = self.vcs.vcsUpdate(
+                self.__repoDir, revision=bookmark)
+            if shouldReopen:
+                res = E5MessageBox.yesNo(
+                    None,
+                    self.tr("Switch"),
+                    self.tr(
+                        """The project should be reread. Do this now?"""),
+                    yesDefault=True)
+                if res:
+                    e5App().getObject("Project").reopenProject()
+                    return
+            
+            self.on_refreshButton_clicked()
+    
+    def __deleteBookmark(self):
+        """
+        Private slot to delete the selected bookmark.
+        """
+        itm = self.bookmarksList.currentItem()
+        bookmark = itm.text(3).strip()
+        if bookmark:
+            yes = E5MessageBox.yesNo(
+                self,
+                self.tr("Delete Bookmark"),
+                self.tr("""<p>Shall the bookmark <b>{0}</b> really be"""
+                        """ deleted?</p>""").format(bookmark))
+            if yes:
+                self.vcs.hgBookmarkDelete(self.__repoDir, bookmark=bookmark)
+                self.on_refreshButton_clicked()
+    
+    def __renameBookmark(self):
+        """
+        Private slot to rename the selected bookmark.
+        """
+        itm = self.bookmarksList.currentItem()
+        bookmark = itm.text(3).strip()
+        if bookmark:
+            newName, ok = QInputDialog.getText(
+                self,
+                self.tr("Rename Bookmark"),
+                self.tr("<p>Enter the new name for bookmark <b>{0}</b>:</p>")
+                    .format(bookmark),
+                QLineEdit.Normal)
+            if ok and bool(newName):
+                self.vcs.hgBookmarkRename(self.__repoDir, (bookmark, newName))
+                self.on_refreshButton_clicked()
+    
+    def __pullBookmark(self):
+        """
+        Private slot to pull the selected bookmark.
+        """
+        itm = self.bookmarksList.currentItem()
+        bookmark = itm.text(3).strip()
+        if bookmark:
+            self.vcs.hgBookmarkPull(self.__repoDir, bookmark=bookmark)
+            self.on_refreshButton_clicked()
+    
+    def __pushBookmark(self):
+        """
+        Private slot to push the selected bookmark.
+        """
+        itm = self.bookmarksList.currentItem()
+        bookmark = itm.text(3).strip()
+        if bookmark:
+            self.vcs.hgBookmarkPush(self.__repoDir, bookmark=bookmark)
+            self.on_refreshButton_clicked()
--- a/Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui	Sat Nov 19 14:59:17 2016 +0100
@@ -29,6 +29,9 @@
        <verstretch>2</verstretch>
       </sizepolicy>
      </property>
+     <property name="contextMenuPolicy">
+      <enum>Qt::CustomContextMenu</enum>
+     </property>
      <property name="whatsThis">
       <string>&lt;b&gt;Bookmarks List&lt;/b&gt;
 &lt;p&gt;This shows a list of the projects bookmarks.&lt;/p&gt;</string>
--- a/Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -9,13 +9,11 @@
 
 from __future__ import unicode_literals
 
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt
+from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QDateTime
 from PyQt5.QtWidgets import QWidget, QDialogButtonBox
 
 from .Ui_HgCommitDialog import Ui_HgCommitDialog
 
-import Preferences
-
 
 class HgCommitDialog(QWidget, Ui_HgCommitDialog):
     """
@@ -39,6 +37,8 @@
         super(HgCommitDialog, self).__init__(parent, Qt.WindowFlags(Qt.Window))
         self.setupUi(self)
         
+        self.__vcs = vcs
+        
         self.logEdit.setPlainText(msg)
         
         if mq:
@@ -53,46 +53,21 @@
         
         @param evt the event (QShowEvent)
         """
-        self.recentCommitMessages = Preferences.toList(
-            Preferences.Prefs.settings.value('Mercurial/Commits'))
+        commitMessages = self.__vcs.getPlugin().getPreferences('Commits')
         self.recentComboBox.clear()
         self.recentComboBox.addItem("")
-        self.recentComboBox.addItems(self.recentCommitMessages)
-    
-    def logMessage(self):
-        """
-        Public method to retrieve the log message.
+        for message in commitMessages:
+            abbrMsg = message[:60]
+            if len(message) > 60:
+                abbrMsg += "..."
+            self.recentComboBox.addItem(abbrMsg, message)
         
-        @return the log message (string)
-        """
-        msg = self.logEdit.toPlainText()
-        if msg:
-            if msg in self.recentCommitMessages:
-                self.recentCommitMessages.remove(msg)
-            self.recentCommitMessages.insert(0, msg)
-            no = int(Preferences.Prefs.settings.value(
-                'Mercurial/CommitMessages', 20))
-            del self.recentCommitMessages[no:]
-            Preferences.Prefs.settings.setValue(
-                'Mercurial/Commits', self.recentCommitMessages)
-        return msg
-    
-    def amend(self):
-        """
-        Public method to retrieve the state of the amend flag.
+        commitAuthors = self.__vcs.getPlugin().getPreferences('CommitAuthors')
+        self.authorComboBox.clear()
+        self.authorComboBox.addItem("")
+        self.authorComboBox.addItems(commitAuthors)
         
-        @return state of the amend flag (boolean)
-        """
-        return self.amendCheckBox.isChecked()
-    
-    def commitSubrepositories(self):
-        """
-        Public method to retrieve the state of the commit sub-repositories
-        flag.
-        
-        @return state of the sub-repositories flag (boolean)
-        """
-        return self.subrepoCheckBox.isChecked()
+        self.dateTimeEdit.setDateTime(QDateTime.currentDateTime())
     
     def on_buttonBox_clicked(self, button):
         """
@@ -125,4 +100,50 @@
         @param txt text of the selected entry (string)
         """
         if txt:
-            self.logEdit.setPlainText(txt)
+            self.logEdit.setPlainText(self.recentComboBox.currentData())
+    
+    def getCommitData(self):
+        """
+        Public method to retrieve the entered data for the commit.
+        
+        @return tuple containing the log message, a flag indicating to amend
+            the last commit, a flag indicating to commit subrepositories as
+            well, name of the author and date/time of the commit
+        @rtype tuple of str, bool, bool, str, str
+        """
+        msg = self.logEdit.toPlainText()
+        if msg:
+            commitMessages = self.__vcs.getPlugin().getPreferences('Commits')
+            if msg in commitMessages:
+                commitMessages.remove(msg)
+            commitMessages.insert(0, msg)
+            no = self.__vcs.getPlugin().getPreferences("CommitMessages")
+            del commitMessages[no:]
+            self.__vcs.getPlugin().setPreferences(
+                'Commits', commitMessages)
+        
+        author = self.authorComboBox.currentText()
+        if author:
+            commitAuthors = \
+                self.__vcs.getPlugin().getPreferences('CommitAuthors')
+            if author in commitAuthors:
+                commitAuthors.remove(author)
+            commitAuthors.insert(0, author)
+            no = self.__vcs.getPlugin().getPreferences("CommitAuthorsLimit")
+            del commitAuthors[no:]
+            self.__vcs.getPlugin().setPreferences(
+                'CommitAuthors', commitAuthors)
+        
+        if self.dateTimeGroup.isChecked():
+            dateTime = \
+                self.dateTimeEdit.dateTime().toString("yyyy-MM-dd hh:mm")
+        else:
+            dateTime = ""
+        
+        return (
+            msg,
+            self.amendCheckBox.isChecked(),
+            self.subrepoCheckBox.isChecked(),
+            author,
+            dateTime,
+        )
--- a/Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui	Sat Nov 19 14:59:17 2016 +0100
@@ -7,13 +7,13 @@
     <x>0</x>
     <y>0</y>
     <width>450</width>
-    <height>350</height>
+    <height>500</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string>Mercurial</string>
   </property>
-  <layout class="QVBoxLayout" name="verticalLayout_2">
+  <layout class="QVBoxLayout" name="verticalLayout_3">
    <item>
     <widget class="QGroupBox" name="logGroup">
      <property name="title">
@@ -75,6 +75,86 @@
     </widget>
    </item>
    <item>
+    <widget class="QGroupBox" name="groupBox">
+     <property name="title">
+      <string>Author</string>
+     </property>
+     <layout class="QVBoxLayout" name="verticalLayout_2">
+      <item>
+       <widget class="QLabel" name="label_3">
+        <property name="text">
+         <string>Enter author name to override the configured user:</string>
+        </property>
+        <property name="wordWrap">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QComboBox" name="authorComboBox">
+        <property name="toolTip">
+         <string>Enter an author name in order to override the configured one</string>
+        </property>
+        <property name="editable">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item>
+    <widget class="QGroupBox" name="dateTimeGroup">
+     <property name="toolTip">
+      <string>Select to give date and time information</string>
+     </property>
+     <property name="title">
+      <string>Date and Time</string>
+     </property>
+     <property name="checkable">
+      <bool>true</bool>
+     </property>
+     <property name="checked">
+      <bool>false</bool>
+     </property>
+     <layout class="QGridLayout" name="gridLayout_2">
+      <item row="0" column="2">
+       <spacer name="horizontalSpacer">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>241</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="0" column="0">
+       <widget class="QLabel" name="label_4">
+        <property name="text">
+         <string>Date/Time:</string>
+        </property>
+       </widget>
+      </item>
+      <item row="0" column="1">
+       <widget class="QDateTimeEdit" name="dateTimeEdit">
+        <property name="toolTip">
+         <string>Enter the date and time to be used</string>
+        </property>
+        <property name="displayFormat">
+         <string notr="true">yyyy-MM-dd hh:mm</string>
+        </property>
+        <property name="calendarPopup">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item>
     <widget class="QDialogButtonBox" name="buttonBox">
      <property name="orientation">
       <enum>Qt::Horizontal</enum>
@@ -93,7 +173,9 @@
   <tabstop>recentComboBox</tabstop>
   <tabstop>amendCheckBox</tabstop>
   <tabstop>subrepoCheckBox</tabstop>
-  <tabstop>buttonBox</tabstop>
+  <tabstop>authorComboBox</tabstop>
+  <tabstop>dateTimeGroup</tabstop>
+  <tabstop>dateTimeEdit</tabstop>
  </tabstops>
  <resources/>
  <connections/>
--- a/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -20,7 +20,7 @@
     QSize, QPoint
 from PyQt5.QtGui import QCursor, QColor, QPixmap, QPainter, QPen, QBrush, QIcon
 from PyQt5.QtWidgets import QWidget, QDialogButtonBox, QHeaderView, \
-    QTreeWidgetItem, QApplication, QLineEdit, QMenu
+    QTreeWidgetItem, QApplication, QLineEdit, QMenu, QInputDialog
 
 from E5Gui.E5Application import e5App
 from E5Gui import E5MessageBox
@@ -47,6 +47,7 @@
     DateColumn = 5
     MessageColumn = 6
     TagsColumn = 7
+    BookmarksColumn = 8
     
     LargefilesCacheL = ".hglf/"
     LargefilesCacheW = ".hglf\\"
@@ -180,6 +181,7 @@
         """
         self.__actionsMenu = QMenu()
         self.__graftAct = self.__actionsMenu.addAction(
+            UI.PixmapCache.getIcon("vcsGraft.png"),
             self.tr("Copy Changesets"), self.__graftActTriggered)
         self.__graftAct.setToolTip(self.tr(
             "Copy the selected changesets to the current branch"))
@@ -194,18 +196,34 @@
             """ the same current phase.</p>"""))
         
         self.__tagAct = self.__actionsMenu.addAction(
-            self.tr("Tag"), self.__tagActTriggered)
+            UI.PixmapCache.getIcon("vcsTag.png"), self.tr("Tag"),
+            self.__tagActTriggered)
         self.__tagAct.setToolTip(self.tr("Tag the selected revision"))
         
         self.__switchAct = self.__actionsMenu.addAction(
-            self.tr("Switch"), self.__switchActTriggered)
+            UI.PixmapCache.getIcon("vcsSwitch.png"), self.tr("Switch"),
+            self.__switchActTriggered)
         self.__switchAct.setToolTip(self.tr(
             "Switch the working directory to the selected revision"))
         
         self.__actionsMenu.addSeparator()
         
+        self.__bookmarkAct = self.__actionsMenu.addAction(
+            UI.PixmapCache.getIcon("addBookmark.png"),
+            self.tr("Define Bookmark..."), self.__bookmarkActTriggered)
+        self.__bookmarkAct.setToolTip(
+            self.tr("Bookmark the selected revision"))
+        self.__bookmarkMoveAct = self.__actionsMenu.addAction(
+            UI.PixmapCache.getIcon("moveBookmark.png"),
+            self.tr("Move Bookmark..."), self.__bookmarkMoveActTriggered)
+        self.__bookmarkMoveAct.setToolTip(
+            self.tr("Move bookmark to the selected revision"))
+        
+        self.__actionsMenu.addSeparator()
+        
         self.__pullAct = self.__actionsMenu.addAction(
-            self.tr("Pull Changes"), self.__pullActTriggered)
+            UI.PixmapCache.getIcon("vcsUpdate.png"), self.tr("Pull Changes"),
+            self.__pullActTriggered)
         self.__pullAct.setToolTip(self.tr(
             "Pull changes from a remote repository"))
         self.__lfPullAct = self.__actionsMenu.addAction(
@@ -220,11 +238,13 @@
         self.__actionsMenu.addSeparator()
         
         self.__pushAct = self.__actionsMenu.addAction(
+            UI.PixmapCache.getIcon("vcsCommit.png"),
             self.tr("Push Selected Changes"), self.__pushActTriggered)
         self.__pushAct.setToolTip(self.tr(
             "Push changes of the selected changeset and its ancestors"
             " to a remote repository"))
         self.__pushAllAct = self.__actionsMenu.addAction(
+            UI.PixmapCache.getIcon("vcsCommit.png"),
             self.tr("Push All Changes"), self.__pushAllActTriggered)
         self.__pushAllAct.setToolTip(self.tr(
             "Push all changes to a remote repository"))
@@ -232,6 +252,7 @@
         self.__actionsMenu.addSeparator()
         
         self.__stripAct = self.__actionsMenu.addAction(
+            UI.PixmapCache.getIcon("fileDelete.png"),
             self.tr("Strip Changesets"), self.__stripActTriggered)
         self.__stripAct.setToolTip(self.tr(
             "Strip changesets from a repository"))
@@ -1243,6 +1264,10 @@
             
             self.__tagAct.setEnabled(len(self.logTree.selectedItems()) == 1)
             self.__switchAct.setEnabled(len(self.logTree.selectedItems()) == 1)
+            self.__bookmarkAct.setEnabled(
+                len(self.logTree.selectedItems()) == 1)
+            self.__bookmarkMoveAct.setEnabled(
+                len(self.logTree.selectedItems()) == 1)
             
             if self.vcs.canPull():
                 self.__pullAct.setEnabled(True)
@@ -1710,6 +1735,21 @@
         if len(self.logTree.selectedItems()) == 1:
             itm = self.logTree.selectedItems()[0]
             rev = itm.text(self.RevisionColumn).strip().split(":", 1)[0]
+            bookmarks = [bm.strip() for bm in 
+                         itm.text(self.BookmarksColumn).strip().split(",")
+                         if bm.strip()]
+            if bookmarks:
+                bookmark, ok = QInputDialog.getItem(
+                    self,
+                    self.tr("Switch"),
+                    self.tr("Select bookmark to switch to (leave empty to"
+                            " use revision):"),
+                    [""] + bookmarks,
+                    0, False)
+                if not ok:
+                    return
+                if bookmark:
+                    rev = bookmark
             if rev:
                 shouldReopen = self.vcs.vcsUpdate(self.repodir, revision=rev)
                 if shouldReopen:
@@ -1726,6 +1766,50 @@
                 self.on_refreshButton_clicked()
     
     @pyqtSlot()
+    def __bookmarkActTriggered(self):
+        """
+        Private slot to bookmark the selected revision.
+        """
+        if len(self.logTree.selectedItems()) == 1:
+            itm = self.logTree.selectedItems()[0]
+            rev, changeset = \
+                itm.text(self.RevisionColumn).strip().split(":", 1)
+            bookmark, ok = QInputDialog.getText(
+                self,
+                self.tr("Define Bookmark"),
+                self.tr('Enter bookmark name for changeset "{0}":').format(
+                    changeset),
+                QLineEdit.Normal)
+            if ok and bool(bookmark):
+                self.vcs.hgBookmarkDefine(
+                    self.repodir, revision="rev({0})".format(rev),
+                    bookmark=bookmark)
+                self.on_refreshButton_clicked()
+    
+    @pyqtSlot()
+    def __bookmarkMoveActTriggered(self):
+        """
+        Private slot to move a bookmark to the selected revision.
+        """
+        if len(self.logTree.selectedItems()) == 1:
+            itm = self.logTree.selectedItems()[0]
+            rev, changeset = \
+                itm.text(self.RevisionColumn).strip().split(":", 1)
+            bookmarksList = self.vcs.hgGetBookmarksList(self.repodir)
+            bookmark, ok = QInputDialog.getItem(
+                self,
+                self.tr("Move Bookmark"),
+                self.tr('Select the bookmark to be moved  to changeset'
+                        ' "{0}":').format(changeset),
+                [""] + bookmarksList,
+                0, False)
+            if ok and bool(bookmark):
+                self.vcs.hgBookmarkMove(
+                    self.repodir, revision="rev({0})".format(rev),
+                    bookmark=bookmark)
+                self.on_refreshButton_clicked()
+    
+    @pyqtSlot()
     def __lfPullActTriggered(self):
         """
         Private slot to pull large files of selected revisions.
--- a/Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py	Sat Nov 19 14:59:17 2016 +0100
@@ -15,14 +15,18 @@
 
 import os
 
-from PyQt5.QtCore import pyqtSlot, QProcess, Qt, QTimer, QCoreApplication
+from PyQt5.QtCore import pyqtSlot, QProcess, Qt, QTimer, QCoreApplication, \
+    QPoint
 from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QHeaderView, \
-    QTreeWidgetItem, QLineEdit
+    QTreeWidgetItem, QLineEdit, QMenu
 
+from E5Gui.E5Application import e5App
 from E5Gui import E5MessageBox
 
 from .Ui_HgTagBranchListDialog import Ui_HgTagBranchListDialog
 
+import UI.PixmapCache
+
 
 class HgTagBranchListDialog(QDialog, Ui_HgTagBranchListDialog):
     """
@@ -42,10 +46,17 @@
         self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
         self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
         
+        self.refreshButton = self.buttonBox.addButton(
+            self.tr("&Refresh"), QDialogButtonBox.ActionRole)
+        self.refreshButton.setToolTip(
+            self.tr("Press to refresh the list"))
+        self.refreshButton.setEnabled(False)
+        
         self.vcs = vcs
         self.tagsList = None
         self.allTagsList = None
         self.__hgClient = vcs.getClient()
+        self.__currentRevision = ""
         
         self.tagList.headerItem().setText(self.tagList.columnCount(), "")
         self.tagList.header().setSortIndicator(3, Qt.AscendingOrder)
@@ -91,6 +102,7 @@
         @param allTagsList reference to string list all tags (list of strings)
         """
         self.errorGroup.hide()
+        self.tagList.clear()
         
         self.intercept = False
         self.tagsMode = tags
@@ -109,6 +121,7 @@
             repodir = os.path.dirname(repodir)
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
+        self.__repoDir = repodir
         
         if self.tagsMode:
             args = self.vcs.initCommand("tags")
@@ -163,6 +176,7 @@
         
         self.inputGroup.setEnabled(False)
         self.inputGroup.hide()
+        self.refreshButton.setEnabled(True)
         
         self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
         self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
@@ -170,8 +184,19 @@
         self.buttonBox.button(QDialogButtonBox.Close).setFocus(
             Qt.OtherFocusReason)
         
+        if not self.tagsMode:
+            self.__highlightCurrentBranch()
         self.__resizeColumns()
         self.__resort()
+        
+        # restore current item
+        if self.__currentRevision:
+            items = self.tagList.findItems(
+                self.__currentRevision, Qt.MatchExactly, 0)
+            if items:
+                self.tagList.setCurrentItem(items[0])
+                self.__currentRevision = ""
+                self.tagList.setFocus(Qt.OtherFocusReason)
     
     def on_buttonBox_clicked(self, button):
         """
@@ -186,6 +211,8 @@
                 self.__hgClient.cancel()
             else:
                 self.__finish()
+        elif button == self.refreshButton:
+            self.on_refreshButton_clicked()
     
     def __procFinished(self, exitCode, exitStatus):
         """
@@ -344,3 +371,124 @@
             evt.accept()
             return
         super(HgTagBranchListDialog, self).keyPressEvent(evt)
+    
+    def __highlightCurrentBranch(self):
+        """
+        Private method to highlight the current branch with a bold font.
+        """
+        currentBranch = self.vcs.hgGetCurrentBranch(self.__repoDir)
+        if currentBranch:
+            items = self.tagList.findItems(
+                currentBranch, Qt.MatchCaseSensitive, 3)
+            if len(items) == 1:
+                font = items[0].font(3)
+                font.setBold(True)
+                for column in range(4):
+                    items[0].setFont(column, font)
+    
+    @pyqtSlot()
+    def on_refreshButton_clicked(self):
+        """
+        Private slot to refresh the log.
+        """
+        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
+        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(True)
+        self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
+        
+        if not self.__hgClient:
+            self.inputGroup.setEnabled(True)
+            self.inputGroup.show()
+        self.refreshButton.setEnabled(False)
+        
+        # save the current items commit ID
+        itm = self.tagList.currentItem()
+        if itm is not None:
+            self.__currentRevision = itm.text(0)
+        else:
+            self.__currentRevision = ""
+        
+        self.start(self.__repoDir, self.tagsMode, self.tagsList,
+                   self.allTagsList)
+    
+    @pyqtSlot(QPoint)
+    def on_tagList_customContextMenuRequested(self, pos):
+        """
+        Private slot to handle the context menu request.
+        
+        @param pos position the context menu was requetsed at
+        @type QPoint
+        """
+        itm = self.tagList.itemAt(pos)
+        if itm is not None:
+            menu = QMenu(self.tagList)
+            if self.tagsMode:
+                menu.addAction(
+                    UI.PixmapCache.getIcon("vcsSwitch.png"),
+                    self.tr("Switch to"), self.__switchTo)
+            else:
+                menu.addAction(
+                    UI.PixmapCache.getIcon("vcsSwitch.png"),
+                    self.tr("Switch to"), self.__switchTo)
+                menu.addSeparator()
+                act = menu.addAction(self.tr("Close Branch"),
+                                     self.__closeBranch)
+                act.setEnabled(itm.text(3) != "default")
+            menu.popup(self.tagList.mapToGlobal(pos))
+    
+    def __switchTo(self):
+        """
+        Private slot to switch the working directory to the selected revision.
+        """
+        itm = self.tagList.currentItem()
+        rev = itm.text(0).strip()
+        if rev:
+            shouldReopen = self.vcs.vcsUpdate(self.__repoDir, revision=rev)
+            if shouldReopen:
+                res = E5MessageBox.yesNo(
+                    None,
+                    self.tr("Switch"),
+                    self.tr(
+                        """The project should be reread. Do this now?"""),
+                    yesDefault=True)
+                if res:
+                    e5App().getObject("Project").reopenProject()
+                    return
+            
+            self.on_refreshButton_clicked()
+    
+    def __closeBranch(self):
+        """
+        Private slot to close the selected branch.
+        """
+        itm = self.tagList.currentItem()
+        branch = itm.text(3).strip()
+        if branch == "default":
+            E5MessageBox.warning(
+                self,
+                self.tr("Close Branch"),
+                self.tr("""The branch "default" cannot be closed."""
+                        """ Aborting..."""))
+            return
+        
+        yes = E5MessageBox.yesNo(
+            self,
+            self.tr("Close Branch"),
+            self.tr("""<p>Shall the branch <b>{0}</b> really be closed?"""
+                    """</p>""").format(branch))
+        if yes:
+            switched = False
+            currentBranch = self.vcs.hgGetCurrentBranch(self.__repoDir)
+            if currentBranch != branch:
+                # step 1: switch to branch to be closed
+                switched = True
+                self.vcs.vcsUpdate(self.__repoDir, noDialog=True,
+                                   revision=branch)
+            self.vcs.vcsCommit(self.__repoDir,
+                               "Branch <{0}> closed.".format(branch),
+                               noDialog=True,
+                               closeBranch=True)
+            if switched:
+                self.vcs.vcsUpdate(self.__repoDir, noDialog=True,
+                                   revision=currentBranch)
+            
+            self.on_refreshButton_clicked()
--- a/Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui	Sat Nov 19 14:59:17 2016 +0100
@@ -29,6 +29,9 @@
        <verstretch>2</verstretch>
       </sizepolicy>
      </property>
+     <property name="contextMenuPolicy">
+      <enum>Qt::CustomContextMenu</enum>
+     </property>
      <property name="whatsThis">
       <string>&lt;b&gt;Tag/Branches List&lt;/b&gt;
 &lt;p&gt;This shows a list of the projects tags or branches.&lt;/p&gt;</string>
--- a/Plugins/VcsPlugins/vcsMercurial/hg.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/hg.py	Sat Nov 19 14:59:17 2016 +0100
@@ -493,9 +493,8 @@
                 return
         
         if self.__commitDialog is not None:
-            msg = self.__commitDialog.logMessage()
-            amend = self.__commitDialog.amend()
-            commitSubrepositories = self.__commitDialog.commitSubrepositories()
+            msg, amend, commitSubrepositories, author, dateTime = \
+                self.__commitDialog.getCommitData()
             self.__commitDialog.deleteLater()
             self.__commitDialog = None
             if amend and not msg:
@@ -503,6 +502,8 @@
         else:
             amend = False
             commitSubrepositories = False
+            author = ""
+            dateTime = ""
         
         if not msg and not amend:
             msg = '***'
@@ -518,6 +519,12 @@
                 args.append("--amend")
             if commitSubrepositories:
                 args.append("--subrepos")
+            if author:
+                args.append("--user")
+                args.append(author)
+            if dateTime:
+                args.append("--date")
+                args.append(dateTime)
         if msg:
             args.append("--message")
             args.append(msg)
@@ -2274,6 +2281,33 @@
         if res:
             dia.exec_()
     
+    def hgGetCurrentBranch(self, repodir):
+        """
+        Public method to get the current branch of the working directory.
+        
+        @param repodir directory name of the repository
+        @type str
+        @return name of the current branch
+        @rtype str
+        """
+        args = self.initCommand("branch")
+        
+        output = ""
+        if self.__client is None:
+            process = QProcess()
+            process.setWorkingDirectory(repodir)
+            process.start('hg', args)
+            procStarted = process.waitForStarted(5000)
+            if procStarted:
+                finished = process.waitForFinished(30000)
+                if finished and process.exitCode() == 0:
+                    output = str(process.readAllStandardOutput(),
+                                 self.getEncoding(), 'replace')
+        else:
+            output, error = self.__client.runcommand(args)
+        
+        return output.strip()
+    
     def hgEditUserConfig(self):
         """
         Public method used to edit the user configuration file.
@@ -3561,11 +3595,13 @@
         
         return self.bookmarksList[:]
     
-    def hgBookmarkDefine(self, name):
+    def hgBookmarkDefine(self, name, revision=None, bookmark=None):
         """
         Public method to define a bookmark.
         
         @param name file/directory name (string)
+        @param revision revision to set bookmark for (string)
+        @param bookmark name of the bookmark (string)
         """
         # find the root of the repo
         repodir = self.splitPath(name)[0]
@@ -3574,18 +3610,25 @@
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
         
-        from .HgBookmarkDialog import HgBookmarkDialog
-        dlg = HgBookmarkDialog(HgBookmarkDialog.DEFINE_MODE,
-                               self.hgGetTagsList(repodir),
-                               self.hgGetBranchesList(repodir),
-                               self.hgGetBookmarksList(repodir))
-        if dlg.exec_() == QDialog.Accepted:
-            rev, bookmark = dlg.getData()
-            
+        if bool(revision) and bool(bookmark):
+            ok = True
+        else:
+            from .HgBookmarkDialog import HgBookmarkDialog
+            dlg = HgBookmarkDialog(HgBookmarkDialog.DEFINE_MODE,
+                                   self.hgGetTagsList(repodir),
+                                   self.hgGetBranchesList(repodir),
+                                   self.hgGetBookmarksList(repodir))
+            if dlg.exec_() == QDialog.Accepted:
+                revision, bookmark = dlg.getData()
+                ok = True
+            else:
+                ok = False
+        
+        if ok:
             args = self.initCommand("bookmarks")
-            if rev:
+            if revision:
                 args.append("--rev")
-                args.append(rev)
+                args.append(revision)
             args.append(bookmark)
             
             dia = HgDialog(self.tr('Mercurial Bookmark'), self)
@@ -3593,11 +3636,12 @@
             if res:
                 dia.exec_()
     
-    def hgBookmarkDelete(self, name):
+    def hgBookmarkDelete(self, name, bookmark=None):
         """
         Public method to delete a bookmark.
         
         @param name file/directory name (string)
+        @param bookmark name of the bookmark (string)
         """
         # find the root of the repo
         repodir = self.splitPath(name)[0]
@@ -3606,12 +3650,15 @@
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
         
-        bookmark, ok = QInputDialog.getItem(
-            None,
-            self.tr("Delete Bookmark"),
-            self.tr("Select the bookmark to be deleted:"),
-            [""] + sorted(self.hgGetBookmarksList(repodir)),
-            0, True)
+        if bookmark:
+            ok = True
+        else:
+            bookmark, ok = QInputDialog.getItem(
+                None,
+                self.tr("Delete Bookmark"),
+                self.tr("Select the bookmark to be deleted:"),
+                [""] + sorted(self.hgGetBookmarksList(repodir)),
+                0, True)
         if ok and bookmark:
             args = self.initCommand("bookmarks")
             args.append("--delete")
@@ -3622,11 +3669,14 @@
             if res:
                 dia.exec_()
     
-    def hgBookmarkRename(self, name):
+    def hgBookmarkRename(self, name, renameInfo=None):
         """
         Public method to rename a bookmark.
         
-        @param name file/directory name (string)
+        @param name file/directory name
+        @type str
+        @param renameInfo old and new names of the bookmark
+        @type tuple of str and str
         """
         # find the root of the repo
         repodir = self.splitPath(name)[0]
@@ -3635,26 +3685,30 @@
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
         
-        from .HgBookmarkRenameDialog import HgBookmarkRenameDialog
-        dlg = HgBookmarkRenameDialog(self.hgGetBookmarksList(repodir))
-        if dlg.exec_() == QDialog.Accepted:
-            newName, oldName = dlg.getData()
-            
+        if not renameInfo:
+            from .HgBookmarkRenameDialog import HgBookmarkRenameDialog
+            dlg = HgBookmarkRenameDialog(self.hgGetBookmarksList(repodir))
+            if dlg.exec_() == QDialog.Accepted:
+                renameInfo = dlg.getData()
+        
+        if renameInfo:
             args = self.initCommand("bookmarks")
             args.append("--rename")
-            args.append(oldName)
-            args.append(newName)
+            args.append(renameInfo[0])
+            args.append(renameInfo[1])
             
             dia = HgDialog(self.tr('Rename Mercurial Bookmark'), self)
             res = dia.startProcess(args, repodir)
             if res:
                 dia.exec_()
     
-    def hgBookmarkMove(self, name):
+    def hgBookmarkMove(self, name, revision=None, bookmark=None):
         """
         Public method to move a bookmark.
         
         @param name file/directory name (string)
+        @param revision revision to set bookmark for (string)
+        @param bookmark name of the bookmark (string)
         """
         # find the root of the repo
         repodir = self.splitPath(name)[0]
@@ -3663,19 +3717,26 @@
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
         
-        from .HgBookmarkDialog import HgBookmarkDialog
-        dlg = HgBookmarkDialog(HgBookmarkDialog.MOVE_MODE,
-                               self.hgGetTagsList(repodir),
-                               self.hgGetBranchesList(repodir),
-                               self.hgGetBookmarksList(repodir))
-        if dlg.exec_() == QDialog.Accepted:
-            rev, bookmark = dlg.getData()
-            
+        if bool(revision) and bool(bookmark):
+            ok = True
+        else:
+            from .HgBookmarkDialog import HgBookmarkDialog
+            dlg = HgBookmarkDialog(HgBookmarkDialog.MOVE_MODE,
+                                   self.hgGetTagsList(repodir),
+                                   self.hgGetBranchesList(repodir),
+                                   self.hgGetBookmarksList(repodir))
+            if dlg.exec_() == QDialog.Accepted:
+                revision, bookmark = dlg.getData()
+                ok = True
+            else:
+                ok = False
+        
+        if ok:
             args = self.initCommand("bookmarks")
             args.append("--force")
-            if rev:
+            if revision:
                 args.append("--rev")
-                args.append(rev)
+                args.append(revision)
             args.append(bookmark)
             
             dia = HgDialog(self.tr('Move Mercurial Bookmark'), self)
@@ -3747,7 +3808,7 @@
         
         return bookmarksList
     
-    def hgBookmarkPull(self, name, current=False):
+    def hgBookmarkPull(self, name, current=False, bookmark=None):
         """
         Public method to pull a bookmark from a remote repository.
         
@@ -3755,6 +3816,8 @@
         @type str
         @param current flag indicating to pull the current bookmark
         @type bool
+        @param bookmark name of the bookmark
+        @type str
         """
         # find the root of the repo
         repodir = self.splitPath(name)[0]
@@ -3766,15 +3829,17 @@
         if current:
             bookmark = "."
             ok = True
+        elif bookmark:
+            ok = True
         else:
             bookmarks = self.__getInOutBookmarks(repodir, True)
-            
             bookmark, ok = QInputDialog.getItem(
                 None,
                 self.tr("Pull Bookmark"),
                 self.tr("Select the bookmark to be pulled:"),
                 [""] + sorted(bookmarks),
                 0, True)
+        
         if ok and bookmark:
             args = self.initCommand("pull")
             args.append('--bookmark')
@@ -3787,7 +3852,7 @@
             if res:
                 dia.exec_()
     
-    def hgBookmarkPush(self, name, current=False):
+    def hgBookmarkPush(self, name, current=False, bookmark=None):
         """
         Public method to push a bookmark to a remote repository.
         
@@ -3795,6 +3860,8 @@
         @type str
         @param current flag indicating to push the current bookmark
         @type bool
+        @param bookmark name of the bookmark
+        @type str
         """
         # find the root of the repo
         repodir = self.splitPath(name)[0]
@@ -3806,15 +3873,17 @@
         if current:
             bookmark = "."
             ok = True
+        elif bookmark:
+            ok = True
         else:
             bookmarks = self.__getInOutBookmarks(repodir, False)
-            
             bookmark, ok = QInputDialog.getItem(
                 None,
                 self.tr("Push Bookmark"),
                 self.tr("Select the bookmark to be push:"),
                 [""] + sorted(bookmarks),
                 0, True)
+        
         if ok and bookmark:
             args = self.initCommand("push")
             args.append('--bookmark')
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ThirdParty/CharDet/README.rst	Sat Nov 19 14:59:17 2016 +0100
@@ -0,0 +1,46 @@
+Chardet: The Universal Character Encoding Detector
+--------------------------------------------------
+
+Detects
+ - ASCII, UTF-8, UTF-16 (2 variants), UTF-32 (4 variants)
+ - Big5, GB2312, EUC-TW, HZ-GB-2312, ISO-2022-CN (Traditional and Simplified Chinese)
+ - EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP (Japanese)
+ - EUC-KR, ISO-2022-KR (Korean)
+ - KOI8-R, MacCyrillic, IBM855, IBM866, ISO-8859-5, windows-1251 (Cyrillic)
+ - ISO-8859-2, windows-1250 (Hungarian)
+ - ISO-8859-5, windows-1251 (Bulgarian)
+ - windows-1252 (English)
+ - ISO-8859-7, windows-1253 (Greek)
+ - ISO-8859-8, windows-1255 (Visual and Logical Hebrew)
+ - TIS-620 (Thai)
+
+Requires Python 2.6 or later
+
+Installation
+------------
+
+Install from `PyPI <https://pypi.python.org/pypi/chardet>`_::
+
+    pip install chardet
+
+
+Command-line Tool
+-----------------
+
+chardet comes with a command-line script which reports on the encodings of one
+or more files::
+
+    % chardetect somefile someotherfile
+    somefile: windows-1252 with confidence 0.5
+    someotherfile: ascii with confidence 1.0
+
+About
+-----
+
+This is a continuation of Mark Pilgrim's excellent chardet. Previously, two
+versions needed to be maintained: one that supported python 2.x and one that
+supported python 3.x.  We've recently merged with `Ian Cordasco <https://github.com/sigmavirus24>`_'s
+`charade <https://github.com/sigmavirus24/charade>`_ fork, so now we have one
+coherent version that works for Python 2.6+.
+
+:maintainer: Dan Blanchard
--- a/ThirdParty/CharDet/chardet/__init__.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/ThirdParty/CharDet/chardet/__init__.py	Sat Nov 19 14:59:17 2016 +0100
@@ -15,7 +15,7 @@
 # 02110-1301  USA
 ######################### END LICENSE BLOCK #########################
 
-__version__ = "2.2.1"
+__version__ = "2.3.0"
 from sys import version_info
 
 
--- a/ThirdParty/CharDet/chardet/chardetect.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/ThirdParty/CharDet/chardet/chardetect.py	Sat Nov 19 14:59:17 2016 +0100
@@ -12,34 +12,68 @@
 If no paths are provided, it takes its input from stdin.
 
 """
+
+from __future__ import absolute_import, print_function, unicode_literals
+
+import argparse
+import sys
 from io import open
-from sys import argv, stdin
 
+from chardet import __version__
 from chardet.universaldetector import UniversalDetector
 
 
-def description_of(file, name='stdin'):
-    """Return a string describing the probable encoding of a file."""
+def description_of(lines, name='stdin'):
+    """
+    Return a string describing the probable encoding of a file or
+    list of strings.
+
+    :param lines: The lines to get the encoding of.
+    :type lines: Iterable of bytes
+    :param name: Name of file or collection of lines
+    :type name: str
+    """
     u = UniversalDetector()
-    for line in file:
+    for line in lines:
         u.feed(line)
     u.close()
     result = u.result
     if result['encoding']:
-        return '%s: %s with confidence %s' % (name,
-                                              result['encoding'],
-                                              result['confidence'])
+        return '{0}: {1} with confidence {2}'.format(name, result['encoding'],
+                                                     result['confidence'])
     else:
-        return '%s: no result' % name
+        return '{0}: no result'.format(name)
 
 
-def main():
-    if len(argv) <= 1:
-        print(description_of(stdin))
-    else:
-        for path in argv[1:]:
-            with open(path, 'rb') as f:
-                print(description_of(f, path))
+def main(argv=None):
+    '''
+    Handles command line arguments and gets things started.
+
+    :param argv: List of arguments, as if specified on the command-line.
+                 If None, ``sys.argv[1:]`` is used instead.
+    :type argv: list of str
+    '''
+    # Get command line arguments
+    parser = argparse.ArgumentParser(
+        description="Takes one or more file paths and reports their detected \
+                     encodings",
+        formatter_class=argparse.ArgumentDefaultsHelpFormatter,
+        conflict_handler='resolve')
+    parser.add_argument('input',
+                        help='File whose encoding we would like to determine.',
+                        type=argparse.FileType('rb'), nargs='*',
+                        default=[sys.stdin])
+    parser.add_argument('--version', action='version',
+                        version='%(prog)s {0}'.format(__version__))
+    args = parser.parse_args(argv)
+
+    for f in args.input:
+        if f.isatty():
+            print("You are running chardetect interactively. Press " +
+                  "CTRL-D twice at the start of a blank line to signal the " +
+                  "end of your input. If you want help, run chardetect " +
+                  "--help\n", file=sys.stderr)
+        print(description_of(f, f.name))
 
 
 if __name__ == '__main__':
--- a/ThirdParty/CharDet/chardet/jpcntx.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/ThirdParty/CharDet/chardet/jpcntx.py	Sat Nov 19 14:59:17 2016 +0100
@@ -177,6 +177,12 @@
         return -1, 1
 
 class SJISContextAnalysis(JapaneseContextAnalysis):
+    def __init__(self):
+        self.charset_name = "SHIFT_JIS"
+
+    def get_charset_name(self):
+        return self.charset_name
+
     def get_order(self, aBuf):
         if not aBuf:
             return -1, 1
@@ -184,6 +190,8 @@
         first_char = wrap_ord(aBuf[0])
         if ((0x81 <= first_char <= 0x9F) or (0xE0 <= first_char <= 0xFC)):
             charLen = 2
+            if (first_char == 0x87) or (0xFA <= first_char <= 0xFC):
+                self.charset_name = "CP932"
         else:
             charLen = 1
 
--- a/ThirdParty/CharDet/chardet/latin1prober.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/ThirdParty/CharDet/chardet/latin1prober.py	Sat Nov 19 14:59:17 2016 +0100
@@ -129,11 +129,11 @@
         if total < 0.01:
             confidence = 0.0
         else:
-            confidence = ((self._mFreqCounter[3] / total)
-                          - (self._mFreqCounter[1] * 20.0 / total))
+            confidence = ((self._mFreqCounter[3] - self._mFreqCounter[1] * 20.0)
+                          / total)
         if confidence < 0.0:
             confidence = 0.0
         # lower the confidence of latin1 so that other more accurate
         # detector can take priority.
-        confidence = confidence * 0.5
+        confidence = confidence * 0.73
         return confidence
--- a/ThirdParty/CharDet/chardet/mbcssm.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/ThirdParty/CharDet/chardet/mbcssm.py	Sat Nov 19 14:59:17 2016 +0100
@@ -353,7 +353,7 @@
     2,2,2,2,2,2,2,2,  # 68 - 6f
     2,2,2,2,2,2,2,2,  # 70 - 77
     2,2,2,2,2,2,2,1,  # 78 - 7f
-    3,3,3,3,3,3,3,3,  # 80 - 87
+    3,3,3,3,3,2,2,3,  # 80 - 87
     3,3,3,3,3,3,3,3,  # 88 - 8f
     3,3,3,3,3,3,3,3,  # 90 - 97
     3,3,3,3,3,3,3,3,  # 98 - 9f
@@ -369,9 +369,8 @@
     2,2,2,2,2,2,2,2,  # d8 - df
     3,3,3,3,3,3,3,3,  # e0 - e7
     3,3,3,3,3,4,4,4,  # e8 - ef
-    4,4,4,4,4,4,4,4,  # f0 - f7
-    4,4,4,4,4,0,0,0   # f8 - ff
-)
+    3,3,3,3,3,3,3,3,  # f0 - f7
+    3,3,3,3,3,0,0,0)  # f8 - ff
 
 
 SJIS_st = (
@@ -571,5 +570,3 @@
                'stateTable': UTF8_st,
                'charLenTable': UTF8CharLenTable,
                'name': 'UTF-8'}
-
-# flake8: noqa
--- a/ThirdParty/CharDet/chardet/sjisprober.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/ThirdParty/CharDet/chardet/sjisprober.py	Sat Nov 19 14:59:17 2016 +0100
@@ -47,7 +47,7 @@
         self._mContextAnalyzer.reset()
 
     def get_charset_name(self):
-        return "SHIFT_JIS"
+        return self._mContextAnalyzer.get_charset_name()
 
     def feed(self, aBuf):
         aLen = len(aBuf)
--- a/ThirdParty/CharDet/chardet/universaldetector.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/ThirdParty/CharDet/chardet/universaldetector.py	Sat Nov 19 14:59:17 2016 +0100
@@ -71,9 +71,9 @@
 
         if not self._mGotData:
             # If the data starts with BOM, we know it is UTF
-            if aBuf[:3] == codecs.BOM:
+            if aBuf[:3] == codecs.BOM_UTF8:
                 # EF BB BF  UTF-8 with BOM
-                self.result = {'encoding': "UTF-8", 'confidence': 1.0}
+                self.result = {'encoding': "UTF-8-SIG", 'confidence': 1.0}
             elif aBuf[:4] == codecs.BOM_UTF32_LE:
                 # FF FE 00 00  UTF-32, little-endian BOM
                 self.result = {'encoding': "UTF-32LE", 'confidence': 1.0}
--- a/ThirdParty/CharDet/docs/css/chardet.css	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,299 +0,0 @@
-html {
-  margin: 0;
-  padding: 0;
-}
-
-body {
-  background-color: #fff;
-  color: #333;
-  font-family: 'Lucida Grande', Verdana, Geneva, Lucida, Helvetica, sans-serif;
-  font-size: 100%;
-  margin: 10px;
-  padding: 0;
-}
-
-a:link, a:visited { 
-  background-color: transparent;
-  color: #333;
-  text-decoration: none !important;
-  border-bottom: 1px dotted #333 !important;
-  text-decoration: underline;
-  border-bottom: 0;
-}
-
-a:hover {
-  background-color: transparent;
-  color: #993344;
-  text-decoration: none !important;
-  text-decoration: underline;
-  border-bottom: 1px dotted #993344 !important;
-  border-bottom: 0;
-}
-
-h1 {
-  margin: 8px 0 0 0;
-  padding: 0;
-  font-variant: small-caps;
-  letter-spacing: 0.1em;
-  font-family: "Book Antiqua", Georgia, Palatino, Times, "Times New Roman", serif;
-}
-
-h1 a:link, h1 a:visited, h1 a:hover {
-  background-color: transparent ! important;
-  color: #333 ! important;
-  text-decoration: none ! important;
-  border-bottom: 0px ! important;
-}
-
-#intro { 
-  width: 730px;
- }
-
-#intro ul {
-  margin-left: 0;
-  padding-left: 0;
-  display: inline;
-}
-
-#intro ul li {
-  display: inline;
-  font-size: small;
-}
-
-#intro ul li.li1 {
-}
-
-#intro p {
-  font-size: small;
-  font-weight: normal;
-  margin: 1.2em 0 0 0;
-  padding: 0;
-}
-
-.z {
-  float:left;
-  background: url(/img/shadowAlpha.png) no-repeat bottom right !important;
-  background: url(/img/shadow.gif) no-repeat bottom right;
-  margin: 15px 0 0 10px !important;
-  margin: 15px 0 0 5px;
-}
-
-.z .sectionInner {
-  background: none !important;
-  background: url(/img/shadow2.gif) no-repeat left top;
-  padding: 0 !important;
-  padding: 0 6px 6px 0;
-  }
-
-.z .sectionInner .sectionInner2 {
-  background-color: #fff;
-  border: 1px solid #a9a9a9;
-  padding: 4px;
-  margin: -6px 6px 6px -6px !important;
-  margin: 0;
-}
-
-.s { 
-  margin-left: 1em;
-  margin-right: 1em;
-  margin-bottom: 1em;
-}
-
-#main {
-  clear: left;
-  margin-left: 11px;
-  margin-bottom: 2em;
-  font-size: small;
-}
-
-#mainInner { 
-  margin-left: 1em;
-  margin-bottom: 2em;
-  padding-top: 1em;
-}
-
-.footernavigation {
-  clear: both;
-  font-size: small;
-  padding-bottom: 1em;
-  margin-bottom: 0;
-}
-
-.example, .section, .appendix {
-  line-height: 150%;
-}
-
-#breadcrumb {
-  width: 100%;
-  margin: 0 0 1em 0;
-  padding: 0;
-  line-height: 140%;
-  font-size: small;
-}
-
-#breadcrumb #thispage {
-  font-weight: bold;
-}
-
-/* ----- Python code syntax coloring ----- */
-.computeroutput, .traceback, .pykeyword, .pystring, .pycomment, .pyfunction, .pyclass {
-  background-color: white;
-}
-
-.pykeyword, .pyfunction, .pyclass {
-  font-weight: bold;
-}
-
-.computeroutput {
-  color: teal;
-}
-
-.traceback {
-  color: red;
-}
-
-.pykeyword {
-  color: navy;
-}
-
-.pystring {
-  color: olive;
-}
-
-.pycomment {
-  color: green;
-  font-style: italic;
-}
-
-.pyfunction {
-  color: teal;
-}
-
-.pyclass {
-  color: blue;
-}
-
-/* ----- standard stuff ----- */
-.skip {
-  display: none;
-}
-
-samp, code, tt, pre  {
-  font-weight: normal;
-  font-family: monospace;
-  font-size: small;
-}
-
-img {
-  border: 0;
-}
-
-acronym, abbr {
-/*  border-bottom: 1px dotted #333;*/
-  border-bottom: 0;
-  font-style: normal;
-  cursor: help;
-}
-
-hr {
-  clear: both;
-  margin-top: 2em !important;
-  margin-top: 1em;
-  height: 1px;
-  background-color: #cecbc6;
-  color: #cecbc6;
-}
-
-#footer {
-  text-align: center;
-  font-size: x-small;
-}
-
-body.docs .example {
-  border-left: 4px double #ddd !important;
-  border-left: 1px solid #ccc;
-  margin-left: 2em;
-  padding-left: 2em;
-}
-
-body.docs .example h3 {
-  font-size: 100%;
-}
-
-body.docs .example a.skip:link,
-body.docs .example a.skip:visited,
-body.docs .example a.skip:hover,
-body.docs .section h3.title a.skip:link,
-body.docs .section h3.title a.skip:visited,
-body.docs .section h3.title a.skip:hover,
-body.docs .appendix h3.title a.skip:link,
-body.docs .appendix h3.title a.skip:visited,
-body.docs .appendix h3.title a.skip:hover {
-  display: block;
-  float: left;
-  vertical-align: bottom;
-  text-decoration: none;
-  border-bottom: 0 ! important;
-  margin-right: 6px;
-}
-
-.reference-from h3,
-.seealso h3,
-.furtherreading h3 {
-  margin-top: -1.2em;
-  margin-left: -15px;
-  font-size: small;
-  width: 8em;
-  border: 1px solid #a9a9a9;
-  padding: 3px 3px 3px 13px;
-  background: white;
-  position: relative;
-}
-
-.reference-from, .seealso, .furtherreading {
-  width: 680px;
-  margin-top: 3em;
-  margin-bottom: 3em;
-  border: 1px solid #a9a9a9;
-}
-
-table.tip, table.note, table.warning, table.caution, table.important {
-  margin-bottom: 1em;
-}
-
-.table h3 {
-  display: none;
-}
-
-.table table td {
-  padding: 5px 1em 5px 1em;
-}
-
-div.download {
-  width: 708px;
-  margin-top: 3em;
-  margin-bottom: 3em;
-  border: 1px solid #a9a9a9;
-}
-
-div.download h3 {
-  margin-top: -1.2em;
-  margin-left: -15px;
-  font-size: small;
-  width: 10em;
-  border: 1px solid #a9a9a9;
-  padding: 3px 3px 3px 13px;
-  background-color: #fff;
-  color: #222;
-  position: relative;
-}
-
-div.download p {
-  margin-left: 1em;
-}
-
-div.download ul {
-  list-style: none;
-  padding-left: 1em;
-  margin-left: 0;
-}
--- a/ThirdParty/CharDet/docs/faq.html	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>Frequently asked questions [Universal Encoding Detector]</title>
-<link rel="stylesheet" href="css/chardet.css" type="text/css">
-<link rev="made" href="mailto:mark@diveintomark.org">
-<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
-<meta name="keywords" content="character, set, encoding, detection, Python, XML, feed">
-<link rel="start" href="index.html" title="Documentation">
-<link rel="up" href="index.html" title="Documentation">
-<link rel="prev" href="index.html" title="Documentation">
-<link rel="next" href="supported-encodings.html" title="Supported encodings">
-</head>
-<body id="chardet-feedparser-org" class="docs">
-<div class="z" id="intro"><div class="sectionInner"><div class="sectionInner2">
-<div class="s" id="pageHeader">
-<h1><a href="/">Universal Encoding Detector</a></h1>
-<p>Character encoding auto-detection in Python.  As smart as your browser.  Open source.</p>
-</div>
-<div class="s" id="quickSummary"><ul>
-<li class="li1">
-<a href="http://chardet.feedparser.org/download/">Download</a> ·</li>
-<li class="li2">
-<a href="index.html">Documentation</a> ·</li>
-<li class="li3"><a href="faq.html" title="Frequently Asked Questions">FAQ</a></li>
-</ul></div>
-</div></div></div>
-<div id="main"><div id="mainInner">
-<p id="breadcrumb">You are here: <a href="index.html">Documentation</a> → <span class="thispage">Frequently asked questions</span></p>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h2 class="title">
-<a name="faq" class="skip" href="#faq" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Frequently asked questions</h2></div></div>
-<div></div>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="faq.intro" class="skip" href="#faq.intro" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> What is character encoding?</h3></div></div>
-<div></div>
-</div>
-<p>When you think of “<span class="quote">text</span>”, you probably think of “<span class="quote">characters and symbols I see on my computer screen</span>”.  But computers don’t deal in characters and symbols; they deal in bits and bytes.  Every piece of text you’ve ever seen on a computer screen is actually stored in a particular <span class="emphasis"><em>character encoding</em></span>.  There are many different character encodings, some optimized for particular languages like Russian or Chinese or English, and others that can be used for multiple languages.  Very roughly speaking, the character encoding provides a mapping between the stuff you see on your screen and the stuff your computer actually stores in memory and on disk.</p>
-<p>In reality, it’s more complicated than that.  Many characters are common to multiple encodings, but each encoding may use a different sequence of bytes to actually store those characters in memory or on disk.  So you can think of the character encoding as a kind of decryption key for the text.  Whenever someone gives you a sequence of bytes and claims it’s “<span class="quote">text</span>”, you need to know what character encoding they used so you can decode the bytes into characters and display them (or process them, or whatever).</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="faq.what" class="skip" href="#faq.what" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> What is character encoding auto-detection?</h3></div></div>
-<div></div>
-</div>
-<p>It means taking a sequence of bytes in an unknown character encoding, and attempting to determine the encoding so you can read the text.  It’s like cracking a code when you don’t have the decryption key.</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="faq.impossible" class="skip" href="#faq.impossible" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Isn’t that impossible?</h3></div></div>
-<div></div>
-</div>
-<p>In general, yes.  However, some encodings are optimized for specific languages, and languages are not random.  Some character sequences pop up all the time, while other sequences make no sense.  A person fluent in English who opens a newspaper and finds “<span class="quote">txzqJv 2!dasd0a QqdKjvz</span>” will instantly recognize that that isn’t English (even though it is composed entirely of English letters).  By studying lots of “<span class="quote">typical</span>” text, a computer algorithm can simulate this kind of fluency and make an educated guess about a text’s language.</p>
-<p>In other words, encoding detection is really language detection, combined with knowledge of which languages tend to use which character encodings.</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="faq.who" class="skip" href="#faq.who" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Who wrote this detection algorithm?</h3></div></div>
-<div></div>
-</div>
-<p>This library is a port of <a href="http://lxr.mozilla.org/seamonkey/source/extensions/universalchardet/src/base/">the auto-detection code in Mozilla</a>.  I have attempted to maintain as much of the original structure as possible (mostly for selfish reasons, to make it easier to maintain the port as the original code evolves).  I have also retained the original authors’ comments, which are quite extensive and informative.</p>
-<p>You may also be interested in the research paper which led to the Mozilla implementation, <a href="http://www.mozilla.org/projects/intl/UniversalCharsetDetection.html">A composite approach to language/encoding detection</a>.</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="faq.yippie" class="skip" href="#faq.yippie" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Yippie!  Screw the standards, I’ll just auto-detect everything!</h3></div></div>
-<div></div>
-</div>
-<p>Don’t do that.  Virtually every format and protocol contains a method for specifying character encoding.</p>
-<div class="itemizedlist"><ul>
-<li>HTTP can define a <tt class="literal">charset</tt> parameter in the <tt class="literal">Content-type</tt> header.</li>
-<li>HTML documents can define a <tt class="literal">&lt;meta http-equiv="content-type"&gt;</tt> element in the <tt class="literal">&lt;head&gt;</tt> of a web page.</li>
-<li>XML documents can define an <tt class="literal">encoding</tt> attribute in the XML prolog.</li>
-</ul></div>
-<p>If text comes with explicit character encoding information, you should use it.  If the text has no explicit information, but the relevant standard defines a default encoding, you should use that.  (This is harder than it sounds, because standards can overlap.  If you fetch an XML document over HTTP, you need to support both standards <span class="emphasis"><em>and</em></span> figure out which one wins if they give you conflicting information.)</p>
-<p>Despite the complexity, it’s worthwhile to follow standards and <a href="http://www.w3.org/2001/tag/doc/mime-respect">respect explicit character encoding information</a>.  It will almost certainly be faster and more accurate than trying to auto-detect the encoding.  It will also make the world a better place, since your program will interoperate with other programs that follow the same standards.</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="faq.why" class="skip" href="#faq.why" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Why bother with auto-detection if it’s slow, inaccurate, and non-standard?</h3></div></div>
-<div></div>
-</div>
-<p>Sometimes you receive text with verifiably inaccurate encoding information.  Or text without any encoding information, and the specified default encoding doesn’t work.  There are also some poorly designed standards that have no way to specify encoding at all.</p>
-<p>If following the relevant standards gets you nowhere, <span class="emphasis"><em>and</em></span> you decide that processing the text is more important than maintaining interoperability, then you can try to auto-detect the character encoding as a last resort.  An example is my <a href="http://feedparser.org/">Universal Feed Parser</a>, which calls this auto-detection library <a href="http://feedparser.org/docs/character-encoding.html">only after exhausting all other options</a>.</p>
-</div>
-</div>
-<div class="footernavigation">
-<div style="float: left">← <a class="NavigationArrow" href="index.html">Documentation</a>
-</div>
-<div style="text-align: right">
-<a class="NavigationArrow" href="supported-encodings.html">Supported encodings</a> →</div>
-</div>
-<hr>
-<div id="footer"><p class="copyright">Copyright © 2006, 2007, 2008 Mark Pilgrim · <a href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> · <a href="license.html">Terms of use</a></p></div>
-</div></div>
-</body>
-</html>
--- a/ThirdParty/CharDet/docs/history.html	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>Revision history [Universal Encoding Detector]</title>
-<link rel="stylesheet" href="css/chardet.css" type="text/css">
-<link rev="made" href="mailto:mark@diveintomark.org">
-<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
-<meta name="keywords" content="character, set, encoding, detection, Python, XML, feed">
-<link rel="start" href="index.html" title="Documentation">
-<link rel="up" href="index.html" title="Documentation">
-<link rel="prev" href="how-it-works.html" title="How it works">
-<link rel="next" href="license.html" title="Terms of use">
-</head>
-<body id="chardet-feedparser-org" class="docs">
-<div class="z" id="intro"><div class="sectionInner"><div class="sectionInner2">
-<div class="s" id="pageHeader">
-<h1><a href="/">Universal Encoding Detector</a></h1>
-<p>Character encoding auto-detection in Python.  As smart as your browser.  Open source.</p>
-</div>
-<div class="s" id="quickSummary"><ul>
-<li class="li1">
-<a href="http://chardet.feedparser.org/download/">Download</a> ·</li>
-<li class="li2">
-<a href="index.html">Documentation</a> ·</li>
-<li class="li3"><a href="faq.html" title="Frequently Asked Questions">FAQ</a></li>
-</ul></div>
-</div></div></div>
-<div id="main"><div id="mainInner">
-<p id="breadcrumb">You are here: <a href="index.html">Documentation</a> → <span class="thispage">Revision history</span></p>
-<div class="section" lang="en">
-<div class="titlepage">
-<div>
-<div><h2 class="title">
-<a name="history" class="skip" href="#history" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Revision history</h2></div>
-<div><div class="abstract">
-<h3 class="title"></h3>
-<p><span class="application">Universal Encoding Detector</span> 2.0.1 is the latest version.</p>
-</div></div>
-</div>
-<div></div>
-</div>
-<div class="variablelist"><dl>
-<dt><span class="term"><tt class="constant">2.0.1</tt> (2009-11-10)</span></dt>
-<dd><div class="itemizedlist"><ul>
-<li>Migrated to <a href="http://code.google.com/p/chardet">http://code.google.com/p/chardet</a>
-</li>
-<li>Fixed minor typo in documentation</li>
-<li>Synchronized version numbers of Python 2 and Python 3 versions</li>
-</ul></div></dd>
-<dt><span class="term"><tt class="constant">1.0.1-py3</tt> (2009-06-26)</span></dt>
-<dd><div class="itemizedlist"><ul><li>Released Python 3 version</li></ul></div></dd>
-<dt><span class="term"><tt class="constant">1.0.1</tt> (2008-03-05)</span></dt>
-<dd><div class="itemizedlist"><ul>
-<li>fixed typo in detecting little endian UTF-16; closes <a href="http://code.google.com/p/feedparser/issues/detail?id=81">issue 81</a>
-</li>
-<li>fixed length of <tt class="constant">ISO2022JPCharLenTable</tt>; closes <a href="http://code.google.com/p/feedparser/issues/detail?id=98">issue 98</a>
-</li>
-</ul></div></dd>
-<dt><span class="term"><tt class="constant">1.0</tt> (2006-01-10)</span></dt>
-<dd><div class="itemizedlist"><ul><li>Initial release</li></ul></div></dd>
-</dl></div>
-</div>
-<div class="footernavigation">
-<div style="float: left">← <a class="NavigationArrow" href="how-it-works.html">How it works</a>
-</div>
-<div style="text-align: right">
-<a class="NavigationArrow" href="license.html">Terms of use</a> →</div>
-</div>
-<hr>
-<div id="footer"><p class="copyright">Copyright © 2006, 2007, 2008 Mark Pilgrim · <a href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> · <a href="license.html">Terms of use</a></p></div>
-</div></div>
-</body>
-</html>
--- a/ThirdParty/CharDet/docs/how-it-works.html	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>How it works [Universal Encoding Detector]</title>
-<link rel="stylesheet" href="css/chardet.css" type="text/css">
-<link rev="made" href="mailto:mark@diveintomark.org">
-<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
-<meta name="keywords" content="character, set, encoding, detection, Python, XML, feed">
-<link rel="start" href="index.html" title="Documentation">
-<link rel="up" href="index.html" title="Documentation">
-<link rel="prev" href="usage.html" title="Usage">
-<link rel="next" href="history.html" title="Revision history">
-</head>
-<body id="chardet-feedparser-org" class="docs">
-<div class="z" id="intro"><div class="sectionInner"><div class="sectionInner2">
-<div class="s" id="pageHeader">
-<h1><a href="/">Universal Encoding Detector</a></h1>
-<p>Character encoding auto-detection in Python.  As smart as your browser.  Open source.</p>
-</div>
-<div class="s" id="quickSummary"><ul>
-<li class="li1">
-<a href="http://chardet.feedparser.org/download/">Download</a> ·</li>
-<li class="li2">
-<a href="index.html">Documentation</a> ·</li>
-<li class="li3"><a href="faq.html" title="Frequently Asked Questions">FAQ</a></li>
-</ul></div>
-</div></div></div>
-<div id="main"><div id="mainInner">
-<p id="breadcrumb">You are here: <a href="index.html">Documentation</a> → <span class="thispage">How it works</span></p>
-<div class="section" lang="en">
-<div class="titlepage">
-<div>
-<div><h2 class="title">
-<a name="howitworks" class="skip" href="#howitworks" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> How it works</h2></div>
-<div><div class="abstract">
-<h3 class="title"></h3>
-<p>This is a brief guide to navigating the code itself.</p>
-</div></div>
-</div>
-<div></div>
-</div>
-<p>First, you should read <a href="http://www.mozilla.org/projects/intl/UniversalCharsetDetection.html">A composite approach to language/encoding detection</a>, which explains the detection algorithm and how it was derived.  This will help you later when you stumble across the huge character frequency distribution tables like <tt class="filename">big5freq.py</tt> and language models like <tt class="filename">langcyrillicmodel.py</tt>.</p>
-<p>The main entry point for the detection algorithm is <tt class="filename">universaldetector.py</tt>, which has one class, <tt class="classname">UniversalDetector</tt>.  (You might think the main entry point is the <tt class="function">detect</tt> function in <tt class="filename">chardet/__init__.py</tt>, but that’s really just a convenience function that creates a <tt class="classname">UniversalDetector</tt> object, calls it, and returns its result.)</p>
-<p>There are 5 categories of encodings that <tt class="classname">UniversalDetector</tt> handles:</p>
-<div class="orderedlist"><ol type="1">
-<li>
-<tt class="literal">UTF-n</tt> with a <acronym title="Byte Order Mark">BOM</acronym>.  This includes <tt class="literal">UTF-8</tt>, both <acronym title="Big Endian">BE</acronym> and <acronym title="Little Endian">LE</acronym> variants of <tt class="literal">UTF-16</tt>, and all 4 byte-order variants of <tt class="literal">UTF-32</tt>.</li>
-<li>Escaped encodings, which are entirely 7-bit <acronym>ASCII</acronym> compatible, where non-<acronym>ASCII</acronym> characters start with an escape sequence.  Examples: <tt class="literal">ISO-2022-JP</tt> (Japanese) and <tt class="literal">HZ-GB-2312</tt> (Chinese).</li>
-<li>Multi-byte encodings, where each character is represented by a variable number of bytes.  Examples: <tt class="literal">Big5</tt> (Chinese), <tt class="literal">SHIFT_JIS</tt> (Japanese), <tt class="literal">EUC-KR</tt> (Korean), and <tt class="literal">UTF-8</tt> without a <acronym title="Byte Order Mark">BOM</acronym>.</li>
-<li>Single-byte encodings, where each character is represented by one byte.  Examples: <tt class="literal">KOI8-R</tt> (Russian), <tt class="literal">windows-1255</tt> (Hebrew), and <tt class="literal">TIS-620</tt> (Thai).</li>
-<li>
-<tt class="literal">windows-1252</tt>, which is used primarily on Microsoft Windows by middle managers who don’t know a character encoding from a hole in the ground.</li>
-</ol></div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="how.bom" class="skip" href="#how.bom" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> <tt class="literal">UTF-n</tt> with a <acronym title="Byte Order Mark">BOM</acronym>
-</h3></div></div>
-<div></div>
-</div>
-<p>If the text starts with a <acronym title="Byte Order Mark">BOM</acronym>, we can reasonably assume that the text is encoded in <tt class="literal">UTF-8</tt>, <tt class="literal">UTF-16</tt>, or <tt class="literal">UTF-32</tt>.  (The <acronym title="Byte Order Mark">BOM</acronym> will tell us exactly which one; that’s what it’s for.)  This is handled inline in <tt class="classname">UniversalDetector</tt>, which returns the result immediately without any further processing.</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="how.esc" class="skip" href="#how.esc" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Escaped encodings</h3></div></div>
-<div></div>
-</div>
-<p>If the text contains a recognizable escape sequence that might indicate an escaped encoding, <tt class="classname">UniversalDetector</tt> creates an <tt class="classname">EscCharSetProber</tt> (defined in <tt class="filename">escprober.py</tt>) and feeds it the text.</p>
-<p><tt class="classname">EscCharSetProber</tt> creates a series of state machines, based on models of <tt class="literal">HZ-GB-2312</tt>, <tt class="literal">ISO-2022-CN</tt>, <tt class="literal">ISO-2022-JP</tt>, and <tt class="literal">ISO-2022-KR</tt> (defined in <tt class="filename">escsm.py</tt>).  <tt class="classname">EscCharSetProber</tt> feeds the text to each of these state machines, one byte at a time.  If any state machine ends up uniquely identifying the encoding, <tt class="classname">EscCharSetProber</tt> immediately returns the positive result to <tt class="classname">UniversalDetector</tt>, which returns it to the caller.  If any state machine hits an illegal sequence, it is dropped and processing continues with the other state machines.</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="how.mb" class="skip" href="#how.mb" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Multi-byte encodings</h3></div></div>
-<div></div>
-</div>
-<p>Assuming no <acronym title="Byte Order Mark">BOM</acronym>, <tt class="classname">UniversalDetector</tt> checks whether the text contains any high-bit characters.  If so, it creates a series of “<span class="quote">probers</span>” for detecting multi-byte encodings, single-byte encodings, and as a last resort, <tt class="literal">windows-1252</tt>.</p>
-<p>The multi-byte encoding prober, <tt class="classname">MBCSGroupProber</tt> (defined in <tt class="filename">mbcsgroupprober.py</tt>), is really just a shell that manages a group of other probers, one for each multi-byte encoding: <tt class="literal">Big5</tt>, <tt class="literal">GB2312</tt>, <tt class="literal">EUC-TW</tt>, <tt class="literal">EUC-KR</tt>, <tt class="literal">EUC-JP</tt>, <tt class="literal">SHIFT_JIS</tt>, and <tt class="literal">UTF-8</tt>.  <tt class="classname">MBCSGroupProber</tt> feeds the text to each of these encoding-specific probers and checks the results.  If a prober reports that it has found an illegal byte sequence, it is dropped from further processing (so that, for instance, any subsequent calls to <tt class="classname">UniversalDetector</tt>.<tt class="methodname">feed</tt> will skip that prober).  If a prober reports that it is reasonably confident that it has detected the encoding, <tt class="classname">MBCSGroupProber</tt> reports this positive result to <tt class="classname">UniversalDetector</tt>, which reports the result to the caller.</p>
-<p>Most of the multi-byte encoding probers are inherited from <tt class="classname">MultiByteCharSetProber</tt> (defined in <tt class="filename">mbcharsetprober.py</tt>), and simply hook up the appropriate state machine and distribution analyzer and let <tt class="classname">MultiByteCharSetProber</tt> do the rest of the work.  <tt class="classname">MultiByteCharSetProber</tt> runs the text through the encoding-specific state machine, one byte at a time, to look for byte sequences that would indicate a conclusive positive or negative result.  At the same time, <tt class="classname">MultiByteCharSetProber</tt> feeds the text to an encoding-specific distribution analyzer.</p>
-<p>The distribution analyzers (each defined in <tt class="filename">chardistribution.py</tt>) use language-specific models of which characters are used most frequently.  Once <tt class="classname">MultiByteCharSetProber</tt> has fed enough text to the distribution analyzer, it calculates a confidence rating based on the number of frequently-used characters, the total number of characters, and a language-specific distribution ratio.  If the confidence is high enough, <tt class="classname">MultiByteCharSetProber</tt> returns the result to <tt class="classname">MBCSGroupProber</tt>, which returns it to <tt class="classname">UniversalDetector</tt>, which returns it to the caller.</p>
-<p>The case of Japanese is more difficult.  Single-character distribution analysis is not always sufficient to distinguish between <tt class="literal">EUC-JP</tt> and <tt class="literal">SHIFT_JIS</tt>, so the <tt class="classname">SJISProber</tt> (defined in <tt class="filename">sjisprober.py</tt>) also uses 2-character distribution analysis.  <tt class="classname">SJISContextAnalysis</tt> and <tt class="classname">EUCJPContextAnalysis</tt> (both defined in <tt class="filename">jpcntx.py</tt> and both inheriting from a common <tt class="classname">JapaneseContextAnalysis</tt> class) check the frequency of Hiragana syllabary characters within the text.  Once enough text has been processed, they return a confidence level to <tt class="classname">SJISProber</tt>, which checks both analyzers and returns the higher confidence level to <tt class="classname">MBCSGroupProber</tt>.</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="how.sb" class="skip" href="#how.sb" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Single-byte encodings</h3></div></div>
-<div></div>
-</div>
-<p>The single-byte encoding prober, <tt class="classname">SBCSGroupProber</tt> (defined in <tt class="filename">sbcsgroupprober.py</tt>), is also just a shell that manages a group of other probers, one for each combination of single-byte encoding and language: <tt class="literal">windows-1251</tt>, <tt class="literal">KOI8-R</tt>, <tt class="literal">ISO-8859-5</tt>, <tt class="literal">MacCyrillic</tt>, <tt class="literal">IBM855</tt>, and <tt class="literal">IBM866</tt> (Russian); <tt class="literal">ISO-8859-7</tt> and <tt class="literal">windows-1253</tt> (Greek); <tt class="literal">ISO-8859-5</tt> and <tt class="literal">windows-1251</tt> (Bulgarian); <tt class="literal">ISO-8859-2</tt> and <tt class="literal">windows-1250</tt> (Hungarian); <tt class="literal">TIS-620</tt> (Thai); <tt class="literal">windows-1255</tt> and <tt class="literal">ISO-8859-8</tt> (Hebrew).</p>
-<p><tt class="classname">SBCSGroupProber</tt> feeds the text to each of these encoding+language-specific probers and checks the results.  These probers are all implemented as a single class, <tt class="classname">SingleByteCharSetProber</tt> (defined in <tt class="filename">sbcharsetprober.py</tt>), which takes a language model as an argument.  The language model defines how frequently different 2-character sequences appear in typical text.  <tt class="classname">SingleByteCharSetProber</tt> processes the text and tallies the most frequently used 2-character sequences.  Once enough text has been processed, it calculates a confidence level based on the number of frequently-used sequences, the total number of characters, and a language-specific distribution ratio.</p>
-<p>Hebrew is handled as a special case.  If the text appears to be Hebrew based on 2-character distribution analysis, <tt class="classname">HebrewProber</tt> (defined in <tt class="filename">hebrewprober.py</tt>) tries to distinguish between Visual Hebrew (where the source text actually stored “<span class="quote">backwards</span>” line-by-line, and then displayed verbatim so it can be read from right to left) and Logical Hebrew (where the source text is stored in reading order and then rendered right-to-left by the client).  Because certain characters are encoded differently based on whether they appear in the middle of or at the end of a word, we can make a reasonable guess about direction of the source text, and return the appropriate encoding (<tt class="literal">windows-1255</tt> for Logical Hebrew, or <tt class="literal">ISO-8859-8</tt> for Visual Hebrew).</p>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="how.windows1252" class="skip" href="#how.windows1252" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> windows-1252</h3></div></div>
-<div></div>
-</div>
-<p>If <tt class="classname">UniversalDetector</tt> detects a high-bit character in the text, but none of the other multi-byte or single-byte encoding probers return a confident result, it creates a <tt class="classname">Latin1Prober</tt> (defined in <tt class="filename">latin1prober.py</tt>) to try to detect English text in a <tt class="literal">windows-1252</tt> encoding.  This detection is inherently unreliable, because English letters are encoded in the same way in many different encodings.  The only way to distinguish <tt class="literal">windows-1252</tt> is through commonly used symbols like smart quotes, curly apostrophes, copyright symbols, and the like.  <tt class="classname">Latin1Prober</tt> automatically reduces its confidence rating to allow more accurate probers to win if at all possible.</p>
-</div>
-</div>
-<div class="footernavigation">
-<div style="float: left">← <a class="NavigationArrow" href="usage.html">Usage</a>
-</div>
-<div style="text-align: right">
-<a class="NavigationArrow" href="history.html">Revision history</a> →</div>
-</div>
-<hr>
-<div id="footer"><p class="copyright">Copyright © 2006, 2007, 2008 Mark Pilgrim · <a href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> · <a href="license.html">Terms of use</a></p></div>
-</div></div>
-</body>
-</html>
Binary file ThirdParty/CharDet/docs/images/caution.png has changed
Binary file ThirdParty/CharDet/docs/images/important.png has changed
Binary file ThirdParty/CharDet/docs/images/note.png has changed
Binary file ThirdParty/CharDet/docs/images/permalink.gif has changed
Binary file ThirdParty/CharDet/docs/images/tip.png has changed
Binary file ThirdParty/CharDet/docs/images/warning.png has changed
--- a/ThirdParty/CharDet/docs/index.html	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>Documentation [Universal Encoding Detector]</title>
-<link rel="stylesheet" href="css/chardet.css" type="text/css">
-<link rev="made" href="mailto:mark@diveintomark.org">
-<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
-<meta name="keywords" content="character, set, encoding, detection, Python, XML, feed">
-<link rel="start" href="index.html" title="Documentation">
-<link rel="next" href="faq.html" title="Frequently asked questions">
-</head>
-<body id="chardet-feedparser-org" class="docs">
-<div class="z" id="intro"><div class="sectionInner"><div class="sectionInner2">
-<div class="s" id="pageHeader">
-<h1><a href="/">Universal Encoding Detector</a></h1>
-<p>Character encoding auto-detection in Python.  As smart as your browser.  Open source.</p>
-</div>
-<div class="s" id="quickSummary"><ul>
-<li class="li1">
-<a href="http://chardet.feedparser.org/download/">Download</a> ·</li>
-<li class="li2">
-<a href="index.html">Documentation</a> ·</li>
-<li class="li3"><a href="faq.html" title="Frequently Asked Questions">FAQ</a></li>
-</ul></div>
-</div></div></div>
-<div id="main"><div id="mainInner">
-<p id="breadcrumb">You are here: <span class="thispage">Documentation</span></p>
-<div class="article" lang="en">
-<div class="titlepage">
-<div></div>
-<div></div>
-</div>
-<div class="toc"><ul>
-<li>
-<span class="section"><a href="faq.html">Frequently asked questions</a></span><ul>
-<li><span class="section"><a href="faq.html#faq.intro">What is character encoding?</a></span></li>
-<li><span class="section"><a href="faq.html#faq.what">What is character encoding auto-detection?</a></span></li>
-<li><span class="section"><a href="faq.html#faq.impossible">Isn’t that impossible?</a></span></li>
-<li><span class="section"><a href="faq.html#faq.who">Who wrote this detection algorithm?</a></span></li>
-<li><span class="section"><a href="faq.html#faq.yippie">Yippie!  Screw the standards, I’ll just auto-detect everything!</a></span></li>
-<li><span class="section"><a href="faq.html#faq.why">Why bother with auto-detection if it’s slow, inaccurate, and non-standard?</a></span></li>
-</ul>
-</li>
-<li><span class="section"><a href="supported-encodings.html">Supported encodings</a></span></li>
-<li>
-<span class="section"><a href="usage.html">Usage</a></span><ul>
-<li><span class="section"><a href="usage.html#usage.basic">Basic usage</a></span></li>
-<li><span class="section"><a href="usage.html#usage.advanced">Advanced usage</a></span></li>
-</ul>
-</li>
-<li>
-<span class="section"><a href="how-it-works.html">How it works</a></span><ul>
-<li><span class="section"><a href="how-it-works.html#how.bom">UTF-n with a BOM</a></span></li>
-<li><span class="section"><a href="how-it-works.html#how.esc">Escaped encodings</a></span></li>
-<li><span class="section"><a href="how-it-works.html#how.mb">Multi-byte encodings</a></span></li>
-<li><span class="section"><a href="how-it-works.html#how.sb">Single-byte encodings</a></span></li>
-<li><span class="section"><a href="how-it-works.html#how.windows1252">windows-1252</a></span></li>
-</ul>
-</li>
-<li><span class="section"><a href="history.html">Revision history</a></span></li>
-<li><span class="appendix"><a href="license.html">Terms of use</a></span></li>
-</ul></div>
-</div>
-<div class="footernavigation">
-<div style="float: left"></div>
-<div style="text-align: right">
-<a class="NavigationArrow" href="faq.html">Frequently asked questions</a> →</div>
-</div>
-<hr>
-<div id="footer"><p class="copyright">Copyright © 2006, 2007, 2008 Mark Pilgrim · <a href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> · <a href="license.html">Terms of use</a></p></div>
-</div></div>
-</body>
-</html>
--- a/ThirdParty/CharDet/docs/license.html	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>Terms of use [Universal Encoding Detector]</title>
-<link rel="stylesheet" href="css/chardet.css" type="text/css">
-<link rev="made" href="mailto:mark@diveintomark.org">
-<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
-<meta name="keywords" content="character, set, encoding, detection, Python, XML, feed">
-<link rel="start" href="index.html" title="Documentation">
-<link rel="up" href="index.html" title="Documentation">
-<link rel="prev" href="history.html" title="Revision history">
-</head>
-<body id="chardet-feedparser-org" class="docs">
-<div class="z" id="intro"><div class="sectionInner"><div class="sectionInner2">
-<div class="s" id="pageHeader">
-<h1><a href="/">Universal Encoding Detector</a></h1>
-<p>Character encoding auto-detection in Python.  As smart as your browser.  Open source.</p>
-</div>
-<div class="s" id="quickSummary"><ul>
-<li class="li1">
-<a href="http://chardet.feedparser.org/download/">Download</a> ·</li>
-<li class="li2">
-<a href="index.html">Documentation</a> ·</li>
-<li class="li3"><a href="faq.html" title="Frequently Asked Questions">FAQ</a></li>
-</ul></div>
-</div></div></div>
-<div id="main"><div id="mainInner">
-<p id="breadcrumb">You are here: <a href="index.html">Documentation</a> → <span class="thispage">Terms of use</span></p>
-<div class="appendix" lang="en">
-<div class="titlepage">
-<div><div><h2 class="title">
-<a name="license" class="skip" href="#license" title="link to this appendix"><img src="images/permalink.gif" alt="[link]" title="link to this appendix" width="8" height="9"></a> Terms of use</h2></div></div>
-<div></div>
-</div>
-<h3>
-<a name="id663316" class="skip" href="#id663316" title="link to this bridgehead"><img src="images/permalink.gif" alt="[link]" title="link to this bridgehead" width="8" height="9"></a> Software</h3>
-<p>The <span class="application">Universal Encoding Detector</span> library is copyright © 2006-2009 Mark Pilgrim.  All rights reserved.</p>
-<p>Portions copyright © 1998-2001 Netscape Communications Corporation.  All rights reserved.</p>
-<p>The <span class="application">Universal Encoding Detector</span> library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.</p>
-<p>This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.</p>
-<p>You should have received a copy of the GNU Lesser General Public License along with this library (in a file named <tt class="literal">COPYING</tt>); if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA</p>
-<h3>
-<a name="id663370" class="skip" href="#id663370" title="link to this bridgehead"><img src="images/permalink.gif" alt="[link]" title="link to this bridgehead" width="8" height="9"></a> Documentation</h3>
-<p>The <span class="application">Universal Encoding Detector</span> documentation is copyright © 2006-2009 Mark Pilgrim. All rights reserved.</p>
-<p>Redistribution and use in source (XML DocBook) and “<span class="quote">compiled</span>” forms (SGML, HTML, PDF, PostScript, RTF and so forth) with or without modification, are permitted provided that the following conditions are met:</p>
-<div class="orderedlist"><ol type="1">
-<li>Redistributions of source code (XML DocBook) must retain the above copyright notice, this list of conditions and the following disclaimer unmodified.</li>
-<li>Redistributions in compiled form (transformed to other DTDs, converted to PDF, PostScript, RTF and other formats) must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</li>
-</ol></div>
-<p>THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR “<span class="quote">AS IS</span>” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p>
-</div>
-<div class="footernavigation">
-<div style="float: left">← <a class="NavigationArrow" href="history.html">Revision history</a>
-</div>
-<div style="text-align: right"></div>
-</div>
-<hr>
-<div id="footer"><p class="copyright">Copyright © 2006, 2007, 2008 Mark Pilgrim · <a href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> · <a href="license.html">Terms of use</a></p></div>
-</div></div>
-</body>
-</html>
--- a/ThirdParty/CharDet/docs/supported-encodings.html	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>Supported encodings [Universal Encoding Detector]</title>
-<link rel="stylesheet" href="css/chardet.css" type="text/css">
-<link rev="made" href="mailto:mark@diveintomark.org">
-<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
-<meta name="keywords" content="character, set, encoding, detection, Python, XML, feed">
-<link rel="start" href="index.html" title="Documentation">
-<link rel="up" href="index.html" title="Documentation">
-<link rel="prev" href="faq.html" title="Frequently asked questions">
-<link rel="next" href="usage.html" title="Usage">
-</head>
-<body id="chardet-feedparser-org" class="docs">
-<div class="z" id="intro"><div class="sectionInner"><div class="sectionInner2">
-<div class="s" id="pageHeader">
-<h1><a href="/">Universal Encoding Detector</a></h1>
-<p>Character encoding auto-detection in Python.  As smart as your browser.  Open source.</p>
-</div>
-<div class="s" id="quickSummary"><ul>
-<li class="li1">
-<a href="http://chardet.feedparser.org/download/">Download</a> ·</li>
-<li class="li2">
-<a href="index.html">Documentation</a> ·</li>
-<li class="li3"><a href="faq.html" title="Frequently Asked Questions">FAQ</a></li>
-</ul></div>
-</div></div></div>
-<div id="main"><div id="mainInner">
-<p id="breadcrumb">You are here: <a href="index.html">Documentation</a> → <span class="thispage">Supported encodings</span></p>
-<div class="section" lang="en">
-<div class="titlepage">
-<div>
-<div><h2 class="title">
-<a name="encodings" class="skip" href="#encodings" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Supported encodings</h2></div>
-<div><div class="abstract">
-<h3 class="title"></h3>
-<p><span class="application">Universal Encoding Detector</span> currently supports over two dozen character encodings.</p>
-</div></div>
-</div>
-<div></div>
-</div>
-<div class="itemizedlist"><ul>
-<li>
-<tt class="literal">Big5</tt>, <tt class="literal">GB2312</tt>/<tt class="literal">GB18030</tt>, <tt class="literal">EUC-TW</tt>, <tt class="literal">HZ-GB-2312</tt>, and <tt class="literal">ISO-2022-CN</tt> (Traditional and Simplified Chinese)</li>
-<li>
-<tt class="literal">EUC-JP</tt>, <tt class="literal">SHIFT_JIS</tt>, and <tt class="literal">ISO-2022-JP</tt> (Japanese)</li>
-<li>
-<tt class="literal">EUC-KR</tt> and <tt class="literal">ISO-2022-KR</tt> (Korean)</li>
-<li>
-<tt class="literal">KOI8-R</tt>, <tt class="literal">MacCyrillic</tt>, <tt class="literal">IBM855</tt>, <tt class="literal">IBM866</tt>, <tt class="literal">ISO-8859-5</tt>, and <tt class="literal">windows-1251</tt> (Russian)</li>
-<li>
-<tt class="literal">ISO-8859-2</tt> and <tt class="literal">windows-1250</tt> (Hungarian)</li>
-<li>
-<tt class="literal">ISO-8859-5</tt> and <tt class="literal">windows-1251</tt> (Bulgarian)</li>
-<li><tt class="literal">windows-1252</tt></li>
-<li>
-<tt class="literal">ISO-8859-7</tt> and <tt class="literal">windows-1253</tt> (Greek)</li>
-<li>
-<tt class="literal">ISO-8859-8</tt> and <tt class="literal">windows-1255</tt> (Visual and Logical Hebrew)</li>
-<li>
-<tt class="literal">TIS-620</tt> (Thai)</li>
-<li>
-<tt class="literal">UTF-32</tt> <acronym title="Big Endian">BE</acronym>, <acronym title="Little Endian">LE</acronym>, 3412-ordered, or 2143-ordered (with a <acronym title="Byte Order Mark">BOM</acronym>)</li>
-<li>
-<tt class="literal">UTF-16</tt> <acronym title="Big Endian">BE</acronym> or <acronym title="Little Endian">LE</acronym> (with a <acronym title="Byte Order Mark">BOM</acronym>)</li>
-<li>
-<tt class="literal">UTF-8</tt> (with or without a <acronym title="Byte Order Mark">BOM</acronym>)</li>
-<li><acronym>ASCII</acronym></li>
-</ul></div>
-<a name="id667094"></a><table class="caution" border="0" summary="">
-<tr><td rowspan="2" align="center" valign="top" width="1%"><img src="images/caution.png" alt="Caution" title="" width="24" height="24"></td></tr>
-<tr><td colspan="2" align="left" valign="top" width="99%">Due to inherent similarities between certain encodings, some encodings may be detected incorrectly.  In my tests, the most problematic case was Hungarian text encoded as <tt class="literal">ISO-8859-2</tt> or <tt class="literal">windows-1250</tt> (encoded as one but reported as the other).  Also, Greek text encoded as <tt class="literal">ISO-8859-7</tt> was often mis-reported as <tt class="literal">ISO-8859-2</tt>.  Your mileage may vary.</td></tr>
-</table>
-</div>
-<div class="footernavigation">
-<div style="float: left">← <a class="NavigationArrow" href="faq.html">Frequently asked questions</a>
-</div>
-<div style="text-align: right">
-<a class="NavigationArrow" href="usage.html">Usage</a> →</div>
-</div>
-<hr>
-<div id="footer"><p class="copyright">Copyright © 2006, 2007, 2008 Mark Pilgrim · <a href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> · <a href="license.html">Terms of use</a></p></div>
-</div></div>
-</body>
-</html>
--- a/ThirdParty/CharDet/docs/usage.html	Sat Nov 19 12:51:28 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>Usage [Universal Encoding Detector]</title>
-<link rel="stylesheet" href="css/chardet.css" type="text/css">
-<link rev="made" href="mailto:mark@diveintomark.org">
-<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
-<meta name="keywords" content="character, set, encoding, detection, Python, XML, feed">
-<link rel="start" href="index.html" title="Documentation">
-<link rel="up" href="index.html" title="Documentation">
-<link rel="prev" href="supported-encodings.html" title="Supported encodings">
-<link rel="next" href="how-it-works.html" title="How it works">
-</head>
-<body id="chardet-feedparser-org" class="docs">
-<div class="z" id="intro"><div class="sectionInner"><div class="sectionInner2">
-<div class="s" id="pageHeader">
-<h1><a href="/">Universal Encoding Detector</a></h1>
-<p>Character encoding auto-detection in Python.  As smart as your browser.  Open source.</p>
-</div>
-<div class="s" id="quickSummary"><ul>
-<li class="li1">
-<a href="http://chardet.feedparser.org/download/">Download</a> ·</li>
-<li class="li2">
-<a href="index.html">Documentation</a> ·</li>
-<li class="li3"><a href="faq.html" title="Frequently Asked Questions">FAQ</a></li>
-</ul></div>
-</div></div></div>
-<div id="main"><div id="mainInner">
-<p id="breadcrumb">You are here: <a href="index.html">Documentation</a> → <span class="thispage">Usage</span></p>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h2 class="title">
-<a name="usage" class="skip" href="#usage" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Usage</h2></div></div>
-<div></div>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="usage.basic" class="skip" href="#usage.basic" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Basic usage</h3></div></div>
-<div></div>
-</div>
-<p>The easiest way to use the <span class="application">Universal Encoding Detector</span> library is with the <tt class="function">detect</tt> function.</p>
-<div class="example">
-<a name="example.basic.detect" class="skip" href="#example.basic.detect" title="link to this example"><img src="images/permalink.gif" alt="[link]" title="link to this example" width="8" height="9"></a> <h3 class="title">Example: Using the <tt class="function">detect</tt> function</h3>
-<p>The <tt class="function">detect</tt> function takes one argument, a non-Unicode string.  It returns a dictionary containing the auto-detected character encoding and a confidence level from <tt class="constant">0</tt> to <tt class="constant">1</tt>.</p>
-<pre class="screen"><tt class="prompt">&gt;&gt;&gt; </tt><span class="userinput"><font color='navy'><b>import</b></font> urllib</span>
-<tt class="prompt">&gt;&gt;&gt; </tt><span class="userinput">rawdata = urllib.urlopen(<font color='olive'>'http://yahoo.co.jp/'</font>).read()</span>
-<tt class="prompt">&gt;&gt;&gt; </tt><span class="userinput"><font color='navy'><b>import</b></font> chardet</span>
-<tt class="prompt">&gt;&gt;&gt; </tt><span class="userinput">chardet.detect(rawdata)</span>
-<span class="computeroutput">{'encoding': 'EUC-JP', 'confidence': 0.99}</span></pre>
-</div>
-</div>
-<div class="section" lang="en">
-<div class="titlepage">
-<div><div><h3 class="title">
-<a name="usage.advanced" class="skip" href="#usage.advanced" title="link to this section"><img src="images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> Advanced usage</h3></div></div>
-<div></div>
-</div>
-<p>If you’re dealing with a large amount of text, you can call the <span class="application">Universal Encoding Detector</span> library incrementally, and it will stop as soon as it is confident enough to report its results.</p>
-<p>Create a <tt class="classname">UniversalDetector</tt> object, then call its <tt class="methodname">feed</tt> method repeatedly with each block of text.  If the detector reaches a minimum threshold of confidence, it will set <tt class="varname">detector.done</tt> to <tt class="constant">True</tt>.</p>
-<p>Once you’ve exhausted the source text, call <tt class="methodname">detector.close()</tt>, which will do some final calculations in case the detector didn’t hit its minimum confidence threshold earlier.  Then <tt class="varname">detector.result</tt> will be a dictionary containing the auto-detected character encoding and confidence level (the same as <a href="usage.html#example.basic.detect" title="Example: Using the detect function">the <tt class="function">chardet.detect</tt> function returns</a>).</p>
-<div class="example">
-<a name="example.multiline" class="skip" href="#example.multiline" title="link to this example"><img src="images/permalink.gif" alt="[link]" title="link to this example" width="8" height="9"></a> <h3 class="title">Example: Detecting encoding incrementally</h3>
-<pre class="programlisting python"><font color='navy'><b>import</b></font> urllib
-<font color='navy'><b>from</b></font> chardet.universaldetector <font color='navy'><b>import</b></font> UniversalDetector
-
-usock = urllib.urlopen(<font color='olive'>'http://yahoo.co.jp/'</font>)
-detector = UniversalDetector()
-<font color='navy'><b>for</b></font> line <font color='navy'><b>in</b></font> usock.readlines():
-    detector.feed(line)
-    <font color='navy'><b>if</b></font> detector.done: <font color='navy'><b>break</b></font>
-detector.close()
-usock.close()
-<font color='navy'><b>print</b></font> detector.result</pre>
-<pre class="screen"><span class="computeroutput">{'encoding': 'EUC-JP', 'confidence': 0.99}</span></pre>
-</div>
-<p>If you want to detect the encoding of multiple texts (such as separate files), you can re-use a single <tt class="classname">UniversalDetector</tt> object.  Just call <tt class="methodname">detector.reset()</tt> at the start of each file, call <tt class="methodname">detector.feed</tt> as many times as you like, and then call <tt class="methodname">detector.close()</tt> and check the <tt class="varname">detector.result</tt> dictionary for the file’s results.</p>
-<div class="example">
-<a name="advanced.multifile.multiline" class="skip" href="#advanced.multifile.multiline" title="link to this example"><img src="images/permalink.gif" alt="[link]" title="link to this example" width="8" height="9"></a> <h3 class="title">Example: Detecting encodings of multiple files</h3>
-<pre class="programlisting python"><font color='navy'><b>import</b></font> glob
-<font color='navy'><b>from</b></font> chardet.universaldetector <font color='navy'><b>import</b></font> UniversalDetector
-
-detector = UniversalDetector()
-<font color='navy'><b>for</b></font> filename <font color='navy'><b>in</b></font> glob.glob(<font color='olive'>'*.xml'</font>):
-    <font color='navy'><b>print</b></font> filename.ljust(60),
-    detector.reset()
-    <font color='navy'><b>for</b></font> line <font color='navy'><b>in</b></font> file(filename, <font color='olive'>'rb'</font>):
-        detector.feed(line)
-        <font color='navy'><b>if</b></font> detector.done: <font color='navy'><b>break</b></font>
-    detector.close()
-    <font color='navy'><b>print</b></font> detector.result
-</pre>
-</div>
-</div>
-</div>
-<div class="footernavigation">
-<div style="float: left">← <a class="NavigationArrow" href="supported-encodings.html">Supported encodings</a>
-</div>
-<div style="text-align: right">
-<a class="NavigationArrow" href="how-it-works.html">How it works</a> →</div>
-</div>
-<hr>
-<div id="footer"><p class="copyright">Copyright © 2006, 2007, 2008 Mark Pilgrim · <a href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> · <a href="license.html">Terms of use</a></p></div>
-</div></div>
-</body>
-</html>
--- a/UI/Info.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/UI/Info.py	Sat Nov 19 14:59:17 2016 +0100
@@ -11,6 +11,7 @@
 
 Program = 'eric6'
 Version = '@@VERSION@@ (rev. @@REVISION@@)'
+VersionOnly = '@@VERSION@@'
 Copyright = 'Copyright (c) 2002 - 2016 Detlev Offenbach' \
             ' <detlev@die-offenbachs.de>'
 BugAddress = 'eric-bugs@eric-ide.python-projects.org'
--- a/UI/UserInterface.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/UI/UserInterface.py	Sat Nov 19 14:59:17 2016 +0100
@@ -704,7 +704,8 @@
 
         # Create the multi project browser
         from MultiProject.MultiProjectBrowser import MultiProjectBrowser
-        self.multiProjectBrowser = MultiProjectBrowser(self.multiProject)
+        self.multiProjectBrowser = MultiProjectBrowser(self.multiProject,
+                                                       self.project)
         self.lToolbox.addItem(self.multiProjectBrowser,
                               UI.PixmapCache.getIcon("multiProjectViewer.png"),
                               self.tr("Multiproject-Viewer"))
@@ -827,7 +828,8 @@
         # Create the multi project browser
         logging.debug("Creating Multiproject Browser...")
         from MultiProject.MultiProjectBrowser import MultiProjectBrowser
-        self.multiProjectBrowser = MultiProjectBrowser(self.multiProject)
+        self.multiProjectBrowser = MultiProjectBrowser(self.multiProject,
+                                                       self.project)
         self.leftSidebar.addTab(
             self.multiProjectBrowser,
             UI.PixmapCache.getIcon("multiProjectViewer.png"),
--- a/__init__.py	Sat Nov 19 12:51:28 2016 +0100
+++ b/__init__.py	Sat Nov 19 14:59:17 2016 +0100
@@ -4,7 +4,7 @@
 #
 
 """
-Package implementing the eric6 Python IDE (version 6.2).
+Package implementing the eric6 Python IDE.
 
 To get more information about eric6 please see the
 <a href="http://eric-ide.python-projects.org/index.html">eric web site</a>.
--- a/changelog	Sat Nov 19 12:51:28 2016 +0100
+++ b/changelog	Sat Nov 19 14:59:17 2016 +0100
@@ -1,5 +1,15 @@
 Change Log
 ----------
+Version 16.xx:
+- bug fixes
+- Mercurial Interface
+  -- added context menu actions to the tags/branches list dialog
+  -- added bookmark actions to the Log Browser tools menu
+  -- added context menu actions to the bookmark list dialog
+  -- added possibility to enter a commit author and commit date/time
+- Third Party packages
+  -- updated chardet to 2.3.0
+
 Version 16.11.1:
 - fixed a PyQt5 compatibility issue on Windows platforms
 
--- a/eric6.e4p	Sat Nov 19 12:51:28 2016 +0100
+++ b/eric6.e4p	Sat Nov 19 14:59:17 2016 +0100
@@ -2035,7 +2035,7 @@
     <Other>Styles</Other>
     <Other>THANKS</Other>
     <Other>ThirdParty/CharDet/LICENSE</Other>
-    <Other>ThirdParty/CharDet/docs</Other>
+    <Other>ThirdParty/CharDet/README.rst</Other>
     <Other>ThirdParty/Jasy/jasy/license.md</Other>
     <Other>ThirdParty/Pygments/pygments/AUTHORS</Other>
     <Other>ThirdParty/Pygments/pygments/CHANGES</Other>
--- a/i18n/eric6_cs.ts	Sat Nov 19 12:51:28 2016 +0100
+++ b/i18n/eric6_cs.ts	Sat Nov 19 14:59:17 2016 +0100
@@ -390,7 +390,7 @@
 <context>
     <name>AddBookmarkDialog</name>
     <message>
-        <location filename="../WebBrowser/Bookmarks/AddBookmarkDialog.ui" line="26"/>
+        <location filename="../WebBrowser/Bookmarks/AddBookmarkDialog.py" line="198"/>
         <source>Add Bookmark</source>
         <translation>Přidat záložku</translation>
     </message>
@@ -1777,7 +1777,7 @@
         <translation>Editovat &amp;adresu</translation>
     </message>
     <message>
-        <location filename="../WebBrowser/Bookmarks/BookmarksDialog.ui" line="75"/>
+        <location filename="../WebBrowser/Bookmarks/BookmarksDialog.py" line="169"/>
         <source>&amp;Delete</source>
         <translation>&amp;Smazat</translation>
     </message>
@@ -2470,12 +2470,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/CallTraceViewer.ui" line="109"/>
+        <location filename="../Debugger/CallTraceViewer.py" line="54"/>
         <source>From</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/CallTraceViewer.ui" line="114"/>
+        <location filename="../Debugger/CallTraceViewer.py" line="54"/>
         <source>To</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2641,7 +2641,7 @@
         <translation>Stisknutím zrušit sdílený editor</translation>
     </message>
     <message>
-        <location filename="../Cooperation/ChatWidget.ui" line="230"/>
+        <location filename="../Cooperation/ChatWidget.py" line="513"/>
         <source>Clear</source>
         <translation>Vyčistit</translation>
     </message>
@@ -2939,7 +2939,7 @@
 <context>
     <name>ClickToFlashWhitelistDialog</name>
     <message>
-        <location filename="../Helpviewer/WebPlugins/ClickToFlash/ClickToFlashWhitelistDialog.ui" line="14"/>
+        <location filename="../Helpviewer/WebPlugins/ClickToFlash/ClickToFlashWhitelistDialog.py" line="54"/>
         <source>ClickToFlash Whitelist</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3330,7 +3330,7 @@
         <translation type="unfinished">Chyby: {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginCodeStyleChecker.py" line="237"/>
+        <location filename="../Plugins/PluginCodeStyleChecker.py" line="238"/>
         <source>Fix: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3498,32 +3498,32 @@
 <context>
     <name>CodeStyleCheckerPlugin</name>
     <message>
-        <location filename="../Plugins/PluginCodeStyleChecker.py" line="347"/>
+        <location filename="../Plugins/PluginCodeStyleChecker.py" line="348"/>
         <source>Check Code Style</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginCodeStyleChecker.py" line="347"/>
+        <location filename="../Plugins/PluginCodeStyleChecker.py" line="348"/>
         <source>&amp;Code Style...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginCodeStyleChecker.py" line="255"/>
+        <location filename="../Plugins/PluginCodeStyleChecker.py" line="256"/>
         <source>Check code style.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginCodeStyleChecker.py" line="351"/>
+        <location filename="../Plugins/PluginCodeStyleChecker.py" line="352"/>
         <source>&lt;b&gt;Check Code Style...&lt;/b&gt;&lt;p&gt;This checks Python files for compliance to the code style conventions given in various PEPs.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginCodeStyleChecker.py" line="110"/>
+        <location filename="../Plugins/PluginCodeStyleChecker.py" line="111"/>
         <source>Python 2 batch check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginCodeStyleChecker.py" line="126"/>
+        <location filename="../Plugins/PluginCodeStyleChecker.py" line="127"/>
         <source>Python 3 batch check</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3871,27 +3871,27 @@
 <context>
     <name>ColorDialogWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardQColorDialog.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQColorDialog.py" line="127"/>
         <source>No current editor</source>
         <translation>Editor není znám</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQColorDialog.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQColorDialog.py" line="127"/>
         <source>Please open or create a file first.</source>
         <translation>Prosím, nejdříve otevřete nebo vytvořte soubor.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQColorDialog.py" line="78"/>
+        <location filename="../Plugins/PluginWizardQColorDialog.py" line="80"/>
         <source>QColorDialog Wizard</source>
         <translation>QColorDialog průvodce</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQColorDialog.py" line="74"/>
+        <location filename="../Plugins/PluginWizardQColorDialog.py" line="76"/>
         <source>Q&amp;ColorDialog Wizard...</source>
         <translation>Q&amp;ColorDialog průvodce...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQColorDialog.py" line="79"/>
+        <location filename="../Plugins/PluginWizardQColorDialog.py" line="81"/>
         <source>&lt;b&gt;QColorDialog Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a QColorDialog. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation>&lt;b&gt;QColorDialog průvodce&lt;/b&gt;
 &lt;p&gt;Tento průvodce otevře dialog pro zadání všech parametrů potřebných pro vytvoření QColorDialog. Vygenerovaný kód je vložen na aktuální pozici kurzoru.&lt;/p&gt;</translation>
@@ -4880,7 +4880,7 @@
         <translation type="unfinished">Doména:</translation>
     </message>
     <message>
-        <location filename="../WebBrowser/CookieJar/CookiesDialog.ui" line="223"/>
+        <location filename="../WebBrowser/CookieJar/CookiesDialog.py" line="177"/>
         <source>&lt;no cookie selected&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7646,7 +7646,7 @@
 <context>
     <name>DownloadManager</name>
     <message>
-        <location filename="../WebBrowser/Download/DownloadManager.ui" line="14"/>
+        <location filename="../WebBrowser/Download/DownloadManager.py" line="363"/>
         <source>Downloads</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7913,27 +7913,27 @@
 <context>
     <name>E5MessageBoxWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="78"/>
+        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="80"/>
         <source>E5MessageBox Wizard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="74"/>
+        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="76"/>
         <source>&amp;E5MessageBox Wizard...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="79"/>
+        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="81"/>
         <source>&lt;b&gt;E5MessageBox Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create an E5MessageBox. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="125"/>
+        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="127"/>
         <source>No current editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="125"/>
+        <location filename="../Plugins/PluginWizardE5MessageBox.py" line="127"/>
         <source>Please open or create a file first.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -8116,92 +8116,92 @@
         <translation type="unfinished">Standardní tlačítka</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="257"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="41"/>
         <source>Abort</source>
         <translation type="unfinished">Přerušit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="264"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="42"/>
         <source>Apply</source>
         <translation type="unfinished">Použít</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="271"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="43"/>
         <source>Cancel</source>
         <translation type="unfinished">Zrušit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="278"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="44"/>
         <source>Close</source>
         <translation type="unfinished">Zavřít</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="285"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="45"/>
         <source>Discard</source>
         <translation type="unfinished">Zahodit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="292"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="46"/>
         <source>Help</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="299"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="47"/>
         <source>Ignore</source>
         <translation type="unfinished">Ignorovat</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="306"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="48"/>
         <source>No</source>
         <translation type="unfinished">Ne</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="313"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="49"/>
         <source>No to all</source>
         <translation type="unfinished">Ne pro všechno</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="320"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="50"/>
         <source>Ok</source>
         <translation type="unfinished">Ok</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="327"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="51"/>
         <source>Open</source>
         <translation type="unfinished">Otevřít</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="334"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="52"/>
         <source>Reset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="341"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="53"/>
         <source>Restore defaults</source>
         <translation type="unfinished">Obnovit defaulty</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="348"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="54"/>
         <source>Retry</source>
         <translation type="unfinished">Vrátit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="355"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="55"/>
         <source>Save</source>
         <translation type="unfinished">Uložit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="362"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="56"/>
         <source>Save all</source>
         <translation type="unfinished">Uložit vše</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="369"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="57"/>
         <source>Yes</source>
         <translation type="unfinished">Ano</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui" line="376"/>
+        <location filename="../Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.py" line="58"/>
         <source>Yes to all</source>
         <translation type="unfinished">Ano pro všechno</translation>
     </message>
@@ -10211,7 +10211,7 @@
         <translation>Stiskněte pro výběr API souboru ze seznamu instalovaných API</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/EditorAPIsPage.ui" line="132"/>
+        <location filename="../Preferences/ConfigurationPages/EditorAPIsPage.py" line="184"/>
         <source>Add from installed APIs</source>
         <translation>Přidat z instalovaných API</translation>
     </message>
@@ -10221,7 +10221,7 @@
         <translation>Stiskněte pro kompilování vybrané API definici</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/EditorAPIsPage.ui" line="159"/>
+        <location filename="../Preferences/ConfigurationPages/EditorAPIsPage.py" line="236"/>
         <source>Compile APIs</source>
         <translation>Kompilovat API</translation>
     </message>
@@ -10286,7 +10286,7 @@
         <translation>Stiskněte pro výběr API souboru ze seznamu API souborů instalovaných z pluginů</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/EditorAPIsPage.ui" line="142"/>
+        <location filename="../Preferences/ConfigurationPages/EditorAPIsPage.py" line="203"/>
         <source>Add from Plugin APIs</source>
         <translation>Přidat z API pluginů</translation>
     </message>
@@ -11300,7 +11300,7 @@
         <translation>Výběr výplně konce řádku.</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/EditorHighlightingStylesPage.ui" line="113"/>
+        <location filename="../Preferences/ConfigurationPages/EditorHighlightingStylesPage.py" line="353"/>
         <source>Fill to end of line</source>
         <translation>Vyplnit do konce řádku</translation>
     </message>
@@ -11345,7 +11345,7 @@
         <translation>Vybrat font.</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/EditorHighlightingStylesPage.ui" line="103"/>
+        <location filename="../Preferences/ConfigurationPages/EditorHighlightingStylesPage.py" line="69"/>
         <source>Font</source>
         <translation></translation>
     </message>
@@ -12796,7 +12796,7 @@
         <translation>Mód:</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/EditorStylesPage.ui" line="1080"/>
+        <location filename="../Preferences/ConfigurationPages/EditorStylesPage.py" line="58"/>
         <source>Disabled</source>
         <translation>Vypnuto</translation>
     </message>
@@ -13580,7 +13580,7 @@
 <context>
     <name>EmailDialog</name>
     <message>
-        <location filename="../UI/EmailDialog.ui" line="13"/>
+        <location filename="../UI/EmailDialog.py" line="339"/>
         <source>Send bug report</source>
         <translation>Odeslat hlášení o chybách</translation>
     </message>
@@ -14209,27 +14209,27 @@
 <context>
     <name>EricapiPlugin</name>
     <message>
-        <location filename="../Plugins/PluginEricapi.py" line="58"/>
+        <location filename="../Plugins/PluginEricapi.py" line="59"/>
         <source>Eric6 API File Generator</source>
         <translation type="unfinished">Generátor Eric5 API souboru {6 ?}</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricapi.py" line="99"/>
+        <location filename="../Plugins/PluginEricapi.py" line="100"/>
         <source>Generate API file (eric6_api)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricapi.py" line="99"/>
+        <location filename="../Plugins/PluginEricapi.py" line="100"/>
         <source>Generate &amp;API file (eric6_api)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricapi.py" line="103"/>
+        <location filename="../Plugins/PluginEricapi.py" line="104"/>
         <source>Generate an API file using eric6_api</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricapi.py" line="105"/>
+        <location filename="../Plugins/PluginEricapi.py" line="106"/>
         <source>&lt;b&gt;Generate API file&lt;/b&gt;&lt;p&gt;Generate an API file using eric6_api.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -14629,32 +14629,32 @@
 <context>
     <name>EricdocPlugin</name>
     <message>
-        <location filename="../Plugins/PluginEricdoc.py" line="90"/>
+        <location filename="../Plugins/PluginEricdoc.py" line="91"/>
         <source>Qt Help Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricdoc.py" line="58"/>
+        <location filename="../Plugins/PluginEricdoc.py" line="59"/>
         <source>Eric6 Documentation Generator</source>
         <translation type="unfinished">Generátor Eric5 dokumentace {6 ?}</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricdoc.py" line="134"/>
+        <location filename="../Plugins/PluginEricdoc.py" line="135"/>
         <source>Generate documentation (eric6_doc)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricdoc.py" line="134"/>
+        <location filename="../Plugins/PluginEricdoc.py" line="135"/>
         <source>Generate &amp;documentation (eric6_doc)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricdoc.py" line="138"/>
+        <location filename="../Plugins/PluginEricdoc.py" line="139"/>
         <source>Generate API documentation using eric6_doc</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginEricdoc.py" line="140"/>
+        <location filename="../Plugins/PluginEricdoc.py" line="141"/>
         <source>&lt;b&gt;Generate documentation&lt;/b&gt;&lt;p&gt;Generate API documentation using eric6_doc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -15025,12 +15025,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Helpviewer/FeaturePermissions/FeaturePermissionsDialog.ui" line="122"/>
+        <location filename="../WebBrowser/FeaturePermissions/FeaturePermissionsDialog.py" line="110"/>
         <source>Host</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Helpviewer/FeaturePermissions/FeaturePermissionsDialog.ui" line="127"/>
+        <location filename="../WebBrowser/FeaturePermissions/FeaturePermissionsDialog.py" line="111"/>
         <source>Permission</source>
         <translation type="unfinished"></translation>
     </message>
@@ -15045,7 +15045,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Helpviewer/FeaturePermissions/FeaturePermissionsDialog.ui" line="97"/>
+        <location filename="../WebBrowser/FeaturePermissions/FeaturePermissionsDialog.py" line="51"/>
         <source>Geolocation</source>
         <translation type="unfinished"></translation>
     </message>
@@ -15313,27 +15313,27 @@
 <context>
     <name>FileDialogWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardQFileDialog.py" line="135"/>
+        <location filename="../Plugins/PluginWizardQFileDialog.py" line="137"/>
         <source>No current editor</source>
         <translation>Žádný aktuální editor</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFileDialog.py" line="135"/>
+        <location filename="../Plugins/PluginWizardQFileDialog.py" line="137"/>
         <source>Please open or create a file first.</source>
         <translation>Prosím, nejdřív otevřete nebo vytvořte soubor.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFileDialog.py" line="82"/>
+        <location filename="../Plugins/PluginWizardQFileDialog.py" line="84"/>
         <source>QFileDialog Wizard</source>
         <translation>QFileDialog průvodce</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFileDialog.py" line="78"/>
+        <location filename="../Plugins/PluginWizardQFileDialog.py" line="80"/>
         <source>Q&amp;FileDialog Wizard...</source>
         <translation>Q&amp;FileDialog průvodce...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFileDialog.py" line="83"/>
+        <location filename="../Plugins/PluginWizardQFileDialog.py" line="85"/>
         <source>&lt;b&gt;QFileDialog Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a QFileDialog. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation>&lt;b&gt;QFileDialog průvodce&lt;/b&gt;&lt;p&gt;Tento průvodce otevře dialog pro zadání parametrů potřebných pro vytvoření QFileDialog. Vygenerovaný kód je vložen na aktuální pozici kurzoru.&lt;/p&gt;</translation>
     </message>
@@ -16189,7 +16189,7 @@
         <translation type="unfinished">Jméno:</translation>
     </message>
     <message>
-        <location filename="../WebBrowser/FlashCookieManager/FlashCookieManagerDialog.ui" line="158"/>
+        <location filename="../WebBrowser/FlashCookieManager/FlashCookieManagerDialog.py" line="193"/>
         <source>&lt;no flash cookie selected&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -16199,7 +16199,7 @@
         <translation type="unfinished">Velikost:</translation>
     </message>
     <message>
-        <location filename="../WebBrowser/FlashCookieManager/FlashCookieManagerDialog.ui" line="137"/>
+        <location filename="../WebBrowser/FlashCookieManager/FlashCookieManagerDialog.py" line="122"/>
         <source>Origin:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -16234,7 +16234,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../WebBrowser/FlashCookieManager/FlashCookieManagerDialog.ui" line="225"/>
+        <location filename="../WebBrowser/FlashCookieManager/FlashCookieManagerDialog.py" line="213"/>
         <source>Remove Cookie</source>
         <translation type="unfinished"></translation>
     </message>
@@ -16371,27 +16371,27 @@
 <context>
     <name>FontDialogWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardQFontDialog.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQFontDialog.py" line="127"/>
         <source>No current editor</source>
         <translation>Žádný aktuální editor</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFontDialog.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQFontDialog.py" line="127"/>
         <source>Please open or create a file first.</source>
         <translation>Prosím, nejdříve otevřete nebo vytvořte soubor.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFontDialog.py" line="78"/>
+        <location filename="../Plugins/PluginWizardQFontDialog.py" line="80"/>
         <source>QFontDialog Wizard</source>
         <translation>QFontDialog průvodce</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFontDialog.py" line="74"/>
+        <location filename="../Plugins/PluginWizardQFontDialog.py" line="76"/>
         <source>Q&amp;FontDialog Wizard...</source>
         <translation>QF&amp;ontDialog průvodce...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQFontDialog.py" line="79"/>
+        <location filename="../Plugins/PluginWizardQFontDialog.py" line="81"/>
         <source>&lt;b&gt;QFontDialog Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a QFontDialog. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation>&lt;b&gt;QFontDialog průvodce&lt;/b&gt;&lt;p&gt;Tento průvodce otevře dialog pro zadání parametrů potřebných pro vytvoření QFontDialog. Vygenerovaný kód je vložen na aktuální pozici kurzoru.&lt;/p&gt;</translation>
     </message>
@@ -16660,7 +16660,7 @@
 <context>
     <name>GreaseMonkeyAddScriptDialog</name>
     <message>
-        <location filename="../WebBrowser/GreaseMonkey/GreaseMonkeyAddScriptDialog.ui" line="14"/>
+        <location filename="../WebBrowser/GreaseMonkey/GreaseMonkeyAddScriptDialog.py" line="105"/>
         <source>GreaseMonkey Script Installation</source>
         <translation type="unfinished"></translation>
     </message>
@@ -21924,7 +21924,7 @@
         <translation type="obsolete">hg proces skončil s exit kódem {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1844"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1853"/>
         <source>The hg process did not finish within 30s.</source>
         <translation>hg proces neskončil do 30s.</translation>
     </message>
@@ -21959,242 +21959,242 @@
         <translation>Naklonovat projekt z Mercurial úložiště</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="631"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="640"/>
         <source>Synchronizing with the Mercurial repository</source>
         <translation>Synchronizovat s Mercurial úložištěm</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="681"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="690"/>
         <source>Adding files/directories to the Mercurial repository</source>
         <translation>Přidat soubory/složky do Mercurial úložiště</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="751"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="760"/>
         <source>Removing files/directories from the Mercurial repository</source>
         <translation>Odebrat soubory/složky z Mercurial úložiště</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="813"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="822"/>
         <source>Renaming {0}</source>
         <translation>Přejmenování {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1034"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1043"/>
         <source>Reverting changes</source>
         <translation>Navrácení změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1079"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1088"/>
         <source>Merging</source>
         <translation>Merging</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1381"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1390"/>
         <source>Mercurial command</source>
         <translation>Mercurial příkaz</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1601"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1610"/>
         <source>Copying {0}</source>
         <translation>Kopírování {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2002"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2011"/>
         <source>Pulling from a remote Mercurial repository</source>
         <translation>Stažení (pull) z Mercurial repozitáře</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2056"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2065"/>
         <source>Pushing to a remote Mercurial repository</source>
         <translation>Odeslání (push) do Mercurial repozitáře</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2273"/>
         <source>Creating branch in the Mercurial repository</source>
         <translation>Vytvoření větve v Mercurial repozitáři</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2384"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2421"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>Ověřit integritu Mercurial repozitáře</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2409"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2446"/>
         <source>Showing the combined configuration settings</source>
         <translation>Zobrazení nastavení kombinovaných konfigurací</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2433"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2470"/>
         <source>Showing aliases for remote repositories</source>
         <translation>Zobrazení aliasů pro vzdálené úložiště</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2457"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2494"/>
         <source>Recovering from interrupted transaction</source>
         <translation>Obnovení z přerušené transakce</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2679"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2716"/>
         <source>Shall the working directory be updated?</source>
         <translation>Má být pracovní adresář aktualizován?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2302"/>
         <source>Showing current branch</source>
         <translation>Zobrazení aktuální větve</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2610"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2647"/>
         <source>Create changegroup</source>
         <translation>Vytvořit skupinu změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2691"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2728"/>
         <source>Apply changegroups</source>
         <translation>Použít skupinu změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2709"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2746"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation>Neplatný bisect podpříkaz ({0}).</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2739"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2776"/>
         <source>Mercurial Bisect ({0})</source>
         <translation>Mercurial Bisect ({0})</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2631"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2668"/>
         <source>Preview changegroup</source>
         <translation>Náhled skupiny změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2518"/>
         <source>Identifying project directory</source>
         <translation>Rozpoznat složku projektu</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2519"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2556"/>
         <source>Create .hgignore file</source>
         <translation>Vytvořit soubor .hgignore</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2519"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2556"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Má se přepsat?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2771"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2808"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>Odebrat soubory jen z Mercurial úložiště</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2567"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2604"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation>Soubory Mercurial skupiny změn (*.hg)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2671"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2708"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation>Soubory Mercurial skupiny změn (*.hg);;Všechny soubory (*)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2825"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2862"/>
         <source>Backing out changeset</source>
         <translation>Zálohovat skupinu změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2805"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2842"/>
         <source>No revision given. Aborting...</source>
         <translation>Nebyla dána žádná revize. Ruším...</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2584"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2621"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2852"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2889"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2845"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2882"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="544"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="553"/>
         <source>Committing changes to Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3507"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3544"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3362"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3399"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3507"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3544"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2920"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2957"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2967"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3004"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3014"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3051"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3067"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3104"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3130"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3231"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3268"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3264"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3301"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3212"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3249"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3320"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3320"/>
         <source>Remove Sub-repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3252"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3289"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -22209,157 +22209,157 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1028"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1037"/>
         <source>Revert changes</source>
         <translation type="unfinished">Vrátit změny</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1019"/>
-        <source>Do you really want to revert all changes to these files or directories?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1028"/>
+        <source>Do you really want to revert all changes to these files or directories?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1037"/>
         <source>Do you really want to revert all changes of the project?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3128"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3165"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1914"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1923"/>
         <source>Mercurial Side-by-Side Difference</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1914"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1923"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; nelze přečíst.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1847"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1856"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="978"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="987"/>
         <source>Tagging in the Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2271"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2280"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1155"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1164"/>
         <source>Current branch tip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2231"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
         <source>Cancelling uncommitted merge</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3617"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3663"/>
         <source>Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3635"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3685"/>
         <source>Delete Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3635"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3685"/>
         <source>Select the bookmark to be deleted:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3646"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3696"/>
         <source>Delete Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3674"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3729"/>
         <source>Rename Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3707"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3771"/>
         <source>Move Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3866"/>
         <source>Pull Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3866"/>
         <source>Select the bookmark to be pulled:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3810"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3878"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3839"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3910"/>
         <source>Push Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3839"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3910"/>
         <source>Select the bookmark to be push:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3850"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3922"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1134"/>
+        <source>Re-Merge</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1125"/>
-        <source>Re-Merge</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1116"/>
         <source>Do you really want to re-merge these files or directories?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1125"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1134"/>
         <source>Do you really want to re-merge the project?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1130"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1139"/>
         <source>Re-Merging</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2202"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2211"/>
         <source>Marking as &apos;unresolved&apos;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2204"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2213"/>
         <source>Marking as &apos;resolved&apos;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3145"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3182"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3145"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3182"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -22367,7 +22367,7 @@
 <context>
     <name>HgAddSubrepositoryDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgAddSubrepositoryDialog.ui" line="14"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgAddSubrepositoryDialog.py" line="98"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
@@ -23005,101 +23005,156 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="33"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="36"/>
         <source>&lt;b&gt;Bookmarks List&lt;/b&gt;
 &lt;p&gt;This shows a list of the projects bookmarks.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="50"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="53"/>
         <source>Revision</source>
         <translation type="unfinished">Revize</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="55"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="58"/>
         <source>Changeset</source>
         <translation type="unfinished">Množina změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="60"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="63"/>
         <source>Status</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="68"/>
         <source>Name</source>
         <translation type="unfinished">Jméno</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="82"/>
         <source>Errors</source>
         <translation type="unfinished">Chyby</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="101"/>
         <source>Input</source>
         <translation type="unfinished">Vstup</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="120"/>
-        <source>Press to send the input to the hg process</source>
-        <translation type="unfinished">Stisknutím odeslat vstup do hg procesu</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="123"/>
-        <source>&amp;Send</source>
-        <translation type="unfinished">Ode&amp;slat</translation>
+        <source>Press to send the input to the hg process</source>
+        <translation type="unfinished">Stisknutím odeslat vstup do hg procesu</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="126"/>
+        <source>&amp;Send</source>
+        <translation type="unfinished">Ode&amp;slat</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="129"/>
         <source>Alt+S</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="133"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="136"/>
         <source>Enter data to be sent to the hg process</source>
         <translation type="unfinished">Zadejte data, která se odešlou do hg procesu</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="140"/>
-        <source>Select to switch the input field to password mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="143"/>
-        <source>&amp;Password Mode</source>
+        <source>Select to switch the input field to password mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="146"/>
+        <source>&amp;Password Mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.ui" line="149"/>
         <source>Alt+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="138"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="146"/>
         <source>Process Generation Error</source>
         <translation type="unfinished">Chyba v procesu generování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="138"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="146"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="177"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="185"/>
         <source>no bookmarks defined</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="42"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="46"/>
         <source>Refresh</source>
         <translation type="unfinished">Obnovit</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="44"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="48"/>
         <source>Press to refresh the bookmarks display</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="402"/>
+        <source>Switch to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="406"/>
+        <source>Delete</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="409"/>
+        <source>Rename</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="413"/>
+        <source>Pull</source>
+        <translation type="unfinished">Stáhnout</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="417"/>
+        <source>Push</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="433"/>
+        <source>Switch</source>
+        <translation type="unfinished">Přepnout</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="433"/>
+        <source>The project should be reread. Do this now?</source>
+        <translation type="unfinished">Projekt bude znovu načten. Má se provést?</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="452"/>
+        <source>Delete Bookmark</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="452"/>
+        <source>&lt;p&gt;Shall the bookmark &lt;b&gt;{0}&lt;/b&gt; really be deleted?&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="468"/>
+        <source>Rename Bookmark</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgBookmarksListDialog.py" line="468"/>
+        <source>&lt;p&gt;Enter the new name for bookmark &lt;b&gt;{0}&lt;/b&gt;:&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HgBranchInputDialog</name>
@@ -23423,6 +23478,41 @@
         <source>Commit sub-repositories</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui" line="80"/>
+        <source>Author</source>
+        <translation type="unfinished">Autor</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui" line="86"/>
+        <source>Enter author name to override the configured user:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui" line="96"/>
+        <source>Enter an author name in order to override the configured one</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui" line="109"/>
+        <source>Select to give date and time information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui" line="112"/>
+        <source>Date and Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui" line="137"/>
+        <source>Date/Time:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgCommitDialog.ui" line="144"/>
+        <source>Enter the date and time to be used</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HgConflictsListDialog</name>
@@ -23452,7 +23542,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgConflictsListDialog.ui" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgConflictsListDialog.py" line="246"/>
         <source>Resolved</source>
         <translation type="unfinished"></translation>
     </message>
@@ -23462,7 +23552,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgConflictsListDialog.ui" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgConflictsListDialog.py" line="244"/>
         <source>Unresolved</source>
         <translation type="unfinished"></translation>
     </message>
@@ -24086,7 +24176,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/GpgExtension/HgGpgSignaturesDialog.ui" line="55"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/GpgExtension/HgGpgSignaturesDialog.py" line="317"/>
         <source>Revision</source>
         <translation type="unfinished">Revize</translation>
     </message>
@@ -24458,7 +24548,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HisteditExtension/HgHisteditPlanEditor.ui" line="14"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HisteditExtension/HgHisteditPlanEditor.py" line="249"/>
         <source>Edit Plan</source>
         <translation type="unfinished"></translation>
     </message>
@@ -24599,7 +24689,7 @@
 <context>
     <name>HgLogBrowserDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.ui" line="14"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="72"/>
         <source>Mercurial Log</source>
         <translation></translation>
     </message>
@@ -24629,17 +24719,17 @@
         <translation>Vybrat pole pro filtrování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.ui" line="181"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="97"/>
         <source>Revision</source>
         <translation>Revize</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.ui" line="191"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="98"/>
         <source>Author</source>
         <translation>Autor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.ui" line="201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="99"/>
         <source>Message</source>
         <translation>Zpráva</translation>
     </message>
@@ -24764,42 +24854,42 @@
         <translation></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="158"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="159"/>
         <source>Added</source>
         <translation>Přidáno</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="159"/>
-        <source>Deleted</source>
-        <translation>Smazáno</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="160"/>
+        <source>Deleted</source>
+        <translation>Smazáno</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="161"/>
         <source>Modified</source>
         <translation>Změněno</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="872"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="893"/>
         <source>Process Generation Error</source>
         <translation>Chyba v procesu generování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="872"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="893"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="666"/>
         <source>The hg process did not finish within 30s.</source>
         <translation>Hg proces neskončil do 30s.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="648"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="669"/>
         <source>Could not start the hg executable.</source>
         <translation>Nelze spustit hg program.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="651"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="672"/>
         <source>Mercurial Error</source>
         <translation>Mercurial chyba</translation>
     </message>
@@ -24839,32 +24929,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="138"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="139"/>
         <source>All</source>
         <translation type="unfinished">Vše</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="74"/>
         <source>Mercurial Log (Incoming)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="75"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="76"/>
         <source>Mercurial Log (Outgoing)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="175"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="176"/>
         <source>Bookmarks</source>
         <translation type="unfinished">Záložky</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="85"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="86"/>
         <source>Press to refresh the list of changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="84"/>
         <source>&amp;Refresh</source>
         <translation type="unfinished"></translation>
     </message>
@@ -24874,28 +24964,28 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="192"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="194"/>
         <source>Change the phase of the selected revisions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="194"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="196"/>
         <source>&lt;b&gt;Change Phase&lt;/b&gt;
 &lt;p&gt;This changes the phase of the selected revisions. The selected revisions have to have the same current phase.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="190"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="192"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1696"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1721"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1829"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1913"/>
         <source>The project should be reread. Do this now?</source>
         <translation type="unfinished">Projekt bude znovu načten. Má se provést?</translation>
     </message>
@@ -24915,42 +25005,42 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="187"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="189"/>
         <source>Copy the selected changesets to the current branch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="199"/>
-        <source>Tag</source>
-        <translation type="unfinished">Tag</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="201"/>
+        <source>Tag</source>
+        <translation type="unfinished">Tag</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="204"/>
         <source>Tag the selected revision</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1733"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1773"/>
         <source>Switch</source>
         <translation type="unfinished">Přepnout</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="205"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="209"/>
         <source>Switch the working directory to the selected revision</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="214"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="232"/>
         <source>Pull Large Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="216"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="234"/>
         <source>Pull large files for selected revisions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="962"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="983"/>
         <source>{0} (large file)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -24975,110 +25065,155 @@
         <translation type="unfinished">Stisknout pro vyhledání následujícího výskytu</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="94"/>
         <source>Find</source>
         <translation type="unfinished">Hledat</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="94"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="95"/>
         <source>Filter</source>
         <translation type="unfinished">Filtr</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="110"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="111"/>
         <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Revision&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Author&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Branch&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{3}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Parents&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{4}&lt;/td&gt;&lt;/tr&gt;{5}&lt;/table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="120"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="121"/>
         <source>&lt;tr&gt;&lt;td&gt;&lt;b&gt;Tags&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;</source>
         <translation type="unfinished">&lt;tr&gt;&lt;td&gt;&lt;b&gt;Tagy&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="123"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="124"/>
         <source>&lt;tr&gt;&lt;td&gt;&lt;b&gt;Bookmarks&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1930"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="2014"/>
         <source>Find Commit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1930"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="2014"/>
         <source>&apos;{0}&apos; was not found.</source>
         <translation type="unfinished">&apos;{0}&apos; nebyl nalezen.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="99"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="100"/>
         <source>File</source>
         <translation type="unfinished">Soubor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="164"/>
-        <source>Draft</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="165"/>
-        <source>Public</source>
+        <source>Draft</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="166"/>
+        <source>Public</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="167"/>
         <source>Secret</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1787"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1871"/>
         <source>Pull Changes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="212"/>
-        <source>Pull changes from a remote repository</source>
-        <translation type="unfinished">Stáhnout změny (pull) ze vzdáleného repozitáře</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="225"/>
-        <source>Push Selected Changes</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="227"/>
-        <source>Push changes of the selected changeset and its ancestors to a remote repository</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="230"/>
+        <source>Pull changes from a remote repository</source>
+        <translation type="unfinished">Stáhnout změny (pull) ze vzdáleného repozitáře</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="243"/>
+        <source>Push Selected Changes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="246"/>
+        <source>Push changes of the selected changeset and its ancestors to a remote repository</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="249"/>
         <source>Push All Changes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="232"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="252"/>
         <source>Push all changes to a remote repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1768"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1852"/>
         <source>Fetch Changes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1829"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1913"/>
         <source>Strip Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="220"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="238"/>
         <source>Fetch changes from a remote repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="239"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="260"/>
         <source>Strip changesets from a repository</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="214"/>
+        <source>Define Bookmark...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="217"/>
+        <source>Bookmark the selected revision</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="219"/>
+        <source>Move Bookmark...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="222"/>
+        <source>Move bookmark to the selected revision</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1794"/>
+        <source>Define Bookmark</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1794"/>
+        <source>Enter bookmark name for changeset &quot;{0}&quot;:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1816"/>
+        <source>Move Bookmark</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1816"/>
+        <source>Select the bookmark to be moved  to changeset &quot;{0}&quot;:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py" line="1759"/>
+        <source>Select bookmark to switch to (leave empty to use revision):</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HgLogDialog</name>
@@ -28541,7 +28676,7 @@
 <context>
     <name>HgStatusDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.ui" line="14"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py" line="313"/>
         <source>Mercurial Status</source>
         <translation>Mercurial status</translation>
     </message>
@@ -28682,7 +28817,7 @@
         <translation>Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.ui" line="87"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py" line="708"/>
         <source>Commit</source>
         <translation>Zapsat měny</translation>
     </message>
@@ -28802,7 +28937,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.ui" line="203"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py" line="854"/>
         <source>Differences</source>
         <translation type="unfinished"></translation>
     </message>
@@ -29295,106 +29430,146 @@
         <translation>&lt;b&gt;Mercurial Tag/větev seznam&lt;/b&gt;&lt;p&gt;Tento dialog zobrazuje seznam tagů hlavní části projektu nebo jeho větví.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="33"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="36"/>
         <source>&lt;b&gt;Tag/Branches List&lt;/b&gt;
 &lt;p&gt;This shows a list of the projects tags or branches.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Tag/větev seznam&lt;/b&gt;&lt;p&gt;Tento dialog zobrazuje seznam tagů hlavní části projektu nebo jeho větví.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="50"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="53"/>
         <source>Revision</source>
         <translation>Revize</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="55"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="58"/>
         <source>Changeset</source>
         <translation>Množina změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="60"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="63"/>
         <source>Local</source>
         <translation>Lokální</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="68"/>
         <source>Name</source>
         <translation>Jméno</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="82"/>
         <source>Errors</source>
         <translation>Chyby</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="101"/>
         <source>Input</source>
         <translation>Vstup</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="120"/>
-        <source>Press to send the input to the hg process</source>
-        <translation>Stisknutím odeslat vstup do hg procesu</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="123"/>
-        <source>&amp;Send</source>
-        <translation>Ode&amp;slat</translation>
+        <source>Press to send the input to the hg process</source>
+        <translation>Stisknutím odeslat vstup do hg procesu</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="126"/>
+        <source>&amp;Send</source>
+        <translation>Ode&amp;slat</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="129"/>
         <source>Alt+S</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="133"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="136"/>
         <source>Enter data to be sent to the hg process</source>
         <translation>Zadejte data, která se odešlou do hg procesu</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="140"/>
-        <source>Select to switch the input field to password mode</source>
-        <translation>Vybrat pro přepnutí vstupního pole do režimu hesla</translation>
-    </message>
-    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="143"/>
-        <source>&amp;Password Mode</source>
-        <translation>Mód ve&amp;psání hesla</translation>
+        <source>Select to switch the input field to password mode</source>
+        <translation>Vybrat pro přepnutí vstupního pole do režimu hesla</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="146"/>
+        <source>&amp;Password Mode</source>
+        <translation>Mód ve&amp;psání hesla</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.ui" line="149"/>
         <source>Alt+P</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="111"/>
         <source>Mercurial Branches List</source>
         <translation>Mercurial sezam větví</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="99"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="112"/>
         <source>Status</source>
         <translation>Status</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="156"/>
         <source>Process Generation Error</source>
         <translation>Chyba v procesu generování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="156"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="259"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="288"/>
         <source>active</source>
         <translation>aktivní</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="264"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="293"/>
         <source>yes</source>
         <translation>ano</translation>
     </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="49"/>
+        <source>&amp;Refresh</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="51"/>
+        <source>Press to refresh the list</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="433"/>
+        <source>Switch to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="477"/>
+        <source>Close Branch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="451"/>
+        <source>Switch</source>
+        <translation type="unfinished">Přepnout</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="451"/>
+        <source>The project should be reread. Do this now?</source>
+        <translation type="unfinished">Projekt bude znovu načten. Má se provést?</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="470"/>
+        <source>The branch &quot;default&quot; cannot be closed. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py" line="477"/>
+        <source>&lt;p&gt;Shall the branch &lt;b&gt;{0}&lt;/b&gt; really be closed?&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>HgTagDialog</name>
@@ -30032,7 +30207,7 @@
         <translation>Stisknout pro odebrání vybraných položek</translation>
     </message>
     <message>
-        <location filename="../WebBrowser/History/HistoryDialog.ui" line="75"/>
+        <location filename="../WebBrowser/History/HistoryDialog.py" line="114"/>
         <source>&amp;Remove</source>
         <translation>Odeb&amp;rat</translation>
     </message>
@@ -31645,27 +31820,27 @@
 <context>
     <name>InputDialogWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardQInputDialog.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQInputDialog.py" line="127"/>
         <source>No current editor</source>
         <translation>Žádný aktuální editor</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQInputDialog.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQInputDialog.py" line="127"/>
         <source>Please open or create a file first.</source>
         <translation>Prosím, nejdříve otevřete nebo vytvořte soubor.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQInputDialog.py" line="78"/>
+        <location filename="../Plugins/PluginWizardQInputDialog.py" line="80"/>
         <source>QInputDialog Wizard</source>
         <translation>QInputDialog průvodce</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQInputDialog.py" line="74"/>
+        <location filename="../Plugins/PluginWizardQInputDialog.py" line="76"/>
         <source>Q&amp;InputDialog Wizard...</source>
         <translation>Q&amp;InputDialog průvodce...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQInputDialog.py" line="79"/>
+        <location filename="../Plugins/PluginWizardQInputDialog.py" line="81"/>
         <source>&lt;b&gt;QInputDialog Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a QInputDialog. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation>&lt;b&gt;QInputDialog průvodce&lt;/b&gt;&lt;p&gt;Tento průvodce otevře dialog pro zadání všech parametrů potřebných pro vytvoření QInputDialog. Vygenerovaný kód je vložen na aktuální pozici kurzoru.&lt;/p&gt;</translation>
     </message>
@@ -35653,109 +35828,109 @@
         <translation>Zadejte počet zpráv zapsaných změn k zapamatování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="180"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="216"/>
         <source>Incoming / Outgoing</source>
         <translation>Příchozí / Odchozí</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="186"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="222"/>
         <source>Select to show the incoming and outgoing log in a log browser dialog</source>
         <translation>Vybrat pro zobrazení příchozích a odchozích logů v prohlížeči logů</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="189"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="225"/>
         <source>Use Log Browser for incoming / outgoing log</source>
         <translation>Použít Log prohlížeč pro příchozí / odchozí logy</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="199"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="235"/>
         <source>Pull</source>
         <translation>Stáhnout</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="205"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="241"/>
         <source>Select to update the working directory to new tip</source>
         <translation>Zvolte, zda chcete aktualizovat pracovní adresář na nový tip</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="208"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="244"/>
         <source>Update after pulling</source>
         <translation>Aktualizovat po stažení</translation>
     </message>
     <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="333"/>
+        <source>Edit the Mercurial configuration file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="336"/>
+        <source>Edit configuration file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="310"/>
+        <source>Cleanup</source>
+        <translation type="unfinished">Vyčistit</translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="316"/>
+        <source>Pattern:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="323"/>
+        <source>Enter the file name patterns to be used for cleaning up (entries separated by a space character)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="251"/>
+        <source>Select to prefer unbundle over pull</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="254"/>
+        <source>&lt;b&gt;Prefer Unbundle&lt;/b&gt;
+&lt;p&gt;If this option is selected, it will be checked, if a Mercurial changegroups file from a previous &quot;Show Incoming&quot; request exists. In this case it will be applied and deleted. Otherwise a pull request will be sent.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="258"/>
+        <source>Prefer Unbundle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="291"/>
+        <source>Revert</source>
+        <translation type="unfinished">Vrátit</translation>
+    </message>
+    <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="297"/>
-        <source>Edit the Mercurial configuration file</source>
+        <source>Select to create a backup file (.orig) before reverting changes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="300"/>
-        <source>Edit configuration file</source>
-        <translation type="unfinished"></translation>
+        <source>Create Backup Files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="268"/>
+        <source>Merge</source>
+        <translation type="unfinished">Sloučit</translation>
     </message>
     <message>
         <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="274"/>
-        <source>Cleanup</source>
-        <translation type="unfinished">Vyčistit</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="280"/>
-        <source>Pattern:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="287"/>
-        <source>Enter the file name patterns to be used for cleaning up (entries separated by a space character)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="215"/>
-        <source>Select to prefer unbundle over pull</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="218"/>
-        <source>&lt;b&gt;Prefer Unbundle&lt;/b&gt;
-&lt;p&gt;If this option is selected, it will be checked, if a Mercurial changegroups file from a previous &quot;Show Incoming&quot; request exists. In this case it will be applied and deleted. Otherwise a pull request will be sent.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="222"/>
-        <source>Prefer Unbundle</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="255"/>
-        <source>Revert</source>
-        <translation type="unfinished">Vrátit</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="261"/>
-        <source>Select to create a backup file (.orig) before reverting changes</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="264"/>
-        <source>Create Backup Files</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="232"/>
-        <source>Merge</source>
-        <translation type="unfinished">Sloučit</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="238"/>
         <source>Select to enforce usage of the Mercural internal merge tool</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="241"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="277"/>
         <source>&lt;b&gt;Internal Merge Tool&lt;/b&gt;
 &lt;p&gt;Select to enforce usage of the Mercural internal merge tool,which leaves conflict markers in the file in case of conflicting changes.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="245"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="281"/>
         <source>Use internal merge with conflict markers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -35789,31 +35964,41 @@
         <source>Consider hidden changesets</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="177"/>
+        <source>No. of commit authors to remember:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/ConfigurationPage/MercurialPage.ui" line="184"/>
+        <source>Enter the number of commit authors to remember</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>MessageBoxWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardQMessageBox.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQMessageBox.py" line="127"/>
         <source>No current editor</source>
         <translation>Žádný aktuální editor</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQMessageBox.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQMessageBox.py" line="127"/>
         <source>Please open or create a file first.</source>
         <translation>Prosím, nejdříve otevřete nebo vytvořte soubor.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQMessageBox.py" line="78"/>
+        <location filename="../Plugins/PluginWizardQMessageBox.py" line="80"/>
         <source>QMessageBox Wizard</source>
         <translation>QMessageBox průvodce</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQMessageBox.py" line="74"/>
+        <location filename="../Plugins/PluginWizardQMessageBox.py" line="76"/>
         <source>Q&amp;MessageBox Wizard...</source>
         <translation>Q&amp;MessageBox průvodce...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQMessageBox.py" line="79"/>
+        <location filename="../Plugins/PluginWizardQMessageBox.py" line="81"/>
         <source>&lt;b&gt;QMessageBox Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a QMessageBox. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation>&lt;b&gt;QMessageDialog průvodce&lt;/b&gt;&lt;p&gt;Tento průvodce otevře dialog pro zadání parametrů potřebných pro vytvoření QMessageDialog. Vygenerovaný kód je vložen na aktuální pozici kurzoru.&lt;/p&gt;</translation>
     </message>
@@ -35911,92 +36096,92 @@
         <translation>Standardní tlačítka</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="219"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="40"/>
         <source>Apply</source>
         <translation>Použít</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="226"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="39"/>
         <source>Abort</source>
         <translation>Přerušit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="233"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="41"/>
         <source>Cancel</source>
         <translation>Zrušit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="240"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="45"/>
         <source>Ignore</source>
         <translation>Ignorovat</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="247"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="54"/>
         <source>Save all</source>
         <translation>Uložit vše</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="254"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="53"/>
         <source>Save</source>
         <translation>Uložit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="261"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="43"/>
         <source>Discard</source>
         <translation>Zahodit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="268"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="56"/>
         <source>Yes to all</source>
         <translation>Ano pro všechno</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="275"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="49"/>
         <source>Open</source>
         <translation>Otevřít</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="282"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="50"/>
         <source>Reset</source>
         <translation>Reset</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="289"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="48"/>
         <source>Ok</source>
         <translation>Ok</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="296"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="46"/>
         <source>No</source>
         <translation>Ne</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="303"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="44"/>
         <source>Help</source>
         <translation>Pomoc</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="310"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="47"/>
         <source>No to all</source>
         <translation>Ne pro všechno</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="317"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="52"/>
         <source>Retry</source>
         <translation>Vrátit</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="324"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="51"/>
         <source>Restore defaults</source>
         <translation>Obnovit defaulty</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="331"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="55"/>
         <source>Yes</source>
         <translation>Ano</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.ui" line="338"/>
+        <location filename="../Plugins/WizardPlugins/MessageBoxWizard/MessageBoxWizardDialog.py" line="42"/>
         <source>Close</source>
         <translation>Zavřít</translation>
     </message>
@@ -37144,32 +37329,32 @@
 <context>
     <name>MultiProjectBrowser</name>
     <message>
-        <location filename="../MultiProject/MultiProjectBrowser.py" line="299"/>
+        <location filename="../MultiProject/MultiProjectBrowser.py" line="318"/>
         <source>Open</source>
         <translation>Otevřít</translation>
     </message>
     <message>
-        <location filename="../MultiProject/MultiProjectBrowser.py" line="300"/>
+        <location filename="../MultiProject/MultiProjectBrowser.py" line="319"/>
         <source>Remove</source>
         <translation>Odebrat</translation>
     </message>
     <message>
-        <location filename="../MultiProject/MultiProjectBrowser.py" line="301"/>
+        <location filename="../MultiProject/MultiProjectBrowser.py" line="320"/>
         <source>Properties</source>
         <translation>Nastavení</translation>
     </message>
     <message>
-        <location filename="../MultiProject/MultiProjectBrowser.py" line="313"/>
+        <location filename="../MultiProject/MultiProjectBrowser.py" line="332"/>
         <source>Configure...</source>
         <translation>Konfigurovat...</translation>
     </message>
     <message>
-        <location filename="../MultiProject/MultiProjectBrowser.py" line="310"/>
+        <location filename="../MultiProject/MultiProjectBrowser.py" line="329"/>
         <source>Add Project...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MultiProject/MultiProjectBrowser.py" line="214"/>
+        <location filename="../MultiProject/MultiProjectBrowser.py" line="233"/>
         <source>Not categorized</source>
         <translation type="unfinished"></translation>
     </message>
@@ -37746,7 +37931,7 @@
 <context>
     <name>NoCacheHostsDialog</name>
     <message>
-        <location filename="../Helpviewer/Network/NoCacheHostsDialog.ui" line="14"/>
+        <location filename="../Helpviewer/Network/NoCacheHostsDialog.py" line="52"/>
         <source>Not Cached Hosts</source>
         <translation type="unfinished"></translation>
     </message>
@@ -37854,7 +38039,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/NotificationsPage.ui" line="146"/>
+        <location filename="../Preferences/ConfigurationPages/NotificationsPage.py" line="81"/>
         <source>Visual Selection</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38525,7 +38710,7 @@
 <context>
     <name>PasswordsDialog</name>
     <message>
-        <location filename="../WebBrowser/Passwords/PasswordsDialog.ui" line="14"/>
+        <location filename="../WebBrowser/Passwords/PasswordsDialog.py" line="91"/>
         <source>Saved Passwords</source>
         <translation>Uložená hesla</translation>
     </message>
@@ -40267,72 +40452,72 @@
         <translation>Vytvořit adresář projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2697"/>
+        <location filename="../Project/Project.py" line="2703"/>
         <source>New Project</source>
         <translation>Nový projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2249"/>
+        <location filename="../Project/Project.py" line="2253"/>
         <source>Add existing files to the project?</source>
         <translation>Přidat existující soubory do projektu?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2368"/>
+        <location filename="../Project/Project.py" line="2372"/>
         <source>Would you like to edit the VCS command options?</source>
         <translation>Chcete editovat parametry VCS příkazu?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3457"/>
+        <location filename="../Project/Project.py" line="3466"/>
         <source>New project</source>
         <translation>Nový projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2316"/>
+        <location filename="../Project/Project.py" line="2320"/>
         <source>Shall the project file be added to the repository?</source>
         <translation>Má být projekt přidán do repozitáře?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2340"/>
+        <location filename="../Project/Project.py" line="2344"/>
         <source>Select version control system for the project</source>
         <translation>Výběr verzovacího systému projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3471"/>
+        <location filename="../Project/Project.py" line="3480"/>
         <source>Open project</source>
         <translation>Otevřít projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2833"/>
+        <location filename="../Project/Project.py" line="2842"/>
         <source>Project Files (*.e4p)</source>
         <translation>Soubory projektu (*.e4p)</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3508"/>
+        <location filename="../Project/Project.py" line="3517"/>
         <source>Save project as</source>
         <translation>Uložit projekt jako</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2848"/>
+        <location filename="../Project/Project.py" line="2857"/>
         <source>Save File</source>
         <translation>Uložit soubor</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2884"/>
+        <location filename="../Project/Project.py" line="2893"/>
         <source>Close Project</source>
         <translation>Zavřít projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2884"/>
+        <location filename="../Project/Project.py" line="2893"/>
         <source>The current project has unsaved changes.</source>
         <translation>Aktuální projekt obsahuje neuložené změny.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3049"/>
+        <location filename="../Project/Project.py" line="3058"/>
         <source>Syntax errors detected</source>
         <translation>Zjištěny syntaktické chyby</translation>
     </message>
     <message numerus="yes">
-        <location filename="../Project/Project.py" line="3049"/>
+        <location filename="../Project/Project.py" line="3058"/>
         <source>The project contains %n file(s) with syntax errors.</source>
         <translation>
             <numerusform>Projekt obsahuje %n soubor se syntaktickými chybami.</numerusform>
@@ -40341,572 +40526,572 @@
         </translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3457"/>
+        <location filename="../Project/Project.py" line="3466"/>
         <source>&amp;New...</source>
         <translation>&amp;Nový...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3462"/>
-        <source>Generate a new project</source>
-        <translation>Vygenerovat nový projekt</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3463"/>
-        <source>&lt;b&gt;New...&lt;/b&gt;&lt;p&gt;This opens a dialog for entering the info for a new project.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Nový...&lt;/b&gt;&lt;p&gt;Otevře se dialogové okno pro zadání informací o novém projektu.&lt;/p&gt;</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3471"/>
+        <source>Generate a new project</source>
+        <translation>Vygenerovat nový projekt</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3472"/>
+        <source>&lt;b&gt;New...&lt;/b&gt;&lt;p&gt;This opens a dialog for entering the info for a new project.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Nový...&lt;/b&gt;&lt;p&gt;Otevře se dialogové okno pro zadání informací o novém projektu.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3480"/>
         <source>&amp;Open...</source>
         <translation>&amp;Otevřít...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3476"/>
+        <location filename="../Project/Project.py" line="3485"/>
         <source>Open an existing project</source>
         <translation>Otevřít existující projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3477"/>
+        <location filename="../Project/Project.py" line="3486"/>
         <source>&lt;b&gt;Open...&lt;/b&gt;&lt;p&gt;This opens an existing project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Otevřít....&lt;/b&gt;&lt;p&gt;Otevře existující projekt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3484"/>
+        <location filename="../Project/Project.py" line="3493"/>
         <source>Close project</source>
         <translation>Zavřít projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3484"/>
+        <location filename="../Project/Project.py" line="3493"/>
         <source>&amp;Close</source>
         <translation>&amp;Zavřít</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3488"/>
+        <location filename="../Project/Project.py" line="3497"/>
         <source>Close the current project</source>
         <translation>Uzavře aktuální projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3489"/>
+        <location filename="../Project/Project.py" line="3498"/>
         <source>&lt;b&gt;Close&lt;/b&gt;&lt;p&gt;This closes the current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zavřít&lt;/b&gt;&lt;p&gt;Aktuální projekt se uzavře.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3496"/>
+        <location filename="../Project/Project.py" line="3505"/>
         <source>Save project</source>
         <translation>Uložit projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3687"/>
+        <location filename="../Project/Project.py" line="3696"/>
         <source>&amp;Save</source>
         <translation>&amp;Uložit</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3500"/>
+        <location filename="../Project/Project.py" line="3509"/>
         <source>Save the current project</source>
         <translation>Uložit aktuální projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3501"/>
+        <location filename="../Project/Project.py" line="3510"/>
         <source>&lt;b&gt;Save&lt;/b&gt;&lt;p&gt;This saves the current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Uložit&lt;/b&gt;&lt;p&gt;Aktuální projekt se uloží.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3508"/>
+        <location filename="../Project/Project.py" line="3517"/>
         <source>Save &amp;as...</source>
         <translation>Uložit j&amp;ako...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3512"/>
+        <location filename="../Project/Project.py" line="3521"/>
         <source>Save the current project to a new file</source>
         <translation>Uloží aktuální projekt do nového souboru</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3514"/>
-        <source>&lt;b&gt;Save as&lt;/b&gt;&lt;p&gt;This saves the current project to a new file.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Uložit jako&lt;/b&gt;&lt;p&gt;Uloží aktuální projekt do nového souboru.&lt;/p&gt;</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3523"/>
+        <source>&lt;b&gt;Save as&lt;/b&gt;&lt;p&gt;This saves the current project to a new file.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Uložit jako&lt;/b&gt;&lt;p&gt;Uloží aktuální projekt do nového souboru.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3532"/>
         <source>Add files to project</source>
         <translation>Přidat soubory do projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3523"/>
+        <location filename="../Project/Project.py" line="3532"/>
         <source>Add &amp;files...</source>
         <translation>&amp;Přidat soubory...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3528"/>
+        <location filename="../Project/Project.py" line="3537"/>
         <source>Add files to the current project</source>
         <translation>Přidat soubory do aktuálního projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3530"/>
-        <source>&lt;b&gt;Add files...&lt;/b&gt;&lt;p&gt;This opens a dialog for adding files to the current project. The place to add is determined by the file extension.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Přidat soubory...&lt;/b&gt;&lt;p&gt;Otevře dialog pri přidání souborů do aktuálního projektu. Místo pro přidání je definováno extenzí souborů.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3539"/>
-        <source>Add directory to project</source>
-        <translation>Přidat adresář do projektu</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3539"/>
+        <source>&lt;b&gt;Add files...&lt;/b&gt;&lt;p&gt;This opens a dialog for adding files to the current project. The place to add is determined by the file extension.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Přidat soubory...&lt;/b&gt;&lt;p&gt;Otevře dialog pri přidání souborů do aktuálního projektu. Místo pro přidání je definováno extenzí souborů.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3548"/>
+        <source>Add directory to project</source>
+        <translation>Přidat adresář do projektu</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3548"/>
         <source>Add directory...</source>
         <translation>Přidat adresář...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3544"/>
+        <location filename="../Project/Project.py" line="3553"/>
         <source>Add a directory to the current project</source>
         <translation>Přidat adresář do aktuálního projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3546"/>
+        <location filename="../Project/Project.py" line="3555"/>
         <source>&lt;b&gt;Add directory...&lt;/b&gt;&lt;p&gt;This opens a dialog for adding a directory to the current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Přidat adresář...&lt;/b&gt;&lt;p&gt;Otevře dialog pro přičtení adresáře do aktuálního projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3554"/>
+        <location filename="../Project/Project.py" line="3563"/>
         <source>Add translation to project</source>
         <translation>Přidat překlad do projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3554"/>
+        <location filename="../Project/Project.py" line="3563"/>
         <source>Add &amp;translation...</source>
         <translation>Přida&amp;t překlad...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3559"/>
+        <location filename="../Project/Project.py" line="3568"/>
         <source>Add a translation to the current project</source>
         <translation>Přidat překlad do aktuálního projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3561"/>
+        <location filename="../Project/Project.py" line="3570"/>
         <source>&lt;b&gt;Add translation...&lt;/b&gt;&lt;p&gt;This opens a dialog for add a translation to the current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Přidat překlad&lt;/b&gt;&lt;p&gt;Otevře dialog pro přidání překladu do aktuálního projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3569"/>
+        <location filename="../Project/Project.py" line="3578"/>
         <source>Search new files</source>
         <translation>Hledat nové soubory</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3569"/>
+        <location filename="../Project/Project.py" line="3578"/>
         <source>Searc&amp;h new files...</source>
         <translation>&amp;Hledat nové soubory...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3573"/>
+        <location filename="../Project/Project.py" line="3582"/>
         <source>Search new files in the project directory.</source>
         <translation>Hledat nové soubory v adresáři projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3575"/>
+        <location filename="../Project/Project.py" line="3584"/>
         <source>&lt;b&gt;Search new files...&lt;/b&gt;&lt;p&gt;This searches for new files (sources, *.ui, *.idl) in the project directory and registered subdirectories.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Hledat nové soubory...&lt;/b&gt;&lt;p&gt;Hledají se nové soubory (zdrojové, *.ui, *.idl) v adresáři projektu a v registrovaných podadresářích.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3598"/>
+        <location filename="../Project/Project.py" line="3607"/>
         <source>Project properties</source>
         <translation>Nastavení projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3598"/>
+        <location filename="../Project/Project.py" line="3607"/>
         <source>&amp;Properties...</source>
         <translation>&amp;Natavení...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3603"/>
+        <location filename="../Project/Project.py" line="3612"/>
         <source>Show the project properties</source>
         <translation>Zobrazit nastavení projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3604"/>
+        <location filename="../Project/Project.py" line="3613"/>
         <source>&lt;b&gt;Properties...&lt;/b&gt;&lt;p&gt;This shows a dialog to edit the project properties.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Nastavení...&lt;/b&gt;&lt;p&gt;Zobrazí dialog s editací nastavení projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3611"/>
+        <location filename="../Project/Project.py" line="3620"/>
         <source>User project properties</source>
         <translation>Uživatelská nastavení projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3611"/>
+        <location filename="../Project/Project.py" line="3620"/>
         <source>&amp;User Properties...</source>
         <translation>Uživat&amp;elská nastavení...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3616"/>
+        <location filename="../Project/Project.py" line="3625"/>
         <source>Show the user specific project properties</source>
         <translation>Zobrazit uživatelem definovaná nastavení projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3618"/>
+        <location filename="../Project/Project.py" line="3627"/>
         <source>&lt;b&gt;User Properties...&lt;/b&gt;&lt;p&gt;This shows a dialog to edit the user specific project properties.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Uživatelská nastavení...&lt;/b&gt;&lt;p&gt;Zobrazí dialog s editací uživatelských nastavení projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3626"/>
+        <location filename="../Project/Project.py" line="3635"/>
         <source>Filetype Associations</source>
         <translation>Asociace typů souborů</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3626"/>
+        <location filename="../Project/Project.py" line="3635"/>
         <source>Filetype Associations...</source>
         <translation>Asociace typů souborů...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3630"/>
+        <location filename="../Project/Project.py" line="3639"/>
         <source>Show the project filetype associations</source>
         <translation>Zobrazit asociace typů souborů</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3632"/>
+        <location filename="../Project/Project.py" line="3641"/>
         <source>&lt;b&gt;Filetype Associations...&lt;/b&gt;&lt;p&gt;This shows a dialog to edit the filetype associations of the project. These associations determine the type (source, form, interface or others) with a filename pattern. They are used when adding a file to the project and when performing a search for new files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Asociace typů souborů...&lt;/b&gt;&lt;p&gt;Zobrazí se dialog s editací asociace typů souborů v projektu. Na základě vzorku souborového jména tyto asociace určují typ souboru (zdrojový kód, formulář, interface nebo jiné). Tyto asociace jsou použity při přidávání souborů do projektu a při vyhledávání.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3662"/>
+        <location filename="../Project/Project.py" line="3671"/>
         <source>Debugger Properties</source>
         <translation>Nastavení debugeru</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3662"/>
+        <location filename="../Project/Project.py" line="3671"/>
         <source>Debugger &amp;Properties...</source>
         <translation>Nastavení &amp;debuggeru...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3666"/>
-        <source>Show the debugger properties</source>
-        <translation>Zobrazit nastavení debugeru</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3667"/>
-        <source>&lt;b&gt;Debugger Properties...&lt;/b&gt;&lt;p&gt;This shows a dialog to edit project specific debugger settings.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Nastavení debugeru...&lt;/b&gt;&lt;p&gt;Zobrazí dialog s editací nastavení debugeru.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3675"/>
-        <source>Load</source>
-        <translation>Načíst</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3675"/>
+        <source>Show the debugger properties</source>
+        <translation>Zobrazit nastavení debugeru</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3676"/>
+        <source>&lt;b&gt;Debugger Properties...&lt;/b&gt;&lt;p&gt;This shows a dialog to edit project specific debugger settings.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Nastavení debugeru...&lt;/b&gt;&lt;p&gt;Zobrazí dialog s editací nastavení debugeru.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3684"/>
+        <source>Load</source>
+        <translation>Načíst</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3684"/>
         <source>&amp;Load</source>
         <translation>&amp;Načíst</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3679"/>
+        <location filename="../Project/Project.py" line="3688"/>
         <source>Load the debugger properties</source>
         <translation>Načíst nastavení debugeru</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3680"/>
+        <location filename="../Project/Project.py" line="3689"/>
         <source>&lt;b&gt;Load Debugger Properties&lt;/b&gt;&lt;p&gt;This loads the project specific debugger settings.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Načíst nastavení debugeru&lt;/b&gt;&lt;p&gt;Načtou se nastavení debugeru do projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3687"/>
+        <location filename="../Project/Project.py" line="3696"/>
         <source>Save</source>
         <translation>Uložit</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3691"/>
+        <location filename="../Project/Project.py" line="3700"/>
         <source>Save the debugger properties</source>
         <translation>Uložit nastavení debugeru</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3692"/>
+        <location filename="../Project/Project.py" line="3701"/>
         <source>&lt;b&gt;Save Debugger Properties&lt;/b&gt;&lt;p&gt;This saves the project specific debugger settings.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Uložit nastavení debugeru&lt;/b&gt;&lt;p&gt;Uloží nastavení debugeru definovaná v projektu..&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3699"/>
+        <location filename="../Project/Project.py" line="3708"/>
         <source>Delete</source>
         <translation>Smazat</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3699"/>
+        <location filename="../Project/Project.py" line="3708"/>
         <source>&amp;Delete</source>
         <translation>Sma&amp;zat</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3703"/>
-        <source>Delete the debugger properties</source>
-        <translation>Smazat nastavení debugeru</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3704"/>
-        <source>&lt;b&gt;Delete Debugger Properties&lt;/b&gt;&lt;p&gt;This deletes the file containing the project specific debugger settings.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Smazat nastavení debugeru&lt;/b&gt;&lt;p&gt;Smaže se soubor obsahující nastavení debugeru v daném projektu.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3712"/>
-        <source>Reset</source>
-        <translation></translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3712"/>
+        <source>Delete the debugger properties</source>
+        <translation>Smazat nastavení debugeru</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3713"/>
+        <source>&lt;b&gt;Delete Debugger Properties&lt;/b&gt;&lt;p&gt;This deletes the file containing the project specific debugger settings.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Smazat nastavení debugeru&lt;/b&gt;&lt;p&gt;Smaže se soubor obsahující nastavení debugeru v daném projektu.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3721"/>
+        <source>Reset</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3721"/>
         <source>&amp;Reset</source>
         <translation>&amp;Reset</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3716"/>
+        <location filename="../Project/Project.py" line="3725"/>
         <source>Reset the debugger properties</source>
         <translation>Reset nastavení debugeru</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3717"/>
-        <source>&lt;b&gt;Reset Debugger Properties&lt;/b&gt;&lt;p&gt;This resets the project specific debugger settings.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Reset nastavení debugeru&lt;/b&gt;&lt;p&gt;Zresetuje nastavení debugeru v projektu.&lt;/p&gt;</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3726"/>
+        <source>&lt;b&gt;Reset Debugger Properties&lt;/b&gt;&lt;p&gt;This resets the project specific debugger settings.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Reset nastavení debugeru&lt;/b&gt;&lt;p&gt;Zresetuje nastavení debugeru v projektu.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3735"/>
         <source>Load session</source>
         <translation>Načíst relaci</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3730"/>
+        <location filename="../Project/Project.py" line="3739"/>
         <source>Load the projects session file.</source>
         <translation>Načíst soubor s relací projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3731"/>
+        <location filename="../Project/Project.py" line="3740"/>
         <source>&lt;b&gt;Load session&lt;/b&gt;&lt;p&gt;This loads the projects session file. The session consists of the following data.&lt;br&gt;- all open source files&lt;br&gt;- all breakpoint&lt;br&gt;- the commandline arguments&lt;br&gt;- the working directory&lt;br&gt;- the exception reporting flag&lt;/p&gt;</source>
         <translation>&lt;b&gt;Načíst relaci&lt;/b&gt;&lt;p&gt;Načte soubor s relací projektu. Relace obsahuje následující údaje:&lt;br&gt;- všechny otevřené zdrojové soubory&lt;br&gt;- všechny breakpointy&lt;br&gt;- argumenty příkazové řádky &lt;br&gt;- pracovní adresář&lt;br&gt;- příznak výjimky&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3744"/>
+        <location filename="../Project/Project.py" line="3753"/>
         <source>Save session</source>
         <translation>Uložit relaci</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3748"/>
+        <location filename="../Project/Project.py" line="3757"/>
         <source>Save the projects session file.</source>
         <translation>Uložit soubor s relací projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3749"/>
+        <location filename="../Project/Project.py" line="3758"/>
         <source>&lt;b&gt;Save session&lt;/b&gt;&lt;p&gt;This saves the projects session file. The session consists of the following data.&lt;br&gt;- all open source files&lt;br&gt;- all breakpoint&lt;br&gt;- the commandline arguments&lt;br&gt;- the working directory&lt;br&gt;- the exception reporting flag&lt;/p&gt;</source>
         <translation>&lt;b&gt;Uložit relaci&lt;/b&gt;&lt;p&gt;Uloží soubor s relací projektu. Relace obsahuje následující údaje:&lt;br&gt;- všechny otevřené zdrojové soubory&lt;br&gt;- všechny breakpointy&lt;br&gt;- argumenty příkazové řádky &lt;br&gt;- pracovní adresář&lt;br&gt;- příznak výjimky&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3762"/>
+        <location filename="../Project/Project.py" line="3771"/>
         <source>Delete session</source>
         <translation>Smazat relaci</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3766"/>
+        <location filename="../Project/Project.py" line="3775"/>
         <source>Delete the projects session file.</source>
         <translation>Smaže soubor s relací projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3767"/>
-        <source>&lt;b&gt;Delete session&lt;/b&gt;&lt;p&gt;This deletes the projects session file&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Smazat relaci&lt;/b&gt;&lt;p&gt;Smaže soubor s relací projektu.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3776"/>
-        <source>Code Metrics</source>
-        <translation>Metriky kódu</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3776"/>
+        <source>&lt;b&gt;Delete session&lt;/b&gt;&lt;p&gt;This deletes the projects session file&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Smazat relaci&lt;/b&gt;&lt;p&gt;Smaže soubor s relací projektu.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3785"/>
+        <source>Code Metrics</source>
+        <translation>Metriky kódu</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3785"/>
         <source>&amp;Code Metrics...</source>
         <translation>Metriky &amp;kódu...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3780"/>
+        <location filename="../Project/Project.py" line="3789"/>
         <source>Show some code metrics for the project.</source>
         <translation>Zobrazit metriky kódu projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3782"/>
+        <location filename="../Project/Project.py" line="3791"/>
         <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This shows some code metrics for all Python files in the project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Metriky kódu...&lt;/b&gt;&lt;p&gt;Zobrazí se metriky kódu všech python souborů v projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3790"/>
+        <location filename="../Project/Project.py" line="3799"/>
         <source>Python Code Coverage</source>
         <translation>Pokrytí python kódu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3790"/>
+        <location filename="../Project/Project.py" line="3799"/>
         <source>Code Co&amp;verage...</source>
         <translation>Pokr&amp;ytí kódu...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3794"/>
+        <location filename="../Project/Project.py" line="3803"/>
         <source>Show code coverage information for the project.</source>
         <translation>Zobrazit informace pokrytí kódu projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3796"/>
+        <location filename="../Project/Project.py" line="3805"/>
         <source>&lt;b&gt;Code Coverage...&lt;/b&gt;&lt;p&gt;This shows the code coverage information for all Python files in the project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Pokrytí kódu...&lt;/b&gt;&lt;p&gt;Zobrazí informace o pokrytí kódu ve všech python souborech projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4582"/>
+        <location filename="../Project/Project.py" line="4591"/>
         <source>Profile Data</source>
         <translation>Profilovat data</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3804"/>
+        <location filename="../Project/Project.py" line="3813"/>
         <source>&amp;Profile Data...</source>
         <translation>&amp;Profilovat data...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3808"/>
+        <location filename="../Project/Project.py" line="3817"/>
         <source>Show profiling data for the project.</source>
         <translation>Zobrazit profilování dat projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3810"/>
-        <source>&lt;b&gt;Profile Data...&lt;/b&gt;&lt;p&gt;This shows the profiling data for the project.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Profilovat data&lt;/b&gt;&lt;p&gt;Zobrazí se profilování dat projektu.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="4636"/>
-        <source>Application Diagram</source>
-        <translation>Diagram aplikace</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3819"/>
+        <source>&lt;b&gt;Profile Data...&lt;/b&gt;&lt;p&gt;This shows the profiling data for the project.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Profilovat data&lt;/b&gt;&lt;p&gt;Zobrazí se profilování dat projektu.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="4645"/>
+        <source>Application Diagram</source>
+        <translation>Diagram aplikace</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3828"/>
         <source>&amp;Application Diagram...</source>
         <translation>Diagram &amp;aplikace...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3823"/>
+        <location filename="../Project/Project.py" line="3832"/>
         <source>Show a diagram of the project.</source>
         <translation>Zobrazit diagram projektu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3825"/>
+        <location filename="../Project/Project.py" line="3834"/>
         <source>&lt;b&gt;Application Diagram...&lt;/b&gt;&lt;p&gt;This shows a diagram of the project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Diagram aplikace...&lt;/b&gt;&lt;p&gt;Zobrazí diagram projektu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3918"/>
-        <source>&amp;Project</source>
-        <translation>&amp;Projekt</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3919"/>
-        <source>Open &amp;Recent Projects</source>
-        <translation>Otevřít poslední p&amp;rojekty</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3920"/>
-        <source>&amp;Version Control</source>
-        <translation>Kontrola &amp;verzí</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3924"/>
-        <source>Chec&amp;k</source>
-        <translation>Zkontro&amp;lovat</translation>
-    </message>
-    <message>
-        <location filename="../Project/Project.py" line="3926"/>
-        <source>Sho&amp;w</source>
-        <translation>Zo&amp;brazit</translation>
-    </message>
-    <message>
         <location filename="../Project/Project.py" line="3927"/>
-        <source>&amp;Diagrams</source>
-        <translation>&amp;Diagramy</translation>
+        <source>&amp;Project</source>
+        <translation>&amp;Projekt</translation>
     </message>
     <message>
         <location filename="../Project/Project.py" line="3928"/>
-        <source>Session</source>
-        <translation>Relace</translation>
+        <source>Open &amp;Recent Projects</source>
+        <translation>Otevřít poslední p&amp;rojekty</translation>
     </message>
     <message>
         <location filename="../Project/Project.py" line="3929"/>
+        <source>&amp;Version Control</source>
+        <translation>Kontrola &amp;verzí</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3933"/>
+        <source>Chec&amp;k</source>
+        <translation>Zkontro&amp;lovat</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3935"/>
+        <source>Sho&amp;w</source>
+        <translation>Zo&amp;brazit</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3936"/>
+        <source>&amp;Diagrams</source>
+        <translation>&amp;Diagramy</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3937"/>
+        <source>Session</source>
+        <translation>Relace</translation>
+    </message>
+    <message>
+        <location filename="../Project/Project.py" line="3938"/>
         <source>Source &amp;Documentation</source>
         <translation>Zd&amp;rojová dokumentace</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3931"/>
+        <location filename="../Project/Project.py" line="3940"/>
         <source>Debugger</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3932"/>
+        <location filename="../Project/Project.py" line="3941"/>
         <source>Pac&amp;kagers</source>
         <translation>Balíč&amp;ky</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4040"/>
+        <location filename="../Project/Project.py" line="4049"/>
         <source>Project</source>
         <translation>Projekt</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4106"/>
+        <location filename="../Project/Project.py" line="4115"/>
         <source>&amp;Clear</source>
         <translation>&amp;Vyčistit</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4245"/>
+        <location filename="../Project/Project.py" line="4254"/>
         <source>Search New Files</source>
         <translation>Hledat nové soubory</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4245"/>
+        <location filename="../Project/Project.py" line="4254"/>
         <source>There were no new files found to be added.</source>
         <translation>Nebyly nalezeny žádné soubory, které je možné přidat.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4391"/>
+        <location filename="../Project/Project.py" line="4400"/>
         <source>Version Control System</source>
         <translation>Version Control System</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4509"/>
+        <location filename="../Project/Project.py" line="4518"/>
         <source>Coverage Data</source>
         <translation>Datové pokrytí</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4559"/>
+        <location filename="../Project/Project.py" line="4568"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>V aktuálním projektu nebyl určen hlavní skript. Zrušeno</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4532"/>
+        <location filename="../Project/Project.py" line="4541"/>
         <source>Code Coverage</source>
         <translation>Pokrytí kódu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4532"/>
+        <location filename="../Project/Project.py" line="4541"/>
         <source>Please select a coverage file</source>
         <translation>Prosím, vyberte soubor pokrytí</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4582"/>
+        <location filename="../Project/Project.py" line="4591"/>
         <source>Please select a profile file</source>
         <translation>Prosím, vyberte soubor s profilem</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4636"/>
+        <location filename="../Project/Project.py" line="4645"/>
         <source>Include module names?</source>
         <translation>Včetně jmen modulů?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4794"/>
+        <location filename="../Project/Project.py" line="4803"/>
         <source>Create Package List</source>
         <translation>Vytvořit seznam balíčků</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3848"/>
+        <location filename="../Project/Project.py" line="3857"/>
         <source>Create &amp;Package List</source>
         <translation type="unfinished">Vytvořit Plugin &amp;archiv</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5041"/>
+        <location filename="../Project/Project.py" line="5050"/>
         <source>Create Plugin Archive</source>
         <translation>Vytvořit Plugin archiv</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4754"/>
+        <location filename="../Project/Project.py" line="4763"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;PKGLIST&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Přepsat jej?&lt;/p&gt;</translation>
     </message>
@@ -40916,7 +41101,7 @@
         <translation type="obsolete">&lt;p&gt;Soubor &lt;b&gt;PKGLIST&lt;/b&gt; neexistuje. Zrušeno...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4813"/>
+        <location filename="../Project/Project.py" line="4822"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>Projekt nemá definován hlavní skript. Zrušeno...</translation>
     </message>
@@ -40926,12 +41111,12 @@
         <translation>&lt;p&gt;Zdrojový adresář neobsahuje žádné soubory související s danou kategorií.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2697"/>
+        <location filename="../Project/Project.py" line="2703"/>
         <source>Select Version Control System</source>
         <translation>Vybrat Version Control System</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2347"/>
+        <location filename="../Project/Project.py" line="2351"/>
         <source>None</source>
         <translation>None</translation>
     </message>
@@ -40941,7 +41126,7 @@
         <translation>Zaregistrovat typ projektu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3864"/>
+        <location filename="../Project/Project.py" line="3873"/>
         <source>Create Plugin &amp;Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -40951,32 +41136,32 @@
         <translation>Nejdříve musíte specifikovat vzor překladu.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2446"/>
+        <location filename="../Project/Project.py" line="2450"/>
         <source>Translation Pattern</source>
         <translation>Vzor překladu</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2446"/>
+        <location filename="../Project/Project.py" line="2450"/>
         <source>Enter the path pattern for translation files (use &apos;%language%&apos; in place of the language code):</source>
         <translation>Zadejte vzor cesty pro soubory s překlady (použijte  &apos;%language%&apos; na místě s kódem jazyka):</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3644"/>
+        <location filename="../Project/Project.py" line="3653"/>
         <source>Lexer Associations</source>
         <translation>Spojení lexeru</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3644"/>
+        <location filename="../Project/Project.py" line="3653"/>
         <source>Lexer Associations...</source>
         <translation>Spojení lexeru...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3648"/>
+        <location filename="../Project/Project.py" line="3657"/>
         <source>Show the project lexer associations (overriding defaults)</source>
         <translation>Zobrazit spojení lexeru projektu (přepíše výchozí)</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3650"/>
+        <location filename="../Project/Project.py" line="3659"/>
         <source>&lt;b&gt;Lexer Associations...&lt;/b&gt;&lt;p&gt;This shows a dialog to edit the lexer associations of the project. These associations override the global lexer associations. Lexers are used to highlight the editor text.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Spojení lexeru...&lt;/b&gt;&lt;p&gt;Zobrazuje dialog s editací spojení lexeru projektu. Tato spojení přepisují globální lexer spojení. Lexer je použit pro zvýraznění textu v editoru.&lt;/p&gt;</translation>
     </message>
@@ -41066,7 +41251,7 @@
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Má se přepsat?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2848"/>
+        <location filename="../Project/Project.py" line="2857"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Má se přepsat?&lt;/p&gt;</translation>
     </message>
@@ -41091,12 +41276,12 @@
         <translation>&lt;p&gt;Adresář projektu &lt;b&gt;{0}&lt;/b&gt; nelze vytvořit.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4391"/>
+        <location filename="../Project/Project.py" line="4400"/>
         <source>&lt;p&gt;The selected VCS &lt;b&gt;{0}&lt;/b&gt; could not be found.&lt;br/&gt;Disabling version control.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Vybrané VCS &lt;b&gt;{0}&lt;/b&gt; nebylo nalezeno.&lt;br/&gt;Kontrola verzí vypnuta.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4794"/>
+        <location filename="../Project/Project.py" line="4803"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;PKGLIST&lt;/b&gt; nelze vytvořit.&lt;/p&gt;&lt;p&gt;Důvod: {0}&lt;/p&gt;</translation>
     </message>
@@ -41106,12 +41291,12 @@
         <translation type="obsolete">&lt;p&gt;Soubor &lt;b&gt;PKGLIST&lt;/b&gt; nelze načíst.&lt;/p&gt;&lt;p&gt;Důvod: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4925"/>
+        <location filename="../Project/Project.py" line="4934"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; nelze uložit do archivu. Ingorováno.&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4999"/>
+        <location filename="../Project/Project.py" line="5008"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Plugin soubor &lt;b&gt;{0}&lt;/b&gt; nelze přečíst.&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
@@ -41131,32 +41316,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2236"/>
+        <location filename="../Project/Project.py" line="2240"/>
         <source>Create main script</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2236"/>
+        <location filename="../Project/Project.py" line="2240"/>
         <source>&lt;p&gt;The mainscript &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;br/&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3833"/>
+        <location filename="../Project/Project.py" line="3842"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3833"/>
+        <location filename="../Project/Project.py" line="3842"/>
         <source>&amp;Load Diagram...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3837"/>
+        <location filename="../Project/Project.py" line="3846"/>
         <source>Load a diagram from file.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3839"/>
+        <location filename="../Project/Project.py" line="3848"/>
         <source>&lt;b&gt;Load Diagram...&lt;/b&gt;&lt;p&gt;This loads a diagram from file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -41186,37 +41371,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4379"/>
+        <location filename="../Project/Project.py" line="4388"/>
         <source>&lt;p&gt;The selected VCS &lt;b&gt;{0}&lt;/b&gt; could not be found. &lt;br/&gt;Reverting override.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5041"/>
+        <location filename="../Project/Project.py" line="5050"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3853"/>
+        <location filename="../Project/Project.py" line="3862"/>
         <source>Create an initial PKGLIST file for an eric6 plugin.</source>
         <translation type="unfinished">Vytvořit soubor eric5 plugin archivu. {6 ?}</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3855"/>
+        <location filename="../Project/Project.py" line="3864"/>
         <source>&lt;b&gt;Create Package List&lt;/b&gt;&lt;p&gt;This creates an initial list of files to include in an eric6 plugin archive. The list is created from the project file.&lt;/p&gt;</source>
         <translation type="unfinished">&lt;b&gt;Vytvořit Plugin archiv&lt;/b&gt;&lt;p&gt;Vytvoří soubor s eric5 plugin archivem za použití seznamu souborů daných v PKGLIST souboru. Jméno archivu je odvozeno ze jména hlavního skriptu.&lt;/p&gt; {6 ?}</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3869"/>
+        <location filename="../Project/Project.py" line="3878"/>
         <source>Create eric6 plugin archive files.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3871"/>
+        <location filename="../Project/Project.py" line="3880"/>
         <source>&lt;b&gt;Create Plugin Archives&lt;/b&gt;&lt;p&gt;This creates eric6 plugin archive files using the list of files given in a PKGLIST* file. The archive name is built from the main script name if not designated in the package list file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4895"/>
+        <location filename="../Project/Project.py" line="4904"/>
         <source>&lt;p&gt;The eric6 plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Soubor s eric5 plugin archivem &lt;b&gt;{0}&lt;/b&gt; nelze vytvořit. Zrušeno...&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt; {6 ?} {0}?} {1}?}</translation>
     </message>
@@ -41241,83 +41426,83 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2667"/>
+        <location filename="../Project/Project.py" line="2673"/>
         <source>Create project management directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="2667"/>
+        <location filename="../Project/Project.py" line="2673"/>
         <source>&lt;p&gt;The project directory &lt;b&gt;{0}&lt;/b&gt; is not writable.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3583"/>
+        <location filename="../Project/Project.py" line="3592"/>
         <source>Alt+Ctrl+P</source>
         <comment>Project|Search Project File</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3589"/>
+        <location filename="../Project/Project.py" line="3598"/>
         <source>Search for a file in the project list of files.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3591"/>
+        <location filename="../Project/Project.py" line="3600"/>
         <source>&lt;b&gt;Search Project File&lt;/b&gt;&lt;p&gt;This searches for a file in the project list of files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3583"/>
+        <location filename="../Project/Project.py" line="3592"/>
         <source>Search Project File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3583"/>
+        <location filename="../Project/Project.py" line="3592"/>
         <source>Search Project File...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4848"/>
+        <location filename="../Project/Project.py" line="4857"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3881"/>
+        <location filename="../Project/Project.py" line="3890"/>
         <source>Create Plugin Archives (Snapshot)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3881"/>
+        <location filename="../Project/Project.py" line="3890"/>
         <source>Create Plugin Archives (&amp;Snapshot)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3886"/>
+        <location filename="../Project/Project.py" line="3895"/>
         <source>Create eric6 plugin archive files (snapshot releases).</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="3888"/>
+        <location filename="../Project/Project.py" line="3897"/>
         <source>&lt;b&gt;Create Plugin Archives (Snapshot)&lt;/b&gt;&lt;p&gt;This creates eric6 plugin archive files using the list of files given in the PKGLIST* file. The archive name is built from the main script name if not designated in the package list file. The version entry of the main script is modified to reflect a snapshot release.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4827"/>
+        <location filename="../Project/Project.py" line="4836"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4844"/>
+        <location filename="../Project/Project.py" line="4853"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4844"/>
+        <location filename="../Project/Project.py" line="4853"/>
         <source>Abort</source>
         <translation type="unfinished">Přerušit</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4844"/>
+        <location filename="../Project/Project.py" line="4853"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -41327,22 +41512,22 @@
         <translation type="obsolete">Pokrytí</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4861"/>
+        <location filename="../Project/Project.py" line="4870"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4944"/>
+        <location filename="../Project/Project.py" line="4953"/>
         <source>&lt;p&gt;The eric6 plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4947"/>
+        <location filename="../Project/Project.py" line="4956"/>
         <source>&lt;p&gt;The eric6 plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="4837"/>
+        <location filename="../Project/Project.py" line="4846"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -43348,7 +43533,7 @@
         <translation>Vykonáno</translation>
     </message>
     <message>
-        <location filename="../DataViews/PyCoverageDialog.ui" line="172"/>
+        <location filename="../DataViews/PyCoverageDialog.py" line="349"/>
         <source>Coverage</source>
         <translation>Pokrytí</translation>
     </message>
@@ -43429,7 +43614,7 @@
         </translation>
     </message>
     <message>
-        <location filename="../DataViews/PyCoverageDialog.ui" line="192"/>
+        <location filename="../DataViews/PyCoverageDialog.py" line="345"/>
         <source>%v/%m Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -43437,7 +43622,7 @@
 <context>
     <name>PyProfileDialog</name>
     <message>
-        <location filename="../DataViews/PyProfileDialog.ui" line="20"/>
+        <location filename="../DataViews/PyProfileDialog.py" line="233"/>
         <source>Profile Results</source>
         <translation>Výsledky profilování</translation>
     </message>
@@ -43581,27 +43766,27 @@
 <context>
     <name>PyRegExpWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardPyRegExp.py" line="125"/>
+        <location filename="../Plugins/PluginWizardPyRegExp.py" line="127"/>
         <source>No current editor</source>
         <translation>Žádný aktuální editor</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardPyRegExp.py" line="125"/>
+        <location filename="../Plugins/PluginWizardPyRegExp.py" line="127"/>
         <source>Please open or create a file first.</source>
         <translation>Prosím, nejdříve otevřete nebo vytvořte soubor.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardPyRegExp.py" line="78"/>
+        <location filename="../Plugins/PluginWizardPyRegExp.py" line="80"/>
         <source>Python re Wizard</source>
         <translation>Python re průvodce</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardPyRegExp.py" line="74"/>
+        <location filename="../Plugins/PluginWizardPyRegExp.py" line="76"/>
         <source>&amp;Python re Wizard...</source>
         <translation>&amp;Python re průvodce...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardPyRegExp.py" line="79"/>
+        <location filename="../Plugins/PluginWizardPyRegExp.py" line="81"/>
         <source>&lt;b&gt;Python re Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a Python re string. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Python re průvodce&lt;/b&gt;&lt;p&gt;Tento průvodce otevře dialog pro zadání všech parametrů potřebných pro vytvoření Python re stringu. Vygenerovaný kód bude vložen na aktuální pozici kurzoru.&lt;/p&gt;</translation>
     </message>
@@ -44980,27 +45165,27 @@
 <context>
     <name>QRegExpWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardQRegExp.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQRegExp.py" line="127"/>
         <source>No current editor</source>
         <translation>Žádný aktuální editor</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegExp.py" line="125"/>
+        <location filename="../Plugins/PluginWizardQRegExp.py" line="127"/>
         <source>Please open or create a file first.</source>
         <translation>Prosím, nejdříve otevřete nebo vytvořte soubor.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegExp.py" line="78"/>
+        <location filename="../Plugins/PluginWizardQRegExp.py" line="80"/>
         <source>QRegExp Wizard</source>
         <translation>QRegExp průvodce</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegExp.py" line="74"/>
+        <location filename="../Plugins/PluginWizardQRegExp.py" line="76"/>
         <source>Q&amp;RegExp Wizard...</source>
         <translation>Q&amp;RegExp průvodce...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegExp.py" line="79"/>
+        <location filename="../Plugins/PluginWizardQRegExp.py" line="81"/>
         <source>&lt;b&gt;QRegExp Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a QRegExp. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation>&lt;b&gt;QRegExp průvodce&lt;/b&gt;&lt;p&gt;Tento průvodce otevře dialog pro zadání všech parametrů pro vytvoření QRegExp. Vygenerovaný kód je vložen na aktuální pozici kurzoru.&lt;/p&gt;</translation>
     </message>
@@ -46297,27 +46482,27 @@
 <context>
     <name>QRegularExpressionWizard</name>
     <message>
-        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="78"/>
+        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="80"/>
         <source>QRegularExpression Wizard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="74"/>
+        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="76"/>
         <source>QRegularE&amp;xpression Wizard...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="79"/>
+        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="81"/>
         <source>&lt;b&gt;QRegularExpression Wizard&lt;/b&gt;&lt;p&gt;This wizard opens a dialog for entering all the parameters needed to create a QRegularExpression string. The generated code is inserted at the current cursor position.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="126"/>
+        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="128"/>
         <source>No current editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="126"/>
+        <location filename="../Plugins/PluginWizardQRegularExpression.py" line="128"/>
         <source>Please open or create a file first.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -48078,7 +48263,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../WebBrowser/QtHelp/QtHelpFiltersDialog.ui" line="89"/>
+        <location filename="../WebBrowser/QtHelp/QtHelpFiltersDialog.py" line="150"/>
         <source>Remove Filters</source>
         <translation type="unfinished"></translation>
     </message>
@@ -48088,7 +48273,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../WebBrowser/QtHelp/QtHelpFiltersDialog.ui" line="99"/>
+        <location filename="../WebBrowser/QtHelp/QtHelpFiltersDialog.py" line="178"/>
         <source>Remove Attributes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -49556,7 +49741,7 @@
 <context>
     <name>SendRefererWhitelistDialog</name>
     <message>
-        <location filename="../WebBrowser/Network/SendRefererWhitelistDialog.ui" line="14"/>
+        <location filename="../WebBrowser/Network/SendRefererWhitelistDialog.py" line="52"/>
         <source>Send Referer Whitelist</source>
         <translation type="unfinished"></translation>
     </message>
@@ -50758,7 +50943,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Snapshot/SnapWidget.ui" line="20"/>
+        <location filename="../Snapshot/SnapWidget.py" line="531"/>
         <source>eric6 Snapshot</source>
         <translation type="unfinished"></translation>
     </message>
@@ -53378,7 +53563,7 @@
 <context>
     <name>SvnDiffDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnDiffDialog.ui" line="14"/>
+        <location filename="../Plugins/VcsPlugins/vcsPySvn/SvnDiffDialog.py" line="171"/>
         <source>Subversion Diff</source>
         <translation></translation>
     </message>
@@ -53655,12 +53840,12 @@
         <translation></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnLogBrowserDialog.ui" line="112"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnLogBrowserDialog.py" line="621"/>
         <source>Revision</source>
         <translation>Revize</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnLogBrowserDialog.ui" line="117"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnLogBrowserDialog.py" line="618"/>
         <source>Author</source>
         <translation>Autor</translation>
     </message>
@@ -53670,7 +53855,7 @@
         <translation>Datum</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnLogBrowserDialog.ui" line="127"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnLogBrowserDialog.py" line="141"/>
         <source>Message</source>
         <translation>Zpráva</translation>
     </message>
@@ -54142,7 +54327,7 @@
         <translation>Prot&amp;otokol:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnNewProjectOptionsDialog.ui" line="45"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnNewProjectOptionsDialog.py" line="128"/>
         <source>&amp;URL:</source>
         <translation>&amp;URL:</translation>
     </message>
@@ -54254,7 +54439,7 @@
         <translation>Výběr protokolu pro přístup do repozitáře</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnOptionsDialog.ui" line="45"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnOptionsDialog.py" line="95"/>
         <source>&amp;URL:</source>
         <translation>&amp;URL:</translation>
     </message>
@@ -55498,7 +55683,7 @@
 <context>
     <name>SvnStatusDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnStatusDialog.ui" line="14"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnStatusDialog.py" line="394"/>
         <source>Subversion Status</source>
         <translation></translation>
     </message>
@@ -55745,7 +55930,7 @@
         <translation>Chyba v procesu generování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnStatusDialog.ui" line="80"/>
+        <location filename="../Plugins/VcsPlugins/vcsSubversion/SvnStatusDialog.py" line="711"/>
         <source>Commit</source>
         <translation>Commit</translation>
     </message>
@@ -58164,22 +58349,22 @@
 <context>
     <name>SyntaxCheckerPlugin</name>
     <message>
-        <location filename="../Plugins/PluginSyntaxChecker.py" line="243"/>
+        <location filename="../Plugins/PluginSyntaxChecker.py" line="244"/>
         <source>Check Syntax</source>
         <translation>Kontrola syntaxe</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginSyntaxChecker.py" line="243"/>
+        <location filename="../Plugins/PluginSyntaxChecker.py" line="244"/>
         <source>&amp;Syntax...</source>
         <translation>&amp;Syntaxe...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginSyntaxChecker.py" line="154"/>
+        <location filename="../Plugins/PluginSyntaxChecker.py" line="155"/>
         <source>Check syntax.</source>
         <translation>Kontrola syntaxe.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginSyntaxChecker.py" line="247"/>
+        <location filename="../Plugins/PluginSyntaxChecker.py" line="248"/>
         <source>&lt;b&gt;Check Syntax...&lt;/b&gt;&lt;p&gt;This checks Python files for syntax errors.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Kontrola Syntaxe...&lt;/b&gt;&lt;p&gt;Zkontroluje všechny Python soubory na syntaktické chyby.&lt;/p&gt;</translation>
     </message>
@@ -58688,32 +58873,32 @@
 <context>
     <name>TabnannyPlugin</name>
     <message>
-        <location filename="../Plugins/PluginTabnanny.py" line="310"/>
+        <location filename="../Plugins/PluginTabnanny.py" line="311"/>
         <source>Check Indentations</source>
         <translation>Kontrola odsazení</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginTabnanny.py" line="310"/>
+        <location filename="../Plugins/PluginTabnanny.py" line="311"/>
         <source>&amp;Indentations...</source>
         <translation>&amp;Odsazení...</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginTabnanny.py" line="219"/>
+        <location filename="../Plugins/PluginTabnanny.py" line="220"/>
         <source>Check indentations using tabnanny.</source>
         <translation>Kontrola odsazení za použití tabnanny.</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginTabnanny.py" line="314"/>
+        <location filename="../Plugins/PluginTabnanny.py" line="315"/>
         <source>&lt;b&gt;Check Indentations...&lt;/b&gt;&lt;p&gt;This checks Python files for bad indentations using tabnanny.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Kontrola odsazení....&lt;/b&gt;&lt;p&gt;Zkontroluje všechny Python soubory na správné odsazení za použití funkce tabnanny.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginTabnanny.py" line="106"/>
+        <location filename="../Plugins/PluginTabnanny.py" line="107"/>
         <source>Python 2 batch check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginTabnanny.py" line="122"/>
+        <location filename="../Plugins/PluginTabnanny.py" line="123"/>
         <source>Python 3 batch check</source>
         <translation type="unfinished"></translation>
     </message>
@@ -61055,7 +61240,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.ui" line="14"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="400"/>
         <source>Unittest</source>
         <translation></translation>
     </message>
@@ -61562,573 +61747,573 @@
         <translation>Inicializace jednouživatelského aplikačního serveru...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1317"/>
+        <location filename="../UI/UserInterface.py" line="1319"/>
         <source>Project-Viewer</source>
         <translation>Prohlížeč projektu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1352"/>
+        <location filename="../UI/UserInterface.py" line="1354"/>
         <source>Debug-Viewer</source>
         <translation>Prohlížeč debugeru</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1403"/>
+        <location filename="../UI/UserInterface.py" line="1405"/>
         <source>Log-Viewer</source>
         <translation>Prohlížeč logu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1421"/>
+        <location filename="../UI/UserInterface.py" line="1423"/>
         <source>Task-Viewer</source>
         <translation>Prohlížeč úloh</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1439"/>
+        <location filename="../UI/UserInterface.py" line="1441"/>
         <source>Template-Viewer</source>
         <translation>Prohlížeč šablon</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1370"/>
+        <location filename="../UI/UserInterface.py" line="1372"/>
         <source>Shell</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1386"/>
+        <location filename="../UI/UserInterface.py" line="1388"/>
         <source>File-Browser</source>
         <translation>Browser souborů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1247"/>
+        <location filename="../UI/UserInterface.py" line="1249"/>
         <source>Quit</source>
         <translation>Konec</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1247"/>
+        <location filename="../UI/UserInterface.py" line="1249"/>
         <source>&amp;Quit</source>
         <translation>&amp;Konec</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1247"/>
+        <location filename="../UI/UserInterface.py" line="1249"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1253"/>
+        <location filename="../UI/UserInterface.py" line="1255"/>
         <source>Quit the IDE</source>
         <translation>Ukončit IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1254"/>
+        <location filename="../UI/UserInterface.py" line="1256"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Ukončit IDE&lt;/b&gt;&lt;p&gt;Ukončí se IDE. Nejdříve by se měly uložit neuložené změny. Python programy běžící v debug procesu budou ukončeny a nastavení budou uložena.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1283"/>
+        <location filename="../UI/UserInterface.py" line="1285"/>
         <source>Edit Profile</source>
         <translation>Editační profil</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1289"/>
-        <source>Activate the edit view profile</source>
-        <translation>Aktivovat profil editace</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1291"/>
+        <source>Activate the edit view profile</source>
+        <translation>Aktivovat profil editace</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1293"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Editační profil&lt;/b&gt;&lt;p&gt;Aktivování skupiny &apos;Editační profil&apos;. Okna, která se v tomto profilu zobrazí lze nastavit v dialogu &apos;Konfigurace profilu pohledů&apos;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1300"/>
+        <location filename="../UI/UserInterface.py" line="1302"/>
         <source>Debug Profile</source>
         <translation>Debugovací profil</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1306"/>
-        <source>Activate the debug view profile</source>
-        <translation>Aktivovat debugovací profil</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1308"/>
+        <source>Activate the debug view profile</source>
+        <translation>Aktivovat debugovací profil</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1310"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Debugovací profil&lt;/b&gt;&lt;p&gt;Aktivování skupiny &apos;Debugovací profil&apos;. Okna, která se v tomto profilu zobrazí lze nastavit v dialogu &apos;Konfigurace profilu pohledů&apos;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1317"/>
+        <location filename="../UI/UserInterface.py" line="1319"/>
         <source>&amp;Project-Viewer</source>
         <translation>Prohlížeč &amp;projektu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1317"/>
+        <location filename="../UI/UserInterface.py" line="1319"/>
         <source>Alt+Shift+P</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1352"/>
+        <location filename="../UI/UserInterface.py" line="1354"/>
         <source>Alt+Shift+D</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1370"/>
+        <location filename="../UI/UserInterface.py" line="1372"/>
         <source>&amp;Shell</source>
         <translation>&amp;Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1370"/>
+        <location filename="../UI/UserInterface.py" line="1372"/>
         <source>Alt+Shift+S</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1386"/>
+        <location filename="../UI/UserInterface.py" line="1388"/>
         <source>Alt+Shift+F</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1403"/>
+        <location filename="../UI/UserInterface.py" line="1405"/>
         <source>Alt+Shift+G</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1421"/>
+        <location filename="../UI/UserInterface.py" line="1423"/>
         <source>Alt+Shift+T</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1334"/>
+        <location filename="../UI/UserInterface.py" line="1336"/>
         <source>Alt+Shift+M</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1608"/>
+        <location filename="../UI/UserInterface.py" line="1610"/>
         <source>What&apos;s This?</source>
         <translation>Co je to?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1608"/>
+        <location filename="../UI/UserInterface.py" line="1610"/>
         <source>&amp;What&apos;s This?</source>
         <translation>&amp;Co je to?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1608"/>
+        <location filename="../UI/UserInterface.py" line="1610"/>
         <source>Shift+F1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1614"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>Context sensitive help</source>
         <translation>Kontextově senzitivní nápověda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1615"/>
+        <location filename="../UI/UserInterface.py" line="1617"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zobrazit kontextově senzitivní nápovědu&lt;/b&gt;&lt;p&gt;V režimu &quot;Co je to?&quot; se nad různými prvky aplikace u kurzoru zobrazí otazník. Když pak kliknete na tyto prvky, zobrazí se krátký popis co daný prvek znamená a jak jej použít. V dialogových oknech se tato funkce spustí tlačítkem kontextové nápovědy na horní liště.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1627"/>
+        <location filename="../UI/UserInterface.py" line="1629"/>
         <source>Helpviewer</source>
         <translation>Prohlížeč nápovědy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1627"/>
+        <location filename="../UI/UserInterface.py" line="1629"/>
         <source>&amp;Helpviewer...</source>
         <translation>Pro&amp;hlížeč nápovědy...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1627"/>
+        <location filename="../UI/UserInterface.py" line="1629"/>
         <source>F1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1633"/>
+        <location filename="../UI/UserInterface.py" line="1635"/>
         <source>Open the helpviewer window</source>
         <translation>Otevřít okno prohlížeče nápovědy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1655"/>
+        <location filename="../UI/UserInterface.py" line="1657"/>
         <source>Show Versions</source>
         <translation>Zobrazit verze</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1655"/>
+        <location filename="../UI/UserInterface.py" line="1657"/>
         <source>Show &amp;Versions</source>
         <translation>Zobrazit &amp;verze</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
-        <source>Display version information</source>
-        <translation>Zobrazit informace o verzích</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1661"/>
+        <source>Display version information</source>
+        <translation>Zobrazit informace o verzích</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zobrazit verze&lt;/b&gt;&lt;p&gt;Zobrazí informace o verzích.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1671"/>
+        <location filename="../UI/UserInterface.py" line="1673"/>
         <source>Check for Updates</source>
         <translation>Zjistit aktualizace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1668"/>
+        <location filename="../UI/UserInterface.py" line="1670"/>
         <source>Check for &amp;Updates...</source>
         <translation>Zjistit akt&amp;ualizace...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3103"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>Report Bug</source>
         <translation>Reportovat Bugy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1706"/>
+        <location filename="../UI/UserInterface.py" line="1708"/>
         <source>Report &amp;Bug...</source>
         <translation>Reportovat &amp;Bugy...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1710"/>
+        <location filename="../UI/UserInterface.py" line="1712"/>
         <source>Report a bug</source>
         <translation>Reportovat bug</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1711"/>
+        <location filename="../UI/UserInterface.py" line="1713"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Reportovat bug...&lt;/b&gt;&lt;p&gt;Otevře se dialog pro reportování bugu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2676"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Unittest</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1733"/>
+        <location filename="../UI/UserInterface.py" line="1735"/>
         <source>&amp;Unittest...</source>
         <translation>&amp;Unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1738"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Start unittest dialog</source>
         <translation>Otevřít dialog unittestu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1741"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Provést unittesty. V dialogovém okně se nastaví který test se má provést.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1747"/>
+        <location filename="../UI/UserInterface.py" line="1749"/>
         <source>Unittest Restart</source>
         <translation>Restart unittestu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1747"/>
+        <location filename="../UI/UserInterface.py" line="1749"/>
         <source>&amp;Restart Unittest...</source>
         <translation>&amp;Restart unittestu...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1752"/>
+        <location filename="../UI/UserInterface.py" line="1754"/>
         <source>Restart last unittest</source>
         <translation>Restart posledního unittestu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1753"/>
+        <location filename="../UI/UserInterface.py" line="1755"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Restart unittestu&lt;/b&gt;&lt;p&gt;Restartuje se poslední provedený unittest.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1777"/>
+        <location filename="../UI/UserInterface.py" line="1779"/>
         <source>Unittest Script</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1777"/>
+        <location filename="../UI/UserInterface.py" line="1779"/>
         <source>Unittest &amp;Script...</source>
         <translation>Unittest &amp;Script...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1782"/>
-        <source>Run unittest with current script</source>
-        <translation>Spustit unittest s aktuálním skriptem</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1784"/>
+        <source>Run unittest with current script</source>
+        <translation>Spustit unittest s aktuálním skriptem</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Spustit unittest s aktuálním skriptem.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4216"/>
+        <location filename="../UI/UserInterface.py" line="4218"/>
         <source>Unittest Project</source>
         <translation>Unittest Projekt</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1792"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>Unittest &amp;Project...</source>
         <translation>Unittest &amp;Projekt...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1797"/>
-        <source>Run unittest with current project</source>
-        <translation>Spustit unittest s aktuálním projektem</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1799"/>
+        <source>Run unittest with current project</source>
+        <translation>Spustit unittest s aktuálním projektem</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1801"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Unittest projekt&lt;/b&gt;&lt;p&gt;Spustit unittest s aktuálním projektem.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1860"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>UI Previewer</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1860"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>&amp;UI Previewer...</source>
         <translation>&amp;UI Previewer...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1865"/>
+        <location filename="../UI/UserInterface.py" line="1867"/>
         <source>Start the UI Previewer</source>
         <translation>Spustit UI Previewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1866"/>
+        <location filename="../UI/UserInterface.py" line="1868"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Spustit UI Previewer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1873"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Translations Previewer</source>
         <translation>Náhled překladů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1873"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>&amp;Translations Previewer...</source>
         <translation>Náhled &amp;překladů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
-        <source>Start the Translations Previewer</source>
-        <translation>Spustit Previewer překladů</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1880"/>
+        <source>Start the Translations Previewer</source>
+        <translation>Spustit Previewer překladů</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1882"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Previewer překladů&lt;/b&gt;&lt;p&gt;Spustit Previewer překladů.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1887"/>
+        <location filename="../UI/UserInterface.py" line="1889"/>
         <source>Compare Files</source>
         <translation>Porovnat soubory</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1887"/>
+        <location filename="../UI/UserInterface.py" line="1889"/>
         <source>&amp;Compare Files...</source>
         <translation>&amp;Porovnat soubory...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1905"/>
+        <location filename="../UI/UserInterface.py" line="1907"/>
         <source>Compare two files</source>
         <translation>Porovnat dva soubory</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1893"/>
+        <location filename="../UI/UserInterface.py" line="1895"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Porovnat soubory&lt;/b&gt;&lt;p&gt;Otevře dialog pro porovnání dvou souborů.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1900"/>
+        <location filename="../UI/UserInterface.py" line="1902"/>
         <source>Compare Files side by side</source>
         <translation>Porovnat soubory stranu proti straně</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1908"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Porovnat soubory stranu proti straně&lt;/b&gt;&lt;p&gt;Otevře dialog pro porovnání souborů a zobrazení rozdílů strany proti straně.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2001"/>
+        <location filename="../UI/UserInterface.py" line="2003"/>
         <source>Preferences</source>
         <translation>Nastavení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2001"/>
+        <location filename="../UI/UserInterface.py" line="2003"/>
         <source>&amp;Preferences...</source>
         <translation>Na&amp;stavení...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2006"/>
-        <source>Set the prefered configuration</source>
-        <translation>Nastavení konfigurace</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2008"/>
+        <source>Set the prefered configuration</source>
+        <translation>Nastavení konfigurace</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2010"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Nastavení&lt;/b&gt;&lt;p&gt;Upravit konfiguraci aplikace podle požadavků uživatele.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2045"/>
+        <location filename="../UI/UserInterface.py" line="2047"/>
         <source>Reload APIs</source>
         <translation>Obnovit API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2045"/>
+        <location filename="../UI/UserInterface.py" line="2047"/>
         <source>Reload &amp;APIs</source>
         <translation>Obnovit &amp;API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2049"/>
-        <source>Reload the API information</source>
-        <translation>Obnovit API nastavení</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2051"/>
+        <source>Reload the API information</source>
+        <translation>Obnovit API nastavení</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2053"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Obnovit API&lt;/b&gt;&lt;p&gt;Obnovit API nastavení.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2076"/>
         <source>View Profiles</source>
         <translation>Profily pohledů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2076"/>
         <source>&amp;View Profiles...</source>
         <translation>Profily &amp;pohledů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2079"/>
-        <source>Configure view profiles</source>
-        <translation>Konfigurace profilů pohledů</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2081"/>
+        <source>Configure view profiles</source>
+        <translation>Konfigurace profilů pohledů</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2083"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Profily pohledů&lt;/b&gt;&lt;p&gt;Konfigurace profilu pohledů. V tomto dialogu můžete nastavit zobrazování různých typů pohledů - editačních oken.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2106"/>
+        <location filename="../UI/UserInterface.py" line="2108"/>
         <source>Keyboard Shortcuts</source>
         <translation>Klávesové zkratky</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2106"/>
+        <location filename="../UI/UserInterface.py" line="2108"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>Klávesové &amp;zkratky...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2111"/>
-        <source>Set the keyboard shortcuts</source>
-        <translation>Nastavení klávesových zkratek</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2113"/>
+        <source>Set the keyboard shortcuts</source>
+        <translation>Nastavení klávesových zkratek</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2115"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Klávesové zkratky&lt;/b&gt;&lt;p&gt;Nastavení klávesových zkratek aplikace podle zvyklostí uživatele.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5571"/>
+        <location filename="../UI/UserInterface.py" line="5573"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>Exportovat klávesové zkratky</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2121"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>&amp;Exportovat klávesové zkratky...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
-        <source>Export the keyboard shortcuts</source>
-        <translation>Export klávesových zkratek</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2128"/>
+        <source>Export the keyboard shortcuts</source>
+        <translation>Export klávesových zkratek</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Export klávesových zkratek&lt;/b&gt;&lt;p&gt;Exportují se klávesové zkratky z aplikace.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5595"/>
+        <location filename="../UI/UserInterface.py" line="5597"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>Import klávesových zkratek</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2135"/>
+        <location filename="../UI/UserInterface.py" line="2137"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>&amp;Import klávesových zkratek...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2140"/>
-        <source>Import the keyboard shortcuts</source>
-        <translation>Import klávesových zkratek</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2142"/>
+        <source>Import the keyboard shortcuts</source>
+        <translation>Import klávesových zkratek</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2144"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Import klávesových zkratek&lt;/b&gt;&lt;p&gt;Do aplikace se importují klávesové zkratky.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2200"/>
+        <location filename="../UI/UserInterface.py" line="2202"/>
         <source>Activate current editor</source>
         <translation>Aktivovat aktuální editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2200"/>
+        <location filename="../UI/UserInterface.py" line="2202"/>
         <source>Alt+Shift+E</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2210"/>
+        <location filename="../UI/UserInterface.py" line="2212"/>
         <source>Ctrl+Alt+Tab</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2221"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2309"/>
         <source>Qt4 Documentation</source>
         <translation>Qt4 dokumentace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2309"/>
         <source>Qt&amp;4 Documentation</source>
         <translation>Qt&amp;4 dokumentace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2311"/>
+        <location filename="../UI/UserInterface.py" line="2313"/>
         <source>Open Qt4 Documentation</source>
         <translation>Otevřít Qt4 dokumentaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2337"/>
+        <location filename="../UI/UserInterface.py" line="2339"/>
         <source>PyQt4 Documentation</source>
         <translation>PyQt4 dokumentace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2341"/>
+        <location filename="../UI/UserInterface.py" line="2343"/>
         <source>Open PyQt4 Documentation</source>
         <translation>Otevřít PyQt4 dokumentaci</translation>
     </message>
     <message>
-        <