tm2027 · борд

По размеру

Дека нарисована для широкого окна. На половине ноутбучного экрана проводник забирает 292 логических пикселя, командная строка и полоса вкладок - 82 по высоте, статус-бар ещё 26; при хроме в 15.5px это 412 пикселей до первой буквы. Восемь правил ниже отдают эту ширину обратно стеклу, каждое само по себе. Приоритет один: удобство терминала, и меряется он в колонках и строках, а не в красоте схемы.

Валюта - знакоместа под каждой карточкой сказано, сколько колонок и строк она возвращает на выбранном окне. Проценты - от площади стекла в знакоместах, не в пикселях.
Модель честная константы взяты из src/ui.rs (44 / 38 / 30 / 26 / 292 / 48) и откалиброваны по живому снимку твоей деки: клиент 3273×1298, сетка 261×48, терминал 18px, хром 15.5px. Модель сходится с этим замером до колонки.
Ничего не исчезает навсегда всё, что правило прячет, достижимо тем же способом, каким уже достижимо сейчас - F1, Ctrl+Shift+K, свой чорд. Правило меняет умолчание, а не права.
Порог, а не градиент каждое правило включается на пороге (тесно - уже 1100, низко - ниже 760) и выключается обратно. Ползущая раскладка хуже двух честных состояний.

→ Посмотреть в реальном размере: дека на половине экрана, «до» и «после» рядом

пульт
окно
правила
как сейчас
с выбранными
выбор:
восемь правил
1

Рельс складывается сам

Ниже 1100 пикселей ширины проводник схлопывается в свой же 48-пиксельный рельс - тот самый, что уже есть под кнопкой. Выше порога он разворачивается обратно в то состояние, которое выбрал человек. Это не новый режим: explorer_expanded перестаёт быть только ручным и получает ширину окна как второй голос.

цена: малая — одна производная от размера окна рядом с explorer_expanded, плюс память о ручном выборе
2

Рельс поверх стекла

На тесном окне проводник перестаёт быть колонкой и становится ящиком: он выезжает поверх стекла по Ctrl+B и уходит, как только по нему кликнули. Стекло не двигается вообще - ни при открытии, ни при закрытии, - а это значит, что сетка терминала не пересчитывается и bridge_resize не летит на сервер каждый раз, когда кто-то заглянул в список.

цена: средняя — рельс уезжает в слой поверх (как host_palette), сетка перестаёт зависеть от его ширины
3

Одна строка вместо двух

Командная строка (44) и полоса рабочего места (38) на тесном окне сливаются в одну 38-пиксельную: слева имя деки и маршрут, справа - действия, свёрнутые в одну кнопку с меню. Восемьдесят два пикселя высоты превращаются в тридцать восемь, и это три-четыре строки терминала на ноутбуке.

цена: средняя — вторая ветка рисования шапки; действия уже собраны в verb_palette, так что меню - это её вызов
4

Полоса только при второй вкладке

То же правило, которое уже действует для строки панов: одна вкладка не рисует ряда вкладок. Сейчас полоса стоит всегда, даже когда на ней одно имя рабочего места и две кнопки - а имя рабочего места есть в маршруте командной строки, и кнопки есть в палитре. На одной вкладке это 38 пикселей за повтор.

цена: никакая — условие, которое уже написано строкой ниже для панов
5

Статус уходит в подвал

На низком окне 26-пиксельный статус-бар закрывается, а всё, что на нём стояло - сетка, кодировка, ECHO, приборы, язык, заряды - переезжает под F1, где уже живут чорды. Строка состояния сама по себе никуда не девается: сообщение об ошибке всплывает поверх стекла тем же способом, каким всплывают карточки новостей.

цена: средняя — подвал получает вторую страницу, сообщения деки получают путь наверх
6

Хром мельчает отдельно от стекла

Размер хрома у деки уже свой (ui_font_size, по умолчанию 11) и уже умножает каждый ui_px. На тесном окне он возвращается к 11, даже если на большом мониторе человек поставил 15.5 - потому что 15.5 он поставил для монитора, а не для половины ноутбука. Стекло при этом не трогается вовсе: у терминального кегля своя ручка и свои чорды.

цена: малаяUI_SCALE_BITS получает второй источник; правило One Scale Rule уже гарантирует, что ничего не обрежется
7

Поля стекла по размеру окна

Поле в 12-14 пикселей перед первой буквой - это воздух, который читается как качество на большом окне и как потеря двух колонок на маленьком. На тесном или низком окне оно ужимается до пяти. Рамка монтировки и шов остаются: убирается воздух, а не то, что отделяет пан от пана.

цена: никакая — одно число в pane_mount
8

Дзен: только стекло

Крайний случай и отдельный чорд: остаётся стекло и ничего больше - ни шапки, ни рельса, ни полосы, ни статуса. Всё возвращается той же клавишей, а пока дзен стоит, рельс и палитра всё равно вызываются своими чордами поверх - то есть ничего не потеряно, просто по умолчанию ничего и не стоит. Это не режим для работы весь день, это режим для одного пана на ноутбуке в поезде.

цена: малая — один флаг, который гасит четыре children; всё вызываемое уже вызывается поверх

Что прислать

Номера правил, которые нравятся, в любом наборе - они независимы. Например 1 4 7 или 1 3 5 6 7. Пороги тоже можно назвать своими: 1100 и 760 - это то, при чём половина ноутбучного экрана уже считается теснотой, но это предположение, а не измерение.

Пульт наверху считает любой набор на любом окне: поставь своё окно, свои кегли, поперещёлкивай правила и посмотри, где начинается разница, которую видно руками, а не в процентах.