mirror of
https://github.com/esphome/esphome.git
synced 2025-07-28 14:16:40 +00:00
parent
9451781915
commit
9e002cd7a3
@ -146,8 +146,11 @@ def _substitute_item(substitutions, item, path, jinja, ignore_missing):
|
||||
if sub is not None:
|
||||
item[k] = sub
|
||||
for old, new in replace_keys:
|
||||
item[new] = merge_config(item.get(old), item.get(new))
|
||||
del item[old]
|
||||
if str(new) == str(old):
|
||||
item[new] = item[old]
|
||||
else:
|
||||
item[new] = merge_config(item.get(old), item.get(new))
|
||||
del item[old]
|
||||
elif isinstance(item, str):
|
||||
sub = _expand_substitutions(substitutions, item, path, jinja, ignore_missing)
|
||||
if isinstance(sub, JinjaStr) or sub != item:
|
||||
|
@ -17,3 +17,5 @@ test_list:
|
||||
- ${undefined_var}
|
||||
- $undefined_var
|
||||
- ${ undefined_var }
|
||||
- key1: 1
|
||||
key2: 2
|
||||
|
@ -19,3 +19,5 @@ test_list:
|
||||
- ${undefined_var}
|
||||
- $undefined_var
|
||||
- ${ undefined_var }
|
||||
- key${var1}: 1
|
||||
key${var2}: 2
|
||||
|
@ -6,6 +6,7 @@ package_result:
|
||||
root file
|
||||
- Double substitution also works; the value of var7 is 79, where A is a package
|
||||
var
|
||||
- key79: Key should substitute to key79
|
||||
local_results:
|
||||
- The value of B is 5
|
||||
- 'You will see, however, that
|
||||
|
@ -1,3 +1,4 @@
|
||||
package_result:
|
||||
- The value of A*B is ${A * B}, where A is a package var and B is a substitution in the root file
|
||||
- Double substitution also works; the value of var7 is ${var$A}, where A is a package var
|
||||
- key${var7}: Key should substitute to key79
|
||||
|
Loading…
x
Reference in New Issue
Block a user