Skip to content

Releases: facelessuser/pymdown-extensions

8.1.1

26 Jan 01:42
Compare
Choose a tag to compare

8.1.1

  • FIX: Ensure content immediately before Details content or Tabbed content gets preserved.
  • FIX: StripHTML: Fix some corner cases related to stripping comments.

8.1

24 Dec 17:50
Compare
Choose a tag to compare
8.1

8.1

  • NEW: Drop support for Python 3.5.
  • NEW: Officially support Python 3.9.
  • NEW: Tabbed titles can now have simple Markdown in them which can be parsed and rendered (like emoji, bold, etc.).
  • FIX: Avoid parsing script tags in PathConverter and B64 extensions.

8.0.1

28 Sep 01:35
5c3e9d7
Compare
Choose a tag to compare

8.0.1

  • FIX: Fix issue with pymdownx-inline an Pygments 2.7+.

8.0

11 Aug 14:59
Compare
Choose a tag to compare
8.0

8.0

Please see Release Notes for details on upgrading to 8.0.

  • NEW: Added SaneHeaders extension.
  • NEW: SuperFences & InlineHilite: gracefully handle failing custom formatters and/or validators. Users should add their own debug code to their formatter/validator if they suspect it isn't working.
  • NEW: SuperFences: if a custom fence validator fails, try the next custom fence until all are exhausted.
  • NEW: SuperFences: no longer allow custom options in the form key= (no value). Only keys with values or keys with no value and no = are accepted. Keys with no value will now assume the value to be the key name.
  • NEW: SuperFences: if attr_list extension is enabled, fenced code that use brace attribute list style headers ( ```{lang #id .class attr=value}) will attach arbitrary attributes that are included in the header to the code element.
  • NEW: SuperFences: when Pygments is disabled, options (such as linenums) included in fenced code headers no longer do anything. If attr_list is enabled, and the brace header is used, such options will be treated as HTML attributes. JavaScript highlighter options should be defined in the brace header form with attr_list enabled in order to generate appropriate, compatible HTML with the chosen JavaScript highlighter.
  • NEW: SuperFences: backwards incompatible changes where made to custom fence API. See Release Notes for instructions on how to migrate to the new API. Some temporary support for most of the old format is in place, but is deprecated.
  • NEW: SuperFences: has removed legacy code tab feature. Associated legacy_tab_classes option has been removed. Please use the Tabbed extension to create general purpose tabs for code blocks or other content.
  • NEW: Highlight: add new option language_prefix which controls the prefix applied to language classes when Pygments is not being used.
  • NEW: Highlight: A new option called code_attr_on_pre was added to the Highlight extension and controls whether language classes, and any ids, attributes, and classes that are defined in fenced code attribute list style headers, are attached to the code element or pre element. This has effect when using Pygments.
  • NEW: Highlight: option linenums now defaults to None and accepts None, True, or False. None is disabled by default, but can be enabled per code block. True enables line numbers globally. False disables globally and cannot be enabled manually per code block.
  • NEW: ExtraRawHTML: remove extension.
  • FIX: Fix issues with complex emphasis combinations in BetterEm.
  • FIX: Details: fix corner cases related to extension and lists.
  • FIX: Tabbed: fix corner cases related to extension and lists.
  • FIX: EscapeAll: Handle HTML entities special.
  • FIX: SuperFences: Fix parameter unpacking bug.

7.1

18 Apr 22:34
Compare
Choose a tag to compare
7.1

7.1

  • NEW: SuperFences will now allow number ranges in hl_lines option. (#878)
  • NEW: Emoji extension now requires custom emoji indexes to take an options and md argument. The old non-argument format is deprecated and still accepted, but support for indexes with no arguments will be removed at a future time.
  • NEW: Highlight now allows the specifying of a custom line number class when not using Pygments.
  • FIX: Better Arithmatex patterns. Fix issue #888 which caused a hang due to a regular expression typo. Also ensure #!tex $$..$$ and #!tex begin{}...end{} patterns properly don't match if the tail markers are escaped.

7.0.0

07 Apr 14:00
Compare
Choose a tag to compare

7.0

Please see Release Notes for details on upgrading to 7.0.

  • NEW: MagicLink will now shorten user name and repository links when link shortening is enabled.
  • NEW: Added MagicLink options social_url_shortener and shortener_user_exclude were added.
  • NEW: UML examples are now demonstrated with Mermaid in documentation.
  • NEW: SuperFences, if using the attribute list format (``` {.lang .additional_class, linenums="1"}) allows
    adding additional classes. IDs can be added as well, though Pygments generated code blocks do not have a mechanism to
    actually insert IDs. The first provided class will always be treated as the language class.
  • NEW: Custom SuperFences' formatters should now also include the keyword parametersclasses and id_value to
    allow injecting classes and IDs via the now supported attribute list format. If a code block defines no additional IDs
    and classes, the old form will be used. Formatters should include **kwargs at the end to future proof them from
    future changes.
  • NEW: Deprecate the SuperFences highight_code option. As SuperFences syntax has language classes built right in,
    disabling the highlight_code option makes little sense. While highlight_code is still accepted, it currently does
    nothing and will be removed at some future time.
  • NEW: If a custom fence (SuperFences) or inline (InlineHilite) is given the name of *, it will override the
    default fence logic.
  • NEW: SuperFences and InlineHilite no longer sync settings from CodeHilite.
  • NEW: Add new Tabbed extension for general purpose tabbed content in Markdown.
  • NEW: Deprecate old SuperFences tabbed content feature. This will be removed in 8.0.
  • NEW: SuperFences' tabbed content classes have changed from supferfences-tabs and superfences-content to
    tabbed-set and tabbed-content respectively. Old style classes can be enabled with the legacy_tab_classes option
    in SuperFences. This new option will be retired with SuperFences tabbed content feature in 8.0.
  • NEW: Upgrade to Twemoji 12.1.5.
  • NEW: New key codes and key code changes in Keys extension:
    • Added super, left-super, and right-super key codes as an alternative to meta. Aliases lsuper and
      rsuper were also added.
    • Added the alt-graph key code with altgr alias.
    • Added the following new aliases: lwindows and rwindows for consistency.
    • Added new codes left-meta and right-meta for consistency with other modifiers. Aliases lmeta and rmeta
      were also added.
    • Added left-option, right-option, left-command, right-command, left-meta, and right-meta codes for
      consistency across similar modifier keys. Additional aliases were added as well: loption, roption, lopt,
      ropt, left-opt, right-opt, lcommand, rcommand, lcmd, rcmd, left-cmd, right-cmd, lmeta, and
      rmeta.
    • alt no longer uses menu, lmenu, and rmenu as key aliases. context-menu now uses the alias menu.
      context-menu will display with Menu now.
  • FIX: Numerous deprecation warnings associated with the recent release of Python Markdown 3.2.
  • FIX: Ensure ExtraRawHTML raises a deprecation warning.

7.0.0rc2

30 Mar 01:43
Compare
Choose a tag to compare
7.0.0rc2 Pre-release
Pre-release

7.0rc2

Please see Release Notes for details on upgrading to 7.0.

  • NEW: MagicLink will now shorten user name and repository links when link shortening is enabled.
  • NEW: Added MagicLink options social_url_shortener and shortener_user_exclude were added.
  • NEW: UML examples are now demonstrated with Mermaid in documentation.
  • NEW: SuperFences, if using the attribute list format (``` {.lang .additional_class, linenums="1"}) allows
    adding additional classes. IDs can be added as well, though Pygments generated code blocks do not have a mechanism to
    actually insert IDs. The first provided class will always be treated as the language class.
  • NEW: Custom SuperFences' formatters should now also include the keyword parametersclasses and id_value to
    allow injecting classes and IDs via the now supported attribute list format. If a code block defines no additional IDs
    and classes, the old form will be used. Formatters should include **kwargs at the end to future proof them from
    future changes.
  • NEW: Deprecate the SuperFences highight_code option. As SuperFences syntax has language classes built right in,
    disabling the highlight_code option makes little sense. While highlight_code is still accepted, it currently does
    nothing and will be removed at some future time.
  • NEW: If a custom fence (SuperFences) or inline (InlineHilite) is given the name of *, it will override the
    default fence logic.
  • NEW: SuperFences and InlineHilite no longer sync settings from CodeHilite.
  • NEW: Add new Tabbed extension for general purpose tabbed content in Markdown.
  • NEW: Deprecate old SuperFences tabbed content feature. This will be removed in 8.0.
  • NEW: SuperFences' tabbed content classes have changed from supferfences-tabs and superfences-content to
    tabbed-set and tabbed-content respectively. Old style classes can be enabled with the legacy_tab_classes option
    in SuperFences. This new option will be retired with SuperFences tabbed content feature in 8.0.
  • NEW: Upgrade to Twemoji 12.1.5.
  • NEW: New key codes and key code changes in Keys extension:
    • Added super, left-super, and right-super key codes as an alternative to meta. Aliases lsuper and
      rsuper were also added.
    • Added the alt-graph key code with altgr alias.
    • Added the following new aliases: lwindows and rwindows for consistency.
    • Added new codes left-meta and right-meta for consistency with other modifiers. Aliases lmeta and rmeta
      were also added.
    • Added left-option, right-option, left-command, right-command, left-meta, and right-meta codes for
      consistency across similar modifier keys. Additional aliases were added as well: loption, roption, lopt,
      ropt, left-opt, right-opt, lcommand, rcommand, lcmd, rcmd, left-cmd, right-cmd, lmeta, and
      rmeta.
    • alt no longer uses menu, lmenu, and rmenu as key aliases. context-menu now uses the alias menu.
      context-menu will display with Menu now.
  • FIX: Numerous deprecation warnings associated with the recent release of Python Markdown 3.2.
  • FIX: Ensure ExtraRawHTML raises a deprecation warning.

7.0.0rc1

19 Mar 20:39
Compare
Choose a tag to compare
7.0.0rc1 Pre-release
Pre-release

7.0rc1

  • NEW: SuperFences, if using the attribute list format (``` {.lang .additional_class, linenums="1"}) allows
    adding additional classes. IDs can be added as well, though Pygments generated code blocks do not have a mechanism to actually insert IDs. The first provided class will always be treated as the language class.
  • NEW: Custom SuperFences' formatters should now also include the keyword parametersclasses and id_value to allow injecting classes and IDs via the now supported attribute list format. If a code block defines no additional IDs and classes, the old form will be used. Formatters should include **kwargs at the end to future proof them from future changes.
  • NEW: Deprecate the SuperFences highight_code option. As SuperFences syntax has language classes built right in, disabling the highlight_code option makes little sense. While highlight_code is still accepted, it currently does nothing and will be removed at some future time.
  • NEW: If a custom fence (SuperFences) or inline (InlineHilite) is given the name of *, it will override the
    default fence logic.
  • NEW: SuperFences and InlineHilite no longer sync settings from CodeHilite.
  • NEW: Add new Tabbed extension for general purpose tabbed content in Markdown.
  • NEW: Deprecate old SuperFences tabbed content feature. This will be removed in 8.0.
  • NEW: SuperFences' tabbed content classes have changed from supferfences-tabs and superfences-content to tabbed-set and tabbed-content respectively. Old style classes can be enabled with the legacy_tab_classes option in SuperFences. This new option will be retired with SuperFences tabbed content feature in 8.0.
  • NEW: Upgrade to Twemoji 12.1.5.
  • NEW: New key codes and key code changes in Keys extension:
    • Added super, left-super, and right-super key codes as an alternative to meta. Aliases lsuper and
      rsuper were also added.
    • Added the alt-graph key code with altgr alias.
    • Added the following new aliases: lwindows and rwindows for consistency.
    • Added new codes left-meta and right-meta for consistency with other modifiers. Aliases lmeta and rmeta were also added.
    • Added left-option, right-option, left-command, right-command, left-meta, and right-meta codes for consistency across similar modifier keys. Additional aliases were added as well: loption, roption, lopt, ropt, left-opt, right-opt, lcommand, rcommand, lcmd, rcmd, left-cmd, right-cmd, lmeta, and rmeta.
    • alt no longer uses menu, lmenu, and rmenu as key aliases. context-menu now uses the alias menu. context-menu will display with Menu now.
  • FIX: Numerous deprecation warnings associated with the recent release of Python Markdown 3.2.
  • FIX: Ensure ExtraRawHTML raises a deprecation warning.

7.0.0b2

20 Feb 14:56
Compare
Choose a tag to compare
7.0.0b2 Pre-release
Pre-release

7.0b2

Please see Release Notes for details on upgrading to 7.0.

  • NEW: SuperFences, if using the attribute list format (``` {.lang .additional_class, linenums="1"}) allows
    adding additional classes. IDs can be added as well, though Pygments generated code blocks do not have a mechanism to actually insert IDs. The first provided class will always be treated as the language class.
  • NEW: Custom SuperFences' formatters should now also include the keyword parametersclasses and id_value to allow injecting classes and IDs via the now supported attribute list format. If a code block defines no additional IDs and classes, the old form will be used. Formatters should include **kwargs at the end to future proof them from future changes.
  • NEW: Deprecate the SuperFences highight_code option. As SuperFences syntax has language classes built right in, disabling the highlight_code option makes little sense. While highlight_code is still accepted, it currently does nothing and will be removed at some future time.
  • NEW: If a custom fence (SuperFences) or inline (InlineHilite) is given the name of *, it will override the
    default fence logic.- NEW: SuperFences and InlineHilite no longer sync settings from CodeHilite.

7.0.0b1

13 Feb 23:36
Compare
Choose a tag to compare
7.0.0b1 Pre-release
Pre-release

7.0.0b1

  • NEW: Add new Tabbed extension for general purpose tabbed content in Markdown.
  • NEW: Deprecate old SuperFences tabbed content feature. This will be removed in 8.0.0.
  • NEW: SuperFences' tabbed content classes have changed from supferfences-tabs and superfences-content to
    tabbed-set and tabbed-content respectively. Old style classes can be enabled with the legacy_tab_classes option
    in SuperFences. This new option will be retired with SuperFences tabbed content feature in 8.0.0.
  • FIX: Numerous deprecation warnings associated with the recent release of Python Markdown 3.2.