X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=widgets.sh;h=6af562e84cb4f4e7fa6e3d703472e8df144737db;hb=adcddc790b325724f51774ea297f9404b62c3b67;hp=f79d457303b672eeb0ea35ab00478d531dfba131;hpb=3c0572e592c39a0e7d4d6794b0fb68cf4719a79f;p=serve0 diff --git a/widgets.sh b/widgets.sh index f79d457..6af562e 100644 --- a/widgets.sh +++ b/widgets.sh @@ -15,19 +15,18 @@ if [ ! -s "$c_tags" -o ! -s "$c_tagcategories" ] \ || [ "$(find "$_DATA/" -path '*/.index/meta' -newer "$c_tags")" ] then w_tags="$( cn=1 - find "$_DATA/" -path '*/.index/meta' -exec \ - sed -E 's;^.*\t.*\t.*\ttags=(.*)\tcomment=.*\t.*\r$;\1;; - s;,;\n;g;' \ - '{}' + \ - | UNSTRING \ + find "$_DATA/" -path '*/.index/meta' -print0 \ + | xargs -0 -r sed -E ' + s;^.*\t.*\t.*\ttags=(.*)\tcomment=.*\t.*\r$;\1;; + s;,;\n;g;' \ | { sort; printf '\n'; } \ | while read -r tag; do - [ "$tag" = "$otag" ] \ - && cn=$((cn + 1)) \ - || { - printf "%i %s\n" "$cn" "$otag" + if [ "$tag" = "$otag" ]; then + cn=$((cn + 1)) + else + printf "%i %s\n" "$cn" "$(UNSTRING "$otag")" cn=1 - } + fi otag="$tag" done \ |sort -rn |cut -f2- |HTML \