2013-07-31 48 views
9

Tôi đang tìm một phương án thay thế GNU readline. Nó đi kèm với rất nhiều tính năng nhưng chỉ có một vài tính năng hữu ích cho tôi như được giải thích bên dưới -Thay thế dòng đọc GNU nhẹ

Tôi đang làm việc trên ứng dụng nhắc lệnh tương tác (hiển thị lời nhắc và chấp nhận lệnh người dùng tiếp theo sẽ được chạy). Tôi muốn thực hiện một số tính năng chỉnh sửa và lịch sử cho lời nhắc. Vì vậy, khi người dùng nhấn phím UP, nó sẽ hiển thị lệnh chạy cuối cùng. Ngoài ra, người dùng có thể điều hướng bằng cách sử dụng các phím mũi tên nếu cần chỉnh sửa bất kỳ công cụ đánh máy hoặc lệnh nào, v.v.

Trên các cửa sổ tương tự, nếu bạn sử dụng fgets hoặc scanf để nhận thông tin nhắc nhở cmd lịch sử và cũng cho phép bạn chỉnh sửa.

Có tùy chọn nào tốt trên Linux không?

+0

Nghiêm túc? Đó là một số loại tiện ích Visual Studio? – Duck

+0

@Duck cảm ơn, tôi đang sử dụng C. Tôi đang sử dụng VS nhưng không chắc chắn nếu một tiện ích của nó. – punekr12

+2

có vấn đề gì khi chỉ sử dụng readline? Nó khá dễ dàng để tích hợp vào ứng dụng của bạn. – rici

Trả lời

8

Đây là một mục tiêu đáng ngưỡng mộ Tôi nghĩ :-)

lẽ Linenoise, libedit/editline hoặc tecla sẽ phù hợp với những hóa đơn?

Trong số đó có thể là libedit được sử dụng rộng rãi nhất - ví dụ: shell client postgreqsql và các tiện ích BSD khác nhau cho Kerberos và ntp (mặc dù đối với các nguồn ngược dòng, nó có thể không phải là thư viện biên tập dòng mặc định để biên dịch do sử dụng rộng rãi libreadline trên Linux). Có một vài phiên bản khác nhau của libedit/editline như bạn sẽ thấy nếu bạn đọc một số tài liệu tham khảo và làm một số nghiên cứu thêm.

Chúc mừng và chúc bạn may mắn với dự án của mình.