I really apologize for the confusion.  <br><br>As per MinRK, the actual fix is updating CodeMirror and have nothing to do with the commit.<br>My mistake.   I also had an updated version of CodeMirror. And I&#39;d guess browser cache was messing my tests.<br>

<br>Dmitry<br><br><br>Just in case, here are the steps to fix the issue:<br>==== Under root:  ====<br>cd ipython-0.13-py2.7.egg/IPython/frontend/html/notebook/static   <br>mv codemirror  codemirror.orig<br>wget <a href="http://codemirror.net/codemirror.zip">http://codemirror.net/codemirror.zip</a><br>

unzip codemirror.zip<br>mv CodeMirror-2.3 codemirror<br><br>Update codemirror/mode/python/python.js  as per  codemirror.orig/README-IPython.rst.<br> (it is a one-line change, add `\\?` to the end of singleOperators definition at line 8 chr 62)<br>

==================<br><br><br><div class="gmail_quote">On Sat, Jul 14, 2012 at 4:02 PM, MinRK <span dir="ltr">&lt;<a href="mailto:benjaminrk@gmail.com" target="_blank">benjaminrk@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="im">On Sat, Jul 14, 2012 at 3:20 PM, Dmitry Chichkov &lt;<a href="mailto:dchichkov@gmail.com">dchichkov@gmail.com</a>&gt; wrote:<br>
&gt; Yes, actually, one that works for me is &#39;return false&#39;:<br>
&gt;<br>
&gt;<br>
&gt; else if (event.which === key.SHIFT) {<br>
&gt;    // ignore shift keydown<br>
&gt;    return false;<br>
&gt; }<br>
&gt;<br>
&gt; I was trying out &#39;commenting out&#39; version after I&#39;ve found that return false<br>
&gt; worked. And working version was still in the  browser cache. Regarding<br>
&gt; &quot;ctrl+m-shift+&lt;key&gt;&quot; - I don&#39;t use it. So, I don&#39;t know, if returning false<br>
&gt; breaks it or not.<br>
<br>
</div>Okay, thanks.  `return false` is fine for the existing case, the only<br>
important thing is that it returns without resetting the control_key<br>
state, so it sounds like that is the right fix.<br>
<span class="HOEnZb"><font color="#888888"><br>
-MinRK<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
&gt;<br>
&gt; Dmitry<br>
&gt;<br>
&gt;<br>
&gt; On Sat, Jul 14, 2012 at 11:52 AM, MinRK &lt;<a href="mailto:benjaminrk@gmail.com">benjaminrk@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; I commented this out, and shift-ins paste still doesn&#39;t work for me.<br>
&gt;&gt; I also don&#39;t see how this would be any different, as the same event<br>
&gt;&gt; will just skip all the following handlers, and return True at the end<br>
&gt;&gt; of the function (after restoring control_key_active=false, which is<br>
&gt;&gt; the behavior this is meant to avoid).<br>
&gt;&gt;<br>
&gt;&gt; Of course, commenting it out is obviously the wrong answer, as that<br>
&gt;&gt; necessarily re-breaks the thing that commit fixed<br>
&gt;&gt; (ctrl+m-shift+&lt;key&gt;).  What should the real event be?  Should it<br>
&gt;&gt; return False?<br>
&gt;&gt;<br>
&gt;&gt; On Sat, Jul 14, 2012 at 7:03 AM, klo uo &lt;<a href="mailto:klonuo@gmail.com">klonuo@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; Great Dmirty, I already reported the issue also on github<br>
&gt;&gt; &gt; <a href="https://github.com/ipython/ipython/issues/2113" target="_blank">https://github.com/ipython/ipython/issues/2113</a> but someone tagged it<br>
&gt;&gt; &gt; as feature request instead bug<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Are you saying that by commenting that line everything works as<br>
&gt;&gt; &gt; expected and it does not affect Notebook in any way?<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Fri, Jul 13, 2012 at 9:51 PM, Dmitry Chichkov &lt;<a href="mailto:dchichkov@gmail.com">dchichkov@gmail.com</a>&gt;<br>
&gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt; It looks like broken &quot;Shift-Ins&quot; paste in Notebook is have something to<br>
&gt;&gt; &gt;&gt; do<br>
&gt;&gt; &gt;&gt; with the following code in the<br>
&gt;&gt; &gt;&gt; IPython/frontend/html/notebook/static/js/notebook.js :<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; else if (event.which === key.SHIFT) {<br>
&gt;&gt; &gt;&gt;    // ignore shift keydown<br>
&gt;&gt; &gt;&gt;    return true;<br>
&gt;&gt; &gt;&gt; }<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; If I&#39;m commenting it out, shift-insert paste starts working again.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; It looks like this code was introduced in the following commit 8dc3ac7<br>
&gt;&gt; &gt;&gt; -<br>
&gt;&gt; &gt;&gt; &quot;prevented case-sensitive shortcuts if shift was pressed after control<br>
&gt;&gt; &gt;&gt; key:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; <a href="https://github.com/ipython/ipython/commit/8dc3ac7c3961a5486aeb8552d772e7be45c6128f" target="_blank">https://github.com/ipython/ipython/commit/8dc3ac7c3961a5486aeb8552d772e7be45c6128f</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Dmitry<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Don&#39;t know what OS you run, but FYI Alt-Enter doesn&#39;t seem to do<br>
&gt;&gt; &gt;&gt;&gt; anything on Windows in both Firefox and Chrome.<br>
&gt;&gt; &gt;&gt;&gt; &gt;From the user point of view, your suggestion for executing and<br>
&gt;&gt; &gt;&gt;&gt; appending new cell in one shortcut, looks interesting to me<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; While here, I don&#39;t want to steal your topic, but as I opened it<br>
&gt;&gt; &gt;&gt;&gt; because you mentioned modifiers, I noticed strange behavior and I&#39;m<br>
&gt;&gt; &gt;&gt;&gt; not sure if it&#39;s the way it should be: CUI clipboard commands, which<br>
&gt;&gt; &gt;&gt;&gt; are handy in Notebook environment, behave like this on my PC:<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;  - Ctrl-Ins (Copy) - copies selection to clipboard (as expected)<br>
&gt;&gt; &gt;&gt;&gt;  - Shift-Del (Cut) - deletes selection (can be easily mistaken that<br>
&gt;&gt; &gt;&gt;&gt; contents is cut to clipboard)<br>
&gt;&gt; &gt;&gt;&gt;  - Shift-Ins (Paste) - doesn&#39;t paste but triggers Insert<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; so it looks like some changes to Shift modifier has something to do<br>
&gt;&gt; &gt;&gt;&gt; with this unfortunate behavior.<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; On Mon, Jul 2, 2012 at 7:30 PM, Zoltán Vörös &lt;<a href="mailto:zvoros@gmail.com">zvoros@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;&gt; &gt; Hi All,<br>
&gt;&gt; &gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt; I know that since the notebook is supported on many platforms and on<br>
&gt;&gt; &gt;&gt;&gt; &gt; many browsers, the intersection of the many sets containing<br>
&gt;&gt; &gt;&gt;&gt; &gt; modifiers is<br>
&gt;&gt; &gt;&gt;&gt; &gt; somewhat limited, so I would like to ask, whether something like<br>
&gt;&gt; &gt;&gt;&gt; &gt; Alt+Enter would work on all systems. What I would like to suggest (I<br>
&gt;&gt; &gt;&gt;&gt; &gt; can<br>
&gt;&gt; &gt;&gt;&gt; &gt; also implement it, if I am given the go-ahead) is a shortcut for<br>
&gt;&gt; &gt;&gt;&gt; &gt; Shift+Enter + Control-m a. Many a time, I find myself going back to<br>
&gt;&gt; &gt;&gt;&gt; &gt; a<br>
&gt;&gt; &gt;&gt;&gt; &gt; piece of code in the middle of the notebook, and after entering a<br>
&gt;&gt; &gt;&gt;&gt; &gt; statement, I would like to get a new code cell at that particular<br>
&gt;&gt; &gt;&gt;&gt; &gt; place.<br>
&gt;&gt; &gt;&gt;&gt; &gt; Control+Enter takes me back to the cell, and Shift+Enter jumps to<br>
&gt;&gt; &gt;&gt;&gt; &gt; the<br>
&gt;&gt; &gt;&gt;&gt; &gt; next cell. I think, such an addition would be useful, but I don&#39;t<br>
&gt;&gt; &gt;&gt;&gt; &gt; know<br>
&gt;&gt; &gt;&gt;&gt; &gt; what the allowed modifiers are.<br>
&gt;&gt; &gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt; Any comments or suggestions?<br>
&gt;&gt; &gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt; Cheers,<br>
&gt;&gt; &gt;&gt;&gt; &gt; Zoltán<br>
&gt;&gt; &gt;&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt;&gt;&gt; &gt; IPython-dev mailing list<br>
&gt;&gt; &gt;&gt;&gt; &gt; <a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
&gt;&gt; &gt;&gt;&gt; &gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; _______________________________________________<br>
&gt;&gt; &gt;&gt; IPython-dev mailing list<br>
&gt;&gt; &gt;&gt; <a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
&gt;&gt; &gt;&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; IPython-dev mailing list<br>
&gt;&gt; &gt; <a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
&gt;&gt; &gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; IPython-dev mailing list<br>
&gt;&gt; <a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
&gt;&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; IPython-dev mailing list<br>
&gt; <a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
&gt;<br>
_______________________________________________<br>
IPython-dev mailing list<br>
<a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
</div></div></blockquote></div><br>