Introdução geral
O CodeWeaver é uma ferramenta de linha de comando projetada para tecer uma base de código em um documento Markdown único e fácil de navegar. Ele gera uma representação estruturada da hierarquia de arquivos de um projeto, examinando recursivamente os diretórios e incorporando o conteúdo de cada arquivo em blocos de código. A ferramenta foi projetada com o objetivo de simplificar o compartilhamento da base de código e a extração de informações, e é particularmente adequada para disponibilizar as informações da base de código para as ferramentas de análise de código AI/ML para processamento.

Aqui está um exemplo de geração: https://github.com/tesserato/CodeWeaver/blob/main/codebase.md
Lista de funções
- Geração de documentação abrangente da base de códigoGerar um arquivo Markdown detalhando o diretório do projeto e a estrutura de arquivos em um formato de árvore claro.
- Incorporação de conteúdo de códigoIncorporar o conteúdo completo de cada arquivo no documento Markdown gerado, com destaque de sintaxe com base na extensão do arquivo.
- Filtragem flexível de caminhosExpressões regulares: use expressões regulares para definir padrões de ignorar que permitam a exclusão de arquivos e diretórios específicos (por exemplo, .git, produtos de compilação, tipos de arquivos específicos).
- Registro de rota opcionalOpção para salvar listas separadas de caminhos de arquivos incluídos e excluídos em um arquivo para rastreamento e depuração detalhados de regras de ignorar.
- Interface de linha de comando simplesInterface de linha de comando: fornece uma interface de linha de comando intuitiva com opções de personalização simples.
Usando a Ajuda
Processo de instalação
Instalação usando Go
Se você tiver instalado o ambiente de linguagem Go, poderá executar o seguinte comando para instalar a versão mais recente do CodeWeaver:
go install github.com/tesserato/CodeWeaver@latest
Ou instale a versão especificada:
go install github.com/tesserato/CodeWeaver@vX.Y.Z
Faça o download do executável pré-compilado
Faça o download do executável pré-compilado apropriado na página de lançamento.
Se desejar, você pode usar ochmod
para dar permissão de execução ao arquivo executável:
chmod +x codeweaver
Processo de uso
Obtendo ajuda
Execute o seguinte comando para obter informações de ajuda:
codeweaver -h
uso prático
Execute o seguinte comando para gerar o documento:
codeweaver [options]
Descrição das opções
opções (como nas configurações de software de computador) | descrições | valor padrão |
---|---|---|
-dir | O diretório raiz a ser verificado e registrado. | Diretório atual (...) |
-saída | Emite o nome do arquivo Markdown. | base de código.md |
-ignorar "" | Lista separada por vírgulas de padrões de expressão regular de caminho para excluir caminhos específicos. | .git.* |
-arquivo de caminhos incluídos | Salva o arquivo que contém a lista de caminhos no documento. | não ter |
-excluded-paths-file | Arquivo que contém a lista de caminhos excluídos devido à regra de ignorar. | não ter |
-ajuda | Exibir essa mensagem de ajuda e sair. | não ter |
exemplo de uso
Gerar documentação para o diretório atual
./codeweaver
Esse comando criará um arquivo no diretório atual chamadocodebase.md
que registra a estrutura e o conteúdo do diretório atual e de seus subdiretórios (a exclusão corresponde ao padrão de ignorar).\.git.*
(o caminho).
Especifique diferentes diretórios de entrada e arquivos de saída
./codeweaver -dir=my_project -output=project_docs.md
Esse comando processará omy_project
e salve o documento no diretórioproject_docs.md
.
Ignorar tipos de arquivos e diretórios específicos
./codeweaver -ignore="\.log,temp,build" -output=detailed_docs.md
O exemplo gerarádetailed_docs.md
excluindo qualquer nome que contenha.log
etemp
talvezbuild
de arquivos ou diretórios. Os padrões de expressão regular são separados por vírgulas.
Manter uma lista de caminhos incluídos e excluídos
./codeweaver -ignore="node_modules" -included-paths-file=included.txt -excluded-paths-file=excluded.txt -output=code_overview.md
Esse comando criará o arquivocode_overview.md
enquanto salva a lista de caminhos incluídos na pastaincluded.txt
será devido anode_modules
A lista de caminhos excluídos pelo padrão de ignorar é salva no arquivoexcluded.txt
.