bcurran3 / ChocolateyPackages

My published Chocolatey packages
206 stars 94 forks source link

choco-package-info-collection - Aggressive word wrapping #350

Closed brogers5 closed 7 months ago

brogers5 commented 10 months ago

I'm experiencing some usability and readability issues with choco-package-info-releasenotes.hook, but I see the other hooks in its collection have a similar implementation, and theoretically could have similar problems.

I've noticed the hook is hard-coded to format the relevant Nuspec string at a 5-space indentation, with 75 columns per line.

Some packages may have a long releaseNotes URL that exceeds this length (for example, one of my own packages: xsplit-broadcaster):

Screenshot of long URL being wrapped

The current behavior of splitting the URL to a separate line breaks Windows Terminal's URL detection feature by truncating the detected URL value, which could cripple the utility of the hook for such packages.

Some packages use a markdown string (for example: gh), which also doesn't play nicely with removed newlines: Screenshot of markdown release notes

Could you add an option to disable the word wrapping behavior and return the string as-is (to defer word-wrapping and other formatting decisions to the terminal emulator), or at least define a custom line-length value (possibly defaulting to the current console width minus the indentation width)?

bcurran3 commented 10 months ago

First let me state I'm happy that someone found this hook of worth and is using it. Yay!

Second I'll state that this hook is minor and it's scope of work and functionality is to simply display some additional info and keep that info separated from Chocolatey's normal output as to standout and not get "lost in the noise" by using color and formatting. The formatting is intentional and the output is to be informative and not a meant to be multimedia slide presentation. :-) 80 character max length was chosen for backwards compatibility.

Thank you very much for the WindowSize variables; those will prove to be very useful and I'll plan to implement when I have a chance. I use and LOVE Terminal, but I'll have to test if those variables are compatible with a non-Terminal PowerShell CLI window as well. EDIT: $Host.UI.RawUI.WindowSize.Width and $Host.UI.RawUI.WindowSize.Height work fine in "normal" PowerShell window, so they are full on green light for me to redo the default line length formatting in an update.

bcurran3 commented 7 months ago

Closing this as I am no longer creating or maintaining Chocolatey packages. Sorry, out of my control.

Hopefully you've enjoyed my work and found it useful.

Bella Ciao!

brogers5 commented 7 months ago

Thank you for your contributions to the Chocolatey community. I've found several of your packages to be useful over the years, and you will surely be missed.

On a related note, is your account on the Community Repository still active? Your profile page appears to be 404ing now:

Page not found screenshot

I ask as I'm interested in taking over maintenance for this (and other packages), and am wondering if I need to step through the Package Triage process or if you could just add me as a maintainer directly.

bcurran3 commented 7 months ago

Thanks for the kind words and I'm very happy you have gotten use from my little utilities.

Unfortunately, my account is gone; not by choice. All my packages are up for grabs. I don't have the ability to deal them out but I'm sure one of the various Chocolatey package moderators will be happy to assign any to you.

brogers5 commented 7 months ago

Understood, thank you for clarifying. I wish you the best of luck in your future endeavors!