{{range pipeline}} T1 {{end}}
The value of the pipeline must be an array, slice, map, or channel.
If the value of the pipeline has length zero, nothing is output;
otherwise, <b>dot is set to the successive elements of the array,
slice, or map</b> and T1 is executed. If the value is a map and the
keys are of basic type with a defined order ("comparable"), the
elements will be visited in sorted key order.
...
Конвейер внутри действия может инициализировать переменную для захвата результата. Инициализация имеет синтаксис
$variable := pipeline
...
Если действие «диапазон» инициализирует переменную, переменная устанавливается на последовательные элементы итерации. Также «диапазон» может объявлять две переменные, разделенные запятой:
range $index, $element := pipeline
В этом случае $ index и $ element устанавливаются в последовательные значения индекса массива / слайса или ключа и элемента карты соответственно. Обратите внимание, что если есть только одна переменная, ей присваивается элемент; это противоположно соглашению в предложениях диапазона Go.
(выделены мной жирным шрифтом)