diff options
author | Jakob Kaivo <jkk@ung.org> | 2022-03-28 17:00:30 -0400 |
---|---|---|
committer | Jakob Kaivo <jkk@ung.org> | 2022-03-28 17:00:30 -0400 |
commit | 4662dbf4240757189a6619cc2b1d7110b0b7ded8 (patch) | |
tree | 9afe330c163f44806c6666384066dab170b11021 /miralib/menudriver.sh | |
parent | 0c061784519c069853ba9e9794fc4ec41d0668f9 (diff) |
Diffstat (limited to 'miralib/menudriver.sh')
-rwxr-xr-x | miralib/menudriver.sh | 102 |
1 files changed, 0 insertions, 102 deletions
diff --git a/miralib/menudriver.sh b/miralib/menudriver.sh deleted file mode 100755 index 81d4362..0000000 --- a/miralib/menudriver.sh +++ /dev/null @@ -1,102 +0,0 @@ -#! /bin/sh -# menu driver - Copyright Research Software Ltd 1985, 2006 -# this version modified to ignore execute permissions of files - -# see below for explanation of these variables, which we -# set to defaults if not present in the user's environment - -test "$MENUVIEWER" || MENUVIEWER=cat #ALTERNATIVE: more -if test ! "$VIEWER" -then -# choose one of these by removing the '#' in column one - VIEWER='less -EX'; RETURNTOMENU=NO -# VIEWER=less, RETURNTOMENU=YES -# VIEWER='more -d'; RETURNTOMENU=NO -fi - -if test -z "`echo -n`" #use flag -n to suppress newline, if working -then sansnl='-n' -fi - -cd "$1" -top="`pwd`" -while test -f contents -do - if test '' = "$n" - then echo [H[J #clear - test ."$invalid" = . || echo invalid option "$invalid" - invalid="" - $MENUVIEWER contents; - echo $sansnl ::please type selection number \(or q to quit\): - read n - fi - if test '.' = "$n" -a "$last" - then n=$last - elif test '+' = "$n" -a "$last" -a "$last" != . - then n=`expr $last + 1` - elif test '-' = "$n" -a "$last" -a "$last" != . - then n=`expr $last - 1` - fi - if test '' != "$n" - then if test -d "$n" - then if test -f "$n/contents" - then cd "$n"; oldlasts=$n:$oldlasts; last="."; - else invalid="$n"; fi - n="" - elif test -f "$n" - then if test '99' = "$n" #special case, 99 is an executable - then echo [H[J; "./$n" - else echo [H[J #clear - $VIEWER "$n" - if test "$RETURNTOMENU" = YES - then last=$n; n=""; continue #next iteration of while-loop - fi - fi - echo $sansnl ::next selection \(return to go back to menu, q to quit\): - last=$n; read n - elif test ."$n" = .q -o ."$n" = ./q - then exit - elif test '???' = "$n" # ??? interrogates display settings - then echo " MENUVIEWER='$MENUVIEWER'" - echo " VIEWER='$VIEWER', RETURNTOMENU='$RETURNTOMENU'" - echo these can be changed by setting environment variables \ -of the same names - n="" - echo $sansnl '[Hit return to continue]' - read lose - else case $n in - !*) if test ".$n" = '.!!' -o ".$n" = '.!' - then if test "$lastbang" = '' - then invalid="$n"; n=""; continue - else echo !"$lastbang" - fi - else lastbang=`expr "$n" : '!\(.*\)'` - fi - $lastbang - echo $sansnl '[Hit return to continue]' - n="" - read lose ;; - *) invalid="$n"; n="" ;; - esac - fi - else test "$oldlasts" || exit #we are at the root of the tree - cd .. - last=`expr $oldlasts : '\([^:]*\)'` - oldlasts=`expr $oldlasts : '[^:]*:\(.*\)'` - fi -done -exit -# Oct 2003 modified for Peter Bartke to overcome problem on UWIN -# no test -x, instead all files displayed except 99 which is executed -# May 2006 use echo $sansnl because echo -n not portable - -# Explanation of variables -# -# MENUVIEWER is the program used to display contents pages -# -# VIEWER is the program used to display individual sections -# -# RETURNTOMENU=YES prevents another prompt being given after displaying -# each section, causing instead an immediate return to contents page. It -# should be `YES' if VIEWER is a program that pauses for input at end of -# file, `NO' if VIEWER is a program that quits silently at end of file. |