Be more careful about selecting a PAGER.

Improve the question asked when the PAGER is invalid.

Submitted by: Doug Barton <DougB@gorean.org>
This commit is contained in:
Brian Somers 2000-08-09 20:36:15 +00:00
parent fc35953a16
commit 6c2ccd0a61
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=64467

View File

@ -252,15 +252,14 @@ echo ''
#
case "${DONT_CHECK_PAGER}" in
'')
while [ "${PAGER}" != "more" -a -n "${PAGER}" -a ! -x "${PAGER%% *}" ]; do
while ! type "${PAGER%% *}" >/dev/null && [ -n "${PAGER}" ]; do
echo " *** Your PAGER environment variable specifies '${PAGER}', but"
echo " I cannot execute it. In general it is good practice to"
echo " specify the full path for environment variables like"
echo " PAGER and EDITOR. Meanwhile, what would you like to do?"
echo " due to the limited PATH that I use for security reasons,"
echo " I cannot execute it. So, what would you like to do?"
echo ''
echo " Use 'e' to exit mergemaster and fix your PAGER variable"
if [ -x /usr/local/bin/less ]; then
echo " Use 'l' to set PAGER to /usr/local/bin/less for this run"
if [ -x /usr/bin/less -o -x /usr/local/bin/less ]; then
echo " Use 'l' to set PAGER to 'less' for this run"
fi
echo " Use 'm' to use plain old 'more' as your PAGER for this run"
echo ''
@ -272,8 +271,16 @@ case "${DONT_CHECK_PAGER}" in
exit 0
;;
[lL])
if [ -x /usr/local/bin/less ]; then
if [ -x /usr/bin/less ]; then
PAGER=/usr/bin/less
elif [ -x /usr/local/bin/less ]; then
PAGER=/usr/local/bin/less
else
echo ''
echo " *** Fatal Error:"
echo " You asked to use 'less' as your pager, but I can't"
echo " find it in /usr/bin or /usr/local/bin"
exit 1
fi
;;
[mM]|'')