@@ -22,18 +22,7 @@ than ideal and for pathological input either hangs or practically hangs during p
22
22
optimization of implementation classes. Changes are detailed in
23
23
[ Version-0.60.0-Changes] ( ../../wiki/Version-0.60.0-Changes ) .
24
24
25
- ### master [ ![ Build status] ( https://travis-ci.org/vsch/flexmark-java.svg?branch=master )] ( https://travis-ci.org/vsch/flexmark-java )
26
-
27
- ### latest [ ![ Maven Central status] ( https://img.shields.io/maven-central/v/com.vladsch.flexmark/flexmark.svg )] ( https://search.maven.org/search?q=g:com.vladsch.flexmark ) <!-- @IGNORE PREVIOUS: link --> [ ![ Build status] ( https://travis-ci.org/vsch/flexmark-java.svg?branch=0.64.0 )] ( https://travis-ci.org/vsch/flexmark-java ) [ ![ Javadocs] ( https://www.javadoc.io/badge/com.vladsch.flexmark/flexmark.svg )] ( https://www.javadoc.io/doc/com.vladsch.flexmark/flexmark )
28
-
29
- <!-- [](https://codecov.io/gh/vsch/flexmark-java) -->
30
-
31
- [ ![ GitQ] ( https://gitq.com/badge.svg )] ( https://gitq.com/vsch/flexmark-java )
32
-
33
- :information_source : Thanks to
[ Alex Karezin
] ( mailto:[email protected] ) for setting up
34
- [ Flexmark Architecture and Dependencies Diagrams] ( https://sourcespy.com/github/flexmark/ ) and
35
- < https://sourcespy.com > . You can now get an overview of module dependencies with ability to
36
- drill down to packages and classes, updated from the repository sources. :thumbsup :
25
+ ### latest [ ![ Maven Central status] ( https://img.shields.io/maven-central/v/com.vladsch.flexmark/flexmark.svg )] ( https://search.maven.org/search?q=g:com.vladsch.flexmark ) <!-- @IGNORE PREVIOUS: link --> [ ![ Javadocs] ( https://www.javadoc.io/badge/com.vladsch.flexmark/flexmark.svg )] ( https://www.javadoc.io/doc/com.vladsch.flexmark/flexmark )
37
26
38
27
### Requirements
39
28
@@ -93,7 +82,7 @@ public class BasicSample {
93
82
#### Building via Gradle
94
83
95
84
``` shell
96
- compile ' com.vladsch.flexmark:flexmark-all:0.64.0'
85
+ implementation ' com.vladsch.flexmark:flexmark-all:0.64.0'
97
86
```
98
87
99
88
#### Building with Android Studio
@@ -172,10 +161,9 @@ public class PegdownOptions {
172
161
}
173
162
```
174
163
175
- A sample with a
176
- [ custom link resolver] ( flexmark-java-samples/src/com/vladsch/flexmark/java/samples/PegdownCustomLinkResolverOptions.java )
177
- is also available, which includes link resolver for changing URLs or attributes of links and a
178
- custom node renderer if you need to override the generated link HTML.
164
+ A sample with a [ custom link resolver] is also available, which includes link resolver for
165
+ changing URLs or attributes of links and a custom node renderer if you need to override the
166
+ generated link HTML.
179
167
180
168
:information_source : [ flexmark-java] has many more extensions and configuration options than
181
169
[ pegdown] in addition to extensions available in pegdown 1.6.0.
@@ -184,44 +172,43 @@ custom node renderer if you need to override the generated link HTML.
184
172
### Latest Additions and Changes
185
173
186
174
* Major reorganization and code cleanup of implementation in version 0.60.0, see
187
- [ Version-0.60.0-Changes] ( ../../wiki/Version-0.60.0-Changes )
188
- * [ Flexmark Architecture and Dependencies Diagrams] ( https://sourcespy.com/github/flexmark/ )
189
- thanks to great work by
[ Alex Karezin
] ( mailto:[email protected] ) you can get an overview
190
- of module dependencies with ability to drill down to packages and classes.
175
+ [ Version-0.60.0-Changes] ( ../../wiki/Version-0.60.0-Changes ) thanks to great work by
176
+ [ Alex Karezin
] ( mailto:[email protected] ) you can get an overview of module dependencies
177
+ with ability to drill down to packages and classes.
191
178
* [ Merge API] ( ../../wiki/Markdown-Merge-API ) to merge multiple markdown documents into a single
192
179
document.
193
- * [ Docx Renderer Extension: Limited Attributes Node Handling] ( ../../wiki/Docx-Renderer-Extension#limited-attributes-node-handling )
180
+ * Docx Renderer Extension:
181
+ [ Limited Attributes Node Handling] ( ../../wiki/Docx-Renderer-Extension#limited-attributes-node-handling )
194
182
* Extensible HTML to Markdown Converter module:
195
- [ flexmark-html2md-converter] ( flexmark-html2md-converter ) .
196
- Sample: [ HtmlToMarkdownCustomizedSample.java]
183
+ [ flexmark-html2md-converter] ( flexmark-html2md-converter ) . Sample:
184
+ [ HtmlToMarkdownCustomizedSample.java]
197
185
* Java9+ module compatibility
198
186
* Compound Enumerated References
199
187
[ Enumerated References Extension] ( ../../wiki/Enumerated-References-Extension ) for creating
200
188
legal numbering for elements and headings.
201
189
* [ Macros Extension] ( ../../wiki/Macros-Extension ) to allow arbitrary markdown content to be
202
190
inserted as block or inline elements, allowing block elements to be used where only inline
203
191
elements are allowed by syntax.
204
- * [ Extensions: Gitlab Flavoured Markdown] ( ../../wiki/Extensions#gitlab-flavoured-markdown ) for
205
- parsing and rendering GitLab markdown extensions.
192
+ * [ GitLab Flavoured Markdown] ( ../../wiki/Extensions#gitlab-flavoured-markdown ) for parsing and
193
+ rendering GitLab markdown extensions.
206
194
* OSGi module courtesy Dan Klco (GitHub [ @klcodanr ] ( https://github.com/klcodanr ) )
207
- * [ Extensions: Media Tags] ( ../../wiki/Extensions#media-tags ) Media link transformer extension
208
- courtesy Cornelia Schultz (GitHub [ @CorneliaXaos ] ( https://github.com/CorneliaXaos ) ) transforms
209
- links using custom prefixes to Audio, Embed, Picture, and Video HTML5 tags.
195
+ * [ Media Tags] ( ../../wiki/Extensions#media-tags ) Media link transformer extension courtesy
196
+ Cornelia Schultz (GitHub [ @CorneliaXaos ] ( https://github.com/CorneliaXaos ) ) transforms links
197
+ using custom prefixes to Audio, Embed, Picture, and Video HTML5 tags.
210
198
* [ Translation Helper API] ( ../../wiki/Translation-Helper-API ) to make translating markdown
211
199
documents easier.
212
- * [ Admonition Extension] ( ../../wiki/Extensions#admonition ) To
213
- create block-styled side content. For complete documentation please see the
214
- [ Admonition Extension, Material for MkDocs] documentation.
215
- * [ Enumerated Reference] ( ../../wiki/Extensions#enumerated-reference )
216
- to create enumerated references for figures, tables and other markdown elements.
217
- * [ Attributes Extension] ( ../../wiki/Extensions#attributes ) to
218
- parse attributes of the form ` {name name=value name='value' name="value" #id .class-name} `
219
- attributes.
200
+ * [ Admonition] ( ../../wiki/Extensions#admonition ) To create block-styled side content. For
201
+ complete documentation please see the [ Admonition Extension, Material for MkDocs]
202
+ documentation.
203
+ * [ Enumerated Reference] ( ../../wiki/Extensions#enumerated-reference ) to create enumerated
204
+ references for figures, tables and other markdown elements.
205
+ * [ Attributes] ( ../../wiki/Extensions#attributes ) to parse attributes of the form `{name
206
+ name=value name='value' name="value" #id .class-name}` attributes.
220
207
* [ YouTube Embedded Link Transformer] ( ../../wiki/Extensions#youtube-embedded-link-transformer )
221
208
thanks to Vyacheslav N. Boyko (GitHub @bvn13 ) transforms simple links to youtube videos to
222
209
embedded video iframe HTML.
223
- * [ Docx Converter Module ] ( ../../wiki/Extensions#docx-converter )
224
- using the [ docx4j ] library. How to use: [ DocxConverter Sample] , how to customize:
210
+ * [ Docx Converter] ( ../../wiki/Extensions#docx-converter ) using the [ docx4j ] library. How to use:
211
+ [ DocxConverter Sample] , how to customize:
225
212
[ Customizing Docx Rendering] ( ../../wiki/Customizing-Docx-Rendering )
226
213
227
214
Development of this module was sponsored by
@@ -231,29 +218,25 @@ custom node renderer if you need to override the generated link HTML.
231
218
selecting a specific spec version options.
232
219
* Custom node rendering API with ability to invoke standard rendering for an overridden node,
233
220
allowing custom node renders that only handle special cases and let the rest be rendered as
234
- usual.
235
- [ PegdownCustomLinkResolverOptions] ( flexmark-java-samples/src/com/vladsch/flexmark/java/samples/PegdownCustomLinkResolverOptions.java )
236
- * [ Gfm Issues] ( ../../wiki/Extensions#gfm-issues ) and
237
- [ Gfm Users] ( ../../wiki/Extensions#gfm-users ) extensions for
238
- parsing and rendering ` #123 ` and ` @user-name ` respectively.
221
+ usual. [ custom link resolver]
222
+ * [ Gfm-Issues] ( ../../wiki/Extensions#gfm-issues ) and
223
+ [ Gfm-Users] ( ../../wiki/Extensions#gfm-users ) extensions for parsing and rendering ` #123 ` and
224
+ ` @user-name ` respectively.
239
225
* Deep HTML block parsing option for better handling of raw text tags that come after other tags
240
226
and for [ pegdown] HTML block parsing compatibility.
241
227
* ` flexmark-all ` module that includes: core, all extensions, formatter, JIRA and YouTrack
242
228
converters, pegdown profile module and HTML to Markdown conversion.
243
- * [ PDF converter module] ( ../../wiki/Extensions#pdf-output-module )
244
- [ Usage: PDF Output] ( ../../wiki/Usage#pdf-output ) using
245
- [ Open HTML To PDF]
246
- * [ Typographic Extension Module] ( ../../wiki/Extensions#typographic )
247
- implemented
248
- * [ XWiki Macros Extension Module] ( ../../wiki/Extensions#xwiki-macro-extension )
249
- * [ Jekyll tags Extension Module] ( ../../wiki/Extensions#jekyll-tags )
250
- * [ HTML to Markdown Converter Module] ( ../../wiki/Extensions#html-to-markdown )
229
+ * [ PDF Output Module] ( ../../wiki/Extensions#pdf-output-module )
230
+ [ PDF output] ( ../../wiki/Usage#pdf-output ) using [ Open HTML To PDF]
231
+ * [ Typographic] ( ../../wiki/Extensions#typographic ) implemented
232
+ * [ XWiki Macro Extension] ( ../../wiki/Extensions#xwiki-macro-extension )
233
+ * [ Jekyll Tags] ( ../../wiki/Extensions#jekyll-tags )
234
+ * [ Html To Markdown] ( ../../wiki/Extensions#html-to-markdown )
251
235
* [ Maven Markdown Page Generator Plugin] ( https://github.com/vsch/markdown-page-generator-plugin )
252
- * [ Markdown Formatter] ( ../../wiki/Markdown-Formatter ) module to
253
- output AST as markdown with formatting options.
254
- * [ Table Extension] ( ../../wiki/Extensions#tables ) for
255
- [ Markdown Formatter] ( ../../wiki/Markdown-Formatter ) with
256
- column width and alignment of markdown tables:
236
+ * [ Markdown Formatter] ( ../../wiki/Markdown-Formatter ) module to output AST as markdown with
237
+ formatting options.
238
+ * [ Tables] ( ../../wiki/Extensions#tables ) for [ Markdown Formatter] ( ../../wiki/Markdown-Formatter )
239
+ with column width and alignment of markdown tables:
257
240
258
241
<table >
259
242
<thead> <tr><th>Input</th> <th>Output</th> </tr> </thead>
@@ -286,9 +269,9 @@ accumulate thinking no one is affected by what is already fixed.
286
269
#### Extension points in the API are many and numerous
287
270
288
271
There are many extension options in the API with their intended use. A good soft-start is the
289
- [ ` flexmark-java-samples ` ] ( flexmark-java-samples )
290
- module which has simple samples for asked for extensions. The next best place is the source of
291
- an existing extension that has similar syntax to what you want to add.
272
+ [ ` flexmark-java-samples ` ] ( flexmark-java-samples ) module which has simple samples for asked for
273
+ extensions. The next best place is the source of an existing extension that has similar syntax
274
+ to what you want to add.
292
275
293
276
If your extension lines up with the right API, the task is usually very short and sweet. If your
294
277
extension uses the API in an unintended fashion or does not follow expected housekeeping
@@ -327,7 +310,7 @@ effort.
327
310
328
311
If you have a commercial application and don't want to write the extension(s) yourself or want
329
312
to reduce the time and effort of implementing extensions and integrating flexmark-java, feel
330
- free to contact me. I am available on a consulting/contracting basis, [ All about me ] .
313
+ free to contact me. I am available on a consulting/contracting basis.
331
314
332
315
### Markdown Processor Emulation
333
316
@@ -411,9 +394,8 @@ The goal was to ensure that adding source position tracking in the AST would not
411
394
of parsing and generating the AST more than absolutely necessary.
412
395
413
396
Reasons for choosing [ commonmark-java] as the parser are: speed, ease of understanding, ease of
414
- extending and speed. More detailed description in
415
- [ Pegdown - Achilles heel of the Markdown Navigator plugin] . Now that I have reworked the core
416
- and added a few extensions I am extremely satisfied with my choice.
397
+ extending and speed. Now that I have reworked the core and added a few extensions I am extremely
398
+ satisfied with my choice.
417
399
418
400
Another goal was to improve the ability of extensions to modify parser behavior so that any
419
401
dialect of markdown could be implemented through the extension mechanism. An extensible options
@@ -615,12 +597,11 @@ License
615
597
616
598
Copyright (c) 2015-2016 Atlassian and others.
617
599
618
- Copyright (c) 2016-2020 , Vladimir Schneider,
600
+ Copyright (c) 2016-2023 , Vladimir Schneider,
619
601
620
602
BSD (2-clause) licensed, see [ LICENSE.txt] file.
621
603
622
- [ Admonition Extension, Material for MkDocs ] : https://squidfunk.github.io/mkdocs-material/extensions/admonition/
623
- [ All about me ] : https://vladsch.com/about
604
+ [ Admonition Extension, Material for MkDocs ] : https://squidfunk.github.io/mkdocs-material/reference/admonitions/
624
605
[ CommonMark ] : https://commonmark.org
625
606
[ CommonMark (spec 0.27) ] : https://spec.commonmark.org/0.27
626
607
[ CommonMark (spec 0.28) ] : https://spec.commonmark.org/0.28
@@ -635,21 +616,21 @@ BSD (2-clause) licensed, see [LICENSE.txt] file.
635
616
[ LICENSE.txt ] : LICENSE.txt
636
617
[ League/CommonMark ] : https://github.com/thephpleague/commonmark
637
618
[ Markdown ] : https://daringfireball.net/projects/markdown/
638
- [ Markdown Navigator ] : http ://vladsch .com/product/markdown-navigator
619
+ [ Markdown Navigator ] : https ://github .com/vsch/idea-multimarkdown
639
620
[ MultiMarkdown ] : https://fletcherpenney.net/multimarkdown
640
621
[ Open HTML To PDF ] : https://github.com/danfickle/openhtmltopdf
641
622
[ PHP Markdown Extra ] : https://michelf.ca/projects/php-markdown/extra/#abbr
642
- [ Pegdown - Achilles heel of the Markdown Navigator plugin ] : http://vladsch.com/blog/15
643
623
[ PegdownOptionsAdapter.java ] : flexmark-profile-pegdown/src/main/java/com/vladsch/flexmark/profile/pegdown/PegdownOptionsAdapter.java
644
- [ VERSION.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test/ data/performance/VERSION.md
624
+ [ VERSION.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test- data/performance/VERSION.md
645
625
[ commonmark-java ] : https://github.com/atlassian/commonmark-java
646
- [ commonMarkSpec.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test/data/performance/commonMarkSpec.md
626
+ [ commonMarkSpec.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test-data/performance/commonMarkSpec.md
627
+ [ custom link resolver ] : flexmark-java-samples/src/com/vladsch/flexmark/java/samples/PegdownCustomLinkResolverOptions.java
647
628
[ docx4j ] : https://www.docx4java.org/trac/docx4j
648
629
[ flexmark-java ] : https://github.com/vsch/flexmark-java
649
- [ hang-pegdown.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test/ data/performance/hang-pegdown.md
650
- [ hang-pegdown2.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test/ data/performance/hang-pegdown2.md
630
+ [ hang-pegdown.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test- data/performance/hang-pegdown.md
631
+ [ hang-pegdown2.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test- data/performance/hang-pegdown2.md
651
632
[ intellij-markdown ] : https://github.com/valich/intellij-markdown
652
- [ pegdown ] : http ://pegdown.org
653
- [ spec.txt ] : https://github.com/vsch/idea-multimarkdown/blob/master/test/ data/performance/spec.md
654
- [ wrap.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test/ data/performance/wrap.md
633
+ [ pegdown ] : https ://github.com/sirthias/pegdown
634
+ [ spec.txt ] : https://github.com/vsch/idea-multimarkdown/blob/master/test- data/performance/spec.md
635
+ [ wrap.md ] : https://github.com/vsch/idea-multimarkdown/blob/master/test- data/performance/wrap.md
655
636
0 commit comments