in ideaSupport/src/main/scala/org/jetbrains/sbtidea/xml/PluginXmlPatcher.scala [28:49]
private def transform(input: String, options: pluginXmlOptions): String = {
var content = input
Option(options.version)
.foreach( value => content = tag(content, "version", value))
Option(options.pluginDescription)
.foreach( value => content = tag(content, "description", value))
Option(options.changeNotes)
.foreach( value => content = tag(content, "change-notes", value))
val ideaVersionTag = (Option(options.sinceBuild), Option(options.untilBuild)) match {
case (Some(since), Some(until)) => s"""<idea-version since-build="$since" until-build="$until"/>"""
case (None, Some(until)) => s"""<idea-version until-build="$until"/>"""
case (Some(since), None) => s"""<idea-version since-build="$since"/>"""
case _ => ""
}
if (ideaVersionTag.nonEmpty)
content = content.replaceAll("<idea-version.+/>", ideaVersionTag)
content
}