--- a/Plugins/PluginVcsMercurial.py Sun Mar 30 22:00:14 2014 +0200 +++ b/Plugins/PluginVcsMercurial.py Thu Apr 03 23:05:31 2014 +0200 @@ -28,7 +28,7 @@ author = "Detlev Offenbach <detlev@die-offenbachs.de>" autoactivate = False deactivateable = True -version = "5.4.0" +version = "5.5.0" pluginType = "version_control" pluginTypename = "Mercurial" className = "VcsMercurialPlugin" @@ -160,7 +160,7 @@ self.__mercurialDefaults = { "StopLogOnCopy": True, # used in log browser "UseLogBrowser": True, - "LogLimit": 100, + "LogLimit": 20, "CommitMessages": 20, "PullUpdate": False, "PreferUnbundle": False, @@ -168,6 +168,10 @@ "ServerStyle": "", "CleanupPatterns": "*.orig *.rej *~", "CreateBackup": False, + "InternalMerge": False, + "Encoding": "utf-8", + "EncodingMode": "strict", + "ConsiderHidden": False, } from VcsPlugins.vcsMercurial.ProjectHelper import HgProjectHelper @@ -212,7 +216,8 @@ @return the requested setting """ if key in ["StopLogOnCopy", "UseLogBrowser", "PullUpdate", - "PreferUnbundle", "CreateBackup"]: + "PreferUnbundle", "CreateBackup", "InternalMerge", + "ConsiderHidden"]: return Preferences.toBool(Preferences.Prefs.settings.value( "Mercurial/" + key, self.__mercurialDefaults[key])) elif key in ["LogLimit", "CommitMessages", "ServerPort"]: @@ -233,6 +238,25 @@ @param value the value to be set """ Preferences.Prefs.settings.setValue("Mercurial/" + key, value) + + def getGlobalOptions(self): + """ + Public method to build a list of global options. + + @return list of global options (list of string) + """ + args = [] + if self.getPreferences("Encoding") != \ + self.__mercurialDefaults["Encoding"]: + args.append("--encoding") + args.append(self.getPreferences("Encoding")) + if self.getPreferences("EncodingMode") != \ + self.__mercurialDefaults["EncodingMode"]: + args.append("--encodingmode") + args.append(self.getPreferences("EncodingMode")) + if self.getPreferences("ConsiderHidden"): + args.append("--hidden") + return args def getConfigPath(self): """