Previously, any sort of "rich" markup for a definition list's label
would cause the Markdown parser to not recognize a definition list:
```ruby
md = <<~md
`one`
: This is a definition
md
doc = RDoc::Markdown.parse(md)
doc # => [doc: [para: "<code>one</code>\n: This is a definition"]]
```
This commit tweaks the grammar for Markdown definition lists so that
labels can include "rich" markup such as bold (`**`), code (```), etc:
```ruby
md = <<~md
`one`
: This is a definition
md
doc = RDoc::Markdown.parse(md)
doc # => [doc: [list: NOTE [item: ["<code>one</code>"]; [para: "This is a definition"]]]]
```
The [PHP Markdown Extra][1] Spec does not seem to specify whether or not
this should be allowed, but it is allowed in the RDoc format:
```ruby
rdoc = <<~rdoc
+code+::
This is a definition
rdoc
doc = RDoc::Markup.parse(rdoc)
doc # => [doc: [list: NOTE [item: ["+code+"]; [para: "This is a definition"]]]]
```
so accepting this change increases the parity of the two formats.
[1]: https://michelf.ca/projects/php-markdown/extra/#def-list8f943bbba4
e4e054e3ce used four footnotes
without blank lines. And the ChangeLog generated from that commit
resulted in ``undefined method `parts' for nil`` error.
For now, let a footnote terminated by the next footnote mark.
Also refined the error message when undefined footnote is used.
a7f290130b
This patch makes sure we only load relative code. Hence when coding or
testing rdoc, we'll be sure to always be using the correct code.
Discussion started at https://github.com/ruby/rdoc/pull/817.
Signed-off-by: Ulysse Buonomo <buonomo.ulysse@gmail.com>
aa41bd48eb
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
This improves the performance in some cases.
`rdoc .../gems/sinatra-2.1.0/README.md` takes 10.5 sec. before this
change, and 7.1 sec. after this change.
`make rdoc` of ruby/ruby takes 19.3 sec. before this change, 18.1 sec.
after this change.
7cf8281e3e
It fixed the several bugs that was found after RDoc 6 releasing.
From: SHIBATA Hiroshi <hsbt@ruby-lang.org>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* It version introduced did you mean? feature for ri command:
https://github.com/ruby/rdoc/pull/533
* Removed obbsoleted ruby_token.rbb.
[Bug #13990][ruby-core:83180]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* This version changed lexer used Ripper from lexer based IRB.
see details: https://github.com/ruby/rdoc/pull/512
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This version fixed strange behavior of ruby code parser.
We will list all of impromovement to Changelog when 6.0.0 releasing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This version is mostly same as r56072. It contains to remove code
for Ruby 1.8
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
When you change this to true, you may need to add more tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Previously kpeg (which generates this file) added trailing
whitespace, but this bug is now fixed.
* lib/rdoc/markdown.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
RDoc 4.1.0 contains a number of enhancements including a new default
style and accessibility support. You can see the changelog here:
https://github.com/rdoc/rdoc/blob/v4.1.0.preview.1/History.rdoc
* test/rdoc: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/rdoc/markdown.rb (RDoc::Markdown): use \r instead of raw control
code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38102 b2dd03c8-39d4-4d8f-98ff-823fe69b080e