有没有办法在常规脚本中折叠Live Scripts中的代码段?
我试图在首选项中查找并启用所有类型的折叠,但它们都与Live Scripts无关。我希望它能够工作,因为%%
的符号在两种类型的脚本中都是相似的。
知道如何启用/解决此问题吗?
答案 0 :(得分:1)
不,我不相信你能做到这一点。不过,这似乎是一件好事,所以我会向MathWorks输入一个增强请求。我没有建议解决方法,我很害怕。
答案 1 :(得分:1)
我知道这已经很老了,但是如果有人怀疑,以下是我提交增强功能请求时技术支持向我建议的解决方法。如果读者仍然希望看到此功能添加到实时编辑器中,我鼓励读者通过提交请求来增加投票。
转换为M文件并使用“ showcode”为false的“发布”。首先,将实时脚本转换为M文件。您可以以交互方式进行 通过单击“另存为”,然后在菜单中选择“ M”文件选项 “文件类型”部分,或者您可以通过编程方式执行以下操作:
>> matlab.internal.liveeditor.openAndConvert('live_script_to_be_converted.mlx', 'output_script.m');
一旦您拥有包含所有分节符的转换后的M文件 和格式,您可以按如下方式使用“发布”功能 MATLAB命令窗口:
>> options.format ='pdf';
>> options.showCode = false;
>> publish('output_script.m',options)这会将PDF文件发布到内部名为“ html”的子目录中 当前工作目录。
此处是“发布”功能的文档链接, 具体来说,“ showCode”选项: https://www.mathworks.com/help/matlab/ref/publish.html#input_argument_namevalue_d119e823467
请注意,将MLX文件另存为M文件然后发布时, 它不会将LaTeX表达式转换为可读的内容。它 还会自动在开始处插入目录。
将代码封装在另一个脚本或函数中。另一种方法是让您封装要隐藏在其中的代码 另一个脚本或函数,然后从您发布的Live中调用它 脚本。例如,类似:
>> %%现在绘制一个图
>> functionThatPlotsAFigure在这种情况下,不是发布所有绘图代码,而是仅 绘图功能的调用将被发布。
- 将实时脚本发布为HTML,然后修改HTML页面以隐藏代码部分,然后将其发布为PDF。
上述选项只是解决方法,因为我们目前尚不具备此功能。已经向我们的开发人员提交了添加此功能的请求,他们正在考虑在将来的MATLAB版本中使用此功能。感谢您在我们不断努力改善产品质量方面的反馈。