Les actions peuvent gérer les arguments multiples de trois manières, décrites ci-dessous.
L'action peut être exécutée à plusieurs reprises, une fois par argument. Lorsqu'une zone EXEC_STRING définit un seul argument et que plusieurs fichiers sont posés sur l'icône de l'action, celle-ci est exécutée pour chaque fichier.
Par exemple, si plusieurs arguments sont indiqués pour la définition d'action suivante :
ACTION Affich_image_écran { EXEC_STRING xwud -in %Arg_1% ... }
l'action Affich_image_écran est exécutée à plusieurs reprises.
L'action peut utiliser plusieurs fichiers non interchangeables. Par exemple :
xsetroot -cursor fichier_curseur fichier_masque
Cette action requiert deux fichiers, indiqués dans un ordre donné.
Une action peut également exécuter la même commande de façon séquentielle sur chaque fichier. Par exemple :
pr fichier [fichier ...]
Cette action regroupe un ou plusieurs fichiers dans un même travail d'impression.
Utilisez l'une des syntaxes décrites ci-dessous.
Pour que l'action demande les noms des fichiers, utilisez la syntaxe suivante pour chaque argument :
%(File)"invite"%
Utilisez une chaîne invite différente pour chaque argument.
Par exemple, la chaîne d'exécution suivante invite l'utilisateur à spécifier deux fichiers :
EXEC_STRING xsetroot -cursor %(File)"Bitmap curseur:"% \ %(File)"Bitmap masque:"%
Pour que l'action accepte les fichiers posés, utilisez la syntaxe suivante pour chaque argument :
%Arg_n%
Attribuez une valeur différente à n pour chaque argument. Par exemple :
EXEC_STRING diff %Arg_1% %Arg_2%
Utilisez l'une des syntaxes décrites ci-dessous.
Pour créer une action acceptant les fichiers posés, chargée d'exécuter une commande du type commande fichier 1 fichier 2 ..., utilisez la syntaxe suivante pour les arguments :
%Args%
Pour créer une action qui accepte plusieurs fichiers posés, ou qui affiche un message demandant à l'utilisateur d'indiquer un fichier unique lorsqu'il clique deux fois dessus, utilisez la syntaxe suivante pour les arguments :
%Arg_1"invite"% %Args%
La commande sera lancée sous la forme commande fichier 1 fichier 2 ....
La chaîne suivante crée une action qui exécute la commande :
pr fichier 1 fichier 2
Cette action accepte plusieurs fichiers comme arguments.
EXEC_STRING pr %Args%
La chaîne suivante crée une action semblable à la précédente, qui affiche en plus une invite lorsque l'utilisateur clique deux fois dessus (pas d'arguments) :
EXEC_STRING pr %Arg_1"Fichier(s) à imprimer:"% %Args%
Pour créer une action qui accepte plusieurs arguments et exécute une commande du type :
commande fichier 1 fichier 2 ...
Utilisez la syntaxe :
%Args%
La chaîne suivante lance le script Vérification sur plusieurs fichiers :
EXEC_STRING /usr/local/bin/Vérification \ %Arg_1"Fichier à vérifier?"% %Args%