skeeks / yii2-kartik-markdown
Advanced Markdown editing and conversion utilities for Yii Framework 2.0
Installs: 357
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:yii2-extension
Requires
This package is auto-updated.
Last update: 2024-10-29 04:31:03 UTC
README
This module provides Markdown Editing and Conversion utilities for Yii Framework 2.0. It implements markdown conversion using PHP Markdown Extra and PHP Smarty Pants. In addition, you can customize the flavor of Markdown, by including additional custom conversion patterns. The module also includes an enhanced customized Markdown Editor Widget for markdown editing and preview at runtime. This widget is styled using Bootstrap 3.0. View a complete demo.
Markdown
VIEW DEMO
This is a markdown converter class that uses PHP Markdown Extra and PHP SmartyPantsTypographer for processing Markdown conversion to HTML. It also supports configurable custom conversion processing of patterns for styling your own flavour of Markdown to some extent.
View examples and details or view a complete demo.
MarkdownEditor
VIEW DEMO
This is an advanced markdown input widget with configurable options. It is styled using Bootstrap 3.0. Key features available with this widget are:
- Configurable toolbar and buttons for formatting content
- Live preview of Markdown formatted text as HTML
- Maximize editor for full screen editing
- Implements PHP Markdown Extra and PHP SmartyPantsTypographer functionality as provided by the Markdown.
- Uses Bootstrap 3.0 styling wherever possible
- Allows saving/exporting of the text-editor contents as Text or HTML
- Configurable header, footer, and input options.
- Supports localization and customization of messages and content.
View examples and details or view a complete demo.
Demo
You can see a demonstration here on usage of these functions with documentation and examples.
Installation
The preferred way to install this extension is through composer.
Note: Check the composer.json for this extension's requirements and dependencies. Read this web tip /wiki on setting the
minimum-stability
settings for your application's composer.json.
Either run
$ php composer.phar require kartik-v/yii2-markdown "dev-master"
or add
"kartik-v/yii2-markdown": "dev-master"
to the require
section of your composer.json
file.
Usage
Setup Module
Add markdown
to your modules section of your Yii configuration file
'modules' = [ /* other modules */ 'markdown' => [ 'class' => 'kartik\markdown\Module', ] ];
You can setup additional configuration options for the markdown
module:
'modules' = [ 'markdown' => [ // the module class 'class' => 'kartik\markdown\Module', // the controller action route used for markdown editor preview 'previewAction' => '/markdown/parse/preview', // the list of custom conversion patterns for post processing 'customConversion' => [ '<table>' => '<table class="table table-bordered table-striped">' ], // whether to use PHP SmartyPantsTypographer to process Markdown output 'smartyPants' => true ] /* other modules */ ];
Markdown
use kartik\markdown\Markdown; // default call echo Markdown::convert($content); // with custom post processing echo Markdown::convert($content, ['custom' => [ '<h1>' => '<h1 class="custom-h1>', '<h2>' => '<h1 class="custom-h2>', ]]);
MarkdownEditor
// add this in your view use kartik\markdown\MarkdownEditor; // usage with model echo MarkdownEditor::widget([ 'model' => $model, 'attribute' => 'markdown', ]); // usage without model echo MarkdownEditor::widget([ 'name' => 'markdown', 'value' => $value, ]);
License
yii2-markdown is released under the BSD 3-Clause License. See the bundled LICENSE.md
for details.