Skip to content

maridonkers/kmymoney2hledger

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 

Introduction

There's also a blog post:KMyMoney to HLedger conversion.

WAIT!

Just use isabekov / kmymoney2ledgers by Altynbek Isabekov instead of my conversion program! (It's much better!)

Usage

From Releases copy kmymoney2hledger and kmymoney2hledger.jar to a subdirectory and make kmymoney2hledger executable. Put the subdirectory in your path (if it isn't already). Also a Java runtime environment (JRE) is required.

Prior to running the program make a backup of your data; then decompress the KMyMoney file, e.g. using the following commands:

cp yourkmymoneyinputfile.kmy yourdecompressedkmymoneyinputfile.kmy.gz
gzip -d yourdecompressedkmymoneyinputfile.kmy.gz
kmymoney2hledger yourdecompressedkmymoneyinputfile.kmy

It writes the converted output to yourdecompressedkmymoneyinputfile.kmy.journal.

CSV importers

See the following repositories for import of CSV-files into HLedger journals: Rabobank CSV-export to HLedger converter N26 CSV-export to HLedger converter

Technical information

KMyMoney

Available at: https://kmymoney.org/

HLedger

Available at: https://hledger.org/

Libraries

Tupelo Forest

Have you ever wanted to manipulate tree-like data structures such as hiccup or HTML? If so, then the tupelo.forest library is for you! Forest allows you to:

  • Easily search for tree nodes based on the path from the tree root.
  • Search for tree nodes based on content.
  • Limit a search to nodes in an arbitrary sub-tree.
  • Find parents and siblings of a node found in a search.
  • Chain searches together, so that nodes found in one search are used to limit the scope of sub-searches.
  • In addition, tupelo.forest allows you to update the tree by adding, changing, or deleting nodes. Since tupelo.forest allows one to easily find parent and/or sibling nodes, this is a powerful feature missing in most other tree-processing libraries.

Tupelo Forest - One Tree To Rule Them All

Development

nREPL

Start nrepl: nREPL Middleware Setup. Add the following to ~/.clojure/deps.edn:

 ;; https://docs.cider.mx/cider/basics/middleware_setup.html
 ;; Use `clj -A:clj-nREPL` to start an nREPL and in Emacs `cider-connect-clj` or
 ;;     `clj -A:cljs-nREPL` to start an nREPL and in Emacs `cider-connect-cljs`.
 :aliases {:clj-nREPL {:extra-deps {cider/cider-nrepl {:mvn/version "0.24.0"}
                                    nrepl/nrepl {:mvn/version "0.7.0"}}
                       :main-opts ["-m" "nrepl.cmdline" "--middleware" "[cider.nrepl/cider-middleware]"]}
           :cljs-nREPL {:extra-deps {org.clojure/clojurescript {:mvn/version "1.10.339"}
                                     cider/cider-nrepl {:mvn/version "0.22.4"}
                                     cider/piggieback {:mvn/version "0.5.0"}}
                        :main-opts ["-m" "nrepl.cmdline" "--middleware"
                                    "[cider.nrepl/cider-middleware,cider.piggieback/wrap-cljs-repl]"]}}

Then the following can be used to start an clj-nREPL or cljs-nREPL server:

clj -A:clj-nREPL
clj -A:cljs-nREPL

Emacs: cider-connect-clj or cider-connect-cljs on localhost; with reported port.

About

KMyMoney to HLedger conversion

Resources

Stars

Watchers

Forks

Packages

No packages published