20 lines
1.8 KiB
Markdown
20 lines
1.8 KiB
Markdown
# Гайд по формированию сниппетов
|
||
## fmta + f
|
||
Рассмотрим пример использования `fmta` в сочетании с `f`:
|
||
```
|
||
f(function(args) return string.lower(args[1][1]) end, {1})
|
||
```
|
||
Тут:
|
||
- `f`: Это функция LuaSnip, которая позволяет выполнять произвольные преобразования над входными данными.
|
||
Она принимает два аргумента:
|
||
- Функцию, которая выполняет преобразование.
|
||
- Список индексов, указывающих, какие входные данные использовать.
|
||
|
||
- `function(args)`: Это функция, которая принимает аргумент args — таблица, содержащая значения, переданные из других узлов (например, i(1), i(2) и т.д.).
|
||
- `args[1][1]`:
|
||
- `args[1]` — это первая группа входных данных, переданная в f.
|
||
- `args[1][1]` — это первое значение из этой группы. Например, если вы используете i(1), то args[1][1] будет содержать текст, введенный пользователем для этого узла.
|
||
|
||
- `string.lower(args[1][1])`: `string.lower` — это стандартная функция Lua, которая преобразует строку в нижний регистр.
|
||
|
||
- `{1}`: Это список индексов, указывающих, какие входные данные использовать. `{1}` означает, что функция будет использовать значение из первого узла (например, i(1)).
|