|
|
|
|
|
by electricEmu
1930 days ago
|
|
PowerShell maps plaintext to objects without issue. No need to drop down into bytestreams. In the following example, 'choco' (Chocolatey) outputs a list of outdated packages in a consistent format (--limit-output). The text output is piped to the ConvertFrom-CSV PowerShell CmdLet, which maps the text output from choco into a PowerShell object. ```ps1
choco outdated --limit-output | ConvertFrom-csv -Delimiter '|' -Header 'name','version','v-new','pin'
``` For what it's worth, STDERR is already colorized in PowerShell too. |
|
Plus it's easy to cherry pick specific features between different solutions and argue they're equivalent if you're going to ignore all the other aspects where they differ. For example a big part of murex is the REPL environment:
- murex parses man pages for smarter auto-competions
- murex integrates well with `tmux` for those who want a richer tiled TUI
- murex supports vim keys
- murex give context sensitive hints upon every keystroke
- murex has an events system baked in. So you can assign your own shortcut keys or run scripts upon filesystem changes
- murex supports regex searches through auto-completions. Which makes navigating directories quicker. It makes finding application names in `kill` quicker. etc
I'm not saying any of this to be critical against PowerShell - it's a sophisticated piece of engineering and a great solution for a great many people. But the differences between what I've built and PS are far greater than the properties they share.