Repository navigation
feat(next-steps): a layout option to keep one suggestion per row - #92
Open
interrobang-dev wants to merge 1 commit into
Open
interrobang-dev wants to merge 1 commit into
interrobang-dev wants to merge 1 commit into
Conversation
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
next-stepspicks its shape from the window: one row when the list fits, one per row when it doesn't. That is a good default, since it saves rows above the prompt. But in a wide terminal almost every list fits, so the suggestions run along one line, and the third one can start a long way to the right of the first. One per row reads more like a menu:1,2,3stand in a column on the left, each suggestion starts at the same place, and you read down the list and press the number next to the one you want.It also keeps the band the same from turn to turn. With
autothe shape follows both the window width and the length of the suggestions, so one list can sit on a single line and the next, a little longer, splits into rows. Withrowsit is always a short list, so you know where to look before you read it.What
A
layoutuser config, followinglanguage(#69).autois the default, and then the band draws exactly as today: one row when it fits, one per row otherwise, with the wide-character handling from next-steps: wide characters count as two columns #72.rowsskips only the width check, so the list is one per row however wide the terminal is. The height check stays: a band too short for one per row still gets the one row, cut at its end, sorowsnever makes the band scroll./config("options": ["auto", "rows"]); a stored value outside them counts as unset, so it falls back toauto.Changes
hooks/register.tsxlayoutread inregister(on, options)next tolanguage; one guard on the width check.claude-plugin/plugin.jsonuserConfig.layout, version 0.2.1 → 0.3.0.claude-plugin/marketplace.jsonREADME.md,docs/mods.mdlanguagesite/mods/next-steps/index.htmltests/next-steps.test.tsChecks
claude plugin validate .andclaude plugin validate mods/next-steps→ passedclaude plugin test mods/next-steps→ 21 pass, 0 fail (18 existing + 3)plugin.jsonand in.claude-plugin/marketplace.jsonlayoutguard failslayout rows keeps one per row in a wide bandone row when the list fits, by defaultrowsskip the height check too failslayout rows still takes the one row in a short bandNote
I've been running this from a local copy with
layout: rowsandlanguage: Korean, in a wide terminal on Windows. Thanks for next-steps; it has become part of how I work.