Do not rely on standard html file type while generating Emmet template

This commit is contained in:
Alexander Zolotov
2015-01-13 11:27:15 +03:00
parent b27b1022a9
commit 137a168223
2 changed files with 5 additions and 3 deletions
@@ -28,6 +28,7 @@ import com.intellij.codeInsight.template.emmet.generators.XmlZenCodingGeneratorI
import com.intellij.codeInsight.template.emmet.generators.ZenCodingGenerator;
import com.intellij.codeInsight.template.emmet.tokens.TemplateToken;
import com.intellij.codeInsight.template.impl.TemplateImpl;
import com.intellij.ide.highlighter.HtmlFileType;
import com.intellij.injected.editor.DocumentWindowImpl;
import com.intellij.lang.xml.XMLLanguage;
import com.intellij.openapi.command.undo.UndoConstants;
@@ -281,7 +282,7 @@ public class GenerationNode extends UserDataHolderBase {
final XmlFile xmlFile = token.getFile();
PsiFileFactory fileFactory = PsiFileFactory.getInstance(xmlFile.getProject());
XmlFile dummyFile = (XmlFile)fileFactory.createFileFromText("dummy.html", StdFileTypes.HTML, xmlFile.getText());
XmlFile dummyFile = (XmlFile)fileFactory.createFileFromText("dummy.html", HtmlFileType.INSTANCE, xmlFile.getText());
final XmlTag tag = dummyFile.getRootTag();
if (tag != null) {
@@ -307,7 +308,7 @@ public class GenerationNode extends UserDataHolderBase {
}
XmlTag tag1 = hasChildren ? expandEmptyTagIfNecessary(tag) : tag;
setAttributeValues(tag1, attributes, callback);
XmlFile physicalFile = (XmlFile)fileFactory.createFileFromText("dummy.html", StdFileTypes.HTML, tag1.getContainingFile().getText(),
XmlFile physicalFile = (XmlFile)fileFactory.createFileFromText("dummy.html", HtmlFileType.INSTANCE, tag1.getContainingFile().getText(),
LocalTimeCounter.currentTime(), true);
VirtualFile vFile = physicalFile.getVirtualFile();
if (vFile != null) {
@@ -18,6 +18,7 @@ package com.intellij.codeInsight.template.emmet.tokens;
import com.intellij.codeInsight.template.CustomTemplateCallback;
import com.intellij.codeInsight.template.emmet.XmlEmmetParser;
import com.intellij.codeInsight.template.impl.TemplateImpl;
import com.intellij.ide.highlighter.HtmlFileType;
import com.intellij.openapi.command.undo.UndoConstants;
import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.vfs.VirtualFile;
@@ -99,7 +100,7 @@ public class TemplateToken extends ZenCodingToken {
String templateString = template.getString();
final PsiFileFactory psiFileFactory = PsiFileFactory.getInstance(callback.getProject());
if (!containsAttrsVar(template)) {
XmlFile dummyFile = (XmlFile)psiFileFactory.createFileFromText("dummy.xml", StdFileTypes.HTML, templateString);
XmlFile dummyFile = (XmlFile)psiFileFactory.createFileFromText("dummy.xml", HtmlFileType.INSTANCE, templateString);
dummyRootTag = dummyFile.getRootTag();
if (dummyRootTag != null) {
addMissingAttributes(dummyRootTag, attributes);