Redirecting CellPrint outputCan I Print to a different notebook? (within the context of the same...
Why is it "take a leak?"
Formatting a table to look nice
Specific Chinese carabiner QA?
A bug in Excel? Conditional formatting for marking duplicates also highlights unique value
Was it really inappropriate to write a pull request for the company I interviewed with?
Plagiarism of code by other PhD student
If nine coins are tossed, what is the probability that the number of heads is even?
Sometimes a banana is just a banana
Misplaced tyre lever - alternatives?
Where is the fallacy here?
Redirecting CellPrint output
It doesn't matter the side you see it
Is there a math equivalent to the conditional ternary operator?
When was drinking water recognized as crucial in marathon running?
Relationship between the symmetry number of a molecule as used in rotational spectroscopy and point group
Caulking a corner instead of taping with joint compound?
Can I solder 12/2 Romex to extend wire 5 ft?
3.5% Interest Student Loan or use all of my savings on Tuition?
Are there other characters in the Star Wars universe who had damaged bodies and needed to wear an outfit like Darth Vader?
Should I use HTTPS on a domain that will only be used for redirection?
Book about a time-travel war fought by computers
Being asked to review a paper in conference one has submitted to
Is every open circuit a capacitor?
Correct physics behind the colors on CD (compact disc)?
Redirecting CellPrint output
Can I Print to a different notebook? (within the context of the same kernel)Temporarily redirect the output of Print[ ] to a second fileA notebook created on demand from a main document showing executable input along with output cellsConsecutive Print to target same output CellConditional printed outputWhy TeXForm[] do not display to notebook if followed by OutputForm[] in same cell?Temporary/popup Output Progress BoxesHow to find the last output cell of the group to which a certain cell belongs?Delete Cell Inside of ModulePrint SlideShowSaving all cell-groups to pdfs with filenamesDelete all output in notebooks
$begingroup$
How can I make g[];
or h[];
print the same output as f[];
? I am trying to capture the output of one function and put it in a document elsewhere, but the CellPrint
output is not cooperating.
f[] := Module[{},
Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print = AppendTo[printlist, {##}] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
f[];
g[];
notebooks cells monitoring
$endgroup$
add a comment |
$begingroup$
How can I make g[];
or h[];
print the same output as f[];
? I am trying to capture the output of one function and put it in a document elsewhere, but the CellPrint
output is not cooperating.
f[] := Module[{},
Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print = AppendTo[printlist, {##}] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
f[];
g[];
notebooks cells monitoring
$endgroup$
add a comment |
$begingroup$
How can I make g[];
or h[];
print the same output as f[];
? I am trying to capture the output of one function and put it in a document elsewhere, but the CellPrint
output is not cooperating.
f[] := Module[{},
Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print = AppendTo[printlist, {##}] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
f[];
g[];
notebooks cells monitoring
$endgroup$
How can I make g[];
or h[];
print the same output as f[];
? I am trying to capture the output of one function and put it in a document elsewhere, but the CellPrint
output is not cooperating.
f[] := Module[{},
Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print = AppendTo[printlist, {##}] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[#, "Print"] & /@
Flatten[printlist, 1]]
f[];
g[];
notebooks cells monitoring
notebooks cells monitoring
edited 4 hours ago
Kuba♦
106k12206529
106k12206529
asked 4 hours ago
Chris DegnenChris Degnen
22k23787
22k23787
add a comment |
add a comment |
3 Answers
3
active
oldest
votes
$begingroup$
a) notice that depending on the settings Print
may be printed to the MessagesNotebook
while CellPrint
always goes to the parent notebook.
b) I'm not sure what is the context so I will just leave those links here:
Can I Print to a different notebook? (within the context of the same kernel)
Temporarily redirect the output of Print[ ] to a second file
c) the answer:
The problem is that you are doing CellPrint @ ExpressionCell @ Cell[...
. Here is what you can do:
f[] := Module[{}, Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print =
AppendTo[printlist, ExpressionCell[Row[{##}], "Print"]] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, Flatten[printlist, 1]]
h[] := CreateDocument[Flatten[printlist, 1]]
f[];
g[];
$endgroup$
add a comment |
$begingroup$
Why not wrap ExpressionCell
only around Print
calls? For example:
printlist={};
Block[
{
Print = AppendTo[printlist, Thread[ExpressionCell[{##}, "Print"]]]&,
CellPrint = AppendTo[printlist, #]&
},
f[]
];
g[] := CellPrint /@ Flatten @ printlist
h[] := CreateDocument[
Flatten @ printlist
]
Then:
g[];
and:
nb = h[];
CurrentNotebookImage[nb]
seem to do what you want.
$endgroup$
add a comment |
$begingroup$
CellPrint >> Details
:
In CellPrint[expr]
:
If expr has head TextCell, ExpressionCell, or CellGroup, it is inserted unchanged into the notebook.
So changing heads Cell
to Sequence
in the first argument of ExpressionCell
works:
ClearAll[g, h]
g[] := Map[CellPrint, ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
g[];
h[]
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "387"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f192754%2fredirecting-cellprint-output%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
a) notice that depending on the settings Print
may be printed to the MessagesNotebook
while CellPrint
always goes to the parent notebook.
b) I'm not sure what is the context so I will just leave those links here:
Can I Print to a different notebook? (within the context of the same kernel)
Temporarily redirect the output of Print[ ] to a second file
c) the answer:
The problem is that you are doing CellPrint @ ExpressionCell @ Cell[...
. Here is what you can do:
f[] := Module[{}, Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print =
AppendTo[printlist, ExpressionCell[Row[{##}], "Print"]] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, Flatten[printlist, 1]]
h[] := CreateDocument[Flatten[printlist, 1]]
f[];
g[];
$endgroup$
add a comment |
$begingroup$
a) notice that depending on the settings Print
may be printed to the MessagesNotebook
while CellPrint
always goes to the parent notebook.
b) I'm not sure what is the context so I will just leave those links here:
Can I Print to a different notebook? (within the context of the same kernel)
Temporarily redirect the output of Print[ ] to a second file
c) the answer:
The problem is that you are doing CellPrint @ ExpressionCell @ Cell[...
. Here is what you can do:
f[] := Module[{}, Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print =
AppendTo[printlist, ExpressionCell[Row[{##}], "Print"]] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, Flatten[printlist, 1]]
h[] := CreateDocument[Flatten[printlist, 1]]
f[];
g[];
$endgroup$
add a comment |
$begingroup$
a) notice that depending on the settings Print
may be printed to the MessagesNotebook
while CellPrint
always goes to the parent notebook.
b) I'm not sure what is the context so I will just leave those links here:
Can I Print to a different notebook? (within the context of the same kernel)
Temporarily redirect the output of Print[ ] to a second file
c) the answer:
The problem is that you are doing CellPrint @ ExpressionCell @ Cell[...
. Here is what you can do:
f[] := Module[{}, Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print =
AppendTo[printlist, ExpressionCell[Row[{##}], "Print"]] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, Flatten[printlist, 1]]
h[] := CreateDocument[Flatten[printlist, 1]]
f[];
g[];
$endgroup$
a) notice that depending on the settings Print
may be printed to the MessagesNotebook
while CellPrint
always goes to the parent notebook.
b) I'm not sure what is the context so I will just leave those links here:
Can I Print to a different notebook? (within the context of the same kernel)
Temporarily redirect the output of Print[ ] to a second file
c) the answer:
The problem is that you are doing CellPrint @ ExpressionCell @ Cell[...
. Here is what you can do:
f[] := Module[{}, Print["Bob"];
CellPrint[Cell["", Background -> Blue, "Print"]];
Print["Bill"]]
printlist = {};
Block[{Print =
AppendTo[printlist, ExpressionCell[Row[{##}], "Print"]] &,
CellPrint = AppendTo[printlist, {##}] &}, f[]];
g[] := Map[CellPrint, Flatten[printlist, 1]]
h[] := CreateDocument[Flatten[printlist, 1]]
f[];
g[];
answered 4 hours ago
Kuba♦Kuba
106k12206529
106k12206529
add a comment |
add a comment |
$begingroup$
Why not wrap ExpressionCell
only around Print
calls? For example:
printlist={};
Block[
{
Print = AppendTo[printlist, Thread[ExpressionCell[{##}, "Print"]]]&,
CellPrint = AppendTo[printlist, #]&
},
f[]
];
g[] := CellPrint /@ Flatten @ printlist
h[] := CreateDocument[
Flatten @ printlist
]
Then:
g[];
and:
nb = h[];
CurrentNotebookImage[nb]
seem to do what you want.
$endgroup$
add a comment |
$begingroup$
Why not wrap ExpressionCell
only around Print
calls? For example:
printlist={};
Block[
{
Print = AppendTo[printlist, Thread[ExpressionCell[{##}, "Print"]]]&,
CellPrint = AppendTo[printlist, #]&
},
f[]
];
g[] := CellPrint /@ Flatten @ printlist
h[] := CreateDocument[
Flatten @ printlist
]
Then:
g[];
and:
nb = h[];
CurrentNotebookImage[nb]
seem to do what you want.
$endgroup$
add a comment |
$begingroup$
Why not wrap ExpressionCell
only around Print
calls? For example:
printlist={};
Block[
{
Print = AppendTo[printlist, Thread[ExpressionCell[{##}, "Print"]]]&,
CellPrint = AppendTo[printlist, #]&
},
f[]
];
g[] := CellPrint /@ Flatten @ printlist
h[] := CreateDocument[
Flatten @ printlist
]
Then:
g[];
and:
nb = h[];
CurrentNotebookImage[nb]
seem to do what you want.
$endgroup$
Why not wrap ExpressionCell
only around Print
calls? For example:
printlist={};
Block[
{
Print = AppendTo[printlist, Thread[ExpressionCell[{##}, "Print"]]]&,
CellPrint = AppendTo[printlist, #]&
},
f[]
];
g[] := CellPrint /@ Flatten @ printlist
h[] := CreateDocument[
Flatten @ printlist
]
Then:
g[];
and:
nb = h[];
CurrentNotebookImage[nb]
seem to do what you want.
answered 4 hours ago
Carl WollCarl Woll
69.3k393179
69.3k393179
add a comment |
add a comment |
$begingroup$
CellPrint >> Details
:
In CellPrint[expr]
:
If expr has head TextCell, ExpressionCell, or CellGroup, it is inserted unchanged into the notebook.
So changing heads Cell
to Sequence
in the first argument of ExpressionCell
works:
ClearAll[g, h]
g[] := Map[CellPrint, ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
g[];
h[]
$endgroup$
add a comment |
$begingroup$
CellPrint >> Details
:
In CellPrint[expr]
:
If expr has head TextCell, ExpressionCell, or CellGroup, it is inserted unchanged into the notebook.
So changing heads Cell
to Sequence
in the first argument of ExpressionCell
works:
ClearAll[g, h]
g[] := Map[CellPrint, ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
g[];
h[]
$endgroup$
add a comment |
$begingroup$
CellPrint >> Details
:
In CellPrint[expr]
:
If expr has head TextCell, ExpressionCell, or CellGroup, it is inserted unchanged into the notebook.
So changing heads Cell
to Sequence
in the first argument of ExpressionCell
works:
ClearAll[g, h]
g[] := Map[CellPrint, ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
g[];
h[]
$endgroup$
CellPrint >> Details
:
In CellPrint[expr]
:
If expr has head TextCell, ExpressionCell, or CellGroup, it is inserted unchanged into the notebook.
So changing heads Cell
to Sequence
in the first argument of ExpressionCell
works:
ClearAll[g, h]
g[] := Map[CellPrint, ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
h[] := CreateDocument[ExpressionCell[# /. Cell -> Sequence, "Print"] & /@
Flatten[printlist, 1]]
g[];
h[]
edited 1 hour ago
answered 3 hours ago
kglrkglr
187k10203421
187k10203421
add a comment |
add a comment |
Thanks for contributing an answer to Mathematica Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f192754%2fredirecting-cellprint-output%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown