Reputation: 273
When I load ipython with any one of:
ipython qtconsole
ipython qtconsole --pylab
ipython qtconsole --pylab inline
The output buffer only holds the last 500 lines. To see this run:
for x in range(0, 501):
...: print x
Is there a configuration option for this? I've tried adjusting --cache-size but this does not seem to make a difference.
Upvotes: 12
Views: 3935
Reputation: 102842
The accepted answer is no longer correct if you are using Jupyter. Instead, the command line option should be:
jupyter qtconsole --ConsoleWidget.buffer_size=5000
You can choose whatever value you want, just make it larger than the default of 500.
If you want to make this permanent, go to your home directory - C:\Users\username
, /Users/username
, or /home/username
- then go into the .jupyter
folder (create it if it doesn't exist), then create the file jupyter_qtconsole_config.py
and open it up in your favorite editor. Add the following line:
c.ConsoleWidget.buffer_size=5000
Again, the number can be anything, just as long as it is an integer larger than 500. Don't worry that c
isn't defined in this particular file, it is already defined elsewhere in the startup machinery.
Thanks to @firescape for the pointer in the right direction.
Upvotes: 0
Reputation: 38588
Quickly:
ipython qtconsole --IPythonWidget.buffer_size=1000
Or you can set it permanently by adding:
c.IPythonWidget.buffer_size=1000
in your ipython config file.
For discovering this sort of thing, a helpful trick is:
ipython qtconsole --help-all | grep PATTERN
For instance, you already had 'buffer', so:
$> ipython qtconsole --help-all | grep -C 3 buffer
...
--IPythonWidget.buffer_size=<Integer>
Default: 500
The maximum number of lines of text before truncation. Specifying a non-
positive number disables text truncation (not recommended).
If IPython used a different name than you expect and that first search turned up nothing, then you could use 500
, since you knew what the value was that you wanted to change, which would also find the relevant config.
Upvotes: 17