bug if macro definition and not integer is used to identify layers (#12648)

This commit is contained in:
sendmmsg 2021-06-24 04:27:10 +02:00 committed by GitHub
parent 480b7e595e
commit d45a24a954
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -164,7 +164,16 @@ class KeymapBeautifier:
key_symbols = [key_symbols[i] for i in self.index_conversion_map_reversed(self.INDEX_CONVERSTION_LAYOUT_ergodox_pretty_to_LAYOUT_ergodox)]
padded_key_symbols = self.pad_key_symbols(key_symbols, input_layout)
current_pretty_output_layer = self.pretty_output_layer(layer.name[0].value, padded_key_symbols)
layer_identifier = None
if hasattr(layer.name[0], "value"):
layer_identifier = layer.name[0].value
elif hasattr(layer.name[0], "name"):
layer_identifier = layer.name[0].name
else:
raise AttributeError("Layer is missing both index and name (e.g., [BASE] = LAYOUT_ergodox(...))")
current_pretty_output_layer = self.pretty_output_layer(layer_identifier, padded_key_symbols)
# strip trailing spaces from padding
layer_output.append(re.sub(r" +\n", "\n", current_pretty_output_layer))