Todo diff sai
formatado.
Depois de cada write ou edit, o MVCode pode rodar o formatador da linguagem — prettier, gofmt, ruff, o seu — em background. Desligados por padrão; um booleano liga tudo.
01Ligando
maxvision-code.jsonjson
{
"formatter": true
}O fluxo: extensão do arquivo → formatador correspondente habilitado → comando roda → mudanças aplicadas. Se o projeto tem prettier no package.json, ele é usado para os arquivos que casam.
02Embarcados
| Formatador | Extensões | Requisito |
|---|---|---|
| prettier | .js .ts .css .md .json … | dependência no package.json |
| biome | .js .ts .html .css … | biome.json(c) no projeto |
| gofmt | .go | gofmt disponível |
| rustfmt · cargofmt | .rs | comando disponível |
| ruff · uv | .py .pyi | comando disponível |
| clang-format | .c .cpp .h … | .clang-format no projeto |
| mix | .ex .exs .heex … | mix disponível |
| shfmt · terraform · ktlint · dart · zig … | e mais 15+ | comando ou config presente |
| oxfmt Experimental | .js .jsx .ts .tsx | dependência + MVCODE_EXPERIMENTAL_OXFMT |
03Configurando
| Propriedade | Tipo | Faz o quê |
|---|---|---|
| disabled | boolean | Desliga um formatador específico. |
| command | string[] | Comando de formatação — obrigatório nos customizados. $FILE vira o caminho do arquivo. |
| environment | objeto | Variáveis de ambiente na execução. |
| extensions | string[] | Extensões atendidas. |
maxvision-code.jsonjson
{
"formatter": {
"prettier": {
"command": ["npx", "prettier", "--write", "$FILE"],
"extensions": [".js", ".ts", ".jsx", ".tsx"]
},
"markdown-deno": {
"command": ["deno", "fmt", "$FILE"],
"extensions": [".md"]
}
}
}"formatter": false desliga tudo, sobrepondo configs anteriores; disabled: true desliga um só.
Formatador ≠ verificador
Formatação pós-edição não substitui lint e typecheck no loop — documente esses comandos no AGENTS.md para o agente rodar e reagir aos erros.
