kwc
kwc é um porte direto, em Rust, do utilitário wc(1) do FreeBSD, desenvolvido com auxílio de IA.
O objetivo deste projeto não é reinventar o wc com uma interface nova, dependências extras ou uma camada de abstração moderna. A proposta aqui é mais específica: preservar a forma de operação do programa original do FreeBSD e reimplementá-la em Rust, com um binário próprio, pequeno e fácil de distribuir.
O nome kwc foi escolhido de propósito. Em vez de disputar espaço com o wc já presente na grande maioria dos sistemas operacionais, este projeto adota um nome distinto para coexistir com segurança durante testes, empacotamento e instalação.
Feito com IA, mas orientado pelo original
Este projeto foi implementado com apoio de IA, mas isso não muda a sua proposta técnica.
A referência primária continua sendo o wc(1) do FreeBSD, originalmente localizado em usr.bin/wc/wc.c. A IA foi usada como ferramenta de desenvolvimento para acelerar a transposição para Rust; o alvo do trabalho permanece o mesmo: reproduzir a interface, a semântica e o comportamento observável do programa original.
Por que isto pode ser chamado de porte direto
Este repositório segue a estrutura e o comportamento do wc(1) do FreeBSD, originalmente localizado em usr.bin/wc/wc.c.
Na prática, isso significa preservar os pontos que definem o utilitário:
- mesmas opções centrais:
-l,-w,-ce-L - mesmo comportamento padrão quando nenhuma flag é informada: linhas, palavras e bytes
- leitura tanto de arquivos quanto de
stdin - soma total ao processar múltiplos arquivos
- alinhamento da saída em colunas de largura compatível com a tradição BSD
- foco em comportamento previsível, sem "reinterpretar" o programa original
Em outras palavras: kwc não é apenas uma ferramenta inspirada em wc; ele foi escrito para reproduzir em Rust a interface e a semântica operacional essenciais do utilitário do FreeBSD.
O que o programa faz
kwc conta:
- linhas
- palavras
- bytes
- comprimento da maior linha
Compilação
O binário gerado será kwc, evitando conflito com o wc já instalado no sistema.
Uso
|
Uso resumido:
kwc [-c] [-Llw] [file ...]
Manual
Uma man page em estilo BSD foi adicionada em man/kwc.1.
Em sistemas Unix-like com man, ela pode ser aberta diretamente do repositório com:
Posicionamento do projeto
Se você quer um clone estilizado de wc, com parsing de argumentos reimaginado ou extensões fora da tradição Unix, este não é o objetivo deste repositório.
Se você quer um porte enxuto e fiel do wc(1) do FreeBSD para Rust, com nome próprio para não conflitar com o ecossistema já existente, é exatamente isso que kwc entrega.