گنو ریدلاین

گنو ریدلاین  یک کتابخانه  برای افزودن قابلیت‌های  ویرایش خط و جستجو در تاریخچهٔ فرمان‌های به کار برده شده، در برنامه‌های محاوره‌ای است که از واسط خط فرمان استفاده می‌کنند. از جمله برنامه‌هایی که از گنو ریدلاین استفاده می‌کنند می‌توان به بش، اف‌تی‌پی، مای اس‌کیوال،پایتون و پست‌گرس‌کیوال اشاره کرد. میانبرهای مورد استفاده در گنو ریدلاین از ایمکس اقتباس شده‌اند، اگر چه این میانبرها قابل شخصی‌سازی هستند.

کد نمونه 
کد زیر به زبان سی است و در هنگام ترجمه باید با آپشن -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);
    }
}

منابع 

نرم‌افزارهای آزاد نوشته‌شده با سی
نرم‌افزارهای پروژه گنو