GNU readline

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색
GNU readline
원저자 Brian Fox
개발자 Chet Ramey
발표일 1989년
프로그래밍 언어 C
운영 체제 크로스 플랫폼
종류 라이브러리
라이선스 GNU 일반 공중 허가서
웹사이트 공식 사이트

GNU readline명령 줄 인터페이스에서 줄 편집 및 입력 기록 저장 등의 역할을 하는 라이브러리이다. GNU 프로젝트에 속해 있다.

GNU readline은 입력 자동 완성, 커서 이동, 잘라내기, 복사, 붙여넣기 등의 기능을 지원하며, Bash 등의 명령 줄 기반 인터랙티브 소프트웨어에서 사용된다.

샘플 코드[편집]

다음의 코드는 C로 작성되어 있으며 -lreadline 컴파일러 플래그를 사용하여 컴파일해야 한다:

#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <readline/readline.h>
#include <readline/history.h>
 
int main()
{
    char* input, shell_prompt[100];
 
    // Configure readline to auto-complete paths when the tab key is hit.
    rl_bind_key('\t', rl_complete);
 
    for(;;) {
        // Create prompt string from user name and current working directory.
        snprintf(shell_prompt, sizeof(shell_prompt), "%s:%s $ ", getenv("USER"), getcwd(NULL, 1024));
 
        // Display prompt and read input (n.b. input must be freed after use)...
        input = readline(shell_prompt);
 
        // Check for EOF.
        if (!input)
            break;
 
        // Add input to history.
        add_history(input);
 
        // Do stuff...
 
        // Free input.
        free(input);
    }
}

바깥 고리[편집]