Skip to content

Commit 04c228c

Browse files
committed
sync
1 parent 97aac3a commit 04c228c

3 files changed

Lines changed: 37 additions & 19 deletions

File tree

usr/share/mios/configurator/mios.html

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -911,7 +911,7 @@ <h3>Windows shortcuts</h3>
911911
</p>
912912
<div class="grid">
913913
<fieldset>
914-
<legend>terminal (post-install MiOS app: 80x20, edge-to-edge frameless)</legend>
914+
<legend>terminal (post-install MiOS app: 80x20, edge-to-edge frameless via launch_mode=focus)</legend>
915915
<label for="f-term-cols">cols</label>
916916
<input type="text" id="f-term-cols" data-key="terminal.cols" data-type="int" placeholder="80">
917917
<label for="f-term-rows">rows</label>
@@ -922,7 +922,7 @@ <h3>Windows shortcuts</h3>
922922
<input type="text" id="f-term-fw" data-key="terminal.frame_width" data-type="int" placeholder="80">
923923
<label for="f-term-fh">frame_height (= rows, edge-to-edge)</label>
924924
<input type="text" id="f-term-fh" data-key="terminal.frame_height" data-type="int" placeholder="20">
925-
<label for="f-term-rm">right_margin (0 = edge-to-edge; raise only if WT chrome can't be hidden)</label>
925+
<label for="f-term-rm">right_margin (0 = true edge-to-edge; raise to 1 only if powerline wraps with animations on)</label>
926926
<input type="text" id="f-term-rm" data-key="terminal.right_margin" data-type="int" placeholder="0">
927927
</fieldset>
928928
<fieldset>
@@ -977,8 +977,18 @@ <h3>Windows shortcuts</h3>
977977
<option value="focus">focus (frame-less / no-titlebar / no-tab-row)</option>
978978
<option value="default">default</option>
979979
<option value="maximized">maximized</option>
980+
<option value="maximizedFocus">maximizedFocus</option>
980981
<option value="fullscreen">fullscreen</option>
982+
<option value="focusFullscreen">focusFullscreen</option>
981983
</select>
984+
<div class="checkbox-row">
985+
<input type="checkbox" id="f-theme-anim" data-key="theme.disable_animations">
986+
<label for="f-theme-anim">disable_animations (UNCHECK = animations ON, fade on open/close)</label>
987+
</div>
988+
<div class="checkbox-row">
989+
<input type="checkbox" id="f-theme-preview" data-key="theme.enable_preview_features">
990+
<label for="f-theme-preview">enable_preview_features (WT useAtlasEngine + experimental.detectURLs / forceVT / forceFullRepaint)</label>
991+
</div>
982992
</fieldset>
983993
<fieldset>
984994
<legend>theme.font</legend>

usr/share/mios/mios.toml

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1614,25 +1614,32 @@ podman_pkg = "RedHat.Podman-Desktop"
16141614
# console via /etc/profile.d/mios-tty.sh) opens at exactly cols × rows.
16151615
#
16161616
# EDGE-TO-EDGE: frame_width = cols, frame_height = rows, right_margin = 0.
1617-
# The dashboard box-drawing reaches the rightmost paintable cell. The
1618-
# right-aligned powerline block ends at the last paintable cell. There
1619-
# is NO gutter.
1617+
# Operator pivot 2026-05-08: "MiOS app/windows terminal windows should
1618+
# be completely frameless/borderless with no margin (edge-to-edge
1619+
# printing!!!!!)" -> "go fix mios-bootstrap edge-to-edge now".
16201620
#
1621-
# This requires the WT/MiOS app window to actually be frameless --
1622-
# the [theme] section below sets padding=0, scrollbar_state=hidden,
1623-
# acrylic on, suppress_app_title, launch_mode=focus so the visible cell
1624-
# count == the reported cell count. Any wrap on the right edge is a WT
1625-
# chrome bug (a missing knob in [theme] or in the settings.json patcher);
1626-
# do NOT shrink frame_width / right_margin to mask it. Operator pivot
1627-
# 2026-05-08: stop band-aiding the frame, fix the chrome.
1621+
# Enabled by mios-bootstrap's Install-MiOSTerminalProfile writing
1622+
# `launchMode = "focus"` at the ROOT of settings.json plus
1623+
# `profiles.defaults.suppressApplicationTitle = true`. With both, WT
1624+
# strips the titlebar and tab-row from frame 0 so the pseudo-console
1625+
# reports the actual visible cell count immediately, no off-by-N
1626+
# window before scrollbarState=hidden takes effect. oh-my-posh aligns
1627+
# correctly, no powerline wrap.
1628+
#
1629+
# If the powerline ever wraps again (acrylic-recompute on first paint
1630+
# MAY re-trigger the off-by-N briefly when animations are on), the
1631+
# targeted band-aid is `right_margin = 1` -- NOT `disable_animations =
1632+
# true` (operator wants the aesthetics: window fade on open/close +
1633+
# preview features). 1 cell of slack is invisible to the eye but
1634+
# gives oh-my-posh enough room to absorb a 1-cell first-paint lie.
16281635
# ----------------------------------------------------------------------------
16291636
[terminal]
16301637
cols = 80
16311638
rows = 20 # 20 = MiOS portal-feel default; 30 for taller "console" feel
16321639
scrollback_rows = 9000
1633-
frame_width = 80 # = cols. Edge-to-edge -- the dashboard frame paints from col 0 to col cols-1 with no gutter. Vendor default is exactly cols; anything narrower is an operator override (e.g. for a quirky third-party terminal that lies about its width). Get-MiOS.ps1's Show-MiosDashboard, mios-dash.ps1, and mios-dashboard.sh ALL read this value via Get-MiosTomlValue / awk.
1634-
frame_height = 20 # = rows. Edge-to-edge vertically -- the dashboard scrolls naturally and the prompt renders below as a NEW row. The conhost cursor advances past the bottom border on its own; no row needs to be "reserved" inside the frame.
1635-
right_margin = 0 # zero gutter on the right edge. Applied in Get-MiOS.ps1's WIDTH calc (MIN(WindowWidth - right_margin, frame_width)) and in mios-dash.ps1 (cols - right_margin). 0 = edge-to-edge. Increase ONLY if the WT chrome cannot be made frameless on a given host (e.g. a remote conhost without scrollbarState support); the proper home for those workarounds is the consumer, not this knob.
1640+
frame_width = 80 # = cols. True edge-to-edge -- the dashboard frame paints from col 0 to col cols-1 with no gutter. Get-MiOS.ps1's Show-MiosDashboard, mios-dash.ps1, and mios-dashboard.sh ALL read this value via Get-MiosTomlValue / awk.
1641+
frame_height = 20 # = rows. The dashboard scrolls naturally and the prompt renders below as a NEW row -- the conhost cursor advances past the bottom border on its own; no row needs to be "reserved" inside the frame.
1642+
right_margin = 0 # zero gutter on the right edge. Get-MiOS.ps1's Show-MiosDashboard uses MIN(WindowWidth - right_margin, frame_width); mios-dash.ps1 uses cols - right_margin; mios-dashboard.sh (awk reader) uses cols - right_margin; mios.omp.json's trailing-spacer segment template = "" with final_space=false. Raise to 1 ONLY if the powerline wraps with animations on (acrylic-recompute first-paint timing).
16361643

16371644
# ----------------------------------------------------------------------------
16381645
# [terminal.install] -- the BOOTSTRAP window dims (taller so the install
@@ -1665,8 +1672,9 @@ cursor_shape = "filledBox" # block-style cursor mimics Linux termi
16651672
scrollbar_state = "hidden" # no scrollbar -- frame uses every col
16661673
padding = "0" # zero padding -- frame flush to edges
16671674
suppress_app_title = true # WT doesn't override our title
1668-
launch_mode = "focus" # frame-less / border-less / no-titlebar / no-tab-row
1669-
disable_animations = false # keep tab-fade / acrylic-recompute live
1675+
launch_mode = "focus" # frame-less / border-less / no-titlebar / no-tab-row -- forces WT to measure the viewport at the actual cell count cols × rows from FIRST PAINT (no titlebar to strip later, no off-by-1/2 cell-count window before scrollbarState='hidden' applies). Required for true edge-to-edge in mios-bootstrap's Install-MiOSTerminalProfile.
1676+
disable_animations = false # animations ON -- per operator "enable animations and all preview features in the MiOS Windows Terminal profile, full aesthetics! ALSO: can it quickly fade on open and close??". The WT window open/close fade is gated on disableAnimations=false + useAcrylic=true; both are on. If the powerline ever wraps with animations on, raise [terminal].right_margin to 1 as a targeted band-aid -- do NOT flip animations off (operator wants the aesthetics).
1677+
enable_preview_features = true # WT experimental.* knobs bundle (useAtlasEngine GPU renderer, experimental.detectURLs, experimental.input.forceVT, experimental.rendering.forceFullRepaint). Per operator "all preview features in the MiOS Windows Terminal profile". Set to false only if a specific WT version regresses one of the gated keys; the patcher in mios-bootstrap will skip the whole bundle if false.
16701678

16711679
[theme.font]
16721680
family = "GeistMono Nerd Font Mono"

usr/share/mios/oh-my-posh/mios.omp.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
33
"version": 4,
4-
"//final_space": "false: edge-to-edge per [terminal].right_margin=0 in mios.toml. The right-aligned powerline block ends exactly at the last paintable cell. Pre-2026-05-08 this was true to mask a WT chrome bug (pseudo-console reporting +1 col before scrollbarState='hidden' took effect on first paint); the proper fix is in mios.toml [theme] (padding=0, scrollbar_state=hidden, launch_mode=focus, suppress_app_title=true) which makes the visible col count == the reported col count. If the rightmost time char ever wraps again, audit the WT settings.json patcher in Get-MiOS.ps1, NOT this knob.",
4+
"//final_space": "false: edge-to-edge per [terminal].right_margin=0 in mios.toml. The right-aligned powerline block ends exactly at the last paintable cell. Enabled by mios-bootstrap's Install-MiOSTerminalProfile writing launchMode=focus at the ROOT of settings.json + suppressApplicationTitle on profiles.defaults -- those strip the WT titlebar and tab-row from frame 0 so the pseudo-console reports the correct visible cell count from the first paint, no off-by-N window. If the trailing time char ever wraps again (acrylic-recompute on first paint MAY re-trigger the off-by-N briefly when animations are on per [theme].disable_animations=false), bump mios.toml [terminal].right_margin to 1 -- do NOT flip animations off (operator wants the aesthetics).",
55
"final_space": false,
66
"//": [
77
"MiOS Oh-My-Posh theme.",
@@ -209,7 +209,7 @@
209209
"template": " {{ .CurrentDate | date .Format }} "
210210
},
211211
{
212-
"//": "Trailing spacer REMOVED 2026-05-08 per operator pivot to edge-to-edge. The right-aligned block now ends at the last paintable cell. mios.toml [terminal].right_margin=0 is the SSOT; if a future operator re-introduces a non-zero margin, the build-mios.ps1 substitution should re-emit this segment with template = (right_margin spaces). For now: kept as a stub for substitution-target stability so build-mios.ps1's regex doesn't break.",
212+
"//": "Trailing spacer stub -- mirrors mios.toml [terminal].right_margin (currently 0, so template is empty). Kept as a substitution target so build-mios.ps1's regex doesn't break: when right_margin changes via mios.html, the build re-emits this template as (right_margin spaces). If [theme].disable_animations is flipped on (or WT chrome flakes on a specific build), bump right_margin to 1 in mios.toml and this template becomes a single space.",
213213
"type": "text",
214214
"style": "plain",
215215
"template": ""

0 commit comments

Comments
 (0)