J'ai les vingt-six fichiers suivants dans un dossier:
$ ls
a.txt c.txt e.txt g.txt i.txt k.txt m.txt o.txt q.txt s.txt u.txt w.txt y.txt
b.txt d.txt f.txt h.txt j.txt l.txt n.txt p.txt r.txt t.txt v.txt x.txt z.txt
$
Je peux utiliser Zenity comme ceci:
zenity --list --title=Test --width=275 --height=400 --column="File names" *.txt
et obtenir cette interface initialement:
Si je souhaite sélectionner un fichier plus bas dans la liste, dites r.txt
, J'appuie r et r.txt
est sélectionné.
Cependant, si j'utilise Yad au lieu de Zenity comme ceci:
yad --list --title=Test --width=275 --height=400 --column="File names" *.txt
pressage r ne fait rien. Je dois utiliser les touches fléchées pour faire défiler la liste jusqu'à ce que j'arrive à r.txt
.
Ma compréhension est que Yad a plus de fonctionnalités que Zenity. Y a-t-il un moyen pour que Yad fasse ce que fait Zenity?
(Testé à l'aide des versions de référentiel de Yad et Zenity trouvées dans 18.04 et 19.10.)
Pour apprendre yad
j'ai trouvé cette grande référence: YAD - Smokey01.com
Comme mentionné dans les commentaires, vous souhaitez utiliser l'option --search-column=N
Prenons l'exemple de code suivant:
while true ; do
local Selected INSTRUCTIONS
INSTRUCTIONS="Click Icon to move and press Enter"
Selected=$(yad --list --radiolist \
--image="$ICON" --window-icon="$ICON" \
--margins=10 --no-click --search-column=4 \
--title="$TITLE" "${GEOMETRY[@]}" \
--text="<big><b>$TEXT</b></big> - $INSTRUCTIONS" \
--column "Select" \
--column "Order" \
--column "Icon Type:HD" \
--column "Icon name" \
--column "Linkless name:HD" \
--column "Modified date" \
--column "Col Pos:NUM" \
--column "Row Pos:NUM" \
--button="_Alpha Sort:$ButnAlpha" \
--button="_Linkless Sort:$ButnLinkless" \
--button="_Oldest Date:$ButnOldest" \
--button="_Newest Date:$ButnNewest" \
--button="_Test:$ButnTest" \
--button="_Apply:$ButnApply" \
--button="_Cancel:$ButnCancel" \
"${IconsArr[@]}")
Retn="$?"
Les colonnes n ° 3 et n ° 5 sont masquées mais elles sont toujours comptées. Nous voulons effectuer une recherche sur le nom de l'icône, il s'agit donc de la colonne # 4 enregistrée ici:
--margins=10 --no-click --search-column=4 \
Le court .gif
le clip ci-dessous montre ce qui se passe quand on tape: