3 votes

Barre de lancement script qui renvoie le chemin d'un dossier "déposé" sur celle-ci.

Je veux faire une barre de lancement script qui affiche dans un dialogue le chemin d'un fichier ou d'un dossier choisi dans le premier volet et ensuite "déposé" sur un script. Mais je n'arrive pas à le faire fonctionner.

J'ai quelques scripts qui fonctionnent et qui font presque ce que je veux :

Renvoie le contenu du premier volet (utilisé avec un raccourci) :

tell application "LaunchBar"
   set x to selection as text
   return x
end tell

Afficher le texte écrit dans le premier volet et "déposé" sur le script :

on handle_string(textFromLaunchbar)
   tell application "LaunchBar"
       display in large type textFromLaunchbar
   end tell
end handle_string

Ce dernier utilise le gestionnaire handle_string() mais je n'arrive pas à faire fonctionner le gestionnaire open() pour les fichiers et les dossiers :

du manuel de LaunchBar :

http://www.obdev.at/resources/launchbar/help/index.php?chapter=SendingItems

Envoi d'éléments à AppleScripts

Pour transmettre un fichier, une URL ou un texte sélectionné à un AppleScript, appuyez sur la touche Tab pour déclencher l'action "Envoyer à ", sélectionnez l'AppleScript souhaité et appuyez sur Retour. Les fichiers seront transmis au gestionnaire open() du script, les URL seront transmis au gestionnaire handle_string().

1voto

fanaugen Points 544

Le site open() se voit passer un alias (qui est une sorte de pointeur vers un fichier ou un dossier). Vous pouvez alors simplement convertir l'alias en texte, mais il vous montrera le chemin avec des deux-points comme séparateurs (par exemple "Macintosh HD:Users:Username:Documents:Folder :").

Utilice POSIX path of pour le convertir en chemin d'accès de style UNIX avec des séparateurs "/", et si vous voulez le coller dans le Terminal, surtout si le chemin d'accès contient des espaces, vous devriez utiliser quoted form of pour le mettre correctement entre guillemets.

Le script suivant fonctionne à la fois avec les dossiers et les fichiers pour moi, lorsqu'un élément lui est transmis via LaunchBar :

on open (thisItem)
    display dialog (thisItem as text) -- alias
    display dialog quoted form of POSIX path of thisItem -- POSIX path
end open

0voto

Paul Bissex Points 312

Je vois que vous connaissez la fonction "grands caractères" de LaunchBar. Saviez-vous que vous pouvez lui envoyer du texte sélectionné avec l'action "Afficher en grands caractères" ? C'est-à-dire

  1. Sélectionnez votre fichier dans la barre de lancement
  2. Tab, "dla", retour

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X