Как отмечено в этом вопросе SO, ZSH сжимает соседние разделители в строке разделен по умолчанию. Теперь в ZSH 5.05 прилагаемое исправление не работает.
Hexagon% string="1::3"
Hexagon% setopt interactive_comments
Hexagon% a=("${(s/:/)string}") # notice the quotes
Hexagon%
Hexagon% echo $a[1] # 1, good
1
Hexagon% echo $a[2] # nothing, good
3
Hexagon% echo $a[3] # 3, good
Как видите, мой результат не совпадает с записанным на предыдущем ZSH. Как я могу эмулировать эту функциональность, и, что еще лучше, есть ли портативный способ сделать это?