-#!/bin/sh
-psql sheet -XAt -c "
- SELECT json_object_agg(coalesce(form, ''), forms) FROM _cat_words
-" | sed 's/:/=>/g'
+#!/usr/bin/env perl
+use 5.014;
+use warnings;
+
+BEGIN { push @INC, '.' }
+use Shiar_Sheet::DB;
+use open ':std' => ':utf8';
+my $db = Shiar_Sheet::DB->connect;
+
+say 'use utf8;';
+
+use Data::Dump 'pp';
+my %rows;
+if (my $lang = shift @ARGV) {
+ my %filter = (lang => $lang);
+ my $cols = "ref, array_to_string(form || alt, '/'), prio, id, cat";
+ %rows = $db->select(_word_ref => $cols, \%filter)->map_arrays;
+ say pp \%rows
+ =~ s/\\x\{([0-9A-F]+)\}/chr hex $1/ger;
+ exit;
+}
+else {
+ %rows = $db->select(_cat_words => "coalesce(id::text, ''), forms")->map;
+ $_ = [ map { [split /:/, $_, 3] } @{$_} ] for values %rows;
+ say pp \%rows;
+}