1 /* **************************************************************** */ 2 /* */ 3 /* Testing Readline */ 4 /* */ 5 /* **************************************************************** */ 6 7 #if defined (HAVE_CONFIG_H) 8 #include <config.h> 9 #endif 10 11 #include <stdio.h> 12 #include <sys/types.h> 13 14 #ifdef READLINE_LIBRARY 15 # include "readline.h" 16 # include "history.h" 17 #else 18 # include <readline/readline.h> 19 # include <readline/history.h> 20 #endif 21 22 extern HIST_ENTRY **history_list (); 23 24 main () 25 { 26 char *temp, *prompt; 27 int done; 28 29 temp = (char *)NULL; 30 prompt = "readline$ "; 31 done = 0; 32 33 while (!done) 34 { 35 temp = readline (prompt); 36 37 /* Test for EOF. */ 38 if (!temp) 39 exit (1); 40 41 /* If there is anything on the line, print it and remember it. */ 42 if (*temp) 43 { 44 fprintf (stderr, "%s\r\n", temp); 45 add_history (temp); 46 } 47 48 /* Check for `command' that we handle. */ 49 if (strcmp (temp, "quit") == 0) 50 done = 1; 51 52 if (strcmp (temp, "list") == 0) 53 { 54 HIST_ENTRY **list; 55 register int i; 56 57 list = history_list (); 58 if (list) 59 { 60 for (i = 0; list[i]; i++) 61 fprintf (stderr, "%d: %s\r\n", i, list[i]->line); 62 } 63 } 64 free (temp); 65 } 66 exit (0); 67 } 68