Добавлена документация по доступному функционалу.
This commit is contained in:
parent
5bd192a788
commit
80518ee8ed
3 changed files with 142 additions and 0 deletions
19
doc/README.md
Normal file
19
doc/README.md
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# Документация Ncurses User Interface Library
|
||||
|
||||
`ncui` — библиотека для построения TUI-приложений на D поверх ncurses.
|
||||
|
||||
---
|
||||
|
||||
## Содержание
|
||||
|
||||
### Конфигурация
|
||||
- [SessionConfig](pages/session-config.md)
|
||||
|
||||
### Проверки и ошибки
|
||||
- [Проверки ncurses-вызовов](pages/checks.md)
|
||||
|
||||
---
|
||||
|
||||
## Статус документации
|
||||
|
||||
Документация растёт вместе с библиотекой. Разделы могут дополняться по мере появления новых модулей и возможностей.
|
||||
43
doc/pages/checks.md
Normal file
43
doc/pages/checks.md
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
# Проверки ncurses-вызовов
|
||||
|
||||
Функции для проверяемых ncurses-вызовов и единых сообщений об ошибках.
|
||||
|
||||
---
|
||||
|
||||
## ncuiExpect
|
||||
|
||||
Вызывает `fn(args)` и проверяет `result == expected`.
|
||||
|
||||
- Тип `expected` должен совпадать с типом результата `fn(args)`.
|
||||
- При ошибке выбрасывается исключение с местом вызова.
|
||||
- Возвращается `result`.
|
||||
|
||||
---
|
||||
|
||||
## ncuiExpectMsg
|
||||
|
||||
Вызывает `fn(args)` и проверяет `result == expected`, добавляя `message`.
|
||||
|
||||
- Тип `expected` должен совпадать с типом результата `fn(args)`.
|
||||
- При ошибке выбрасывается исключение с местом вызова.
|
||||
- Возвращается `result`.
|
||||
|
||||
---
|
||||
|
||||
## ncuiNotErr
|
||||
|
||||
Вызывает `fn(args)` и проверяет `result != ERR`.
|
||||
|
||||
- `fn(args)` должна возвращать тип `ERR`.
|
||||
- При ошибке выбрасывается исключение с местом вызова.
|
||||
- Возвращается `result`.
|
||||
|
||||
---
|
||||
|
||||
## ncuiNotNull
|
||||
|
||||
Вызывает `fn(args)` и проверяет `result !is null`.
|
||||
|
||||
- `fn(args)` должна возвращать указатель.
|
||||
- При ошибке выбрасывается исключение с местом вызова.
|
||||
- Возвращается `result`.
|
||||
80
doc/pages/session-config.md
Normal file
80
doc/pages/session-config.md
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
# SessionConfig
|
||||
|
||||
`SessionConfig` — структура параметров, определяющая режимы работы ncurses-сессии при создании `Session`.
|
||||
|
||||
```d
|
||||
struct SessionConfig
|
||||
{
|
||||
InputMode mode = InputMode.raw;
|
||||
Cursor cursor = Cursor.normal;
|
||||
Echo echo = Echo.on;
|
||||
Keypad keypad = Keypad.on;
|
||||
int escDelay = 50;
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Параметры
|
||||
|
||||
### mode: InputMode
|
||||
|
||||
Режим обработки ввода терминалом.
|
||||
|
||||
Значения:
|
||||
|
||||
* `InputMode.raw` — посимвольный ввод с минимальной обработкой терминалом.
|
||||
* `InputMode.cbreak` — посимвольный ввод с сохранением части tty-обработки.
|
||||
* `InputMode.cooked` — канонический построчный ввод (ввод доступен после Enter).
|
||||
|
||||
Значение по умолчанию: `InputMode.raw`.
|
||||
|
||||
---
|
||||
|
||||
### cursor: Cursor
|
||||
|
||||
Режим видимости/типа курсора.
|
||||
|
||||
Значения:
|
||||
|
||||
* `Cursor.hidden` — курсор скрыт.
|
||||
* `Cursor.normal` — обычный курсор.
|
||||
* `Cursor.high` — курсор повышенной заметности (поддержка зависит от терминала).
|
||||
|
||||
Значение по умолчанию: `Cursor.normal`.
|
||||
|
||||
---
|
||||
|
||||
### echo: Echo
|
||||
|
||||
Режим эхо ввода (отображение вводимых символов терминалом).
|
||||
|
||||
Значения:
|
||||
|
||||
* `Echo.on` — вводимые символы отображаются.
|
||||
* `Echo.off` — вводимые символы не отображаются.
|
||||
|
||||
Значение по умолчанию: `Echo.on`.
|
||||
|
||||
---
|
||||
|
||||
### keypad: Keypad
|
||||
|
||||
Режим обработки специальных клавиш (преобразование в коды `KEY_*`).
|
||||
|
||||
Значения:
|
||||
|
||||
* `Keypad.on` — специальные клавиши возвращаются как `KEY_*` (стрелки, Home/End, PgUp/PgDn, F1..F12 и т.п.).
|
||||
* `Keypad.off` — специальные клавиши могут возвращаться как escape-последовательности.
|
||||
|
||||
Значение по умолчанию: `Keypad.on`.
|
||||
|
||||
---
|
||||
|
||||
### escDelay: int
|
||||
|
||||
Задержка распознавания одиночного `Esc` и escape-последовательностей.
|
||||
|
||||
Единицы измерения: миллисекунды.
|
||||
|
||||
Значение по умолчанию: `50`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue