2014-11-04 3 views
0

Я занимался некоторым исследованием того, как инвертировать цвета с помощью Applescript. По большей части, я только что нашел такие вещи, как:Как инвертировать цвета с помощью Applescript?

tell application "System Events" 
    keystroke "8" using {command down, option down, control down} 
end tell 

Но Йосемити (И я думаю, что версии до этого), это не будет работать. Вы должны войти в системные настройки и щелкнуть там. Итак, есть ли способ сделать applescript, который бы инвертировал цвета? (Желательно, не нужно «щелкать» что-либо, потому что для этого требуются права доступа для скрипта)

ответ

0

Вы можете достичь этого, используя команду «make shell script» в Applescript, используя это: выполнить сценарий оболочки «sudo defaults write /Library/Preferences/.GlobalPreferences AppleInterfaceTheme Dark» Это должно включить «темный режим» в OS X Yosemite. Ура!

+0

Я просто попытался это. Это дало мне эту ошибку: «sudo: no tty present и никакой запрошенной программы не указано» – James

0

В Йосемити JXA Javascript (должно быть легко адаптироваться к AS, если вы предпочитаете) переключая темную тему и цвет рабочего стола вместе:

function run() { 
    var dctSettings = { 
      darkMode: { 
       day: true, 
       night: false 
      }, 
      background: { 
       day: "/Library/Desktop Pictures/Solid Colors/Solid Gray Pro Ultra Dark.png", 
       night: "/Library/Desktop Pictures/Solid Colors/Solid Gray Light.png" 
      } 
     }, 
     strMode; 


    app = Application("System Events"); 

    if (app.currentDesktop.picture() === dctSettings.background.day) { 
     app.currentDesktop.picture = dctSettings.background.night; 
     app.appearancePreferences.darkMode = dctSettings.darkMode.night; 

     strMode = "Night"; 

    } else { 

     app.currentDesktop.picture = dctSettings.background.day; 
     app.appearancePreferences.darkMode = dctSettings.darkMode.day; 

     strMode = "Day"; 
    } 
    return strMode; 
} 
Смежные вопросы