• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Einstellungen des Docks verändern, wenn externes Display angeschlossen wird

wheeler

Himbeerapfel von Holowaus
Registriert
29.04.08
Beiträge
1.257
Beißt sich das? Finde ich ja seltsam, teste es nachher aber mal.
Vielen Dank!
 

Kernelpanik

Maren Nissen
Registriert
05.03.04
Beiträge
2.303
Ich würde das so machen:
Das Script...

Code:
tell application "System Events"
    repeat
        set SecondDisplay to (count desktop) > 1
      
        tell dock preferences
            if SecondDisplay then
                set screen edge to left
                set autohide to false
            else
                set screen edge to right
                set autohide to true
            end if
        end tell
        delay 5
    end repeat
end tell


... mit dem LaunchAgent...
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <true/>
    <key>EnableGlobbing</key>
    <true/>
    <key>Label</key>
    <string>DockOnDisplaySetting.scpt</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/bin/osascript</string>
        <string>~/Library/Scripts/DockOnDisplaySetting.scpt</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>


... laufen lassen.
Du kannst auch "Keep Alive no matter what" im LaunchAgent verwenden. Der beste LaunchAgent Manager ist "LaunchControl"
PS: Habe das Script nach meinen Bedürfnissen geändert.
 
Zuletzt bearbeitet:

Kernelpanik

Maren Nissen
Registriert
05.03.04
Beiträge
2.303
Das Script gefällt mir so besser. Es ist logischer zu verstehen:


Code:
tell application "System Events"
    repeat
        if (count desktop) = 1 then
            tell dock preferences
                set screen edge to right
                set autohide to true
            end tell
        else
            tell dock preferences
                set screen edge to left
                set autohide to false
            end tell
        end if
        delay 7
    end repeat
end tell
 
  • Like
Reaktionen: schlagi