reaktor2: give bedger its real name and logo
This commit is contained in:
parent
2dbfd35f75
commit
b5f7882fca
@ -9,6 +9,48 @@ let
|
|||||||
hooks = pkgs.reaktor2-plugins.hooks;
|
hooks = pkgs.reaktor2-plugins.hooks;
|
||||||
commands = pkgs.reaktor2-plugins.commands;
|
commands = pkgs.reaktor2-plugins.commands;
|
||||||
|
|
||||||
|
# bedger - the bier ledger
|
||||||
|
#
|
||||||
|
# logo: http://c.r/bedger2
|
||||||
|
#
|
||||||
|
bedger-add = {
|
||||||
|
pattern = ''^([\H-]*?):?\s+([+-][1-9][0-9]*)\s+(\S+)$'';
|
||||||
|
activate = "match";
|
||||||
|
arguments = [1 2 3];
|
||||||
|
command = {
|
||||||
|
env = {
|
||||||
|
# TODO; get state as argument
|
||||||
|
state_file = "${stateDir}/ledger";
|
||||||
|
};
|
||||||
|
filename = pkgs.writeDash "bedger-add" ''
|
||||||
|
set -x
|
||||||
|
tonick=$1
|
||||||
|
amt=$2
|
||||||
|
unit=$3
|
||||||
|
printf '%s\n %s %d %s\n %s %d %s\n' "$(date -Id)" "$tonick" "$amt" "$unit" "$_from" "$(expr 0 - "''${amt#+}")" "$unit" >> $state_file
|
||||||
|
${pkgs.hledger}/bin/hledger -f $state_file bal -N -O csv \
|
||||||
|
| ${pkgs.coreutils}/bin/tail +2 \
|
||||||
|
| ${pkgs.miller}/bin/mlr --icsv --opprint cat \
|
||||||
|
| ${pkgs.gnugrep}/bin/grep "$_from"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
bedger-balance = {
|
||||||
|
pattern = "^bier (ballern|bal(an(ce)?)?)$";
|
||||||
|
activate = "match";
|
||||||
|
command = {
|
||||||
|
env = {
|
||||||
|
state_file = "${stateDir}/ledger";
|
||||||
|
};
|
||||||
|
filename = pkgs.writeDash "bedger-balance" ''
|
||||||
|
${pkgs.hledger}/bin/hledger -f $state_file bal -N -O csv \
|
||||||
|
| ${pkgs.coreutils}/bin/tail +2 \
|
||||||
|
| ${pkgs.miller}/bin/mlr --icsv --opprint cat \
|
||||||
|
| ${pkgs.gnused}/bin/sed 's/^\(.\)/\1/'
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
taskRcFile = builtins.toFile "taskrc" ''
|
taskRcFile = builtins.toFile "taskrc" ''
|
||||||
confirmation=no
|
confirmation=no
|
||||||
'';
|
'';
|
||||||
@ -60,43 +102,8 @@ let
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
hooks.PRIVMSG = [
|
hooks.PRIVMSG = [
|
||||||
{
|
bedger-add
|
||||||
pattern = "^bier (ballern|bal(an(ce)?)?)$";
|
bedger-balance
|
||||||
activate = "match";
|
|
||||||
command = {
|
|
||||||
env = {
|
|
||||||
state_file = "${stateDir}/ledger";
|
|
||||||
};
|
|
||||||
filename = pkgs.writeDash "bier-balance" ''
|
|
||||||
${pkgs.hledger}/bin/hledger -f $state_file bal -N -O csv \
|
|
||||||
| ${pkgs.coreutils}/bin/tail +2 \
|
|
||||||
| ${pkgs.miller}/bin/mlr --icsv --opprint cat \
|
|
||||||
| ${pkgs.gnused}/bin/sed 's/^\(.\)/\1/'
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
pattern = ''^([\H-]*?):?\s+([+-][1-9][0-9]*)\s+(\S+)$'';
|
|
||||||
activate = "match";
|
|
||||||
arguments = [1 2 3];
|
|
||||||
command = {
|
|
||||||
env = {
|
|
||||||
# TODO; get state as argument
|
|
||||||
state_file = "${stateDir}/ledger";
|
|
||||||
};
|
|
||||||
filename = pkgs.writeDash "ledger-add" ''
|
|
||||||
set -x
|
|
||||||
tonick=$1
|
|
||||||
amt=$2
|
|
||||||
unit=$3
|
|
||||||
printf '%s\n %s %d %s\n %s %d %s\n' "$(date -Id)" "$tonick" "$amt" "$unit" "$_from" "$(expr 0 - "''${amt#+}")" "$unit" >> $state_file
|
|
||||||
${pkgs.hledger}/bin/hledger -f $state_file bal -N -O csv \
|
|
||||||
| ${pkgs.coreutils}/bin/tail +2 \
|
|
||||||
| ${pkgs.miller}/bin/mlr --icsv --opprint cat \
|
|
||||||
| ${pkgs.gnugrep}/bin/grep "$_from"
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
hooks.sed
|
hooks.sed
|
||||||
(generators.command_hook {
|
(generators.command_hook {
|
||||||
inherit (commands) dance random-emoji nixos-version;
|
inherit (commands) dance random-emoji nixos-version;
|
||||||
|
Loading…
Reference in New Issue
Block a user