How to call a value from the command window to the editor window

7 views (last 30 days)
MATLAB
How to call a value from the command window to the editor window, while the value does not appear on the workspace. the value appears after using a .p code!
For example:
Editor:
A = TSystemT(B,C) % <------- this is calling the .p code called TSystemT
Command Window:
The value is 123 <---- this appears on the command window when running A = TSystemT(B,C)
Now I want to somehow import the value shown on the command window which is "123" to the Editor
like D = the value is shown on the command window

Answers (2)

Jan
Jan on 24 Nov 2021
Is it really a small integer? Then simply type "123". If it is a much more complicated nested struct, please explain this. It matters, which kind of variable you want to import as code.
What about inserting this line in the function:
D = TSystemT(B,C);
  2 Comments
Jan
Jan on 24 Nov 2021
Do you want to do this once or frequently? For doing this once, copy&paste is the simple solution. To do this automatically, there are different options:
  1. evalc (see Stephen's answer). Then you have to parse the output.
  2. You can move the P-file to a specific folder and shadow the built-in functions disp and fprintf. The user-defined versions have to store the output in a persistent variable and flush it for a specific input later on, if they are called from the function. This is a very complicated way to obtain the data. It would be much easier to ask the author of the P-function to create a version with a smarter output of the results.

Sign in to comment.


Stephen23
Stephen23 on 24 Nov 2021
Edited: Stephen23 on 24 Nov 2021
Ugh, P-Files.
and then parsing the string that it returns,e.g. using regular expressions. Not very pretty, but it might work:
[txt,A] = evalc('TSystemT(B,C)')

Tags

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!