summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xusr.sbin/bsdconfig/startup/rcadd14
-rw-r--r--usr.sbin/bsdconfig/startup/share/rcconf.subr6
2 files changed, 10 insertions, 10 deletions
diff --git a/usr.sbin/bsdconfig/startup/rcadd b/usr.sbin/bsdconfig/startup/rcadd
index dd3aeb2..eb4c3d9 100755
--- a/usr.sbin/bsdconfig/startup/rcadd
+++ b/usr.sbin/bsdconfig/startup/rcadd
@@ -120,27 +120,25 @@ while :; do
case "$mtag" in
1) # Add From List
- # Loop for easy return
+ # Loop to allow adding multiple variables quickly
+ defaultitem=
while :; do
- f_dialog_input_rclist || break
+ f_dialog_input_rclist "$defaultitem" || f_die
f_dialog_menutag_fetch mtag
+ defaultitem="$mtag"
case "$mtag" in
"X $msg_exit" ) break ;;
*) # Anything else is a directive
rcvar="${mtag# }"
$BSDCFG_LIBE/$APP_DIR/rcedit \
- ${USE_XDIALOG:+-X} \
- "$rcvar" || continue
+ ${USE_XDIALOG:+-X} "$rcvar"
esac
- break
done
- [ $retval -eq 0 ] || continue
;;
2) # Add Custom
f_dialog_input_rcvar || continue
- $BSDCFG_LIBE/$APP_DIR/rcedit ${USE_XDIALOG:+-X} "$rcvar" ||
- continue
+ $BSDCFG_LIBE/$APP_DIR/rcedit ${USE_XDIALOG:+-X} "$rcvar"
;;
esac
done
diff --git a/usr.sbin/bsdconfig/startup/share/rcconf.subr b/usr.sbin/bsdconfig/startup/share/rcconf.subr
index 72d94cb..bb8237f 100644
--- a/usr.sbin/bsdconfig/startup/share/rcconf.subr
+++ b/usr.sbin/bsdconfig/startup/share/rcconf.subr
@@ -365,12 +365,12 @@ f_dialog_input_view_details()
esac
}
-# f_dialog_input_rclist
+# f_dialog_input_rclist [$default]
#
# Presents a menu of rc.conf(5) defaults (with, or without descriptions). This
# function should be treated like a call to dialog(1) (the exit status should
# be captured and f_dialog_menutag_fetch() should be used to get the user's
-# response).
+# response). Optionally if present and non-null, highlight $default rcvar.
#
f_dialog_input_rclist()
{
@@ -378,6 +378,7 @@ f_dialog_input_rclist()
local menu_list="
'X $msg_exit' '' ${SHOW_DESC:+'$msg_exit_this_menu'}
" # END-QUOTE
+ local defaultitem="$1"
local hline="$hline_arrows_tab_enter"
if [ ! "$_RCCONF_MAP" ]; then
@@ -434,6 +435,7 @@ f_dialog_input_rclist()
--title \"\$DIALOG_TITLE\" \
--backtitle \"\$DIALOG_BACKTITLE\" \
--hline \"\$hline\" \
+ --default-item \"\$defaultitem\" \
--ok-label \"\$msg_ok\" \
--cancel-label \"\$msg_cancel\" \
${SHOW_DESC:+--item-help} \
OpenPOWER on IntegriCloud