Skip to content

Commit 0341863

Browse files
committed
keep a copy of option_name as display_name
1 parent 74cb9c9 commit 0341863

File tree

1 file changed

+13
-8
lines changed

1 file changed

+13
-8
lines changed

src/Options.py

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ def addOptionToGroup(option_name: str, group: str):
8585
for option_name, option in option_table.get('core', {}).items():
8686
if option_name.startswith('_'): #To allow commenting out options
8787
continue
88+
option_display_name = option_name
8889
option_name = format_to_valid_identifier(option_name)
8990

9091
if manual_options.get(option_name):
@@ -98,18 +99,18 @@ def addOptionToGroup(option_name: str, group: str):
9899
if original_option.__base__ != option_type: #only recreate if needed
99100
args = getOriginalOptionArguments(original_option)
100101
manual_options[option_name] = type(option_name, (option_type,), dict(args))
101-
logging.debug(f"Manual: Option.json converted option '{option_name}' into a {option_type}")
102+
logging.debug(f"Manual: Option.json converted option '{option_display_name}' into a {option_type}")
102103

103104
elif issubclass(original_option, Choice):
104105
if option.get("values"):
105-
raise Exception(f"You cannot modify the values of the '{option_name}' option since they cannot have their value changed by Option.json")
106+
raise Exception(f"You cannot modify the values of the '{option_display_name}' option since they cannot have their value changed by Option.json")
106107

107108
if option.get('aliases'):
108109
for alias, value in option['aliases'].items():
109110
original_option.aliases[alias] = value
110111
original_option.options.update(original_option.aliases) #for an alias to be valid it must also be in options
111112

112-
logging.debug(f"Manual: Option.json modified option '{option_name}''s aliases")
113+
logging.debug(f"Manual: Option.json modified option '{option_display_name}''s aliases")
113114

114115
elif issubclass(original_option, Range):
115116
if option.get('values'): #let user add named values
@@ -123,11 +124,14 @@ def addOptionToGroup(option_name: str, group: str):
123124
args['special_range_names'] = {**args['special_range_names'], **{l.lower(): v for l, v in option['values'].items()}}
124125

125126
manual_options[option_name] = type(option_name, (NamedRange,), dict(args))
126-
logging.debug(f"Manual: Option.json converted option '{option_name}' into a {NamedRange}")
127+
logging.debug(f"Manual: Option.json converted option '{option_display_name}' into a {NamedRange}")
127128

128129
if option.get('display_name'):
129130
manual_options[option_name].display_name = option['display_name']
130131

132+
elif option_name != option_display_name:
133+
manual_options[option_name].display_name = option_display_name
134+
131135
manual_options[option_name].__doc__ = convert_to_long_string(option.get('description', original_doc))
132136
if option.get('rich_text_doc'):
133137
manual_options[option_name].rich_text_doc = option["rich_text_doc"]
@@ -140,24 +144,25 @@ def addOptionToGroup(option_name: str, group: str):
140144
elif option.get('visibility'):
141145
manual_options[option_name].visibility = convertOptionVisibility(option['visibility'])
142146
else:
143-
logging.debug(f"Manual: Option.json just tried to modify the option '{option_name}' but it doesn't currently exists")
147+
logging.debug(f"Manual: Option.json just tried to modify the option '{option_display_name}' but it doesn't currently exists")
144148

145149

146150
supported_option_types = ["Toggle", "Choice", "Range"]
147151
for option_name, option in option_table.get('user', {}).items():
148152
if option_name.startswith('_'): #To allow commenting out options
149153
continue
154+
option_display_name = option_name
150155
option_name = format_to_valid_identifier(option_name)
151156
if manual_options.get(option_name):
152-
logging.warning(f"Manual: An option with the name '{option_name}' cannot be added since it already exists in Manual Core Options. \nTo modify an existing option move it to the 'core' section of Option.json")
157+
logging.warning(f"Manual: An option with the name '{option_display_name}' cannot be added since it already exists in Manual Core Options. \nTo modify an existing option move it to the 'core' section of Option.json")
153158

154159
else:
155160
option_type = option.get('type', "").title()
156161

157162
if option_type not in supported_option_types:
158-
raise Exception(f'Option {option_name} in options.json has an invalid type of "{option["type"]}".\nIt must be one of the folowing: {supported_option_types}')
163+
raise Exception(f'Option {option_display_name} in options.json has an invalid type of "{option["type"]}".\nIt must be one of the folowing: {supported_option_types}')
159164

160-
args = {'display_name': option.get('display_name', option_name)}
165+
args = {'display_name': option.get('display_name', option_display_name)}
161166

162167
if option_type == "Toggle":
163168
value = option.get('default', False)

0 commit comments

Comments
 (0)