"${PORTAGE_CONFIGROOT}"etc/etc-update.conf)
}
+cmd_var_is_valid() {
+ # return true if the first whitespace-separated token contained
+ # in "${1}" is an executable file, false otherwise
+ [[ -x $(type -P ${1%%[[:space:]]*}) ]]
+}
+
diff_command() {
local cmd=${diff_command//%file1/$1}
${cmd//%file2/$2}
merge_command=$(get_config merge_command)
declare -i mode=$(get_config mode)
[[ -z ${mode} ]] && mode=0
-[[ -z ${pager} ]] && pager="cat"
+if ! cmd_var_is_valid "${pager}" ; then
+ pager=${PAGER}
+ cmd_var_is_valid "${pager}" || pager=cat
+fi
if [ "${using_editor}" == 0 ]; then
# Sanity check to make sure diff exists and works
# arguments used whenever cp is called
cp_opts="-i"
-# pager for use with diff commands
-pager="less"
-#pager=""
+# set the pager for use with diff commands (this will
+# cause the PAGER environment variable to be ignored)
+#pager="less"
# For emacs-users (see NOTE_2)
# diff_command="eval emacs -nw --eval=\'\(ediff\ \"%file1\"\ \"%file2\"\)\'"
# pager:
#
# Examples of pager usage:
-# pager="" # don't use a pager
-# pager="less -E" # less
-# pager="more" # more
+# pager="cat" # don't use a pager
+# pager="less -E" # less
+# pager="more" # more
#
#
# diff_command: