From 0f7e257f76543867268db5a31bdea4420981077d Mon Sep 17 00:00:00 2001 From: Jonathan Bernard Date: Sat, 11 Jan 2025 11:59:17 -0600 Subject: [PATCH] Cap output width to 80 characters max. --- src/pit/formatting.nim | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/pit/formatting.nim b/src/pit/formatting.nim index 885475e..e65f963 100644 --- a/src/pit/formatting.nim +++ b/src/pit/formatting.nim @@ -3,6 +3,8 @@ import cliutils, uuids import std/strutils except alignLeft, capitalize, strip, toLower, toUpper import ./libpit +proc adjustedTerminalWidth(): int = min(terminalWidth(), 80) + proc getIssueContextDisplayName*(ctx: CliContext, context: string): string = if not ctx.contexts.hasKey(context): if context.isEmptyOrWhitespace: return "" @@ -128,11 +130,11 @@ proc formatSectionIssueList*( proc formatSection(ctx: CliContext, issues: seq[Issue], state: IssueState, indent = "", verbose = false): string = - let innerWidth = terminalWidth() - (indent.len * 2) + let innerWidth = adjustedTerminalWidth() - (indent.len * 2) result = termColor(fgBlue) & (indent & ".".repeat(innerWidth)) & "\n" & - state.displayName.center(terminalWidth()) & "\n\n" & + state.displayName.center(adjustedTerminalWidth()) & "\n\n" & termReset let issuesByContext = issues.groupBy("context") @@ -152,9 +154,9 @@ proc formatSection(ctx: CliContext, issues: seq[Issue], state: IssueState, proc writeHeader*(ctx: CliContext, header: string) = stdout.setForegroundColor(fgRed, true) - stdout.writeLine('_'.repeat(terminalWidth())) - stdout.writeLine(header.center(terminalWidth())) - stdout.writeLine('~'.repeat(terminalWidth())) + stdout.writeLine('_'.repeat(adjustedTerminalWidth())) + stdout.writeLine(header.center(adjustedTerminalWidth())) + stdout.writeLine('~'.repeat(adjustedTerminalWidth())) stdout.resetAttributes