RedmineTextFormattingMarkdown » History » Version 26

Tuan-Tu Tran, 2020-04-16 17:25

1 1 Hans Ginzel
h1. Markdown formatting
2 1 Hans Ginzel
3 17 Hiroo Hayashi
Below is *Markdown* formatting. For *Textile* formatting see [[RedmineTextFormattingTextile|Textile formatting]].
4 17 Hiroo Hayashi
Currently HTML tags are not allowed by default. See #15520 and #20497 for details.  For other limitations of the current *Markdown* formatting see #16373 and #21443.
5 1 Hans Ginzel
6 1 Hans Ginzel
{{>TOC}}
7 1 Hans Ginzel
8 1 Hans Ginzel
h2. Links
9 1 Hans Ginzel
10 1 Hans Ginzel
h3. Redmine links
11 1 Hans Ginzel
12 16 Hiroo Hayashi
{{include(RedmineTextFormattingRedmineLinks)}}
13 1 Hans Ginzel
14 1 Hans Ginzel
h3. External links
15 1 Hans Ginzel
16 21 Go MAEDA
URLs (http, https, ftp and ftps) are automatically turned into clickable links: 
17 17 Hiroo Hayashi
18 1 Hans Ginzel
* *http://www.redmine.org* -- External link to the redmine website: http://www.redmine.org
19 1 Hans Ginzel
20 21 Go MAEDA
URLs can also use different text than the link itself:
21 17 Hiroo Hayashi
22 2 Hans Ginzel
* *[Redmine web site](http://www.redmine.org)* -- External link with different text: "Redmine web site":http://www.redmine.org
23 22 Ivan Tsybanenko
* *[![Redmine web site](http://www.redmine.org/attachments/7069/Redmine_logo.png)](http://www.redmine.org)* -- External image with a title that links to an URL: 
24 1 Hans Ginzel
25 1 Hans Ginzel
p=. !http://www.redmine.org/attachments/7069/Redmine_logo.png(Redmine web site)!:http://www.redmine.org
26 1 Hans Ginzel
27 1 Hans Ginzel
h3. Email addresses
28 1 Hans Ginzel
29 1 Hans Ginzel
Email addresses are automatically turned into clickable links:
30 1 Hans Ginzel
31 17 Hiroo Hayashi
* *someone@foo.bar* -- Link to an email address: someone@foo.bar
32 3 Hans Ginzel
* *[Email someone](mailto:someone@foo.bar)* -- Email link with different text: "Email someone":mailto:someone@foo.bar
33 1 Hans Ginzel
34 1 Hans Ginzel
More complex email instructions can be added to an email link.  A default subject, default body and CC information can be defined.  Note that spaces in any of these fields need to be replaced with the code %20.
35 3 Hans Ginzel
* *[Email webmaster and admin](mailto:webmaster@foo.bar?cc=admin@foo.bar)* -- Email to webmaster, CC admin:  "Email webmaster and admin":mailto:webmaster@foo.bar?cc=admin@foo.bar
36 3 Hans Ginzel
* *[Email someone for help](mailto:someone@foo.bar?subject=Website%20Help)* -- Email link with the subject "Website Help": "Email someone for help":mailto:someone@foo.bar?subject=Website%20Help
37 3 Hans Ginzel
* *[Email someone for help](mailto:someone@foo.bar?subject=Website%20Help&body=My%20problem%20is%20)* -- Email link with the subject "Website Help" and a default body: "Email someone for help":mailto:someone@foo.bar?subject=Website%20Help&body=My%20problem%20is%20
38 1 Hans Ginzel
39 1 Hans Ginzel
h2. Text formatting
40 4 Hans Ginzel
41 1 Hans Ginzel
For things such as headlines, bold, tables, lists, Redmine supports "Markdown syntax":http://en.wikipedia.org/wiki/Markdown.  See http://daringfireball.net/projects/markdown/syntax, http://agea.github.io/tutorial.md/, http://stackoverflow.com/editing-help for information on using any of these features.  A few samples are included below, but the engine is capable of much more of that. For conversions see "Pandoc":http://pandoc.org. The "Redcarpet formatter":https://github.com/alminium/redmine_redcarpet_formatter is used.
42 1 Hans Ginzel
43 1 Hans Ginzel
h3. Acronym
44 1 Hans Ginzel
45 17 Hiroo Hayashi
Not supported by Markdown
46 1 Hans Ginzel
47 1 Hans Ginzel
h3. Font style
48 1 Hans Ginzel
49 1 Hans Ginzel
<pre><code>* **bold** __bold__
50 1 Hans Ginzel
* *italic* _italic_
51 1 Hans Ginzel
* ***bold italic*** ___bold italic___
52 5 Hans Ginzel
* <ins>underline</ins>
53 5 Hans Ginzel
* <del>strike through</del>
54 5 Hans Ginzel
* Plain <sup>superscript</sup>
55 5 Hans Ginzel
* Plain <sub>subscript</sub>
56 5 Hans Ginzel
* `inline monospace`
57 1 Hans Ginzel
* normal **bold** _italic_ normal;E=mc<sup>2</sup>
58 19 Hiroo Hayashi
* normal<strong>bold</strong><em>italic</em>normal;E=mc<sup>2</sup>
59 17 Hiroo Hayashi
* Escaping: \*\*bold\*\* \_italic\_ \`inlinemono\`
60 17 Hiroo Hayashi
* <notextile><pre>**some lines**      some [link](http://www.redmine.org)</pre></notextile>
61 17 Hiroo Hayashi
* <notextile><pre>\*\*some lines\*\*      some \[link](http\://www\.redmine\.org)</pre></notextile>
62 1 Hans Ginzel
</code></pre>
63 1 Hans Ginzel
64 17 Hiroo Hayashi
displays:
65 1 Hans Ginzel
66 1 Hans Ginzel
 * *bold* *bold*
67 1 Hans Ginzel
 * _italic_ _italic_
68 1 Hans Ginzel
 * *_bold italic_* *_bold italic_*
69 5 Hans Ginzel
 * +underline+
70 5 Hans Ginzel
 * -strike-through-
71 1 Hans Ginzel
 * Plain ^superscript^
72 1 Hans Ginzel
 * Plain ~subscript~
73 1 Hans Ginzel
 * @inline monospace@
74 17 Hiroo Hayashi
 * normal *bold* _italic_ normal;E=mc<notextile></notextile>^2^
75 1 Hans Ginzel
 * normal<notextile></notextile>*bold*<notextile></notextile>_italic_<notextile></notextile>normal;E=mc<notextile></notextile>^2^
76 23 Go MAEDA
 * Escaping: <notextile>**bold** _italic_ `inlinemono`</notextile> 
77 1 Hans Ginzel
 * <pre><notextile></notextile>*some lines*      some "link":http://www.redmine.org</pre>
78 17 Hiroo Hayashi
 * <pre>**some lines**      some [link](http://www.redmine.org)</pre>
79 1 Hans Ginzel
80 19 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tags (<strong>, <em>, <ins>, <del>, <sup>, <sub>).  See #15520-16 and #15520-17 for details.
81 1 Hans Ginzel
82 17 Hiroo Hayashi
h3. Color
83 17 Hiroo Hayashi
84 17 Hiroo Hayashi
<pre><code><notextile>* <span style="color:red">red</span> <span style="color:green">green</span> <span style="color:yellow">yellow</span> <span style="color:#82B6E1">blue'ish</span>
85 17 Hiroo Hayashi
* <span style="color:red">red</span><span style="color:green">green</span><span style="color:yellow">yellow</span><span style="color:#82B6E1">blue'ish</span>
86 17 Hiroo Hayashi
* <span style="background-color:lightgreen">Lightgreen Background</span> <span style="background-color:yellow">Yellow Background</span>
87 17 Hiroo Hayashi
* <span style="background-color:lightgreen">Lightgreen Background</span><span style="background-color:yellow">Yellow Background</span>
88 1 Hans Ginzel
</notextile></code></pre>
89 1 Hans Ginzel
90 17 Hiroo Hayashi
displays:
91 1 Hans Ginzel
92 1 Hans Ginzel
 * %{color:red}red% %{color:green}green% %{color:yellow}yellow% %{color:#82B6E1}blue'ish%
93 1 Hans Ginzel
 * %{color:red}red%<notextile></notextile>%{color:green}green%<notextile></notextile>%{color:yellow}yellow%<notextile></notextile>%{color:#82B6E1}blue'ish%
94 1 Hans Ginzel
 * %{background:lightgreen}Lightgreen Background% %{background:yellow}Yellow Background%
95 1 Hans Ginzel
 * %{background:lightgreen}Lightgreen Background%<notextile></notextile>%{background:yellow}Yellow Background%
96 1 Hans Ginzel
97 17 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tag (<span>).  See #15520-16 and #15520-17 for details.
98 26 Tuan-Tu Tran
More explicitly, you need to patch redmine, as explained in this "post":https://www.redmine.org/boards/2/topics/56096?r=57052#message-57052
99 26 Tuan-Tu Tran
100 17 Hiroo Hayashi
101 1 Hans Ginzel
h3. Inline images
102 1 Hans Ginzel
103 1 Hans Ginzel
* *![](image_url)* displays an image located at image_url (textile syntax)
104 17 Hiroo Hayashi
* *![alt text](image_url "optional title")* displays an image with an alt/title attribute
105 17 Hiroo Hayashi
* *[![](image_url)](URL)* displays an image located at image_url with link URL added
106 1 Hans Ginzel
107 17 Hiroo Hayashi
If you have an image attached to your wiki page, it can be displayed inline using its filename: *![](attached_image.png)*.
108 1 Hans Ginzel
109 17 Hiroo Hayashi
As of this writing, Markdown has no syntax for specifying the dimensions of an image; if this is important to you, you can use regular HTML <img> tags.
110 1 Hans Ginzel
111 17 Hiroo Hayashi
* <img style="float:right" src="URL"/>
112 17 Hiroo Hayashi
* <img style="width:100%" src="attached_image.png"/>
113 17 Hiroo Hayashi
114 17 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tag (<img>).  See #15520-16 and #15520-17 for details.
115 17 Hiroo Hayashi
116 17 Hiroo Hayashi
117 1 Hans Ginzel
h3. Headings
118 1 Hans Ginzel
119 1 Hans Ginzel
<pre><code># Heading
120 1 Hans Ginzel
121 1 Hans Ginzel
## Subheading
122 1 Hans Ginzel
123 1 Hans Ginzel
### Subheading
124 1 Hans Ginzel
125 1 Hans Ginzel
or
126 1 Hans Ginzel
127 1 Hans Ginzel
Heading
128 1 Hans Ginzel
=======
129 1 Hans Ginzel
130 1 Hans Ginzel
Subheading
131 1 Hans Ginzel
----------
132 1 Hans Ginzel
</code></pre>
133 1 Hans Ginzel
134 1 Hans Ginzel
Redmine assigns an anchor to each of those headings thus you can link to them with "#Heading", "#Subheading" and so forth.
135 1 Hans Ginzel
136 1 Hans Ginzel
h3. Paragraphs
137 1 Hans Ginzel
138 17 Hiroo Hayashi
Markdown does not support alignment of a paragraph.  Use &lt;div> tags if you need it.
139 1 Hans Ginzel
140 17 Hiroo Hayashi
<pre><code>left aligned
141 17 Hiroo Hayashi
<div style="padding-left:1em;">
142 17 Hiroo Hayashi
left ident 1em
143 17 Hiroo Hayashi
</div>
144 1 Hans Ginzel
145 17 Hiroo Hayashi
<div style="padding-left:2em;">
146 17 Hiroo Hayashi
left ident 2em
147 17 Hiroo Hayashi
as well as for following lines
148 17 Hiroo Hayashi
</div>
149 1 Hans Ginzel
150 17 Hiroo Hayashi
<div style="text-align:right;">
151 17 Hiroo Hayashi
right aligned
152 17 Hiroo Hayashi
</div>
153 1 Hans Ginzel
154 17 Hiroo Hayashi
<div style="padding-right:3em;text-align:right;">
155 17 Hiroo Hayashi
right ident 3em
156 17 Hiroo Hayashi
</div>
157 1 Hans Ginzel
158 17 Hiroo Hayashi
<div style="text-align:center;">
159 17 Hiroo Hayashi
This is centered paragraph.
160 17 Hiroo Hayashi
</div></code></pre>
161 1 Hans Ginzel
162 17 Hiroo Hayashi
displays;
163 1 Hans Ginzel
164 17 Hiroo Hayashi
p. left aligned
165 1 Hans Ginzel
166 17 Hiroo Hayashi
p(. left ident 1em
167 1 Hans Ginzel
168 17 Hiroo Hayashi
p((. left ident 2em
169 17 Hiroo Hayashi
as well as for following lines
170 1 Hans Ginzel
171 17 Hiroo Hayashi
p>. right aligned
172 1 Hans Ginzel
173 17 Hiroo Hayashi
p)))>. right ident 3em
174 1 Hans Ginzel
175 17 Hiroo Hayashi
p=. This is centered paragraph.
176 1 Hans Ginzel
177 17 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tags (<div>).  See #15520-16 and #15520-17 for details.
178 1 Hans Ginzel
179 17 Hiroo Hayashi
h3. Horizontal rule 
180 1 Hans Ginzel
181 17 Hiroo Hayashi
@----@
182 1 Hans Ginzel
183 17 Hiroo Hayashi
displays: 
184 1 Hans Ginzel
185 17 Hiroo Hayashi
----
186 1 Hans Ginzel
187 17 Hiroo Hayashi
h3. Preformatted Text
188 1 Hans Ginzel
189 17 Hiroo Hayashi
<pre> <pre>**Your text won't become bold**</pre> </pre>
190 17 Hiroo Hayashi
191 17 Hiroo Hayashi
displays:
192 17 Hiroo Hayashi
193 17 Hiroo Hayashi
<pre>**Your text won't become bold**</pre>
194 17 Hiroo Hayashi
195 17 Hiroo Hayashi
h3. Blockquotes
196 17 Hiroo Hayashi
197 17 Hiroo Hayashi
You can use > at the beginning of each line and stack them for nested quotes:
198 17 Hiroo Hayashi
199 1 Hans Ginzel
<pre>
200 1 Hans Ginzel
>> Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
201 1 Hans Ginzel
>> To go live, all you need to add is a database and a web server.
202 1 Hans Ginzel
> Great!
203 1 Hans Ginzel
</pre>
204 1 Hans Ginzel
205 17 Hiroo Hayashi
displays:
206 1 Hans Ginzel
207 1 Hans Ginzel
>>  Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
208 8 Hans Ginzel
>>  To go live, all you need to add is a database and a web server.
209 8 Hans Ginzel
> Great!
210 1 Hans Ginzel
211 1 Hans Ginzel
h3. Unordered lists
212 1 Hans Ginzel
213 17 Hiroo Hayashi
Unordered lists use asterisks (@*@), pluses (@+@), and hyphens (@-@) as list markers
214 17 Hiroo Hayashi
215 1 Hans Ginzel
<pre>
216 1 Hans Ginzel
* Item 1
217 1 Hans Ginzel
* Item 2
218 1 Hans Ginzel
  * Item 21 (two spaces indentation)
219 1 Hans Ginzel
  * Item 22
220 1 Hans Ginzel
* Item 3
221 1 Hans Ginzel
</pre>
222 1 Hans Ginzel
223 1 Hans Ginzel
displays:
224 1 Hans Ginzel
225 1 Hans Ginzel
* Item 1
226 1 Hans Ginzel
* Item 2
227 1 Hans Ginzel
** Item 21
228 10 Hans Ginzel
** Item 22
229 10 Hans Ginzel
* Item 3
230 1 Hans Ginzel
231 1 Hans Ginzel
h3. Ordered lists
232 1 Hans Ginzel
233 17 Hiroo Hayashi
Ordered lists use numbers followed by periods.
234 17 Hiroo Hayashi
235 1 Hans Ginzel
<pre>
236 17 Hiroo Hayashi
1. Item 1
237 17 Hiroo Hayashi
3. Item 2
238 17 Hiroo Hayashi
2. Item 3
239 17 Hiroo Hayashi
  1. Item 3.1 (two spaces)
240 17 Hiroo Hayashi
  1. Item 3.2
241 1 Hans Ginzel
</pre>
242 1 Hans Ginzel
243 1 Hans Ginzel
displays:
244 1 Hans Ginzel
245 1 Hans Ginzel
# Item 1
246 1 Hans Ginzel
# Item 2
247 1 Hans Ginzel
# Item 3
248 1 Hans Ginzel
## Item 3.1
249 1 Hans Ginzel
## Item 3.2
250 1 Hans Ginzel
251 17 Hiroo Hayashi
Note that the actual numbers you use to mark the list have no effect on the output.
252 17 Hiroo Hayashi
253 1 Hans Ginzel
h3. Tables
254 1 Hans Ginzel
255 17 Hiroo Hayashi
Markdown does not have syntax for a table. Use an HTML table to write a table.
256 1 Hans Ginzel
257 17 Hiroo Hayashi
<pre><code><table>
258 17 Hiroo Hayashi
  <tr><td style="text-align:center;"><strong>UserID</strong></td><td style="text-align:center;"><strong>Name</strong></td><td style="text-align:center;"><strong>Group</strong></td><td style="text-align:center;"><strong>attribute list</strong></td></tr>
259 17 Hiroo Hayashi
  <tr><td>Starting with</td><td>a</td><td>simple</td><td>row</td></tr>
260 17 Hiroo Hayashi
  <tr><td style="text-align:center;" colspan="3">IT</td><td>align left</td></tr>
261 17 Hiroo Hayashi
  <tr><td>1</td><td>Artur Pirozhkov</td><td rowspan="2">Users</td><td style="text-align:right;">align right</td></tr>
262 17 Hiroo Hayashi
  <tr><td>2</td><td>Vasya Rogov</td><td style="text-align:center;">center</td></tr>
263 17 Hiroo Hayashi
  <tr><td rowspan="2">3</td><td rowspan="2">John Smith</td><td>Admin</td><td style="vertical-align:top;" rowspan="2">valign top</td></tr>
264 17 Hiroo Hayashi
  <tr><td>(root)</td></tr>
265 17 Hiroo Hayashi
  <tr><td rowspan="2">4</td><td rowspan="2">-</td><td>Nobody</td><td style="vertical-align:bottom;" rowspan="2">valign bottom</td></tr>
266 17 Hiroo Hayashi
  <tr><td>(anonymous)</td></tr>
267 17 Hiroo Hayashi
</table>
268 17 Hiroo Hayashi
</code></pre>
269 1 Hans Ginzel
270 17 Hiroo Hayashi
displays;
271 17 Hiroo Hayashi
272 17 Hiroo Hayashi
|=. *UserID*   |=. *Name*       |=. *Group*  |=. *attribute list* |
273 1 Hans Ginzel
|Starting with | a              |   simple   |row                 |
274 1 Hans Ginzel
|\3=.IT                                      |<. align left       |
275 1 Hans Ginzel
|1             |Artur Pirozhkov |/2.Users    |>. align right      |
276 1 Hans Ginzel
|2             |Vasya Rogov     |=. center   |
277 1 Hans Ginzel
|3             |John Smith      |Admin
278 1 Hans Ginzel
                                 (root)      |^. valign top       |
279 1 Hans Ginzel
|4             |-               |Nobody
280 1 Hans Ginzel
                                 (anonymous) |~. valign bottom    |
281 1 Hans Ginzel
282 17 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tags (<table>, <tr>, <td>).  See #15520-16 and #15520-17 for details.
283 1 Hans Ginzel
284 1 Hans Ginzel
h3. Table of content
285 1 Hans Ginzel
286 1 Hans Ginzel
<pre><code>{{toc}} => left aligned toc
287 1 Hans Ginzel
{{>toc}} => right aligned toc
288 1 Hans Ginzel
</code></pre>
289 1 Hans Ginzel
290 15 Hugues C.
Please keep in mind, that the toc-tag needs an empty line above and underneath it and no other text before and after it.
291 1 Hans Ginzel
292 11 Hans Ginzel
Example:
293 11 Hans Ginzel
294 17 Hiroo Hayashi
<pre><code>h1. headLineOne
295 11 Hans Ginzel
296 11 Hans Ginzel
h2. something
297 1 Hans Ginzel
298 1 Hans Ginzel
{{toc}}
299 1 Hans Ginzel
300 11 Hans Ginzel
h2. something more
301 11 Hans Ginzel
</code></pre>
302 11 Hans Ginzel
303 20 Dietmar H
h3. Footnotes
304 20 Dietmar H
305 20 Dietmar H
A footnote works very much like a reference-style link: it consists of a marker next to the text, e.g. <pre>This is a sentence.[^1]</pre> and a footnote definition on its own line anywhere within the document, e.g. <pre>[^1]: This is a footnote.</pre>
306 20 Dietmar H
307 20 Dietmar H
308 1 Hans Ginzel
h2. Macros
309 1 Hans Ginzel
310 1 Hans Ginzel
Redmine includes a macros system that lets you add custom functions to insert dynamic content in formatted text. You can learn about writing your own macros in [[RedmineMacros]]. Redmine also includes a few builtin macros:
311 1 Hans Ginzel
312 1 Hans Ginzel
{{macro_list}}
313 1 Hans Ginzel
314 1 Hans Ginzel
h2. Code highlighting
315 1 Hans Ginzel
316 24 Go MAEDA
Default code highlightment relies on "Rouge":http://rouge.jneen.net/, a syntax highlighting library written in pure Ruby. It supports many commonly used languages such as *c*, *cpp* (c++), *csharp* (c#, cs), *css*, *diff* (patch, udiff), *go* (golang), *groovy*, *html*, *java*, *javascript* (js), *kotlin*, *objective_c* (objc), *perl* (pl), *php*, *python* (py), *r*, *ruby* (rb), *sass*, *scala*, *shell* (bash, zsh, ksh, sh), *sql*, *swift*, *xml* and *yaml* (yml) languages, where the names inside parentheses are aliases. Please refer to [[RedmineCodeHighlightingLanguages]] for the full list of supported languages.
317 1 Hans Ginzel
318 1 Hans Ginzel
You can highlight code in your wiki page using this syntax:
319 1 Hans Ginzel
320 1 Hans Ginzel
<pre><code>``` ruby
321 1 Hans Ginzel
Place your code here.
322 1 Hans Ginzel
```</code></pre>
323 1 Hans Ginzel
324 1 Hans Ginzel
Example:
325 1 Hans Ginzel
326 1 Hans Ginzel
<pre><code class="ruby">
327 1 Hans Ginzel
# The Greeter class
328 1 Hans Ginzel
class Greeter
329 1 Hans Ginzel
  def initialize(name)
330 1 Hans Ginzel
    @name = name.capitalize
331 1 Hans Ginzel
  end
332 1 Hans Ginzel
 
333 1 Hans Ginzel
  def salute
334 1 Hans Ginzel
    puts "Hello #{@name}!"
335 1 Hans Ginzel
  end
336 1 Hans Ginzel
end
337 1 Hans Ginzel
</code></pre>
338 1 Hans Ginzel
339 1 Hans Ginzel
h2. Translation
340 1 Hans Ginzel
341 1 Hans Ginzel
Note that the following translations may not be up to date. Please refer to the original english documentation if needed.
342 1 Hans Ginzel
343 1 Hans Ginzel
* [[BrRedmineWikiFormatting|Português Brasileiro]]
344 1 Hans Ginzel
* [[RusRedmineTextFormatting|Русский]]
345 1 Hans Ginzel
* [[FrRedmineWikiFormatting|French]]
346 1 Hans Ginzel
* [[KoreanWikiFormatting|Korean]]
347 1 Hans Ginzel
* [[TurkishWikiFormatting|Türkçe]]
348 1 Hans Ginzel
* [[TraditionalChineseWikiFormatting|繁體中文]]
349 1 Hans Ginzel
* [[SimplifiedChineseWikiFormatting|简体中文]]