[ mini-projeto ] organize suas anotações do Loqseq em suas respectivas pastas
Introdução:
Depois de criar o artigo Erros que me fizeram ser um programador mediano, e eu afirmar que iria mudar o cenário, comecei a organizar minhas anotações e melhorar elas.
Eu utilizo o logseq para fazer minhas anotações, dado que o Obsidian não mais atendia minhas necessidades e o notion virou mais uma bagunça que algo funcional, além de ser extremamente pesado por causa disto.
Porém, infelizmente, o logseq utiliza apenas uma pasta com notas as suas notas nela, ou seja, tudo misturado, sem ser parados por pastas. Eu tentei separar manualmente, tanto pelo o app, quanto manualmente, e não funcionou muito bem. Algumas notas começaram a não ser lidas corretamente :(
O problema:
Ok, no logseq é organizado, então por quê organizar fora dele? Eu gosto de fazer backup dos minhas notas, tanto no Drive quanto no Github e simplesmente joga-las soltas não é o ideal.
Por isso eu pus em prática o pouco que sei sobre Node.js
. A principio fiz com Bun
, mas ocorreu um bug inesperado que eu irei fazer um post depois sobre.
O projeto:
Tudo que o projeto faz é ler todos os arquivos da pasta pages
do logseq
e copia o conteúdo de dentro do arquivo, extrai o prefixo da nota (eu irei falar mais a seguir), cria uma pasta para este conteúdo se ele não existe e cria notas dentro das respectivas pastas de acordo com o prefixo.
Os nomes das anotações precisam ter um prefixo com a matéria escolhida. Por exemplo: [ JavaScript ]
, [ Math ]
. Com isso, é extraído o conteúdo desse prefix: JavaScript
e Math
neste caso e cria uma pasta para essas duas matérias se elas não existirem no diretório de backup específicado
.
Assim, todas as anotações que tiverem esse prefixo é criada dentro deste diretório respectivo. anotações que possui o prefixo [ Math ]
irá sempre ser criado na pasta Math
.
Exemplo:
- Arquivo:
[ Math ]: Addiction
-Addiction
será criado dentro da pastaMath
. - Arquivo:
[ Math ]: Multiplication
-Multiplication
será criado dentro da pastaMath
. - Arquivo:
[ C++ ]: Memory Leak
-Memory Leak
será criado dentro da pastaC++
.
Muito cuido ao nomer as anotações pois é case-sensitive
. Isto significa que se os caracteres não forem exatamente iguais, irá criar outra pasta distinta.
Todas as instruções estão no diretório sobre como usar esta mini-aplicação.
Vantagens:
- Mais organização;
- Backup mais fácil se necessário, pois estará organizado de antemão;
- Se você quiser migrar para outro app, como Obsidian, fica mais simples pois já importará em suas respectivas pastas;
Conclusão:
Obrigado por ler até aqui. Espero ter ajudado de alguma forma.