Программно настроить MATLAB

Поскольку MathWorks выпускает новую версию MATLAB каждые шесть месяцев, каждый раз приходится устанавливать последнюю версию. Что бы я хотел, так это автоматический способ настройки MATLAB, чтобы сэкономить время на административные проблемы. Когда я получаю новую версию, я обычно делаю следующее:

  1. Добавьте в путь часто используемые каталоги.

  2. Создайте несколько ярлыков на панели инструментов.

  3. Измените некоторые настройки графического интерфейса.

Первую задачу легко выполнить программно с помощью addpath и savepath. Следующие два не так просты.

Подробная информация о ярлыках хранится в файле «shortcuts.xml» в папке, указанной prefdir. На данный момент моей лучшей идеей является использование одного из наборов инструментов XML в MATLAB Central File Exchange для чтения этого файла, добавления некоторых сведений о ярлыках и записи их обратно в файл. Это кажется довольно трудоемким, и обычно это означает, что я пропустил существующую служебную функцию. Есть ли более простой способ (программно) добавить ярлыки?

Изменение настроек графического интерфейса кажется еще более сложным. preferences просто открывает редактор настроек графического интерфейса (эквивалент File -> Preferences); setpref, похоже, не охватывает параметры графического интерфейса.

Настройки GUI хранятся в matlab.prf (снова в prefdir); на этот раз в традиционном стиле конфигурации name=value. Я мог бы попробовать перезаписать значения в нем напрямую, но не всегда ясно, что делает каждая строка, или насколько различаются имена между версиями, или насколько сломанным будет MATLAB, если этот файл будет содержать сомнительные значения. Я понимаю, что это маловероятно, но задокументировано ли где-нибудь содержимое matlab.prf? Или есть лучший способ настройки графического интерфейса?

Для дополнительного кредита, как вы настраиваете свою копию MATLAB? Есть ли какие-то другие настройки, которые я пропустил, которые можно изменить с помощью скрипта?


person Richie Cotton    schedule 10.05.2010    source источник


Ответы (2)


  1. ярлыки — читайте здесь и здесь

  2. предпочтения - прочитайте http://undocumentedmatlab.com/blog/change-system-preferences-programmatically/

person Yair Altman    schedule 10.05.2010
comment
Спасибо за это; именно то, что я хотел. - person Richie Cotton; 11.05.2010

На данный момент я не использую скрипты, хотя это звучит как очень интересная идея.

Если нет новых функций, которые вы также хотите настроить, вы можете просто скопировать и вставить старые настройки в новый prefdir. Я думаю, это должно быть выполнимо программно, хотя вам, возможно, придется выбрать старый prefdir через uigetdir. Пока это не создавало мне больших проблем. Обратите также внимание, что в случае серьезного изменения структуры настроек, любая программная версия также должна быть переписана.

Я добавляю пути при каждом запуске, поэтому мне не нужно думать о ручном добавлении новых каталогов каждый раз, когда я что-то меняю в своей кодовой базе (и я не хочу обновлять структуру каталогов для каждого пользователя). Таким образом, мне также нужно копировать-вставлять startup.m для каждой установки.

Если бы мне пришлось делать все вручную, я бы также хотел изменить параметры автосохранения, чтобы файлы хранились в каталоге autosave. Если я правильно помню, Matlab считывает цвета и шрифты из предыдущих установок, поэтому мне не нужно этого делать.

person Jonas    schedule 10.05.2010
comment
Ваше здоровье. Я согласен с добавлением путей по ходу дела; иначе путь может сойти с ума. У меня есть несколько путей, не относящихся к проекту, которые я добавляю постоянно, затем функция для каждого проекта, которая добавляет пути к конкретному проекту, изменяет cd и выполняет другие задачи запуска. Кроме того, хороший отзыв о каталоге автосохранения; эти asv файлы мешают. - person Richie Cotton; 11.05.2010