如何在按 F1 时在系统浏览器中显示 Matlab 本地文档?

如何在按 F1 时在系统浏览器中显示 Matlab 本地文档?

我在电脑上使用 Windows7 和 Matlab R2013a。我发现无法在 Matlab 中复制/粘贴窗口帮助或者帮助浏览器在此处输入图片描述 在此处输入图片描述

所以我点击获取页面地址并复制命令: web([docroot '/matlab/ref/plot.html'])并添加 arg'-browser'以在我的系统浏览器中显示本地文档文件:

>> web([docroot '/matlab/ref/plot.html'], '-browser')

但这样很麻烦!那么有什么方法可以方便地在我的系统浏览器当我按下 F1 时?提前谢谢 ;)

答案1

我一直在努力解决这个问题,我想我可能找到了你要找的东西。你可以在 MATLAB 上创建一个快捷方式并在那里编码,从而实现以下目的。给它贴上你想要的名字,然后你只需点击它就可以运行它。

关于代码,我必须说我使用了非常规但非常有效的策略,并且我只在 Windows 中测试过它,但是您也可以通过更改具体的实现在 Unix 系统上进行测试。

  1. 提示用户输入所需文档:

    helpdoc=input('Input the doc file: ','s');

然后运行系统命令 (DIR) 来查找 Matlab 文档使用的 .html 文件。由于默认文档目录可从 docroot 函数获得,因此可以通过连接 dir 命令来获取必须传递给 Matlab 中的系统函数的字符串,如下所示:

DirCmd=['dir /s /b "',docroot,'\',helpdoc,'html'];

选项 /s /b 用于在 docroot 的所有子目录中查找 .html 文件并显示裸内容(文件的完整路径)。您可以在此处获取更多信息:https://isc.sans.edu/diary/Finding+Files+and+Counting+Lines+at+the+Windows+Command+Prompt/2244

[Status,CmdOut]=system(DirCmd);

发出的系统命令输出被分配给一个字符数组。对于多个匹配项,必须过滤该数组并分成单独的路径。为此,可以使用带有拆分选项的 REGEXP 函数。

Paths=regexp(CmdOut,'.html','split')

这将返回一个单元格数组,其中 numel=numel(strings)+1(显示一个额外的单元格,内容为空),不含拆分项。所以现在我必须将其与拆分项连接起来,然后在系统浏览器中打开它。

for ii=1:numel(Paths)-1; DocWeb=[Paths{ii},'.html']; web(DocWeb,'-browser'); end

我已经测试过在文档中查找文档,在我的 QuadCore 16Gb RAM 计算机上花了 0.7266 秒在我的系统浏览器(Chrome)中显示两个网页,关于文档和符号数学工具箱的文档。

我希望这会有所帮助,Kudos。

相关内容