##// END OF EJS Templates
Added GTK support to ZeroMQ kernel....
Added GTK support to ZeroMQ kernel. We use an approach which is a combination of an gtk timer callback into our execution loop, like we do for Qt and Wx, I've run as tests several GTK examples found on the net, as well as multiple matplotlib scripts, and so far everything works as expected. The only catch is that we silently trap gtk.main_quit(), so examples that call it with a 'close' button or similar seem to not do anything. But their windows close normally and no other problems have been found. This solution uses code taken from an old bug report of ours: https://bugs.launchpad.net/ipython/+bug/270856 specifically the attachment in this comment: https://bugs.launchpad.net/ipython/+bug/270856/comments/6 along with the changes suggested by Michiel de Hoon there. Thanks to Ville and Michiel for that old discussion, which put me on the right track to figure out the details of the logic needed for GTK.

File last commit:

r2267:928c921b
r2949:13751b1c
Show More
ipy_defaults.py
62 lines | 1.4 KiB | text/x-python | PythonLexer
fperez
Fix win32 line endings.
r281 """ Set default options for IPython.
Just import this module to get reasonable defaults for everything.
These configurations used to be performed in ipythonrc (or ipythonrc.ini).
Therefore importing this in your config files makes ipython basically
ignore your ipythonrc. This is *not* imported by default, you need to import
this manually in one of your config files.
You can further override these defaults in e.g. your ipy_user_config.py,
ipy_profile_PROFILENAME etc.
"""
Brian Granger
rlineimpl.py utils/rlineimpl.py and imports updated.
r2044 import IPython.utils.rlineimpl as readline
Brian Granger
ipapi.py => core/ipapi.py and imports updated.
r2027 from IPython.core import ipapi
ip = ipapi.get()
fperez
Fix win32 line endings.
r281
fperez
One more getters fix...
r286 o = ip.options
fperez
Fix win32 line endings.
r281
o.colors = "Linux"
o.color_info=1
o.confirm_exit=1
o.pprint=1
o.multi_line_specials=1
o.xmode="Context"
o.prompt_in1='In [\#]: '
o.prompt_in2 =' .\D.: '
o.prompt_out = 'Out[\#]: '
o.prompts_pad_left=1
vivainio
set autoindent ON in ipy_defaults.py
r705 o.autoindent = 1
fperez
Fix win32 line endings.
r281 o.readline_remove_delims="-/~"
o.readline_merge_completions=1
o.readline = 1
rlopts = """\
tab: complete
"\C-l": possible-completions
set show-all-if-ambiguous on
"\C-o": tab-insert
"\M-i": " "
"\M-o": "\d\d\d\d"
"\M-I": "\d\d\d\d"
"\C-r": reverse-search-history
"\C-s": forward-search-history
"\C-p": history-search-backward
"\C-n": history-search-forward
"\e[A": history-search-backward
"\e[B": history-search-forward
"\C-k": kill-line
"\C-u": unix-line-discard"""
jstenar
check if readline is available before calling readline functions in ipy_defaults.py
r537 if readline.have_readline:
for cmd in rlopts.split('\n'):
readline.parse_and_bind(cmd)
fperez
Fix win32 line endings.
r281