[GastForen Programmierung/Entwicklung AppleScript Systemweite Einstellungen mittels Variable einstellen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Systemweite Einstellungen mittels Variable einstellen

AppleScripter alpha
Beiträge gesamt: 26

5. Apr 2016, 18:29
Beitrag # 1 von 4
Bewertung:
(1199 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,
ich habe folgenden Code gefunden (http://www.hilfdirselbst.ch/...;;page=unread#unread), um den OS X Dark Mode zu de/-aktivieren.
Code
tell application "System Events" 
tell appearance preferences
set properties to {dark mode:true}
end tell
end tell

Mein Skript entscheidet zwischen diversen Kriterien, ob der Modus aktiviert werden soll oder nicht. Der Wahrheitswert dazu soll in einer Variablen gespeichert werden.
Code
tell application "System Events" 
tell appearance preferences
set properties to "{dark mode:" & darkmodeaktiviert & "}"
end tell
end tell

Leider wird der entstandene Code als String angesehen und somit nicht umgesetzt.
Wie stelle ich ein, dass die daraus resultierende Zeile ohne Anführungszeichen erstellt/ausgeführt wird?
Code
set properties to "{dark mode:true}" 


Ich bedanke Mich für jegliche Hilfe :)

(Dieser Beitrag wurde von AppleScripter alpha am 5. Apr 2016, 18:36 geändert)
X

Systemweite Einstellungen mittels Variable einstellen

Hans Haesler
  
Beiträge gesamt: 5822

5. Apr 2016, 19:02
Beitrag # 2 von 4
Beitrag ID: #548612
Bewertung:
(1165 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo AppleScripter alpha,

wie befüllst die Variable darkmodeaktiviert?

Sehr wahrscheinlich ist der Inhalt eine Textkette ("true" oder "false") und muss vor Gebrauch umgewandelt werden:

Code
set darkmodeaktiviert to "true" 

if darkmodeaktiviert is "true" then
set darkmodeaktiviert to true
else
set darkmodeaktiviert to false
end if

Danach kann das Ergebnis im Befehl verwendet werden. Aber in diesem müssen sämtliche Anführungszeichen weg:

Code
tell application "System Events" 
tell appearance preferences
set properties to {dark mode:darkmodeaktiviert}
end tell
end tell

Gruss, Hans


als Antwort auf: [#548611]

Systemweite Einstellungen mittels Variable einstellen

AppleScripter alpha
Beiträge gesamt: 26

5. Apr 2016, 19:32
Beitrag # 3 von 4
Beitrag ID: #548615
Bewertung:
(1149 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans Haesler,
vielen vielen Dank für Ihre Antwort.
Dank Ihrer Hilfe funktioniert mein kleines Skript jetzt perfekt.

Ich hätte nicht gedacht, dass die Lösung so einfach ist. :)

Einen Schönen Abend wünsche ich noch :)


als Antwort auf: [#548612]

Systemweite Einstellungen mittels Variable einstellen

Hans Haesler
  
Beiträge gesamt: 5822

5. Apr 2016, 20:09
Beitrag # 4 von 4
Beitrag ID: #548617
Bewertung:
(1112 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo AppleScripter alpha,

bitte sehr.

Meine Erklärung war zuwenig präzise. Deshalb hake ich nochmals nach.

Die Ausdrücke true (= wahr) und false (= falsch) werden häufig in Scripts
verwendet. Es sind sogenannte Boolesche Operatoren (oder, kurz: boolean).

Damit sie funktionieren, dürfen sie nicht mit Anführungszeichen umgeben sein.
Sonst wären es Textketten (= strings).

Allerdings kommt es vor, dass Ergebnisse in einer Textdatei gespeichert werden.
Beim Einlesen dieser Datei ist alles Text. Eigentliche Zahlen müssen in Zahlen
umgewandelt werden. Und bei den Ausdrücken wahr oder falsch verwendet man
die paar Konvertierungszeilen meiner vorherigen Antwort.

Gruss, Hans


als Antwort auf: [#548615]
X