Skip to content

Commit

Permalink
fix #38 Дополнена справка примером создания вложенных команд
Browse files Browse the repository at this point in the history
  • Loading branch information
khorevaa committed Jul 16, 2018
1 parent 3c3c568 commit 01325ba
Showing 1 changed file with 52 additions and 1 deletion.
53 changes: 52 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
КонецПопытки;
```

### Пример приложения с несколькими командами:
### Пример приложения с несколькими командами

```bsl
#Использовать cli
Expand Down Expand Up @@ -85,6 +85,57 @@
КонецПопытки;
```

### Пример приложения с вложенными командами

```bsl
#Использовать cli
///////////////////////////////////////////////////////////////////////////////
Процедура ВыполнитьПриложение()
Приложение = Новый КонсольноеПриложение("cli", "Помощник генерации приложения на основании шаблона cli");
Приложение.Версия("v version","1.0.0");
Приложение.ДобавитьКоманду("i init", "Инициализация структуры нового приложения", Новый КомандаInit);
Приложение.ДобавитьКоманду("g generate", "Генерация элементов структуры приложения", Новый КомандаGenerate);
Приложение.Запустить(АргументыКоманднойСтроки);
КонецПроцедуры // ВыполнениеКоманды()
///////////////////////////////////////////////////////
Попытка
ВыполнитьПриложение();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
```
Класс `КомандаGenerate`
Для добавления подкоманды в любую команду используется методы `ДобавитьПодкоманду` или `ДобавитьКоманду`

```bsl
Процедура ОписаниеКоманды(Команда) Экспорт
// Метод <ДобавитьПодкоманду>
Команда.ДобавитьПодкоманду("c command", "Генерация дополнительной вложенной команды", Новый КомандаGenerateCommand);
// Метод <ДобавитьКоманду>
Команда.ДобавитьКоманду("o option", "Генерация опции для команды", Новый КомандаGeneratOption);
Процедура ВыполнитьКоманду(Знач Команда) Экспорт
КонецПроцедуры
```

## Мотивация

Для PR в cmdline слишком большие изменения в API, т.е. обеспечить совместимость очень трудоемко.
Expand Down

0 comments on commit 01325ba

Please sign in to comment.