Skip to content

Instantly share code, notes, and snippets.

Simon Michael simonmichael

Block or report user

Report or block simonmichael

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@simonmichael
simonmichael / Close.md
Last active Jan 28, 2020
draft of new close doc
View Close.md

close, equity
Adds a "closing balances" transaction to the main journal file, that brings selected account balances to zero. Also (by default), adds the inverse "opening balances" transaction to a new journal file (creating it if necessary), restoring those account balances as they were in the old journal.

This can be used to bring asset/liability balances forward into a new journal file, or to close out revenues/expenses to retained earnings at the end of an accounting period. More on this below.

@simonmichael
simonmichael / Makefile
Created Jan 13, 2020
cron job to autocommit journal & related files
View Makefile
# Perform any auto-commits that are due, in the proper order.
autocommit: \
autocommit-time \
autocommit-txns \
autocommit-misc
# Auto-commit any timelog changes.
autocommit-time:
@echo `date` $@ >>$@.log
@( git commit -qm 'time (auto)' $(TIMEDOT) | grep -E '(^\[|file changed)' ) >>$@.log \
@simonmichael
simonmichael / hledger-scripts.sh
Last active Nov 8, 2019
bash scripts for starting hledger(-ui) in various ways
View hledger-scripts.sh
# short aliases for hledger commands
alias h='hledger'
alias acc='hledger accounts'
alias act='hledger activity'
alias add='hledger add'
alias bal='hledger balance'
alias close='hledger close'
alias iadd='hledger-iadd --date-format %Y/%m/%d'
alias print='hledger print'
alias reg='hledger register'
@simonmichael
simonmichael / README.md
Last active Oct 23, 2019
Build times of hledger dependencies on a slow machine
View README.md

Build times in minutes of hledger's dependencies, running cabal and ghc 8.4.4 with a single Cortex-A53 CPU and 4G RAM, emulated on some faster machine.

From xiroux on #hledger:

sm: If you wanna take a look at the times, I just listed the files in .cabal-sandbox/lib/ with their last modification time and computed how much time passed between one file and another. The data is here: https://hastebin.com/egexogarek

@simonmichael
simonmichael / hledger-print-location.hs
Last active Oct 6, 2019
hledger script, prototyping print --location
View hledger-print-location.hs
#!/usr/bin/env stack
{- stack runghc --verbosity info
--package hledger-lib
--package hledger
--package here
--package text
-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE QuasiQuotes #-}
@simonmichael
simonmichael / a.bash
Last active Dec 4, 2019
scripts for finding available versions in nixpkgs
View a.bash
# Some nixpkgs query scripts inspired by #nixos chat.
# Goal: find the HASH that will let an install command like
# nix-env -i -f https://github.com/NixOS/nixpkgs/archive/HASH.tar.gz -A hledger hledger-web hledger-ui
# install the latest available build of the packages, on all platforms of interest.
# These scripts don't seem to quite do that but they help.
NIXARCHS="darwin linux"
HLEDGERPKGS="hledger hledger-ui hledger-web"
# show help for the following commands
View hledger.prof
This file has been truncated, but you can view the full file.
Fri Jul 26 00:40 2019 Time and Allocation Profiling Report (Final)
hledger +RTS -P -RTS bal -V -f examples/1000x1000x10.journal
total time = 1.35 secs (1347 ticks @ 1000 us, 1 processor)
total alloc = 1,482,942,296 bytes (excludes profiling overheads)
COST CENTRE MODULE SRC %time %alloc ticks bytes
@simonmichael
simonmichael / a.txt
Created May 18, 2019
nix show-config
View a.txt
11:41:36 ~$ nix show-config
allow-import-from-derivation = true
allow-unsafe-native-code-during-evaluation = false
allowed-impure-host-deps = /System/Library /bin/sh /dev /usr/lib
allowed-uris =
allowed-users = *
auto-optimise-store = false
build-hook = /nix/store/1jz25hcma179wbpi56blgajw47n5kgqd-nix-2.2.1/libexec/nix/build-remote
build-poll-interval = 5
build-users-group =
@simonmichael
simonmichael / pricing.ledger
Created May 14, 2019
Testing ledger cost/price syntax, lots, revaluation, capital gains
View pricing.ledger
; Test ledger cost/price syntax, lots, revaluation, capital gains
P 2019-01-01 ETC 11 EUR
P 2019-02-01 ETC 12 EUR
; Fluctuating cost/price
; @, @@ https://www.ledger-cli.org/3.0/doc/ledger3.html#Posting-cost
; { }, {{ }} https://www.ledger-cli.org/3.0/doc/ledger3.html#Commodity-prices
; "functionally.. no difference" https://www.ledger-cli.org/3.0/doc/ledger3.html#Prices-versus-costs
@simonmichael
simonmichael / plaid-wf-pchecking.csv.rules
Created Mar 27, 2019
hledger CSV rules for CSV downloaded from Plaid
View plaid-wf-pchecking.csv.rules
include common.rules
include plaid.rules
account1 sm:assets:bank:wf:pchecking
You can’t perform that action at this time.