Commits

Jason R. Coombs committed e213c0c

Added RegisteredEnvironment.add method

Comments (0)

Files changed (2)

 Changes
 -------
 
+2.12
+~~~~
+
+* Added `add` method to the environ RegisteredEnvironments. Use it to add
+  a value to a list of values but only if it's not already present.
+
 2.11.1
 ~~~~~~
 

jaraco/windows/environ.py

 		class_.notify()
 
 	@classmethod
+	def add(class_, name, value, sep=';'):
+		"""
+		Add a value to a delimited variable, but only when the value isn't
+		already present.
+		"""
+		values = class_.get_values_list(name, sep)
+		if value in values:
+			return
+		new_value = sep.join(values + [value])
+		winreg.SetValueEx(class_.key, name, 0, winreg.REG_EXPAND_SZ,
+			new_value)
+		class_.notify()
+
+	@classmethod
 	def remove_values(class_, name, value_substring, options):
 		sep = ';'
 		values = class_.get_values_list(name, sep)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.