parent
4475823cdc
commit
39ed8f4d42
@ -0,0 +1,29 @@
|
|||||||
|
package de.marhali.easyi18n.assistance.folding;
|
||||||
|
|
||||||
|
import com.intellij.lang.ASTNode;
|
||||||
|
import com.intellij.openapi.util.Pair;
|
||||||
|
import com.intellij.psi.PsiElement;
|
||||||
|
import com.intellij.psi.util.PsiTreeUtil;
|
||||||
|
import com.intellij.psi.xml.XmlAttributeValue;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
public class XmlFoldingBuilder extends AbstractFoldingBuilder {
|
||||||
|
@Override
|
||||||
|
@NotNull List<Pair<String, PsiElement>> extractRegions(@NotNull PsiElement root) {
|
||||||
|
return PsiTreeUtil.findChildrenOfType(root, XmlAttributeValue.class)
|
||||||
|
.stream()
|
||||||
|
.map((attributeValue -> Pair.pair(attributeValue.getValue(), (PsiElement) attributeValue)))
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Nullable String extractText(@NotNull ASTNode node) {
|
||||||
|
XmlAttributeValue attributeValue = node.getPsi(XmlAttributeValue.class);
|
||||||
|
return attributeValue.getValue();
|
||||||
|
}
|
||||||
|
}
|
@ -2,7 +2,7 @@
|
|||||||
<extensions defaultExtensionNs="com.intellij">
|
<extensions defaultExtensionNs="com.intellij">
|
||||||
<lang.foldingBuilder
|
<lang.foldingBuilder
|
||||||
language="HTML"
|
language="HTML"
|
||||||
implementationClass="de.marhali.easyi18n.assistance.folding.JsFoldingBuilder"
|
implementationClass="de.marhali.easyi18n.assistance.folding.XmlFoldingBuilder"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<lang.documentationProvider
|
<lang.documentationProvider
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
<depends optional="true" config-file="de.marhali.easyi18n-kotlin.xml">org.jetbrains.kotlin</depends>
|
<depends optional="true" config-file="de.marhali.easyi18n-kotlin.xml">org.jetbrains.kotlin</depends>
|
||||||
<depends optional="true" config-file="de.marhali.easyi18n-javascript.xml">JavaScript</depends>
|
<depends optional="true" config-file="de.marhali.easyi18n-javascript.xml">JavaScript</depends>
|
||||||
<depends optional="true" config-file="de.marhali.easyi18n-html.xml">com.intellij.modules.xml</depends>
|
<depends optional="true" config-file="de.marhali.easyi18n-xml.xml">com.intellij.modules.xml</depends>
|
||||||
<depends optional="true" config-file="de.marhali.easyi18n-java.xml">com.intellij.java</depends>
|
<depends optional="true" config-file="de.marhali.easyi18n-java.xml">com.intellij.java</depends>
|
||||||
<depends optional="true" config-file="de.marhali.easyi18n-php.xml">com.jetbrains.php</depends>
|
<depends optional="true" config-file="de.marhali.easyi18n-php.xml">com.jetbrains.php</depends>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user