filled in cli libraries.

This commit is contained in:
Gabe Venberg 2024-08-09 03:56:54 -05:00
parent 349007be95
commit 200b2a5b1a

View file

@ -206,11 +206,11 @@ is a core part of neovim, albeit one that requires some configuration to get goo
Helix does have a config file where you can change a huge amount of settings, Helix does have a config file where you can change a huge amount of settings,
but its an extremely usable IDE out of the box thanks to having all of its features enabled by default. but its an extremely usable IDE out of the box thanks to having all of its features enabled by default.
### Friendly error messages ### Helpful error messages
<!-- look at nushells error messages --> <!-- look at nushells error messages -->
[before](../nushell) TODO [before](../nushell)
### Concise and discoverable documentation ### Concise and discoverable documentation
@ -307,9 +307,13 @@ And have these new languages led to an increase in the number of tools being wri
I think so, and I don't actually think its the languages itself, so much as the libraries surrounding them. I think so, and I don't actually think its the languages itself, so much as the libraries surrounding them.
Both Rust and Go have healthy package ecosystems surrounding interaction with the terminal. Both Rust and Go have healthy package ecosystems surrounding interaction with the terminal.
Rust has Clap for argument parsing, TODO for dealing with ANSI escape codes, Rust has Clap for argument parsing,
and Ratatui and TODO for making TUIs. crossterm for dealing with ANSI escape codes and other terminal interaction,
Go has a similar set of tools, with Cobra for CLI argument parsing, TODO and Ratatui for making TUIs.
Go has a similar set of tools, with Cobra for CLI argument parsing,
Viper for config file management integrated with Cobra,
Gocui, tview, and Termui for TUIs,
or Bubbletea for pretty UI components.
These libraries combined with the extra ergonomics offered by the languages themselves, These libraries combined with the extra ergonomics offered by the languages themselves,
make the barrier to entry lower, make the barrier to entry lower,
@ -317,6 +321,7 @@ allowing for more people to experiment with the design and ergonomics of CLI too
## Conclusion ## Conclusion
TODO
<!-- emphasize that the new tools are not 'better' just because they are new, <!-- emphasize that the new tools are not 'better' just because they are new,
but because they take the old tools and learn what did and did not work for them. --> but because they take the old tools and learn what did and did not work for them. -->