suppress bold rendering in terminal to keep cell grid stable
Flutter falls back to synthetic bold when JetBrainsMono-Bold isn't registered, and synthetic bold drifts glyph advance widths enough to break the monospace cell grid (cursor block lands between characters, prompts wrap mid-word). Color is enough to convey emphasis in TUIs; semantic italic and underline still render. Also drop the temporary `tmux -L clide kill-server` from the install target — the rapid-iteration loop is no longer needed. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"exported_at": "2026-05-05T11:08:47Z",
|
||||
"exported_at": "2026-05-05T12:51:04Z",
|
||||
"decisions": [
|
||||
{
|
||||
"id": "D-1",
|
||||
|
||||
@@ -22,6 +22,12 @@ heading, and (b) bumping `pubspec.yaml` `version:` in the same commit.
|
||||
PgUp/PgDown so Claude Code (and other TUI apps) scroll their
|
||||
history naturally.
|
||||
|
||||
### Fixed
|
||||
|
||||
- Terminal cell grid no longer drifts on bold text — bold rendering
|
||||
is suppressed at the painter level since synthetic bold (with no
|
||||
Bold.ttf registered) shifts glyph advance widths.
|
||||
|
||||
### Changed
|
||||
|
||||
- Inline terminal emulator based on xterm.dart v4.0.0 — replaces the
|
||||
|
||||
@@ -170,11 +170,9 @@ ifeq ($(FLUTTER_OS),linux)
|
||||
> $(HOME)/.local/share/applications/net.schweitz.clide.desktop
|
||||
@gtk-update-icon-cache -f -t $(HOME)/.local/share/icons/hicolor 2>/dev/null || true
|
||||
@update-desktop-database $(HOME)/.local/share/applications 2>/dev/null || true
|
||||
@tmux -L clide kill-server 2>/dev/null || true
|
||||
@echo "installed: $(INSTALL_DIR)/clide -> $(INSTALL_PREFIX)/clide/clide"
|
||||
@echo "desktop: ~/.local/share/applications/net.schweitz.clide.desktop"
|
||||
@echo "version: $(VERSION)"
|
||||
@echo "tmux: clide socket killed (TEMP)"
|
||||
else ifeq ($(FLUTTER_OS),macos)
|
||||
@mkdir -p $(HOME)/Applications
|
||||
rm -rf $(HOME)/Applications/clide.app
|
||||
|
||||
@@ -190,9 +190,12 @@ class TerminalPainter {
|
||||
color = color.withOpacity(0.5);
|
||||
}
|
||||
|
||||
// Skip bold rendering — Flutter's synthetic bold (no Bold.ttf
|
||||
// registered) drifts glyph advance widths slightly, breaking
|
||||
// the cell grid. Color is enough to convey emphasis in TUIs.
|
||||
final style = _textStyle.toTextStyle(
|
||||
color: color,
|
||||
bold: cellFlags & CellFlags.bold != 0,
|
||||
bold: false,
|
||||
italic: cellFlags & CellFlags.italic != 0,
|
||||
underline: cellFlags & CellFlags.underline != 0,
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user