zdt-prov/todo.md
2026-01-03 21:00:11 -03:00

133 lines
2.3 KiB
Markdown

# Tags
- [x] autoescape
- [x] block
- [x] comment
- [x] csrf_token
- [x] cycle
- [ ] debug
- [x] extends
- [x] filter
- [x] firstof
- [x] for
- [x] if
- [x] ifchanged
- [x] include
- [x] load
- [x] lorem
- [x] now
- [ ] partial
- [ ] partialdef
- [ ] querystring
- [ ] regroup
- [ ] resetcycle
- [x] spaceless
- [ ] templatetag
- [x] url
- [x] verbatim
- [ ] widthratio
- [x] with
# Filters
- [ ] add
- [ ] addslashes
- [ ] capfirst
- [ ] center
- [ ] cut
- [ ] date
- [ ] default
- [ ] default_if_none
- [ ] dictsort
- [ ] dictsortreversed
- [ ] divisibleby
- [ ] escape
- [ ] escapejs
- [ ] escapeseq
- [ ] filesizeformat
- [ ] first
- [ ] floatformat
- [ ] force_escape
- [ ] get_digit
- [ ] iriencode
- [ ] join
- [ ] json_script
- [ ] last
- [ ] length
- [ ] linebreaks
- [ ] linebreaksbr
- [ ] linenumbers
- [ ] ljust
- [ ] lower
- [ ] make_list
- [ ] phone2numeric
- [ ] pluralize
- [ ] pprint
- [ ] random
- [ ] rjust
- [ ] safe
- [ ] safeseq
- [ ] slice
- [ ] slugify
- [ ] stringformat
- [ ] striptags
- [ ] time
- [ ] timesince
- [ ] timeuntil
- [ ] title
- [ ] truncatechars
- [ ] truncatechars_html
- [ ] truncatewords
- [ ] truncatewords_html
- [ ] unordered_list
- [ ] upper
- [ ] urlencode
- [ ] urlize
- [ ] urlizetrunc
- [ ] wordcount
- [ ] wordwrap
- [ ] yesno
___
## Doing
- [x] filter — super útil (ex.: {{ var|upper }})
- [x] autoescape — segurança importante
- [x] spaceless — remove espaços em branco
- [x] verbatim — como raw
- [x] url — reverse de URLs (quando tiver routing)
- [x] cycle — alternar valores em loop
- [x] firstof — fallback de variáveis
- [x] load — para custom tags/filters (futuro)
- [x] csrf_token — quando tiver web
---
## To do
1 - Finalizar o parser — completar as tags que faltam da lista:
- [ ] debug
- [x] lorem
- [ ] partial / partialdef
- [ ] querystring
- [ ] regroup
- [ ] resetcycle
- [ ] templatetag
- [ ] widthratio
2 - projetar o Context com calma:
- Estrutura hierárquica (escopos aninhados para with, for, etc.)
- Suporte a variáveis, listas, structs (models)
- Acesso por ponto (obj.atributo, lista.0, etc.)
- Fallback silencioso ou erro (como no Django)
3 - Renderer — com:
- Resolução de variáveis
- Aplicação de filtros
- Herança com block.super
- Loops com forloop
- Tudo testado
4 -Filtros