Package org.eclipse.xtext.xdoc.formatting

Source Code of org.eclipse.xtext.xdoc.formatting.XdocFormatter

/*
* generated by Xtext
*/
package org.eclipse.xtext.xdoc.formatting;

import org.eclipse.xtext.formatting.impl.AbstractDeclarativeFormatter;
import org.eclipse.xtext.formatting.impl.FormattingConfig;
import org.eclipse.xtext.xdoc.services.XdocGrammarAccess;

/**
* This class contains custom formatting description.
*
* see : http://www.eclipse.org/Xtext/documentation/latest/xtext.html#formatting
* on how and when to use it
*
* Also see {@link org.eclipse.xtext.xtext.XtextFormattingTokenSerializer} as an example
*/
public class XdocFormatter extends AbstractDeclarativeFormatter {
 
  @Override
  protected void configureFormatting(FormattingConfig c) {
    XdocGrammarAccess grammarAccess = (XdocGrammarAccess) getGrammarAccess();
    c.setAutoLinewrap(120);
   
    c.setLinewrap(2, 2, 3).between(grammarAccess.getTextOrMarkupRule(), grammarAccess.getTextOrMarkupRule());
   
    c.setNoSpace().around(grammarAccess.getWSRule());
    c.setNoSpace().around(grammarAccess.getANY_WSRule());
    c.setNoSpace().around(grammarAccess.getMULTI_NLRule());
   
    configureChapter(c, grammarAccess);
    configureSection(c, grammarAccess);
    configureSection2(c, grammarAccess);
    configureSection3(c, grammarAccess);
    configureSection4(c, grammarAccess);

    configureCodeBlock(c, grammarAccess);
    configureCodeRef(c, grammarAccess);
   
    configureRef(c,grammarAccess);
    configureEm(c, grammarAccess);
    configureTextPart(c, grammarAccess);
   
    configureTables(c, grammarAccess);
   
    configureLists(c, grammarAccess);
}

  private void configureCodeRef(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().around(grammarAccess.getCodeRefAccess().getCodeRefKeyword_1());
    c.setNoSpace().around(grammarAccess.getCodeRefAccess().getRightSquareBracketKeyword_3());
  }

  private void configureTables(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setIndentationIncrement().after(grammarAccess.getTableAccess().getTableKeyword_1());
    c.setIndentationDecrement().before(grammarAccess.getTableAccess().getRightSquareBracketKeyword_4());
   
    c.setNoSpace().after(grammarAccess.getTableRowAccess().getTrKeyword_1());
    c.setNoSpace().around(grammarAccess.getTableRowAccess().getRightSquareBracketKeyword_4());
    c.setNoSpace().after(grammarAccess.getTableDataAccess().getTdKeyword_1());
//    c.setNoSpace().after(grammarAccess.getTableDataAccess().getGroup_2());
    c.setNoSpace().before(grammarAccess.getTableDataAccess().getRightSquareBracketKeyword_3());
  }

  private void configureLists(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setIndentationIncrement().after(grammarAccess.getItemAccess().getItemKeyword_1());
    c.setIndentationDecrement().before(grammarAccess.getItemAccess().getRightSquareBracketKeyword_3());


    c.setIndentationIncrement().before(grammarAccess.getItemAccess().getItemKeyword_1());
    c.setIndentationDecrement().after(grammarAccess.getItemAccess().getRightSquareBracketKeyword_3());
   
//    c.setIndentationIncrement().after(grammarAccess.getOrderedListAccess().getOlKeyword_1());
//    c.setIndentationDecrement().before(grammarAccess.getOrderedListAccess().getRightSquareBracketKeyword_4());
//
//    c.setIndentationIncrement().after(grammarAccess.getUnorderedListAccess().getUlKeyword_1());
//    c.setIndentationDecrement().before(grammarAccess.getUnorderedListAccess().getRightSquareBracketKeyword_4());

    c.setNoSpace().around(grammarAccess.getItemRule());
    c.setLinewrap(1,2,2).between(grammarAccess.getItemRule(), grammarAccess.getItemRule());
//    c.setLinewrap(1,1,1).after(grammarAccess.getItemAccess().getItemKeyword_1());
    c.setLinewrap(0,1,1).before(grammarAccess.getItemAccess().getRightSquareBracketKeyword_3());
  }

  private void configureTextPart(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().before(grammarAccess.getTextPartRule());
  }

  private void configureRef(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().around(grammarAccess.getRefAccess().getRefKeyword_0());
    c.setNoSpace().around(grammarAccess.getRefAccess().getLeftSquareBracketKeyword_2_0());
    c.setNoSpace().before(grammarAccess.getRefAccess().getRightSquareBracketKeyword_2_3());
  }

  private void configureCodeBlock(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoLinewrap().between(grammarAccess.getCodeBlockAccess().getLeftSquareBracketKeyword_2_5(), grammarAccess.getCodeBlockAccess().getRightSquareBracketKeyword_4());
    c.setNoSpace().around(grammarAccess.getCodeBlockAccess().getLeftSquareBracketKeyword_2_5());
    c.setNoSpace().around(grammarAccess.getCodeBlockAccess().getCodeKeyword_1());
    c.setNoSpace().around(grammarAccess.getCodeBlockAccess().getRightSquareBracketKeyword_2_3());
    c.setNoSpace().before(grammarAccess.getCodeBlockAccess().getRightSquareBracketKeyword_4());
}

  private void configureChapter(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().after(grammarAccess.getChapterAccess().getChapterKeyword_1_0_0_0());
    c.setNoSpace().after(grammarAccess.getChapterAccess().getChapterKeyword_1_0_1());
    c.setNoSpace().around(grammarAccess.getChapterAccess().getLeftSquareBracketKeyword_1_0_0_2());
    c.setNoSpace().before(grammarAccess.getChapterAccess().getRightSquareBracketKeyword_1_2());
  }

  private void configureSection(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().after(grammarAccess.getSectionAccess().getSectionKeyword_1_0_0_0());
    c.setNoSpace().after(grammarAccess.getSectionAccess().getSectionKeyword_1_0_1());
    c.setNoSpace().around(grammarAccess.getSectionAccess().getLeftSquareBracketKeyword_1_0_0_2());
    c.setNoSpace().around(grammarAccess.getSectionAccess().getRightSquareBracketKeyword_1_2());
  }

  private void configureSection2(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().after(grammarAccess.getSection2Access().getSection2Keyword_1_0_0_0());
    c.setNoSpace().after(grammarAccess.getSection2Access().getSection2Keyword_1_0_1());
    c.setNoSpace().around(grammarAccess.getSection2Access().getLeftSquareBracketKeyword_1_0_0_2());
    c.setNoSpace().around(grammarAccess.getSection2Access().getRightSquareBracketKeyword_1_2());
  }

  private void configureSection3(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().after(grammarAccess.getSection3Access().getSection3Keyword_0_0_0());
    c.setNoSpace().after(grammarAccess.getSection3Access().getSection3Keyword_0_1());
    c.setNoSpace().around(grammarAccess.getSection3Access().getLeftSquareBracketKeyword_0_0_2());
    c.setNoSpace().around(grammarAccess.getSection3Access().getRightSquareBracketKeyword_2());
  }

  private void configureSection4(FormattingConfig c,
      XdocGrammarAccess grammarAccess) {
    c.setNoSpace().after(grammarAccess.getSection4Access().getSection4Keyword_0_0_0());
    c.setNoSpace().after(grammarAccess.getSection4Access().getSection4Keyword_0_1());
    c.setNoSpace().around(grammarAccess.getSection4Access().getLeftSquareBracketKeyword_0_0_2());
    c.setNoSpace().around(grammarAccess.getSection4Access().getRightSquareBracketKeyword_2());
  }
 
  private void configureEm(FormattingConfig c,
      XdocGrammarAccess grammarAccess){
    c.setNoSpace().after(grammarAccess.getEmphasizeAccess().getEKeyword_1());
    c.setNoSpace().before(grammarAccess.getEmphasizeAccess().getRightSquareBracketKeyword_3());
  }
}
TOP

Related Classes of org.eclipse.xtext.xdoc.formatting.XdocFormatter

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.