Switch to unified view

a/Allura/allura/templates/jinja_master/lib.html b/Allura/allura/templates/jinja_master/lib.html
...
...
107
    </li>
107
    </li>
108
  {% endfor %}
108
  {% endfor %}
109
{% endmacro %}
109
{% endmacro %}
110
110
111
{% macro markdown_syntax(id='') %}
111
{% macro markdown_syntax(id='') %}
112
<a class="markdown_syntax_toc_crumb" href="#md_ex_toc{{id}}">Back</a>
112
<h1>Markdown Syntax Guide</h1>
113
<h1>Markdown Syntax Guide</h1>
113
114
115
<div class="markdown_syntax_section md_ex_toc{{id}}">
114
<p>The Allura code uses markdown syntax everywhere to allow you to create rich<br>text markup, and extends markdown in several ways to allow for quick linking<br>to other artifacts in your project. </p>
116
<p>The Allura code uses markdown syntax everywhere to allow you to create rich<br>text markup, and extends markdown in several ways to allow for quick linking<br>to other artifacts in your project. </p>
115
<p>Markdown was created to be easy to read, easy to write, and still readable in plain text format.</p>
117
<p>Markdown was created to be easy to read, easy to write, and still readable in plain text format.</p>
116
118
117
<ul>
119
<ul class="markdown_syntax_toc">
118
    <li><a href="#md_ex_links{{id}}">Links</a></li>
120
    <li><a href="#md_ex_links{{id}}">Links</a></li>
119
    <li><a href="#md_ex_reflinks{{id}}">Reference Links</a></li>
121
    <li><a href="#md_ex_reflinks{{id}}">Reference Links</a></li>
120
    <li><a href="#md_ex_artlinks{{id}}">Artifact Links</a></li>
122
    <li><a href="#md_ex_artlinks{{id}}">Artifact Links</a></li>
121
    <li><a href="#md_ex_text{{id}}">Text</a></li>
123
    <li><a href="#md_ex_text{{id}}">Text</a></li>
122
    <li><a href="#md_ex_bq{{id}}">Blockquotes</a></li>
124
    <li><a href="#md_ex_bq{{id}}">Blockquotes</a></li>
...
...
133
    <li><a href="#md_ex_neighborhood_notes{{id}}">Neighborhood Notifications</a></li>
135
    <li><a href="#md_ex_neighborhood_notes{{id}}">Neighborhood Notifications</a></li>
134
    <li><a href="#md_ex_download_button{{id}}">Download Button</a></li>
136
    <li><a href="#md_ex_download_button{{id}}">Download Button</a></li>
135
    <li><a href="#md_ex_project_screenshots{{id}}">Project Screenshots</a></li>
137
    <li><a href="#md_ex_project_screenshots{{id}}">Project Screenshots</a></li>
136
    <li><a href="#md_ex_thanks{{id}}">Thanks</a></li>
138
    <li><a href="#md_ex_thanks{{id}}">Thanks</a></li>
137
</ul>
139
</ul>
140
</div>
138
141
142
<div class="markdown_syntax_section hidden_in_modal md_ex_links{{id}}">
139
<h2 id="md_ex_links{{id}}">Links</h2>
143
<h2 id="md_ex_links{{id}}">Links</h2>
140
144
141
<p>Most URLs will automatically be turned into links.  To be explicit, just write it like this:</p>
145
<p>Most URLs will automatically be turned into links.  To be explicit, just write it like this:</p>
142
146
143
<div class="codehilite"><pre>
147
<div class="codehilite"><pre>
...
...
162
<p>You can add a *title* (which shows up under the cursor):</p>
166
<p>You can add a *title* (which shows up under the cursor):</p>
163
<div class="codehilite"><pre>[like this](http://someurl "this title shows up when you hover")</pre></div>
167
<div class="codehilite"><pre>[like this](http://someurl "this title shows up when you hover")</pre></div>
164
168
165
<p>Output:</p>
169
<p>Output:</p>
166
{{g.markdown.convert('''[like this](http://someurl "this title shows up when you hover")''')}}
170
{{g.markdown.convert('''[like this](http://someurl "this title shows up when you hover")''')}}
171
</div>
167
172
168
173
174
<div class="markdown_syntax_section hidden_in_modal md_ex_reflinks{{id}}">
169
<h2 id="md_ex_reflinks{{id}}">Reference Links</h2>
175
<h2 id="md_ex_reflinks{{id}}">Reference Links</h2>
170
<div class="codehilite"><pre>You can also put the [link URL][1] below the current paragraph
176
<div class="codehilite"><pre>You can also put the [link URL][1] below the current paragraph
171
like [this][2].
177
like [this][2].
172
178
173
   [1]: http://url
179
   [1]: http://url
...
...
193
<p>Output:</p>
199
<p>Output:</p>
194
{{g.markdown.convert('''Or you can use a [shortcut][] reference, which links the text
200
{{g.markdown.convert('''Or you can use a [shortcut][] reference, which links the text
195
"shortcut" to the link named "[shortcut]" on the next paragraph.
201
"shortcut" to the link named "[shortcut]" on the next paragraph.
196
202
197
[shortcut]: http://goes/with/the/link/name/text''')}}
203
[shortcut]: http://goes/with/the/link/name/text''')}}
204
</div>
198
205
199
206
207
<div class="markdown_syntax_section hidden_in_modal md_ex_artlinks{{id}}">
200
<h2 id="md_ex_artlinks{{id}}">Artifact Links</h2>
208
<h2 id="md_ex_artlinks{{id}}">Artifact Links</h2>
201
<p>Any existing forge resource can be linked with surrounding square brackets ie [MyPage] or [#123].</p>
209
<p>Any existing forge resource can be linked with surrounding square brackets ie [MyPage] or [#123].</p>
202
210
203
<p>Links to resources in other tools can be explicitly referenced by adding a tool identifier prefix to the link.
211
<p>Links to resources in other tools can be explicitly referenced by adding a tool identifier prefix to the link.
204
So for instance `[developerwiki:MyPage]` can refer to a wiki page in a `developerwiki` instance.
212
So for instance `[developerwiki:MyPage]` can refer to a wiki page in a `developerwiki` instance.
...
...
212
[#123]
220
[#123]
213
[tickets:#123]
221
[tickets:#123]
214
</pre></div>
222
</pre></div>
215
223
216
<p>No example output is available for this one because it only works on real artifacts. Try it in your project!</p>
224
<p>No example output is available for this one because it only works on real artifacts. Try it in your project!</p>
225
</div>
217
226
227
<div class="markdown_syntax_section hidden_in_modal md_ex_text{{id}}">
218
<h2 id="md_ex_text{{id}}">Text</h2>
228
<h2 id="md_ex_text{{id}}">Text</h2>
219
<p>Use * or _ to emphasize things:</p>
229
<p>Use * or _ to emphasize things:</p>
220
<div class="codehilite"><pre>*this is in italic*  and _so is this_
230
<div class="codehilite"><pre>*this is in italic*  and _so is this_
221
231
222
**this is in bold**  and __so is this__
232
**this is in bold**  and __so is this__
...
...
252
you would expect.  A blank line separates paragraphs.
262
you would expect.  A blank line separates paragraphs.
253
263
254
So this is a new paragraph. But any text on adjacent lines
264
So this is a new paragraph. But any text on adjacent lines
255
will all end up
265
will all end up
256
in the same paragraph.""")}}
266
in the same paragraph.""")}}
267
</div>
257
268
269
<div class="markdown_syntax_section hidden_in_modal md_ex_bq{{id}}">
258
<h2 id="md_ex_bq{{id}}">Blockquotes</h2>
270
<h2 id="md_ex_bq{{id}}">Blockquotes</h2>
259
<p>Use the &gt; character in front of a line, <i>just like in email</i></p>
271
<p>Use the &gt; character in front of a line, <i>just like in email</i></p>
260
<div class="codehilite"><pre>&gt; Use it if you're quoting a person, a song or whatever.
272
<div class="codehilite"><pre>&gt; Use it if you're quoting a person, a song or whatever.
261
273
262
&gt; You can use *italic* or lists inside them also.
274
&gt; You can use *italic* or lists inside them also.
...
...
276
all of these lines are still
288
all of these lines are still
277
part of the blockquote, even without the &gt; character in front.
289
part of the blockquote, even without the &gt; character in front.
278
290
279
To end the blockquote, just put a blank line before the following
291
To end the blockquote, just put a blank line before the following
280
paragraph.""")}}
292
paragraph.""")}}
293
</div>
281
294
282
295
296
<div class="markdown_syntax_section hidden_in_modal md_ex_pre{{id}}">
283
<h2 id="md_ex_pre{{id}}">Preformatted Text</h2>
297
<h2 id="md_ex_pre{{id}}">Preformatted Text</h2>
284
<p>If you want some text to show up exactly as you write it, without
298
<p>If you want some text to show up exactly as you write it, without
285
Markdown doing anything to it, just indent every line by at least 4
299
Markdown doing anything to it, just indent every line by at least 4
286
spaces (or 1 tab).</p>
300
spaces (or 1 tab).</p>
287
<div class="codehilite"><pre>
301
<div class="codehilite"><pre>
...
...
305
    exactly <i>as you see it in this text file</i>.
319
    exactly <i>as you see it in this text file</i>.
306
320
307
As a shortcut you can use backquotes to do the same thing while
321
As a shortcut you can use backquotes to do the same thing while
308
inside a normal pargraph.  `This won't be *italic* or **bold**
322
inside a normal pargraph.  `This won't be *italic* or **bold**
309
at all.`""")}}
323
at all.`""")}}
324
</div>
310
325
311
326
327
<div class="markdown_syntax_section hidden_in_modal md_ex_lists{{id}}">
312
<h2 id="md_ex_lists{{id}}">Lists</h2>
328
<h2 id="md_ex_lists{{id}}">Lists</h2>
313
<div class="codehilite"><pre>* an asterisk starts an unordered list
329
<div class="codehilite"><pre>* an asterisk starts an unordered list
314
* and this is another item in the list
330
* and this is another item in the list
315
+ or you can also use the + character
331
+ or you can also use the + character
316
- or the - character
332
- or the - character
...
...
339
*  this will show as number "3."
355
*  this will show as number "3."
340
9. any number, +, -, or * will keep the list going.
356
9. any number, +, -, or * will keep the list going.
341
    * just indent by 4 spaces (or tab) to make a sub-list
357
    * just indent by 4 spaces (or tab) to make a sub-list
342
        1. keep indenting for more sub lists
358
        1. keep indenting for more sub lists
343
    * here i\'m back to the second level''')}}
359
    * here i\'m back to the second level''')}}
360
</div>
344
361
362
<div class="markdown_syntax_section hidden_in_modal md_ex_tables{{id}}">
345
<h2 id="md_ex_tables{{id}}">Tables</h2>
363
<h2 id="md_ex_tables{{id}}">Tables</h2>
346
<p>You can create tables using pipes and dashes like this:</p>
364
<p>You can create tables using pipes and dashes like this:</p>
347
<div class="codehilite"><pre>
365
<div class="codehilite"><pre>
348
  First Header  | Second Header
366
  First Header  | Second Header
349
  ------------- | -------------
367
  ------------- | -------------
...
...
373
-------------  | -------------
391
-------------  | -------------
374
*Content Cell* | Content Cell
392
*Content Cell* | Content Cell
375
Content Cell   | Content Cell''')}}
393
Content Cell   | Content Cell''')}}
376
394
377
<p>You can also create tables using HTML code.</p>
395
<p>You can also create tables using HTML code.</p>
396
</div>
378
397
398
<div class="markdown_syntax_section hidden_in_modal md_ex_headers{{id}}">
379
<h2 id="md_ex_headers{{id}}">Headers</h2>
399
<h2 id="md_ex_headers{{id}}">Headers</h2>
380
<p>Just put 1 or more dashes or equals signs (--- or ===) below the
400
<p>Just put 1 or more dashes or equals signs (--- or ===) below the
381
title.</p>
401
title.</p>
382
<div class="codehilite"><pre>This is a huge header
402
<div class="codehilite"><pre>This is a huge header
383
==================
403
==================
...
...
390
{{g.markdown.convert('''This is a huge header
410
{{g.markdown.convert('''This is a huge header
391
==================
411
==================
392
412
393
this is a smaller header
413
this is a smaller header
394
------------------''')}}
414
------------------''')}}
415
</div>
395
416
396
417
418
<div class="markdown_syntax_section hidden_in_modal md_ex_hr{{id}}">
397
<h2 id="md_ex_hr{{id}}">Horizontal Rule</h2>
419
<h2 id="md_ex_hr{{id}}">Horizontal Rule</h2>
398
<p>Just put three or more *'s or -'s on a line:</p>
420
<p>Just put three or more *'s or -'s on a line:</p>
399
<div class="codehilite"><pre>
421
<div class="codehilite"><pre>
400
----------------
422
----------------
401
</pre></div>
423
</pre></div>
...
...
429
</pre></div>
451
</pre></div>
430
452
431
<p>Output:</p>
453
<p>Output:</p>
432
{{g.markdown.convert('''you will get a header
454
{{g.markdown.convert('''you will get a header
433
---''')}}
455
---''')}}
456
</div>
434
457
435
458
459
<div class="markdown_syntax_section hidden_in_modal md_ex_img{{id}}">
436
<h2 id="md_ex_img{{id}}">Images</h2>
460
<h2 id="md_ex_img{{id}}">Images</h2>
437
<p>To include an image, just put a "!" in front of a text link:</p>
461
<p>To include an image, just put a "!" in front of a text link:</p>
438
<div class="codehilite"><pre>
462
<div class="codehilite"><pre>
439
![alternate text](https://sourceforge.net/images/icon_linux.gif)
463
![alternate text](https://sourceforge.net/images/icon_linux.gif)
440
</pre></div>
464
</pre></div>
...
...
457
[[img src=attached-image.jpg alt=foobar]]
481
[[img src=attached-image.jpg alt=foobar]]
458
</pre></div>
482
</pre></div>
459
483
460
<p>Output:</p>
484
<p>Output:</p>
461
{{g.markdown.convert('''[[img src=attached-image.jpg alt=foobar]]''')}}
485
{{g.markdown.convert('''[[img src=attached-image.jpg alt=foobar]]''')}}
486
</div>
462
487
463
488
489
<div class="markdown_syntax_section hidden_in_modal md_ex_escapes{{id}}">
464
<h2 id="md_ex_escapes{{id}}">Escapes</h2>
490
<h2 id="md_ex_escapes{{id}}">Escapes</h2>
465
<p>What if you want to just show asterisks, not italics?</p>
491
<p>What if you want to just show asterisks, not italics?</p>
466
<div class="codehilite"><pre>* this shows up in italics: *a happy day*
492
<div class="codehilite"><pre>* this shows up in italics: *a happy day*
467
* this shows the asterisks: \*a happy day\*
493
* this shows the asterisks: \*a happy day\*
468
</pre></div>
494
</pre></div>
...
...
486
{{g.markdown.convert('''<b>this will be bold</b>
512
{{g.markdown.convert('''<b>this will be bold</b>
487
you should escape &lt;unknown&gt; tags
513
you should escape &lt;unknown&gt; tags
488
&lt; special entities work
514
&lt; special entities work
489
&amp;lt; if you want to escape it''')}}
515
&amp;lt; if you want to escape it''')}}
490
<p>Individual ampersands (&amp;) and less-than signs (&lt;) are fine, they will be shown as expected.</p>
516
<p>Individual ampersands (&amp;) and less-than signs (&lt;) are fine, they will be shown as expected.</p>
517
</div>
491
518
492
519
520
<div class="markdown_syntax_section hidden_in_modal md_ex_moreheaders{{id}}">
493
<h2 id="md_ex_moreheaders{{id}}">More Headers</h2>
521
<h2 id="md_ex_moreheaders{{id}}">More Headers</h2>
494
<p>More ways of doing headers:</p>
522
<p>More ways of doing headers:</p>
495
<div class="codehilite"><pre># this is a huge header #
523
<div class="codehilite"><pre># this is a huge header #
496
## this is a smaller header ##
524
## this is a smaller header ##
497
### this is even smaller ###
525
### this is even smaller ###
...
...
506
### this is even smaller ###
534
### this is even smaller ###
507
#### more small ####
535
#### more small ####
508
##### even smaller #####
536
##### even smaller #####
509
###### smallest still: `<h6>` header''')}}
537
###### smallest still: `<h6>` header''')}}
510
<p>You can use up to 6 <code>#</code> characters at the beginning of the line.</p>
538
<p>You can use up to 6 <code>#</code> characters at the beginning of the line.</p>
539
</div>
511
540
512
541
542
<div class="markdown_syntax_section hidden_in_modal md_ex_code{{id}}">
513
<h2 id="md_ex_code{{id}}">Code Highlighting</h2>
543
<h2 id="md_ex_code{{id}}">Code Highlighting</h2>
514
<p>The Code highlighting used in the newforge is based on (http://www.freewisdom.org/projects/python-markdown/CodeHilite). It  follows the same syntax as regular Markdown code blocks, except that there are two ways to tell the highlighter what language to use for the code block.</p>
544
<p>The Code highlighting used in the newforge is based on (http://www.freewisdom.org/projects/python-markdown/CodeHilite). It  follows the same syntax as regular Markdown code blocks, except that there are two ways to tell the highlighter what language to use for the code block.</p>
515
545
516
<p>If the first line of the codeblock contains a shebang, the language is derived from that and line numbers are used.</p>
546
<p>If the first line of the codeblock contains a shebang, the language is derived from that and line numbers are used.</p>
517
547
...
...
548
<p>Output:</p>
578
<p>Output:</p>
549
{{g.markdown.convert('''
579
{{g.markdown.convert('''
550
~~~~~~
580
~~~~~~
551
<a href="#">My code</a>
581
<a href="#">My code</a>
552
~~~~~~''')}}
582
~~~~~~''')}}
583
</div>
553
584
554
585
586
<div class="markdown_syntax_section hidden_in_modal md_ex_includes{{id}}">
555
<h2 id="md_ex_includes{{id}}">Includes</h2>
587
<h2 id="md_ex_includes{{id}}">Includes</h2>
556
<p>You can embed another wiki page directly:</p>
588
<p>You can embed another wiki page directly:</p>
557
<div class="codehilite"><pre>
589
<div class="codehilite"><pre>
558
[[include ref=SamplePage]]
590
[[include ref=SamplePage]]
559
</pre></div>
591
</pre></div>
560
592
561
<p>No example output is available for this one because it only works on real wiki pages. Try it in your wiki!</p>
593
<p>No example output is available for this one because it only works on real wiki pages. Try it in your wiki!</p>
594
</div>
562
595
563
596
597
<div class="markdown_syntax_section hidden_in_modal md_ex_neighborhood_notes{{id}}">
564
<h2 id="md_ex_neighborhood_notes{{id}}">Neighborhood Notifications</h2>
598
<h2 id="md_ex_neighborhood_notes{{id}}">Neighborhood Notifications</h2>
565
<p>You can list updates from all projects in a neighborhood by tool type. Max_number (default is 5) and sort (default is pubdate) are optional:</p>
599
<p>You can list updates from all projects in a neighborhood by tool type. Max_number (default is 5) and sort (default is pubdate) are optional:</p>
566
<div class="codehilite"><pre>
600
<div class="codehilite"><pre>
567
[[neighborhood_feeds tool_name=Wiki max_number=10 sort=pubdate]]
601
[[neighborhood_feeds tool_name=Wiki max_number=10 sort=pubdate]]
568
</pre></div>
602
</pre></div>
603
</div>
569
604
605
<div class="markdown_syntax_section hidden_in_modal md_ex_neighborhood_blog_posts{{id}}">
570
<h2 id="md_ex_neighborhood_blog_posts{{id}}">Neighborhood Blog Posts</h2>
606
<h2 id="md_ex_neighborhood_blog_posts{{id}}">Neighborhood Blog Posts</h2>
571
<p>You can view blog posts from all projects in a neighborhood. Max_number (default is 5) and sort (default is timestamp) are optional:</p>
607
<p>You can view blog posts from all projects in a neighborhood. Max_number (default is 5) and sort (default is timestamp) are optional:</p>
572
<div class="codehilite"><pre>
608
<div class="codehilite"><pre>
573
[[neighborhood_blog_posts max_number=10 sort=timestamp]]
609
[[neighborhood_blog_posts max_number=10 sort=timestamp]]
574
</pre></div>
610
</pre></div>
611
</div>
575
612
613
<div class="markdown_syntax_section hidden_in_modal md_ex_project_blog_posts{{id}}">
576
<h2 id="md_ex_project_blog_posts{{id}}">Project Blog Posts</h2>
614
<h2 id="md_ex_project_blog_posts{{id}}">Project Blog Posts</h2>
577
<p>You can view blog posts from all blogs in a project. Max_number (default is 5), mount point (leave empty to view posts from all blog tools in a project), and sort (default is timestamp) are optional:</p>
615
<p>You can view blog posts from all blogs in a project. Max_number (default is 5), mount point (leave empty to view posts from all blog tools in a project), and sort (default is timestamp) are optional:</p>
578
<div class="codehilite"><pre>
616
<div class="codehilite"><pre>
579
[[project_blog_posts max_number=10 sort=timestamp mount_point=news]]
617
[[project_blog_posts max_number=10 sort=timestamp mount_point=news]]
580
</pre></div>
618
</pre></div>
619
</div>
581
620
621
<div class="markdown_syntax_section hidden_in_modal md_ex_download_button{{id}}">
582
<h2 id="md_ex_download_button{{id}}">Download Button</h2>
622
<h2 id="md_ex_download_button{{id}}">Download Button</h2>
583
<p>You can display a download button that links to the best download available for the active project. Please note that if you use this macro and there is no download associated with your project, the button will not appear.</p>
623
<p>You can display a download button that links to the best download available for the active project. Please note that if you use this macro and there is no download associated with your project, the button will not appear.</p>
584
<div class="codehilite"><pre>
624
<div class="codehilite"><pre>
585
[[download_button]]
625
[[download_button]]
586
</pre></div>
626
</pre></div>
627
</div>
587
628
629
<div class="markdown_syntax_section hidden_in_modal md_ex_project_screenshots{{id}}">
588
<h2 id="md_ex_project_screenshots{{id}}">Project Screenshots</h2>
630
<h2 id="md_ex_project_screenshots{{id}}">Project Screenshots</h2>
589
<p>You can show all the screenshots for the current project as thumbnails that are linked to the full-size image.</p>
631
<p>You can show all the screenshots for the current project as thumbnails that are linked to the full-size image.</p>
590
<div class="codehilite"><pre>
632
<div class="codehilite"><pre>
591
[[project_screenshots]]
633
[[project_screenshots]]
592
</pre></div>
634
</pre></div>
635
</div>
593
636
637
<div class="markdown_syntax_section hidden_in_modal md_ex_thanks{{id}}">
594
<h2 id="md_ex_thanks{{id}}">Thanks</h2>
638
<h2 id="md_ex_thanks{{id}}">Thanks</h2>
595
<p>Thanks to John Gruber and Aaron Swartz for creating Markdown.</p>
639
<p>Thanks to John Gruber and Aaron Swartz for creating Markdown.</p>
596
<p>
640
<p>
597
This page is based on some examples from Greg Schueler, <a href="mailto:greg@vario.us">greg@vario.us</a>
641
This page is based on some examples from Greg Schueler, <a href="mailto:greg@vario.us">greg@vario.us</a>
598
</p>
642
</p>
643
</div>
599
{% endmacro %}
644
{% endmacro %}