Files
create/docs/ru/FEATURES.md
S.Gromov f0daed180f feat: автодополнение и детект режима запуска
- Добавлены служебные команды __list-templates/__list-vars и генерация completion для bash/
    zsh/fish
  - Введён детект режимов запуска (npx/local/direct/global) и применён в проверке обновлений
  - Обновлены help и документация (README, FEATURES)
2026-01-27 13:07:44 +03:00

72 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Возможности CLI
Ниже перечислены текущие возможности `@gromlab/create`.
## Основные
- Генерация файлов и папок по шаблонам из каталога `.templates/`.
- Обязательный позиционный аргумент `<имя>` (переменная `name`).
- Опциональный позиционный `[путь]` — папка вывода (по умолчанию текущая директория).
- Произвольные переменные шаблонов через `--<var> <value>`.
- Подстановка переменных в **содержимом** файлов и **путях**.
## Модификаторы переменных
Поддерживаются модификаторы для `{{var}}`:
- `{{name.pascalCase}}`
- `{{name.camelCase}}`
- `{{name.snakeCase}}`
- `{{name.kebabCase}}`
- `{{name.screamingSnakeCase}}`
- `{{name.upperCase}}`
- `{{name.lowerCase}}`
- `{{name.upperCaseAll}}`
- `{{name.lowerCaseAll}}`
## Режимы и защита от перезаписи
- `--overwrite` — разрешает перезапись существующих файлов.
- Проверка коллизий файлов и существующих директорий (с понятными ошибками/предупреждениями).
## Отчёт и визуализация
- Печать итогового отчёта: имя, путь(и), дерево файлов, список переменных.
## Диагностика и подсказки
- Подробные ошибки валидации аргументов.
- Список доступных шаблонов, если запрошенный не найден.
- Подсказки для недостающих переменных.
- `-h`/`--help` — вывод справки.
- `--skip-update` — запуск без проверки обновлений.
## Автодополнение
- Генерация скрипта автодополнения для bash/zsh/fish: `gromlab-create completion --shell <shell>`.
- Автодополнение доступно только для глобальной установки CLI.
- Автодополнение шаблонов из `.templates/` и переменных `--<var>` выбранного шаблона (кроме `name`).
## Обновления CLI
- При запуске (не через `npx`) проверяется доступность новой версии в npm.
- Если пользователь отвечает «нет», повторный запрос появится через 24 часа.
- В неинтерактивном режиме (без TTY) запрос не показывается.
## Режимы запуска
- CLI определяет режим запуска: `npx`, `local`, `direct`, `global`.
- `npx` — запуск через `npx`/`npm exec` (проверка обновлений не выполняется).
- `local` — запуск из `node_modules/.bin`.
- `direct` — запуск через `node ./dist/cli.js` в текущем проекте.
- `global` — глобально установленный CLI.
## Бины
- Основной бин: `gromlab-create`.
- Дополнительный алиас: `create`.
## Служебные команды
- `__list-templates` — выводит список доступных шаблонов (для автодополнения).
- `__list-vars <шаблон>` — выводит переменные выбранного шаблона (кроме `name`).