گنو ریدلاین

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو
گنو ریدلاین
Official gnu.svg
وضعیت توسعه فعال
نوشته‌شده به سی
سیستم‌عامل گوناگون
پروانه پروانه عمومی همگانی گنو
وب‌گاه http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html

گنو ریدلاین (به انگلیسی: GNU readline) یک کتابخانه برای افزودن قابلیتهای ویرایش خط و جستجو در تاریخچهٔ فرمان‌های به کار برده شده، در برنامه‌های محاوره‌ایی است که از واسط خط فرمان استفاده می‌کنند. از جمله برنامه‌های که از گنو ریدلاین استفاده می‌کنند می‌توان به بش ,اف‌تی‌پی,مای اس‌کیوال,پایتون و پست‌گرس‌کیوال اشاره کرد. میانبرهای مورد استفاده در گنو ریدلاین از ایمکس اقتباس شده‌اند اگر چه این میانبرها قابل شخصی‌سازی هستند.[۱]

کد نمونه[ویرایش]

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

منابع[ویرایش]

  1. مشارکت‌کنندگان ویکی‌پدیا. «GNU_readline». در دانشنامهٔ ویکی‌پدیای انگلیسی، بازبینی‌شده در ۸ ژوئیه ۲۰۱۳.