modules: use curly braces to enclose value in Tcl modulefile (#38375)
Use curly braces instead of quotes to enclose value or text in Tcl modulefile. Within curly braces Tcl special characters like [, ] or $ are treated verbatim whereas they are evaluated within quotes. Curly braces is Tcl recommended way to enclose verbatim content [1]. Note: if curly braces charaters are used within content, they must be balanced. This point has been checked against current repository and no unbalanced curly braces has been spotted. Fixes #24243 [1] https://wiki.tcl-lang.org/page/Tcl+Minimal+Escaping+Style
This commit is contained in:

committed by
GitHub

parent
ae08b25dac
commit
d9fbdfbee9
@@ -11,16 +11,16 @@
|
||||
|
||||
{% block header %}
|
||||
{% if short_description %}
|
||||
module-whatis "{{ short_description }}"
|
||||
module-whatis {{ '{' }}{{ short_description }}{{ '}' }}
|
||||
{% endif %}
|
||||
|
||||
proc ModulesHelp { } {
|
||||
puts stderr "Name : {{ spec.name }}"
|
||||
puts stderr "Version: {{ spec.version }}"
|
||||
puts stderr "Target : {{ spec.target }}"
|
||||
puts stderr {{ '{' }}Name : {{ spec.name }}{{ '}' }}
|
||||
puts stderr {{ '{' }}Version: {{ spec.version }}{{ '}' }}
|
||||
puts stderr {{ '{' }}Target : {{ spec.target }}{{ '}' }}
|
||||
{% if long_description %}
|
||||
puts stderr ""
|
||||
{{ long_description| textwrap(72)| quote()| prepend_to_line(' puts stderr ')| join() }}
|
||||
puts stderr {}
|
||||
{{ long_description| textwrap(72)| curly_quote()| prepend_to_line(' puts stderr ')| join() }}
|
||||
{% endif %}
|
||||
}
|
||||
{% endblock %}
|
||||
@@ -54,13 +54,13 @@ conflict {{ name }}
|
||||
{% block environment %}
|
||||
{% for command_name, cmd in environment_modifications %}
|
||||
{% if command_name == 'PrependPath' %}
|
||||
prepend-path --delim "{{ cmd.separator }}" {{ cmd.name }} "{{ cmd.value }}"
|
||||
prepend-path --delim {{ '{' }}{{ cmd.separator }}{{ '}' }} {{ cmd.name }} {{ '{' }}{{ cmd.value }}{{ '}' }}
|
||||
{% elif command_name in ('AppendPath', 'AppendFlagsEnv') %}
|
||||
append-path --delim "{{ cmd.separator }}" {{ cmd.name }} "{{ cmd.value }}"
|
||||
append-path --delim {{ '{' }}{{ cmd.separator }}{{ '}' }} {{ cmd.name }} {{ '{' }}{{ cmd.value }}{{ '}' }}
|
||||
{% elif command_name in ('RemovePath', 'RemoveFlagsEnv') %}
|
||||
remove-path --delim "{{ cmd.separator }}" {{ cmd.name }} "{{ cmd.value }}"
|
||||
remove-path --delim {{ '{' }}{{ cmd.separator }}{{ '}' }} {{ cmd.name }} {{ '{' }}{{ cmd.value }}{{ '}' }}
|
||||
{% elif command_name == 'SetEnv' %}
|
||||
setenv {{ cmd.name }} "{{ cmd.value }}"
|
||||
setenv {{ cmd.name }} {{ '{' }}{{ cmd.value }}{{ '}' }}
|
||||
{% elif command_name == 'UnsetEnv' %}
|
||||
unsetenv {{ cmd.name }}
|
||||
{% endif %}
|
||||
@@ -68,7 +68,7 @@ unsetenv {{ cmd.name }}
|
||||
{% endfor %}
|
||||
{# Make sure system man pages are enabled by appending trailing delimiter to MANPATH #}
|
||||
{% if has_manpath_modifications %}
|
||||
append-path --delim ":" MANPATH ""
|
||||
append-path --delim {{ '{' }}:{{ '}' }} MANPATH {{ '{' }}{{ '}' }}
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
|
Reference in New Issue
Block a user