matlab エディターとコマンド ウィンドウのタブ サイズを自動的に取得する方法はありますか? はい、設定ウィンドウを開いて自分で調べることができますが、自動化してほしいです。実際、これは以下のスクリーンショットにあるユーザー設定の取得に一般化できると思います。
質問する
1227 次
1 に答える
7
私は解決策をすぐに見つけました。掘り下げた後、このリンクを共有するのが最善だと思いました:
http://undocumentedmatlab.com/blog/ching-system-preferences-programmatically/
だからあなたがすることは次のとおりです:
設定ファイルを開き、読みたい設定を探します。
edit(fullfile(prefdir,'matlab.prf'));
私の場合、それは行
CommandWindowSpacesPerTab=I4
でありEditorSpacesPerTab=I4
、有望に見えました。I は型 (整数) を表すと思います。値をロードしてテストします。
com.mathworks.services.Prefs.get<type>Pref(<pref-name>)
私の場合:
>> com.mathworks.services.Prefs.getIntegerPref('EditorSpacesPerTab') ans = 4
この質問との重複も少しあります: matlab での設定の保存
編集:どうやら、この関数を使用すると、設定のデフォルト値が読み取られません。つまり、設定の値をまだ変更していない場合、値は設定ファイルに保存されないため、この方法でロードすることはできません。関数は 0 を返すだけです。今のところ、このケースを手動で検出しています。
if loadedpref==0
set default
end
EDIT2: Linuxコマンドラインでmatlabも使用します。これには独自のタブ設定があります(通常はデフォルトで8に設定されています)。この状況を検出するために、次を使用しました。
function retval = isCommandWindowOpen()
jDesktop = com.mathworks.mde.desk.MLDesktop.getInstance;
retval = ~isempty(jDesktop.getClient('Command Window'));
end
于 2012-05-30T13:59:27.650 に答える