bats output

Aplicando TDD no Bash

O objetivo principal desse artigo é ensinar o básico de como praticar Test-Driven Development em um projeto bash utilizando o BATS como framework de testes. Para isso escreveremos um “Hello, World poliglota”. AVISO! Se você já leu o artigo Aprenda TDD no Bash não encontrará novidade alguma aqui! Escrevi esse artigo aqui pois percebi que o artigo original estava muito longo. Portanto resolvi quebrá-lo em dois: Setup do BATS Fluxo de Test-Driven Development Durante a leitura pode ser que você ache que estou progredindo de forma demasiadamente lenta para resolver um problema tão simples, e isso é verdade! É intencional. Pois quero mostrar o passo a passo do TDD (e não como escrever hello-world). ...

junho 13, 2025 · 16 minutos · meleu
BATS logo

Setup básico do BATS

O objetivo principal desse artigo é mostrar um setup bem básico do BATS para que você possa facilmente testar seu código bash. Não desenvolveremos funcionalidade alguma, apenas mostrarei uma maneira conveniente de fazer este setup. AVISO! Se você já leu o artigo Aprenda TDD no Bash não encontrará novidade alguma aqui! Escrevi esse artigo aqui pois percebi que o artigo original estava muito longo. Portanto resolvi quebrá-lo em dois: Setup do BATS Fluxo de Test-Driven Development O que é BATS? BATS signfica Bash Automated Testing System. É um framework de testes para bash, que permite que verifiquemos se o nosso programa está se comportando da maneira que queremos. ...

junho 13, 2025 · 10 minutos · meleu
bats output

Aprenda TDD no Bash

AVISO! Após publicar este arquivo eu percebi que ele ficou muito grande. Isso ocorre pois eu abordo dois assuntos que merecem artigos separados. Por isso resolvi quebrar este conteúdo em dois: Setup do BATS Fluxo de Test-Driven Development Aqui eu mantenho o conteúdo original, mas recomendo a leitura dos artigos linkados acima, separadamente. O objetivo principal desse artigo é ensinar o básico do básico de: como usar o BATS como praticar Test-Driven Development Para isso escreveremos um “Hello, World poliglota”. ...

março 22, 2025 · 21 minutos · meleu
blesh

Habilitando auto-suggestions no bash

O auto-suggestions é muito conhecido do pessoal que usa o fish ou zsh, e é algo que me faz fazia muita falta no bash. Trata-se de um recurso que, durante a digitação de um comando, já te mostra uma sugestão baseada no seu histórico de comandos utilizados. Exemplo, se eu alguma vez já digitei o comando cd ~/foo/bar, só de digitar o cd ~/f, o auto-suggestion já vai me sugerir o resto do comando, assim: ...

fevereiro 13, 2025 · 4 minutos · meleu
LazyVim dashboard

Configuração do LazyVim pós-instalação

Depois de aproximadamente 2 décadas usando Vim, em 2023 eu me rendi ao Neovim. Cheguei a gastar alguns dias tentando fazer aquele setup bacanudo e super customizado pra deixá-lo como uma IDE, mas percebi que isso NÃO é uma tarefa simples (tanto de se fazer quanto de se manter no longo prazo). Por fim decidi me render a uma “distribuição” neovim, especificamente a LazyVim. Nesse artigo mostro como configuro o LazyVim logo após uma instalação, para deixá-lo de um jeito que eu fico mais produtivo. ...

fevereiro 9, 2025 · 9 minutos · meleu
prompt

Comece por aqui!

Neste artigo eu ofereço uma relação de conteúdo em português para que você comece DO ZERO e chegue a um nível razoável de proficiência em programação shell. Eu reconheço que alguns artigos aqui do meleu.sh não são lá tão focados no leitor que está iniciando suas aventuras no shell. Conforme eu digo na página “sobre”, na seção “Por que criei esse site?”: Meu objetivo é conseguir difundir no mercado brasileiro a adoção de boas práticas referentes a shell-script (principalmente bash). Deixar o código mais legível e de mais fácil manutenção. ...

maio 22, 2022 · 6 minutos · meleu
shfmt

Mantenha a consistência na formatação do seu código com shfmt

Neste artigo vamos conhecer o shfmt, uma ferramenta que vai te ajudar a manter seu código com uma formatação consistente, e também para tornar legível algum código de outra pessoa que você queira examinar. Veremos aqui: o que é o shfmt demonstração de como ele é útil como instalar opções de formatação pontos de atenção ao utilizar o shfmt como integrar o shfmt ao seu editor (VSCode e vim) Demonstração Só pra deixar claro, quando eu digo formatação estou me referindo à indentação, declaração de funções, quebra de linhas de comandos longos… Enfim, coisas extremamente básicas mas que influenciam bastante na legibilidade do seu código. ...

maio 14, 2022 · 12 minutos · meleu
shellcheck

Use shellcheck e livre-se dos bugs no seu código antes mesmo de executá-lo

Este artigo é parte da série “Práticas de programação shell que mudarão sua vida” Os artigos da série são: deixe seu bash mais rigoroso use um trap para saber exatamente onde seu script quebrou use o shellcheck Nós amamos programar, não é mesmo? (se você está lendo esse blog, eu imagino que sim). Mas convenhamos, quando chegamos naquele ponto onde fazer uma simples alteração envolve ficar continuamente alternando entre escrever-salvar-testar… Tem hora que enche o saco! ...

maio 4, 2022 · 14 minutos · meleu
configuração dos meus dotfiles

Uma maneira limpa e inteligente de gerenciar seus dotfiles em um repositório git

Neste artigo conheceremos uma maneira limpa de gerenciar seus dotfiles usando apenas o git. Não será necessária ferramenta adicional alguma, você não precisará instalar nada, nem criar links simbólicose e nem escrever script algum. Tudo que precisamos é pura e simplesmente o git. Como resultado da técnica descrita aqui, você terá um repositório dotfiles refletindo exatamente a estrutura de diretórios e localização dos arquivos que deve estar em seu homedir. ...

abril 28, 2022 · 7 minutos · meleu
git-multiuser

Chega de commitar no repositório do trabalho com seus dados do github (e vice-versa)!

Você é programador, trabalha para mais de uma empresa e também contribui com projetos open source no github, gitlab, codeberg, etc. Certamente você já passou por aquela situação de fazer um commit no repositório do trabalho usando username/email que usa nos seus projetos pessoais ou open source. Ou o que é mais delicado, você faz um commit num repositório público usando seu email da empresa. E agora o histórico de commit do seu projeto Open Source agora tem seu nome real e seu email da empresa… 😓 ...

abril 20, 2022 · 3 minutos · meleu