bullet journal vim cal-bash-utils
index | about | archive | charlas | docs | links
dot |
git |
img |
plt |
tty |
uml
Yendo del texto plano al papel
Hace años que pruebo diferentes metodologías para registrar tareas, si bien existen diferentes aplicaciones y probé varias, siempre me resultó más fácil recordarlas y tener una visión global al manejarlas en papel.
Si bien durante varios años usé org-mode 1, hace tiempo
que estoy registrando los eventos y tareas que tienen fecha en un
archivo de texto plano ~/.calendar 2 y luego
mediante algunos scripts y el uso de pcal los puedo convertir a
papel para usar en esos momentos offline mientras disfruto de un café
y despejo mi mente.
Bullet Journal
Tuve varios intentos de implementar Bullet Journal 3
en papel, creo que se debe a que no tengo tanto tiempo libre para
garabatear, un poco de inconstancia y que en parte me cuesta despegar
del teclado.
Hace unos días descubrí Plain Text Journaling 4,
una implementación en texto plano usando vim 5 y quedé
maravillado.
PoC
Mirando un poco el post vi que podía aprovechar la estructura de
directorio que ya uso en mi jrnl 6 journal
# tree -L 1 -d ~/.jrnl /home/osiris/.jrnl ├── 2017 ├── 2018 ├── 2019 ├── 2020 ├── 2021 ├── 2022 └── 2023 8 directories
Para probar el concepto, abrí el archivo de este mes, vi
~/.jrnl/2023/06.jrnl y e ingresé el calendario mediante el comando r!
cal
June 2023
Su Mo Tu We Th Fr Sa
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
WEEK 1 ---------------
× done test
· todo test
→ move test
∘ event test
‐ note test
highlight syntax
El siguiente paso era contar con resaltado de sintaxis, definiendo en
~/.vimrc la siguiente configuración:
augroup JournalSyntax autocmd! autocmd BufReadPost *.jrnl set filetype=journal autocmd BufReadPost *.jrnl syntax match JournalAll /.*/ autocmd BufReadPost *.jrnl syntax match JournalDone /^× .*/ autocmd BufReadPost *.jrnl syntax match JournalTodo /^· .*/ autocmd BufReadPost *.jrnl syntax match JournalEvent /^∘ .*/ autocmd BufReadPost *.jrnl syntax match JournalNote /^‐ .*/ autocmd BufReadPost *.jrnl syntax match JournalMoved /^> .*/ autocmd BufReadPost *.jrnl syntax match JournalHeader /^\<\u\+\>.*/ autocmd BufReadPost *.jrnl highlight JournalAll ctermfg=7 autocmd BufReadPost *.jrnl highlight JournalTodo ctermfg=1 autocmd BufReadPost *.jrnl highlight JournalHeader ctermfg=2 autocmd BufReadPost *.jrnl highlight JournalDone ctermfg=8 autocmd BufReadPost *.jrnl highlight JournalEvent ctermfg=3 autocmd BufReadPost *.jrnl highlight JournalMoved ctermfg=5 autocmd BufReadPost *.jrnl highlight JournalNote ctermfg=5 autocmd BufReadPost *.jrnl highlight VertSplit ctermfg=0 ctermbg=0 augroup END
snippet to bullets
Y para agilizar el ingreso de los diferentes bullets adapté mis
snippets agregand a ~/.vim/snippets/_.snippets
snippet todo · snippet done × snippet note ‐ snippet event ∘ snippet move →
Entonces basta con tipear done y presionar TAB para obtener × :)
Ahora al editar con vim un archivo *.jrnl tiene toda la onda!
automate bullet journal from calendar
Se me ocurrió aprovechar que ya tengo registradas las tareas y eventos
en ~/.calendar, solo debía agregar los bullets y escribir algún
script que se ocupe de automatizar la escritura de cada mes en formato
Bullet Journal ;)
month
months
texto plano
Una vez más, utilizar archivos de texto plano es una gran solución, ya
que es fácil de integrar y convertir, rápido de adaptar a cualquier
situación, me tomó menos de 1 día crear los scripts y ya estoy
disfrutando la solución y seguramente con el tiempo iré incorporando
mejoras en cal-bash-utils 11
ChangeLog
2023-06-24 20:00agregar footnotes a caljmonth, calvmonth, caljyear y calvyear en bullet journal vimcal-bash-utils2023-06-22 00:58agregar bullet journal vimcal-bash-utils



