##// END OF EJS Templates
Avoid calling the input transformer twice in the execution stack....
Avoid calling the input transformer twice in the execution stack. This should allow to register input transformers that have side effects, at least in Notebooks. Right now there are sill multiple calls which may happen in the terminal on execution requests.

File last commit:

r20278:8f4dcac7
r25891:d5a8359c
Show More
Test Output Callbacks.ipynb
291 lines | 4.6 KiB | text/plain | TextLexer
/ tools / tests / Test Output Callbacks.ipynb

Basic Output

In [ ]:
from IPython.display import display
In [ ]:
print('hi')
In [ ]:
display('hi')
In [ ]:
1
In [ ]:
%matplotlib inline
import matplotlib.pyplot as plt
plt.plot([1,3,2])
In [ ]:
%%javascript
console.log("I ran!");
In [ ]:
%%html
<b>bold</b>
In [ ]:
%%latex
$$
a = 5
$$

input_request

In [ ]:
raw_input("prompt > ")

set_next_input

In [ ]:
%%writefile tst.py
def foo():
    pass
In [ ]:
%load tst.py

Pager in execute_reply

In [ ]:
plt?

object_info

In [ ]:
# press shift-tab after parentheses
int(

complete

In [ ]:
# press tab after f
f

clear_output

In [ ]:
import sys, time
from IPython.display import clear_output
In [ ]:
for i in range(10):
    clear_output()
    time.sleep(0.25)
    print(i)
    sys.stdout.flush()
    time.sleep(0.25)
In [ ]:
for i in range(10):
    clear_output(wait=True)
    time.sleep(0.25)
    print(i)
    sys.stdout.flush()
In [ ]: