是否有一种自动方法来检索 matlab 编辑器和命令窗口的选项卡大小?是的,您可以打开首选项窗口并自行查找,但我希望它是自动化的。实际上我认为这可以推广到检索any下面的屏幕截图中显示了这些用户偏好。
我很快找到了解决方案,经过深思熟虑后,最好分享此链接:
http://undocumentedmatlab.com/blog/changing-system-preferences-programmatically/ http://undocumentedmatlab.com/blog/changing-system-preferences-programmatically/
所以你要做的是:
-
打开首选项文件并查找您要读取的首选项:
edit(fullfile(prefdir,'matlab.prf'));
就我而言,是这些行CommandWindowSpacesPerTab=I4
and EditorSpacesPerTab=I4
看起来很有希望。我认为 I 代表类型(整数)。
-
通过加载值来测试它:
com.mathworks.services.Prefs.get<type>Pref(<pref-name>)
就我而言:
>> com.mathworks.services.Prefs.getIntegerPref('EditorSpacesPerTab')
ans =
4
与这个问题还有一个小的重叠:在 matlab 中保存设置 https://stackoverflow.com/questions/2003382/saving-settings-in-matlab
EDIT:显然,在使用此功能时,它不会读取首选项的默认值。即:当您尚未更改首选项的值时,该值不会保存到首选项文件中,因此无法以这种方式加载。这些函数仅返回 0。目前,我正在手动检测这种情况:
if loadedpref==0
set default
end
EDIT2:我还在linux命令行中使用matlab,它有自己的选项卡设置(通常默认为8)。为了检测这种情况,我使用了以下方法:
function retval = isCommandWindowOpen()
jDesktop = com.mathworks.mde.desk.MLDesktop.getInstance;
retval = ~isempty(jDesktop.getClient('Command Window'));
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)