import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.fileEditor.FileDocumentManager;
-import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Pair;
import com.intellij.openapi.util.TextRange;
int numberInIteration,
List<Pair<String, String>> attr2value) {
if (token.myTemplate != null) {
- if (attr2value.size() > 0 || callback.getFileType() == StdFileTypes.XHTML) {
+ if (attr2value.size() > 0 || XmlZenCodingTemplate.autoclosingAvailable(callback)) {
TemplateImpl modifiedTemplate = token.myTemplate.copy();
XmlTag tag = XmlZenCodingTemplate.parseXmlTagInTemplate(token.myTemplate.getString(), callback, true);
if (tag != null) {
iterator.remove();
}
}
- closeUnclosingTags(tag);
+ if (XmlZenCodingTemplate.autoclosingAvailable(callback)) {
+ closeUnclosingTags(tag);
+ }
String text = null;
if (!containsAttrsVar(modifiedTemplate) && attr2value.size() > 0) {
String textWithAttrs = addAttrsVar(modifiedTemplate, tag);
import com.intellij.codeInsight.template.impl.TemplateSettings;
import com.intellij.lang.xml.XMLLanguage;
import com.intellij.openapi.editor.Editor;
+import com.intellij.openapi.fileTypes.FileType;
import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.util.Pair;
import com.intellij.psi.PsiElement;
return template;
}
+ public static boolean autoclosingAvailable(CustomTemplateCallback callback) {
+ FileType type = callback.getFileType();
+ return type == StdFileTypes.XHTML || type == StdFileTypes.JSPX;
+ }
+
@Nullable
private static List<Token> parse(@NotNull String text, @NotNull CustomTemplateCallback callback) {
text += MARKER;
if (token == null) {
return null;
}
- if (applicable && (token.myAttribute2Value.size() > 0 || callback.getFileType() == StdFileTypes.XHTML)) {
+ if (applicable && (token.myAttribute2Value.size() > 0 || autoclosingAvailable(callback))) {
assert prefix.equals(token.myKey);
TemplateImpl template = cacheTemplate(token, callback);
if (token.myAttribute2Value.size() > 0) {