##// END OF EJS Templates
Merge pull request #1008 from minrk/excepthook...
Merge pull request #1008 from minrk/excepthook Use a much more restrained crash handler by default. Now the excepthook shows a regular traceback, with a brief message about reporting bugs and how to enable to the big crash handler. Our previous, extremely verbose crash handler can still be activated via `%config Application.verbose_crash=True`, so we can debug real crashes or ask users for extra detail easily. Small fixes along the way: * current Application added to configurables list, for use in %config. * email addresses in full crash reports changed to ipython-dev, so they don't go straight to individual users. Should close #695, and ameliorate #833 (doesn't fix the bug, but the message is more sensible).

File last commit:

r4872:34c10438
r5348:493f6d4b merge
Show More
win32clip.py
45 lines | 1.1 KiB | text/x-python | PythonLexer
from IPython.core import ipapi
ip = ipapi.get()
def clip_f( self, parameter_s = '' ):
"""Save a set of lines to the clipboard.
Usage:\\
%clip n1-n2 n3-n4 ... n5 .. n6 ...
This function uses the same syntax as %macro for line extraction, but
instead of creating a macro it saves the resulting string to the
clipboard.
When used without arguments, this returns the text contents of the clipboard.
E.g.
mytext = %clip
"""
import win32clipboard as cl
import win32con
args = parameter_s.split()
cl.OpenClipboard()
if len( args ) == 0:
data = cl.GetClipboardData( win32con.CF_TEXT )
cl.CloseClipboard()
return data
api = self.getapi()
if parameter_s.lstrip().startswith('='):
rest = parameter_s[parameter_s.index('=')+1:].strip()
val = str(api.ev(rest))
else:
ranges = args[0:]
val = ''.join( self.extract_input_slices( ranges ) )
cl.EmptyClipboard()
cl.SetClipboardText( val )
cl.CloseClipboard()
print 'The following text was written to the clipboard'
print val
ip.define_magic( "clip", clip_f )