Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add VT100 character set sequences to STRIP_ANSI_RE #95

Merged
merged 1 commit into from
Mar 23, 2021
Merged

Add VT100 character set sequences to STRIP_ANSI_RE #95

merged 1 commit into from
Mar 23, 2021

Conversation

eth-p
Copy link
Contributor

@eth-p eth-p commented Mar 23, 2021

This pull request adds support for stripping/iterating a couple VT100 escape sequences alongside the ANSI ones.

While VT100 isn't technically ANSI, most modern terminals still implement a subset of them. The changes specifically add support for the sequences responsible for switching between the box-drawing and regular character sets.

@pksunkara pksunkara merged commit cd92e8b into console-rs:master Mar 23, 2021
dtolnay pushed a commit to dtolnay-contrib/console that referenced this pull request Feb 4, 2022
It was noted that emitting a tracing event inside the subscriber could
trigger a deadlock, since `std::sync::Once` is not re-entrant. This
removes the tracing from the subscriber `Layer` methods.

If the capacity was full, sending the event was spawned into tokio, but
the event might not have been inside a runtime in the first place. And
it essentially turns it into an unbounded queue. So that is also
removed.

It also changes from using a constant `FLUSH_AT_CAPACITY` to a struct
field that is based on the configured event buffer capacity. A value of
half the buffer capacity was chosen, since hitting a full channel will
now mean the event is completely lost.

Closes console-rs#27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants