summaryrefslogtreecommitdiff
path: root/markdown
Commit message (Collapse)AuthorAgeFilesLines
* Added support for attr_lists on definition list terms.baserock/morphWaylan Limberg2013-07-191-2/+2
| | | | | | | | 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.
* Allow inline attr_lists at end of header.Waylan Limberg2013-07-191-1/+1
| | | | | | | | | | 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.
* Attr_List Extension now also supports nested ol's.Waylan Limberg2013-07-191-11/+11
| | | | | | | | | | 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.
* MetaData no longer fails with no newline. Fixes #228.Waylan Limberg2013-07-031-1/+1
|
* Minor cleanup.Waylan Limberg2013-06-161-1/+0
|
* Attr_List Extension now support attr_lists on nested lists.Waylan Limberg2013-06-161-1/+28
| | | | | | A list item with a nested list complicates were the attr_list can be. Fixes #218. Thanks for the report @jpzimmer.
* Fixed wikilinks extension's handling of config setting. Not sure how I ↵Waylan Limberg2013-06-161-2/+2
| | | | didn't notice the tests were failing for this before.
* AbbrExtension now handles abbreviations nested in other markup.Waylan Limberg2013-06-161-2/+2
| | | | | | | | 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.
* Fixed #216. WikiLink Extension actually accepts configs.Waylan Limberg2013-05-191-2/+2
|
* Fixed a typo in the docsLeonid Shvechikov2013-04-151-1/+1
|
* odict.py: remove usage of iteritems_compat which was not workingDmitry Shachnev2013-03-231-8/+3
| | | | | | | | | I've added iteritems_compat function in one of my previous pull requests, which was failing with: ./markdown/odict.py:106: undefined name 'iteritems_compat' This commit drops usage of that function.
* Remove some unused importsDmitry Shachnev2013-03-231-1/+0
|
* Version 2.3.12.3.1.finalWaylan Limberg2013-03-221-1/+1
|
* Ensure handleAttributes doesn't lose AtomicStrings.Waylan Limberg2013-03-181-3/+3
| | | | | | | | | | | | | | | Fixes #204. This was a real pain to debug. But I think the problem stemmed from the fact that the footnote extension inserted a etree link into the footnotes last p element. Then when inline patterns are run, the inline code in that p element is processed. Normally, code would be the first child found, but with the pre-existing link, that wasn't the case and the parser took a slightly differant path which would never be encountered in any other situation. It was this slightly differant path that made the lose of the AtomicString status of the inline code matter. Since any AtomicString (including inline code) doesn't need to be run though hanldeAttributes anyway, we can just skip over it and preserve the AtomicString. Whew!
* Use lead blockprocessor comment as docstringAdam Dinwoodie2013-03-181-10/+12
| | | | | | The lead comment in blockprocessors.py should really be a docstring for consistency with other files. Fix this with the other part of @Arfrever's patch for issue #203.
* Future imports go after the docstringsAdam Dinwoodie2013-03-1823-23/+24
| | | | | | | | | 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.
* Fix some pyflakes-undefined-name warningsDmitry Shachnev2013-03-152-4/+11
|
* Update fenced_code.pyTimon Wong2013-03-151-1/+1
| | | CodeHilite: linenos is replaced by linenums
* Version 2.3 Final2.3.finalWaylan Limberg2013-03-141-1/+1
|
* Removed the html_tidy extension. See 2.3 release notes for explaination.Waylan Limberg2013-03-131-71/+0
|
* Dict.keys() does not return a list in Python 3.Waylan Limberg2013-02-272-2/+2
|
* Merge branch '2and3'Waylan Limberg2013-02-2729-291/+324
|\
| * Now using universal code for Python 2 & 3.Waylan Limberg2013-02-2728-258/+311
| | | | | | | | | | | | | | | | | | | | 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.
| * Simlify importing ElementTreeWaylan Limberg2013-02-262-33/+13
| | | | | | | | | | | | As we no longer support older python versions, importing ElementTree is much simpler. The documented way for extensions to use etree still remains the same.
* | Missed a set.append -> set.add.Waylan Limberg2013-02-251-1/+1
| |
* | Consistant parsing of attr_lists in Python3.3Waylan Limberg2013-02-251-2/+2
|/ | | | | | 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.
* Change `set.append` -> `set.add` in `headerid.unique`Waylan Limberg2013-02-222-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.
* More TOC cleanup and added tests.Waylan Limberg2013-02-191-2/+2
|
* TOC list item names must use text from all children.Waylan Limberg2013-02-191-1/+1
|
* Updated toc extension to work with changes @ 4ff74e3.Waylan Limberg2013-02-191-2/+2
|
* Ensure toc attribute is available on Markdown class.Waylan Limberg2013-02-191-3/+3
| | | | | | 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.
* Do not use assigned names "next" and "id", rename to order_toc_list and ↵benjaoming2013-02-181-18/+20
| | | | clean up code
* code cleanupbenjaoming2013-02-181-13/+12
|
* Make TocTreeprocessor extendable and be more gentle on badly structured headingsbenjaoming2013-02-171-63/+126
|
* Allow better linenum override in CodeHiliteWaylan Limberg2013-02-141-10/+23
| | | | | | | | | | | 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
* Preserve all blank lines in code blocks.Waylan Limberg2013-02-142-14/+14
| | | | | | | | | | | | Fixes #183. Finally got this working properly. The key was using a regex substitution with non-overlapping matches that removed all whitespace from the begining of *all* blank lines when normalizing whitespace. Once I got that, I could simplfy the EmptyBlockProcessor and easily output one or two blank lines appropriately. A blank block gets two new lines (`'\n\n'`), while a block which starts with a newline gets one.
* Remove RSS Extension.Waylan Limberg2013-02-121-114/+0
| | | | | | Closes #143. If you would like to continue using the extension (not recomended), it is archived on [Github](https://gist.github.com/waylan/4773365).
* Allow capitalized Admonition title.Waylan Limberg2013-02-121-1/+1
| | | | | If an adminition title is capitalized, the html class on the div should still be lowercased.
* Merge branch 'master' into admonitionTiago Serafim2013-02-0915-68/+141
|\ | | | | | | | | | | Conflicts: docs/extensions/index.txt tests/extensions/test.cfg
| * Footnote ids contain dashes when outputing HTML5.Waylan Limberg2013-02-082-6/+8
| | | | | | | | | | Previously they contained colons - and they still do for HTML4 and XHTML. Fixes #180.
| * Updated docs to reflect extension loading best practices.Waylan Limberg2013-02-081-5/+0
| | | | | | | | Fixes #184. Also delted some commented out code I missed in previous commit.
| * Moved whitespace normalization to a preprocessor.Waylan Limberg2013-02-083-5/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * Cleaned up fixes for #183Waylan Limberg2013-02-083-1/+7
| | | | | | | | | | | | | | | | | | My previous commit (d5a94c2) broke a few things badly. Unfortunately I failed to run the complete test suite and didn't catch it. A bad regex was crashing the test suite. Also cleaned up a few other odds and ends from previous work on #183. Still loosing a few random empty lines in code blocks though. I suspect this may also fix #188.
| * HtmlBlockProcessor preserves empty linesWaylan Limberg2013-02-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Partial fix for #183. This has the same effect on empty lines in code blocks as not using the html processor at all (which was eating some of the missing newlines as reported in issue #183). By doing `rsplit('\n\n')` the third newline (in each set of three) always ends up at the end of a block, rather than the begining - which it less of an issue for the html processor. Also updated tests to indicate final intended output, although they do not fully pass yet.
| * Preserve whitespace in empty linesWaylan Limberg2013-02-071-1/+0
| | | | | | | | | | | | | | | | Partial fix for #183. By preserving tabs at the start of empty lines in code blocks, the parser will retain those empty lines. Still does not work consistantly if the tab is missing!? Not sure why. Also added tests.
| * Preserve empty lines in code blocksWaylan Limberg2013-02-062-7/+8
| | | | | | | | | | | | Partial fix for #183. Some lines are still being lost. When the processors are run, one line is lost. When their calling code is comments out (completely skiped) a line is still lost if more than 3 exist in a row. Also need to add some tests for this.
| * nl2br and attr_list compatability.Waylan Limberg2013-02-062-3/+3
| | | | | | | | | | | | 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.
| * Account for a paragraph that starts with a colon when processing def_listsWaylan Limberg2013-02-061-4/+10
| | | | | | | | 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.
| * Whitelisted known safe url schemes in safe_mode. A better fix for #185.Waylan Limberg2013-02-061-6/+7
| |
| * Forbid javascript:// URLs in safe modePhilipp Hagemeister2013-02-051-0/+3
| |