From: Sergey Matveev Date: Sun, 13 Mar 2022 10:36:21 +0000 (+0300) Subject: Simpler deduplication X-Git-Url: http://www.git.stargrave.org/?p=zk.zsh.git;a=commitdiff_plain;h=16c71d56611fd195fd8ad1f8298bb0d629a2ac45 Simpler deduplication --- diff --git a/zk.zsh b/zk.zsh index 5a46d99..5326cb0 100755 --- a/zk.zsh +++ b/zk.zsh @@ -34,19 +34,14 @@ for p (${(k)pages}) { } # Deduplicate all references -typeset -A ws for p (${(k)links}) { - ws=() - for w (${=${links[$p]}}) { - ws[$w]=1 - backs[$w]="$p ${backs[$w]}" - } - links[$p]=${(k)ws} + local ws=(${(u)=links[$p]}) + links[$p]=${(j: :)ws} + for w ($ws) backs[$w]="$p ${backs[$w]}" } for p (${(k)backs}) { - ws=() - for w (${=${backs[$p]}}) ws[$w]=1 - backs[$p]=${(k)ws} + local ws=(${(u)=backs[$p]}) + backs[$p]=${(j: :)ws} } autoload -U relative