Lendo arquivos Markdown no terminal (*.md)

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

[ Hits: 10.361 ]

Blog: https://mestrefabio.com

 


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

Sistema de Informações em Rede (NIS)

DBeaver - Ferramenta de Administração de Banco de Dados

Lista de distribuições Live CD

Lançamento do TupiServer Linux 1.0

Lista de downloads travando no Firefox

Leitura recomendada

Como Instalar o Gentoo Linux

Cinnamon no Fedora 17

Ignorar determinado pacote na listagem de pacotes órfãos do deborphan

Instalando a placa de som no VMware com o Debian 5 (lenny) como host

Utilizando NAT em containers Openvz: Iptables: No chain/target/match by that name

  

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