Forge
markdowndeeb25a2
1# UI — принципы (карта канона)
2
3**Входной связный текст** — [0076](../0076-ui-ux-principles-hub.md) (канон абзацев в [`../snippets/ui/`](../snippets/ui/README.md)). Здесь — **расширенная карта**: таблицы «идея → ADR» без дублирования полных нормативов. Плоский индекс — [../README.md](../README.md); этот файл — [README.md](README.md).
4
5---
6
7## Модель внимания и зоны (PFD / MFD / Forward / EICAS)
8
9| Идея | Где зафиксировано |
10|------|-------------------|
11| Вторичный контур **MFD**, лобовой **Forward**, полоска **PFD**; превью и вспомогательные поверхности не конкурируют с набором текста как первичным действием | [0021](../0021-pfd-mfd-cockpit-attention-model.md) |
12| **Cockpit UI** (приборы, deck, зоны) отдельно от **presentation IDE** (хром, тема, оверлеи) — не смешивать слои | [0066](../0066-cockpit-ui-vs-ide-presentation-layer.md) |
13| **Editor HUD** (inline: каретка, текст, gutter) vs **HUD banner** (file-level полоса); глобальные оверлеи — IDS, не Editor HUD | [0085](../0085-editor-hud-inline-layer-and-hud-banner.md) |
14
15---
16
17## Полезная нагрузка строки vs проекция (раскладка)
18
19| Идея | Где зафиксировано |
20|------|-------------------|
21| Один **payload** (порядок строк, идентичность данных); смена **карточки / таблицы / плотности** — проекция во View без смены семантики строк | [0068](../0068-deck-row-payload-and-presentation-projection.md) |
22| Декларативные слоты, instrument deck, таксономия примитивов — см. также | [0063](../0063-instrument-deck-named-composition-one-anchor.md), [0064](../0064-deck-primitives-visual-language-render-layer-and-palette.md) |
23
24---
25
26## Поверхность команд, `command_id`, палитра
27
28| Идея | Где зафиксировано |
29|------|-------------------|
30| Палитра, discoverability, минимальный toolbar как направление | [0013](../0013-command-surface-and-discoverability.md) |
31| Слои `command_id`, хоткеев, реестра UI | [0030](../0030-command-ids-hotkeys-and-ui-registry-layers.md) |
32
33---
34
35## Keyboard-first, Command Melody (`c:`), чат
36
37| Идея | Где зафиксировано |
38|------|-------------------|
39| Аккордный слой, FMS-style, S/T; расширение поверхности команд | [0060](../0060-keyboard-chord-stack-fms-tactical-strategic.md) |
40| Чат: topic cards, drill-in; Melody/Chords в **chat-domain** | [0072](../0072-chat-topic-cards-intent-melody-keyboard-contract.md) |
41| Агент: текст правок в редакторе; чат не основной дифф; присутствие (курсор, «пишет») | [0084](../0084-agent-edits-editor-source-of-truth-presence-channel.md) |
42| IML как язык намерений — вне ADR | [../../intent-melody-language-v1.md](../../intent-melody-language-v1.md) |
43
44---
45
46## Markdown preview, MFD tool surface
47
48| Идея | Где зафиксировано |
49|------|-------------------|
50| Preview как tool surface, renderer/placement decoupling | [0069](../0069-markdown-preview-tool-surface-and-renderer-decoupling.md) |
51| Размещение превью (`workspace.toml`) — исторический [0026](../0026-markdown-preview-surfaces-and-placement.md) (superseded по размещению каноном 0069) |
52
53---
54
55## Настройки, компактность, нехватка места на MFD
56
57| Идея | Где зафиксировано |
58|------|-------------------|
59| Компактный режим, якорь на MFD, стратегии overflow | [0074](../0074-settings-ui-mfd-compact-layout-overflow.md) |
60
61---
62
63## Указатель UI-ADR и соглашения по страницам MFD
64
65| Идея | Где зафиксировано |
66|------|-------------------|
67| Папка `UI/`, payload vs проекция, keyboard-first на страницах вторичного контура | [0075](../0075-ui-topic-index-and-mfd-page-conventions.md) |
68
69---
70
71## Сборка «только UI-ADR» в один HTML/PDF
72
73Из `docs/adr`:
74
75```bash
76dotnet script build-adr.csx --book adr-book-ui.md
77```
78
79Выход: `build/adr-book-ui.md`, `out/html/adr-book-ui.html` и т.д. Подробности — [../build/README.md](../build/README.md).
80
View only · write via MCP/CIDE