How to get the current running mlx filename?

8 次查看(过去 30 天)
Hi, I'm trying to obtain a livescript's filename during its execution...
I've tried using mfilename as it works for regular scripts but when I use it with a .mlx it outputs : "LiveEditorEvaluationHelperEXXXXXXXXXX" with X being a series of digits.
I've also tried using fileparts but it only works with an open file, and I don't necessarily want to open my scripts before running them.
Would anyone know a work-around or a different way of obtaining a livescript's name during its execution?
  1 个评论
Rik
Rik 2024-10-15
Unfortunately, as fas as I can tell, there is no general way.
You can use the editor to report the currently opened file, but that only works if the currently running live script is indeed the the active file in the editor.

请先登录,再进行评论。

采纳的回答

Shubham
Shubham 2024-10-15
编辑:Shubham 2024-10-17
Hey Dorian,
As far as I understand, Live editors do not execute the .MLX script directly. For running the code, temporary files are created for the code section which are then evaluated and ran. Hence it is difficult to extract the file information in the case of Live Script. For more information, please refer to the following comment on a similar MATLAB Answers post: https://www.mathworks.com/matlabcentral/answers/9907-is-there-a-function-that-retrieves-the-filename-of-the-current-script#comment_759325
As you mentioned, you can use the fileparts function to get the name of the file when it is active (opened). However, since you mentioned that you may like to execute the live scripts without opening them, I would think that you could rather have it run as .M script. The mfilename function would run as expected if the script is run as .M file.
You can also programmatically convert the .MLX script into .M as mentioned in the following post: https://www.mathworks.com/matlabcentral/answers/271478-how-do-i-go-between-plain-scripts-m-and-live-scripts-mlx
However, for a more appropriate workaround, I would suggest you to raise a service request here: https://www.mathworks.com/support/contact_us.html?s_tid=hc_trail
I hope this helps!

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Adding custom doc 的更多信息

产品


版本

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by