26 # Start-Of-Header |
26 # Start-Of-Header |
27 name = "Mercurial Plugin" |
27 name = "Mercurial Plugin" |
28 author = "Detlev Offenbach <detlev@die-offenbachs.de>" |
28 author = "Detlev Offenbach <detlev@die-offenbachs.de>" |
29 autoactivate = False |
29 autoactivate = False |
30 deactivateable = True |
30 deactivateable = True |
31 version = "5.4.0" |
31 version = "5.5.0" |
32 pluginType = "version_control" |
32 pluginType = "version_control" |
33 pluginTypename = "Mercurial" |
33 pluginTypename = "Mercurial" |
34 className = "VcsMercurialPlugin" |
34 className = "VcsMercurialPlugin" |
35 packageName = "__core__" |
35 packageName = "__core__" |
36 shortDescription = "Implements the Mercurial version control interface." |
36 shortDescription = "Implements the Mercurial version control interface." |
158 self.__ui = ui |
158 self.__ui = ui |
159 |
159 |
160 self.__mercurialDefaults = { |
160 self.__mercurialDefaults = { |
161 "StopLogOnCopy": True, # used in log browser |
161 "StopLogOnCopy": True, # used in log browser |
162 "UseLogBrowser": True, |
162 "UseLogBrowser": True, |
163 "LogLimit": 100, |
163 "LogLimit": 20, |
164 "CommitMessages": 20, |
164 "CommitMessages": 20, |
165 "PullUpdate": False, |
165 "PullUpdate": False, |
166 "PreferUnbundle": False, |
166 "PreferUnbundle": False, |
167 "ServerPort": 8000, |
167 "ServerPort": 8000, |
168 "ServerStyle": "", |
168 "ServerStyle": "", |
169 "CleanupPatterns": "*.orig *.rej *~", |
169 "CleanupPatterns": "*.orig *.rej *~", |
170 "CreateBackup": False, |
170 "CreateBackup": False, |
|
171 "InternalMerge": False, |
|
172 "Encoding": "utf-8", |
|
173 "EncodingMode": "strict", |
|
174 "ConsiderHidden": False, |
171 } |
175 } |
172 |
176 |
173 from VcsPlugins.vcsMercurial.ProjectHelper import HgProjectHelper |
177 from VcsPlugins.vcsMercurial.ProjectHelper import HgProjectHelper |
174 self.__projectHelperObject = HgProjectHelper(None, None) |
178 self.__projectHelperObject = HgProjectHelper(None, None) |
175 try: |
179 try: |
210 |
214 |
211 @param key the key of the value to get |
215 @param key the key of the value to get |
212 @return the requested setting |
216 @return the requested setting |
213 """ |
217 """ |
214 if key in ["StopLogOnCopy", "UseLogBrowser", "PullUpdate", |
218 if key in ["StopLogOnCopy", "UseLogBrowser", "PullUpdate", |
215 "PreferUnbundle", "CreateBackup"]: |
219 "PreferUnbundle", "CreateBackup", "InternalMerge", |
|
220 "ConsiderHidden"]: |
216 return Preferences.toBool(Preferences.Prefs.settings.value( |
221 return Preferences.toBool(Preferences.Prefs.settings.value( |
217 "Mercurial/" + key, self.__mercurialDefaults[key])) |
222 "Mercurial/" + key, self.__mercurialDefaults[key])) |
218 elif key in ["LogLimit", "CommitMessages", "ServerPort"]: |
223 elif key in ["LogLimit", "CommitMessages", "ServerPort"]: |
219 return int(Preferences.Prefs.settings.value( |
224 return int(Preferences.Prefs.settings.value( |
220 "Mercurial/" + key, self.__mercurialDefaults[key])) |
225 "Mercurial/" + key, self.__mercurialDefaults[key])) |
231 |
236 |
232 @param key the key of the setting to be set |
237 @param key the key of the setting to be set |
233 @param value the value to be set |
238 @param value the value to be set |
234 """ |
239 """ |
235 Preferences.Prefs.settings.setValue("Mercurial/" + key, value) |
240 Preferences.Prefs.settings.setValue("Mercurial/" + key, value) |
|
241 |
|
242 def getGlobalOptions(self): |
|
243 """ |
|
244 Public method to build a list of global options. |
|
245 |
|
246 @return list of global options (list of string) |
|
247 """ |
|
248 args = [] |
|
249 if self.getPreferences("Encoding") != \ |
|
250 self.__mercurialDefaults["Encoding"]: |
|
251 args.append("--encoding") |
|
252 args.append(self.getPreferences("Encoding")) |
|
253 if self.getPreferences("EncodingMode") != \ |
|
254 self.__mercurialDefaults["EncodingMode"]: |
|
255 args.append("--encodingmode") |
|
256 args.append(self.getPreferences("EncodingMode")) |
|
257 if self.getPreferences("ConsiderHidden"): |
|
258 args.append("--hidden") |
|
259 return args |
236 |
260 |
237 def getConfigPath(self): |
261 def getConfigPath(self): |
238 """ |
262 """ |
239 Public method to get the filename of the config file. |
263 Public method to get the filename of the config file. |
240 |
264 |