2013年5月27日 星期一

在Windows 7 64-bit環境下如何在點擊多個.m檔後使他們都開在同一個editor下?

很長的標題,很常見的問題,對一個對程式有某種程度龜毛的我來說卻是不得不解決的問題。這一切得從我心血來潮裝了 MATLAB R2013a 開始講起。

我本來用 R2011a 用得好好的,後來我發現它竟然沒有自動找出游標所在的變數名稱變成灰底的功能,這個功能的好處是當我要找程式中某個變數所有出現的位置時不需要用 CTRL + F,而只要將游標點在該變數上,從右邊slider bar就可以找到所有位置 (灰色線)。查了一下google發現是 R2011b 以後才有的功能,既然要重裝了乾脆一次裝到最新的版本,果然,R2013a 的介面跟以前截然不同外,還讓我遇到兩個問題:

  1. .m 檔沒有與 MATLAB 建立關聯性
  2. 1.的問題解決後,在檔案總管中依序點擊數個.m檔後,每個.m檔會各自開一個 MATLAB 出來執行。

第1點很好解決,直接在.m上雙擊後,系統問你要用什麼程式開,就到 “C:\Program Files\MATLAB\R2013a\bin\win64” 下找 MATLAB.exe 就好了。

第二點對有些人來說可能也不是什麼大問題,反正我記憶體夠大,開幾個 matlab instances 都沒關係;又或者我先開一個 matlab,然後用 Open … 來選擇我要打開的 .m 檔即可。可是對我而言,matlab 這麼肥的程式,要不是他editor做得還不錯,我根本不想打開它的視窗模式,更不用說沒事幹麻要執行這麼多個;而我又希望可以在 Q-dir 軟體 (它可以一次開多個目錄) 上直接點擊 .m 檔來編寫程式,因此問題二非解不可。

解法:http://stackoverflow.com/questions/13881206/allow-a-single-matlab-instance-to-run

步驟:

開始檔案總管,到 “C:\Program Files\MATLAB\R2013a\toolbox\local” 找出 pathdef.m,右鍵,內容,選「安全性」。

image

編輯->Users->下方「Users的權限」將「完全控制」打開->確定。

image

這樣問題就解決了。

注意:如果你最早是用Admin去開 MATLAB 的話,那問題還是依舊會出現,所以請記得「不要」用「以管理員身份執行」的方式去開啟 MATLAB。我之所以會知道這個問題是因為過去我為了讓 Set Path 的功能可以正常,我會用管理員開第一次 MATLAB,並將我自己寫的 MATLAB Library 設定好 Path 後才會用一般身份執行。但這次我一旦成功把 pathdef.m 的權限打開後,即使不用管理員身份,也可以成功設定 Set Path 功能了。

接下來該來好好的將 MATLAB editor 介面客製化一番了。

 

image

1 則留言:

Unknown 提到...

超級感謝您!!!簡直是美夢成真