RedmineTextFormatting » History » Version 71

Dieter Egert, 2012-03-15 11:29

1 68 Jean-Philippe Lang
h1. Text formatting
2 1 Jean-Philippe Lang
3 1 Jean-Philippe Lang
{{>TOC}}
4 1 Jean-Philippe Lang
5 1 Jean-Philippe Lang
h2. Links
6 1 Jean-Philippe Lang
7 6 Jean-Philippe Lang
h3. Redmine links
8 6 Jean-Philippe Lang
9 68 Jean-Philippe Lang
Redmine allows hyperlinking between resources (issues, changesets, wiki pages...) from anywhere text formatting is used.
10 1 Jean-Philippe Lang
11 8 Jean-Philippe Lang
* Link to an issue: *!#124* (displays #124, link is striked-through if the issue is closed)
12 6 Jean-Philippe Lang
* 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 6 Jean-Philippe Lang
Wiki links:
16 1 Jean-Philippe Lang
17 3 Jean-Philippe Lang
* *[[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 1 Jean-Philippe Lang
21 51 Graham King
You can also link to pages of another project's wiki:
22 3 Jean-Philippe Lang
23 1 Jean-Philippe Lang
* *[[sandbox:some page]]* displays a link to the page named 'Some page' of the Sandbox wiki
24 1 Jean-Philippe Lang
* *[[sandbox:]]* displays a link to the Sandbox wiki main page
25 1 Jean-Philippe Lang
26 1 Jean-Philippe Lang
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 6 Jean-Philippe Lang
30 6 Jean-Philippe Lang
* Documents:
31 6 Jean-Philippe Lang
32 6 Jean-Philippe Lang
  * *!document#17* (link to document with id 17)
33 6 Jean-Philippe Lang
  * *!document:Greetings* (link to the document with title "Greetings")
34 6 Jean-Philippe Lang
  * *!document:"Some document"* (double quotes can be used when document title contains spaces)
35 43 Markus Valle-Klann
  * *!document:some_project:"Some document"* (link to a document in a different project)
36 6 Jean-Philippe Lang
37 6 Jean-Philippe Lang
* Versions:
38 6 Jean-Philippe Lang
39 6 Jean-Philippe Lang
  * *!version#3* (link to version with id 3)
40 6 Jean-Philippe Lang
  * *!version:1.0.0* (link to version named "1.0.0")
41 6 Jean-Philippe Lang
  * *!version:"1.0 beta 2"*
42 6 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 6 Jean-Philippe Lang
  
51 6 Jean-Philippe Lang
  * *!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 6 Jean-Philippe Lang
  * 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 1 Jean-Philippe Lang
55 14 Jean-Philippe Lang
* Repository files
56 14 Jean-Philippe Lang
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 14 Jean-Philippe Lang
64 32 Jean-Philippe Lang
Escaping:
65 6 Jean-Philippe Lang
66 6 Jean-Philippe Lang
* You can prevent Redmine links from being parsed by preceding them with an exclamation mark: !
67 6 Jean-Philippe Lang
68 42 Andrew Quach Huynh
h3. External links
69 5 Jean-Philippe Lang
70 5 Jean-Philippe Lang
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 5 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 48 Ian Epperson
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 1 Jean-Philippe Lang
h2. Text formatting
88 10 John Goerzen
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 1 Jean-Philippe Lang
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 1 Jean-Philippe Lang
h3. Font style
102 1 Jean-Philippe Lang
103 1 Jean-Philippe Lang
<pre><code>* *bold*
104 1 Jean-Philippe Lang
* _italic_
105 19 Pavel Schichko
* *_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 1 Jean-Philippe Lang
</code></pre>
112 1 Jean-Philippe Lang
113 1 Jean-Philippe Lang
Display:
114 1 Jean-Philippe Lang
115 1 Jean-Philippe Lang
 * *bold*
116 1 Jean-Philippe Lang
 * _italic_
117 19 Pavel Schichko
 * *_bold italic_*
118 1 Jean-Philippe Lang
 * +underline+
119 1 Jean-Philippe Lang
 * -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 1 Jean-Philippe Lang
h3. Inline images
125 9 Jean-Philippe Lang
126 1 Jean-Philippe Lang
* *&#33;image_url&#33;* displays an image located at image_url (textile syntax)
127 1 Jean-Philippe Lang
* *&#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 18 samir djouadi
130 15 Jean-Philippe Lang
If you have an image attached to your wiki page, it can be displayed inline using its filename: *&#33;attached_image.png&#33;*
131 1 Jean-Philippe Lang
132 1 Jean-Philippe Lang
h3. Headings
133 1 Jean-Philippe Lang
134 1 Jean-Philippe Lang
<pre><code>h1. Heading
135 66 Jean-Philippe Lang
136 1 Jean-Philippe Lang
h2. Subheading
137 66 Jean-Philippe Lang
138 1 Jean-Philippe Lang
h3. Subheading
139 1 Jean-Philippe Lang
</code></pre>
140 1 Jean-Philippe Lang
141 1 Jean-Philippe Lang
h3. Paragraphs
142 1 Jean-Philippe Lang
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 1 Jean-Philippe Lang
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 1 Jean-Philippe Lang
169 1 Jean-Philippe Lang
<pre><code>bq. Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
170 1 Jean-Philippe Lang
To go live, all you need to add is a database and a web server.
171 1 Jean-Philippe Lang
</code></pre>
172 1 Jean-Philippe Lang
173 1 Jean-Philippe Lang
Display:
174 1 Jean-Philippe Lang
175 1 Jean-Philippe Lang
bq. Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
176 1 Jean-Philippe Lang
To go live, all you need to add is a database and a web server.
177 1 Jean-Philippe Lang
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 20 Kirill Ponomarev
# Item 1
212 20 Kirill Ponomarev
# Item 2
213 20 Kirill Ponomarev
# Item 3
214 21 Andrew Chaika
## Item 3.1
215 21 Andrew Chaika
## Item 3.2
216 21 Andrew Chaika
217 1 Jean-Philippe Lang
h3. Tables
218 1 Jean-Philippe Lang
219 1 Jean-Philippe Lang
<pre>
220 71 Dieter Egert
|_.UserID     |_.Name|_.Group|_. attribute list  |
221 71 Dieter Egert
|Starting with| a    |   simple|>. row |
222 60 Dieter Egert
|\3=.IT               |<. align left|
223 60 Dieter Egert
|1|Artur Pirozhkov |/2.Users |>. align right|
224 60 Dieter Egert
|2|Vasya Rogov        |=. center |
225 58 Dieter Egert
|3|John Smith |Admin
226 58 Dieter Egert
               (root)|^. valign top |
227 58 Dieter Egert
|4|-          |Nobody
228 58 Dieter Egert
               (anonymous)|~. valign bottom|
229 20 Kirill Ponomarev
</pre>
230 21 Andrew Chaika
231 1 Jean-Philippe Lang
displays (all multiple spaces are replaced by 1 space):
232 1 Jean-Philippe Lang
233 71 Dieter Egert
|_.UserID     |_.Name|_.Group|_. attribute list   |
234 71 Dieter Egert
|Starting with| a    |   simple|>. row |
235 60 Dieter Egert
|\3=.IT                |<. align left|
236 60 Dieter Egert
|1|Artur Pirozhkov |/2.Users |>. align right|
237 60 Dieter Egert
|2|Vasya Rogov         |=. center |
238 58 Dieter Egert
|3|John Smith |Admin
239 58 Dieter Egert
               (root)|^. valign top |
240 58 Dieter Egert
|4|-          |Nobody
241 58 Dieter Egert
               (anonymous)|~. valign bottom|
242 1 Jean-Philippe Lang
243 1 Jean-Philippe Lang
h3. Table of content
244 1 Jean-Philippe Lang
245 1 Jean-Philippe Lang
<pre><code>{{toc}} => left aligned toc
246 1 Jean-Philippe Lang
{{>toc}} => right aligned toc
247 1 Jean-Philippe Lang
</code></pre>
248 7 Jean-Philippe Lang
249 7 Jean-Philippe Lang
h2. Macros
250 7 Jean-Philippe Lang
251 7 Jean-Philippe Lang
Redmine has the following builtin macros:
252 7 Jean-Philippe Lang
253 7 Jean-Philippe Lang
{{macro_list}}
254 7 Jean-Philippe Lang
255 1 Jean-Philippe Lang
256 4 Jean-Philippe Lang
h2. Code highlighting
257 51 Graham King
258 1 Jean-Philippe Lang
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.
259 1 Jean-Philippe Lang
260 1 Jean-Philippe Lang
You can highlight code in your wiki page using this syntax:
261 1 Jean-Philippe Lang
262 49 Dave Clements
<pre><code><pre><code class="ruby">
263 1 Jean-Philippe Lang
  Place your code here.
264 40 Mischa The Evil
</code></pre>
265 1 Jean-Philippe Lang
</code></pre>
266 1 Jean-Philippe Lang
267 1 Jean-Philippe Lang
Example:
268 1 Jean-Philippe Lang
269 1 Jean-Philippe Lang
<pre><code class="ruby">
270 1 Jean-Philippe Lang
# The Greeter class
271 1 Jean-Philippe Lang
class Greeter
272 1 Jean-Philippe Lang
  def initialize(name)
273 1 Jean-Philippe Lang
    @name = name.capitalize
274 1 Jean-Philippe Lang
  end
275 1 Jean-Philippe Lang
 
276 1 Jean-Philippe Lang
  def salute
277 1 Jean-Philippe Lang
    puts "Hello #{@name}!"
278 1 Jean-Philippe Lang
  end
279 40 Mischa The Evil
end
280 52 Vladimir Vasilkin
</code></pre>
281 52 Vladimir Vasilkin
282 52 Vladimir Vasilkin
283 52 Vladimir Vasilkin
h2. Translation
284 52 Vladimir Vasilkin
285 52 Vladimir Vasilkin
h3. Русский 
286 52 Vladimir Vasilkin
287 65 Lucy Yevseyeva
[[RusRedmineTextFormatting|Перевод на русский]]