DEV Community

Cover image for Todolist no vim
Neni
Neni

Posted on • Edited on

3 5

Todolist no vim

Explicações sobre meu "fluxo de todolist" com vim

Objetivos:

Facilidade

  • Todas tarefas que não foram concluídas ficam em um arquivo BACKLOG (concluídas em outro DONE)
  • Cada linha que possui TODO é uma tarefa por fazer
  • Cada linha que possui WAIT é uma tarefa delegada ou pausada
  • Demais linhas não são importantes
  • A listagem é criada com :lvimgrep buscando por \C\<TODO\> e/ou \C\<WAIT\> e exibida com :lli, não necessitando abrir o arquivo de tarefas

demonstração

Visualizar todolist com :lli e selecionar se for preciso com :ll <numero>

Simplicidade

  • Comandos:
    • :TodoList abstrai o :lvimgrep e de bônus formata module e pattern do :lli
    • :TodoListFileBacklog e :TodoListFileDone acessar os arquivos com as tarefas
    • <leader>o lista os comandos anteriores e outros futuros que podem ser criados
  • Para mudar status de uma tarefa (TODO e WAIT) basta apagar a palavra na linha (possui highlight)
  • Uma tarefa é concluída saindo do arquivo de backlog

demonstração

Gerar a lista TODO a partir do texto TODO ou WAIT inserido em linhas do arquivo com :lvimgrep

Ignore - [ ] pois é uma implementação antiga de checkbox, durante o post explico melhor

demonstração

Remover da todolist apagando TODO ou WAIT

demonstração

Possuir arquivos BACKLOG e DONE e acessar facilmente os mesmos

Escopo

  • BACKLOG possui fold no primeiro nível de indentação, permitindo separação simples de projeto (não subprojetos). Ex.:
projeto 1
    Projeto XYZ

    = fazer x
    = fazer y
    = fazer z

projeto 2
    Projeto ABC

    = fazer a
    = fazer b
    = fazer c
Enter fullscreen mode Exit fullscreen mode

demonstração

Concluir itens de escopo com checkbox e conceal

Listas

  • BACKLOG possui syntax com uso de conceal
    • - converte para um bullet comum
    • = converte para um checkbox desmarcado
    • + converte para um checkbox marcado
  • Por que -, = e +?
    • - igual ao markdown
    • = e + conceal de 1 carácter é mais agradável que - [ ] ou - [x] pois é mais fácil de entender o tamanho da linha.

Quando se edita uma linha com carácter escondido ele pode reaparecer quando 1) passa o cursor na linha ou 2) entra no modo insert na linha. É mais agradável evitar o efeito do "texto se expandido", pois o conceal (que sempre é 1 carácter) se transforma em outro carácter

  • <C-SPACE> (crlspace) marca ou desmarca checkbox. Caso não exista um, é criado desmarcado

Consequências não planejadas

  • Para manter a listagem :lli simples, tanto o projeto quanto o item devem ser objetivos

Código

Image of Quadratic

Cursor for data analysis

The AI spreadsheet where you can do complex data analysis with natural language.

Try Quadratic free

Top comments (2)

Collapse
 
christianmlima profile image
christianmlima

Nice, faz uma versão em inglês!

Collapse
 
nenitf profile image
Neni

Hmmm n tinha pensado nisso, mt boa ideia

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

DEV shines when you're signed in, unlocking a customized experience with features like dark mode!

Okay