### How to install the Markdown renderer for b2evolution ## (This document is written in [Markdown][md] syntax.) 1. Download the zip file, [`b2evo_markdown.zip`][plugin], which contains my plugin (`_markdown.renderer.php`) and [Michel Fortin][mf]'s [PHP Markdown 1.0.1][phpmd] (`markdown.php`). Unpack the archive and and place `markdown.php` and `_markdown.renderer.php` in your b2evo blog's `plugins/renderers/` directory. They should both be readable and writeable by all (`chmod gou+rw-x` should do the trick). 2. You'll want to make sure that all the other plugins are turned off by default (Markdown takes care of automatically placing `

` tags between paragraphs which is done currently by the `_auto_p.renderer.php`.). The easiest way to do this is to open each of the renderer php files and change: var $apply_when = 'opt-out'; to: var $apply_when = 'opt-in'; 3. Of course you'll want to keep the `$apply_when` variable set to `opt-out` in the file `_markdown.renderer.php` so that your text is parsed by `markdown.php` by default. 4. If you use markdown for basic posting, you should be set. However, if you ever use angle brackets in your posts, you should disable b2evo's HTML checker (who needs valid freakin' HTML, anyway?) by opening up `conf/_formatting.php` and setting $use_html_checker = 0; and enable the security checker by setting $use_security_checker = 1; The HTML checker is mostly an annoyance when you're not actually writing your posts in HTML. The security checker is ***necessary*** as it will prevent nastiness like running javascript or using CSS in your site's comments. 5. Finally, in the same file, `conf/_formatting.php` from the last step, change the line that says: $use_balanceTags = 1; to $use_balanceTags = 0; This will allow you to use the Automatic link syntax in Markdown so that gets turned into: http://example.com/ Please email me any bug reports and/or patches (if you've got the stones). **UPDATE [2005-04-03 18:44:16]:** Changed the order of updates to be reverse chronological. Changed default so that PHP markdown is applied to xml. Added a fifth step in the install process that deactivates balancing of tags so that we now support Markdown's automatic link syntax. Also, added PHP Markdown 1.0.2b2 which adds support for a new simple style of linking. You can now do this: This is a [link]. [link]: http://foobar.com/ **UPDATE [2004-12-18 09:45]:** It turns out that: 1. `_autolinks.renderer.php` should be set to `opt-out` as it prevents the markdown plugin from processing links (basically, it converts all the URLs in reference-style links, which markdown then sees as there being no references, thus, no links). Note: You can set the Markdown plugin's priority higher than autolinks (make it 59 instead of 60) so that autolinks is only run over your post *after* Markdown. Unfortunately, this applies to the whole post. 2. There is also a problem with using markdown's convention of surrounding a URL in angle brackets (`< ` and `>`) as the HTML checker won't allow this (it thinks the URL is a prohibited tag). I had no luck with simply disabling the HTML checker (in `conf/_formatting.php`) as it would strip automatic links from the document entirely. Oh well, no automatic links? That, I can live with. However, if you use angle brackets at all (like in this post) you should disable the HTML checker and enable the security checker as mentioned above. **UPDATE [2004-12-18 09:21]:** I've packaged `markdown.php` with my plugin so that it now installs "out of the box". **UPDATE [2004-12-17 18:18]:** [Michel Fortin][mf] has just released [version 1.0.1][phpmd] of PHP Markdown... you'll want to use that to take advantage of the latest changes in [Markdown 1.0.1][md]. [md]: http://daringfireball.net/projects/markdown/ [mf]: http://www.michelf.com/ [phpmd]: http://www.michelf.com/projects/php-markdown/ [plugin]: http://pobox.com/~joehall/b2evo_markdown/b2evo_markdown.zip