View Javadoc

1   package org.apache.maven.doxia.module.apt;
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one
5    * or more contributor license agreements.  See the NOTICE file
6    * distributed with this work for additional information
7    * regarding copyright ownership.  The ASF licenses this file
8    * to you under the Apache License, Version 2.0 (the
9    * "License"); you may not use this file except in compliance
10   * with the License.  You may obtain a copy of the License at
11   *
12   *   http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing,
15   * software distributed under the License is distributed on an
16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17   * KIND, either express or implied.  See the License for the
18   * specific language governing permissions and limitations
19   * under the License.
20   */
21  
22  import org.apache.maven.doxia.markup.TextMarkup;
23  import org.codehaus.plexus.util.StringUtils;
24  
25  /**
26   * This interface defines all markups and syntaxes used by the <b>APT</b> format.
27   *
28   * @see <a href="http://maven.apache.org/doxia/references/apt-format.html">http://maven.apache.org/doxia/references/apt-format.html</a>
29   *
30   * @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
31   * @version $Id: AptMarkup.java 657808 2008-05-19 12:11:53Z ltheussl $
32   * @since 1.0
33   */
34  public interface AptMarkup
35      extends TextMarkup
36  {
37      // ----------------------------------------------------------------------
38      // Markup separators
39      // ----------------------------------------------------------------------
40  
41      /** APT backslash markup char: '\\' */
42      char BACKSLASH = '\\';
43  
44      /** APT comment markup char: '~' */
45      char COMMENT = '~';
46  
47      /** APT numbering decimal markup char: '1' */
48      char NUMBERING = '1';
49  
50      /** APT numbering lower alpha markup char: 'a' */
51      char NUMBERING_LOWER_ALPHA_CHAR = 'a';
52  
53      /** APT numbering lower roman markup char: 'i' */
54      char NUMBERING_LOWER_ROMAN_CHAR = 'i';
55  
56      /** APT numbering upper alpha markup char: 'A' */
57      char NUMBERING_UPPER_ALPHA_CHAR = 'A';
58  
59      /** APT numbering upper roman markup char: 'I' */
60      char NUMBERING_UPPER_ROMAN_CHAR = 'I';
61  
62      /** APT page break markup char: '\f' */
63      char PAGE_BREAK = '\f';
64  
65      /** APT percent markup char: '%' */
66      char PERCENT = '%';
67  
68      /** APT tab markup char: '\t' */
69      char TAB = '\t';
70  
71      // ----------------------------------------------------------------------
72      // Markup syntax
73      // ----------------------------------------------------------------------
74  
75      /** Syntax for the anchor end: "}" */
76      String ANCHOR_END_MARKUP = String.valueOf( RIGHT_CURLY_BRACKET );
77  
78      /** Syntax for the anchor start: "{" */
79      String ANCHOR_START_MARKUP = String.valueOf( LEFT_CURLY_BRACKET );
80  
81      /** Syntax for the bold style end: ">>" */
82      String BOLD_END_MARKUP = StringUtils.repeat( String.valueOf( GREATER_THAN ), 2 );
83  
84      /** Syntax for the bold style start: "<<" */
85      String BOLD_START_MARKUP = StringUtils.repeat( String.valueOf( LESS_THAN ), 2 );
86  
87      /** Syntax for the boxed verbatim start: "+------+" */
88      String BOXED_VERBATIM_START_MARKUP = String.valueOf( PLUS )
89          + StringUtils.repeat( String.valueOf( MINUS ), 6 ) + String.valueOf( PLUS );
90  
91      /** Syntax for the header start: " -----" */
92      String HEADER_START_MARKUP = String.valueOf( SPACE ) + StringUtils.repeat( String.valueOf( MINUS ), 5 );
93  
94      /** Syntax for the horizontal rule: "========" */
95      String HORIZONTAL_RULE_MARKUP = StringUtils.repeat( String.valueOf( EQUAL ), 8 );
96  
97      /** Syntax for the italic style end: ">" */
98      String ITALIC_END_MARKUP = String.valueOf( GREATER_THAN );
99  
100     /** Syntax for the italic style start: "<" */
101     String ITALIC_START_MARKUP = String.valueOf( LESS_THAN );
102 
103     /** Syntax for the link end: "}}" */
104     String LINK_END_MARKUP = StringUtils.repeat( String.valueOf( RIGHT_CURLY_BRACKET ), 2 );
105 
106     /** Syntax for the link start: "{{{" */
107     String LINK_START_1_MARKUP = StringUtils.repeat( String.valueOf( LEFT_CURLY_BRACKET ), 3 );
108 
109     /** Syntax for the link start: "}" */
110     String LINK_START_2_MARKUP = String.valueOf( RIGHT_CURLY_BRACKET );
111 
112     /** Syntax for the list end: "[]" */
113     String LIST_END_MARKUP = String.valueOf( LEFT_SQUARE_BRACKET ) + String.valueOf( RIGHT_SQUARE_BRACKET );
114 
115     /** Syntax for the list start: "*" */
116     String LIST_START_MARKUP = String.valueOf( STAR );
117 
118     /** Syntax for the mono-spaced style end: ">>>" */
119     String MONOSPACED_END_MARKUP = StringUtils.repeat( String.valueOf( GREATER_THAN ), 3 );
120 
121     /** Syntax for the mono-spaced style start: "<<<" */
122     String MONOSPACED_START_MARKUP = StringUtils.repeat( String.valueOf( LESS_THAN ), 3 );
123 
124     /** Syntax for the non boxed verbatim start: "------" */
125     String NON_BOXED_VERBATIM_START_MARKUP = StringUtils.repeat( String.valueOf( MINUS ), 6 );
126 
127     /** Syntax for the non breaking space: "\ " */
128     String NON_BREAKING_SPACE_MARKUP = String.valueOf( BACKSLASH ) + String.valueOf( SPACE );
129 
130     /** Syntax for the page break: "\f" */
131     String PAGE_BREAK_MARKUP = String.valueOf( PAGE_BREAK );
132 
133     /** Syntax for the section title start: "*" */
134     String SECTION_TITLE_START_MARKUP = String.valueOf( STAR );
135 
136     /** Syntax for the table cell start: "|" */
137     String TABLE_CELL_SEPARATOR_MARKUP = String.valueOf( PIPE );
138 
139     /** Syntax for the table column, centered style: "-*" */
140     String TABLE_COL_CENTERED_ALIGNED_MARKUP = StringUtils.repeat( String.valueOf( MINUS ), 2 )
141         + String.valueOf( STAR );
142 
143     /** Syntax for the table column, left style: "-+" */
144     String TABLE_COL_LEFT_ALIGNED_MARKUP = StringUtils.repeat( String.valueOf( MINUS ), 2 )
145         + String.valueOf( PLUS );
146 
147     /** Syntax for the table column, right style: "-:" */
148     String TABLE_COL_RIGHT_ALIGNED_MARKUP = StringUtils.repeat( String.valueOf( MINUS ), 2 )
149         + String.valueOf( COLON );
150 
151     /** Syntax for the table row end: "|" */
152     String TABLE_ROW_SEPARATOR_MARKUP = String.valueOf( PIPE );
153 
154     /** Syntax for the table row start: "*--" */
155     String TABLE_ROW_START_MARKUP = String.valueOf( STAR ) + StringUtils.repeat( String.valueOf( MINUS ), 2 );
156 
157     /** Syntax for the boxed verbatim end: "+------+" */
158     String BOXED_VERBATIM_END_MARKUP = BOXED_VERBATIM_START_MARKUP;
159 
160     /** Syntax for the non boxed verbatim end: "------" */
161     String NON_BOXED_VERBATIM_END_MARKUP = NON_BOXED_VERBATIM_START_MARKUP;
162 }