asciidoctor 1.5.8 → 2.0.0.rc.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.adoc +162 -17
- data/LICENSE +1 -1
- data/README-de.adoc +12 -13
- data/README-fr.adoc +11 -12
- data/README-jp.adoc +11 -12
- data/README-zh_CN.adoc +12 -13
- data/README.adoc +6 -7
- data/asciidoctor.gemspec +19 -24
- data/bin/asciidoctor +5 -4
- data/data/reference/syntax.adoc +283 -0
- data/data/stylesheets/asciidoctor-default.css +56 -52
- data/data/stylesheets/coderay-asciidoctor.css +7 -9
- data/lib/asciidoctor.rb +171 -232
- data/lib/asciidoctor/abstract_block.rb +96 -105
- data/lib/asciidoctor/abstract_node.rb +118 -139
- data/lib/asciidoctor/attribute_list.rb +10 -14
- data/lib/asciidoctor/block.rb +20 -19
- data/lib/asciidoctor/callouts.rb +4 -2
- data/lib/asciidoctor/cli.rb +3 -2
- data/lib/asciidoctor/cli/invoker.rb +14 -21
- data/lib/asciidoctor/cli/options.rb +64 -54
- data/lib/asciidoctor/converter.rb +357 -185
- data/lib/asciidoctor/converter/composite.rb +40 -48
- data/lib/asciidoctor/converter/docbook5.rb +604 -640
- data/lib/asciidoctor/converter/html5.rb +949 -963
- data/lib/asciidoctor/converter/manpage.rb +569 -548
- data/lib/asciidoctor/converter/template.rb +231 -272
- data/lib/asciidoctor/core_ext.rb +5 -18
- data/lib/asciidoctor/core_ext/float/truncate.rb +19 -0
- data/lib/asciidoctor/core_ext/match_data/names.rb +7 -0
- data/lib/asciidoctor/core_ext/nil_or_empty.rb +1 -0
- data/lib/asciidoctor/core_ext/regexp/is_match.rb +4 -2
- data/lib/asciidoctor/document.rb +399 -377
- data/lib/asciidoctor/extensions.rb +72 -140
- data/lib/asciidoctor/helpers.rb +122 -83
- data/lib/asciidoctor/inline.rb +5 -1
- data/lib/asciidoctor/list.rb +13 -11
- data/lib/asciidoctor/logging.rb +17 -16
- data/lib/asciidoctor/parser.rb +390 -423
- data/lib/asciidoctor/path_resolver.rb +10 -5
- data/lib/asciidoctor/reader.rb +286 -263
- data/lib/asciidoctor/rouge_ext.rb +39 -0
- data/lib/asciidoctor/section.rb +9 -8
- data/lib/asciidoctor/stylesheets.rb +19 -37
- data/lib/asciidoctor/substitutors.rb +364 -509
- data/lib/asciidoctor/syntax_highlighter.rb +238 -0
- data/lib/asciidoctor/syntax_highlighter/coderay.rb +87 -0
- data/lib/asciidoctor/syntax_highlighter/highlightjs.rb +26 -0
- data/lib/asciidoctor/syntax_highlighter/html_pipeline.rb +10 -0
- data/lib/asciidoctor/syntax_highlighter/prettify.rb +27 -0
- data/lib/asciidoctor/syntax_highlighter/pygments.rb +149 -0
- data/lib/asciidoctor/syntax_highlighter/rouge.rb +129 -0
- data/lib/asciidoctor/table.rb +73 -66
- data/lib/asciidoctor/timings.rb +4 -2
- data/lib/asciidoctor/version.rb +2 -1
- data/lib/asciidoctor/writer.rb +30 -0
- data/man/asciidoctor.1 +19 -15
- data/man/asciidoctor.adoc +14 -12
- metadata +69 -216
- data/CONTRIBUTING.adoc +0 -185
- data/Gemfile +0 -60
- data/Rakefile +0 -129
- data/bin/asciidoctor-safe +0 -15
- data/features/open_block.feature +0 -92
- data/features/pass_block.feature +0 -66
- data/features/step_definitions.rb +0 -49
- data/features/text_formatting.feature +0 -57
- data/features/xref.feature +0 -1039
- data/lib/asciidoctor/converter/base.rb +0 -59
- data/lib/asciidoctor/converter/docbook45.rb +0 -93
- data/lib/asciidoctor/converter/factory.rb +0 -226
- data/lib/asciidoctor/core_ext/1.8.7/base64/strict_encode64.rb +0 -6
- data/lib/asciidoctor/core_ext/1.8.7/concurrent/hash.rb +0 -5
- data/lib/asciidoctor/core_ext/1.8.7/hash/key.rb +0 -4
- data/lib/asciidoctor/core_ext/1.8.7/io/binread.rb +0 -6
- data/lib/asciidoctor/core_ext/1.8.7/io/write.rb +0 -5
- data/lib/asciidoctor/core_ext/1.8.7/string/chr.rb +0 -6
- data/lib/asciidoctor/core_ext/1.8.7/string/limit_bytesize.rb +0 -29
- data/lib/asciidoctor/core_ext/1.8.7/symbol/empty.rb +0 -6
- data/lib/asciidoctor/core_ext/1.8.7/symbol/length.rb +0 -6
- data/lib/asciidoctor/core_ext/string/limit_bytesize.rb +0 -10
- data/test/api_test.rb +0 -1240
- data/test/attribute_list_test.rb +0 -242
- data/test/attributes_test.rb +0 -1623
- data/test/blocks_test.rb +0 -3870
- data/test/converter_test.rb +0 -470
- data/test/document_test.rb +0 -1853
- data/test/extensions_test.rb +0 -1560
- data/test/fixtures/asciidoc_index.txt +0 -521
- data/test/fixtures/basic-docinfo-footer.html +0 -6
- data/test/fixtures/basic-docinfo-footer.xml +0 -8
- data/test/fixtures/basic-docinfo.html +0 -1
- data/test/fixtures/basic-docinfo.xml +0 -4
- data/test/fixtures/basic.asciidoc +0 -5
- data/test/fixtures/chapter-a.adoc +0 -3
- data/test/fixtures/child-include.adoc +0 -5
- data/test/fixtures/circle.svg +0 -9
- data/test/fixtures/custom-backends/erb/html5/block_paragraph.html.erb +0 -6
- data/test/fixtures/custom-backends/haml/docbook45/block_paragraph.xml.haml +0 -6
- data/test/fixtures/custom-backends/haml/html5-tweaks/block_paragraph.html.haml +0 -1
- data/test/fixtures/custom-backends/haml/html5/block_paragraph.html.haml +0 -3
- data/test/fixtures/custom-backends/haml/html5/block_sidebar.html.haml +0 -5
- data/test/fixtures/custom-backends/slim/docbook45/block_paragraph.xml.slim +0 -6
- data/test/fixtures/custom-backends/slim/html5/block_paragraph.html.slim +0 -3
- data/test/fixtures/custom-backends/slim/html5/block_sidebar.html.slim +0 -5
- data/test/fixtures/custom-docinfodir/basic-docinfo.html +0 -1
- data/test/fixtures/custom-docinfodir/docinfo.html +0 -1
- data/test/fixtures/docinfo-footer.html +0 -1
- data/test/fixtures/docinfo-footer.xml +0 -9
- data/test/fixtures/docinfo.html +0 -1
- data/test/fixtures/docinfo.xml +0 -3
- data/test/fixtures/doctime-localtime.adoc +0 -2
- data/test/fixtures/dot.gif +0 -0
- data/test/fixtures/encoding.asciidoc +0 -13
- data/test/fixtures/file-with-missing-include.adoc +0 -1
- data/test/fixtures/grandchild-include.adoc +0 -3
- data/test/fixtures/hello-asciidoctor.pdf +0 -69
- data/test/fixtures/include-file.asciidoc +0 -24
- data/test/fixtures/include-file.jsx +0 -8
- data/test/fixtures/include-file.ml +0 -3
- data/test/fixtures/include-file.xml +0 -5
- data/test/fixtures/lists.adoc +0 -96
- data/test/fixtures/master.adoc +0 -5
- data/test/fixtures/mismatched-end-tag.adoc +0 -7
- data/test/fixtures/other-chapters.adoc +0 -11
- data/test/fixtures/outer-include.adoc +0 -5
- data/test/fixtures/parent-include-restricted.adoc +0 -5
- data/test/fixtures/parent-include.adoc +0 -5
- data/test/fixtures/sample.asciidoc +0 -30
- data/test/fixtures/section-a.adoc +0 -4
- data/test/fixtures/stylesheets/custom.css +0 -3
- data/test/fixtures/subdir/index.adoc +0 -3
- data/test/fixtures/subdir/inner-include.adoc +0 -3
- data/test/fixtures/subdir/middle-include.adoc +0 -5
- data/test/fixtures/subs-docinfo.html +0 -2
- data/test/fixtures/subs.adoc +0 -6
- data/test/fixtures/tagged-class-enclosed.rb +0 -25
- data/test/fixtures/tagged-class.rb +0 -23
- data/test/fixtures/tip.gif +0 -0
- data/test/fixtures/unclosed-tag.adoc +0 -3
- data/test/fixtures/unexpected-end-tag.adoc +0 -4
- data/test/invoker_test.rb +0 -745
- data/test/links_test.rb +0 -855
- data/test/lists_test.rb +0 -5151
- data/test/logger_test.rb +0 -211
- data/test/manpage_test.rb +0 -660
- data/test/options_test.rb +0 -262
- data/test/paragraphs_test.rb +0 -562
- data/test/parser_test.rb +0 -742
- data/test/paths_test.rb +0 -395
- data/test/preamble_test.rb +0 -173
- data/test/reader_test.rb +0 -2161
- data/test/sections_test.rb +0 -3575
- data/test/substitutions_test.rb +0 -2066
- data/test/tables_test.rb +0 -2036
- data/test/test_helper.rb +0 -447
- data/test/text_test.rb +0 -309
data/README-fr.adoc
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
= Asciidoctor
|
2
2
|
Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>; Ryan Waldron <https://github.com/erebor[@erebor]>
|
3
|
-
|
3
|
+
v2.0.0.rc.1, 2019-03-02
|
4
4
|
// settings:
|
5
5
|
:idprefix:
|
6
6
|
:idseparator: -
|
@@ -17,7 +17,7 @@ ifdef::env-github[]
|
|
17
17
|
:warning-caption: :warning:
|
18
18
|
endif::[]
|
19
19
|
// Variables:
|
20
|
-
:release-version:
|
20
|
+
:release-version: 2.0.0.rc.1
|
21
21
|
// URIs:
|
22
22
|
:uri-org: https://github.com/asciidoctor
|
23
23
|
:uri-repo: {uri-org}/asciidoctor
|
@@ -59,7 +59,7 @@ endif::[]
|
|
59
59
|
// images:
|
60
60
|
:image-uri-screenshot: https://raw.githubusercontent.com/asciidoctor/asciidoctor/master/screenshot.png
|
61
61
|
|
62
|
-
{uri-project}/[Asciidoctor] est un processeur de texte et une chaîne de publication _rapide_ et {uri-license}[open source] permettant de convertir du contenu {uri-what-is-asciidoc}[AsciiDoc] en
|
62
|
+
{uri-project}/[Asciidoctor] est un processeur de texte et une chaîne de publication _rapide_ et {uri-license}[open source] permettant de convertir du contenu {uri-what-is-asciidoc}[AsciiDoc] en HTML 5, DocBook 5, PDF et d'autres formats.
|
63
63
|
Asciidoctor est écrit en Ruby et fonctionne sur les principaux systèmes d'exploitation.
|
64
64
|
Pour simplifier l'installation, Asciidoctor est publié au format gem sur {uri-rubygem}[RubyGems.org], et il est également disponible en tant que paquet système sur les principales distributions Linux ainsi que sur macOS.
|
65
65
|
Asciidoctor fonctionne aussi sur la JVM avec {uri-asciidoctorj}[AsciidoctorJ] et dans n'importe quel environnement JavaScript avec {uri-asciidoctorjs}[Asciidoctor.js].
|
@@ -106,14 +106,14 @@ Vous pouvez aider ce projet en devant un sponsor sur https://opencollective.com/
|
|
106
106
|
|
107
107
|
== En un mot
|
108
108
|
|
109
|
-
Asciidoctor lit du contenu écrit en texte brut, comme présenté dans la partie gauche de l'image ci-dessous, et le convertit en
|
110
|
-
Asciidoctor applique une feuille de style par défaut au document
|
109
|
+
Asciidoctor lit du contenu écrit en texte brut, comme présenté dans la partie gauche de l'image ci-dessous, et le convertit en HTML 5, comme présenté dans la partie droite.
|
110
|
+
Asciidoctor applique une feuille de style par défaut au document HTML 5 afin de fournir une expérience de lecture agréable, clé en main.
|
111
111
|
|
112
112
|
image::{image-uri-screenshot}[Prévisualisation d'une source AsciiDoc et le rendu HTML correspondant]
|
113
113
|
|
114
114
|
== Le traitement d'AsciiDoc
|
115
115
|
|
116
|
-
Asciidoctor lit et analyse la syntaxe du texte écrit en AsciiDoc afin de créer une représentation, sous forme d'arbre, à partir de laquelle des templates sont appliqués pour produire de l'
|
116
|
+
Asciidoctor lit et analyse la syntaxe du texte écrit en AsciiDoc afin de créer une représentation, sous forme d'arbre, à partir de laquelle des templates sont appliqués pour produire de l'HTML 5, du DocBook 5 et des pages de man(uel).
|
117
117
|
|
118
118
|
Vous avez la possibilité d'écrire votre propre convertisseur ou de fournir des templates supportant {uri-tilt}[Tilt] pour personnaliser le résultat généré ou pour produire des formats alternatifs.
|
119
119
|
|
@@ -121,7 +121,7 @@ Asciidoctor remplace le processeur AsciiDoc original écrit en Python (`asciidoc
|
|
121
121
|
La suite de tests Asciidoctor possède {uri-tests}[plus de 2,000 tests] afin de garantir la compatibilité avec la syntaxe AsciiDoc.
|
122
122
|
|
123
123
|
En plus de la syntaxe AsciiDoc standard, Asciidoctor reconnaît des balises additionnelles ainsi que des options de formatage, comme les polices d'icônes (par exemple `+icon:fire[]+`) et des éléments d'interface (par exemple `+button:[Enregistrer]+`).
|
124
|
-
Asciidoctor offre aussi un thème moderne et « responsive » basé sur {uri-foundation}[Foundation] pour styliser le document
|
124
|
+
Asciidoctor offre aussi un thème moderne et « responsive » basé sur {uri-foundation}[Foundation] pour styliser le document HTML 5 généré.
|
125
125
|
|
126
126
|
== Asciidoctor est disponible partout où Ruby est disponible
|
127
127
|
|
@@ -137,9 +137,8 @@ Asciidoctor.js est utilisé pour faire fonctionner les extensions AsciiDoc Previ
|
|
137
137
|
|
138
138
|
Asciidoctor fonctionne sur Linux, macOS et Windows et requiert une des implémentations suivantes de {uri-ruby}[Ruby] :
|
139
139
|
|
140
|
-
*
|
141
|
-
* JRuby
|
142
|
-
* Rubinius 2.2.x
|
140
|
+
* CRuby (aka MRI) 2.3 - 2.6
|
141
|
+
* JRuby 9.1 - 9.2
|
143
142
|
* Opal (JavaScript)
|
144
143
|
|
145
144
|
[CAUTION]
|
@@ -203,7 +202,7 @@ Ouvrez un terminal et tapez :
|
|
203
202
|
|
204
203
|
$ brew install asciidoctor
|
205
204
|
|
206
|
-
Homebrew installe la gemme `asciidoctor` dans un répertoire spécifique qui est indépendant des gemmes système.
|
205
|
+
Homebrew installe la gemme `asciidoctor` dans un répertoire spécifique qui est indépendant des gemmes système.
|
207
206
|
|
208
207
|
[#gem-install]
|
209
208
|
=== (c) gem install
|
@@ -428,7 +427,7 @@ L'organisation Asciidoctor sur GitHub:: {uri-org}
|
|
428
427
|
|
429
428
|
== Licence
|
430
429
|
|
431
|
-
Copyright (C) 2012-
|
430
|
+
Copyright (C) 2012-2019 Dan Allen, Sarah White et les contributeurs individuels d'Asciidoctor.
|
432
431
|
Une utilisation libre de ce logiciel est autorisée sous les termes de la licence MIT.
|
433
432
|
|
434
433
|
Consultez le fichier {uri-license}[LICENSE] pour plus de détails.
|
data/README-jp.adoc
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
= Asciidoctor
|
2
2
|
Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>; Ryan Waldron <https://github.com/erebor[@erebor]>
|
3
|
-
|
3
|
+
v2.0.0.rc.1, 2019-03-02
|
4
4
|
// settings:
|
5
5
|
:page-layout: base
|
6
6
|
:idprefix:
|
@@ -18,7 +18,7 @@ ifdef::env-github[]
|
|
18
18
|
:warning-caption: :warning:
|
19
19
|
endif::[]
|
20
20
|
// Variables:
|
21
|
-
:release-version:
|
21
|
+
:release-version: 2.0.0.rc.1
|
22
22
|
// URIs:
|
23
23
|
:uri-org: https://github.com/asciidoctor
|
24
24
|
:uri-repo: {uri-org}/asciidoctor
|
@@ -60,10 +60,10 @@ endif::[]
|
|
60
60
|
// images:
|
61
61
|
:image-uri-screenshot: https://raw.githubusercontent.com/asciidoctor/asciidoctor/master/screenshot.png
|
62
62
|
|
63
|
-
{uri-project}/[Asciidoctor]は _高速な_ テキストプロセッサで {uri-what-is-asciidoc}[AsciiDoc] を
|
63
|
+
{uri-project}/[Asciidoctor]は _高速な_ テキストプロセッサで {uri-what-is-asciidoc}[AsciiDoc] をHTML 5, DocBook 5や他のフォーマットに変換するツールチェインを配布しています.
|
64
64
|
AsciidoctorはRubyで書かれており, RubyGemとしてパッケージされ, {uri-rubygem}[RubyGems.org] で配布されています.
|
65
65
|
gemはいくつかのLinuxディストリビューション, Fedora, Debian, Ubuntuにも含まれています.
|
66
|
-
Asciidoctorはオープンソース {uri-repo}[hosted on
|
66
|
+
Asciidoctorはオープンソース {uri-repo}[hosted on GitHub] で {uri-license}[the MIT licence]のもとに配布されます.
|
67
67
|
|
68
68
|
ifndef::env-site[]
|
69
69
|
Translations of this document are available in the following languages:
|
@@ -102,28 +102,27 @@ endif::[]
|
|
102
102
|
|
103
103
|
== The Big Picture
|
104
104
|
|
105
|
-
Asciidoctorは下図の左側のパネルに示されるように, 平文で書かれた内容を読み, 右のパネルに描かれるように
|
106
|
-
Asciidoctorは枠にとらわれない快適なエクスペリエンスのためにデフォルトスタイルシートを
|
105
|
+
Asciidoctorは下図の左側のパネルに示されるように, 平文で書かれた内容を読み, 右のパネルに描かれるようにHTML 5に変換します.
|
106
|
+
Asciidoctorは枠にとらわれない快適なエクスペリエンスのためにデフォルトスタイルシートをHTML 5ドキュメントに適用します.
|
107
107
|
|
108
108
|
image::{image-uri-screenshot}[Preview of AsciiDoc source and corresponding rendered HTML]
|
109
109
|
|
110
110
|
== AsciiDoc Processing
|
111
|
-
AsciidoctorはAsciiDoc文法で書かれたテキストを読み込み解釈し, それから
|
111
|
+
AsciidoctorはAsciiDoc文法で書かれたテキストを読み込み解釈し, それからHTML 5, DocBook 5やman(ual)を出力するために内蔵コンバータセットにパースツリーを渡します.
|
112
112
|
生成された出力をカスタマイズ, あるいは追加のフォーマットをつくるためにあなた自身のコンバータを使うことや {uri-tilt}[Tilt]-supported テンプレートを読み込むオプションがあります.
|
113
113
|
|
114
114
|
NOTE: AsciidoctorはオリジナルのAsciiDoc Pythonプロセッサ(`asciidoc.py`)の完全互換です.
|
115
115
|
Asciidoctorテストスイートは {uri-tests}[> 1,600 tests] をAsciiDoc文法との互換性を保証するために有しています.
|
116
116
|
|
117
117
|
クラシックなAsciiDoc文法に加えて, Asciidoctorは追加のマークアップとフォントベースのicons(例えば, `+icon:fire[]+`)などのフォーマッティングオプションとUIエレメント(`+button:[Save]+`)を 受け付けます.
|
118
|
-
Asciidoctorは
|
118
|
+
AsciidoctorはHTML 5出力をスタイルするため, モダンで, {uri-foundation}[Foundation] に基づいたレスポンシブテーマをも提供します.
|
119
119
|
|
120
120
|
== Requirements
|
121
121
|
|
122
122
|
AsciidoctorはLinux, OS X (Mac)とWindowsで動き, 下記の {uri-ruby}[Ruby]実装の一つを必要とします.
|
123
123
|
|
124
|
-
*
|
125
|
-
* JRuby
|
126
|
-
* Rubinius 2.2.x
|
124
|
+
* CRuby (aka MRI) 2.3 - 2.6
|
125
|
+
* JRuby 9.1 - 9.2
|
127
126
|
* Opal (JavaScript)
|
128
127
|
|
129
128
|
[CAUTION]
|
@@ -395,7 +394,7 @@ Asciidoctor organization on GitHub:: {uri-org}
|
|
395
394
|
|
396
395
|
== Copyright and Licensing
|
397
396
|
|
398
|
-
Copyright (C) 2012-
|
397
|
+
Copyright (C) 2012-2019 Dan Allen, Ryan Waldron and the Asciidoctor Project.
|
399
398
|
本ソフトウェアはMITライセンスのもとで自由に使用できます.
|
400
399
|
|
401
400
|
詳細は {uri-license}[LICENSE] ファイルを参照してください.
|
data/README-zh_CN.adoc
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
= Asciidoctor
|
2
2
|
Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>; Ryan Waldron <https://github.com/erebor[@erebor]>
|
3
|
-
|
3
|
+
v2.0.0.rc.1, 2019-03-02
|
4
4
|
// settings:
|
5
5
|
:page-layout: base
|
6
6
|
:idprefix:
|
@@ -18,7 +18,7 @@ ifdef::env-github[]
|
|
18
18
|
:warning-caption: :warning:
|
19
19
|
endif::[]
|
20
20
|
// Variables:
|
21
|
-
:release-version:
|
21
|
+
:release-version: 2.0.0.rc.1
|
22
22
|
// URIs:
|
23
23
|
:uri-org: https://github.com/asciidoctor
|
24
24
|
:uri-repo: {uri-org}/asciidoctor
|
@@ -60,7 +60,7 @@ endif::[]
|
|
60
60
|
// images:
|
61
61
|
:image-uri-screenshot: https://raw.githubusercontent.com/asciidoctor/asciidoctor/master/screenshot.png
|
62
62
|
|
63
|
-
{uri-project}/[Asciidoctor] 是一个 _快速_ 文本处理器和发布工具链,它可以将 {uri-what-is-asciidoc}[AsciiDoc] 文档转化成
|
63
|
+
{uri-project}/[Asciidoctor] 是一个 _快速_ 文本处理器和发布工具链,它可以将 {uri-what-is-asciidoc}[AsciiDoc] 文档转化成 HTML 5、 DocBook 5 以及其他格式。
|
64
64
|
Asciidoctor 由 Ruby 编写,打包成 RubyGem,然后发布到 {uri-rubygem}[RubyGems.org] 上。
|
65
65
|
这个 gem 还被包含道几个 Linux 发行版中,其中包括 Fedora、Debian 和 Ubuntu。
|
66
66
|
Asciidoctor 是开源的,{uri-repo}[代码]托管在 GitHub,遵从 {uri-license}[MIT] 协议。
|
@@ -101,31 +101,30 @@ endif::[]
|
|
101
101
|
[#the-big-picture]
|
102
102
|
== 整体概况
|
103
103
|
|
104
|
-
Asciidoctor 以纯文本格式读取内容,见下图左边的面板,并将它转换成
|
105
|
-
Asciidoctor 将默认的样式表应用到
|
104
|
+
Asciidoctor 以纯文本格式读取内容,见下图左边的面板,并将它转换成 HTML 5 呈现在右侧面板中。
|
105
|
+
Asciidoctor 将默认的样式表应用到 HTML 5 文档上,提供一个愉快的开箱即用的体验。
|
106
106
|
|
107
107
|
image::{image-uri-screenshot}[AsciiDoc 源文预览和相应的 HTML 渲染]
|
108
108
|
|
109
109
|
[#asciidoc-processing]
|
110
110
|
== AsciiDoc Processing
|
111
111
|
|
112
|
-
Asciidoctor 会读取并处理用 AsciiDoc 语法写的文件,然后将解析出来的解析树参数交给内置的转化器去生成
|
112
|
+
Asciidoctor 会读取并处理用 AsciiDoc 语法写的文件,然后将解析出来的解析树参数交给内置的转化器去生成 HTML 5,DocBook 5 或帮助手册页面输出。
|
113
113
|
你可以选择使用你自己的转化器或者加载 {uri-tilt}[Tilt] - 支持通过模板来自定义输出或产生附加的格式。
|
114
114
|
|
115
115
|
NOTE: Asciidoctor是为了直接替换原 AsciiDoc Python 处理器(`asciidoc.py`)。
|
116
116
|
Asciidoctor 测试套件含有 {uri-tests}[> 1,600 测试示例] 来确保和 AsciiDoc 语法的兼容性。
|
117
117
|
|
118
118
|
除了传统的 AsciiDoc 语法,Asciidoctor 还添加额外的标记和格式设置选项,例如 font-based 图标(例如: `+icon:fire[]+`)和 UI 元素(例如: `+button:[Save]+`)。
|
119
|
-
Asciidoctor 还提供了一个基于 {uri-foundation}[Foundation] 的现代化的、响应式主题来美化
|
119
|
+
Asciidoctor 还提供了一个基于 {uri-foundation}[Foundation] 的现代化的、响应式主题来美化 HTML 5 输出。
|
120
120
|
|
121
121
|
[#requirements]
|
122
122
|
== 要求
|
123
123
|
|
124
124
|
Asciidoctor 可以运行在 Linux,OSX (Mac) 和 Windows 系统,但需要安装下面任意一个 {uri-ruby}[Ruby] 环境去实现:
|
125
125
|
|
126
|
-
*
|
127
|
-
* JRuby
|
128
|
-
* Rubinius 2.2.x
|
126
|
+
* CRuby (aka MRI) 2.3 - 2.6
|
127
|
+
* JRuby 9.1 - 9.2
|
129
128
|
* Opal (JavaScript)
|
130
129
|
|
131
130
|
我们欢迎你来帮助在这些以及其他平台测试 Asciidoctor。
|
@@ -282,7 +281,7 @@ Runtime Environment (ruby 2.4.1p111 [x86_64-linux]) (lc:UTF-8 fs:UTF-8 in:- ex:U
|
|
282
281
|
....
|
283
282
|
|
284
283
|
Asciidoctor 还提供了一套 API。
|
285
|
-
这套 API 是为了整合其他的 Ruby 软件,例如 Rails、Sinatra、
|
284
|
+
这套 API 是为了整合其他的 Ruby 软件,例如 Rails、Sinatra、GitHub,甚至其他语言,比如 Java (通过 {uri-asciidoctorj}[AsciidoctorJ]) 和 JavaScript (通过 {uri-asciidoctorjs}[Asciidoctor.js])。
|
286
285
|
|
287
286
|
[#command-line-interface-cli]
|
288
287
|
=== 命令行(CLI)
|
@@ -403,7 +402,7 @@ Further information and documentation about Asciidoctor can be found on the proj
|
|
403
402
|
{uri-project}/[Home] | {uri-news}[News] | {uri-docs}[Docs]
|
404
403
|
endif::[]
|
405
404
|
|
406
|
-
Asciidoctor 组织在
|
405
|
+
Asciidoctor 组织在 GitHub 托管代码、议案跟踪和相关子项目。
|
407
406
|
|
408
407
|
代码库 (git):: {uri-repo}
|
409
408
|
议案跟踪:: {uri-issues}
|
@@ -412,7 +411,7 @@ Asciidoctor 组织在 Github 托管代码、议案跟踪和相关子项目。
|
|
412
411
|
[#copyright-and-licensing]
|
413
412
|
== 版权和协议
|
414
413
|
|
415
|
-
Copyright (C) 2012-
|
414
|
+
Copyright (C) 2012-2019 Dan Allen, Ryan Waldron and the Asciidoctor Project.
|
416
415
|
这个软件的免费使用是在MIT许可条款授予的。
|
417
416
|
|
418
417
|
请看 {uri-license}[版权声明] 文件来获取更多详细信息。
|
data/README.adoc
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
= Asciidoctor
|
2
2
|
Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>; Ryan Waldron <https://github.com/erebor[@erebor]>
|
3
|
-
|
3
|
+
v2.0.0.rc.1, 2019-03-02
|
4
4
|
// settings:
|
5
5
|
:idprefix:
|
6
6
|
:idseparator: -
|
@@ -17,7 +17,7 @@ ifdef::env-github[]
|
|
17
17
|
:warning-caption: :warning:
|
18
18
|
endif::[]
|
19
19
|
// Variables:
|
20
|
-
:release-version:
|
20
|
+
:release-version: 2.0.0.rc.1
|
21
21
|
// URIs:
|
22
22
|
:uri-org: https://github.com/asciidoctor
|
23
23
|
:uri-repo: {uri-org}/asciidoctor
|
@@ -143,9 +143,8 @@ It's used to power the AsciiDoc preview extensions for Chrome, Atom, Brackets an
|
|
143
143
|
|
144
144
|
Asciidoctor works on Linux, macOS and Windows and requires one of the following implementations of {uri-ruby}[Ruby]:
|
145
145
|
|
146
|
-
*
|
147
|
-
* JRuby
|
148
|
-
* Rubinius 2.2.x
|
146
|
+
* CRuby (aka MRI) 2.3 - 2.6
|
147
|
+
* JRuby 9.1 - 9.2
|
149
148
|
* Opal (JavaScript)
|
150
149
|
|
151
150
|
[CAUTION]
|
@@ -329,7 +328,7 @@ You should see information about the Asciidoctor version and your Ruby environme
|
|
329
328
|
[.output,subs=attributes+]
|
330
329
|
....
|
331
330
|
Asciidoctor {release-version} [https://asciidoctor.org]
|
332
|
-
Runtime Environment (ruby 2.
|
331
|
+
Runtime Environment (ruby 2.6.0p0 [x86_64-linux]) (lc:UTF-8 fs:UTF-8 in:- ex:UTF-8)
|
333
332
|
....
|
334
333
|
|
335
334
|
Asciidoctor also provides an API.
|
@@ -456,7 +455,7 @@ Asciidoctor organization on GitHub:: {uri-org}
|
|
456
455
|
|
457
456
|
== License
|
458
457
|
|
459
|
-
Copyright (C) 2012-
|
458
|
+
Copyright (C) 2012-2019 Dan Allen, Sarah White and the individual contributors to Asciidoctor.
|
460
459
|
Use of this software is granted under the terms of the MIT License.
|
461
460
|
|
462
461
|
See the {uri-license}[LICENSE] for the full license text.
|
data/asciidoctor.gemspec
CHANGED
@@ -1,21 +1,20 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
begin
|
3
|
-
|
2
|
+
require_relative 'lib/asciidoctor/version'
|
4
3
|
rescue LoadError
|
5
4
|
require 'asciidoctor/version'
|
6
5
|
end
|
7
6
|
|
8
|
-
require 'open3' unless defined? Open3
|
9
|
-
|
10
7
|
Gem::Specification.new do |s|
|
11
8
|
s.name = 'asciidoctor'
|
12
9
|
s.version = Asciidoctor::VERSION
|
13
|
-
s.summary = 'An implementation of the AsciiDoc text processor and publishing toolchain
|
14
|
-
s.description = 'A fast, open source text processor and publishing toolchain
|
10
|
+
s.summary = 'An implementation of the AsciiDoc text processor and publishing toolchain'
|
11
|
+
s.description = 'A fast, open source text processor and publishing toolchain for converting AsciiDoc content to HTML 5, DocBook 5, and other formats.'
|
15
12
|
s.authors = ['Dan Allen', 'Sarah White', 'Ryan Waldron', 'Jason Porter', 'Nick Hengeveld', 'Jeremy McAnally']
|
16
13
|
s.email = ['dan.j.allen@gmail.com']
|
17
|
-
s.homepage = '
|
14
|
+
s.homepage = 'https://asciidoctor.org'
|
18
15
|
s.license = 'MIT'
|
16
|
+
# NOTE required ruby version is informational only; it's not enforced since it can't be overridden and can cause builds to break
|
17
|
+
#s.required_ruby_version = '>= 2.3.0'
|
19
18
|
s.metadata = {
|
20
19
|
'bug_tracker_uri' => 'https://github.com/asciidoctor/asciidoctor/issues',
|
21
20
|
'changelog_uri' => 'https://github.com/asciidoctor/asciidoctor/blob/master/CHANGELOG.adoc',
|
@@ -25,35 +24,31 @@ Gem::Specification.new do |s|
|
|
25
24
|
|
26
25
|
# NOTE the logic to build the list of files is designed to produce a usable package even when the git command is not available
|
27
26
|
files = begin
|
28
|
-
|
29
|
-
(result = Open3.popen3('git ls-files -z') {|_, out| out.read }.split %(\0)).empty? ? Dir['**/*'] : result
|
27
|
+
(result = `git ls-files -z`.split ?\0).empty? ? Dir['**/*'] : result
|
30
28
|
rescue
|
31
29
|
Dir['**/*']
|
32
30
|
end
|
33
|
-
s.files = files.grep %r/^(?:(?:data|lib|man)\/.+|
|
31
|
+
s.files = files.grep %r/^(?:(?:data|lib|man)\/.+|LICENSE|(?:CHANGELOG|README(?:-\w+)?)\.adoc|#{s.name}\.gemspec)$/
|
34
32
|
s.executables = (files.grep %r/^bin\//).map {|f| File.basename f }
|
35
33
|
s.require_paths = ['lib']
|
36
|
-
s.test_files = files.grep %r/^(?:(?:features|test)\/.+)$/
|
37
|
-
s.rdoc_options = ['--charset=UTF-8']
|
38
|
-
s.extra_rdoc_files = ['CHANGELOG.adoc', 'CONTRIBUTING.adoc', 'LICENSE']
|
34
|
+
#s.test_files = files.grep %r/^(?:(?:features|test)\/.+)$/
|
39
35
|
|
40
36
|
# asciimath is needed for testing AsciiMath in DocBook backend
|
41
37
|
s.add_development_dependency 'asciimath', '~> 1.0.0'
|
42
38
|
# coderay is needed for testing syntax highlighting
|
43
39
|
s.add_development_dependency 'coderay', '~> 1.1.0'
|
44
|
-
|
45
|
-
|
40
|
+
# concurrent-ruby, haml, slim, and tilt are needed for testing custom templates
|
41
|
+
s.add_development_dependency 'concurrent-ruby', '~> 1.1.0'
|
42
|
+
s.add_development_dependency 'cucumber', '~> 3.1.0'
|
43
|
+
# erubis is needed for testing alternate eRuby impls
|
46
44
|
s.add_development_dependency 'erubis', '~> 2.7.0'
|
47
|
-
# haml is needed for testing custom templates
|
48
45
|
s.add_development_dependency 'haml', '~> 5.0.0'
|
49
|
-
s.add_development_dependency '
|
50
|
-
s.add_development_dependency '
|
51
|
-
s.add_development_dependency '
|
52
|
-
#
|
46
|
+
s.add_development_dependency 'minitest', '~> 5.11.0'
|
47
|
+
s.add_development_dependency 'nokogiri', '~> 1.10.0'
|
48
|
+
s.add_development_dependency 'rake', '~> 12.3.0'
|
49
|
+
# Asciidoctor supports Rouge >= 3
|
50
|
+
s.add_development_dependency 'rouge', '~> 3.3.0'
|
51
|
+
s.add_development_dependency 'rspec-expectations', '~> 3.8.0'
|
53
52
|
s.add_development_dependency 'slim', '~> 4.0.0'
|
54
|
-
# concurrent-ruby is defined in Gemfile due to enforcement of minimum required Ruby version
|
55
|
-
#s.add_development_dependency 'concurrent-ruby', '~> 1.0.0'
|
56
|
-
# tilt is needed for testing custom templates
|
57
53
|
s.add_development_dependency 'tilt', '~> 2.0.0'
|
58
|
-
s.add_development_dependency 'minitest', '~> 5.3.0'
|
59
54
|
end
|
data/bin/asciidoctor
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
2
3
|
|
3
|
-
|
4
|
-
|
5
|
-
if File.exist?(asciidoctor = (File.expand_path '../../lib/asciidoctor', __FILE__))
|
4
|
+
asciidoctor = File.absolute_path '../lib/asciidoctor.rb', __dir__
|
5
|
+
if File.exist? asciidoctor
|
6
6
|
require asciidoctor
|
7
|
+
require File.join Asciidoctor::LIB_DIR, 'asciidoctor/cli'
|
7
8
|
else
|
8
9
|
require 'asciidoctor'
|
10
|
+
require 'asciidoctor/cli'
|
9
11
|
end
|
10
|
-
require 'asciidoctor/cli'
|
11
12
|
|
12
13
|
invoker = Asciidoctor::Cli::Invoker.new ARGV
|
13
14
|
GC.start
|
@@ -0,0 +1,283 @@
|
|
1
|
+
= AsciiDoc Syntax
|
2
|
+
:icons: font
|
3
|
+
:stem:
|
4
|
+
:toc: left
|
5
|
+
:url-docs: https://asciidoctor.org/docs
|
6
|
+
:url-gem: https://rubygems.org/gems/asciidoctor
|
7
|
+
|
8
|
+
A brief reference of the most commonly used AsciiDoc syntax.
|
9
|
+
You can find the full documentation for the AsciiDoc syntax at {url-docs}.
|
10
|
+
|
11
|
+
== Paragraphs
|
12
|
+
|
13
|
+
A normal paragraph.
|
14
|
+
Line breaks are not preserved.
|
15
|
+
// line comments, which are lines that start with //, are skipped
|
16
|
+
|
17
|
+
A blank line separates paragraphs.
|
18
|
+
|
19
|
+
[%hardbreaks]
|
20
|
+
This paragraph carries the `hardbreaks` option.
|
21
|
+
Notice how line breaks are now preserved.
|
22
|
+
|
23
|
+
An indented (literal) paragraph disables text formatting,
|
24
|
+
preserves spaces and line breaks, and is displayed in a
|
25
|
+
monospaced font.
|
26
|
+
|
27
|
+
[sidebar#id.role]
|
28
|
+
A style, ID, and/or role gives a paragraph (or block) special meaning, like this sidebar.
|
29
|
+
|
30
|
+
NOTE: An admonition paragraph, like this note, grabs the reader's attention.
|
31
|
+
|
32
|
+
TIP: Convert this document using the `asciidoctor` command to see the output produced from it.
|
33
|
+
|
34
|
+
== Text Formatting
|
35
|
+
:hardbreaks:
|
36
|
+
|
37
|
+
.Constrained (applied at word boundaries)
|
38
|
+
*strong importance* (aka bold)
|
39
|
+
_stress emphasis_ (aka italic)
|
40
|
+
`literal text` (aka monospaced)
|
41
|
+
"`double`" and '`single`' typographic quotes
|
42
|
+
+passthrough text+ (substitutions disabled)
|
43
|
+
`+literal passthrough text+` (literal text with substitutions disabled)
|
44
|
+
|
45
|
+
.Unconstrained (applied anywhere)
|
46
|
+
**C**reate+**R**ead+**U**pdate+**D**elete
|
47
|
+
fan__freakin__tastic
|
48
|
+
``mono``culture
|
49
|
+
|
50
|
+
.Replacements
|
51
|
+
A long time ago in a galaxy far, far away...
|
52
|
+
(C) 1976 Arty Artisan
|
53
|
+
I believe I shall--no, actually I won't.
|
54
|
+
|
55
|
+
.Macros
|
56
|
+
// where c=specialchars, q=quotes, a=attributes, r=replacements, m=macros, p=post_replacements, etc.
|
57
|
+
The European icon:flag[role=blue] is blue & contains pass:[************] arranged in a icon:circle-o[role=yellow].
|
58
|
+
The pass:c[->] operator is often referred to as the stabby lambda.
|
59
|
+
Since `pass:[++]` has strong priority in AsciiDoc, you can rewrite pass:c,a,r[C++ => C{pp}].
|
60
|
+
// activate stem support by adding `:stem:` to the document header
|
61
|
+
stem:[sqrt(4) = 2]
|
62
|
+
|
63
|
+
:!hardbreaks:
|
64
|
+
== Attributes
|
65
|
+
|
66
|
+
// define attributes in the document header; must be flush with left margin
|
67
|
+
:name: value
|
68
|
+
|
69
|
+
You can download and install Asciidoctor {asciidoctor-version} from {url-gem}.
|
70
|
+
C{pp} is not required, only Ruby.
|
71
|
+
Use a leading backslash to output a word enclosed in curly braces, like \{name}.
|
72
|
+
|
73
|
+
== Links
|
74
|
+
|
75
|
+
[%hardbreaks]
|
76
|
+
https://example.org/page[A webpage]
|
77
|
+
link:../path/to/file.txt[A local file]
|
78
|
+
xref:document.adoc[A sibling document]
|
79
|
+
mailto:hello@example.org[Email to say hello!]
|
80
|
+
|
81
|
+
== Anchors
|
82
|
+
|
83
|
+
[[idname,reference text]]
|
84
|
+
// or written using normal block attributes as `[#idname,reftext=reference text]`
|
85
|
+
A paragraph (or any block) with an anchor (aka ID) and reftext.
|
86
|
+
|
87
|
+
See <<idname>> or <<idname,optional text of internal link>>.
|
88
|
+
|
89
|
+
xref:document.adoc#idname[Jumps to anchor in another document].
|
90
|
+
|
91
|
+
This paragraph has a footnote.footnote:[This is the text of the footnote.]
|
92
|
+
|
93
|
+
== Lists
|
94
|
+
|
95
|
+
=== Unordered
|
96
|
+
|
97
|
+
* level 1
|
98
|
+
** level 2
|
99
|
+
*** level 3
|
100
|
+
**** level 4
|
101
|
+
***** etc.
|
102
|
+
* back at level 1
|
103
|
+
+
|
104
|
+
Attach a block or paragraph to a list item using a list continuation (which you can enclose in an open block).
|
105
|
+
|
106
|
+
.Some Authors
|
107
|
+
[circle]
|
108
|
+
- Edgar Allen Poe
|
109
|
+
- Sheri S. Tepper
|
110
|
+
- Bill Bryson
|
111
|
+
|
112
|
+
=== Ordered
|
113
|
+
|
114
|
+
. Step 1
|
115
|
+
. Step 2
|
116
|
+
.. Step 2a
|
117
|
+
.. Step 2b
|
118
|
+
. Step 3
|
119
|
+
|
120
|
+
.Remember your Roman numerals?
|
121
|
+
[upperroman]
|
122
|
+
. is one
|
123
|
+
. is two
|
124
|
+
. is three
|
125
|
+
|
126
|
+
=== Checklist
|
127
|
+
|
128
|
+
* [x] checked
|
129
|
+
* [ ] not checked
|
130
|
+
|
131
|
+
=== Callout
|
132
|
+
|
133
|
+
// enable callout bubbles by adding `:icons: font` to the document header
|
134
|
+
[source,ruby]
|
135
|
+
----
|
136
|
+
puts 'Hello, World!' # <1>
|
137
|
+
----
|
138
|
+
<1> Prints `Hello, World!` to the console.
|
139
|
+
|
140
|
+
=== Description
|
141
|
+
|
142
|
+
first term:: description of first term
|
143
|
+
second term::
|
144
|
+
description of second term
|
145
|
+
|
146
|
+
== Document Structure
|
147
|
+
|
148
|
+
=== Header
|
149
|
+
|
150
|
+
// header must be flush with left margin
|
151
|
+
= Document Title
|
152
|
+
Author Name <author@example.org>
|
153
|
+
v1.0, 2019-01-01
|
154
|
+
|
155
|
+
=== Sections
|
156
|
+
|
157
|
+
// must be flush with left margin
|
158
|
+
= Document Title (Level 0)
|
159
|
+
== Level 1
|
160
|
+
=== Level 2
|
161
|
+
==== Level 3
|
162
|
+
===== Level 4
|
163
|
+
====== Level 5
|
164
|
+
== Back at Level 1
|
165
|
+
|
166
|
+
=== Includes
|
167
|
+
|
168
|
+
// must be flush with left margin
|
169
|
+
include::basics.adoc[]
|
170
|
+
|
171
|
+
// define -a allow-uri-read to allow content to be read from URI
|
172
|
+
include::https://example.org/installation.adoc[]
|
173
|
+
|
174
|
+
== Blocks
|
175
|
+
|
176
|
+
--
|
177
|
+
open - a general-purpose content wrapper; useful for enclosing content to attach to a list item
|
178
|
+
--
|
179
|
+
|
180
|
+
// recognized types include CAUTION, IMPORTANT, NOTE, TIP, and WARNING
|
181
|
+
// enable admonition icons by setting `:icons: font` in the document header
|
182
|
+
[NOTE]
|
183
|
+
====
|
184
|
+
admonition - a notice for the reader, ranging in severity from a tip to an alert
|
185
|
+
====
|
186
|
+
|
187
|
+
====
|
188
|
+
example - a demonstration of the concept being documented
|
189
|
+
====
|
190
|
+
|
191
|
+
****
|
192
|
+
sidebar - auxiliary content that can be read independently of the main content
|
193
|
+
****
|
194
|
+
|
195
|
+
....
|
196
|
+
literal - an exhibit that features program output
|
197
|
+
....
|
198
|
+
|
199
|
+
----
|
200
|
+
listing - an exhibit that features program input, source code, or the contents of a file
|
201
|
+
----
|
202
|
+
|
203
|
+
[source,language]
|
204
|
+
----
|
205
|
+
source - a listing that is embellished with (colorized) syntax highlighting
|
206
|
+
----
|
207
|
+
|
208
|
+
```language
|
209
|
+
fenced code - a shorthand syntax for the source block
|
210
|
+
```
|
211
|
+
|
212
|
+
[,attribution,citetitle]
|
213
|
+
____
|
214
|
+
quote - a quotation or excerpt; attribution with title of source are optional
|
215
|
+
____
|
216
|
+
|
217
|
+
[verse,attribution,citetitle]
|
218
|
+
____
|
219
|
+
verse - a literary excerpt, often a poem; attribution with title of source are optional
|
220
|
+
____
|
221
|
+
|
222
|
+
++++
|
223
|
+
pass - content passed directly to the output document; often raw HTML
|
224
|
+
++++
|
225
|
+
|
226
|
+
// activate stem support by adding `:stem:` to the document header
|
227
|
+
[stem]
|
228
|
+
++++
|
229
|
+
x = y^2
|
230
|
+
++++
|
231
|
+
|
232
|
+
////
|
233
|
+
comment - content which is not included in the output document
|
234
|
+
////
|
235
|
+
|
236
|
+
== Tables
|
237
|
+
|
238
|
+
.Table Attributes
|
239
|
+
[cols=>1h;2d,width=50%,frame=topbot]
|
240
|
+
|===
|
241
|
+
| Attribute Name | Values
|
242
|
+
|
243
|
+
| options
|
244
|
+
| header,footer,autowidth
|
245
|
+
|
246
|
+
| cols
|
247
|
+
| colspec[;colspec;...]
|
248
|
+
|
249
|
+
| grid
|
250
|
+
| all \| cols \| rows \| none
|
251
|
+
|
252
|
+
| frame
|
253
|
+
| all \| sides \| topbot \| none
|
254
|
+
|
255
|
+
| stripes
|
256
|
+
| all \| even \| odd \| none
|
257
|
+
|
258
|
+
| width
|
259
|
+
| (0%..100%)
|
260
|
+
|
261
|
+
| format
|
262
|
+
| psv {vbar} csv {vbar} dsv
|
263
|
+
|===
|
264
|
+
|
265
|
+
== Multimedia
|
266
|
+
|
267
|
+
image::screenshot.png[block image,800,450]
|
268
|
+
|
269
|
+
Press image:reload.svg[reload,16,opts=interactive] to reload the page.
|
270
|
+
|
271
|
+
video::movie.mp4[width=640,start=60,end=140,options=autoplay]
|
272
|
+
|
273
|
+
video::aHjpOzsQ9YI[youtube]
|
274
|
+
|
275
|
+
video::300817511[vimeo]
|
276
|
+
|
277
|
+
== Breaks
|
278
|
+
|
279
|
+
// thematic break (aka horizontal rule)
|
280
|
+
---
|
281
|
+
|
282
|
+
// page break
|
283
|
+
<<<
|