DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:markdowku

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
plugin:markdowku [2017-10-12 15:08] – old revision restored (2017-10-12 15:07) 213.235.62.194plugin:markdowku [2024-03-08 14:30] (current) – [markdowku Plugin] report bugs broken link beco
Line 1: Line 1:
-====== markdowku Plugin ======+===== markdowku Plugin ======
  
 ---- plugin ---- ---- plugin ----
 description: Integrates Markdown into DokuWiki syntax description: Integrates Markdown into DokuWiki syntax
-author     : Julian Fagir  +author     : Julian Fagir, Raphael Wimmer (maintainer) 
-email      : gnrp@komkon2.de+email      : raphael.wimmer@ur.de
 type       : Syntax type       : Syntax
-lastupdate : 2017-02-19 +lastupdate : 2021-12-04 
-compatible : Adora BelleWeatherwaxBinky, Ponder Stibbons, Elenor of Tsort+compatible : !GreeboHogfatherIgor
 depends    :  depends    : 
 conflicts  conflicts 
 similar    : mediasyntax, creole, markdown, markdownextra similar    : mediasyntax, creole, markdown, markdownextra
-tags       : formatting, markup_language+tags       : formatting, markdown, markup_language
  
-downloadurl: https://komkon2.de/markdowku/markdowku.tgz +downloadurl: https://github.com/Medieninformatik-Regensburg/dokuwiki-plugin-markdowku/archive/refs/heads/master.zip 
-bugtracker : https://vcs.in-berlin.de/schrank21_dokuwiki/reportlist +bugtracker : https://github.com/Medieninformatik-Regensburg/dokuwiki-plugin-markdowku/issues
-sourcerepo : https://vcs.in-berlin.de/schrank21_dokuwiki +sourcerepo : https://github.com/Medieninformatik-Regensburg/dokuwiki-plugin-markdowku/
-donationurl: https://www.komkon2.de/dokuwiki/doku.php?id=donate+
 ---- ----
  
 ===== Installation ===== ===== Installation =====
  
-Install the plugin using the [[plugin:plugin|Plugin Manager]] and the download URL above, which points to latest version of the plugin. Refer to [[:Plugins]] on how to install plugins manually.+Search and install the plugin using the [[plugin:extension|Extension Manager]]. Refer to [[:Plugins]] on how to install plugins manually. 
 + 
 +==== Greebo ==== 
 +The version linked above is only compatible with DokuWiki versions Hogfather and later. 
 +If you are still running **Greebo**, please use [[https://github.com/Medieninformatik-Regensburg/dokuwiki-plugin-markdowku/archive/Greebo.zip|this version]] of the plugin. 
  
 ===== Examples/Usage ===== ===== Examples/Usage =====
  
-This plugin will go before the overlapping DokuWiki syntax definitions and overrule them with Markdown specifications.+This plugin will go before the overlapping DokuWiki syntax definitions and overrule them with Markdown  
 +specifications.
  
 For patterns that are not part of Markdown, you can still use DokuWiki, e.g. you're still able to use DokuWiki tables. For patterns that are not part of Markdown, you can still use DokuWiki, e.g. you're still able to use DokuWiki tables.
Line 40: Line 45:
 ==== Known incompatibilities ==== ==== Known incompatibilities ====
  
-Due to the inner working of Markdown and DokuWiki, there are things which currently cannot be done with this plugin. I am working on getting this fixed. If you want to help, feel free to contact me (gnrp) in IRC.+Due to the inner working of Markdown and DokuWiki, there are things which currently cannot be done with this plugin. 
  
 All in all, this plugin is complete. Just when it comes to nesting things, i.e. putting things into each other, this plugin doesn't handle lists and blockquotes well. All in all, this plugin is complete. Just when it comes to nesting things, i.e. putting things into each other, this plugin doesn't handle lists and blockquotes well.
Line 59: Line 64:
   * codespans with more than five backticks (most probably never used)   * codespans with more than five backticks (most probably never used)
   * using underscores to make text bold. Double underline is already used by DokuWiki for underlining text (Markdown can't do that), and I think it's better to have the option for underlining. In general notation, you also rather use underscores for underlining than making text bold.   * using underscores to make text bold. Double underline is already used by DokuWiki for underlining text (Markdown can't do that), and I think it's better to have the option for underlining. In general notation, you also rather use underscores for underlining than making text bold.
 +  * conflict with [[https://www.dokuwiki.org/template:bootstrap3|bootstraps3 theme]] in bulleted lists
 +
 +=== Why no nested content in lists? ===
 +
 +From [[https://web.archive.org/web/20160825201421/http://www.komkon2.de/dokuwiki/doku.php?id=projects:markdowku|the old project page]]:
 +
 +The reason behind these incompatibilities are conceptual differences between Markdown's and Dokuwiki's inner workings. Markdown takes a text as a whole and transforms it into HTML. On the way, it will re-parse blocks (i.e. lists or blockquotes), treating them as if they were standing on their own.
 +
 +Here is an example for this:
 +
 +    > # Blabla
 +    > Blabla
 +
 +Markdown would see that there's a comment, and then reparse the whole thing with the comment brackets removed, but nested inside the comment, i.e. it would reparse
 +
 +    # Blabla
 +    Blabla
 +
 +and finally produce a blockquote with a headline in it.
 +
 +Dokuwiki, on the other hand, uses a lexer you can pass tokens (regexes) to be matched. Visually spoken this means that Dokuwiki parses text only sequentially, while Markdown parses text also “vertically”. Overcoming this is difficult and the main reason that nesting is not yet implemented for most formatting. 
  
 ===== Development ===== ===== Development =====
  
-=== Change Log === 
  
-**Please note that this plugin is not actively developed anymore!**+=== Version History === 
 + 
 +**Please note that this plugin is not actively developed at the moment.!** 
 + 
 +Markdowku was initially developed by Julian Fagir. 
 +Raphael Wimmer just made the plugin ready for Hogfather and moved the repository to GitHub.  
 +Contributions welcome.
  
-You can find the whole release history on [[http://www.komkon2.de/dokuwiki/doku.php?id=projects:markdowku|the plugin website]].+** Seems to work on Jack Jackrum release (as of 2023-07-21)An extra newline in between bullet points is all I note that is finicky compared to normal markdown (where lines can be right after one another and render proper markdown.)
  
-**Last update: 2017-02-19**: Relese a new version. Compatibility with PHP 7.0 is now inside. I am sorry for the long delay with that. I had the code around, but testing was a bit difficult with PHP 7.0. However, it is released now. 
  
 === Bugs/Issues === === Bugs/Issues ===
  
-There is a [[https://vcs.in-berlin.de/schrank21_dokuwiki/reportlist|bug tracker]] online. Please note you have to log in anonymous (go to Login page, click "Fill out captcha") before you can commit bugs. Also, you can write me an e-mail and I will enter the bug to the bug tracker.+Please [[https://github.com/Medieninformatik-Regensburg/dokuwiki-plugin-markdowku/issues/|submit an issue on GitHub]]. 
 + 
 +There are still some issues in the [[https://vcs.in-berlin.de/schrank21_dokuwiki/reportlist|old bug tracker]]. 
  
 === ToDo/Wish List === === ToDo/Wish List ===
Line 78: Line 110:
 This plugin is not complete yet. Incompatibilities are listed above at [[#Known incompatibilities]]. This plugin is not complete yet. Incompatibilities are listed above at [[#Known incompatibilities]].
  
-In the end, I want to extend this plugin to be able to handle different markdown flavours (esp. Github), with a switch in the configuration to choose between those all.+Suggestions by the initial author:
  
-A switch like <no_markdown> will allow to avoid problems with existing native markup pages. (jseto) -- I'll see what is possible, but I think it will be difficult to implement that. (gnrp 13-09-23)+  * In the end, I want to extend this plugin to be able to handle different markdown flavours (esp. Github), with a switch in the configuration to choose between those all. 
 +  * A switch like <no_markdown> will allow to avoid problems with existing native markup pages. (jseto) -- I'll see what is possible, but I think it will be difficult to implement that. (gnrp 13-09-23) 
 +  * The plugin editor does not work together with markdown. Either have the possibility to disable it, or even better, make it work with Markdown (Celano 13-08-08, reformatted by gnrp 13-09-23)
  
-The plugin editor does not work together with markdown. Either have the possibility to disable it, or even better, make it work with Markdown (Celano 13-08-08, reformatted by gnrp 13-09-23) +Further suggestions (dinobib 15-05-25) and other anonymous commenters: 
- +  * Html doesn’t work but html is correct markdown and really useful for things markdown can’t do. Even the %%<html></html>%% tags of DokuWiki doesn’t work either. I have allowed html in config options but the plugin just seems to ruin the page when it encounters any %%<tag>%%. FIXME
-The plugin seem useful as we write in markdown but eventually need to use some DokuWiki syntax. I have to say that the wiki display markdown files created elsewhere by peoples using markdown editor and they doesn’t want to change to a new syntax. The idea is they work as they used to in markdown tools, and eventually had some DokuWiki synthax for some site related features and needs. I have three problems that prevent us to use the plugin which I hope could be improved.  +
- +
-  * Html doesn’t work but html is correct markdown and really useful for things markdown can’t do. Even the %%<html></html>%% tags of DokuWiki doesn’t work either. I have allowed html in config options but the plugin just seems to ruin the page when it enconter any %%<tag>%%. FIXME+
   * Second problem is that we use a lot the footnote syntax of markdown extra (a footnote syntax %%[^1]%% which become near a standard in markdown tools) [[https://michelf.ca/projects/php-markdown/extra/#footnotes|https://michelf.ca/projects/php-markdown/extra/#footnotes]]. This addition would be very nice.    * Second problem is that we use a lot the footnote syntax of markdown extra (a footnote syntax %%[^1]%% which become near a standard in markdown tools) [[https://michelf.ca/projects/php-markdown/extra/#footnotes|https://michelf.ca/projects/php-markdown/extra/#footnotes]]. This addition would be very nice. 
   * Reference-style links from classic markdown doesn’t works. [[http://daringfireball.net/projects/markdown/syntax#link|http://daringfireball.net/projects/markdown/syntax#link]]   * Reference-style links from classic markdown doesn’t works. [[http://daringfireball.net/projects/markdown/syntax#link|http://daringfireball.net/projects/markdown/syntax#link]]
-(dinobib 15-05-25) +  * It would be nice if Commonmark would be supported!
  
-If it used .md, I might be able to keep it synced with my .md files in dropbox.  
  
 ===== FAQ ===== ===== FAQ =====
Line 98: Line 127:
 === There are already two Markdown plugins, why do you write a third one? === === There are already two Markdown plugins, why do you write a third one? ===
  
-The prior two plugins ([[markdown]], [[markdownextra]]) work completely different. The other two just create a large container (either defined by ''<markdown>'' tags or a .md file ending) and parse everything inside them as Markdown.+Prior plugins ([[mdpage]]((last update: 2021)), [[markdown]]((last update: 2006)), [[markdownextra]]((last update: 2016))) work completely different. They just create a large container (either defined by ''<markdown>'' tags or a .md file ending) and parse everything inside them as Markdown.
  
 This plugin adds Markdown to the DokuWiki syntax, i.e. it still uses DokuWiki definitions for lists, headers, etc.  Thus, markdowku enables you to use internal links, mix Markdown with other plugins and other syntaxes and have clean section headers and media embedding. This plugin adds Markdown to the DokuWiki syntax, i.e. it still uses DokuWiki definitions for lists, headers, etc.  Thus, markdowku enables you to use internal links, mix Markdown with other plugins and other syntaxes and have clean section headers and media embedding.
Line 104: Line 133:
 ===== Discussion ===== ===== Discussion =====
  
-It would be nice if Commonmark would be supported! +==== Plugin abandoned? ====
-==== Date of the latest version ==== +
-Latest version is 2016-01-16, however the plugin repository is incorrectly showing 2017-02-19 as the current version, making the Extension Manager show an available update (that won't work since plugin.info.txt doesn't match the supposedly new version date).+
  
-==== Donation doesn't work ====+ --- [[user>digineut|digineut]] //2018-12-15 17:03// According to the Internet Archive, the author's dokuwiki was [[https://web.archive.org/web/20160825202226/http://www.komkon2.de/dokuwiki/doku.php?id=start|last seen in 2016]]. My guess is that he is no longer using it and the plugin is abandoned. My suggestion is to ask his approval for creating a GitHub repo to continue development there.
  
-want to donate some bucks for the developer of the pluginBut donation didn't work.+ --- [[user>ismirnov|ismirnov]] //2020-06-04 17:03// have filed an [[https://vcs.in-berlin.de/schrank21_dokuwiki/artifact/19d2e45ef8f5070e|issue]] documenting the breaking changes in Hogfather, but nor response. The [[https://vcs.in-berlin.de/schrank21_dokuwiki/artifact/19d2e45ef8f5070e|License]] is not very forking friendly, but perhaps we can do a GPL/MIT rewrite.
  
 + --- [[user>raphman|raphman]] //2020-06-06 00:46// I have fixed the plugin, contacted the original author, and taken over maintenance for now with his blessing. @ismirnov: The original license is the standard 2-clause BSD license, nothing special. [[https://github.com/Medieninformatik-Regensburg/dokuwiki-plugin-markdowku|Github Repo with Fork]]
  
 + --- [[user>anon1|anon1]] //2024-02-03 00:00// Grateful for this markdown support. In `2023-04-04 "Jack Jackrum"` it appears to break the wiki:syntax special page a bit.  So far I "fixed" my local local wiki:syntax page by (1) basically removing the section on "Windows Shares" and also (2) massively simplifying the section on "Quoting" in order to only demonstrate single-level quotes.  Now my syntax page mostly renders fine, and markdowku can stay Enabled, hooray.
plugin/markdowku.1507813721.txt.gz · Last modified: 2017-10-12 15:08 by 213.235.62.194

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki