diff options
author | dteske <dteske@FreeBSD.org> | 2013-04-22 05:52:06 +0000 |
---|---|---|
committer | dteske <dteske@FreeBSD.org> | 2013-04-22 05:52:06 +0000 |
commit | 8f385d0e89111ca1716767f7dc0bdffe3225b3d0 (patch) | |
tree | cbdec6b0e95d9d7f693f2585627e66aaf3fa13ff /usr.sbin/bsdconfig/console | |
parent | 2cbbbe9342ffd4b6a5fc07b551f747bfb7d8172c (diff) | |
download | FreeBSD-src-8f385d0e89111ca1716767f7dc0bdffe3225b3d0.zip FreeBSD-src-8f385d0e89111ca1716767f7dc0bdffe3225b3d0.tar.gz |
UI improvements. First, implement --default-item whenever and wherever
possible to save keystrokes. Second, overhaul startup/rcdelete for much
improved performance. Last, but not least, kill-off useage of --clear
and implement --keep-tite in harmony to minimize jarring transitions.
Also, fix local variable names where necessary while we're here with
other minor comment-enhancements/typo-corrections.
Diffstat (limited to 'usr.sbin/bsdconfig/console')
-rwxr-xr-x | usr.sbin/bsdconfig/console/console | 16 | ||||
-rwxr-xr-x | usr.sbin/bsdconfig/console/font | 22 | ||||
-rwxr-xr-x | usr.sbin/bsdconfig/console/keymap | 80 | ||||
-rwxr-xr-x | usr.sbin/bsdconfig/console/repeat | 14 | ||||
-rwxr-xr-x | usr.sbin/bsdconfig/console/saver | 21 | ||||
-rwxr-xr-x | usr.sbin/bsdconfig/console/screenmap | 14 | ||||
-rwxr-xr-x | usr.sbin/bsdconfig/console/ttys | 2 |
7 files changed, 150 insertions, 19 deletions
diff --git a/usr.sbin/bsdconfig/console/console b/usr.sbin/bsdconfig/console/console index 2352559..e2387f5 100755 --- a/usr.sbin/bsdconfig/console/console +++ b/usr.sbin/bsdconfig/console/console @@ -71,16 +71,18 @@ dialog_menu_main() local dialog_menu dialog_menu=$( eval $DIALOG \ - --clear --title \"\$DIALOG_TITLE\" \ - --backtitle \"\$DIALOG_BACKTITLE\" \ - --hline \"\$hline\" \ - --ok-label \"\$msg_ok\" \ - --cancel-label \"\$msg_cancel\" \ - --menu \"\$prompt\" $size \ - $menu_list \ + --title \"\$DIALOG_TITLE\" \ + --backtitle \"\$DIALOG_BACKTITLE\" \ + --hline \"\$hline\" \ + --ok-label \"\$msg_ok\" \ + --cancel-label \"\$msg_cancel\" \ + --default-item \"\$DEFAULTITEM_$$\" \ + --menu \"\$prompt\" $size \ + $menu_list \ 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD ) local retval=$? + setvar DEFAULTITEM_$$ "$dialog_menu" setvar DIALOG_MENU_$$ "$dialog_menu" return $retval } diff --git a/usr.sbin/bsdconfig/console/font b/usr.sbin/bsdconfig/console/font index 763a94c..9363ffd 100755 --- a/usr.sbin/bsdconfig/console/font +++ b/usr.sbin/bsdconfig/console/font @@ -49,7 +49,7 @@ ipgm=$( f_index_menusel_keyword $BSDCFG_LIBE/$APP_DIR/INDEX "$pgm" ) # dialog_menu_main() { - local menu_list size + local menu_list size defaultitem= local hline="$hline_choose_a_font" local prompt="$msg_font_menu_text" @@ -77,13 +77,31 @@ dialog_menu_main() \"\$hline\" \ $menu_list ) + case "$( f_sysrc_get font8x8 )" in + [Nn][Oo]|'') defaultitem="1 $msg_none";; + cp437-8x8) defaultitem="2 $msg_ibm_437";; + cp850-8x8) defaultitem="3 $msg_ibm_850";; + cp865-8x8) defaultitem="4 $msg_ibm_865";; + cp866-8x8) defaultitem="5 $msg_ibm_866";; + cp866u-8x8) defaultitem="6 $msg_ibm_866u";; + cp1251-8x8) defaultitem="7 $msg_ibm_1251";; + iso-8x8) defaultitem="8 $msg_iso_8859_1";; + iso02-8x8) defaultitem="9 $msg_iso_8859_2";; + iso04-8x8) defaultitem="a $msg_iso_8859_4";; + iso07-8x8) defaultitem="b $msg_iso_8859_7";; + iso08-8x8) defaultitem="c $msg_iso_8859_8";; + iso15-8x8) defaultitem="d $msg_iso_8859_15";; + swiss-8x8) defaultitem="e $msg_swiss";; + esac + local dialog_menu dialog_menu=$( eval $DIALOG \ - --clear --title \"\$DIALOG_TITLE\" \ + --title \"\$DIALOG_TITLE\" \ --backtitle \"\$DIALOG_BACKTITLE\" \ --hline \"\$hline\" \ --ok-label \"\$msg_ok\" \ --cancel-label \"\$msg_cancel\" \ + --default-item \"\$defaultitem\" \ --menu \"\$prompt\" $size \ $menu_list \ 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD diff --git a/usr.sbin/bsdconfig/console/keymap b/usr.sbin/bsdconfig/console/keymap index f10b79e..e343db9 100755 --- a/usr.sbin/bsdconfig/console/keymap +++ b/usr.sbin/bsdconfig/console/keymap @@ -77,7 +77,7 @@ KEYMAP_NAMES=" # dialog_menu_main() { - local menu_list size + local menu_list size defaultitem= local hline="$hline_choose_a_keyboard_map" local prompt="$msg_keymap_menu_text" @@ -117,13 +117,89 @@ dialog_menu_main() \"\$hline\" \ $menu_list ) + case "$( f_sysrc_get keymap )" in + be.iso) defaultitem="$msg_belgian";; + br275.cp850) defaultitem="$msg_brazil_cp850";; + br275.iso) defaultitem="$msg_brazil_iso";; + br275.iso.acc) defaultitem="$msg_brazil_iso_accent";; + bg.bds.ctrlcaps) defaultitem="$msg_bulgarian_bds";; + bg.phonetic.ctrlcaps) defaultitem="$msg_bulgarian_phonetic";; + ce.iso2) defaultitem="$msg_central_european_iso";; + hr.iso) defaultitem="$msg_croatian_iso";; + cs.latin2.qwertz) defaultitem="$msg_czech_iso_accent";; + danish.cp865) defaultitem="$msg_danish_cp865";; + danish.iso) defaultitem="$msg_danish_iso";; + estonian.cp850) defaultitem="$msg_estonian_cp850";; + estonian.iso) defaultitem="$msg_estonian_iso";; + estonian.iso15) defaultitem="$msg_estonian_iso_15";; + finnish.cp850) defaultitem="$msg_finnish_cp850";; + finnish.iso) defaultitem="$msg_finnish_iso";; + fr.iso) defaultitem="$msg_french_iso";; + fr.iso.acc) defaultitem="$msg_french_iso_accent";; + fr.macbook.acc) defaultitem="$msg_french_iso_macbook";; + german.cp850) defaultitem="$msg_german_cp850";; + german.iso) defaultitem="$msg_german_iso";; + gr.us101.acc) defaultitem="$msg_greek_101";; + el.iso07) defaultitem="$msg_greek_104";; + gr.elot.acc) defaultitem="$msg_greek_elot";; + hu.iso2.101keys) defaultitem="$msg_hungarian_101";; + hu.iso2.102keys) defaultitem="$msg_hungarian_102";; + icelandic.iso) defaultitem="$msg_icelandic";; + icelandic.iso.acc) defaultitem="$msg_icelandic_accent";; + it.iso) defaultitem="$msg_italian";; + jp.106) defaultitem="$msg_japanese_106";; + latinamerican) defaultitem="$msg_latin_american";; + latinamerican.iso.acc) defaultitem="$msg_latin_american_accent";; + norwegian.iso) defaultitem="$msg_norway_iso";; + pl_PL.ISO8859-2) defaultitem="$msg_polish_iso";; + pt.iso) defaultitem="$msg_portuguese";; + pt.iso.acc) defaultitem="$msg_portuguese_accent";; + ru.koi8-r) defaultitem="$msg_russia_koi8_r";; + sk.iso2) defaultitem="$msg_slovak";; + si.iso) defaultitem="$msg_slovenian";; + spanish.iso) defaultitem="$msg_spanish";; + spanish.iso.acc) defaultitem="$msg_spanish_accent";; + swedish.cp850) defaultitem="$msg_swedish_cp850";; + swedish.iso) defaultitem="$msg_swedish_iso";; + swissfrench.cp850) defaultitem="$msg_swiss_french_cp850";; + swissfrench.iso) defaultitem="$msg_swiss_french_iso";; + swissfrench.iso.acc) defaultitem="$msg_swiss_french_iso_accent";; + swissgerman.cp850) defaultitem="$msg_swiss_german_cp850";; + swissgerman.iso) defaultitem="$msg_swiss_german_iso";; + swissgerman.iso.acc) defaultitem="$msg_swiss_german_iso_accent";; + uk.cp850) defaultitem="$msg_uk_cp850";; + uk.iso) defaultitem="$msg_uk_iso";; + ua.koi8-u) defaultitem="$msg_ukrainian_koi8_u";; + ua.koi8-u.shift.alt) defaultitem="$msg_ukrainian_koi8_u_koi8_r";; + us.pc-ctrl) defaultitem="$msg_usa_capslock_ctrl";; + us.dvorak) defaultitem="$msg_usa_dvorak";; + us.dvorakl) defaultitem="$msg_usa_dvorak_left";; + us.dvorakr) defaultitem="$msg_usa_dvorak_right";; + us.emacs) defaultitem="$msg_usa_emacs";; + us.iso) defaultitem="$msg_usa_iso";; + us.unix) defaultitem="$msg_usa_unix";; + esac + + # The defaultitem may have to be indented to match the menu_list + if [ "$defaultitem" ]; then + ( eval set -- $menu_list + while [ $# -gt 0 ]; do + [ "$defaultitem" = "$1" ] && break + [ " $defaultitem" = "$1" ] && exit 0 + shift 2 # tag/item + done + exit 1 # No modification needed + ) && defaultitem=" $defaultitem" + fi + local dialog_menu dialog_menu=$( eval $DIALOG \ - --clear --title \"\$DIALOG_TITLE\" \ + --title \"\$DIALOG_TITLE\" \ --backtitle \"\$DIALOG_BACKTITLE\" \ --hline \"\$hline\" \ --ok-label \"\$msg_ok\" \ --cancel-label \"\$msg_cancel\" \ + --default-item \"\$defaultitem\" \ --menu \"\$prompt\" $size \ $menu_list \ 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD diff --git a/usr.sbin/bsdconfig/console/repeat b/usr.sbin/bsdconfig/console/repeat index face69e..b426d36 100755 --- a/usr.sbin/bsdconfig/console/repeat +++ b/usr.sbin/bsdconfig/console/repeat @@ -49,15 +49,15 @@ ipgm=$( f_index_menusel_keyword $BSDCFG_LIBE/$APP_DIR/INDEX "$pgm" ) # dialog_menu_main() { - local menu_list size + local menu_list size defaultitem= local hline="$hline_choose_a_keyboard_repeat_rate" local prompt="$msg_repeat_menu_text" menu_list=" + '$msg_default' '$msg_default_desc' '$msg_slow' '$msg_slow_desc' '$msg_normal' '$msg_normal_desc' '$msg_fast' '$msg_fast_desc' - '$msg_default' '$msg_default_desc' " # END-QUOTE size=$( eval f_dialog_menu_size \ @@ -67,13 +67,21 @@ dialog_menu_main() \"\$hline\" \ $menu_list ) + case "$( f_sysrc_get keyrate )" in + slow) defaultitem="$msg_slow";; + normal) defaultitem="$msg_normal";; + fast) defaultitem="$msg_fast";; + [Nn][Oo]|'') defaultitem="$msg_default";; + esac + local dialog_menu dialog_menu=$( eval $DIALOG \ - --clear --title \"\$DIALOG_TITLE\" \ + --title \"\$DIALOG_TITLE\" \ --backtitle \"\$DIALOG_BACKTITLE\" \ --hline \"\$hline\" \ --ok-label \"\$msg_ok\" \ --cancel-label \"\$msg_cancel\" \ + --default-item \"\$defaultitem\" \ --menu \"\$prompt\" $size \ $menu_list \ 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD diff --git a/usr.sbin/bsdconfig/console/saver b/usr.sbin/bsdconfig/console/saver index 1036b20..bea046e 100755 --- a/usr.sbin/bsdconfig/console/saver +++ b/usr.sbin/bsdconfig/console/saver @@ -49,7 +49,7 @@ ipgm=$( f_index_menusel_keyword $BSDCFG_LIBE/$APP_DIR/INDEX "$pgm" ) # dialog_menu_main() { - local menu_list size + local menu_list size defaultitem= local hline="$hline_choose_a_screen_saver" local prompt="$msg_saver_menu_text" @@ -77,13 +77,30 @@ dialog_menu_main() \"\$hline\" \ $menu_list ) + case "$( f_sysrc_get saver )" in + blank) defaultitem="1 $msg_blank" ;; + beastie) defaultitem="2 $msg_beastie";; + daemon) defaultitem="3 $msg_daemon" ;; + dragon) defaultitem="4 $msg_dragon" ;; + fade) defaultitem="5 $msg_fade" ;; + fire) defaultitem="6 $msg_fire" ;; + green) defaultitem="7 $msg_green" ;; + logo) defaultitem="8 $msg_logo" ;; + rain) defaultitem="9 $msg_rain" ;; + snake) defaultitem="a $msg_snake" ;; + star) defaultitem="b $msg_star" ;; + warp) defaultitem="c $msg_warp" ;; + [Nn][Oo]|'') defaultitem="d $msg_none" ;; + esac + local dialog_menu dialog_menu=$( eval $DIALOG \ - --clear --title \"\$DIALOG_TITLE\" \ + --title \"\$DIALOG_TITLE\" \ --backtitle \"\$DIALOG_BACKTITLE\" \ --hline \"\$hline\" \ --ok-label \"\$msg_ok\" \ --cancel-label \"\$msg_cancel\" \ + --default-item \"\$defaultitem\" \ --menu \"\$prompt\" $size \ $menu_list \ 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD diff --git a/usr.sbin/bsdconfig/console/screenmap b/usr.sbin/bsdconfig/console/screenmap index 27ce53c..17de356 100755 --- a/usr.sbin/bsdconfig/console/screenmap +++ b/usr.sbin/bsdconfig/console/screenmap @@ -49,7 +49,7 @@ ipgm=$( f_index_menusel_keyword $BSDCFG_LIBE/$APP_DIR/INDEX "$pgm" ) # dialog_menu_main() { - local menu_list size + local menu_list size defaultitem= local hline="$hline_choose_a_screen_map" local prompt="$msg_screenmap_menu_text" @@ -69,13 +69,23 @@ dialog_menu_main() \"\$hline\" \ $menu_list ) + case "$( f_sysrc_get scrnmap )" in + [Nn][Oo]|'') defaultitem="1 $msg_none" ;; + iso-8859-1_to_cp437) defaultitem="2 $msg_iso_8859_1_to_ibm437" ;; + iso-8859-7_to_cp437) defaultitem="3 $msg_iso_8859_7_to_ibm437" ;; + us-ascii_to_cp437) defaultitem="4 $msg_us_ascii_to_ibm327" ;; + koi8-r2cp866) defaultitem="5 $msg_koi8_r_to_ibm866" ;; + koi8-u2cp866u) defaultitem="6 $msg_koi8_u_to_ibm866u" ;; + esac + local dialog_menu dialog_menu=$( eval $DIALOG \ - --clear --title \"\$DIALOG_TITLE\" \ + --title \"\$DIALOG_TITLE\" \ --backtitle \"\$DIALOG_BACKTITLE\" \ --hline \"\$hline\" \ --ok-label \"\$msg_ok\" \ --cancel-label \"\$msg_cancel\" \ + --default-item \"\$defaultitem\" \ --menu \"\$prompt\" $size \ $menu_list \ 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD diff --git a/usr.sbin/bsdconfig/console/ttys b/usr.sbin/bsdconfig/console/ttys index e06a2a7..ad7a9c4 100755 --- a/usr.sbin/bsdconfig/console/ttys +++ b/usr.sbin/bsdconfig/console/ttys @@ -85,7 +85,7 @@ dialog_menu_main() local dialog_menu dialog_menu=$( eval $DIALOG \ - --clear --title \"\$DIALOG_TITLE\" \ + --title \"\$DIALOG_TITLE\" \ --backtitle \"\$DIALOG_BACKTITLE\" \ --hline \"\$hline\" \ --ok-label \"\$msg_ok\" \ |