Matlab:有没有设置'代码折叠'首选项的命令?

问题描述:

为了便于阅读,我使用%%命令将代码拆分为块,
当我不在其中时,我折叠这些块。
默认设置不给你折它们的能力,所以我的第一个问题是:Matlab:有没有设置'代码折叠'首选项的命令?

您能通过指令调整该设置,所以谁打开我的脚本任何人有折叠的选项?

我的第二个问题是:我可以编程我的代码,将块设置为默认折叠状态?

在此先感谢

+0

我不认为这是可能的编程。即使它是/,我强烈建议不要修改任何使用你的代码的用户的MATLAB偏好。 – MrAzzaman 2014-11-04 22:41:41

这确实是可能的

1)在命令窗口中键入preference起床偏好菜单(或你找到下

2)围棋编辑器/调试器 - >代码折叠

3)标记启用框为部分

+0

感谢您的回答,但我实际上是想在自己的脚本开始时通过commmand自动检查首选项中的“代码折叠”。那样会有结果;任何人打开我的脚本可以折叠块。如果这些块已经处于折叠状态,那么效果最好。 – Bart 2014-11-05 15:30:19

+1

所以命令会是这样的:'首选编辑器(codefolding = 1);' – Bart 2014-11-05 15:33:04

+0

我还没有听说过这样的。无论如何,首选项都很容易设置。但是,你有没有对此抱怨?我相信,人们通常会做他们觉得最方便的事情。这意味着如果他们在代码折叠时遇到问题,他们会打开首选项并进行修复。并非所有人都想要默认代码折叠。我觉得很难找到跨越多个块的变量。如果你有这么长的功能,你需要对代码段进行代码折叠,所以我建议尽量缩短功能。但是,我不能判断,如果你想编码折叠使用它。 – patrik 2014-11-06 07:41:55

你可以换用以下方式你的部分:

%% //Section header 
for folding=true 

%// Your code here 

end %//folding 

这使您可以折叠在for“循环”。

它适用于每个拥有相当新近的Matlab编辑器的人,而不会搞乱编辑器设置。

请注意,您不应该有一个名为folding的实际变量。

是的,这是完全可能的:

com.mathworks.services.Prefs.setBooleanPref('EditorMCodeFoldEnabledcell', true); 

的命令立即生效。在文章Changing system preferences programmatically中查找更多信息。