Disable keyword expansion in MKS Integrity
-
13-06-2021 - |
题
Is there a way to avoid/disable keyword expansion in MKS Integrity (2009)?
I found the parameter --unexpand
for si ci
which seems to have no impact at all.
Then there are the preferences that can be set with si setpreferences
. When setting keywordExpand=noexpand
for ci
my sandbox file does not get changed. But if I create a new sandbox, the keywords are substituted again.
The user manual suggests, the substitution takes places at check-out actually. But then, I wonder why there is a preference keywordExpand
for check-in at all. Setting keywordExpand=noexpand
for co
doesn't help either.
解决方案
To answer myself: It seems keyword expansion happens on both check-in and check-out. To disable it entirely, the following commands helped:
si setprefs --command=add keywordExpand=noexpand
si setprefs --command=annotate keywordExpand=noexpand
si setprefs --command=ci keywordExpand=noexpand
si setprefs --command=co keywordExpand=noexpand
si setprefs --command=resync keywordExpand=noexpand
si setprefs --command=revert keywordExpand=noexpand
si setprefs --command=viewrevision keywordExpand=noexpand
Additionally, MKS can/will replace expanded keywords by the raw keywords (unexpansion) which can be disabled with
si setprefs --command=add unexpandKeywords=false
si setprefs --command=import unexpandKeywords=false
si setprefs --command=ci unexpandKeywords=false
其他提示
You can also convert the archives of your to binary format, which prevents any kind of modification by MKS, be it keyword expansion or line ending conversion.
Archive conversion can only be done on database backends and needs the permission ChangeArchiveType.
si updatearchive --archiveType=binary ...