From 08c9bcb3fed37d9483258bd97aaebc47b54b3fa3 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sun, 17 Nov 2024 19:49:05 -0300 Subject: rm -rf v2/ --- v2/src/bin/series | 102 ------------------------------------------------------ 1 file changed, 102 deletions(-) delete mode 100755 v2/src/bin/series (limited to 'v2/src/bin/series') diff --git a/v2/src/bin/series b/v2/src/bin/series deleted file mode 100755 index 6712368..0000000 --- a/v2/src/bin/series +++ /dev/null @@ -1,102 +0,0 @@ -#!/bin/sh -set -eu - -usage() { - cat <<-'EOF' - Usage: - series FILENAME - series -h - EOF -} - -help() { - cat <<-'EOF' - Options: - -h, --help show this message - - FILENAME the sentinel file to be touched - - - Enumerate and sort all items of a collection type, and notify - them about their '' and '. - The collection type and language are inferred by FILENAME. - - The "notifying" part is done via a "$TARGET.next" file, that - is, a ".next" file is created to notify "$TARGET" about which - item is next to it via the content of the file. The same - applies for ".prev" files. - - - Examples: - - Generate the ".next" and ".prev" files for english pastebins: - - $ index src/en/pastebin/index.series - EOF -} - - -for flag in "$@"; do - case "$flag" in - --) - break - ;; - --help) - usage - help - exit - ;; - *) - ;; - esac -done - -while getopts 'h' flag; do - case "$flag" in - h) - usage - help - exit - ;; - *) - usage >&2 - exit 2 - ;; - esac -done -shift $((OPTIND - 1)) - - -. src/lib.sh - -FILENAME="${1:-}" -eval "$(assert_arg "$FILENAME" 'FILENAME')" -DIR="$(dirname "$FILENAME")" - - -find "$DIR"/*.sortdata 2>/dev/null | - sort -n | - xargs cat | - awk ' - BEGIN { split("", items) } - { items[NR] = $0 } - END { - first = 1 - last = length(items) - for (i in items) { - item = items[i] - if (i != first) { - file = item ".prev" - prev = items[i-1] - print prev > file - } - if (i != last) { - file = item ".next" - nextt = items[i+1] - print nextt > file - } - } - } - ' - -touch "$FILENAME" -- cgit v1.2.3