asciidoctor 1.5.6.1 → 1.5.6.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of asciidoctor might be problematic. Click here for more details.

@@ -1,3 +1,3 @@
1
1
  module Asciidoctor
2
- VERSION = '1.5.6.1'
2
+ VERSION = '1.5.6.2'
3
3
  end
@@ -1,13 +1,13 @@
1
1
  '\" t
2
2
  .\" Title: asciidoctor
3
3
  .\" Author: Dan Allen, Sarah White, Ryan Waldron
4
- .\" Generator: Asciidoctor 1.5.6.1
5
- .\" Date: 2017-07-23
4
+ .\" Generator: Asciidoctor 1.5.6.2
5
+ .\" Date: 2018-03-20
6
6
  .\" Manual: Asciidoctor Manual
7
- .\" Source: Asciidoctor 1.5.6.1
7
+ .\" Source: Asciidoctor 1.5.6.2
8
8
  .\" Language: English
9
9
  .\"
10
- .TH "ASCIIDOCTOR" "1" "2017-07-23" "Asciidoctor 1.5.6.1" "Asciidoctor Manual"
10
+ .TH "ASCIIDOCTOR" "1" "2018-03-20" "Asciidoctor 1.5.6.2" "Asciidoctor Manual"
11
11
  .ie \n(.g .ds Aq \(aq
12
12
  .el .ds Aq '
13
13
  .ss \n[.ss] 0
@@ -235,7 +235,7 @@ Refer to the \fBAsciidoctor\fP issue tracker at \c
235
235
  .URL "http://discuss.asciidoctor.org" "" ""
236
236
  .SH "COPYING"
237
237
  .sp
238
- Copyright (C) 2012\-2017 Dan Allen, Ryan Waldron and the Asciidoctor Project.
238
+ Copyright (C) 2012\-2018 Dan Allen, Ryan Waldron and the Asciidoctor Project.
239
239
  Free use of this software is granted under the terms of the MIT License.
240
240
  .SH "AUTHOR(S)"
241
241
  .sp
@@ -2,7 +2,7 @@
2
2
  Dan Allen; Sarah White; Ryan Waldron
3
3
  :doctype: manpage
4
4
  :man manual: Asciidoctor Manual
5
- :man source: Asciidoctor 1.5.6.1
5
+ :man source: Asciidoctor 1.5.6.2
6
6
  :page-layout: base
7
7
 
8
8
  == NAME
@@ -182,5 +182,5 @@ Refer to the *Asciidoctor* issue tracker at https://github.com/asciidoctor/ascii
182
182
 
183
183
  == COPYING
184
184
 
185
- Copyright \(C) 2012-2017 Dan Allen, Ryan Waldron and the Asciidoctor Project.
185
+ Copyright \(C) 2012-2018 Dan Allen, Ryan Waldron and the Asciidoctor Project.
186
186
  Free use of this software is granted under the terms of the MIT License.
@@ -180,6 +180,24 @@ class SampleExtensionGroup < Asciidoctor::Extensions::Group
180
180
  end
181
181
  end
182
182
 
183
+ def create_cat_in_sink_block_macro
184
+ Asciidoctor::Extensions.create do
185
+ block_macro do
186
+ named :cat_in_sink
187
+ process do |parent, target, attrs|
188
+ image_attrs = {}
189
+ unless target.nil_or_empty?
190
+ image_attrs['target'] = %(cat-in-sink-day-#{target}.png)
191
+ end
192
+ if (alt = attrs.delete 1)
193
+ image_attrs['alt'] = alt
194
+ end
195
+ create_image_block parent, image_attrs
196
+ end
197
+ end
198
+ end
199
+ end
200
+
183
201
  context 'Extensions' do
184
202
  context 'Register' do
185
203
  test 'should register extension group class' do
@@ -1161,7 +1179,6 @@ sample content
1161
1179
  end
1162
1180
  end
1163
1181
 
1164
-
1165
1182
  test 'should append docinfo to document' do
1166
1183
  begin
1167
1184
  Asciidoctor::Extensions.register do
@@ -1181,5 +1198,42 @@ sample content
1181
1198
  Asciidoctor::Extensions.unregister_all
1182
1199
  end
1183
1200
  end
1201
+
1202
+ test 'should raise an exception if mandatory target attribute is not provided for image block' do
1203
+ input = <<-EOS
1204
+ .Cat in Sink?
1205
+ cat_in_sink::[]
1206
+ EOS
1207
+ exception = assert_raises ArgumentError do
1208
+ render_embedded_string input, :extension_registry => create_cat_in_sink_block_macro
1209
+ end
1210
+ assert_match(/target attribute is required/, exception.message)
1211
+ end
1212
+
1213
+ test 'should assign alt attribute to image block if alt is not provided' do
1214
+ input = <<-EOS
1215
+ .Cat in Sink?
1216
+ cat_in_sink::25[]
1217
+ EOS
1218
+ doc = document_from_string input, :header_footer => false, :extension_registry => create_cat_in_sink_block_macro
1219
+ image = doc.blocks[0]
1220
+ assert_equal 'cat in sink day 25', (image.attr 'alt')
1221
+ assert_equal 'cat in sink day 25', (image.attr 'default-alt')
1222
+ output = doc.convert
1223
+ assert_includes output, '<img src="cat-in-sink-day-25.png" alt="cat in sink day 25">'
1224
+ end
1225
+
1226
+ test 'should create an image block if mandatory attributes are provided' do
1227
+ input = <<-EOS
1228
+ .Cat in Sink?
1229
+ cat_in_sink::30[cat in sink (yes)]
1230
+ EOS
1231
+ doc = document_from_string input, :header_footer => false, :extension_registry => create_cat_in_sink_block_macro
1232
+ image = doc.blocks[0]
1233
+ assert_equal 'cat in sink (yes)', (image.attr 'alt')
1234
+ refute(image.attr? 'default-alt')
1235
+ output = doc.convert
1236
+ assert_includes output, '<img src="cat-in-sink-day-30.png" alt="cat in sink (yes)">'
1237
+ end
1184
1238
  end
1185
1239
  end
@@ -499,6 +499,21 @@ A summary of the first lesson.
499
499
  assert_xpath '//a[@href="#tigers"][text() = "[tigers]"]', doc.render, 1
500
500
  end
501
501
 
502
+ test 'multiple xref macros with implicit text in single line' do
503
+ input = <<-EOS
504
+ This document has two sections, xref:sect-a[] and xref:sect-b[].
505
+
506
+ [#sect-a]
507
+ == Section A
508
+
509
+ [#sect-b]
510
+ == Section B
511
+ EOS
512
+ result = render_embedded_string input
513
+ assert_xpath '//a[@href="#sect-a"][text() = "Section A"]', result, 1
514
+ assert_xpath '//a[@href="#sect-b"][text() = "Section B"]', result, 1
515
+ end
516
+
502
517
  test 'xref using macro syntax with explicit hash' do
503
518
  doc = document_from_string 'xref:#tigers[]'
504
519
  doc.register :refs, ['tigers', (Asciidoctor::Inline.new doc, :anchor, 'Tigers', :type => :ref, :target => 'tigers'), 'Tigers']
@@ -820,9 +820,9 @@ text in standalone
820
820
  // end simulated include::[]
821
821
  EOS
822
822
 
823
- output = warnings = nil
823
+ warnings = nil
824
824
  redirect_streams do |out, err|
825
- output = render_string input
825
+ render_string input
826
826
  warnings = err.string
827
827
  end
828
828
 
@@ -2761,9 +2761,9 @@ more part intro
2761
2761
  intro
2762
2762
  EOS
2763
2763
 
2764
- doc = warnings = nil
2764
+ warnings = nil
2765
2765
  redirect_streams do |out, err|
2766
- doc = document_from_string input
2766
+ document_from_string input
2767
2767
  warnings = err.string
2768
2768
  end
2769
2769
 
@@ -1550,13 +1550,13 @@ EOS
1550
1550
  test 'complex inline passthrough macro' do
1551
1551
  text_to_escape = %q{[(] <'basic form'> <'logical operator'> <'basic form'> [)]}
1552
1552
  para = block_from_string %($$#{text_to_escape}$$)
1553
- result = para.extract_passthroughs(para.source)
1553
+ para.extract_passthroughs(para.source)
1554
1554
  assert_equal 1, para.passthroughs.size
1555
1555
  assert_equal text_to_escape, para.passthroughs[0][:text]
1556
1556
 
1557
1557
  text_to_escape_escaped = %q{[(\] <'basic form'> <'logical operator'> <'basic form'> [)\]}
1558
1558
  para = block_from_string %(pass:specialcharacters[#{text_to_escape_escaped}])
1559
- result = para.extract_passthroughs(para.source)
1559
+ para.extract_passthroughs(para.source)
1560
1560
  assert_equal 1, para.passthroughs.size
1561
1561
  assert_equal text_to_escape, para.passthroughs[0][:text]
1562
1562
  end
@@ -145,13 +145,13 @@ class Minitest::Test
145
145
 
146
146
  def xmldoc_from_string(content)
147
147
  if content.match(RE_XMLNS_ATTRIBUTE)
148
- doc = Nokogiri::XML::Document.parse(content)
148
+ Nokogiri::XML::Document.parse(content)
149
149
  elsif !(doctype_match = content.match(RE_DOCTYPE))
150
- doc = Nokogiri::HTML::DocumentFragment.parse(content)
150
+ Nokogiri::HTML::DocumentFragment.parse(content)
151
151
  elsif doctype_match[1].start_with? 'html'
152
- doc = Nokogiri::HTML::Document.parse(content)
152
+ Nokogiri::HTML::Document.parse(content)
153
153
  else
154
- doc = Nokogiri::XML::Document.parse(content)
154
+ Nokogiri::XML::Document.parse(content)
155
155
  end
156
156
  end
157
157
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asciidoctor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.6.1
4
+ version: 1.5.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Allen
@@ -13,7 +13,7 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2017-07-23 00:00:00.000000000 Z
16
+ date: 2018-03-20 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: asciimath
@@ -91,14 +91,14 @@ dependencies:
91
91
  requirements:
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
- version: 1.7.0
94
+ version: 1.8.0
95
95
  type: :development
96
96
  prerelease: false
97
97
  version_requirements: !ruby/object:Gem::Requirement
98
98
  requirements:
99
99
  - - "~>"
100
100
  - !ruby/object:Gem::Version
101
- version: 1.7.0
101
+ version: 1.8.0
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: rake
104
104
  requirement: !ruby/object:Gem::Requirement
@@ -169,34 +169,6 @@ dependencies:
169
169
  - - "~>"
170
170
  - !ruby/object:Gem::Version
171
171
  version: 2.0.0
172
- - !ruby/object:Gem::Dependency
173
- name: yard
174
- requirement: !ruby/object:Gem::Requirement
175
- requirements:
176
- - - '='
177
- - !ruby/object:Gem::Version
178
- version: 0.9.8
179
- type: :development
180
- prerelease: false
181
- version_requirements: !ruby/object:Gem::Requirement
182
- requirements:
183
- - - '='
184
- - !ruby/object:Gem::Version
185
- version: 0.9.8
186
- - !ruby/object:Gem::Dependency
187
- name: yard-tomdoc
188
- requirement: !ruby/object:Gem::Requirement
189
- requirements:
190
- - - "~>"
191
- - !ruby/object:Gem::Version
192
- version: 0.7.0
193
- type: :development
194
- prerelease: false
195
- version_requirements: !ruby/object:Gem::Requirement
196
- requirements:
197
- - - "~>"
198
- - !ruby/object:Gem::Version
199
- version: 0.7.0
200
172
  - !ruby/object:Gem::Dependency
201
173
  name: minitest
202
174
  requirement: !ruby/object:Gem::Requirement
@@ -223,16 +195,12 @@ extensions: []
223
195
  extra_rdoc_files:
224
196
  - CHANGELOG.adoc
225
197
  - CONTRIBUTING.adoc
226
- - LICENSE.adoc
198
+ - LICENSE
227
199
  files:
228
200
  - CHANGELOG.adoc
229
201
  - CONTRIBUTING.adoc
230
202
  - Gemfile
231
- - LICENSE.adoc
232
- - README-fr.adoc
233
- - README-jp.adoc
234
- - README-zh_CN.adoc
235
- - README.adoc
203
+ - LICENSE
236
204
  - Rakefile
237
205
  - asciidoctor.gemspec
238
206
  - bin/asciidoctor
@@ -372,7 +340,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
372
340
  version: '0'
373
341
  requirements: []
374
342
  rubyforge_project:
375
- rubygems_version: 2.4.5
343
+ rubygems_version: 2.7.6
376
344
  signing_key:
377
345
  specification_version: 4
378
346
  summary: An implementation of the AsciiDoc text processor and publishing toolchain
@@ -1,423 +0,0 @@
1
- = Asciidoctor
2
- Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>; Ryan Waldron <https://github.com/erebor[@erebor]>
3
- v1.5.6.1, 2017-07-23
4
- // settings:
5
- :page-layout: base
6
- :idprefix:
7
- :idseparator: -
8
- :source-language: ruby
9
- :language: {source-language}
10
- ifndef::env-github[:icons: font]
11
- ifdef::env-github[]
12
- :status:
13
- :outfilesuffix: .adoc
14
- :caution-caption: :fire:
15
- :important-caption: :exclamation:
16
- :note-caption: :paperclip:
17
- :tip-caption: :bulb:
18
- :warning-caption: :warning:
19
- endif::[]
20
- // Variables:
21
- :release-version: 1.5.6.1
22
- // URIs:
23
- :uri-org: https://github.com/asciidoctor
24
- :uri-repo: {uri-org}/asciidoctor
25
- :uri-asciidoctorj: {uri-org}/asciidoctorj
26
- :uri-asciidoctorjs: {uri-org}/asciidoctor.js
27
- :uri-project: http://asciidoctor.org
28
- ifdef::env-site[:uri-project: link:]
29
- :uri-docs: {uri-project}/docs
30
- :uri-news: {uri-project}/news
31
- :uri-manpage: {uri-project}/man/asciidoctor
32
- :uri-issues: {uri-repo}/issues
33
- :uri-contributors: {uri-repo}/graphs/contributors
34
- :uri-rel-file-base: link:
35
- :uri-rel-tree-base: link:
36
- ifdef::env-site[]
37
- :uri-rel-file-base: {uri-repo}/blob/master/
38
- :uri-rel-tree-base: {uri-repo}/tree/master/
39
- endif::[]
40
- :uri-changelog: {uri-rel-file-base}CHANGELOG.adoc
41
- :uri-contribute: {uri-rel-file-base}CONTRIBUTING.adoc
42
- :uri-license: {uri-rel-file-base}LICENSE.adoc
43
- :uri-tests: {uri-rel-tree-base}test
44
- :uri-discuss: http://discuss.asciidoctor.org
45
- :uri-irc: irc://irc.freenode.org/#asciidoctor
46
- :uri-rubygem: https://rubygems.org/gems/asciidoctor
47
- :uri-what-is-asciidoc: {uri-docs}/what-is-asciidoc
48
- :uri-user-manual: {uri-docs}/user-manual
49
- :uri-install-docker: https://github.com/asciidoctor/docker-asciidoctor
50
- //:uri-install-doc: {uri-docs}/install-toolchain
51
- :uri-install-osx-doc: {uri-docs}/install-asciidoctor-macosx
52
- :uri-render-doc: {uri-docs}/render-documents
53
- :uri-themes-doc: {uri-docs}/produce-custom-themes-using-asciidoctor-stylesheet-factory
54
- :uri-gitscm-repo: https://github.com/git/git-scm.com
55
- :uri-prototype: {uri-gitscm-repo}/commits/master/lib/asciidoc.rb
56
- :uri-freesoftware: https://www.gnu.org/philosophy/free-sw.html
57
- :uri-foundation: http://foundation.zurb.com
58
- :uri-tilt: https://github.com/rtomayko/tilt
59
- :uri-ruby: https://ruby-lang.org
60
- // images:
61
- :image-uri-screenshot: https://raw.githubusercontent.com/asciidoctor/asciidoctor/master/screenshot.png
62
-
63
- {uri-project}/[Asciidoctor] est un processeur de texte _rapide_ et une chaîne de publication pour convertir du contenu {uri-what-is-asciidoc}[AsciiDoc] en HTML5, DocBook 5 (ou 4.5) et d'autres formats.
64
- Asciidoctor est écrit en Ruby, packagé sous forme de RubyGem et publié sur {uri-rubygem}[RubyGems.org].
65
- La gemme est aussi incluse dans plusieurs distributions Linux, dont Fedora, Debian et Ubuntu.
66
- Asciidoctor est open source, {uri-repo}[hébergé sur GitHub] et distribué sous {uri-license}[licence MIT].
67
-
68
- ifndef::env-site[]
69
- Ce document est traduit dans les langues suivantes :
70
-
71
- * {uri-rel-file-base}README.adoc[Anglais]
72
- * {uri-rel-file-base}README-zh_CN.adoc[Chinois]
73
- * {uri-rel-file-base}README-jp.adoc[Japonais]
74
- endif::[]
75
-
76
- .Documentation clé
77
- [.compact]
78
- * {uri-docs}/what-is-asciidoc[Qu'est ce qu'AsciiDoc ?]
79
- * {uri-docs}/asciidoc-writers-guide[Guide pour Rédacteur AsciiDoc]
80
- * {uri-docs}/asciidoc-syntax-quick-reference[Syntaxe de Référence AsciiDoc]
81
- * {uri-docs}/user-manual[Manuel Utilisateur Asciidoctor]
82
-
83
- .Asciidoctor est disponible partout où Ruby est disponible
84
- ****
85
- Vous pouvez exécuter Asciidoctor dans la JVM en utilisant JRuby.
86
- Pour invoquer l'API Asciidoctor directement depuis Java ou d'autres langages de la JVM, utilisez {uri-asciidoctorj}[AsciidoctorJ].
87
- Des plugins basés sur AsciidoctorJ permettent d'intégrer le processeur Asciidoctor avec Apache Maven, Gradle ou Javadoc.
88
-
89
- Asciidoctor s'exécute également au sein de JavaScript.
90
- Nous utilisons http://opalrb.org[Opal] pour transcrire le code source Ruby en JavaScript afin de produire {uri-asciidoctorjs}[Asciidoctor.js], une version pleinement fonctionnelle d'Asciidoctor qui s'intègre dans tout environnement JavaScript, comme un navigateur web ou Node.js.
91
- Asciidoctor.js est utilisé pour faire fonctionner les extensions AsciiDoc Preview pour Chrome, Atom, Brackets et autres outils web.
92
- ****
93
-
94
- ifdef::status[]
95
- .*Santé du projet*
96
- image:https://img.shields.io/travis/asciidoctor/asciidoctor/master.svg[Build Status (Travis CI), link=https://travis-ci.org/asciidoctor/asciidoctor]
97
- image:https://ci.appveyor.com/api/projects/status/ifplu67oxvgn6ceq/branch/master?svg=true&amp;passingText=green%20bar&amp;failingText=%23fail&amp;pendingText=building%2E%2E%2E[Build Status (AppVeyor), link=https://ci.appveyor.com/project/asciidoctor/asciidoctor]
98
- //image:https://img.shields.io/coveralls/asciidoctor/asciidoctor/master.svg[Coverage Status, link=https://coveralls.io/r/asciidoctor/asciidoctor]
99
- image:https://codeclimate.com/github/asciidoctor/asciidoctor/badges/gpa.svg[Code Climate, link="https://codeclimate.com/github/asciidoctor/asciidoctor"]
100
- image:https://inch-ci.org/github/asciidoctor/asciidoctor.svg?branch=master[Inline docs, link="https://inch-ci.org/github/asciidoctor/asciidoctor"]
101
- endif::[]
102
-
103
- == En un mot
104
-
105
- Asciidoctor lit du contenu écrit en texte brut, comme présenté dans la partie gauche de l'image ci-dessous, et le convertit en HTML5, comme présenté dans la partie droite.
106
- Asciidoctor applique une feuille de style par défaut au document HTML5 afin de fournir une expérience de lecture agréable, clé en main.
107
-
108
- image::{image-uri-screenshot}[Prévisualisation d'une source AsciiDoc et le rendu HTML correspondant]
109
-
110
- == Le traitement d'AsciiDoc
111
-
112
- 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'HTML5, du DocBook 5 (ou 4.5).
113
-
114
- 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.
115
-
116
- NOTE: Asciidoctor est un remplaçant du processeur AsciiDoc original écrit en Python (`asciidoc.py`).
117
- La suite de tests Asciidoctor possède {uri-tests}[> 1,600 tests] pour garantir la compatibilité avec la syntaxe AsciiDoc.
118
-
119
- 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]+`).
120
- Asciidoctor offre aussi un thème moderne et « responsive » basé sur {uri-foundation}[Foundation] pour styliser le document HTML5 généré.
121
-
122
- == Prérequis
123
-
124
- Asciidoctor fonctionne sur Linux, OS X (Mac), Windows et requiert une des implémentations suivantes :
125
-
126
- * MRI (Ruby 1.8.7, 1.9.3, 2.0, 2.1, 2.2 & 2.3)
127
- * JRuby (1.7 dans les modes Ruby 1.8 et 1.9, 9000)
128
- * Rubinius 2.2.x
129
- * Opal (JavaScript)
130
-
131
- Votre aide est appréciée pour tester Asciidoctor sur l'une de ces plateformes.
132
- Référez-vous au paragraphe <<Contributions>> si vous souhaitez vous impliquer dans ce projet.
133
-
134
- [CAUTION]
135
- ====
136
- Si vous utilisez un environnement Windows dans une autre langue que l'anglais, vous pourriez tomber sur l'erreur `Encoding::UndefinedConversionError` lors du lancement d'Asciidoctor.
137
- Pour corriger ce problème, nous recommandons de changer la page de code en UTF-8 dans votre console :
138
-
139
- chcp 65001
140
-
141
- Après ce changement, tous les maux de tête liés à l'Unicode seront derrière vous.
142
- Si vous utilisez un environnement de développement comme Eclipse, assurez-vous de définir l'encodage en UTF-8.
143
- Asciidoctor fonctionne mieux lorsque vous utilisez UTF-8 partout.
144
- ====
145
-
146
- == Installation
147
-
148
- Asciidoctor peut être installé en utilisant la commande (a) `gem install`, (b) Bundler ou (c) les gestionnaires de paquets pour les distributions Linux populaires.
149
-
150
- TIP: L'avantage d'utiliser le gestionnaire de paquets pour installer la gemme est que l'installation englobe celle des librairies Ruby et RubyGems si elles ne sont pas déjà installés.
151
- L'inconvénient est que le paquet n'est pas forcément mis à jour immédiatement après la mise à disposition de la gemme.
152
- Si vous avez besoin de la dernière version, vous devez passer par la commande `gem`.
153
-
154
- === (a) Installation de la gemme
155
-
156
- Ouvrir un terminal et taper (en excluant le `$`) :
157
-
158
- $ gem install asciidoctor
159
-
160
- Si vous souhaitez installer une version pre-release (c'est-à-dire, une « release candidate »), utilisez :
161
-
162
- $ gem install asciidoctor --pre
163
-
164
- .Mettre à jour votre installation
165
- [TIP]
166
- ====
167
- Si vous avez une précédente version d'Asciidoctor installée, vous pouvez la mettre à jour en utilisant :
168
-
169
- $ gem update asciidoctor
170
-
171
- Si vous installez une nouvelle version de la gemme en utilisant `gem install` au lieu de `gem update`, vous aurez plusieurs versions d'installées.
172
- Si c'est le cas, utilisez la commande gem suivante pour supprimer la vieille version :
173
-
174
- $ gem cleanup asciidoctor
175
- ====
176
-
177
- === (b) Bundler
178
-
179
- . Créez un fichier Gemfile à la racine de votre projet (ou du répertoire courant)
180
- . Ajoutez la gemme `asciidoctor` dans votre fichier Gemfile comme ci-dessous :
181
- +
182
- [source,subs=attributes+]
183
- ----
184
- source 'https://rubygems.org'
185
- gem 'asciidoctor'
186
- # ou spécifier la version explicitement
187
- # gem 'asciidoctor', '{release-version}'
188
- ----
189
-
190
- . Sauvegardez le fichier Gemfile
191
- . Ouvrez un terminal et installez la gemme en utilisant :
192
-
193
- $ bundle
194
-
195
- Pour mettre à jour la gemme, spécifiez la nouvelle version dans le fichier Gemfile et exécutez `bundle` à nouveau.
196
- Utiliser `bundle update` *n*'est *pas* recommandé car les autres gemmes seront également mises à jour, ce qui n'est pas forcément le résultat voulu.
197
-
198
- === (c) Gestionnaire de paquets Linux
199
-
200
- ==== DNF (Fedora 21 ou supérieure)
201
-
202
- Pour installer la gemme sur Fedora 21 ou supérieure en utilisant dnf, ouvrez un terminal et tapez :
203
-
204
- $ sudo dnf install -y asciidoctor
205
-
206
- Pour mettre à jour la gemme, utilisez :
207
-
208
- $ sudo dnf update -y asciidoctor
209
-
210
- TIP: Votre système peut être configuré pour mettre à jour automatiquement les paquets rpm, auquel cas aucune action de votre part ne sera nécessaire pour mettre à jour la gemme.
211
-
212
- ==== apt-get (Debian, Ubuntu, Mint)
213
-
214
- Pour installer la gemme sur Debian, Ubuntu ou Mint, ouvrez un terminal et tapez :
215
-
216
- $ sudo apt-get install -y asciidoctor
217
-
218
- Pour mettre à jour la gemme, utilisez :
219
-
220
- $ sudo apt-get upgrade -y asciidoctor
221
-
222
- TIP: Votre système peut être configuré pour mettre à jour automatiquement les paquets deb, auquel cas aucune action de votre part ne sera nécessaire pour mettre à jour la gemme.
223
-
224
- La version d'Asciidoctor installé par le gestionnaire de paquets (apt-get) peut ne pas correspondre à la dernière version d'Asciidoctor.
225
- Consultez le dépôt de paquets de votre distribution pour trouver quelle version est disponible par version de distribution.
226
-
227
- * https://packages.debian.org/search?keywords=asciidoctor&searchon=names&exact=1&suite=all&section=all[Paquet asciidoctor par version de Debian]
228
- * http://packages.ubuntu.com/search?keywords=asciidoctor&searchon=names&exact=1&suite=all&section=all[Paquet asciidoctor par version d'Ubuntu]
229
- * https://community.linuxmint.com/software/view/asciidoctor[Paquet asciidoctor par version de Mint]
230
-
231
- [CAUTION]
232
- ====
233
- Il est déconseillé d'utiliser la commande `gem update` pour mettre à jour la gemme gérée par le gestionnaire de paquets.
234
- Le faire mettrait la système dans un état incohérent car le gestionnaire de paquets ne pourrait plus gérer les fichiers (qui sont installés dans /usr/local).
235
- En résumé, les gemmes du système doivent être gérées seulement par le gestionnaire de paquets.
236
-
237
- Si vous souhaitez utiliser une version d'Asciidoctor qui est plus récente que celle installée par votre gestionnaire de paquets, vous devriez utiliser http://rvm.io[RVM] pour installer Ruby dans votre répertoire personnel (dans votre espace utilisateur).
238
- Vous pouvez alors utiliser la commande `gem` pour installer ou mettre à jour la gemme Asciidoctor.
239
- En utilisant RVM, les gemmes sont installées dans un emplacement isolé du système.
240
- ====
241
-
242
- ==== apk (Alpine Linux)
243
-
244
- Pour installer la gemme sur Alpine Linux, ouvrez un terminal et tapez :
245
-
246
- $ sudo apk add asciidoctor
247
-
248
- Pour mettre à jour la gemme, utilisez :
249
-
250
- $ sudo apk add -u asciidoctor
251
-
252
- TIP: Votre système peut être configuré pour mettre à jour automatiquement les paquets apk, auquel cas aucune action de votre part ne sera nécessaire pour mettre à jour la gemme.
253
-
254
- === Autres options d'installation
255
-
256
- * {uri-install-docker}[Installation d'Asciidoctor avec Docker]
257
- * {uri-install-osx-doc}[Installation d'Asciidoctor sur Mac OS X]
258
- // pour l'instant, l'entrée suivante est juste une répétition de l'information dans ce README
259
- //* {uri-install-doc}[Installation de l'outillage Asciidoctor]
260
-
261
- == Utilisation
262
-
263
- Si la gemme Asciidoctor s'est installée correctement, la ligne de commande (CLI) `asciidoctor` sera disponible dans votre PATH.
264
- Pour vérifier sa disponibilité, exécutez la commande suivante dans votre terminal :
265
-
266
- $ asciidoctor --version
267
-
268
- Vous devriez voir les informations concernant la version d'Asciidoctor et celle de votre environnement Ruby s'afficher dans le terminal.
269
-
270
- [.output,subs=attributes+]
271
- ....
272
- Asciidoctor {release-version} [http://asciidoctor.org]
273
- Runtime Environment (ruby 2.4.1p111 [x86_64-linux]) (lc:UTF-8 fs:UTF-8 in:- ex:UTF-8)
274
- ....
275
-
276
- Asciidoctor fournit aussi une API.
277
- Cette API permet une intégration avec d'autres logiciels Ruby, comme Rails, Sinatra et GitHub, ainsi que d'autres langages comme Java (via {uri-asciidoctorj}[AsciidoctorJ]) ou JavaScript (via {uri-asciidoctorjs}[Asciidoctor.js]).
278
-
279
- === Interface de Ligne de Commande (CLI)
280
-
281
- La commande `asciidoctor` vous permet d'invoquer Asciidoctor à partir de la ligne de commande (c'est-à-dire, un terminal).
282
-
283
- La commande suivante convertit le fichier README.adoc en HTML et sauvegarde le résultat dans le fichier README.html dans le même répertoire.
284
- Le nom du fichier HTML généré est tiré de celui du fichier source, l'extension a été changée pour `.html`.
285
-
286
- $ asciidoctor README.adoc
287
-
288
- Vous pouvez contrôler le processeur Asciidoctor en ajoutant plusieurs paramètres, vous pouvez en apprendre plus sur ces derniers en utilisant la commande :
289
-
290
- $ asciidoctor --help
291
-
292
- Par exemple, pour écrire le fichier dans un répertoire différent, utilisez :
293
-
294
- $ asciidoctor -D output README.adoc
295
-
296
- La {uri-manpage}[page man] `asciidoctor` fournit une référence complète sur l'interface de ligne de commande.
297
-
298
- Référez-vous aux ressources suivantes pour en apprendre davantage sur la façon d'utiliser la commande `asciidoctor`.
299
-
300
- * {uri-render-doc}[Comment convertir un document ?]
301
- * {uri-themes-doc}[Comment utiliser la fabrique de feuilles de style Asciidoctor pour produire des thèmes personnalisés ?]
302
-
303
- === API Ruby
304
-
305
- Pour utiliser Asciidoctor dans votre application, vous avez tout d'abord besoin de faire un « require » sur la gemme :
306
-
307
- [source]
308
- require 'asciidoctor'
309
-
310
- Vous pouvez ensuite convertir un fichier AsciiDoc en fichier HTML en utilisant :
311
-
312
- [source]
313
- Asciidoctor.convert_file 'README.adoc', to_file: true, safe: :safe
314
-
315
- WARNING: Quand vous utilisez Asciidoctor via l'API, le mode de sûreté par défaut est `:secure`.
316
- Dans le mode « secure », plusieurs fonctionnalités centrales sont désactivées, comme la directive `include`.
317
- Si vous souhaitez activer ces fonctionnalités, vous aurez besoin de définir explicitement le mode de sûreté avec une la valeur `:server` (recommandée) ou `:safe`.
318
-
319
- Vous pouvez aussi convertir une chaîne de texte en fragment HTML (pour une insertion dans une page HTML) en utilisant :
320
-
321
- [source]
322
- ----
323
- content = '_Zen_ in the art of writing http://asciidoctor.org[AsciiDoc].'
324
- Asciidoctor.convert content, safe: :safe
325
- ----
326
-
327
- Si vous voulez le document HTML complet, activez l'option `header_footer` comme ci-dessous :
328
-
329
- [source]
330
- ----
331
- content = '_Zen_ in the art of writing http://asciidoctor.org[AsciiDoc].'
332
- html = Asciidoctor.convert content, header_footer: true, safe: :safe
333
- ----
334
-
335
- Si vous avez besoin d'accéder au document analysé, vous pouvez séparer la conversion en deux étapes distinctes :
336
-
337
- [source]
338
- ----
339
- content = '_Zen_ in the art of writing http://asciidoctor.org[AsciiDoc].'
340
- document = Asciidoctor.load content, header_footer: true, safe: :safe
341
- puts document.doctitle
342
- html = document.convert
343
- ----
344
-
345
- Gardez en tête que si vous n'aimez pas le contenu généré par Asciidoctor, _vous pouvez le changer !_
346
- Asciidoctor supporte des convertisseurs personnalisés qui peuvent prendre en charge la conversion depuis le document analysé jusqu'au contenu généré.
347
-
348
- Une façon simple de personnaliser les morceaux de contenu générés est d'utiliser le convertisseur de template.
349
- Le convertisseur de template vous permet, en utilisant un template supporté par {uri-tilt}[Tilt], de prendre en charge la conversion de n'importe quel élément dans le document.
350
-
351
- Vous l'aurez compris, vous _pouvez_ complètement prendre le contrôle sur le contenu généré.
352
- Pour plus d'informations sur comment utiliser l'API ou personnaliser le contenu généré, référez-vous au {uri-user-manual}[manuel utilisateur].
353
-
354
- == Contributions
355
-
356
- Dans l'esprit du {uri-freesoftware}[logiciel libre], _tout le monde_ est encouragé à aider en vue d'améliorer le projet.
357
- Si vous découvrez des erreurs ou des oublis dans le code source, la documentation, ou le contenu du site web, s'il vous plaît n'hésitez pas à ouvrir un ticket ou une « pull request » avec un correctif.
358
- Les contributeurs et contributrices sont toujours les bienvenus !
359
-
360
- Voici quelques façons de contribuer :
361
-
362
- * en utilisant les versions prerelease (alpha, beta ou preview),
363
- * en rapportant des anomalies,
364
- * en suggérant de nouvelles fonctionnalités,
365
- * en écrivant ou éditant la documentation,
366
- * en écrivant des spécifications,
367
- * en écrivant du code -- _Aucun patch n'est trop petit_
368
- ** corriger une coquille,
369
- ** ajouter des commentaires,
370
- ** nettoyer des espaces inutiles,
371
- ** écrire des tests !
372
- * en refactorant le code,
373
- * en corrigeant des {uri-issues}[anomalies],
374
- * en effectuant des relectures des patches.
375
-
376
- Le guide du {uri-contribute}[parfait Contributeur] fournit des informations sur comment créer, styliser et soumettre des tickets, des demandes de fonctionnalités, du code et de la documentation pour le projet Asciidoctor.
377
-
378
- == Être aidé
379
-
380
- Le projet Asciidoctor est développé pour vous aider à écrire et publier du contenu.
381
- Mais nous ne pouvons pas le faire sans avoir vos avis !
382
- Nous vous encourageons à poser vos questions et discuter de n'importe quels aspects du projet sur la liste de discussion, Twitter ou dans le salon de discussion.
383
-
384
- Mailing list:: {uri-discuss}
385
- Twitter (Chat):: hashtag #asciidoctor ou la mention @asciidoctor
386
- Gitter (Chat):: image:https://badges.gitter.im/Join%20In.svg[Gitter, link=https://gitter.im/asciidoctor/asciidoctor]
387
- ////
388
- IRC (Chat):: {uri-irc}[#asciidoctor] sur FreeNode IRC
389
- ////
390
-
391
- ifdef::env-github[]
392
- De plus amples informations et documentations sur Asciidoctor peuvent être trouvées sur le site web du projet.
393
-
394
- {uri-project}/[Home] | {uri-news}[News] | {uri-docs}[Docs]
395
- endif::[]
396
-
397
- L'organisation Asciidoctor sur GitHub héberge le code source du projet, le gestionnaire de tickets ainsi que des sous-projets.
398
-
399
- Dépôt des sources (git):: {uri-repo}
400
- Gestionnaire de tickets:: {uri-issues}
401
- L'organisation Asciidoctor sur GitHub:: {uri-org}
402
-
403
- == Copyright et licence
404
-
405
- Copyright (C) 2012-2017 Dan Allen, Ryan Waldron et le projet Asciidoctor.
406
- Une utilisation libre de ce logiciel est autorisée sous les termes de la licence MIT.
407
-
408
- Consultez le fichier {uri-license}[LICENSE] pour plus de détails.
409
-
410
- == Auteurs
411
-
412
- *Asciidoctor* est mené par https://github.com/mojavelinux[Dan Allen] et https://github.com/graphitefriction[Sarah White] et reçoit de nombreuses contributions de la part de la {uri-contributors}[géniale communauté] Asciidoctor.
413
- Le projet a été initié en 2012 par https://github.com/erebor[Ryan Waldron] et est basé sur {uri-prototype}[un prototype] écrit par https://github.com/nickh[Nick Hengeveld].
414
-
415
- *AsciiDoc* a été démarré par Stuart Rackham et a reçu de nombreuses contributions de la part de la communauté AsciiDoc.
416
-
417
- == Changelog
418
-
419
- ifeval::[{safe-mode-level} < 20]
420
- include::CHANGELOG.adoc[tag=compact,leveloffset=+1]
421
- endif::[]
422
-
423
- Référez-vous au fichier {uri-changelog}[CHANGELOG] pour une liste complète des changements des versions précédentes.