On Mar 22, 2005, at 3:30 PM, Jeremy Conlin wrote:
I have a little python script that reads a text file and prints what it finds to the screen. Not everything it finds, of course, just the important stuff. Instead of printing to the screen, or in addition to printing to the screen, I would also like to copy the text to the clipboard so I can paste it in another application. Does anyone know how to do this?
In my searching, I have found things like Carbon.Scrap, but it has very little documentation and so is of no help to me.
Thanks, Jeremy
I figured out how to do this with a lot of trial and error. You can use Carbon or AppKit/Foundation.
------------------------------------------------- import Carbon.Scrap, AppKit, Foundation
def clipcopy(arg): Carbon.Scrap.ClearCurrentScrap() scrap = Carbon.Scrap.GetCurrentScrap() scrap.PutScrapFlavor('TEXT', 0, arg)
def clippaste(): scrap = Carbon.Scrap.GetCurrentScrap() try: return scrap.GetScrapFlavorData('TEXT') except: return ''
def clipcopy1(arg):
board = AppKit.NSPasteboard.generalPasteboard()
board.declareTypes_owner_([AppKit.NSStringPboardType], None)
newStr = Foundation.NSString.stringWithString_(arg)
newData = newStr.nsstring().dataUsingEncoding_(Foundation.NSASCIIStringEncoding)
board.setData_forType_(newData, AppKit.NSStringPboardType)
def clippaste1(): board = AppKit.NSPasteboard.generalPasteboard() content = board.stringForType_(AppKit.NSStringPboardType) return content -------------------------------------------------
Doug
_______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig