{# Variables widget — expects: buffer (EditBuffer), var_refs (dict[str, list[str]]) #} {% set vars_dict = buffer.raw.get('vars', {}) %}
{% if vars_dict is mapping and vars_dict %}
{% for name, val in vars_dict | dictsort %} {% set source_info = value_source(val) %} {% set current_source = source_info[0] %} {% set display_value = source_info[1] %} {% set refs = var_refs.get(name, []) %} {% set ref_count = refs | length %}
{{ name }} {% if ref_count > 0 %} {{ ref_count }} ref{{ 's' if ref_count != 1 else '' }} {% else %} unused {% endif %}
{% if current_source == 'literal' %} {% else %} {% endif %}
{% endfor %}
{% else %}
No variables defined.
{% endif %}