web-dev-qa-db-ja.com

キーボードからのZenityマルチ選択

複数のコマンド(ログアウトオプション、プログラム)から選択できるzenityスクリプトを探していました。 here--radiolistオプションを使用)で説明したスクリプトを見ると、キーボードから選択できないオプションのリストが表示されていることに気付きました。

しかし、私が見つけたもの here はそれを正確に行うことができるので、ここで共有したいと思います。便利だと思います。

3
user47206

スクリプトの一般的な形式(編集可能なエントリの場合は大文字)は次のとおりです。

#!/bin/bash

ask=`zenity --list --title="WHATEVER Options" --column="0" "OPTION1" "OPTION2" "OPTION3" "OPTION4" --width=100 --height=300 --hide-header`

if [ "$ask" == "OPTION1" ]; then
    COMMAND_FOR_OPTION1
fi

if [ "$ask" == "OPTION2" ]; then
    COMMAND_FOR_OPTION2
fi

if [ "$ask" == "OPTION3" ]; then
    COMMAND_FOR_OPTION3
fi

if [ "$ask" == "OPTION4" ]; then
    COMMAND_FOR_OPTION4
fi
exit 0

ウィンドウが開いたとき、オプションはまだ選択されていません。選択する(つまり、beforeEnterキーを押して適用する):

  • 最初の文字(複数のエントリがその文字で始まる場合は矢印)または最初の文字を使用します
  • firstエントリと残りの上下矢印を選択するための任意の文字(Enter、Backspace、Escなど、および修飾子を除く任意のキー)。

enter image description here

  • Escで閉じる。

デフォルトのテキスト「下のリストから項目を選択」は、オプション--text="Your text here"を使用して編集できます。その色とフォントは here のように変更できます。

3
user47206