据我所知,这是不可能的,也不是MathWorks的意图。我也不知道这样做的无证方式。据我所知,doc的关键字在某处是硬编码的。
根据您的设置,您可以尝试以下操作:准备您自己的doc命令,该命令使用web(..., '-helpbrowser')在MATLAB的帮助浏览器中显示HTML页面:
function doc(topic)
my_topics = {
'foo', 'foo.html'
'bar', 'bar/help/intro.html'
};
for i = 1 : size(my_topics, 1)
if strcmpi(topic, my_topics{i, 1})
web(my_topics{i, 2}, '-helpbrowser');
return;
end
end
% Fall back to MATLAB's doc. Note that our doc shadows MATLAB's doc.
docs = which('doc', '-all');
old_dir = cd();
c = onCleanup(@() cd(old_dir));
cd(fileparts(docs{2}));
doc(topic);
end
如果将该函数放在文件doc.m中并将相应的目录放在MATLAB路径的开头(参见help addpath),那么将调用它而不是内置的{{1 }}
当然,您可以使用其他地方来存储自定义文档映射(例如文件)或使用某种动态查找方案。
更新:自MATLAB R2012b起,doc的{{1}}选项未记录。这可能与MATLAB版本中的GUI更改有关,其中还包括帮助浏览器。 '-helpbrowser'仍然按预期工作,但在将来的MATLAB版本中可能会有所改变。据我所知,没有记录在R2012b的帮助浏览器中打开任何 HTML页面的方法。