- Biblioteca que desenha uma estrutura de arquivos/diretórios parecida com a janela de arquivos do VSCode
- Projetada com foco em alto nível de customização e em desempenho e flexibilidade
- Vem com virtualização automática integrada para renderizar rapidamente até dezenas de milhares de itens, montando e processando apenas as linhas visíveis na tela
- Oferece amplo suporte aos recursos necessários para uma UI de árvore no estilo ferramenta de desenvolvimento, como badges de status do Git, drag and drop, busca e filtro por nome, menus de contexto personalizados e mais
- Suporta navegação por teclado, gerenciamento de foco e ARIA, oferecendo acessibilidade nativa de acordo com o padrão WCAG 2.1
- Permite controle detalhado da aparência com variáveis CSS, tema Shiki, ajuste de densidade etc.
- Pode ser usada para implementar a árvore lateral de editores/ferramentas de hospedagem de código
- Detalhes dos principais recursos
flattenEmptyDirectories: oferece achatamento da árvore ao combinar em uma única linha a cadeia de pastas com apenas um filhogitStatus: exibe badges de status do Git para arquivos adicionados, modificados, excluídos, renomeados, não rastreados e ignorados; em pastas com itens filhos alterados, mostra automaticamente um indicador de ponto (dot)dragAndDrop: permite arrastar arquivos e pastas para outras pastas ou para a raiz; o alvo de drop é expandido automaticamente ao passar o mouse, e é possível bloquear caminhos específicos com o callbackcanDrag- Suporta a configuração de menus de contexto personalizados para novo arquivo, nova pasta, renomear, excluir etc.
- Por meio da caixa de busca, oferece filtragem rápida por nome e caminho, com suporte a três modos:
hide-non-matches,collapse-non-matcheseexpand-matches - Fornece três conjuntos de ícones integrados:
minimal,standardecomplete - A opção
density(compact,default,relaxed) ajusta de uma vez a altura das linhas e o espaçamento
2 comentários
Se você usar assim com
alias, fica mais prático.alias t='tree -N -C -L 2 -I "node_modules|cache|dist|test_"'
alias tt='tree -N -C -L 3 -I "node_modules|cache|dist|test_"'
alias ttt='tree -N -C -L 4 -I "node_modules|cache|dist|test_"'
alias tttt='tree -N -C -L 5 -I "node_modules|cache|dist|test_"'
Parece um open source divertido e útil.