SMOLNET PORTAL home about changes
iAdd working script extracting data from log - 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 d08ff10b40479174b132e313726b406692972e35	/scm/bitreich-memestats/commit/d08ff10b40479174b132e313726b406692972e35.gph	bitreich.org	70
hAuthor: Anders Damsgaard <anders@adamsgaard.dk>	URL:mailto:anders@adamsgaard.dk	bitreich.org	70
iDate:   Fri, 17 Apr 2020 09:55:02 +0200	Err	bitreich.org	70
i	Err	bitreich.org	70
iAdd working script extracting data from log	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  A Makefile                            |       9 +++++++++	Err	bitreich.org	70
i  A extract_memeuse.awk                 |      66 +++++++++++++++++++++++++++++++	Err	bitreich.org	70
i	Err	bitreich.org	70
i2 files changed, 75 insertions(+), 0 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@@ -0,0 +1,9 @@	Err	bitreich.org	70
i+log = ~/.irssi/log/Freenode/\#bitreich-en.log	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+memeuse.tsv: extract_memeuse.awk $(log)	Err	bitreich.org	70
i+        awk -f extract_memeuse.awk $(log) > $@	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+	Err	bitreich.org	70
i+.PHONY: memeuse.tsv	Err	bitreich.org	70
1diff --git a/extract_memeuse.awk b/extract_memeuse.awk	/scm/bitreich-memestats/file/extract_memeuse.awk.gph	bitreich.org	70
i@@ -0,0 +1,66 @@	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+        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+                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), extract_tag($0));	Err	bitreich.org	70
i+        }	Err	bitreich.org	70
i+}	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/bitreich-memestats/commit/d08...
Content-Typetext/plain; charset=utf-8