|
|
@@ -1,27 +1,28 @@
|
|
|
Index: Makefile.in
|
|
|
---- Makefile.in.orig 2005-11-22 09:39:14 +0100
|
|
|
-+++ Makefile.in 2005-11-27 09:51:48 +0100
|
|
|
-@@ -1,162 +1,70 @@
|
|
|
--LIBS = -lslang -lm -ldl #-lefence
|
|
|
--SHLIBS = -lslang -lm -dl -lc
|
|
|
+--- Makefile.in.orig 2006-10-13 15:34:27 +0200
|
|
|
++++ Makefile.in 2006-10-27 19:28:57 +0200
|
|
|
+@@ -1,160 +1,70 @@
|
|
|
+-LIBS = -lslang
|
|
|
-LIBTCL = -ltcl8.4
|
|
|
|
|
|
--GPM_SUPPORT=@gpm_support@
|
|
|
--CFLAGS = $(RPM_OPT_FLAGS) -Wall -D_GNU_SOURCE -g -O2 -DUTF8 -fPIC -I/usr/include/slang
|
|
|
+-CC = @CC@
|
|
|
+-CPP = @CPP@
|
|
|
+-CFLAGS = @CFLAGS@
|
|
|
+-CPPFLAGS = -D_GNU_SOURCE -I/usr/include/slang @CPPFLAGS@
|
|
|
-
|
|
|
--SHLIBFLAGS= -Wl,-O1 -Wl,--version-script,newt.0.52.ver
|
|
|
+-SHLIBFLAGS= -Wl,--version-script,newt.0.52.ver
|
|
|
-VERSION = @VERSION@
|
|
|
-CVSTAG = r$(subst .,-,$(VERSION))
|
|
|
+-CVSROOT = $(shell cat CVS/Root)
|
|
|
-SONAME = @SONAME@
|
|
|
-
|
|
|
--PYTHONVERS = python2.4
|
|
|
--
|
|
|
--WHIPTCLSO=whiptcl.so
|
|
|
+-PYTHONVERS = @PYTHONVERS@
|
|
|
+-WHIPTCLSO = @WHIPTCLSO@
|
|
|
-
|
|
|
-PROGS = test whiptail $(WHIPTCLSO) testgrid testtree showchars showkey
|
|
|
--TESTOBJS = test.o
|
|
|
+-TESTOBJS = test.o testgrid.o testtree.o showchars.o showkey.o
|
|
|
-NDIALOGOBJS = whiptail.o dialogboxes.o
|
|
|
--WHIPTCLOBJS = whiptcl.o dialogboxes.o
|
|
|
+-WHIPTCLOBJS = shared/whiptcl.o shared/dialogboxes.o
|
|
|
-LIBNEWT = libnewt.a
|
|
|
-LIBNEWTSH = libnewt.so.$(VERSION)
|
|
|
-LIBNEWTSONAME = libnewt.so.$(SONAME)
|
|
|
@@ -31,11 +32,14 @@ Index: Makefile.in
|
|
|
-
|
|
|
-SHCFLAGS = -fPIC
|
|
|
-
|
|
|
--prefix = /usr
|
|
|
--includedir = $(prefix)/include
|
|
|
--libdir = $(prefix)/lib
|
|
|
--bindir = $(prefix)/bin
|
|
|
--ARCHNAME = $(shell uname -m | sed 's/i.86/i386/')
|
|
|
+-prefix = @prefix@
|
|
|
+-includedir = @includedir@
|
|
|
+-exec_prefix = @exec_prefix@
|
|
|
+-libdir = @libdir@
|
|
|
+-bindir = @bindir@
|
|
|
+-datadir = @datadir@
|
|
|
+-mandir = @mandir@
|
|
|
+-man1dir = $(mandir)/man1
|
|
|
-
|
|
|
-#--------------------------------------
|
|
|
-
|
|
|
@@ -50,13 +54,10 @@ Index: Makefile.in
|
|
|
-TARGET=depend $(PROGS)
|
|
|
-endif
|
|
|
-
|
|
|
--all: $(TARGET) _snackmodule.so po/stamp-po
|
|
|
--
|
|
|
--po/stamp-po:
|
|
|
-- $(MAKE) -C po stamp-po
|
|
|
+-all: $(TARGET) _snackmodule.so
|
|
|
-
|
|
|
--test: $(TESTOBJS) $(LIBNEWT)
|
|
|
-- $(CC) -g -o test $(TESTOBJS) $(LIBNEWT) $(LIBS) -static
|
|
|
+-test: test.o $(LIBNEWT)
|
|
|
+- $(CC) -g -o test test.o $(LIBNEWT) $(LIBS)
|
|
|
-
|
|
|
-testgrid: testgrid.o $(LIBNEWT)
|
|
|
- $(CC) -g -o testgrid testgrid.o $(LIBNEWT) $(LIBS)
|
|
|
@@ -74,10 +75,11 @@ Index: Makefile.in
|
|
|
- for ver in $(PYTHONVERS) ; do \
|
|
|
- if [ ! -f "$$ver/_snackmodule.so" -o $(LIBNEWTSH) -nt "$$ver/_snackmodule.so" ]; then \
|
|
|
- mkdir -p $$ver ;\
|
|
|
-- $(CC) $(CFLAGS) -I/usr/include/$$ver -fPIC -c -o $$ver/snackmodule.o snackmodule.c ;\
|
|
|
+- $(CC) $(CFLAGS) -I/usr/include/$$ver $(SHCFLAGS) -c -o $$ver/snackmodule.o snackmodule.c ;\
|
|
|
- $(CC) --shared $(SHCFLAGS) -o $$ver/_snackmodule.so $$ver/snackmodule.o -L . -lnewt -lslang ;\
|
|
|
- fi ; \
|
|
|
- done
|
|
|
+- touch $@
|
|
|
-
|
|
|
-whiptail: $(NDIALOGOBJS) $(LIBNEWTSH)
|
|
|
- $(CC) -g -o whiptail $(NDIALOGOBJS) -L . -lnewt $(LIBS) -lpopt
|
|
|
@@ -85,19 +87,10 @@ Index: Makefile.in
|
|
|
-whiptcl.so: $(WHIPTCLOBJS) $(LIBNEWTSH)
|
|
|
- $(CC) -shared $(SHCFLAGS) -o whiptcl.so $(WHIPTCLOBJS) -L . -lnewt $(LIBTCL) -lslang -lpopt -lm
|
|
|
-
|
|
|
--# Ensure dialogboxes is compiled -fPIC
|
|
|
--dialogboxes.o: dialogboxes.c
|
|
|
-- $(CC) $(CFLAGS) $(SHCFLAGS) -c dialogboxes.c
|
|
|
--
|
|
|
--whiptcl.o: whiptcl.c
|
|
|
-- $(CC) -I/usr/include/tcl8.4 $(SHCFLAGS) $(CFLAGS) -c whiptcl.c
|
|
|
--
|
|
|
--
|
|
|
-$(LIBNEWT): $(LIBOBJS)
|
|
|
- ar rv $@ $^
|
|
|
-
|
|
|
--newt.o: newt.c Makefile
|
|
|
-- $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -c -o $@ $<
|
|
|
+-newt.o $(SHAREDDIR)/newt.o: newt.c Makefile
|
|
|
-
|
|
|
-veryclean: clean
|
|
|
- rm -f .depend
|
|
|
@@ -155,10 +148,10 @@ Index: Makefile.in
|
|
|
|
|
|
clean:
|
|
|
- rm -f $(PROGS) *.o $(LIBNEWT) core $(LIBNEWTSH) \
|
|
|
-- $(SHAREDOBJS) *.so*
|
|
|
+- $(SHAREDDIR)/*.o *.so*
|
|
|
-
|
|
|
-depend:
|
|
|
-- $(CPP) $(CFLAGS) -M $(SOURCES) > .depend
|
|
|
+- $(CPP) $(CFLAGS) $(CPPFLAGS) -M $(SOURCES) > .depend
|
|
|
+ $(RM) $(LIBNEWT) $(TARGETS) *.o
|
|
|
|
|
|
-$(SHAREDDIR):
|
|
|
@@ -180,28 +173,29 @@ Index: Makefile.in
|
|
|
-sharedlib: $(LIBNEWTSH)
|
|
|
-
|
|
|
-$(LIBNEWTSH): $(SHAREDDIR) $(SHAREDOBJS)
|
|
|
-- $(CC) -shared -o $(LIBNEWTSH) $(SHLIBFLAGS) -Wl,-soname,$(LIBNEWTSONAME) $(SHAREDOBJS) $(SHLIBS)
|
|
|
-- ln -fs $(LIBNEWTSH) libnewt.so
|
|
|
+- $(CC) -shared -o $(LIBNEWTSH) $(SHLIBFLAGS) -Wl,-soname,$(LIBNEWTSONAME) $(SHAREDOBJS) $(LIBS)
|
|
|
+- ln -fs $(LIBNEWTSONAME) libnewt.so
|
|
|
+- ln -fs $(LIBNEWTSH) $(LIBNEWTSONAME)
|
|
|
-
|
|
|
-$(SHAREDDIR)/%.o : %.c
|
|
|
-- $(CC) $(SHCFLAGS) -c $(CFLAGS) -o $@ $<
|
|
|
--
|
|
|
--$(SHAREDDIR)/newt.o: newt.c Makefile
|
|
|
-- $(CC) $(SHCFLAGS) $(CFLAGS) -DVERSION=\"$(VERSION)\" -c -o $@ $<
|
|
|
--
|
|
|
+- $(CC) $(SHCFLAGS) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
|
|
|
-
|
|
|
-install: $(LIBNEWT) install-sh whiptail
|
|
|
- [ -d $(instroot)/$(bindir) ] || install -m 755 -d $(instroot)/$(bindir)
|
|
|
- [ -d $(instroot)/$(libdir) ] || install -m 755 -d $(instroot)/$(libdir)
|
|
|
- [ -d $(instroot)/$(includedir) ] || install -m 755 -d $(instroot)/$(includedir)
|
|
|
+- [ -d $(instroot)/$(man1dir) ] || install -m 755 -d $(instroot)/$(man1dir)
|
|
|
- install -m 644 newt.h $(instroot)/$(includedir)
|
|
|
- install -m 644 $(LIBNEWT) $(instroot)/$(libdir)
|
|
|
- install -m 755 whiptail $(instroot)/$(bindir)
|
|
|
+- install -m 644 whiptail.1 $(instroot)/$(man1dir)
|
|
|
+- make -C po datadir=$(instroot)/$(datadir) install
|
|
|
-
|
|
|
-install-sh: sharedlib $(WHIPTCLSO) _snackmodule.so
|
|
|
- [ -d $(instroot)/$(libdir) ] || install -m 755 -d $(instroot)/$(libdir)
|
|
|
- install -m 755 $(LIBNEWTSH) $(instroot)/$(libdir)
|
|
|
-- ln -sf $(LIBNEWTSH) $(instroot)/$(libdir)/libnewt.so
|
|
|
+- ln -sf $(LIBNEWTSONAME) $(instroot)/$(libdir)/libnewt.so
|
|
|
+- ln -sf $(LIBNEWTSH) $(instroot)/$(libdir)/$(LIBNEWTSONAME)
|
|
|
- [ -n "$(WHIPTCLSO)" ] && install -m 755 whiptcl.so $(instroot)/$(libdir) || :
|
|
|
- for ver in $(PYTHONVERS) ; do \
|
|
|
- [ -d $(instroot)/$(libdir)/$$ver/site-packages ] || install -m 755 -d $(instroot)/$(libdir)/$$ver/site-packages ;\
|
|
|
@@ -209,16 +203,15 @@ Index: Makefile.in
|
|
|
- install -m 755 snack.py $(instroot)/$(libdir)/$$ver/site-packages ;\
|
|
|
- done
|
|
|
-
|
|
|
--configure: configure.in
|
|
|
+-configure: configure.ac newt.spec
|
|
|
- autoconf
|
|
|
- echo "You need to rerun ./configure before continuing"
|
|
|
- exit 1
|
|
|
-
|
|
|
--archive: configure
|
|
|
-- @cvs tag -F $(CVSTAG)
|
|
|
+-create-archive: configure
|
|
|
- @rm -rf /tmp/newt-$(VERSION) /tmp/newt
|
|
|
-- @cd /tmp; cvs export -r$(CVSTAG) newt; mv newt newt-$(VERSION)
|
|
|
-- @cd /tmp/newt-$(VERSION); autoconf
|
|
|
+- @cd /tmp; cvs -d $(CVSROOT) export -r$(CVSTAG) newt; mv newt newt-$(VERSION)
|
|
|
+- @cd /tmp/newt-$(VERSION); ./autogen.sh
|
|
|
- @cd /tmp; tar czSpf newt-$(VERSION).tar.gz newt-$(VERSION)
|
|
|
- @rm -rf /tmp/newt-$(VERSION)
|
|
|
- @cp /tmp/newt-$(VERSION).tar.gz .
|
|
|
@@ -226,12 +219,17 @@ Index: Makefile.in
|
|
|
- @echo " "
|
|
|
- @echo "The final archive is ./newt-$(VERSION).tar.gz."
|
|
|
-
|
|
|
+-tag-archive:
|
|
|
+- @cvs tag $(CVSTAG)
|
|
|
+-
|
|
|
+-archive: tag-archive create-archive
|
|
|
+-
|
|
|
-ifeq (.depend,$(wildcard .depend))
|
|
|
-include .depend
|
|
|
-endif
|
|
|
Index: newt.c
|
|
|
---- newt.c.orig 2005-09-30 16:13:16 +0200
|
|
|
-+++ newt.c 2005-11-27 09:51:14 +0100
|
|
|
+--- newt.c.orig 2006-09-15 15:38:21 +0200
|
|
|
++++ newt.c 2006-10-27 19:30:05 +0200
|
|
|
@@ -9,7 +9,9 @@
|
|
|
#include <sys/types.h>
|
|
|
#include <termios.h>
|
|
|
@@ -269,9 +267,9 @@ Index: newt.c
|
|
|
return nchars;
|
|
|
}
|
|
|
|
|
|
-@@ -186,18 +194,24 @@
|
|
|
+@@ -186,19 +194,25 @@
|
|
|
char *p = title;
|
|
|
- int ln = chrs;
|
|
|
+ int ln;
|
|
|
int x = 0,y = 0;
|
|
|
+#ifdef FIXME
|
|
|
wchar_t tmp;
|
|
|
@@ -279,6 +277,7 @@ Index: newt.c
|
|
|
|
|
|
memset(&ps, 0, sizeof(ps));
|
|
|
+#endif
|
|
|
+ ln = strlen(title);
|
|
|
|
|
|
while (*p) {
|
|
|
+#ifdef FIXME
|
|
|
@@ -291,12 +290,12 @@ Index: newt.c
|
|
|
+#ifdef FIXME
|
|
|
y = wcwidth(tmp);
|
|
|
+#endif
|
|
|
- if (y > ln) {
|
|
|
+ if (y > chrs) {
|
|
|
*p = '\0';
|
|
|
return;
|
|
|
Index: shtool
|
|
|
---- /dev/null 2005-11-27 09:51:01 +0100
|
|
|
-+++ shtool 2005-11-27 09:51:14 +0100
|
|
|
+--- /dev/null 2006-10-27 19:30:04 +0200
|
|
|
++++ shtool 2006-10-27 19:28:08 +0200
|
|
|
@@ -0,0 +1,661 @@
|
|
|
+#!/bin/sh
|
|
|
+##
|
|
|
@@ -960,8 +959,8 @@ Index: shtool
|
|
|
+shtool_exit 0
|
|
|
+
|
|
|
Index: textbox.c
|
|
|
---- textbox.c.orig 2005-09-30 16:05:55 +0200
|
|
|
-+++ textbox.c 2005-11-27 09:51:14 +0100
|
|
|
+--- textbox.c.orig 2006-10-12 16:18:38 +0200
|
|
|
++++ textbox.c 2006-10-27 19:28:08 +0200
|
|
|
@@ -4,7 +4,9 @@
|
|
|
#include <stdlib.h>
|
|
|
#include <string.h>
|
|
|
@@ -972,7 +971,7 @@ Index: textbox.c
|
|
|
|
|
|
#include "newt.h"
|
|
|
#include "newt_pr.h"
|
|
|
-@@ -163,8 +165,10 @@
|
|
|
+@@ -172,8 +174,10 @@
|
|
|
int i;
|
|
|
int howbad = 0;
|
|
|
int height = 0;
|
|
|
@@ -983,7 +982,7 @@ Index: textbox.c
|
|
|
|
|
|
if (resultPtr) {
|
|
|
/* XXX I think this will work */
|
|
|
-@@ -172,7 +176,9 @@
|
|
|
+@@ -181,7 +185,9 @@
|
|
|
*result = '\0';
|
|
|
}
|
|
|
|
|
|
@@ -993,7 +992,7 @@ Index: textbox.c
|
|
|
while (*text) {
|
|
|
end = strchr(text, '\n');
|
|
|
if (!end)
|
|
|
-@@ -204,6 +210,7 @@
|
|
|
+@@ -213,6 +219,7 @@
|
|
|
chptr = text;
|
|
|
w2 = 0;
|
|
|
for (i = 0; i < width - 1;) {
|
|
|
@@ -1001,7 +1000,7 @@ Index: textbox.c
|
|
|
if ((x=mbrtowc(&tmp,chptr,end-chptr,&ps))<=0)
|
|
|
break;
|
|
|
if (spc && !iswspace(tmp))
|
|
|
-@@ -217,6 +224,17 @@
|
|
|
+@@ -226,6 +233,17 @@
|
|
|
x = wcwidth(tmp);
|
|
|
if (x>0)
|
|
|
i+=x;
|
|
|
@@ -1019,7 +1018,7 @@ Index: textbox.c
|
|
|
}
|
|
|
howbad += width - w2 + 1;
|
|
|
#ifdef DEBUG_WRAP
|
|
|
-@@ -231,9 +249,14 @@
|
|
|
+@@ -240,9 +258,14 @@
|
|
|
|
|
|
text = chptr;
|
|
|
while (1) {
|
|
|
@@ -1035,8 +1034,8 @@ Index: textbox.c
|
|
|
}
|
|
|
}
|
|
|
Index: tutorial.txt
|
|
|
---- /dev/null 2005-11-27 09:51:01 +0100
|
|
|
-+++ tutorial.txt 2005-11-27 09:51:14 +0100
|
|
|
+--- /dev/null 2006-10-27 19:30:04 +0200
|
|
|
++++ tutorial.txt 2006-10-27 19:28:08 +0200
|
|
|
@@ -0,0 +1,1079 @@
|
|
|
+
|
|
|
+Writing Programs Using newtErik Troan, <ewt@redhat.com>
|
|
|
@@ -2117,526 +2116,9 @@ Index: tutorial.txt
|
|
|
+void newtFormSetBackground(newtComponent co, int color);
|
|
|
+void newtFormSetHeight(newtComponent co, int height);
|
|
|
+void newtFormSetWidth(newtComponent co, int width);
|
|
|
-Index: whiptail.1
|
|
|
---- whiptail.1.orig 2005-09-21 11:32:04 +0200
|
|
|
-+++ whiptail.1 2005-11-27 09:51:14 +0100
|
|
|
-@@ -1,3 +1,513 @@
|
|
|
-+.TH WHIPTAIL 1 "10 January 1998" "Whiptail Version 0.21"
|
|
|
-+.SH NAME
|
|
|
-+whiptail \- display dialog boxes from shell scripts
|
|
|
-+.SH SYNOPSIS
|
|
|
-+.B whiptail
|
|
|
-+[
|
|
|
-+.B \-\-title
|
|
|
-+.I title
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-backtitle
|
|
|
-+.I backtitle
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-clear
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-defaultno
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-fb
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-nocancel
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-noitem
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-separate\-output
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-scrolltext
|
|
|
-+]
|
|
|
-+.B box-options
|
|
|
-+.SH DESCRIPTION
|
|
|
-+.B whiptail
|
|
|
-+is a program that will let you to present a variety of questions or
|
|
|
-+display messages using dialog boxes from a shell script. Currently,
|
|
|
-+these types of dialog boxes are implemented:
|
|
|
-+.LP
|
|
|
-+.BR yes/no " box," " menu" " box," " input" " box,"
|
|
|
-+.BR message " box," " text" " box," " info" " box,"
|
|
|
-+.BR checklist " box," " radiolist" " box" " gauge" " box, and"
|
|
|
-+.BR password " box."
|
|
|
-+.SH OPTIONS
|
|
|
-+.TP
|
|
|
-+.B \-\-clear
|
|
|
-+The screen will be cleared to the
|
|
|
-+.BR "screen attribute" " on exit."
|
|
|
-+This doesn't work in an xterm (and descendants) if alternate screen
|
|
|
-+switching is enabled, because in that case slang writes to (and clears)
|
|
|
-+an alternate screen.
|
|
|
-+.TP
|
|
|
-+.B \-\-defaultno
|
|
|
-+The dialog box will open with the cursor over the
|
|
|
-+.BR No " button."
|
|
|
-+.TP
|
|
|
-+.B \-\-fb
|
|
|
-+Use full buttons. (By default,
|
|
|
-+.B whiptail
|
|
|
-+uses compact buttons).
|
|
|
-+.TP
|
|
|
-+.B \-\-nocancel
|
|
|
-+The dialog box won't have a
|
|
|
-+.BR Cancel " button".
|
|
|
-+.TP
|
|
|
-+.B \-\-noitem
|
|
|
-+The menu, checklist and radiolist widgets will display tags only, not
|
|
|
-+the item strings.
|
|
|
-+.TP
|
|
|
-+.BI \-\-separate\-output
|
|
|
-+For checklist widgets, output result one line at a time, with no
|
|
|
-+quoting. This facilitates parsing by another program.
|
|
|
-+.TP
|
|
|
-+.BI \-\-title " title"
|
|
|
-+Specifies a
|
|
|
-+.I title
|
|
|
-+string to be displayed at the top of the dialog box.
|
|
|
-+.TP
|
|
|
-+.BI \-\-backtitle " backtitle"
|
|
|
-+Specifies a
|
|
|
-+.I backtitle
|
|
|
-+string to be displayed on the backdrop, at the top of the screen.
|
|
|
-+.TP
|
|
|
-+.BI \-\-scrolltext
|
|
|
-+Force the display of a vertical scrollbar.
|
|
|
-+.TP
|
|
|
-+.B Box Options
|
|
|
-+.TP
|
|
|
-+.BI \-\-yesno " text height width"
|
|
|
-+.RB A " yes/no" " dialog box of size"
|
|
|
-+.I height
|
|
|
-+rows by
|
|
|
-+.I width
|
|
|
-+columns will be displayed. The string specified by
|
|
|
-+.I text
|
|
|
-+is displayed inside the dialog box. If this string is too long to be fitted
|
|
|
-+in one line, it will be automatically divided into multiple lines at
|
|
|
-+appropriate places. The
|
|
|
-+.I text
|
|
|
-+string may also contain the sub-string
|
|
|
-+.I
|
|
|
-+"\en"
|
|
|
-+or newline characters
|
|
|
-+.I `\en'
|
|
|
-+to control line breaking explicitly. This dialog box is useful for
|
|
|
-+asking questions that require the user to answer either yes or no.
|
|
|
-+.RB "The dialog box has a" " Yes" " button and a " No
|
|
|
-+button, in which the user can switch between by pressing the
|
|
|
-+.IR TAB " key."
|
|
|
-+.TP
|
|
|
-+.BI \-\-msgbox " text height width"
|
|
|
-+.RB A " message" " box is very similar to a" " yes/no" " box."
|
|
|
-+The only difference between a
|
|
|
-+.B message
|
|
|
-+box and a
|
|
|
-+.B yes/no
|
|
|
-+box is that a
|
|
|
-+.B message
|
|
|
-+box has only a single
|
|
|
-+.B OK
|
|
|
-+button. You can use this dialog box to display any message you like.
|
|
|
-+After reading the message, the user can press the
|
|
|
-+.I ENTER
|
|
|
-+key so that
|
|
|
-+.B whiptail
|
|
|
-+will exit and the calling shell script can continue its operation.
|
|
|
-+.TP
|
|
|
-+.BI \-\-infobox " text height width"
|
|
|
-+.RB An " info" " box is basically a" " message" " box."
|
|
|
-+However, in this case,
|
|
|
-+.B whiptail
|
|
|
-+will exit immediately after displaying the message to the user. The
|
|
|
-+screen is not cleared when
|
|
|
-+.B whiptail
|
|
|
-+exits, so that the message will remain on the screen until the calling
|
|
|
-+shell script clears it later. This is useful when you want to inform
|
|
|
-+the user that some operations are carrying on that may require some
|
|
|
-+time to finish.
|
|
|
-+.TP
|
|
|
-+.BI \-\-inputbox " text height width [init]"
|
|
|
-+.RB "An " input " box is useful when you want to ask questions that"
|
|
|
-+require the user to input a string as the answer. If init is supplied
|
|
|
-+it is used to initialize the input string.
|
|
|
-+When inputing the
|
|
|
-+string, the
|
|
|
-+.I BACKSPACE
|
|
|
-+key can be used to correct typing errors. If the input string is longer than
|
|
|
-+can be fitted in the dialog box, the input field will be scrolled. On exit,
|
|
|
-+the input string will be printed on
|
|
|
-+.IR stderr "."
|
|
|
-+.TP
|
|
|
-+.BI \-\-passwordbox " text height width [init]"
|
|
|
-+.RB "A " password " box is similar to an input box, except the text the user"
|
|
|
-+enters is not displayed. This is useful when prompting for passwords or other
|
|
|
-+sensative information. Be aware that if anything is passed in "init", it
|
|
|
-+will be visible in the system's process table to casual snoopers. Also, it
|
|
|
-+is very confusing to the user to provide them with a default password they
|
|
|
-+cannot see. For these reasons, using "init" is highly discouraged.
|
|
|
-+.TP
|
|
|
-+.BI \-\-textbox " file height width"
|
|
|
-+.RB A " text" " box lets you display the contents of a text file in a"
|
|
|
-+dialog box. It is like a simple text file viewer. The user can move
|
|
|
-+through the file by using the
|
|
|
-+.IR UP/DOWN ", " PGUP/PGDN
|
|
|
-+.RI and " HOME/END" " keys available on most keyboards."
|
|
|
-+If the lines are too long to be displayed in the box, the
|
|
|
-+.I LEFT/RIGHT
|
|
|
-+keys can be used to scroll the text region horizontally. For more
|
|
|
-+convenience, forward and backward searching functions are also provided.
|
|
|
-+.IP "\fB\-\-menu \fItext height width menu-height \fR[ \fItag item \fR] \fI..."
|
|
|
-+As its name suggests, a
|
|
|
-+.B menu
|
|
|
-+box is a dialog box that can be used to present a list of choices in
|
|
|
-+the form of a menu for the user to choose. Each menu entry consists of a
|
|
|
-+.IR tag " string and an " item " string. The"
|
|
|
-+.I tag
|
|
|
-+gives the entry a name to distinguish it from the other entries in the
|
|
|
-+menu. The
|
|
|
-+.I item
|
|
|
-+is a short description of the option that the entry represents. The
|
|
|
-+user can move between the menu entries by pressing the
|
|
|
-+.I UP/DOWN
|
|
|
-+keys, the first letter of the
|
|
|
-+.I tag
|
|
|
-+as a hot-key, or the number keys
|
|
|
-+.IR 1-9 ". There are"
|
|
|
-+.I menu-height
|
|
|
-+entries displayed in the menu at one time, but the menu will be
|
|
|
-+scrolled if there are more entries than that. When
|
|
|
-+.B whiptail
|
|
|
-+exits, the
|
|
|
-+.I tag
|
|
|
-+of the chosen menu entry will be printed on
|
|
|
-+.IR stderr "."
|
|
|
-+.IP "\fB\-\-checklist \fItext height width list-height \fR[ \fItag item status \fR] \fI..."
|
|
|
-+.RB "A " checklist " box is similar to a " menu " box in that there are"
|
|
|
-+multiple entries presented in the form of a menu. Instead of choosing
|
|
|
-+one entry among the entries, each entry can be turned on or off by the
|
|
|
-+user. The initial on/off state of each entry is specified by
|
|
|
-+.IR status "."
|
|
|
-+On exit, a list of the
|
|
|
-+.I tag
|
|
|
-+strings of those entries that are turned on will be printed on
|
|
|
-+.IR stderr "."
|
|
|
-+
|
|
|
-+.IP "\fB\-\-radiolist \fItext height width list-height \fR [ \fItag item status \fR] \fI..."
|
|
|
-+.RB "A " radiolist " box is similar to a " menu " box. The only difference is"
|
|
|
-+that you can indicate which entry is currently selected, by setting its
|
|
|
-+.IR status " to " on "."
|
|
|
-+
|
|
|
-+.IP "\fB\-\-gauge \fItext height width percent\fR"
|
|
|
-+.RB "A " gauge " box displays a meter along the bottom of the box.
|
|
|
-+The meter indicates the percentage. New percentages are read from
|
|
|
-+standard input, one integer per line. The meter is updated
|
|
|
-+to reflect each new percentage. If stdin is XXX, then subsequent
|
|
|
-+lines up to another XXX are used for a new prompt.
|
|
|
-+The gauge exits when EOF is reached on stdin.
|
|
|
-+
|
|
|
-+.SH DIAGNOSTICS
|
|
|
-+Exit status is 0 if
|
|
|
-+.BR whiptail " is exited by pressing the " Yes " or " OK
|
|
|
-+button, and 1 if the
|
|
|
-+.BR No " or " Cancel
|
|
|
-+button is pressed. Otherwise, if errors occur inside
|
|
|
-+.B whiptail
|
|
|
-+or
|
|
|
-+.B whiptail
|
|
|
-+is exited by pressing the
|
|
|
-+.I ESC
|
|
|
-+key, the exit status is -1.
|
|
|
-+.SH AUTHOR
|
|
|
-+Based on the man page for dialog(1) by:
|
|
|
-+.LP
|
|
|
-+Savio Lam (lam836@cs.cuhk.hk) - version 0.3
|
|
|
-+.LP
|
|
|
-+Stuart Herbert (S.Herbert@sheffield.ac.uk) - patch for version 0.4
|
|
|
-+.LP
|
|
|
-+Modifications for whiptail by:
|
|
|
-+.LP
|
|
|
-+Enrique Zanardi (ezanard@debian.org)
|
|
|
-+.TH WHIPTAIL 1 "20 September 2004" "Whiptail Version 0.51.6"
|
|
|
-+.SH NAME
|
|
|
-+whiptail \- display dialog boxes from shell scripts
|
|
|
-+.SH SYNOPSIS
|
|
|
-+.B whiptail
|
|
|
-+[
|
|
|
-+.B \-\-title
|
|
|
-+.I title
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-backtitle
|
|
|
-+.I backtitle
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-clear
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-default\-item
|
|
|
-+.I string
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-defaultno
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-fb
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-nocancel
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-noitem
|
|
|
-+[
|
|
|
-+]
|
|
|
-+.B \-\-output\-fd
|
|
|
-+.I fd
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-separate\-output
|
|
|
-+]
|
|
|
-+[
|
|
|
-+.B \-\-scrolltext
|
|
|
-+]
|
|
|
-+.B box-options
|
|
|
-+.SH DESCRIPTION
|
|
|
-+.B whiptail
|
|
|
-+is a program that will let you present a variety of questions or
|
|
|
-+display messages using dialog boxes from a shell script. Currently,
|
|
|
-+these types of dialog boxes are implemented:
|
|
|
-+.LP
|
|
|
-+.BR yes/no " box," " menu" " box," " input" " box,"
|
|
|
-+.BR message " box," " text" " box," " info" " box,"
|
|
|
-+.BR checklist " box," " radiolist" " box" " gauge" " box, and"
|
|
|
-+.BR password " box."
|
|
|
-+.SH OPTIONS
|
|
|
-+.TP
|
|
|
-+.B \-\-clear
|
|
|
-+The screen will be cleared to the
|
|
|
-+.BR "screen attribute" " on exit."
|
|
|
-+This doesn't work in an xterm (and descendants) if alternate screen
|
|
|
-+switching is enabled, because in that case slang writes to (and clears)
|
|
|
-+an alternate screen.
|
|
|
-+.TP
|
|
|
-+.B \-\-defaultno
|
|
|
-+The dialog box will open with the cursor over the
|
|
|
-+.BR No " button."
|
|
|
-+.TP
|
|
|
-+.B \-\-default\-item "string"
|
|
|
-+Set the default item in a menu box.
|
|
|
-+Normally the first item in the box is the default.
|
|
|
-+.TP
|
|
|
-+.B \-\-fb
|
|
|
-+Use full buttons. (By default,
|
|
|
-+.B whiptail
|
|
|
-+uses compact buttons).
|
|
|
-+.TP
|
|
|
-+.B \-\-nocancel
|
|
|
-+The dialog box won't have a
|
|
|
-+.BR Cancel " button".
|
|
|
-+.TP
|
|
|
-+.B \-\-noitem
|
|
|
-+The menu, checklist and radiolist widgets will display tags only, not
|
|
|
-+the item strings.
|
|
|
-+.TP
|
|
|
-+.BI \-\-separate\-output
|
|
|
-+For checklist widgets, output result one line at a time, with no
|
|
|
-+quoting. This facilitates parsing by another program.
|
|
|
-+.TP
|
|
|
-+.BI \-\-output\-fd " fd"
|
|
|
-+Direct output to the given file descriptor. Most
|
|
|
-+.B whiptail
|
|
|
-+scripts
|
|
|
-+write to standard error, but error messages may also be
|
|
|
-+written there, depending on your script.
|
|
|
-+.TP
|
|
|
-+.BI \-\-title " title"
|
|
|
-+Specifies a
|
|
|
-+.I title
|
|
|
-+string to be displayed at the top of the dialog box.
|
|
|
-+.TP
|
|
|
-+.BI \-\-backtitle " backtitle"
|
|
|
-+Specifies a
|
|
|
-+.I backtitle
|
|
|
-+string to be displayed on the backdrop, at the top of the screen.
|
|
|
-+.TP
|
|
|
-+.BI \-\-scrolltext
|
|
|
-+Force the display of a vertical scrollbar.
|
|
|
-+.TP
|
|
|
-+.B Box Options
|
|
|
-+.TP
|
|
|
-+.BI \-\-yesno " text height width"
|
|
|
-+.RB A " yes/no" " dialog box of size"
|
|
|
-+.I height
|
|
|
-+rows by
|
|
|
-+.I width
|
|
|
-+columns will be displayed. The string specified by
|
|
|
-+.I text
|
|
|
-+is displayed inside the dialog box. If this string is too long to be fit
|
|
|
-+in one line, it will be automatically divided into multiple lines at
|
|
|
-+appropriate places. The
|
|
|
-+.I text
|
|
|
-+string may also contain the sub-string
|
|
|
-+.I
|
|
|
-+"\en"
|
|
|
-+or newline characters
|
|
|
-+.I `\en'
|
|
|
-+to control line breaking explicitly. This dialog box is useful for
|
|
|
-+asking questions that require the user to answer either yes or no.
|
|
|
-+.RB "The dialog box has a" " Yes" " button and a " No
|
|
|
-+button, in which the user can switch between by pressing the
|
|
|
-+.IR TAB " key."
|
|
|
-+.TP
|
|
|
-+.BI \-\-msgbox " text height width"
|
|
|
-+.RB A " message" " box is very similar to a" " yes/no" " box."
|
|
|
-+The only difference between a
|
|
|
-+.B message
|
|
|
-+box and a
|
|
|
-+.B yes/no
|
|
|
-+box is that a
|
|
|
-+.B message
|
|
|
-+box has only a single
|
|
|
-+.B OK
|
|
|
-+button. You can use this dialog box to display any message you like.
|
|
|
-+After reading the message, the user can press the
|
|
|
-+.I ENTER
|
|
|
-+key so that
|
|
|
-+.B whiptail
|
|
|
-+will exit and the calling shell script can continue its operation.
|
|
|
-+.TP
|
|
|
-+.BI \-\-infobox " text height width"
|
|
|
-+.RB An " info" " box is basically a" " message" " box."
|
|
|
-+However, in this case,
|
|
|
-+.B whiptail
|
|
|
-+will exit immediately after displaying the message to the user. The
|
|
|
-+screen is not cleared when
|
|
|
-+.B whiptail
|
|
|
-+exits, so that the message will remain on the screen until the calling
|
|
|
-+shell script clears it later. This is useful when you want to inform
|
|
|
-+the user that some operations are carrying on that may require some
|
|
|
-+time to finish.
|
|
|
-+.TP
|
|
|
-+.BI \-\-inputbox " text height width [init]"
|
|
|
-+.RB "An " input " box is useful when you want to ask questions that"
|
|
|
-+require the user to input a string as the answer. If init is supplied
|
|
|
-+it is used to initialize the input string.
|
|
|
-+When inputing the
|
|
|
-+string, the
|
|
|
-+.I BACKSPACE
|
|
|
-+key can be used to correct typing errors. If the input string is longer than
|
|
|
-+the width of the dialog box, the input field will be scrolled. On exit,
|
|
|
-+the input string will be printed on
|
|
|
-+.IR stderr "."
|
|
|
-+.TP
|
|
|
-+.BI \-\-passwordbox " text height width [init]"
|
|
|
-+.RB "A " password " box is similar to an input box, except the text the user"
|
|
|
-+enters is not displayed. This is useful when prompting for passwords or other
|
|
|
-+sensitive information. Be aware that if anything is passed in "init", it
|
|
|
-+will be visible in the system's process table to casual snoopers. Also, it
|
|
|
-+is very confusing to the user to provide them with a default password they
|
|
|
-+cannot see. For these reasons, using "init" is highly discouraged.
|
|
|
-+.TP
|
|
|
-+.BI \-\-textbox " file height width"
|
|
|
-+.RB A " text" " box lets you display the contents of a text file in a"
|
|
|
-+dialog box. It is like a simple text file viewer. The user can move
|
|
|
-+through the file by using the
|
|
|
-+.IR UP/DOWN ", " PGUP/PGDN
|
|
|
-+.RI and " HOME/END" " keys available on most keyboards."
|
|
|
-+If the lines are too long to be displayed in the box, the
|
|
|
-+.I LEFT/RIGHT
|
|
|
-+keys can be used to scroll the text region horizontally. For more
|
|
|
-+convenience, forward and backward searching functions are also provided.
|
|
|
-+.IP "\fB\-\-menu \fItext height width menu-height \fR[ \fItag item \fR] \fI..."
|
|
|
-+As its name suggests, a
|
|
|
-+.B menu
|
|
|
-+box is a dialog box that can be used to present a list of choices in
|
|
|
-+the form of a menu for the user to choose. Each menu entry consists of a
|
|
|
-+.IR tag " string and an " item " string. The"
|
|
|
-+.I tag
|
|
|
-+gives the entry a name to distinguish it from the other entries in the
|
|
|
-+menu. The
|
|
|
-+.I item
|
|
|
-+is a short description of the option that the entry represents. The
|
|
|
-+user can move between the menu entries by pressing the
|
|
|
-+.I UP/DOWN
|
|
|
-+keys, the first letter of the
|
|
|
-+.I tag
|
|
|
-+as a hot-key. There are
|
|
|
-+.I menu-height
|
|
|
-+entries displayed in the menu at one time, but the menu will be
|
|
|
-+scrolled if there are more entries than that. When
|
|
|
-+.B whiptail
|
|
|
-+exits, the
|
|
|
-+.I tag
|
|
|
-+of the chosen menu entry will be printed on
|
|
|
-+.IR stderr "."
|
|
|
-+.IP "\fB\-\-checklist \fItext height width list-height \fR[ \fItag item status \fR] \fI..."
|
|
|
-+.RB "A " checklist " box is similar to a " menu " box in that there are"
|
|
|
-+multiple entries presented in the form of a menu.
|
|
|
-+You can select and deselect items using the SPACE key.
|
|
|
-+The initial on/off state of each entry is specified by
|
|
|
-+.IR status "."
|
|
|
-+On exit, a list of the
|
|
|
-+.I tag
|
|
|
-+strings of those entries that are turned on will be printed on
|
|
|
-+.IR stderr "."
|
|
|
-+
|
|
|
-+.IP "\fB\-\-radiolist \fItext height width list-height \fR [ \fItag item status \fR] \fI..."
|
|
|
-+.RB "A " radiolist " box is similar to a " menu " box. The only difference is"
|
|
|
-+that you can indicate which entry is currently selected, by setting its
|
|
|
-+.IR status " to " on "."
|
|
|
-+
|
|
|
-+.IP "\fB\-\-gauge \fItext height width percent\fR"
|
|
|
-+.RB "A " gauge " box displays a meter along the bottom of the box.
|
|
|
-+The meter indicates a percentage. New percentages are read from
|
|
|
-+standard input, one integer per line. The meter is updated
|
|
|
-+to reflect each new percentage. If stdin is XXX, then subsequent
|
|
|
-+lines up to another XXX are used for a new prompt.
|
|
|
-+The gauge exits when EOF is reached on stdin.
|
|
|
-+
|
|
|
-+.SH NOTES
|
|
|
-+whiptail interprets arguments starting with a dash "\-" as being arguments.
|
|
|
-+To avoid this, and start some text in, for example, a menubox item, with a
|
|
|
-+dash, whiptail honours the getopt convention of accepting the special
|
|
|
-+argument "\-\-" which means that all following arguments with dashes are to
|
|
|
-+be treated verbatim and not parsed as options.
|
|
|
-+.SH DIAGNOSTICS
|
|
|
-+Exit status is 0 if
|
|
|
-+.BR whiptail " is exited by pressing the " Yes " or " OK
|
|
|
-+button, and 1 if the
|
|
|
-+.BR No " or " Cancel
|
|
|
-+button is pressed. Otherwise, if errors occur inside
|
|
|
-+.B whiptail
|
|
|
-+or
|
|
|
-+.B whiptail
|
|
|
-+is exited by pressing the
|
|
|
-+.I ESC
|
|
|
-+key, the exit status is -1.
|
|
|
-+.SH AUTHOR
|
|
|
-+Based on the man page for dialog(1) by:
|
|
|
-+.LP
|
|
|
-+Savio Lam (lam836@cs.cuhk.hk) - version 0.3
|
|
|
-+.LP
|
|
|
-+Stuart Herbert (S.Herbert@sheffield.ac.uk) - patch for version 0.4
|
|
|
-+.LP
|
|
|
-+Modifications for whiptail by:
|
|
|
-+.LP
|
|
|
-+Enrique Zanardi (ezanard@debian.org)
|
|
|
-+.LP
|
|
|
-+Alastair McKinstry (mckinstry@debian.org)
|
|
|
- .TH WHIPTAIL 1 "20 September 2004" "Whiptail Version 0.51.6"
|
|
|
- .SH NAME
|
|
|
- whiptail \- display dialog boxes from shell scripts
|
|
|
Index: whiptail.c
|
|
|
---- whiptail.c.orig 2005-09-21 11:32:03 +0200
|
|
|
-+++ whiptail.c 2005-11-27 09:51:14 +0100
|
|
|
+--- whiptail.c.orig 2006-10-12 16:31:16 +0200
|
|
|
++++ whiptail.c 2006-10-27 19:28:08 +0200
|
|
|
@@ -8,6 +8,7 @@
|
|
|
#include <unistd.h>
|
|
|
#include <wchar.h>
|