用自定義快捷鍵增強 MATLAB 編輯器功能
MATLAB 中使用「Alt + 數字鍵」可以調用自定義腳本(更詳細的說明可以參見 @芷菡 的文章 MATLAB自定義快捷鍵(Alt + 數字)的方法),那麼可以利用此功能來補充一些自帶編輯器缺少的功能,其中主要問題是如何通過腳本獲取編輯器內容以及對其作出修改,這裡介紹一下,首先是獲取當前的編輯器窗口(如果不可用應當是版本比較老):
>> activeEditor = matlab.desktop.editor.getActiveactiveEditor = Document with properties: Filename: Untitled Opened: 1 Language: MATLAB Text: Selection: [1 1 1 1] SelectedText: Modified: 0 Editable: 1
這裡的屬性名都比較好懂,這裡需要用的 Text 就是當前活動窗口的內容,要想對其進行修改也只要直接對 activeEditor.Text 進行賦值即可
舉個簡單的例子,建立函數 foo.m:
function foo activeEditor = matlab.desktop.editor.getActive; activeEditor.Text = "% " + datestr(now) + newline + activeEditor.Text;end
之後建立一個新的 Shortcut(18a pre 已改名為 Favorite Command),Code 部分填入 foo (只寫函數名,而不是上邊整段代碼),並確保 foo 函數已經保存且在工作路徑
之後就可以用 Alt + 數字鍵來為當前窗口的代碼添加日期信息,效果如下:
另外,如果需要做一些比較複雜的分析和處理,可以借用 mtree 函數生成代碼的 parse tree,具體用法參見文檔或幫助提示 (doc mtree / help mtree)
當然,自定義快捷鍵不只應用編輯器,其本質只是執行一段代碼,合理利用可以提升效率或者做一些好玩的事情,自行發揮吧
補充說明:
如果對 Alt + 數字鍵 這個設置本身不清楚,可以參見以下內容:
芷菡:MATLAB自定義快捷鍵(Alt + 數字)的方法創建快捷方式以重新運行命令 - MATLAB & Simulink - MathWorks 中國Create Shortcuts to Rerun Commands推薦閱讀:
※【Matlab基礎】04. 自定義函數
※學術論文中用什麼軟體可以繪製這樣的圖?
※Matlab小練習:按斜線方向依次賦值矩陣
※Matlab 2018a 比2017b有哪些改進?
※matlab如何很好的處理比較大的數據?
TAG:MATLAB |