dev-master
9999999-devAce editor widget for Yii 2
MIT
The Requires
by Alex Yashkin
code widget editor ace
Ace editor widget for Yii 2
This extension renders a Ace Code Editor widget for Yii framework 2.0., (*1)
Install extension through composer:, (*3)
composer require alexantr/yii2-ace
Note: The extension loads editor code from CDN., (*4)
The following code in a view file would render an Ace widget:, (*5)
<?= alexantr\ace\Ace::widget(['name' => 'attributeName']) ?>
If you want to use the Ace widget in an ActiveForm, it can be done like this:, (*6)
<?= $form->field($model, 'attributeName')->widget(alexantr\ace\Ace::className(), [/*...*/]) ?>
Configuring the Ace options should be done
using the clientOptions
attribute:, (*7)
<?= alexantr\ace\Ace::widget([ 'name' => 'attributeName', 'clientOptions' => [ 'fontSize' => 14, 'useSoftTabs' => true, 'maxLines' => 100, // need this option... ], ]) ?>
Note: Please set maxLines
option or set CSS min-height
for Ace container to make editor visible:, (*8)
<?= alexantr\ace\Ace::widget([ 'name' => 'attributeName', 'containerOptions' => [ 'style' => 'min-height:100px', // ...or this style ], ]) ?>
Setting themes and programming language mode:, (*9)
<?= alexantr\ace\Ace::widget([ 'name' => 'attributeName', 'mode' => 'javascript', 'theme' => 'twilight', 'clientOptions' => [/*...*/], 'containerOptions' => [/*...*/], ]) ?>
Default mode is "html" and theme is "chrome"., (*10)
To avoid repeating identical configuration in every widget you can set global configuration in
@app/config/ace.php
. Options from widget's clientOptions
will be merged with this configuration., (*11)
You can change default path with presetPath
attribute:, (*12)
<?= alexantr\ace\Ace::widget([ 'name' => 'attributeName', 'presetPath' => '@backend/config/my-ace-config.php', ]) ?>
Preset file example:, (*13)
<?php return [ 'fontSize' => 14, 'minLines' => 10, 'maxLines' => new \yii\web\JsExpression('Infinity'), 'useSoftTabs' => true, ];
Ace editor widget for Yii 2
MIT
code widget editor ace