RedmineTextFormatting

Version 70 (Jean-Philippe Lang, 2012-01-22 12:16)

1 68 Jean-Philippe Lang
h1. Text formatting
2 24 Peri Moritz
3 26 Mischa The Evil
{{>TOC}}
4 26 Mischa The Evil
5 25 Peri Moritz
h2. Links
6 24 Peri Moritz
7 24 Peri Moritz
h3. Redmine links
8 1 Jean-Philippe Lang
9 68 Jean-Philippe Lang
Redmine allows hyperlinking between resources (issues, changesets, wiki pages...) from anywhere text formatting is used.
10 24 Peri Moritz
11 26 Mischa The Evil
* Link to an issue: *!#124* (displays #124, link is striked-through if the issue is closed)
12 26 Mischa The Evil
* Link to a changeset: *!r758* (displays r758)
13 68 Jean-Philippe Lang
* Link to a changeset with a non-numeric hash: *commit:c6f4d0fd* (displays c6f4d0fd).
14 1 Jean-Philippe Lang
15 1 Jean-Philippe Lang
Wiki links:
16 1 Jean-Philippe Lang
17 26 Mischa The Evil
* *[[Guide]]* displays a link to the page named 'Guide': [[Guide]]
18 51 Graham King
* *[[Guide|User manual]]* displays a link to the same page but with different text: [[Guide|User manual]]
19 51 Graham King
* *[[Guide#User-guide|User guide]]* displays a link to the header on the same page with different text: [[Guide#User-guide|User guide]]
20 24 Peri Moritz
21 51 Graham King
You can also link to pages of another project's wiki:
22 1 Jean-Philippe Lang
23 26 Mischa The Evil
* *[[sandbox:some page]]* displays a link to the page named 'Some page' of the Sandbox wiki
24 26 Mischa The Evil
* *[[sandbox:]]* displays a link to the Sandbox wiki main page
25 1 Jean-Philippe Lang
26 26 Mischa The Evil
Wiki links are displayed in red if the page doesn't exist yet, eg: [[Nonexistent page]].
27 1 Jean-Philippe Lang
28 32 Jean-Philippe Lang
Links to others resources:
29 1 Jean-Philippe Lang
30 26 Mischa The Evil
* Documents:
31 1 Jean-Philippe Lang
32 26 Mischa The Evil
  * *!document#17* (link to document with id 17)
33 26 Mischa The Evil
  * *!document:Greetings* (link to the document with title "Greetings")
34 26 Mischa The Evil
  * *!document:"Some document"* (double quotes can be used when document title contains spaces)
35 54 Etienne Massip
  * *!document:some_project:"Some document"* (link to a document in a different project)
36 1 Jean-Philippe Lang
37 26 Mischa The Evil
* Versions:
38 24 Peri Moritz
39 26 Mischa The Evil
  * *!version#3* (link to version with id 3)
40 26 Mischa The Evil
  * *!version:1.0.0* (link to version named "1.0.0")
41 26 Mischa The Evil
  * *!version:"1.0 beta 2"*
42 1 Jean-Philippe Lang
43 44 Anh Tu Sam
* Projects:
44 44 Anh Tu Sam
45 44 Anh Tu Sam
  * *project#<id>* (link to project with <id>)
46 44 Anh Tu Sam
  * *!project:<identifier>*
47 44 Anh Tu Sam
  * *!project:<name>*
48 44 Anh Tu Sam
49 1 Jean-Philippe Lang
* Attachments:
50 26 Mischa The Evil
  
51 26 Mischa The Evil
  * *!attachment:file.zip* (link to the attachment of the current object named file.zip)
52 68 Jean-Philippe Lang
  * *!attachment:"file.zip"* (double quotes can be used when the filename contains non word characters)
53 26 Mischa The Evil
  * For now, attachments of the current object can be referenced only (if you're on an issue, it's possible to reference attachments of this issue only)
54 26 Mischa The Evil
55 26 Mischa The Evil
* Repository files
56 26 Mischa The Evil
57 39 Yuki Kita
  * *!source:some/file*           -- Link to the file located at /some/file in the project's repository
58 39 Yuki Kita
  * *!source:some/file@52*        -- Link to the file's revision 52
59 39 Yuki Kita
  * *!source:some/file#L120*      -- Link to line 120 of the file
60 39 Yuki Kita
  * *!source:some/file@52#L120*   -- Link to line 120 of the file's revision 52
61 39 Yuki Kita
  * *!source:"some file@52#L120"* -- Double quotes can be used when the URL contains spaces
62 39 Yuki Kita
  * *!export:some/file*           -- Force the download of the file
63 26 Mischa The Evil
64 32 Jean-Philippe Lang
Escaping:
65 1 Jean-Philippe Lang
66 26 Mischa The Evil
* You can prevent Redmine links from being parsed by preceding them with an exclamation mark: !
67 1 Jean-Philippe Lang
68 42 Andrew Quach Huynh
h3. External links
69 1 Jean-Philippe Lang
70 26 Mischa The Evil
HTTP URLs and email addresses are automatically turned into clickable links: 
71 47 Ian Epperson
* *http&#58;//www.redmine.org* -- External link to the redmine website: http://www.redmine.org
72 47 Ian Epperson
* *someone&#64;foo.bar* -- Link to an email address: someone@foo.bar
73 1 Jean-Philippe Lang
74 51 Graham King
HTTP URLs and email addresses can also use different text than the link itself:
75 47 Ian Epperson
* *"Redmine web site"&#58;http&#58;//www.redmine.org* -- External link with different text: "Redmine web site":http://www.redmine.org
76 70 Jean-Philippe Lang
* *!http://www.redmine.org/attachments/7069/Redmine_logo.png(Redmine web site)!:http://www.redmine.org* -- External image with a title that links to an URL: 
77 70 Jean-Philippe Lang
78 70 Jean-Philippe Lang
p=. !http://www.redmine.org/attachments/7069/Redmine_logo.png(Redmine web site)!:http://www.redmine.org
79 70 Jean-Philippe Lang
80 47 Ian Epperson
* *"Email someone"&#58;mailto&#58;someone&#64;foo.bar* -- Email link with different text: "Email someone":mailto:someone@foo.bar
81 1 Jean-Philippe Lang
82 57 Etienne Massip
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.
83 48 Ian Epperson
* *"Email webmaster and admin"&#58;mailto&#58;webmaster&#64;foo.bar?cc=admin&#64;foo.bar* -- Email to webmaster, CC admin:  "Email webmaster and admin":mailto:webmaster@foo.bar?cc=admin@foo.bar
84 48 Ian Epperson
* *"Email someone for help"&#58;mailto&#58;someone&#64;foo.bar?subject=Website%20Help* -- Email link with the subject "Website Help": "Email someone for help":mailto:someone@foo.bar?subject=Website%20Help
85 48 Ian Epperson
* *"Email someone for help"&#58;mailto&#58;someone&#64;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
86 48 Ian Epperson
87 26 Mischa The Evil
h2. Text formatting
88 1 Jean-Philippe Lang
89 67 Jean-Philippe Lang
For things such as headlines, bold, tables, lists, Redmine supports "Textile syntax":http://en.wikipedia.org/wiki/Textile_%28markup_language%29.  See http://redcloth.org/hobix.com/textile/ for information on using any of these features.  A few samples are included below, but the engine is capable of much more of that.
90 26 Mischa The Evil
91 38 ha thach
h3. Acronym
92 38 ha thach
93 38 ha thach
<pre>
94 38 ha thach
JPL(Jean-Philippe Lang)
95 38 ha thach
</pre>
96 38 ha thach
97 38 ha thach
Display:
98 38 ha thach
99 38 ha thach
JPL(Jean-Philippe Lang)
100 38 ha thach
101 26 Mischa The Evil
h3. Font style
102 26 Mischa The Evil
103 26 Mischa The Evil
<pre><code>* *bold*
104 1 Jean-Philippe Lang
* _italic_
105 1 Jean-Philippe Lang
* *_bold italic_*
106 1 Jean-Philippe Lang
* +underline+
107 1 Jean-Philippe Lang
* -strike-through-
108 45 Ian Epperson
* Plain ^superscript^
109 45 Ian Epperson
* Plain ~subscript~
110 63 Colin Sullivan
* @inline monospace@
111 26 Mischa The Evil
</code></pre>
112 1 Jean-Philippe Lang
113 1 Jean-Philippe Lang
Display:
114 1 Jean-Philippe Lang
115 26 Mischa The Evil
 * *bold*
116 26 Mischa The Evil
 * _italic_
117 26 Mischa The Evil
 * *_bold italic_*
118 26 Mischa The Evil
 * +underline+
119 26 Mischa The Evil
 * -strike-through-
120 45 Ian Epperson
 * Plain ^superscript^
121 45 Ian Epperson
 * Plain ~subscript~
122 63 Colin Sullivan
 * @inline monospace@
123 1 Jean-Philippe Lang
124 26 Mischa The Evil
h3. Inline images
125 1 Jean-Philippe Lang
126 26 Mischa The Evil
* *&#33;image_url&#33;* displays an image located at image_url (textile syntax)
127 26 Mischa The Evil
* *&#33;>image_url&#33;* right floating image
128 66 Jean-Philippe Lang
* *&#33;image_url(Image title)&#33;* displays an image with an alt/title attribute
129 24 Peri Moritz
130 26 Mischa The Evil
If you have an image attached to your wiki page, it can be displayed inline using its filename: *&#33;attached_image.png&#33;*
131 24 Peri Moritz
132 26 Mischa The Evil
h3. Headings
133 26 Mischa The Evil
134 26 Mischa The Evil
<pre><code>h1. Heading
135 66 Jean-Philippe Lang
136 24 Peri Moritz
h2. Subheading
137 66 Jean-Philippe Lang
138 24 Peri Moritz
h3. Subheading
139 26 Mischa The Evil
</code></pre>
140 24 Peri Moritz
141 26 Mischa The Evil
h3. Paragraphs
142 24 Peri Moritz
143 58 Dieter Egert
<pre><code>p. left aligned
144 58 Dieter Egert
145 60 Dieter Egert
  p(. left ident 1em
146 58 Dieter Egert
147 60 Dieter Egert
    p((. left ident 2em
148 60 Dieter Egert
    as well as for following lines
149 58 Dieter Egert
150 60 Dieter Egert
                                                                                   p>. right aligned
151 58 Dieter Egert
152 60 Dieter Egert
                                                                        p)))>. right ident 3em
153 58 Dieter Egert
154 60 Dieter Egert
                           p=. This is centered paragraph.
155 1 Jean-Philippe Lang
</code></pre>
156 1 Jean-Philippe Lang
157 1 Jean-Philippe Lang
h3. Predefined
158 1 Jean-Philippe Lang
159 24 Peri Moritz
To escape wiki syntax
160 58 Dieter Egert
<pre> <pre> *Your text won't become bold* </pre> </pre>
161 36 ha thach
Display:
162 37 ha thach
163 1 Jean-Philippe Lang
<pre> *Your text won't become bold* </pre>
164 38 ha thach
165 38 ha thach
h3. Blockquotes
166 37 ha thach
167 60 Dieter Egert
Start the paragraph with *bq.*  or > (also stacked: >>)
168 26 Mischa The Evil
169 24 Peri Moritz
<pre><code>bq. Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
170 26 Mischa The Evil
To go live, all you need to add is a database and a web server.
171 26 Mischa The Evil
</code></pre>
172 26 Mischa The Evil
173 24 Peri Moritz
Display:
174 26 Mischa The Evil
175 24 Peri Moritz
bq. Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
176 24 Peri Moritz
To go live, all you need to add is a database and a web server.
177 24 Peri Moritz
178 60 Dieter Egert
>> Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
179 60 Dieter Egert
To go live, all you need to add is a database and a web server. (starting with >>)
180 60 Dieter Egert
181 28 Jean-Philippe Lang
h3. Unordered lists
182 28 Jean-Philippe Lang
183 28 Jean-Philippe Lang
<pre>
184 28 Jean-Philippe Lang
* Item 1
185 28 Jean-Philippe Lang
* Item 2
186 29 Eric Gallimore
** Item 21
187 29 Eric Gallimore
** Item 22
188 28 Jean-Philippe Lang
* Item 3
189 28 Jean-Philippe Lang
</pre>
190 28 Jean-Philippe Lang
191 28 Jean-Philippe Lang
displays:
192 1 Jean-Philippe Lang
193 28 Jean-Philippe Lang
* Item 1
194 28 Jean-Philippe Lang
* Item 2
195 29 Eric Gallimore
** Item 21
196 28 Jean-Philippe Lang
** Item 22
197 28 Jean-Philippe Lang
* Item 3
198 1 Jean-Philippe Lang
199 1 Jean-Philippe Lang
h3. Ordered lists
200 1 Jean-Philippe Lang
201 28 Jean-Philippe Lang
<pre>
202 28 Jean-Philippe Lang
# Item 1
203 28 Jean-Philippe Lang
# Item 2
204 28 Jean-Philippe Lang
# Item 3
205 28 Jean-Philippe Lang
## Item 3.1
206 28 Jean-Philippe Lang
## Item 3.2
207 1 Jean-Philippe Lang
</pre>
208 29 Eric Gallimore
209 29 Eric Gallimore
displays:
210 1 Jean-Philippe Lang
211 26 Mischa The Evil
# Item 1
212 24 Peri Moritz
# Item 2
213 26 Mischa The Evil
# Item 3
214 24 Peri Moritz
## Item 3.1
215 24 Peri Moritz
## Item 3.2
216 24 Peri Moritz
217 1 Jean-Philippe Lang
h3. Tables
218 1 Jean-Philippe Lang
219 1 Jean-Philippe Lang
<pre>
220 58 Dieter Egert
|_.UserID|_.Name|_.Group|_. attribute list |
221 60 Dieter Egert
|\3=.IT               |<. align left|
222 60 Dieter Egert
|1|Artur Pirozhkov |/2.Users |>. align right|
223 60 Dieter Egert
|2|Vasya Rogov        |=. center |
224 58 Dieter Egert
|3|John Smith |Admin
225 58 Dieter Egert
               (root)|^. valign top |
226 58 Dieter Egert
|4|-          |Nobody
227 58 Dieter Egert
               (anonymous)|~. valign bottom|
228 24 Peri Moritz
</pre>
229 24 Peri Moritz
230 60 Dieter Egert
displays (all multiple spaces are replaced by 1 space):
231 24 Peri Moritz
232 58 Dieter Egert
|_.UserID|_.Name|_.Group|_. attribute list |
233 60 Dieter Egert
|\3=.IT                |<. align left|
234 60 Dieter Egert
|1|Artur Pirozhkov |/2.Users |>. align right|
235 60 Dieter Egert
|2|Vasya Rogov         |=. center |
236 58 Dieter Egert
|3|John Smith |Admin
237 58 Dieter Egert
               (root)|^. valign top |
238 58 Dieter Egert
|4|-          |Nobody
239 58 Dieter Egert
               (anonymous)|~. valign bottom|
240 26 Mischa The Evil
241 26 Mischa The Evil
h3. Table of content
242 26 Mischa The Evil
243 24 Peri Moritz
<pre><code>{{toc}} => left aligned toc
244 26 Mischa The Evil
{{>toc}} => right aligned toc
245 24 Peri Moritz
</code></pre>
246 26 Mischa The Evil
247 24 Peri Moritz
h2. Macros
248 24 Peri Moritz
249 24 Peri Moritz
Redmine has the following builtin macros:
250 26 Mischa The Evil
251 24 Peri Moritz
{{macro_list}}
252 24 Peri Moritz
253 26 Mischa The Evil
254 24 Peri Moritz
h2. Code highlighting
255 51 Graham King
256 24 Peri Moritz
Code highlighting relies on "CodeRay":http://coderay.rubychan.de/, a fast syntax highlighting library written completely in Ruby. It currently supports C, C++, CSS, Delphi, Diff, Groovy, HTML, Java, Javascript, JSON, Nitro-XHTML, PHP, Python, RHTML, Ruby, Scheme, SQL, XML and YAML code.
257 24 Peri Moritz
258 24 Peri Moritz
You can highlight code in your wiki page using this syntax:
259 26 Mischa The Evil
260 49 Dave Clements
<pre><code><pre><code class="ruby">
261 24 Peri Moritz
  Place your code here.
262 40 Mischa The Evil
</code></pre>
263 24 Peri Moritz
</code></pre>
264 24 Peri Moritz
265 24 Peri Moritz
Example:
266 26 Mischa The Evil
267 26 Mischa The Evil
<pre><code class="ruby">
268 26 Mischa The Evil
# The Greeter class
269 26 Mischa The Evil
class Greeter
270 26 Mischa The Evil
  def initialize(name)
271 26 Mischa The Evil
    @name = name.capitalize
272 26 Mischa The Evil
  end
273 26 Mischa The Evil
 
274 26 Mischa The Evil
  def salute
275 26 Mischa The Evil
    puts "Hello #{@name}!"
276 26 Mischa The Evil
  end
277 40 Mischa The Evil
end
278 52 Vladimir Vasilkin
</code></pre>
279 52 Vladimir Vasilkin
280 52 Vladimir Vasilkin
281 52 Vladimir Vasilkin
h2. Translation
282 52 Vladimir Vasilkin
283 52 Vladimir Vasilkin
h3. Русский 
284 52 Vladimir Vasilkin
285 65 Lucy Yevseyeva
[[RusRedmineTextFormatting|Перевод на русский]]