AprĆØs plusieurs tests avec l'explorateur de fichiers EspaceFM et en lisant le manuel de ce programme j'ai pu me rendre compte qu'il contient ses propres boĆ®tes de dialogue, et le meilleur de tous est qu'elles peuvent ĆŖtre intĆ©grĆ©es les unes aux autres, il ne sera pas nĆ©cessaire d'ouvrir un autre type de boĆ®te de dialogue pour effectuer une certaine action . GrĆ¢ce au fait que ces boĆ®tes de dialogue sont spĆ©cifiques au programme EspaceFM vous n'aurez pas Ć charger un programme externe pour les utiliser, rĆ©duisant ainsi la consommation de mĆ©moire RAM et accĆ©lĆ©rant les opĆ©rations entre eux.
Regardons plusieurs exemples de boƮtes de dialogue essayant d'imiter le fonctionnement normal d'autres boƮtes de dialogue, comme demander une confirmation pour continuer avec un processus donnƩ, choisir une liste d'options, etc.
- Notification ou alerte
spacefm -g --hbox --icon notification-gsm-disconnected --hbox --label "Alerta de Seguridad Intruso en la RED" --button close
- Demandez une confirmation pour continuer avec un certain processus:
spacefm -g --hbox --icon gtk-stop --hbox --label "Esta seguro de continuar" --button no echo "falso" -- close --button yes echo "verdad" -- close 2>&1 |grep verdad > /dev/null && comando-a-continuaciĆ³n
- Entrez un petit texte spƩcifique
spacefm -g --hbox --icon gtk-edit --vbox --label "Teclee un texto cualquiera" --input --button ok | grep dialog_input1= | sed 's/dialog_input1=//' | awk -F "'*" '{print $2}' | grep [[:alnum:]]
- Entrez plusieurs lignes de texte
spacefm -g --hbox --icon gtk-edit --vbox --label "Teclee varias lineas de texto cualquiera" --window-size 500x300 --input-large --button ok | grep dialog_inputlarge1= | sed 's/dialog_inputlarge1=//' | awk -F "'*" '{print $2}' | grep [[:alnum:]]
- Entrez un mot de passe spƩcifique
spacefm -g --hbox --icon locked --vbox --label "Tecle la contraseƱa" --password --button ok | grep dialog_pasword1= | sed 's/dialog_password1=//' | awk -F "'*" '{print $2}' | grep [[:alnum:]]
- Visionneuse de fichiers texte
spacefm -g --hbox --icon gtk-edit --hsep --vbox --label "Visor de Archivos de Texto" --viewer /etc/fstab --button close > /dev/null
- Ćditeur de fichier texte
spacefm -g --hbox --icon gtk-edit --hsep --vbox --label "Visor de Archivos de Texto" --editor /etc/fstab --button cancel source /dev/null -- close --button save source $HOME/fichero-salida.txt -- close > /dev/null
L'image est similaire Ć celle de la visionneuse de texte.
- BoƮte de dialogue "SƩlecteur d'options" avec menu dƩroulant et non modifiable.
spacefm -g --label "Seleccione la acciĆ³n a realizar" --drop "Listar" "TamaƱo" "Borrar" "null" -- "Listar" --button cancel set drop1 "null" -- close --button ok | grep dialog_drop1= | sed 's/dialog_drop1=//' | awk -F "'*" '{print $2}' | sed 's/Listar/ls/' | sed 's/TamaƱo/du -sh/' | sed 's/Borrar/rm -r/' | grep -v null
- BoƮte de dialogue de sƩlection d'options avec menu dƩroulant modifiable.
spacefm -g --label "Seleccione la acciĆ³n a realizar" --combo "Listar" "TamaƱo" "Borrar" "null" -- "Listar" --button cancel set combo1 "null" -- close --button ok | grep dialog_combo1= | sed 's/dialog_combo1=//' | awk -F "'*" '{print $2}' | sed 's/Listar/ls/' | sed 's/TamaƱo/du -sh/' | sed 's/Borrar/rm -r/' | grep -v null
Image similaire Ć la prĆ©cĆ©dente.
- BoƮte de dialogue pour lister les options et sƩlectionner 1 action.
spacefm -g --label "Seleccione la acciĆ³n a realizar" --list "Listar" "TamaƱo" "Borrar" -- "Listar" --button cancel --button ok | grep dialog_list1= | sed 's/dialog_list1=//' | awk -F "'*" '{print $2}' | sed 's/Listar/ls/' | sed 's/TamaƱo/du -sh/' | sed 's/Borrar/rm -r/' | grep [[:alnum:]]
- BoƮte de dialogue pour rƩpertorier les options et sƩlectionner plusieurs actions.
spacefm -g --label "Seleccione la acciĆ³n a realizar" --mlist "Opcion 1" "Opcion 2" "OpciĆ³n 3" -- "Listar" --button cancel --button ok echo dia-"%"mlist1 -- close | grep dia- | sed 's/dia- //g' | sed 's/dialog_mlist1=//' | grep [[:alnum:]]
Image similaire Ć la prĆ©cĆ©dente.
- BoƮte de dialogue pour sƩlectionner des fichiers ou des rƩpertoires:
spacefm -g --chooser /media/ --button cancel set chooser1 /dev/null -- close --button ok | grep dialog_chooser1= | awk -F \' '{print $2}'
- Options de sƩlection de fichiers
āSave (au lieu de choisir le fichier d'entrĆ©e, choisissez le fichier de sortie)
āDir (certains dossiers uniquement)
āMulti (sĆ©lectionner plusieurs fichiers)
āFiltre (Filtre le type de fichier Ć afficher, il peut s'agir du type MIME ou de l'extension de fichier)exemple:
āFiltre texte / brut
āFiltre '* .txt'
āFilter '* .txt: *. Doc: *. Html' (MĆ©thode pour filtrer plusieurs extensions sĆ©parĆ©es par des deux-points :)
Ce n'Ć©tait qu'un exemple de ce que ces boĆ®tes de dialogue peuvent faire, car elles peuvent principalement ĆŖtre intĆ©grĆ©es dans une boĆ®te de dialogue unique formant une nouvelle boĆ®te unique en son genre:
- Par exemple, si nous voulons qu'une boĆ®te de dialogue saisisse le mot de passe deux fois, nous n'aurons qu'Ć rĆ©pĆ©ter l'option āpassword 2 fois. Regardons un exemple oĆ¹ il vĆ©rifie que les mots de passe correspondent avant de procĆ©der Ć une action.
Pour protƩger un PDF contre la copie permettant la lecture (Cette mƩthode n'est valable que pour travailler avec un seul PDF):
spacefm -g --label "Teclee la contraseƱa" --password --label "Repita la ContraseƱa" --password --mlist "Printing" "DegradedPrinting" "ModifyContents" "CopyContents" "ScreenReaders" "ModifyAnnotations" "AllFeatures" --button aplicar bash -c "[ '"%"password1' = '"%"password2' ] && pdftk '"%f"' output '`basename %n | sed 's/\.[[:alnum:]]*$//'`-locked.pdf' allow "%"mlist1 owner_pw '""%"password1"' " -- close
Note 1: Pour Ć©viter l'expansion dans le shell, placez toute la ligne de commande Ć exĆ©cuter entre guillemets en mettant bash -c devant elle afin qu'il interprĆØte ces lignes, afin que nous puissions utiliser des opĆ©rateurs spĆ©ciaux tels que & | entre autres.Note 2: Comme les commandes sont faites entre guillemets Ā«Ā», elles ne peuvent pas ĆŖtre utilisĆ©es pour sĆ©parer les champs vides Ć la place, elles doivent utiliser le guillemet simple Ā»laissant ainsiĀ« / chemin / vers / dossier / fichier avec espace1 Ā», s'ils en utilisent les alias tels que% password doivent d'abord sĆ©parer le pourcentage par des guillemets et l'alias avec le pourcentage entre guillemets et le rĆ©-encapsuler avec des guillemets simples Ā»laissant ainsi 'Ā» Ā»%Ā» password1 ā³', si nous allons utiliser le% fo la symbologie% n doit d'abord le mettre entre guillemets et ensuite entre guillemets simples, ce qui en fait 'Ā»% fĀ»'.Note 3: Si vous souhaitez le protĆ©ger contre l'ouverture, il vous suffit de changer l'option owner_pw en user_pw. - Pour Ć©tablir un alias pour chaque donnĆ©e que nous avons saisie dans la boĆ®te de dialogue, nous pouvons utiliser le formulaire suivant (utile lors de la crĆ©ation scripts):
eval "`spacefm -g --input --input --button ok`"
Nous pouvons vƩrifier que la valeur que nous saisissons dans la boƮte de dialogue a bien ƩtƩ attribuƩe
input 1
echo $dialog_input1 - Recherchez certains fichiers et choisissez de les ouvrir ou de les supprimer:
find %F -name *.txt > $HOME/.derr && SpaceFM -g --mlist @$HOME/.derr --button abrir bash -c "mimeopen -M "%"mlist1" --button borrar bash -c "rm "%"mlist1" ā close && rm $HOME/.derr
Bijoux et accessoires
āHsep (ligne horizontale)
āVsep (ligne verticale)
āBouton (bouton)
āFree-button (bouton Free, qui peut ĆŖtre positionnĆ© dans des zones autres que le bas de la fenĆŖtre)
āHbox (pour organiser les boutons horizontalement)
āVbox (pour organiser les boutons verticalement)
āIcĆ“ne de fenĆŖtre (icĆ“ne de fenĆŖtre)
āIcĆ“ne (Afficher une icĆ“ne)
āLabel (pour entrer le texte sous le cadre de la fenĆŖtre)
āImage (similaire Ć l'option āicon)
āTimeout (ferme automatiquement la fenĆŖtre une fois le compte Ć rebours terminĆ©)
āTaille de la fenĆŖtre (SĆ©lectionnez la taille de la fenĆŖtre 600 Ć 400)
Il existe d'autres faƧons de travailler avec ces boĆ®tes de dialogue soit dans des scripts, soit d'une autre maniĆØre, pour plus de documentation reportez-vous Ć la page du manuel de EspaceFM dans la section dialogue.
Impressionnant ... pas de mots. Approuver!!!!
trĆØs bien!, excellent article, essayons les astuces ^^
Article trĆØs complet. Ces types d'entrĆ©es, si Ć©laborĆ©es et dĆ©taillĆ©es, sont ce qui donne du prestige et de la renommĆ©e Ć un site Web. Toutes nos fĆ©licitations!
Incroyable. Je n'avais aucune idĆ©e que cela pouvait ĆŖtre fait avec spacefm. Cela semble plus complet que xdialog ou zenity. TrĆØs bon article.
Pour quelque chose me rappelle Glade
Je n'avais aucune idƩe que SpaceFM pouvait faire Ƨa Oo