mirror of
https://github.com/fenom-template/fenom.git
synced 2023-08-10 21:13:07 +03:00
Dev, dev and dev. Also, docs, docs and docs.
This commit is contained in:
3
docs/about.md
Normal file
3
docs/about.md
Normal file
@ -0,0 +1,3 @@
|
||||
About Aspect
|
||||
============
|
||||
|
11
docs/ext/mods.md
Normal file
11
docs/ext/mods.md
Normal file
@ -0,0 +1,11 @@
|
||||
Модификаторы
|
||||
============
|
||||
|
||||
Добавить модификатор:
|
||||
|
||||
```php
|
||||
$aspect->addModifier($modifier, $callback);
|
||||
```
|
||||
|
||||
* `$modifier` - имя модификатора
|
||||
* `$callback` - строка с именем функции
|
20
docs/ext/tags.md
Normal file
20
docs/ext/tags.md
Normal file
@ -0,0 +1,20 @@
|
||||
Теги
|
||||
====
|
||||
|
||||
Теги делятся на компилеры и функции.
|
||||
Компилеры формируют синтаксис языка шаблона, добавляя такой функционал как foreach, if, while и т.д. В то время как функции - обычный вызов некоторой именованной функции
|
||||
|
||||
Добавить компилер:
|
||||
|
||||
```php
|
||||
$aspect->addCompiler($compiler, $parser);
|
||||
```
|
||||
|
||||
* `$compiler` - имя модификатора
|
||||
* `$parser` - функция разбора тега в формате function (MF\Tokenizer $tokens, MF\Aspect\Template $tpl) {}
|
||||
|
||||
Добавить блочный компилер:
|
||||
|
||||
```php
|
||||
$aspect->addBlockCompiler($compiler, $parsers, $tags);
|
||||
```
|
43
docs/main.md
Normal file
43
docs/main.md
Normal file
@ -0,0 +1,43 @@
|
||||
Documentation
|
||||
=============
|
||||
|
||||
**Aspect**
|
||||
|
||||
* [About](./about.md)
|
||||
* [Requirements and installation](./install.md)
|
||||
* [Syntax](./syntax.md)
|
||||
* [Settings](./settings.md)
|
||||
* [Callbacks and filters](./callbacks.md)
|
||||
|
||||
**Modifiers**
|
||||
|
||||
* [upper](./mods/upper.md)
|
||||
* [lower](./mods/lower.md)
|
||||
* [date_format](./mods/date_format.md)
|
||||
* [date](./mods/date.md)
|
||||
* [truncate](./mods/truncate.md)
|
||||
* [escape](./mods/escape.md)
|
||||
* [unescape](./mods/unescape.md)
|
||||
* [strip](./mods/strip.md)
|
||||
Also see [allowed functions](./mods/allowed_functions.md).
|
||||
|
||||
**Internal tags**
|
||||
|
||||
* [var](./tags/var.md)
|
||||
* [if](./tags/if.md), `elseif` and `else`
|
||||
* [foreach](./tags/foreach.md), `foreaelse`, `break` and `continue`
|
||||
* [for](./tags/for.md), `break` and `continue`
|
||||
* [while](./tags/while.md), `break` and `continue`
|
||||
* [switch](./tags/switch.md), `case`, `default` and `break`
|
||||
* [include](./tags/include.md)
|
||||
* [extends](./tags/extends.md), `use` and `block`
|
||||
* [capture](./tags/capture.md)
|
||||
* [filter](./tags/filter.md)
|
||||
* [ignore](./tags/ignore.md)
|
||||
|
||||
**Extend Aspect**
|
||||
|
||||
* [Add tags](./ext/tags.md)
|
||||
* [Add modificators](./ext/mods.md)
|
||||
* [Add template provider](./ext/provider.md)
|
||||
* [Parsing](./ext/parsing.md)
|
48
docs/settings.md
Normal file
48
docs/settings.md
Normal file
@ -0,0 +1,48 @@
|
||||
Настройка
|
||||
=========
|
||||
|
||||
### Параметры
|
||||
|
||||
#### Исходные шаблоны
|
||||
|
||||
Добавить папку с шаблонами:
|
||||
|
||||
```php
|
||||
$aspect->addTemplateDir($dir);
|
||||
```
|
||||
|
||||
Шаблонизатор последовательно будет перебирать папки и искать указанный шаблон.
|
||||
|
||||
#### Сборки шаблонов
|
||||
|
||||
Задаёт папку в которую будут сохранятся преобразованные в PHP шаблоны
|
||||
|
||||
```php
|
||||
$aspect->setCompileDir($dir);
|
||||
```
|
||||
|
||||
#### Опции
|
||||
|
||||
```php
|
||||
$aspect->setOptions($options);
|
||||
```
|
||||
|
||||
Массив `'option_name' => boolean` (если ключ не указан автоматически задаётся false)
|
||||
|
||||
* **disable_methods**, `boolean`, запретить вызов методов у объектов
|
||||
* **disable_native_funcs**, `boolean`, запретить использование PHP функций, кроме разрешенных
|
||||
* **disable_set_vars**, `boolean`, запретить изменять или задавать переменные
|
||||
* **include_sources**, `boolean`, вставлять исходный код шаблона в его сборку
|
||||
* **compile_check**, `boolean`, сравнивать mtime у исходного шаблона и его сборки. При изменении исходного шаблона будет производится его пересборка (замедляет работу шаблонизатора).
|
||||
* **force_compile**, `boolean`, пересобирать шаблон при каждом вызове (сильно замедляет работу шаблонизатора).
|
||||
* **force_include**, `boolean`.
|
||||
|
||||
или битовая маска из флагов:
|
||||
|
||||
* `Aspect::DENY_METHODS` то же что и **disable_methods**
|
||||
* `Aspect::DENY_INLINE_FUNCS` то же что и **disable_native_funcs**
|
||||
* `Aspect::DENY_SET_VARS` то же что и **disable_set_vars**
|
||||
* `Aspect::INCLUDE_SOURCES` то же что и **include_sources**
|
||||
* `Aspect::CHECK_MTIME` то же что и **compile_check**
|
||||
* `Aspect::FORCE_COMPILE` то же что и **force_compile**
|
||||
* `Aspect::FORCE_INCLUDE` то же что и **force_include**
|
@ -194,82 +194,4 @@
|
||||
document.body.appendChild(e);
|
||||
})('test');
|
||||
</script>
|
||||
```
|
||||
|
||||
Настройка
|
||||
=========
|
||||
|
||||
### Параметры
|
||||
|
||||
#### Исходные шаблоны
|
||||
|
||||
Добавить папку с шаблонами:
|
||||
|
||||
```php
|
||||
$aspect->addTemplateDir($dir);
|
||||
```
|
||||
|
||||
Шаблонизатор последовательно будет перебирать папки и искать указанный шаблон.
|
||||
|
||||
#### Сборки шаблонов
|
||||
|
||||
Задаёт папку в которую будут сохранятся преобразованные в PHP шаблоны
|
||||
|
||||
```php
|
||||
$aspect->setCompileDir($dir);
|
||||
```
|
||||
|
||||
#### Опции
|
||||
|
||||
```php
|
||||
$aspect->setOptions($options);
|
||||
```
|
||||
|
||||
Массив `'option_name' => boolean` (если ключ не указан автоматически задаётся false)
|
||||
|
||||
* **disable_methods**, `boolean`, запретить вызов методов у объектов
|
||||
* **disable_native_funcs**, `boolean`, запретить использование PHP функций, кроме разрешенных
|
||||
* **disable_set_vars**, `boolean`, запретить изменять или задавать переменные
|
||||
* **include_sources**, `boolean`, вставлять исходный код шаблона в его сборку
|
||||
* **compile_check**, `boolean`, сравнивать mtime у исходного шаблона и его сборки. При изменении исходного шаблона будет производится его пересборка (замедляет работу шаблонизатора).
|
||||
* **force_compile**, `boolean`, пересобирать шаблон при каждом вызове (сильно замедляет работу шаблонизатора).
|
||||
|
||||
или битовая маска из флагов:
|
||||
|
||||
* `Aspect::DENY_METHODS` то же что и **disable_methods**
|
||||
* `Aspect::DENY_INLINE_FUNCS` то же что и **disable_native_funcs**
|
||||
* `Aspect::DENY_SET_VARS` то же что и **disable_set_vars**
|
||||
* `Aspect::INCLUDE_SOURCES` то же что и **include_sources**
|
||||
* `Aspect::CHECK_MTIME` то же что и **compile_check**
|
||||
* `Aspect::FORCE_COMPILE` то же что и **force_compile**
|
||||
|
||||
### Модификаторы
|
||||
|
||||
Добавить модификатор:
|
||||
|
||||
```php
|
||||
$aspect->addModifier($modifier, $callback);
|
||||
```
|
||||
|
||||
* `$modifier` - имя модификатора
|
||||
* `$callback` - строка с именем функции
|
||||
|
||||
### Теги
|
||||
|
||||
Теги делятся на компилеры и функции.
|
||||
Компилеры формируют синтаксис языка шаблона, добавляя такой функционал как foreach, if, while и т.д. В то время как функции - обычный вызов некоторой именованной функции
|
||||
|
||||
Добавить компилер:
|
||||
|
||||
```php
|
||||
$aspect->addCompiler($compiler, $parser);
|
||||
```
|
||||
|
||||
* `$compiler` - имя модификатора
|
||||
* `$parser` - функция разбора тега в формате function (MF\Tokenizer $tokens, MF\Aspect\Template $tpl) {}
|
||||
|
||||
Добавить блочный компилер:
|
||||
|
||||
```php
|
||||
$aspect->addBlockCompiler($compiler, $parsers, $tags);
|
||||
```
|
Reference in New Issue
Block a user