Serj Kalichev 1 year ago
parent
commit
a76ca19f29
1 changed files with 25 additions and 0 deletions
  1. 25 0
      docs/klish3.ru.md

+ 25 - 0
docs/klish3.ru.md

@@ -1090,6 +1090,31 @@ SEQ сам может быть элементом контейнера SWITCH.
 
 #### Атрибут `purpose`
 
+Некоторые вложенные элементы должны иметь специальное значение. Например внутри
+`VIEW` может быть определен элемент который генерирует текст приглашения для
+оператора. Чтобы отделить элемент для генерации приглашения от вложенных команд,
+необходимо придать ему специальный признак. Позже, когда сервер klishd должен
+будет получить приглашение пользователя для этого `VIEW`, код просмотрит
+вложенные элементы `VIEW` и выберет элемент, который специально для этого
+предназначен.
+
+Атрибут `purpose` устанавливает элементу специальное назначение. Возможные
+назначения:
+
+* `common` - специальное назначение отсутствует. Обычные теги имеет именно это
+значение атрибута.
+* `ptype` - элемент определяет тип родительского параметра. Тег `PTYPE`.
+* `prompt` - элемент служит для генерации приглашения пользователя для
+родительского элемента. Тег `PROMPT`. Родительским элементом является `VIEW`.
+* `cond` - элемент проверяет условие и, в случае неудачи, родительский элемент
+становится недоступен для оператора. Тег `COND`. На данный момент не реализован.
+* `completion` - элемент генерирует возможные автодополнения для родительского
+элемента. Тег `COMPL`.
+* `help` - элемент генерирует подсказку для родительского элемента. Тег `HELP`.
+
+Обычно атрибут `purpose` не используется в файлах конфигурации напрямую, так
+как для каждого специального назначения введен свой тег, что более наглядно.
+
 
 #### Атрибут `ref`