A biblioteca readline
é uma ferramenta poderosa que facilita a leitura e edição de entradas de usuário em programas de linha de comando.
Desenvolvida originalmente para o GNU Project, ela oferece uma série de funcionalidades que melhoram a experiência do usuário ao interagir com aplicações de terminal.
A readline
é usada em várias ferramentas populares de linha de comando, incluindo o shell Bash, o Python REPL e muitos outros.
readline
?A principal finalidade da biblioteca readline
é melhorar a experiência de entrada de texto em terminais. Suas funcionalidades incluem:
readline
mantém um histórico dos comandos inseridos, permitindo que os usuários naveguem e reutilizem comandos anteriores.
Para instalar a biblioteca readline
você pode usar o gerenciador de pacotes do seu sistema operacional. Exemplo no Ubuntu usando o APT:
Você também pode compilar e instalar a readline
diretamente, clique no botão abaixo, descompacte e siga as instruções dentro da pasta descompactada para compilar e instalar:
Clique aqui para fazer o download da readline
readline
Vamos explorar alguns exemplos práticos para ilustrar como a biblioteca readline
pode ser utilizada.
Um exemplo básico de como utilizar readline
para ler uma linha de entrada do usuário.
Neste exemplo, a função
readline
é utilizada para ler uma linha de entrada do usuário com o prompt “Digite algo: “. A entrada é então impressa no terminal.
Compile usando a flag
-lreadline
, ex.:gcc main.c -lreadline
.
Compile usando a flag
-lreadline
, ex.:g++ main.cpp -lreadline
.
A readline
também permite que você armazene e reutilize comandos anteriores. Veja um exemplo simples:
Neste exemplo, o comando digitado pelo usuário é adicionado ao histórico se não estiver vazio, permitindo que ele seja reutilizado apenas pressionando a tecla direcional para cima: ↑
, caso não tivesse adicionado o add_history(input)
, ao teclar o evento iria exibir de forma literal: ^[[A^
.
Para mais informações, acesse: https://tiswww.case.edu/php/chet/readline/rltop.html