if (projectDir != null) {
projectDir = projectDir.replace('/', File.separatorChar);
}
- addFileHierarchyReplacements(result, PathMacrosImpl.MODULE_DIR_MACRO_NAME, getModuleDir(myModule.getModuleFilePath()), projectDir);
+ String stopAt = projectDir;
+
+ final String userHome = getUserHome();
+ if (stopAt != null && stopAt.startsWith(userHome)) {
+ stopAt = userHome;
+ }
+
+ addFileHierarchyReplacements(result, PathMacrosImpl.MODULE_DIR_MACRO_NAME, getModuleDir(myModule.getModuleFilePath()), stopAt);
}
return result;
}
public ExpandMacroToPathMap getExpandMacroMap() {
ExpandMacroToPathMap result = new ExpandMacroToPathMap();
result.addMacroExpand(PathMacrosImpl.APPLICATION_HOME_MACRO_NAME, PathManager.getHomePath());
- result.addMacroExpand(PathMacrosImpl.USER_HOME_MACRO_NAME, SystemProperties.getUserHome());
+ result.addMacroExpand(PathMacrosImpl.USER_HOME_MACRO_NAME, getUserHome());
getPathMacros().addMacroExpands(result);
return result;
}
+ protected static String getUserHome() {
+ return SystemProperties.getUserHome();
+ }
+
public ReplacePathToMacroMap getReplacePathMap() {
ReplacePathToMacroMap result = new ReplacePathToMacroMap();
result.addMacroReplacement(PathManager.getHomePath(), PathMacrosImpl.APPLICATION_HOME_MACRO_NAME);
- result.addMacroReplacement(SystemProperties.getUserHome(), PathMacrosImpl.USER_HOME_MACRO_NAME);
+ result.addMacroReplacement(getUserHome(), PathMacrosImpl.USER_HOME_MACRO_NAME);
getPathMacros().addMacroReplacements(result);
return result;
}