RedmineTextFormattingMarkdown » History » Version 17

Hiroo Hayashi, 2016-07-23 11:57
sync with [[RedmineTextFormattingTextile]] refs #16373

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 1 Hans Ginzel
HTTP URLs 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 1 Hans Ginzel
HTTP 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 2 Hans Ginzel
* *[![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 17 Hiroo Hayashi
* <notextile>normal<notextile></notextile>**bold**<notextile></notextile>_italic_<notextile></notextile>normal;E=mc<sup>2</sup></notextile>
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 17 Hiroo Hayashi
 * 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 17 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tags (<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 17 Hiroo Hayashi
99 1 Hans Ginzel
h3. Inline images
100 1 Hans Ginzel
101 1 Hans Ginzel
* *![](image_url)* displays an image located at image_url (textile syntax)
102 17 Hiroo Hayashi
* *![alt text](image_url "optional title")* displays an image with an alt/title attribute
103 17 Hiroo Hayashi
* *[![](image_url)](URL)* displays an image located at image_url with link URL added
104 1 Hans Ginzel
105 17 Hiroo Hayashi
If you have an image attached to your wiki page, it can be displayed inline using its filename: *![](attached_image.png)*.
106 1 Hans Ginzel
107 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.
108 1 Hans Ginzel
109 17 Hiroo Hayashi
* <img style="float:right" src="URL"/>
110 17 Hiroo Hayashi
* <img style="width:100%" src="attached_image.png"/>
111 17 Hiroo Hayashi
112 17 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tag (<img>).  See #15520-16 and #15520-17 for details.
113 17 Hiroo Hayashi
114 17 Hiroo Hayashi
115 1 Hans Ginzel
h3. Headings
116 1 Hans Ginzel
117 1 Hans Ginzel
<pre><code># Heading
118 1 Hans Ginzel
119 1 Hans Ginzel
## Subheading
120 1 Hans Ginzel
121 1 Hans Ginzel
### Subheading
122 1 Hans Ginzel
123 1 Hans Ginzel
or
124 1 Hans Ginzel
125 1 Hans Ginzel
Heading
126 1 Hans Ginzel
=======
127 1 Hans Ginzel
128 1 Hans Ginzel
Subheading
129 1 Hans Ginzel
----------
130 1 Hans Ginzel
</code></pre>
131 1 Hans Ginzel
132 1 Hans Ginzel
Redmine assigns an anchor to each of those headings thus you can link to them with "#Heading", "#Subheading" and so forth.
133 1 Hans Ginzel
134 1 Hans Ginzel
h3. Paragraphs
135 1 Hans Ginzel
136 17 Hiroo Hayashi
Markdown does not support alignment of a paragraph.  Use &lt;div> tags if you need it.
137 1 Hans Ginzel
138 17 Hiroo Hayashi
<pre><code>left aligned
139 17 Hiroo Hayashi
<div style="padding-left:1em;">
140 17 Hiroo Hayashi
left ident 1em
141 17 Hiroo Hayashi
</div>
142 1 Hans Ginzel
143 17 Hiroo Hayashi
<div style="padding-left:2em;">
144 17 Hiroo Hayashi
left ident 2em
145 17 Hiroo Hayashi
as well as for following lines
146 17 Hiroo Hayashi
</div>
147 1 Hans Ginzel
148 17 Hiroo Hayashi
<div style="text-align:right;">
149 17 Hiroo Hayashi
right aligned
150 17 Hiroo Hayashi
</div>
151 1 Hans Ginzel
152 17 Hiroo Hayashi
<div style="padding-right:3em;text-align:right;">
153 17 Hiroo Hayashi
right ident 3em
154 17 Hiroo Hayashi
</div>
155 1 Hans Ginzel
156 17 Hiroo Hayashi
<div style="text-align:center;">
157 17 Hiroo Hayashi
This is centered paragraph.
158 17 Hiroo Hayashi
</div></code></pre>
159 1 Hans Ginzel
160 17 Hiroo Hayashi
displays;
161 1 Hans Ginzel
162 17 Hiroo Hayashi
p. left aligned
163 1 Hans Ginzel
164 17 Hiroo Hayashi
p(. left ident 1em
165 1 Hans Ginzel
166 17 Hiroo Hayashi
p((. left ident 2em
167 17 Hiroo Hayashi
as well as for following lines
168 1 Hans Ginzel
169 17 Hiroo Hayashi
p>. right aligned
170 1 Hans Ginzel
171 17 Hiroo Hayashi
p)))>. right ident 3em
172 1 Hans Ginzel
173 17 Hiroo Hayashi
p=. This is centered paragraph.
174 1 Hans Ginzel
175 17 Hiroo Hayashi
**Note:** HTML tags need to be allowed to use the HTML tags (<div>).  See #15520-16 and #15520-17 for details.
176 1 Hans Ginzel
177 17 Hiroo Hayashi
h3. Horizontal rule 
178 1 Hans Ginzel
179 17 Hiroo Hayashi
@----@
180 1 Hans Ginzel
181 17 Hiroo Hayashi
displays: 
182 1 Hans Ginzel
183 17 Hiroo Hayashi
----
184 1 Hans Ginzel
185 17 Hiroo Hayashi
h3. Preformatted Text
186 1 Hans Ginzel
187 17 Hiroo Hayashi
<pre> <pre>**Your text won't become bold**</pre> </pre>
188 17 Hiroo Hayashi
189 17 Hiroo Hayashi
displays:
190 17 Hiroo Hayashi
191 17 Hiroo Hayashi
<pre>**Your text won't become bold**</pre>
192 17 Hiroo Hayashi
193 17 Hiroo Hayashi
h3. Blockquotes
194 17 Hiroo Hayashi
195 17 Hiroo Hayashi
You can use > at the beginning of each line and stack them for nested quotes:
196 17 Hiroo Hayashi
197 1 Hans Ginzel
<pre>
198 1 Hans Ginzel
>> Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
199 1 Hans Ginzel
>> To go live, all you need to add is a database and a web server.
200 1 Hans Ginzel
> Great!
201 1 Hans Ginzel
</pre>
202 1 Hans Ginzel
203 17 Hiroo Hayashi
displays:
204 1 Hans Ginzel
205 1 Hans Ginzel
>>  Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
206 8 Hans Ginzel
>>  To go live, all you need to add is a database and a web server.
207 8 Hans Ginzel
> Great!
208 1 Hans Ginzel
209 1 Hans Ginzel
h3. Unordered lists
210 1 Hans Ginzel
211 17 Hiroo Hayashi
Unordered lists use asterisks (@*@), pluses (@+@), and hyphens (@-@) as list markers
212 17 Hiroo Hayashi
213 1 Hans Ginzel
<pre>
214 1 Hans Ginzel
* Item 1
215 1 Hans Ginzel
* Item 2
216 1 Hans Ginzel
  * Item 21 (two spaces indentation)
217 1 Hans Ginzel
  * Item 22
218 1 Hans Ginzel
* Item 3
219 1 Hans Ginzel
</pre>
220 1 Hans Ginzel
221 1 Hans Ginzel
displays:
222 1 Hans Ginzel
223 1 Hans Ginzel
* Item 1
224 1 Hans Ginzel
* Item 2
225 1 Hans Ginzel
** Item 21
226 10 Hans Ginzel
** Item 22
227 10 Hans Ginzel
* Item 3
228 1 Hans Ginzel
229 1 Hans Ginzel
h3. Ordered lists
230 1 Hans Ginzel
231 17 Hiroo Hayashi
Ordered lists use numbers followed by periods.
232 17 Hiroo Hayashi
233 1 Hans Ginzel
<pre>
234 17 Hiroo Hayashi
1. Item 1
235 17 Hiroo Hayashi
3. Item 2
236 17 Hiroo Hayashi
2. Item 3
237 17 Hiroo Hayashi
  1. Item 3.1 (two spaces)
238 17 Hiroo Hayashi
  1. Item 3.2
239 1 Hans Ginzel
</pre>
240 1 Hans Ginzel
241 1 Hans Ginzel
displays:
242 1 Hans Ginzel
243 1 Hans Ginzel
# Item 1
244 1 Hans Ginzel
# Item 2
245 1 Hans Ginzel
# Item 3
246 1 Hans Ginzel
## Item 3.1
247 1 Hans Ginzel
## Item 3.2
248 1 Hans Ginzel
249 17 Hiroo Hayashi
Note that the actual numbers you use to mark the list have no effect on the output.
250 17 Hiroo Hayashi
251 1 Hans Ginzel
h3. Tables
252 1 Hans Ginzel
253 17 Hiroo Hayashi
Markdown does not have syntax for a table. Use an HTML table to write a table.
254 1 Hans Ginzel
255 17 Hiroo Hayashi
<pre><code><table>
256 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>
257 17 Hiroo Hayashi
  <tr><td>Starting with</td><td>a</td><td>simple</td><td>row</td></tr>
258 17 Hiroo Hayashi
  <tr><td style="text-align:center;" colspan="3">IT</td><td>align left</td></tr>
259 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>
260 17 Hiroo Hayashi
  <tr><td>2</td><td>Vasya Rogov</td><td style="text-align:center;">center</td></tr>
261 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>
262 17 Hiroo Hayashi
  <tr><td>(root)</td></tr>
263 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>
264 17 Hiroo Hayashi
  <tr><td>(anonymous)</td></tr>
265 17 Hiroo Hayashi
</table>
266 17 Hiroo Hayashi
</code></pre>
267 1 Hans Ginzel
268 17 Hiroo Hayashi
displays;
269 17 Hiroo Hayashi
270 17 Hiroo Hayashi
|=. *UserID*   |=. *Name*       |=. *Group*  |=. *attribute list* |
271 1 Hans Ginzel
|Starting with | a              |   simple   |row                 |
272 1 Hans Ginzel
|\3=.IT                                      |<. align left       |
273 1 Hans Ginzel
|1             |Artur Pirozhkov |/2.Users    |>. align right      |
274 1 Hans Ginzel
|2             |Vasya Rogov     |=. center   |
275 1 Hans Ginzel
|3             |John Smith      |Admin
276 1 Hans Ginzel
                                 (root)      |^. valign top       |
277 1 Hans Ginzel
|4             |-               |Nobody
278 1 Hans Ginzel
                                 (anonymous) |~. valign bottom    |
279 1 Hans Ginzel
280 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.
281 1 Hans Ginzel
282 1 Hans Ginzel
h3. Table of content
283 1 Hans Ginzel
284 1 Hans Ginzel
<pre><code>{{toc}} => left aligned toc
285 1 Hans Ginzel
{{>toc}} => right aligned toc
286 1 Hans Ginzel
</code></pre>
287 1 Hans Ginzel
288 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.
289 1 Hans Ginzel
290 11 Hans Ginzel
Example:
291 11 Hans Ginzel
292 17 Hiroo Hayashi
<pre><code>h1. headLineOne
293 11 Hans Ginzel
294 11 Hans Ginzel
h2. something
295 1 Hans Ginzel
296 1 Hans Ginzel
{{toc}}
297 1 Hans Ginzel
298 11 Hans Ginzel
h2. something more
299 11 Hans Ginzel
</code></pre>
300 11 Hans Ginzel
301 1 Hans Ginzel
h2. Macros
302 1 Hans Ginzel
303 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:
304 1 Hans Ginzel
305 1 Hans Ginzel
{{macro_list}}
306 1 Hans Ginzel
307 1 Hans Ginzel
h2. Code highlighting
308 1 Hans Ginzel
309 1 Hans Ginzel
Code highlighting relies on "CodeRay":http://coderay.rubychan.de/, a 
310 1 Hans Ginzel
fast syntax highlighting library written completely in Ruby. It 
311 1 Hans Ginzel
currently supports C, C++, CSS, Delphi, Diff, Groovy, HTML, Java, 
312 1 Hans Ginzel
Javascript, JSON, Nitro-XHTML, PHP, Python, RHTML, Ruby, Scheme, SQL, 
313 1 Hans Ginzel
XML and YAML code.
314 1 Hans Ginzel
315 1 Hans Ginzel
You can highlight code in your wiki page using this syntax:
316 1 Hans Ginzel
317 1 Hans Ginzel
<pre><code>``` ruby
318 1 Hans Ginzel
Place your code here.
319 1 Hans Ginzel
```</code></pre>
320 1 Hans Ginzel
321 1 Hans Ginzel
Example:
322 1 Hans Ginzel
323 1 Hans Ginzel
<pre><code class="ruby">
324 1 Hans Ginzel
# The Greeter class
325 1 Hans Ginzel
class Greeter
326 1 Hans Ginzel
  def initialize(name)
327 1 Hans Ginzel
    @name = name.capitalize
328 1 Hans Ginzel
  end
329 1 Hans Ginzel
 
330 1 Hans Ginzel
  def salute
331 1 Hans Ginzel
    puts "Hello #{@name}!"
332 1 Hans Ginzel
  end
333 1 Hans Ginzel
end
334 1 Hans Ginzel
</code></pre>
335 1 Hans Ginzel
336 1 Hans Ginzel
h2. Translation
337 1 Hans Ginzel
338 1 Hans Ginzel
Note that the following translations may not be up to date. Please refer to the original english documentation if needed.
339 1 Hans Ginzel
340 1 Hans Ginzel
* [[BrRedmineWikiFormatting|Português Brasileiro]]
341 1 Hans Ginzel
* [[RusRedmineTextFormatting|Русский]]
342 1 Hans Ginzel
* [[FrRedmineWikiFormatting|French]]
343 1 Hans Ginzel
* [[KoreanWikiFormatting|Korean]]
344 1 Hans Ginzel
* [[TurkishWikiFormatting|Türkçe]]
345 1 Hans Ginzel
* [[TraditionalChineseWikiFormatting|繁體中文]]
346 1 Hans Ginzel
* [[SimplifiedChineseWikiFormatting|简体中文]]