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.
Curiosity killed the @dtzWill, round 471:
In this PR I replaced the vendored linenoise library with the almost-entirely-a-drop-in-replacement fork linenoise-ng.
What motivated this was to improve the completion behavior of
nix repl
on attribute sets: a good way to see the difference is by entering 'builtins.' and hitting<TAB>
.With linenoise (current): completions are offered one-at-a-time and must be cycled through alphabetically to see if there is an attribute you'd like.
With linenoise-ng (this PR): completions are listed in a "table", like the REPL did when readline was used.
In theory switching to linenoise-ng provides UTF-8 support, but I didn't investigate this.
I can't speak for the linenoise-ng library's suitability one way or the other, but since this seems to work well I thought I'd share in case someone finds it useful :).
The resulting store paths seem comparable in size, but a bit larger: 7940720 before and 7987480 after, ~47Kb (~0.6% increase)