| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Like headers (h1-6) dt's can only be on one line, so we need to use
the header regex on dt's. This was implemented after considering a recent
[discussion](http://six.pairlist.net/pipermail/markdown-discuss/2013-July/002859.html)
on the markdown mailing list. Prior to that discussion, I never considered
that it was impossable to set block level attrs on dt's. Now it is.
|
|
|
|
|
|
|
|
|
|
| |
A header can be only one line - so unlike other block level elements, a
attr_list must be at th eend of the line. To disingush it from an inline
attr_list on the last child in a header, we must require at least one
space before th eblock-level attrt_list.
Always intended it to work that way. Not sure how I missed that before.
At least we're testing for it now.
|
|
|
|
|
|
|
|
|
|
| |
Not sure how I missed that when committing ea4af0d. Also as a side-effect,
this fixes #230 - which brought my previous oversight to my attention.
Thanks for the report @divisoryang.
Also added some tests - including tests of list items without attr_lists.
Sometimes I forget to test markup that does not use an extension when an
extension is enabled. That's what resulted in #230 being reported.
|
| |
|
| |
|
|
|
|
|
|
| |
A list item with a nested list complicates were the attr_list can be.
Fixes #218. Thanks for the report @jpzimmer.
|
|
|
|
| |
didn't notice the tests were failing for this before.
|
|
|
|
|
|
|
|
| |
Just set each abreviation as an AtomicString. Given the nature of
abbreviations, they are not likely to ever contain any other markup
anyway. Also added a test.
Fixes #224. Thanks for the report @JakeChampion.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
A `from __future__ import ...` statement must go after any docstrings;
since putting them before the docstring means the docstring loses its
magic and just becomes a string literal. That then causes a syntax
error if there are further future statements after the false docstring.
This fixes issue #203, using the patch provided by @Arfrever.
|
| |
|
|
|
| |
CodeHilite: linenos is replaced by linenums
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The most notable changes are the use of unicode_literals
and absolute_imports. Actually, absolute_imports was the
biggest deal as it gives us relative imports. For the first
time extensions import markdown relative to themselves.
This allows other packages to embed the markdown lib in a
subdir of their project and still be able to use our
extensions.
|
| | |
|
|/
|
|
|
|
| |
Fixes #194. The NAME_RE regex was failing in Python 3.3 with the range
`\u10000-\ueffff`. Also, in Python =< 3.2 the range `\u0300-\u036f` matches
a colon but not in Python 3.3.
|
|
|
|
|
|
|
|
|
| |
Fixes #195. This was getting missed because the HeadrerId extension's
reset method was resetting the IDs to a list. However, some third party
extensions may want to call the unique function and it should work as
documented. Interestingly, the TOC extension was using it and passing in
a list as well. All fixed now. Also added a test of the `unique` function
directly so we shouldn't repeat this in the future.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
This appears to have recently been broken with the fixes in #191.
This time I've added tests to prevent future breakage and added
documentation to explain the behavior.
|
|
|
|
| |
clean up code
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes #148. The "force_linenos" config setting of the CodeHilite extension has been
marked as Pending Deprecation and a new setting "linenums" has been added to
replace it. See documentation for the [CodeHilite Extension] for an explaination
of the new "linenums" setting. The new setting will honor the old "force_linenos"
if it is set, but it will raise a PendingDeprecationWarning and will likely be
removed in a future version of Python-Markdown.
[CodeHilite Extension]: extensions/codehilite.html
|
|
|
|
|
|
| |
Closes #143. If you would like to continue using
the extension (not recomended), it is archived on
[Github](https://gist.github.com/waylan/4773365).
|
|
|
|
|
| |
If an adminition title is capitalized, the html class on the
div should still be lowercased.
|
|\
| |
| |
| |
| |
| | |
Conflicts:
docs/extensions/index.txt
tests/extensions/test.cfg
|
| |
| |
| |
| |
| | |
Previously they contained colons - and they still do for HTML4 and XHTML.
Fixes #180.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes #150 - at least as much as I'm willing to. This allows whitespace
normalization to be overridable by the extension API. Yes, I realize that most
other processors will also proabably need to be overniriden to work with any
differant whitespace normalization - but I'm okay with that.
As pointed out in #150, some processors have the tab length hardcoded in
regexes. I'm willing to accept a working patch that fixes that - and keeps
the regexes easy to override in a subclass (the provded patch moved them
inside the __init__ method - which is not so easy to override in a subclass)).
However, that is about the only additional change I'm willing to consider for
this issue.
|
| |
| |
| |
| |
| |
| | |
Fixes #177. When using both extensions, breaks (`<br>`) must have a linebreak (`\n`) after them before attr_list is run. This patch reorders the treeprocessors so that happens ('attr_list' runs after 'prettify' not before).
Also had to alter headerid extension so it runs after 'prettify' or it would run before 'attr_list' if loaded before 'attr_list' by user.
|
| |
| |
| |
| | |
Fixes #171. While that report provided an example of an unordered list item that started with a colon, any block that starts with a colon and has no siblings before it (paragraph as begining if document, list item, etc) all exhibit this same behavior. Following PHP Markdown Extra's lead, these are not definition items as they have no term before them.
|
| | |
|
| |
| |
| |
| | |
extensions are used togeather. While this means headerid may alter IDs defined in attr_lists for uniqueness, automaticaly generated ids will not contain unparsed attr_lists. This is the lesser of two evils - and actually generates a more valid output (all IDs will be unique)
|
| |
| |
| |
| | |
crash the serealizer.
|
| |
| |
| |
| |
| |
| |
| | |
When in safe_mode, there is no raw html to contain `markdown=1` for
processing, so there is no need to turn on that feature. The symptom
reported in issue #160 appears to be a side effect of commit
a2377e1129331430998de821ed3abf38247edca1.
|
| | |
|
| | |
|
| |
| |
| |
| | |
using a blank string as a title
|
| |
| |
| |
| | |
use an explicit blank title to not have the <p> tag with the title rendered.
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
slugify() requires unicode, not a str instance. This causes the extension to
crash:
File "/home/erik/virtualenv/bb/local/lib/python2.7/site-packages/markdown/__init__.py" in markdown
386. return md.convert(text)
File "/home/erik/virtualenv/bb/local/lib/python2.7/site-packages/markdown/__init__.py" in convert
287. newRoot = treeprocessor.run(root)
File "/home/erik/virtualenv/bb/local/lib/python2.7/site-packages/markdown/extensions/headerid.py" in run
140. id = slugify(''.join(itertext(elem)), sep)
File "/home/erik/virtualenv/bb/local/lib/python2.7/site-packages/markdown/extensions/headerid.py" in slugify
93. value = unicodedata.normalize('NFKD', value).encode('ascii', 'ignore')
TypeError: must be unicode, not str
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As HTML5 has depreciated use of `rev=anything` and `rel=footnotes`, they are no
longer inlcuded in the output when the output_format is set to HTML5. Note that
if someone successful registers a spec for `rel=footnotes` in the future (as
a microformat), then that could be considered valid. But until that happens,
it is invlaid to use in HTML5. Therefore, we remove it from the output (when
outputing HTML% only).
As an alternative, two new classes are set (in all output_formats). On the link
to the footnote (where `rel=footnotes` was used), we set `class=footnote-ref`
and on the backlink (where `rev=footnote` was used), we set
`class=footnote-backref`.
Also updated the tests to reflect to the new classes in the output.
|
| |
|
| |
|