При открытии файла DMG, как я могу открыть его перед окнами?

21

Всякий раз, когда я загружаю .dmgфайл и затем открываю его (обычно из панели загрузки в Chrome), он открывается в фоновом режиме. Есть ли способ заставить его открыться перед моим окном?

редактировать

Чтобы уточнить: я хочу, чтобы окно DMG всплыло как активное окно.

Epaga
источник
Когда вы говорите, откройте его, откуда вы его открываете? Ваш браузер? Finder?
Коноргриффин
1
Я почти уверен, что он имеет в виду, что он «всплывает» за вашими активными окнами. Он хочет, чтобы это всплыло перед его активными окнами.
Райан Версал
Это именно то, что я имею в виду Райан.
Epaga
Часто я открываю его из браузера, но думаю, что даже из Finder он открывается за активным окном ...
Epaga
Вам уже удалось заставить мое решение работать? Если бы не я, я мог бы более подробно рассказать вам, как помочь ...
Асмус

Ответы:

5

Я создал скрипт действия папки в Applescript, который может делать то, что вы хотите. Скопируйте и вставьте его в новый Applescript и сохраните как приложение (без начального диалога!) В «/ Library / Scripts / Folder Action Scripts /». Затем вы можете прикрепить его к любой папке (скорее всего, к ~ / Downloads / папке), щелкнув правой кнопкой мыши по папке и выбрав «Настроить действия с папками» в выпадающем меню служб. Активируйте Действия с папками и дайте сценарию просмотреть папку.

В основном сценарий реагирует на элементы, помещенные в папку, к которой он прикреплен, и, если удаляемый элемент имеет вид: «Изображение», он присоединяет изображение как том с помощью инструмента командной строки «hdiutil».

Вы можете настроить его поведение, установив свойства openWindow и makeFrontmost в Script; это также можно сделать, дважды щелкнув Script после того, как вы сохранили его как приложение - в двух диалоговых окнах он спросит, каким должно быть стандартное поведение.

Надеюсь, это поможет,

Асмус

 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

====

Второй Applescript для определения типа файла, сброшенного в папку

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

Отредактированный должен быть "Образ диска", а не "Образ"

Асмус
источник
вау - очень круто к сожалению, когда я дважды щелкаю, он говорит: «Вы не можете открыть приложение, потому что классическая среда больше не поддерживается». Чего-чего??
Epaga
Я попробовал chmod a + x на нем, но он все равно выдает мне это сообщение об ошибке.
Epaga
Не нужно chmod этот скрипт! Позвольте мне рассказать вам немного подробнее: из / Applications / Utilites / откройте редактор appleScript и вставьте код, который я разместил выше, в новое окно. В диалоговом окне «Сохранить…» выберите «Приложение» в качестве формата файла и убедитесь, что ни один из флажков «Параметры» не установлен. После сохранения в / Library / Scripts / Folder Action Scripts / он должен появиться в меню «Настройка действий папки». Можете ли вы достичь этой точки?
Асмус
Спасибо за шаг за шагом. Я могу зайти так далеко и включить этот скрипт для папки загрузки. Я дважды щелкаю по сценарию и могу установить его, чтобы открыть поиск. К сожалению, это, похоже, никак не влияет ... ни при загрузке файла dmg из сети, ни даже когда я перетаскиваю файл dmg в папку, кажется, что-то происходит. странно, а?
Epaga
Не могли бы вы сохранить второй яблочный скрипт, который я сейчас опубликовал выше, как новое действие папки и (аналогично показанному выше) присоединить его к новой папке?
Асмус
3

Из того, что я могу сказать, OS X будет автоматически отображать содержимое образа диска, только если он доступен только для чтения. На это указывает карандаш с косой чертой в левом нижнем углу окна Finder при просмотре содержимого изображения.

Если вы хотите изменить образ диска, чтобы он делал это, вы можете сделать существующий образ диска доступным только для чтения с помощью Дисковой утилиты. К сожалению, это не изменит поведение неправильно созданных изображений, которые вы можете загрузить из Интернета.

  1. Смонтируйте образ диска, который вы хотите открыть автоматически.
  2. Откройте Дисковую утилиту, выполнив поиск в Spotlight.
  3. Выберите значок «Новое изображение» на панели инструментов.
  4. Назовите файл и выберите «только для чтения» в разделе «Формат изображения». Диалог нового изображения
  5. Нажмите «Сохранить». Когда вы монтируете этот новый образ, он автоматически откроет окно Finder.
Фил Кальвин
источник
интересно, спасибо! но, как вы говорите сами, это на самом деле не помогает мне с моей настоящей проблемой, которая заключается в том, что DMG загружаются из Интернета ... если я сделаю все это, будет гораздо проще открыть DMG и затем нажать Cmd-Tab на передней панели. ...
Epaga
0

Это, вероятно, также не дает достаточного ответа на вопрос, но ...

Если вы нажмете команду и нажмете на элемент в панели загрузки, он отобразит этот элемент в поиске. В этот момент, просто нажав command-O (или дважды щелкнув файл dmg), вы смонтируете его и откроете в новом окне на переднем плане.


источник
1
ОП хорошо знает, как открыть файлы DMG. Он (и многие другие) ищут какой-то способ переопределить поведение Finder, «всплывающее под» окном, в котором отображается содержимое dmg.
Райан Версал
Да, Вивек прав, ни один из них на самом деле не решает проблему. То, что требует опера, - это поведение по умолчанию в Safari. Я считаю, что это проблема хрома.
user5583