+2014/05/01 Stand manif + Don:Anonyme -42 + Caisse:Grève 42 + +2014/05/08 Propagande + Caisse:Grève -7 + Achat:Impression:Tracts 7 + +; Répéter ad nauseam +
X-Git-Url: https://git.cyclocoop.org/?p=tool%2Fhledger.git;a=blobdiff_plain;f=doc%2Fhledger.fr.slidy.html;fp=doc%2Fhledger.fr.slidy.html;h=a5c4fca0f4e5fea46b2bc045249d38a5cddb506c;hp=0000000000000000000000000000000000000000;hb=61f2b02106365640f1fed2d4c3e8a1a7236bdb4e;hpb=627dd26d4ab92cb46924101e2a27048b1c68c766 diff --git a/doc/hledger.fr.slidy.html b/doc/hledger.fr.slidy.html new file mode 100644 index 0000000..a5c4fca --- /dev/null +++ b/doc/hledger.fr.slidy.html @@ -0,0 +1,8273 @@ + + +
+ + + + +.ledger
 : un format de Grand Livre ouvert.. et simple+2014/05/01 Stand manif + Don:Anonyme -42 + Caisse:Grève 42 + +2014/05/08 Propagande + Caisse:Grève -7 + Achat:Impression:Tracts 7 + +; Répéter ad nauseam +
+Transparent
+ + |
+
+ +Visibilité de toutes les informations. + + |
+
+Pérenne
+ + |
+
+ +Compréhensible sans peine. + + |
+
+Modifiable
+ + |
+
+ +Pas dâinterface protectrice. + + |
+
+Accès
+ + |
+
+ +Pas de changement dâinterface non-consenti. + + |
+
+Versionnable
+ + |
+
+ +Suivi et fusion simples des modifications. + + |
+
+Ãcrit
+ + |
+
+ +Langage pour sâexprimer clairement, par exemple pour discuter dans un courriel. + + |
+
+Hors-ligne
+ + |
+
+ +Pas besoin de réseau. + + |
+
+Interopérable
+ + |
+
+ +Pas spécifique à un éditeur logiciel particulier +(sauf fonctionnalité expérimentale). + +
|
+
+Modifiable
+ + |
+
+ +Mais pas moins que les autres logiciels +et à nuancer si couplé à un gestionnaires de versions, +et/ou avec signature cryptographiques. + +
+
++% git tag --sign v2011 -m "Clôture de la comptabilité 2011" +% git tag --verify v2011 +
+
++% gpg --sign $fichier.hledger +% gpg --verify-files $fichier.hledger.gpg + |
+
+Textuel
+ + |
+
+ +Préférable de bien savoir utiliser +un éditeur de texte structuré. + + |
+
+Peu contraint
+ + |
+
+
+
++2102/03/21 Remise chq (1101804) + 5.Finance:1.Etablissement:1.Valeur:2.Chèque_à _encaisser -145,00 + 5.Finance:1.Etablissement:2.Banque:001.Courant 145,00 + |
+
+ + | +KISS | +
hledger
 : un outil libre.. et convivial+% hledger balance '^6' '^7' --depth 2 -f Paris.2011.hledger + 770,58⬠6.Charge + 248,87⬠0.Achat + 441,46⬠1.Service + 55,25⬠2.Autre_service + 25,00⬠5.Gestion + -726,00⬠7.Produit + -700,00⬠0.Vente + -26,00⬠5.Autre_gestion_courante +â------------------- + 44,58⬠+
+Permises techniquement et légalement
+(« logiciel libre » sous GNU/GPLv3
)
+
+Programmé en Haskell +
+
+Fonctionnel pur
+ + |
+
+ +Aucune mutation de données externes à une fonction (effet de bord). + + |
+
+Typage statique
+ + |
+
+ +Vérification des erreurs de type avant lâexécution du programme. + + |
+
+Typage fort
+ + |
+
+ +Aucune conversion implicite de types de données. + + |
+
+GNU/Linux, Apple/MacOS, Microsoft/Windows +
++~1 développeur à mi-temps +
++ % hledger balance -f $fichier.hledger +
+ % hledger-web --server -f $fichier.hledger + % firefox "http://localhost:5000" +
+ % ghc hledger-fait-ce-que-je-veux.hs + % ./hledger-fait-ce-que-je-veux -f $fichier.hledger +
…
+hledger
+% sudo apt-get install hledger hledger-web +
cabal
+% echo 'PATH="$HOME/.cabal/bin:$PATH"' >>~/.profile + # NOTE: rajoute dans le chemins des exécutables + # les exécutables installés par cabal +% exit # NOTE: recharge ~/.profile + +% sudo apt-get install ghc cabal-install \ + libncurses5-dev libtinfo-dev zlib1g-dev +% cabal update +% cabal install cabal # NOTE: met à jour cabal +% cabal install happy # NOTE: anticipe une dépendance exécutable +% cabal install hledger +% cabal install alex # NOTE: anticipe une dépendance exécutable +% cabal install warp-2.0.3.4 hledger-web + # NOTE: aide cabal à sélectionner un warp qui fonctionne +
+% cabal install --reinstall hledger hledger-web
+
+% git clone http://github.com/simonmichael/hledger.git ~/src/hledger +% cd ~/src/hledger +% cabal install --reinstall --force-reinstalls \ + ./hledger-lib ./hledger ./hledger-web +
.ledger
Un .ledger
est un fichier de texte brut respectant une syntaxe préçise
+qui forme une succession dâécritures comptables, ordonnées librement.
+; Ceci est un exemple de livre comptable « ledger » +; NOTE: fantaisiste comptablement parlant, mais syntaxiquement correct + +2014/01/01 Libellé de lâécriture ; UN_TAG:, Autre_tag:Avec_Valeur + Compte:Sous-Compte -42 ; flux créditant + Autre_Compte:Sous-Compte:Sous-Sous-Compte 42 ; flux débitant + +2014/01/01 Deuxième écriture le même jour + Vente:Ãme -666 ; (tag de flux) Arnaque: + Kapital 666 + +2014/01/02 Troisième écriture le jour suivant avec ventilation des flux + Compte:Crédité:A -1 + Compte:Crédité:B -2 + Compte:Débité:Z 1 + Compte:Débité:Y 1 + Compte:Débité:X:x 1 + +2014/04/12 + Compte:Crédité -1234,56 + Compte:Débité ; 1234,56 (montant inféré) + +2014/02/01 Ãcriture non ordonnée par date ; Ok, mais déconseillé + Compte:Débité 1 + Compte:Crédité -1 ; Flux non ordonné par crédit/débit + ; c'est juste moins lisible... + +; Répéter ad nauseam +
Syntaxe (grammaire BNF) | +Structure (signatures fonctionnelles) | +||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
+ +livre ::= (écriture | commentaire | "â" | "â£")* + |
+
|
+||||||||||
+ +écriture ::= date "â£" "â£"* libellé commentaire "â" + ("â£" flux "â")* +date ::= (année "/")? mois "/" jour +libellé ::= (· - (";"|"â"))* + |
+
|
+||||||||||
+ +flux ::= compte "â£â£" "â£"* ("-" crédit | débit) ("â£"|"â")* commentaire +compte ::= nom ( ":" nom )* +nom ::= (· - (":"|"â")) (· - (":"|"â"))* +crédit ::= quantité +débit ::= quantité + |
+
|
+||||||||||
+ +commentaire ::= ( ";" (tag ":" valeur? | ·)* ) + ( ("â"|"â£")* ";" (tag ":" valeur? | ·)* )* + |
+
|
+
+ + | +RTFM @ http://hledger.org/manual/. | +
+compte_parent
+ + |
+
+
+ $:\>c : \textcolor{#D2691E}{\textbf{compte}} â \textcolor{#D2691E}{\textbf{compte}}\>?$ |
+
+hiérarchie_de_compte
+ + |
+
+
+ $:\>\mathbb c : \textcolor{#D2691E}{\textbf{compte}} â \lbrack\textcolor{#D2691E}{\textbf{compte}}\rbrack$ |
+
+comptes
+ + |
+
+
+ $:\>\mathbb E : \lbrack\textcolor{#D2691E}{\textbf{\acute{e}criture}}\rbrack â \{\textcolor{#D2691E}{\textbf{compte}}\}$ |
+
+balance
+ + |
+
+
+ $:\>\mathbb F : \lbrack\textcolor{#D2691E}{\textbf{flux}}\rbrack â â$ |
+
+solde_de_compte
+ + |
+
+
+ $:\>\mathbb E : \lbrack\textcolor{#D2691E}{\textbf{\acute{e}criture}}\rbrack â c : \textcolor{#D2691E}{\textbf{compte}} â â$ |
+
+solde
+ + |
+
+
+ $:\>\mathbb E : \lbrack\textcolor{#D2691E}{\textbf{\acute{e}criture}}\rbrack â
+ \lbrack\textcolor{#D2691E}{\textbf{flux}}\rbrack$ |
+
vim
)hledger.vim
+
++autocmd BufNewFile,BufRead *.hledger,*.ledger setfiletype hledger +
<Tab>
)
++autocmd Filetype hledger set iskeyword+=.,38,39,40,41,44,45,58 " +
+ let g:easy_align_ignore_groups = ['Comment', 'String', 'hledgerTransaction'] +
git
)TODO
+hledger
balance
)+% hledger balance -f $fichier.ledger $filtre +
+% hledger balance -b 2012/02/01 -e 2012/04/30 --monthly -f $fichier.ledger >/tmp/bal.flow +% hledger balance -b 2012/02/01 -e 2012/04/30 --cumulative --monthly -f $fichier.ledger >/tmp/bal.cumulative +% hledger balance -b 2012/02/01 -e 2012/04/30 --historical --monthly -f $fichier.ledger >/tmp/bal.historical +% gvimdiff -o /tmp/bal.{cumulative,historical} +
print
)TODO
+register
)TODO
+stats
, activity
)TODO
++#include::data/Cyclofficine.Plan_comptable.hledger[] +
+Tout ce qui est débité (+
) dans ses comptes
+est forcément crédité (-
) dans ses autres comptes.
+
+01/01 Ãcriture dâengagement + 7.Produit:0.Vente:1.Produit_fini:1.Vélo -80 + 5.Finance:1.Etablissement:1.Valeur:2.Chèque_à _encaisser 80 + +01/02 Ãcriture de paiement + 5.Finance:1.Etablissement:1.Valeur:2.Chèque_à _encaisser -80 + 5.Finance:1.Etablissement:2.Banque:001.Courant 80 +
+ + | +pour des espèces, transiter par : 5.Finance:3.Caisse:1.Siège |
+
TODO
+
+Banque
+ + |
+
+
+
++hledger print -f $fichier.ledger '^5.Finance:1.Etablissement:2.Banque:' + |
+
+Achats
+ + |
+
+
+
++hledger print -f $fichier.ledger '^(2.Immobilisation:1.Corporelle:|6.Charge:(0.Achat|1.Service|2.Autre_service):)' + |
+
+Vente
+ + |
+
+
+
++hledger print -f $fichier.ledger '^7.Produit:0.Vente:' + |
+
+Caisse
+ + |
+
+
+
++hledger print -f $fichier.ledger '^5.Finance:3.Caisse:' + |
+
+Paye
+ + |
+
+
+
++hledger print -f $fichier.ledger '6.Charge:(3.Impôt:(1.|3.):|4.Personnel:)' + |
+
+ÃÂ NouVeaux
+ + |
+
+
+
++hledger print -f $fichier.ledger tag:ANV + |
+
+Opération_Diverses
+ + |
+
+
+
++hledger print -f $fichier.ledger tag:OD + |
+
equity
)hledger-equity
calcule une balance de comptes
+et en fait deux écritures, respectivement :
+de clôture
+ + |
+
+ +pour les solder à zéro en fin dâexercice ; + + |
+
+dâouverture
+ + |
+
+ +pour les réinitialiser à leur solde du précédent exercice. + + |
+
+% hledger-equity -f $fichier.ledger $filtre +
+% hledger-equity '^6' '^7' -f Paris.2011.hledger +2014/07/29 + 6.Charge:0.Achat:6.Non_stocké:8.Autre_Matière,Fourniture:1.Atelier -248,87⬠+ 6.Charge:1.Service:3.Location:2.Immobilière -441,46⬠+ 6.Charge:2.Autre_service:3.Communication:6.Catalogue,Imprimé -24,00⬠+ 6.Charge:2.Autre_service:7.Service_bancaire -31,25⬠+ 6.Charge:5.Gestion:8.Divers:6.Cotisation_(vie_statutaire) -25,00⬠+ 7.Produit:0.Vente:6.Prest'action 700,00⬠+ 7.Produit:5.Autre_gestion_courante:6.Cotisation 20,00⬠+ 7.Produit:5.Autre_gestion_courante:8.Divers 6,00⬠+ equity:closing balances 44,58⬠+ +2014/07/29 + 6.Charge:0.Achat:6.Non_stocké:8.Autre_Matière,Fourniture:1.Atelier 248,87⬠+ 6.Charge:1.Service:3.Location:2.Immobilière 441,46⬠+ 6.Charge:2.Autre_service:3.Communication:6.Catalogue,Imprimé 24,00⬠+ 6.Charge:2.Autre_service:7.Service_bancaire 31,25⬠+ 6.Charge:5.Gestion:8.Divers:6.Cotisation_(vie_statutaire) 25,00⬠+ 7.Produit:0.Vente:6.Prest'action -700,00⬠+ 7.Produit:5.Autre_gestion_courante:6.Cotisation -20,00⬠+ 7.Produit:5.Autre_gestion_courante:8.Divers -6,00⬠+ equity:opening balances -44,58⬠+
hledger
TODO
+TODO
+hledger-web
TODO
+hledger
TODO
+hledger
+% echo 'PATH="$HOME/src/hledger/extra:$PATH"' >>~/.profile +% exit # NOTE: recharge ~/.profile +% ghc ~/src/hledger/extra/hledger-SCRIPT.hs +
+Chat
+ + |
++ + | +
+Liste
+ + |
++ + | +