Eu tenho procurado por um programa de calendário de linha de comando para Linux já há algum tempo. Eu percebi que deveria usar o vim. Eu quero ser capaz de ver facilmente uma semana de listas de tarefas. Atualmente usando este comando:
data=$(unset split; echo -n "-c \""; for i in {6..0}; do if [ $i -ne 6 ] ; then split="vsplit"; else split="e"; fi; echo -n "$split $(date +"%F" -d"last sunday+$i day").txt|"; done; echo "\"") && precmd='-c "split todo.txt" -c "Calendar" -c "wincmd w"' && cmd="vim $precmd $data" && eval $cmd
Execute isso em um terminal de tela cheia, caso contrário, você terá um mau momento. Requer este plugin de calendário: link
Se você não tiver o plug-in do calendário vim, isso também funcionará, mas não terá o calendário:
data=$(unset split; echo -n "-c \""; for i in {6..0}; do if [ $i -ne 6 ] ; then split="vsplit"; else split="e"; fi; echo -n "$split $(date +"%F" -d"last sunday+$i day").txt|"; done; echo "\"") && precmd='-c "split todo.txt"' && cmd="vim $precmd $data" && eval $cmd
Isso faz exatamente o que eu quero, exceto que o painel inferior não carrega todo meu rolling.txt. Se eu pudesse pegar esse painel inferior para carregar meu todo.txt, eu estaria pronto! Eu não consigo entender porque o vim não aceita o meu:
-c "split todo.txt"
Sinta-se livre para corrigir minha horrenda festa também.
Além disso, percebo que o plugin do calendário vim tem um recurso de "diário", mas o AFAIK não divide a janela conforme necessário.
Obrigado!
Editar: Aqui está uma versão atualizada que corrige um problema quando executado aos domingos, e também permite que você especifique o deslocamento da semana, ou seja, "vimcal 0" "vimcal 1" "vimcal -1" etc. (É claro que você precisará criar um script e / ou alias)
data=$(unset split; unset day; echo -n "-c \""; for i in {6..0}; do if [ $i -ne 6 ] ; then split="vsplit"; else split="split"; fi; if [ 'date +"%A"' = "Sunday" ] ; then day="sunday"; else day="last sunday"; fi; echo -n "$split $(date +"%F" -d"$day+$i day+$1 week").txt|"; done; echo "\"") && precmd='-c "edit todo.txt" -c "Calendar" -c "wincmd w"' && cd ~/Documents/todo && cmd="vim $precmd $data" && eval $cmd