Sobre o projeto

Rich é uma biblioteca Python para texto rico e formatação bonita no terminal. Ela fornece uma API que facilita adicionar cor e estilo à saída do terminal e pode renderizar tabelas elegantes, barras de progresso, Markdown, código-fonte com realce de sintaxe, tracebacks e muito mais, sem configuração adicional. Compatibilidade: Rich funciona em Linux, macOS e Windows. True color e emoji funcionam no novo Windows Terminal; o terminal clássico é limitado a 16 cores. Requer Python 3.8 ou posterior e também funciona em notebooks Jupyter sem configuração adicional. Instalação: instale com pip (`python -m pip install rich`) e teste a saída com `python -m rich`. Print do Rich: importe `rich.print` para obter uma versão com a mesma assinatura do `print` embutido, além de suporte a marcação, como `[bold magenta]World[/bold magenta]`, e nomes de emoji. Rich também pode ser instalado no REPL Python via `pretty.install()`, para que estruturas de dados sejam impressas de forma bonita e realçadas. API Console: o objeto `Console` oferece um método `print` semelhante ao embutido, com quebra de linha automática, argumentos de palavra-chave de estilo e marcação de console semelhante a BBCode. Também possui um método `log` que adiciona colunas de hora e localização e pode imprimir coleções de forma elegante, com uma opção `log_locals` para mostrar variáveis locais. Há um Handler de logging embutido para o módulo logging do Python. Renderizáveis embutidos incluem: - Emoji: insira emoji pelo nome entre dois-pontos, por exemplo `:smiley:`. - Tabelas: tabelas Unicode flexíveis com bordas, estilos, alinhamento de células e colunas configuráveis que se redimensionam para caber no terminal. - Barras de progresso: várias barras de progresso sem cintilação via `track` ou configurações personalizadas de colunas para porcentagem, tamanho de arquivo, velocidade e tempo restante. - Status: animação de spinner e mensagem com o gerenciador de contexto `status`; os spinners disponíveis podem ser vistos com `python -m rich.spinner`. - Árvore: renderização de dados hierárquicos com linhas-guia, adequada para estruturas de arquivos; `python -m rich.tree` demonstra isso. - Colunas: colunas de conteúdo organizadas com largura igual ou ideal, semelhantes a listagens de diretório. - Markdown: renderiza formatação Markdown no terminal usando a classe `Markdown`. - Realce de sintaxe: alimentado por Pygments por meio do objeto `Syntax`, com temas e números de linha. - Tracebacks: tracebacks bonitos e mais fáceis de ler, mostrando mais código do que os tracebacks padrão do Python, e configuráveis como o manipulador padrão. Os renderizáveis do Rich são construídos sobre o Console Protocol, permitindo que usuários implementem seu próprio conteúdo Rich. Projetos relacionados mencionados no README incluem Rich CLI, um aplicativo de linha de comando para realce de sintaxe, renderização de Markdown e exibição de CSV em tabelas, e Textual, um projeto irmão para construir interfaces de usuário sofisticadas no terminal.