Using version control keyword substitution in Simulink mdl files
Ältere Kommentare anzeigen
Many version control systems contain features that automatically populate the checked out file with information such as revision history, file name, file revision number etc.
I am looking for a way of incorporating this information into a simulink mdl file.
The version control system will be looking for a particular string pattern which it will overwrite with the rev history etc on a checkout.
How can I incorporate these special strings into the mdl file that makes them visible in the Simulink GUI?
I have tried editing the description of a subsystem and adding the keywords but Simulink ended up encoding this into the mdl file as follows:
Block {
BlockType SubSystem
Name "Atomic Subsystem"
SID "1"
Description "Copywrite stuff.... \n \n%PCMS_HEADER_SUBSTITUTION"
"_START%\nName: \n%PID% \n%PCMS_HEADER_SUBSTITUTION_END% "
The version control software wants it to be formatted something like this:
%PCMS_HEADER_SUBSTITUTION% Name: %PID% %PCMS_HEADER_SUBSTITUTION_END%
Any ideas?
Antworten (1)
Daniel Shub
am 14 Dez. 2011
I don't use simulink and I am not familiar with the formatting of your version control system's keyword... In regular MATLAB with unexpanded keywords looking like $unexpanded keyword$" and expanded keywords looking like $expanded keyword: value$, you could define a function like:
function [keyword, value] = rckeyword(str)
if ~isempty(strfind(str, ': '))
keyword = str(2:(strfind(str, ': ')-1));
value = str((strfind(str, ': ')+2):(end-1));
else
keyword = str(2:(end-1));
value = '';
end
end
Then in your version controlled m files include:
[keyword1, value1] = rckeyword('$Expanded Keyword: hello world$')
[keyword2, value2] = rckeyword('$Unexpanded Keyword$')
Kategorien
Mehr zu Programmatic Model Editing finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!