Сегодня наткнулся на эту тему:
http://www.mathworks.com/matlabcentral/newsreader/view_thread/112560
Вопрос в том, как заставить Matlab читать ваш файл startup.m независимо от того, где вы начинаете сеанс Matlab.
Одним из предложенных решений было:
Одним из решений было бы попросить системного администратора добавить несколько строк в «matlabrc.m», которые добавляют некоторую предопределенную папку в домашнем каталоге пользователя к пути MATLAB (скажем, ~/.matlabstart). Тогда у каждого пользователя может быть свой собственный файл «startup.m» внутри этой папки.
Что я сделал в своей системе (OS X), так это добавил файл startup.m в:
/Applications/MATLAB_R2011a.app/toolbox/local/
В этот файл startup.m я добавил:
if exist([getenv('HOME') '/.matlabrc/startup.m'])
run([getenv('HOME') '/.matlabrc/startup.m']);
end
Таким образом, у пользователей есть возможность создать скрытую папку ~/.matlabrc
и поместить в нее файл startup.m
. В этом файле запуска они могут указать Matlab, что выполнять всякий раз, когда они запускают Matlab, независимо от каталога, в котором они его запустили. Пример того, что я добавил в свой личный startup.m
файл:
addpath(genpath('/Users/jmlopez/matlabcode/'))
Теперь я могу добавить столько папок в этот каталог, и все они будут добавляться в путь каждый раз, когда я запускаю Matlab автоматически, без необходимости изменять путь.
Вопрос в том, предоставил ли Matlab уже специальный файл, подобный тому, который я создал, или я просто прошел через все эти проблемы, чтобы выполнить то, что хотел? Если ответ - второй вариант, который я дал, то почему Matlab не предоставляет этого? Это такая боль в заднице - добавлять каталоги в путь Matlab, когда у вас нет прав администратора, и я не хочу переносить свой файл startup.m
в каждый каталог, в который я захожу. Может кто-нибудь пролить свет на это, пожалуйста?