Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Xtext-内容建议匹配上下文缩进_Java_Eclipse_Xtext - Fatal编程技术网

Java Xtext-内容建议匹配上下文缩进

Java Xtext-内容建议匹配上下文缩进,java,eclipse,xtext,Java,Eclipse,Xtext,使用XText,是否有一种方法将文本添加到内容建议中,以匹配插入文本的格式(当前缩进) 我现在做的是: 1) 创建将用于内容提案的模型 2) 我使用以下内容获取内容建议字符串: EObject myelement是生成的代码,可以插入到我的Xtext文档中 class MyContentProposalProvider extends AbstractContentProposalProvider { private void acceptProposal( ContentAssist

使用XText,是否有一种方法将文本添加到内容建议中,以匹配插入文本的格式(当前缩进)

我现在做的是:

1) 创建将用于内容提案的模型

2) 我使用以下内容获取内容建议字符串:

EObject myelement
是生成的代码,可以插入到我的Xtext文档中

class MyContentProposalProvider extends AbstractContentProposalProvider
{

 private void acceptProposal(
   ContentAssistContext context,
   ICompletionProposalAcceptor acceptor,
   ElementContentProposal contentProposal,
   EObject myElement) {
        final String proposalString = context.getResource().getSerializer().serialize(myElement);
        final String proposalDisplayCode = proposalString.replaceAll("(\\r|\\n)", "");
        final ICompletionProposal completionProposal = createCompletionProposal(proposalString,
                    String.format("%s : %s", proposalDisplayCode, p.getDescription()), null,
                    context);
        acceptor.accept(completionProposal);
  }
}
3) 在Xtext编辑器中选择一个方案

4) 压痕太远了。所有的东西都向左走

5) 到目前为止,我认为解决这个问题的唯一方法是在提案之后格式化整个文档;然而,这可能有不必要的副作用


有没有办法使上面生成的提议字符串的缩进与提议的上下文保持一致?(这意味着保留首选项的缩进设置,例如空格而不是制表符)。

在Xtext 2.9中,序列化程序将能够生成格式化输出