Roger-luo / Ion

Ion - a CLI toolbox for Julia developers
https://rogerluo.dev/Ion/
MIT License
64 stars 3 forks source link

feat: add `ion template inspect` command #11

Closed diversable closed 1 year ago

diversable commented 1 year ago

The template command(s) have been tested and are working; hopefully the style somewhat keeps with the Ion repo.

You may want to check out the 'clone' tests, though - I'm getting intermittent failures with that test, and can't figure out why yet (nothing I did should've had any impact on the bin::clone::test_clone test). Just thought you should know, if you weren't already aware...

Closes issue: https://github.com/Roger-luo/Ion/issues/9#issue-1584769565

NB: updates have been made to deal with the non-happy-path; as of now, if the template the user wants to inspect does not exist in the list of templates installed, Ion will present a list of installed templates for the user to choose from..

diversable commented 1 year ago

Thanks for the feedback!

I agree that I/we should impl display for other template attributes so that we can print out a more 'detailed inspection report' of the requested template.

For the current implementation, I was trying to think from the user's perspective: mostly what I need/want is to get an overview of what's going to be created for a template. Printing the source was sufficient to meet that requirement, but more details are available in the template struct.

So, I was thinking of adding a flag called either 1) --detail or 2) --long or 3) '--full which would pretty-print the specifics of a given template, as you suggest.

Do you concur with this approach? If so, do you have a flag name preference? Or should we just print out the detailed inspection report instead of the more succinct source code?

Roger-luo commented 1 year ago

yeah, that sounds good, I think usually the convention is -v, --verbose for printing detailed information? I think this PR should be good to merge tho, I'm gonna merge just after CI passes.