[PR #745] [MERGED] TextTable and Markdown tweaks #751

Closed
opened 2026-03-02 23:47:58 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/anomalyco/opentui/pull/745
Author: @kommander
Created: 2/26/2026
Status: Merged
Merged: 2/26/2026
Merged by: @kommander

Base: mainHead: text-table-tweaks


📝 Commits (10+)

📊 Changes

10 files changed (+1163 additions, -78 deletions)

View changed files

📝 packages/core/src/benchmark/text-table-benchmark.ts (+105 -4)
📝 packages/core/src/examples/text-table-demo.ts (+61 -31)
📝 packages/core/src/renderables/Markdown.ts (+12 -3)
📝 packages/core/src/renderables/ScrollBox.ts (+90 -9)
📝 packages/core/src/renderables/TextTable.test.ts (+501 -6)
📝 packages/core/src/renderables/TextTable.ts (+144 -12)
📝 packages/core/src/renderables/__snapshots__/TextTable.test.ts.snap (+114 -0)
📝 packages/core/src/renderables/__tests__/Markdown.test.ts (+10 -5)
📝 packages/core/src/tests/scrollbox.test.ts (+81 -0)
📝 packages/web/src/content/docs/components/markdown.mdx (+45 -8)

📄 Description

  • Introduced table layout controls: columnWidthMode now uses "content" | "full" (renamed from "fill"), plus new columnFitter ("proportional"/"balanced")
  • Updated table defaults: default wrapMode: "word", default full-width behavior, and flexShrink handling improvements
  • Expanded table selection behavior (including column-locked/grid-style selection paths) and Markdown table selection support/options
  • Improved table measurement/layout behavior (notably height measurement/clamping logic) to avoid stale scroll/layout extents

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/anomalyco/opentui/pull/745 **Author:** [@kommander](https://github.com/kommander) **Created:** 2/26/2026 **Status:** ✅ Merged **Merged:** 2/26/2026 **Merged by:** [@kommander](https://github.com/kommander) **Base:** `main` ← **Head:** `text-table-tweaks` --- ### 📝 Commits (10+) - [`fb69867`](https://github.com/anomalyco/opentui/commit/fb69867fdfa5ca5979eed07dad15e4a96b60a461) flexShrink 0 default - [`fcb3057`](https://github.com/anomalyco/opentui/commit/fcb3057d6018269e4c76147f5b7681eae879082d) TEMP SCROLLBOX FIX - [`32267bf`](https://github.com/anomalyco/opentui/commit/32267bf75fa895319029cdb5b7df043727d680db) okay demo colors - [`6453927`](https://github.com/anomalyco/opentui/commit/64539278373c3fd14fcabcdfc37dd9b094f44f40) transparent demo - [`ca34b47`](https://github.com/anomalyco/opentui/commit/ca34b478f55276cfe94cbe1cf69b1b62e76c0c36) remove clamp - [`6a9bb61`](https://github.com/anomalyco/opentui/commit/6a9bb61dd5b89e00dc53d84d455c1d813046bebf) remove workaround fix - [`51ec1b0`](https://github.com/anomalyco/opentui/commit/51ec1b0bad5050e2c5f1b1970637ea72a12c04c6) default to word wrap - [`d66e081`](https://github.com/anomalyco/opentui/commit/d66e081d18c0a100973ef0c05b2d75022e6b2318) fix demo scrollbar - [`94e378e`](https://github.com/anomalyco/opentui/commit/94e378ed6a3ef35f9d84b9ef9268fe3dcea42111) scrollbox no scrollbar padding/margin - [`8871d69`](https://github.com/anomalyco/opentui/commit/8871d69d04fc74f0ba31aeadfe45fe38491c9572) fix type ### 📊 Changes **10 files changed** (+1163 additions, -78 deletions) <details> <summary>View changed files</summary> 📝 `packages/core/src/benchmark/text-table-benchmark.ts` (+105 -4) 📝 `packages/core/src/examples/text-table-demo.ts` (+61 -31) 📝 `packages/core/src/renderables/Markdown.ts` (+12 -3) 📝 `packages/core/src/renderables/ScrollBox.ts` (+90 -9) 📝 `packages/core/src/renderables/TextTable.test.ts` (+501 -6) 📝 `packages/core/src/renderables/TextTable.ts` (+144 -12) 📝 `packages/core/src/renderables/__snapshots__/TextTable.test.ts.snap` (+114 -0) 📝 `packages/core/src/renderables/__tests__/Markdown.test.ts` (+10 -5) 📝 `packages/core/src/tests/scrollbox.test.ts` (+81 -0) 📝 `packages/web/src/content/docs/components/markdown.mdx` (+45 -8) </details> ### 📄 Description - Introduced table layout controls: columnWidthMode now uses "content" | "full" (renamed from "fill"), plus new columnFitter ("proportional"/"balanced") - Updated table defaults: default wrapMode: "word", default full-width behavior, and flexShrink handling improvements - Expanded table selection behavior (including column-locked/grid-style selection paths) and Markdown table selection support/options - Improved table measurement/layout behavior (notably height measurement/clamping logic) to avoid stale scroll/layout extents --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-02 23:47:58 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/opentui#751
No description provided.