Lendo arquivos Markdown no terminal (*.md)

Publicado por Fábio Berbert de Paula em 18/04/2020

[ Hits: 11.145 ]

Blog: https://fabio.automatizando.dev

 


Lendo arquivos Markdown no terminal (*.md)



Markdown é um formato de texto mesclado com convenções HTML muito utilizado em repositórios Git. Por exemplo, quase todo repositório Git possui um "README.md". Quando você o abre pelo site GitHub, o formato fica lindo, pois o site interpreta as marcações e formata o texto na sua tela.

Mas já tentou abrir um README.md no terminal do Linux? A tela fica extremamente poluída, misturando tags markdown com texto.

Nesta dica, irei demonstrar como ler arquivos Markdown formatados no terminal. Para a façanha, precisaremos de dois programas, o Pandoc e Lynx. Se não os tiver, instale-os:

sudo apt install pandoc lynx

Pandoc é um conversor genérico de arquivos de markup dos mais variados formatos, pode pode exemplo converter um .md para .txt ou .html e por aí vai. Tem suporte inclusive a arquivos EPub, ODT dentre outros. Dê uma conferida no manual do Pandoc para uma lista mais detalhada:

man pandoc

Já o Lynx dispensa comentários, é um famoso navegador em modo texto para Linux.

Então vamos ao que interessa. Supondo que você está no diretório do teu projeto e quer ler o arquivo README.md. No terminal execute:

pandoc README.md | lynx -stdin

Também é possível ler arquivos remotos. No exemplo abaixo, irei ler o README.md do repositório do Node.js, no caso de arquivos remotos houve a necessidade de forçar o tipo de arquivo de entrada no Pandoc com "-f markdown":

pandoc -f markdown https://raw.githubusercontent.com/nodejs/node/master/README.md | lynx -stdin
Linux: Lendo arquivos Markdown no terminal (*.md)
Também é possível criar um comando para automatizar a leitura. Edite teu arquivo ~/.bash_profile e adicione o seguinte conteúdo:

lermd() {
   pandoc -f markdown $1 | lynx -stdin
}

Reinicie a sessão de usuário ou recarregue as configurações:

source ~/.bash_profile

E em seguida:

lermd README.md

Espero ter ajudado!

Outras dicas deste autor

Testando um servidor web usando o telnet (Apache, HTTPd, IIS e outros)

Condições if em múltiplas linhas no Python

Remover diretórios recursivamente em Python

DNS Dinâmico no Linux com ddupdate - DuckDNS

NAT (Network Address Translation)

Leitura recomendada

Montando servidor OpenGTS (rastreamento GPS) em GNU/Linux

Nagios - Obtendo endereços IPs dos servidores nos arquivos de configuração

Cadê o lilo!?

Abrindo outra sessão gráfica no Linux

Copie o conteúdo total de um HD para outro

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts