SMOLNET PORTAL home about changes
iAdapt memestats to bitreich.org. Remove IRC log stuff. - bitreich-memestats - Bitreich meme statistics and graphs.	Err	bitreich.org	70
hgit clone git://bitreich.org/bitreich-memestats git://hg6vgqziawt5s4dj.onion/bitreich-memestats	URL:git://bitreich.org/bitreich-memestats git://hg6vgqziawt5s4dj.onion/bitreich-memestats	bitreich.org	70
1Log	/scm/bitreich-memestats/log.gph	bitreich.org	70
1Files	/scm/bitreich-memestats/files.gph	bitreich.org	70
1Refs	/scm/bitreich-memestats/refs.gph	bitreich.org	70
1Tags	/scm/bitreich-memestats/tag	bitreich.org	70
1LICENSE	/scm/bitreich-memestats/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit e082f9a06845793bcfa455df769420c1c926a85e	/scm/bitreich-memestats/commit/e082f9a06845793bcfa455df769420c1c926a85e.gph	bitreich.org	70
1parent 277b24006ce8268150ece65be9a02607df09f55e	/scm/bitreich-memestats/commit/277b24006ce8268150ece65be9a02607df09f55e.gph	bitreich.org	70
hAuthor: Christoph Lohmann <20h@r-36.net>	URL:mailto:20h@r-36.net	bitreich.org	70
iDate:   Sun, 29 Aug 2021 20:21:50 +0200	Err	bitreich.org	70
i	Err	bitreich.org	70
iAdapt memestats to bitreich.org. Remove IRC log stuff.	Err	bitreich.org	70
i	Err	bitreich.org	70
i* There is no IRC channel logging by privacy policy of bitreich.	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M Makefile                            |      30 ++++--------------------------	Err	bitreich.org	70
i  M extract-memecount.sh                |       1 +	Err	bitreich.org	70
i  D memeuse.awk                         |      70 -------------------------------	Err	bitreich.org	70
i  D top10.sh                            |      17 -----------------	Err	bitreich.org	70
i	Err	bitreich.org	70
i4 files changed, 5 insertions(+), 113 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/Makefile b/Makefile	/scm/bitreich-memestats/file/Makefile.gph	bitreich.org	70
i@@ -1,18 +1,14 @@	Err	bitreich.org	70
i .POSIX:	Err	bitreich.org	70
i 	Err	bitreich.org	70
i MEMECACHE = "/br/gopher/memecache"	Err	bitreich.org	70
i-ANNNA = "$(HOME)/annna"	Err	bitreich.org	70
i-IRCLOG = "$(HOME)/.irssi/log/Freenode/\#bitreich-en.log"	Err	bitreich.org	70
i+ANNNA = "/home/annna/bin"	Err	bitreich.org	70
i 	Err	bitreich.org	70
i-memecount: plot-memecount.sh top10 media-stats memecount_lin memecount_semilog	Err	bitreich.org	70
i-        cat memecount_lin top10 media-stats memecount_semilog > $@	Err	bitreich.org	70
i+memecount: plot-memecount.sh media-stats memecount_lin memecount_semilog	Err	bitreich.org	70
i+        cat memecount_lin media-stats memecount_semilog > $@	Err	bitreich.org	70
i 	Err	bitreich.org	70
i media-stats: media-stats.sh	Err	bitreich.org	70
i         ./media-stats.sh $(MEMECACHE) > $@	Err	bitreich.org	70
i 	Err	bitreich.org	70
i-top10: top10.sh all_time_weekly_popularity.tsv	Err	bitreich.org	70
i-        ./top10.sh > $@	Err	bitreich.org	70
i-	Err	bitreich.org	70
i memecount_lin: plot-memecount.sh memecount.log	Err	bitreich.org	70
i         ./plot-memecount.sh memecount.log > $@	Err	bitreich.org	70
i 	Err	bitreich.org	70
i@@ -23,26 +19,8 @@ memecount_semilog: plot-memecount.sh memecount.log	Err	bitreich.org	70
i memecount.log: extract-memecount.sh	Err	bitreich.org	70
i         ./extract-memecount.sh $(ANNNA) > $@	Err	bitreich.org	70
i 	Err	bitreich.org	70
i-# output format: avg_uses_per_week<tab>tag	Err	bitreich.org	70
i-all_time_weekly_popularity.tsv: memeuse.tsv all_time_use.tsv	Err	bitreich.org	70
i-        awk -v N_weeks="$$(awk 'END{print $$1/7}' memeuse.tsv)" \	Err	bitreich.org	70
i-                '{print $$1/N_weeks"\t"$$2}' all_time_use.tsv > $@	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-# output format: total_uses<tab>tag	Err	bitreich.org	70
i-all_time_use.tsv: memeuse.tsv	Err	bitreich.org	70
i-        cut -f5 memeuse.tsv | sort | uniq -c | sort -r | \	Err	bitreich.org	70
i-                awk '{print $$1"\t"$$2}' > $@	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-# format: day<tab>date<tab>time<tab>user<tab>tag	Err	bitreich.org	70
i-memeuse.tsv: memeuse.awk	Err	bitreich.org	70
i-        awk -f memeuse.awk $(IRCLOG) > $@	Err	bitreich.org	70
i-	Err	bitreich.org	70
i clean:	Err	bitreich.org	70
i-        rm -f memeuse.tsv	Err	bitreich.org	70
i-        rm -f all_time_use.tsv	Err	bitreich.org	70
i-        rm -f all_time_weekly_popularity.tsv	Err	bitreich.org	70
i-        rm -f top10	Err	bitreich.org	70
i         rm -f media-stats	Err	bitreich.org	70
i         rm -f memecount{,.log,_lin,_semilog}	Err	bitreich.org	70
i 	Err	bitreich.org	70
i-.PHONY: brtv clean	Err	bitreich.org	70
i+.PHONY: clean	Err	bitreich.org	70
1diff --git a/extract-memecount.sh b/extract-memecount.sh	/scm/bitreich-memestats/file/extract-memecount.sh.gph	bitreich.org	70
i@@ -4,6 +4,7 @@	Err	bitreich.org	70
i annnadir="${1:-$HOME/code/annna}"	Err	bitreich.org	70
i memefile="modules/hashtags/hashtags.txt"	Err	bitreich.org	70
i update_annna=yes	Err	bitreich.org	70
i+fromrevision="${2}"	Err	bitreich.org	70
i 	Err	bitreich.org	70
i if [ ! -e "${annnadir}/${memefile}" ]; then	Err	bitreich.org	70
i         printf 'error: could not open %s\n' "${annnadir}/${memefile}"	Err	bitreich.org	70
1diff --git a/memeuse.awk b/memeuse.awk	/scm/bitreich-memestats/file/memeuse.awk.gph	bitreich.org	70
i@@ -1,70 +0,0 @@	Err	bitreich.org	70
i-#!/usr/bin/awk -f	Err	bitreich.org	70
i-# get timestamp, user, and tag from irssi log in default format	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-function extract_date(s) {	Err	bitreich.org	70
i-        gsub(/--- Day changed ... /, "", s);	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-        match(s, /[0-9][0-9]/);	Err	bitreich.org	70
i-        day = substr(s, RSTART, RLENGTH);	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-        match(s, /[0-9][0-9][0-9][0-9]/);	Err	bitreich.org	70
i-        year = substr(s, RSTART, RLENGTH);	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-        month = s;	Err	bitreich.org	70
i-        gsub(/.*Jan .*/, "01", month);	Err	bitreich.org	70
i-        gsub(/.*Feb .*/, "02", month);	Err	bitreich.org	70
i-        gsub(/.*Mar .*/, "03", month);	Err	bitreich.org	70
i-        gsub(/.*Apr .*/, "04", month);	Err	bitreich.org	70
i-        gsub(/.*May .*/, "05", month);	Err	bitreich.org	70
i-        gsub(/.*Jun .*/, "06", month);	Err	bitreich.org	70
i-        gsub(/.*Jul .*/, "07", month);	Err	bitreich.org	70
i-        gsub(/.*Aug .*/, "08", month);	Err	bitreich.org	70
i-        gsub(/.*Sep .*/, "09", month);	Err	bitreich.org	70
i-        gsub(/.*Oct .*/, "10", month);	Err	bitreich.org	70
i-        gsub(/.*Nov .*/, "11", month);	Err	bitreich.org	70
i-        gsub(/.*Dec .*/, "12", month);	Err	bitreich.org	70
i-}	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-function extract_user(s) {	Err	bitreich.org	70
i-        if (/<.*>/) {  # regular message	Err	bitreich.org	70
i-                gsub(/.*<./, "", s);	Err	bitreich.org	70
i-                gsub(/>.*/, "", s);	Err	bitreich.org	70
i-        } else {       # action	Err	bitreich.org	70
i-                gsub(/.*\* /, "", s);	Err	bitreich.org	70
i-                gsub(/ .*/, "", s);	Err	bitreich.org	70
i-        }	Err	bitreich.org	70
i-        return s;	Err	bitreich.org	70
i-}	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-function extract_tag(s) {	Err	bitreich.org	70
i-        match(s, /#.*/);	Err	bitreich.org	70
i-        s = substr(s, RSTART, RLENGTH);	Err	bitreich.org	70
i-        gsub(/ .*/, "", s);	Err	bitreich.org	70
i-        gsub(/[!?:,\.]$/, "", s);	Err	bitreich.org	70
i-        return s;	Err	bitreich.org	70
i-}	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-function extract_time(s) {	Err	bitreich.org	70
i-        match(s, /[0-2][0-9]:[0-5][0-9]/);	Err	bitreich.org	70
i-        return substr(s, RSTART, RLENGTH);	Err	bitreich.org	70
i-}	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-{ }	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-# update date for subsequent entries	Err	bitreich.org	70
i-/--- Day changed / {	Err	bitreich.org	70
i-        extract_date($0);	Err	bitreich.org	70
i-        n_days++;	Err	bitreich.org	70
i-}	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-# find tag in current line	Err	bitreich.org	70
i-/ #[A-Za-z0-9]+/ {	Err	bitreich.org	70
i-        if (! /< annna>/ && ! /#bitreich-en/) {	Err	bitreich.org	70
i-                tag = extract_tag($0);	Err	bitreich.org	70
i-                if (!match(tag, "#nospoil")) {	Err	bitreich.org	70
i-                        printf("%s\t%s\-%s\-%s\t%s\t%s\t%s\n",	Err	bitreich.org	70
i-                                   n_days, year, month, day,	Err	bitreich.org	70
i-                                   extract_time($0), extract_user($0), tag);	Err	bitreich.org	70
i-                }	Err	bitreich.org	70
i-        }	Err	bitreich.org	70
i-}	Err	bitreich.org	70
1diff --git a/top10.sh b/top10.sh	/scm/bitreich-memestats/file/top10.sh.gph	bitreich.org	70
i@@ -1,17 +0,0 @@	Err	bitreich.org	70
i-#!/bin/sh	Err	bitreich.org	70
i-# print table to stdout containing top 10 memes with averaged usage per week	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-printf '\n                      '	Err	bitreich.org	70
i-printf '+------ top 10 (uses per week) ------+\n'	Err	bitreich.org	70
i-i=1	Err	bitreich.org	70
i-head "all_time_weekly_popularity.tsv" | while read u t; do	Err	bitreich.org	70
i-        printf '                      '	Err	bitreich.org	70
i-        printf '| %2d. %-23s %6.3f |\n' \	Err	bitreich.org	70
i-                "$i" \	Err	bitreich.org	70
i-                "$t" \	Err	bitreich.org	70
i-                "$u"	Err	bitreich.org	70
i-        i=$((i+1))	Err	bitreich.org	70
i-done	Err	bitreich.org	70
i-	Err	bitreich.org	70
i-printf '                      '	Err	bitreich.org	70
i-printf '+------------------------------------+\n'	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/bitreich-memestats/commit/e08...
Content-Typetext/plain; charset=utf-8