Initial implementation of wget, from Chip Rosenthal <chip@laserlink.net>.
[oweals/busybox.git] / shell / cmdedit.h
index 843a740706c453a640fc3ec448986dcbeb798ea2..27f7b5500dc632292b63c7c469c8a5ac4196af55 100644 (file)
@@ -1,17 +1,38 @@
-/*
- * Termios command line History and Editting for NetBSD sh (ash)
- * Copyright (c) 1999
- *      Main code:            Adam Rogoyski <rogoyski@cs.utexas.edu> 
- *      Etc:                  Dave Cinege <dcinege@psychosis.com>
- *      Adjusted for busybox: Erik Andersen <andersee@debian.org>
- *
- * You may use this code as you wish, so long as the original author(s)
- * are attributed in any redistributions of the source code.
- * This code is 'as is' with no warranty.
- * This code may safely be consumed by a BSD or GPL license.
- *
+#ifndef CMDEDIT_H
+#define CMDEDIT_H
+
+/* unix systems can #define POSIX to use termios, otherwise 
+ * the bsd or sysv interface will be used 
  */
 
-extern int cmdedit_read_input(char* prompt, int inputFd, int outputFd, char command[BUFSIZ]);
-extern void cmdedit_init(void);
+#ifdef __STDC__ 
+#include <stddef.h>
+
+typedef size_t (*cmdedit_strwidth_proc)(char *);
+
+void cmdedit_init(void);
+void cmdedit_terminate(void);
+void cmdedit_read_input(char* promptStr, char* command);               /* read a line of input */
+void cmdedit_setwidth(int);            /* specify width of screen */
+void cmdedit_histadd(char *);          /* adds entries to hist */
+void cmdedit_strwidth(cmdedit_strwidth_proc);  /* to bind cmdedit_strlen */
+
+extern int     (*cmdedit_in_hook)(char *);
+extern int     (*cmdedit_out_hook)(char *);
+extern int     (*cmdedit_tab_hook)(char *, int, int *);
+
+#else  /* not __STDC__ */
+
+void cmdedit_init(void);
+void cmdedit_read_input(char* promptStr, char* command);
+void cmdedit_setwidth();
+void cmdedit_histadd();
+void cmdedit_strwidth();
+
+extern int     (*cmdedit_in_hook)();
+extern int     (*cmdedit_out_hook)();
+extern int     (*cmdedit_tab_hook)();
+
+#endif /* __STDC__ */
 
+#endif /* CMDEDIT_H */