@@ -147,6 +147,14 @@ def iopub_streaming_output_callback(self, eid, msg):
147
147
msg_content ['text' ], '[stderr:%i] ' % eid , file = sys .stderr
148
148
)
149
149
150
+ if get_ipython () is None :
151
+ return
152
+
153
+ if msg_type == 'display_data' :
154
+ msg_content = msg ['content' ]
155
+ _raw_text ('[output:%i]' % eid )
156
+ self ._republish_displaypub (msg_content , eid )
157
+
150
158
@contextmanager
151
159
def stream_output (self ):
152
160
"""
@@ -593,22 +601,23 @@ def _display_stream(self, text, prefix='', file=None):
593
601
prefix = prefix + '\n '
594
602
print ("%s%s" % (prefix , text ), file = file , end = end )
595
603
596
- def _display_single_result (self , skip_stdout_stderr = False ):
597
- if not skip_stdout_stderr :
604
+ def _display_single_result (self , result_only = False ):
605
+ if not result_only :
598
606
self ._display_stream (self .stdout )
599
607
self ._display_stream (self .stderr , file = sys .stderr )
600
608
if get_ipython () is None :
601
609
# displaypub is meaningless outside IPython
602
610
return
603
611
604
- for output in self .outputs :
605
- self ._republish_displaypub (output , self .engine_id )
612
+ if not result_only :
613
+ for output in self .outputs :
614
+ self ._republish_displaypub (output , self .engine_id )
606
615
607
616
if self .execute_result is not None :
608
617
display (self .get ())
609
618
610
619
@check_ready
611
- def display_outputs (self , groupby = "type" , skip_stdout_stderr = False ):
620
+ def display_outputs (self , groupby = "type" , result_only = False ):
612
621
"""republish the outputs of the computation
613
622
614
623
Parameters
@@ -635,14 +644,14 @@ def display_outputs(self, groupby="type", skip_stdout_stderr=False):
635
644
several plots, and you would like to see all of the first
636
645
plots together, then all of the second plots, and so on.
637
646
638
- skip_stdout_stderr : boolean [default: False]
639
- Only display the display-outputs and execution result and skip stdout
640
- & stderr . Usually used when using streaming output
647
+ result_only : boolean [default: False]
648
+ Only display the execution result and skip stdout, stderr and
649
+ display-outputs . Usually used when using streaming output
641
650
since these outputs would have already been displayed.
642
651
"""
643
652
self .wait_for_output ()
644
653
if self ._single_result :
645
- self ._display_single_result (skip_stdout_stderr = skip_stdout_stderr )
654
+ self ._display_single_result (result_only = result_only )
646
655
return
647
656
648
657
stdouts = self .stdout
@@ -657,25 +666,26 @@ def display_outputs(self, groupby="type", skip_stdout_stderr=False):
657
666
for eid , stdout , stderr , outputs , r , execute_result in zip (
658
667
targets , stdouts , stderrs , output_lists , results , execute_results
659
668
):
660
- if not skip_stdout_stderr :
669
+ if not result_only :
661
670
self ._display_stream (stdout , '[stdout:%i] ' % eid )
662
671
self ._display_stream (stderr , '[stderr:%i] ' % eid , file = sys .stderr )
663
672
664
673
if get_ipython () is None :
665
674
# displaypub is meaningless outside IPython
666
675
continue
667
676
668
- if outputs or execute_result is not None :
677
+ if ( outputs and not result_only ) or execute_result is not None :
669
678
_raw_text ('[output:%i]' % eid )
670
679
671
- for output in outputs :
672
- self ._republish_displaypub (output , eid )
680
+ if not result_only :
681
+ for output in outputs :
682
+ self ._republish_displaypub (output , eid )
673
683
674
684
if execute_result is not None :
675
685
display (r )
676
686
677
687
elif groupby in ('type' , 'order' ):
678
- if not skip_stdout_stderr :
688
+ if not result_only :
679
689
# republish stdout:
680
690
for eid , stdout in zip (targets , stdouts ):
681
691
self ._display_stream (stdout , '[stdout:%i] ' % eid )
@@ -688,24 +698,25 @@ def display_outputs(self, groupby="type", skip_stdout_stderr=False):
688
698
# displaypub is meaningless outside IPython
689
699
return
690
700
691
- if groupby == 'order' :
692
- output_dict = dict (
693
- (eid , outputs ) for eid , outputs in zip (targets , output_lists )
694
- )
695
- N = max (len (outputs ) for outputs in output_lists )
696
- for i in range (N ):
697
- for eid in targets :
698
- outputs = output_dict [eid ]
699
- if len (outputs ) >= N :
701
+ if not result_only :
702
+ if groupby == 'order' :
703
+ output_dict = dict (
704
+ (eid , outputs ) for eid , outputs in zip (targets , output_lists )
705
+ )
706
+ N = max (len (outputs ) for outputs in output_lists )
707
+ for i in range (N ):
708
+ for eid in targets :
709
+ outputs = output_dict [eid ]
710
+ if len (outputs ) >= N :
711
+ _raw_text ('[output:%i]' % eid )
712
+ self ._republish_displaypub (outputs [i ], eid )
713
+ else :
714
+ # republish displaypub output
715
+ for eid , outputs in zip (targets , output_lists ):
716
+ if outputs :
700
717
_raw_text ('[output:%i]' % eid )
701
- self ._republish_displaypub (outputs [i ], eid )
702
- else :
703
- # republish displaypub output
704
- for eid , outputs in zip (targets , output_lists ):
705
- if outputs :
706
- _raw_text ('[output:%i]' % eid )
707
- for output in outputs :
708
- self ._republish_displaypub (output , eid )
718
+ for output in outputs :
719
+ self ._republish_displaypub (output , eid )
709
720
710
721
# finally, add execute_result:
711
722
for eid , r , execute_result in zip (targets , results , execute_results ):
0 commit comments