Lors de l'ouverture d'un fichier DMG, comment puis-je le faire ouvrir devant les fenêtres?

21

Chaque fois que je télécharge un .dmgfichier, puis l'ouvre (généralement à partir de la barre de téléchargement dans Chrome), il s'ouvre en arrière-plan. Est-il possible de l'ouvrir devant ma fenêtre?

modifier

Pour clarifier: je veux que la fenêtre DMG apparaisse comme fenêtre active.

Epaga
la source
Quand vous dites l'ouvrir, d'où l'ouvrez-vous? Ton navigateur? Chercheur?
conorgriffin
1
Je suis sûr qu'il veut dire que cela "apparaît" derrière vos fenêtres actives. Il veut qu'il apparaisse devant ses fenêtres actives.
Ryan Wersal
C'est exactement ce que je veux dire Ryan.
Epaga
Souvent, je l'ouvre depuis le navigateur, mais je pense que même depuis le Finder, il s'ouvre derrière la fenêtre active ...
Epaga
Avez-vous déjà réussi à faire fonctionner ma solution? Sinon, je pourrais entrer dans les détails pour vous aider ...
Asmus

Réponses:

5

J'ai créé un script d'action de dossier dans Applescript, qui pourrait faire exactement ce que vous voulez. Copiez et collez-le dans un nouvel Applescript, et enregistrez-le en tant qu'application (sans dialogue de démarrage!) Dans "/ Library / Scripts / Folder Action Scripts /". Vous pouvez ensuite le joindre à n'importe quel dossier (probablement votre dossier ~ / Downloads /) en cliquant avec le bouton droit sur le dossier et en sélectionnant "configurer les actions du dossier" dans le menu déroulant des services. Activez les actions du dossier et laissez le script regarder le dossier.

Ce que fait le script, c'est de réagir sur les éléments déposés dans le dossier auquel il est attaché et si l'élément supprimé est de type: "Image" il attache l'image en tant que volume via l'outil de ligne de commande "hdiutil".

Vous pouvez configurer son comportement en définissant les propriétés openWindow et makeFrontmost dans le script; cela peut également être fait en double-cliquant sur le script après l'avoir enregistré en tant qu'application - il vous demandera ensuite dans deux dialogues quel devrait être son comportement standard.

J'espère que ça aide,

Asmus

 property openWindow : true
 property makeFrontmost : true

 on run

    display dialog "Do you want to bring the Finder to the front after new items are added?" buttons {"Don't Activate", "Activate"} default button 2
    if the button returned of the result is "Don't Activate" then
        set makeFrontmost to false
    else
        set makeFrontmost to true
    end if


    display dialog "Open Folder after adding new files?" buttons {"Don't Open", "Open"} default button 2
    if the button returned of the result is "Don't Open" then
        set openWindow to false
    else
        set openWindow to true
    end if


 end run

 on adding folder items to thisFolder after receiving addedItems

    repeat with i from 1 to number of items in addedItems
        set itemKind to the kind of (info for item i of addedItems) as string

        if itemKind is "Disk Image" then
            set itemPath to (quoted form of POSIX path of item i of addedItems)
            try
                showImage(itemPath)
            end try
        end if

    end repeat

 end adding folder items to


 on showImage(itemPath)

    set volumeMountpointInfo to do shell script "/usr/bin/hdiutil  attach " & itemPath & " | grep Volumes"


    if (openWindow is true) then
        if (makeFrontmost is true) then
            tell application "Finder" to activate
        end if

       set currentDelim to text item delimiters
       set text item delimiters to tab

       set volumeMountpoint to POSIX file (text item 3 of volumeMountpointInfo)

       set text item delimiters to currentDelim

       tell application "Finder" to open folder volumeMountpoint

    end if

 end showImage

====

deuxième Applescript pour déterminer le type de fichier déposé dans un dossier

On adding folder items to thisFolder after receiving addedItems
repeat with i from 1 to number of items in addedItems
    set itemKind to the kind of (info for item i of addedItems) as string
    display dialog itemKind
end repeat
end adding folder items to

La modification doit être une «image disque» plutôt qu'une «image»

Asmus
la source
wow - très cool. malheureusement, lorsque je double-clique, il dit "Vous ne pouvez pas ouvrir l'application car l'environnement Classic n'est plus pris en charge." Tu peux répéter s'il te plait??
Epaga
J'ai essayé un chmod a + x dessus mais il me donne toujours ce message d'erreur.
Epaga
Pas besoin de modifier ce script! Permettez-moi de vous donner un peu plus de détails: à partir de / Applications / Utilites / ouvrez l'éditeur applescript et collez le code que j'ai publié ci-dessus dans une nouvelle fenêtre. Dans la boîte de dialogue "Enregistrer…", sélectionnez "Application" comme format de fichier et assurez-vous qu'aucune des cases "Options" n'est cochée. Une fois enregistré dans / Library / Scripts / Folder Action Scripts /, il devrait apparaître dans le menu "Folder Actions Setup". Pouvez-vous atteindre ce point?
Asmus
Merci pour l'étape par étape. Je peux aller aussi loin et activer ce script pour le dossier de téléchargement. Je double-clique sur le script et je peux le configurer pour ouvrir le viseur. Malheureusement, cela ne semble avoir aucun effet ... ni lors du téléchargement d'un fichier dmg sur le net, ni même lorsque je fais glisser un fichier dmg dans le dossier, rien ne semble se produire. bizarre, hein?
Epaga
Pourriez-vous peut-être enregistrer le deuxième applescript que j'ai maintenant affiché ci-dessus en tant que nouvelle action de dossier et (similaire à celui ci-dessus) le joindre à un nouveau dossier?
Asmus
3

D'après ce que je peux dire, OS X n'affichera automatiquement le contenu d'une image disque que si elle est en lecture seule. Cela est indiqué par un crayon avec une barre oblique dans le coin inférieur gauche de la fenêtre du Finder lors de la visualisation du contenu de l'image.

Si vous souhaitez modifier une image disque afin qu'elle le fasse, vous pouvez rendre une image disque existante en lecture seule à l'aide de l'Utilitaire de disque. Malheureusement, cela ne changera pas le comportement des images produites de manière incorrecte que vous pouvez télécharger sur Internet.

  1. Montez l'image disque que vous souhaitez ouvrir automatiquement.
  2. Ouvrez l'Utilitaire de disque en le recherchant avec Spotlight.
  3. Sélectionnez l'icône "Nouvelle image" dans la barre d'outils.
  4. Nommez le fichier et sélectionnez «lecture seule» sous «Format d'image». Boîte de dialogue Nouvelle image
  5. Cliquez sur "Enregistrer". Lorsque vous montez cette nouvelle image, elle ouvrira automatiquement une fenêtre du Finder.
Phil Calvin
la source
intéressant, merci! mais comme vous le dites vous-même, cela ne m'aide pas vraiment avec mon problème réel qui sont des DMG téléchargés sur Internet ... si je fais tout cela, il serait beaucoup plus facile d'ouvrir le DMG puis de le Cmd-Tab à l'avant ...
Epaga
0

Cela ne répond probablement pas suffisamment à la question non plus, mais ...

Si vous appuyez sur commande et cliquez sur l'élément dans la barre de téléchargement, il affiche l'élément dans le Finder. À ce stade, appuyez simplement sur commande-O (ou double-cliquez sur le fichier dmg) pour le monter et l'ouvrir dans une nouvelle fenêtre au premier plan.


la source
1
L'OP sait très bien comment ouvrir des fichiers dmg. Il (et beaucoup d'autres) cherche un moyen de contourner le comportement du Finder de "passer sous" la fenêtre qui affiche le contenu du dmg.
Ryan Wersal
Oui, vivek a raison, aucun de ces problèmes ne résout le problème. Ce qu'op demande, c'est le comportement par défaut avec Safari. Je pense que c'est spécifiquement un problème de chrome.
user5583