cli: use a "leftward harpoon over rightward harpoon" for elided nodes #3124
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.
This is just an experiment to see how a new elided node looks. I like the feature, but I think the text is a little hard to see due to the lack of surrounding whitespace; having a more distinct marker might help split the difference.
Also, the existing pick,
DOTTED CIRCLE
, seen as◌
, sometimes renders very poorly in certain fonts, depending on a number of factors. I think a contributing factor is that not all fonts have monospace unicode characters for this block of characters; it also seems as ifDOTTED CIRCLE
is not in the same "logical group" of characters in that block that includes our lovely◉
, which isFISHEYE
. Maybe another... CIRCLE
character would be better, but the ones close by don't seem too great for this purpose.Instead, this picks a completely distinct character, using
LEFTWARD HARPOON OVER RIGHTWARD HARPOON
, seen as⇋
to mark elided nodes, since it kind of reminded me of a "scissor snip", removing the middle of a string, or something.To keep a similar visual language,
=
is used in ASCII.I've been running this for a week or so, and I quite like it. But I figured I'd put it up here in case anyone else wants to try it. We could also make it configurable, but maybe this could be a better default? I'm not sure. We'd have to get people to try it.
Here is an example from my inline VS Code terminal, using PragmataPro Mono: