From e4b1078234d8e6cd051f5e461cf48b9daa3033b5 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Sun, 1 Feb 2015 14:58:17 +0100 Subject: [PATCH] editline.3: Update man page slightly and fix example formatting. Signed-off-by: Joachim Nilsson --- man/editline.3 | 58 ++++++++++++++++++++++++++++---------------------- 1 file changed, 32 insertions(+), 26 deletions(-) diff --git a/man/editline.3 b/man/editline.3 index 9b71686..39d9cc8 100644 --- a/man/editline.3 +++ b/man/editline.3 @@ -28,7 +28,7 @@ when the calling program is done with it. Each line returned is copied to the internal history list, unless it happens to be equal to the previous line. This is configurable if you are building editline from source. -.SS "User Interface" +.SS User Interface A program that uses this library provides a simple emacs-like editing interface to its users. A line may be edited before it is sent to the calling program by typing either control characters or escape sequences. A control character, shown as a caret @@ -121,9 +121,11 @@ are read in as if you had typed them at the keyboard. For example, if the variable .I _L_ contains the following: +.PP .RS ^A^Kecho '^V^[[H^V^[[2J'^M .RE +.PP Then typing ``ESC L'' will move to the beginning of the line, kill the entire line, enter the echo command needed to clear the terminal (if your terminal is like a VT-100), and send the line back to the shell. @@ -132,6 +134,7 @@ The .I editline library also does filename completion. Suppose the root directory has the following files in it: +.PP .RS .nf .ta \w'core 'u @@ -139,6 +142,7 @@ bin vmunix core vmunix.old .fi .RE +.PP If you type ``rm\ /v'' and then the tab key. .I Editline will then finish off as much of the name as possible by adding ``munix''. @@ -147,48 +151,50 @@ If you type the escape key and a question mark, it will display the two choices. If you then type a period and a tab, the library will finish off the filename for you: +.PP .RS .nf .RI "rm /v[TAB]" munix ".[TAB]" old .fi .RE +.PP The tab key is shown by ``[TAB]'' and the automatically-entered text is shown in italics. - -.SH "USAGE" +.SH USAGE To include .I readline() in your program, simply call it as you do any other function. Just make sure to link your program with libeditline. - -.SS "Example" +.SS Example The following brief example lets you enter a line and edit it, then displays it. - .nf -.B "#include " .B "" -.B "extern char *readline(char *prompt);" +.B #include .B "" -.B "int main (void)" -.B "{" -.B " char *p;" +.B extern char *readline(char *prompt); .B "" -.B " while ((p = readline(``CLI> '')) != NULL) {" -.B " printf(\"%s\n\", p);" -.B " free(p);" -.B " }" +.B int main (void) +.B { +.RS +.B char *p; .B "" -.B " return 0;" -.B "}" +.B while ((p = readline("CLI>"))) { +.RS +.B puts(p); +.B free(p); +.RE +.B } +.B "" +.B return 0; +.RE +.B } .fi - -.SH "BUGS AND LIMITATIONS" -Doesn't know how to handle multiple lines or unicode characters well. See the TODO +.SH BUGS AND LIMITATIONS +Does not handle multiple lines or unicode characters well. See the TODO file in the distribution if you want to help out. - .SH AUTHORS -The original editline library was created by Simmule R. Turner and Rich $alz. It is -now maintained in several forks: Heimdal, Festival speech tools, Mozilla, Google -Gadgets for Linux, and many other places. The original manual page was made by DaviD -W. Sanderson. This version was made by Joachim Nilsson . - +The original editline library was created by Simmule R. Turner and Rich +$alz. It now exists in several forks: Heimdal, Festival speech tools, +Mozilla, Google Gadgets for Linux, and many other places. The original +manual page was made by David W. Sanderson. Currently maintained by +Joachim Nilsson at http://github.com/troglobit/editline