Диалоговое меню – пространство между пунктами меню

Я хочу добавить некоторое пространство между пунктами dialog menu .

Есть ли способ сделать это?

Я создал меню с «пустыми кнопками», которые снова вызывают меню. Это похоже на то, что я хочу.

Но проблема в том, что мне нужно нажать кнопку со стрелкой вниз два раза, чтобы перейти к следующей кнопке, потому что она также перенаправляет на пустые кнопки.

Можно ли деактивировать некоторые пункты меню, но оставить их там как заполнитель?

Мой код выглядит так:

 main_menu() { dialog --clear LANG=de_DE dialog --no-cancel --ok-label "Auswahl" --default-item '1' --backtitle "" --title "TestMenu"\ --menu "\n Test Test" 25 80 24\ '' ""\ 1 " Menupunkt1"\ '' ""\ 2 " Menupunkt2"\ '' ""\ 3 " Menupunkt3"\ '' ""\ 4 " Menupunkt4"\ '' ""\ 5 " Menupunkt5"\ '' ""\ 0 " Abmelden" 2>$_temp opt=${?} if [ $opt != 0 ]; then rm $_temp; exit; fi menuitem=`cat $_temp` echo "menu=$menuitem" case $menuitem in 1) ${Funktion_Button1} main_menu;; 2) ${Funktion_Button2} main_menu;; 3) ${Funktion_Button3} main_menu;; 4) ${Funktion_Button4} main_menu;; 5) ${Funktion_Button5} main_menu;; 0) rm $_temp; rm -f /tmp/menu.*; rm -f /tmp/answer.*; exit;; esac } 

Вы можете добавить эти кнопки, как вы добавили, и все они указывают на главное меню, которое вы можете изменить позже.

Если возможно, вместо использования клавиш со стрелками для перемещения используйте номера параметров для навигации, и было бы легко пропустить недействительные / деактивированные параметры, такие как:

 #!/bin/bash #Access Choices by numbers PS3='Please enter your choice: ' options=("Option 1" "Option 2" "Option 3" "Quit") select opt in "${options[@]}" do case $opt in "Option 1") echo "you chose choice 1" ;; "Option 2") echo "you chose choice 2" ;; "Option 3") echo "you chose choice $REPLY which is $opt" ;; "Quit") break ;; *) echo "invalid option $REPLY";; esac done