Anpassen von 10.10 Desktop Change Python Script

475
ghostof101

Ich bin nicht fantastisch in Python und verwende derzeit ein Skript, das auf https://gist.github.com/gregneagle/6957826 basiert .

Ich schaue, um eine Änderung an der Option Desktop Image Dictionary Keys im folgenden Skript vorzunehmen, aber ich bin nicht sicher, was der richtige Code ist.

Aktueller Code

options = {} 

Was ich dort reinbringen möchte, ist ein NEIN-Wert für "NSWorkspaceDesktopImageAllowClippingKey" (Referenz: https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSWorkspace_Class/index.html#// apple_ref / doc / constant_group / Desktop_Image_Dictionary_Keys )

Mein Endziel ist es, dieses Programm dazu zu bringen, das Desktop-Bild in 10.9 und 10.10 auf FIT auf Bildschirm anstatt auf FILL-Bildschirm zu setzen. Dies scheint der Standard zu sein. Es ist Teil eines NetRestore-Image-Dienstprogramms, daher muss ich dieses automatisieren, da diese Informationen in den ByHost-Einstellungen enthalten sind.

Vielen Dank!

-rks

Hier ist das Original-Skript für diejenigen, die es brauchen:

#!/usr/bin/python  '''Uses Cocoa classes via PyObjC to set a desktop picture on all screens. Tested on Mountain Lion and Mavericks. Inspired by Greg Neagle's work: https://gist.github.com/gregneagle/6957826  See: https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/classes/NSWorkspace_Class/Reference/Reference.html  https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSURL_Class/Reference/Reference.html  https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/classes/NSScreen_Class/Reference/Reference.html '''  from AppKit import NSWorkspace, NSScreen from Foundation import NSURL import argparse import sys  parser = argparse.ArgumentParser(description='Sets the desktop picture on all screens') parser.add_argument('--path', help='The path of the image') args = vars(parser.parse_args())  if args['path']: picture_path = args['path'] else: print >> sys.stderr, 'You must supply a path for the desktop picture' exit(-1)  # generate a fileURL for the desktop picture file_url = NSURL.fileURLWithPath_(picture_path)  # make image options dictionary # we just make an empty one because the defaults are fine options = {}  # get shared workspace ws = NSWorkspace.sharedWorkspace()  # iterate over all screens for screen in NSScreen.screens(): # tell the workspace to set the desktop picture (result, error) = ws.setDesktopImageURL_forScreen_options_error_( file_url, screen, options, None) if error: print error exit(-1) 
1

0 Antworten auf die Frage