
我在我的 PC 上使用 Windows7 和 Matlab R2013a。我發現無法在 Matlab 中複製/貼上視窗幫助或者幫助瀏覽器:
所以我點擊取得頁面地址並複製命令:
web([docroot '/matlab/ref/plot.html'])
並添加 arg'-browser'
以在我的系統瀏覽器中顯示本地文檔文件:
>> web([docroot '/matlab/ref/plot.html'], '-browser')
不過那還挺麻煩的!那麼有什麼辦法可以方便地在我的中顯示本地文檔文件系統瀏覽器當我按F1?提前謝謝;)
答案1
我一直在努力回答這個問題,我想我可能已經找到了你正在尋找的東西。您可以透過在 MATLAB 中建立捷徑並在其中進行編碼來實現以下目的。用您想要的名稱標記它,然後只需單擊它即可運行它。
關於程式碼,我必須說我使用了非常規的策略,但是非常有效的策略,並且我只在Windows中測試了它,但是你也可以透過改變具體的實作來在Unix系統上做到這一點。
提示使用者輸入所需的文件:
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) 中顯示兩個網頁,關於文檔和符號數學工具箱的文檔。
我希望這會有所幫助,榮譽。