Urmărirea dietei mele cu Emacs

Publicat: 18 iulie 2020 la 11:05

urmărirea

Folosesc Emacs cu modul org pentru a-mi urmări dieta din 2012. Am avut câteva pauze pe parcurs, configurarea generală a rămas aceeași.

Folosesc acest sistem pentru a urmări cât cântăresc, precum și câte calorii consum într-o singură zi. Există o mulțime de aplicații și servicii online care oferă această funcționalitate, dar prefer să dețin datele mele într-un format deschis pe care îl pot folosi în altă parte.

Văzând că lucrez de acasă și am întotdeauna deschisă o sesiune Emacs, a avut sens să încerc să folosesc Emacs într-un fel.

Configurarea mea utilizează următoarele funcții Emacs și modul org:

  • Titluri individuale în mod org pentru fiecare zi
  • proprietăți în modul org pentru stocarea greutății mele
  • tabele în modul org și formule de foi de calcul
  • org-capture pentru cântărire
  • Unele funcții elisp pentru adăugarea intrărilor individuale de alimente

Să aruncăm o privire mai atentă asupra modului în care toate acestea se potrivesc.

Configurarea fișierului dietetic

Fișierul meu de dietă arată astfel (cu titlurile restrânse):

Am încercat să păstrez formatul de fișier cât mai simplu posibil. Fiecare zi are propria intrare sub antetul principal „Jurnalele zilnice”. Antetul principal „Jurnale zilnice” este utilizat de org-capture pentru a găsi unde să plasați articole noi.

Proprietatea de nivel superior SEQ_TODO este utilizată pentru a seta starea „terminat” pentru fiecare titlu. Folosesc trei tipuri diferite de titlu:

CAL-IN De zile în care nu am introdus toate informațiile despre dietă. De obicei, există doar una dintre acestea deschise la un moment dat. CAL-OUT Pentru zilele terminate în care toate datele sunt definitive. CAL-CANCEL Pentru zilele în care urmăresc informațiile despre greutate, dar nu despre calorii. O folosesc pentru duminici, zile în care ies să mănânc sau când am planificate evenimente sociale.

Intrări zilnice

O intrare zilnică arată cam așa: