module
TermBuf::CapabilityResolver
Overview
Settles what the terminal can do, in four stages, each overriding the one before it:
- a baseline of nothing at all;
- what the environment suggests;
- what the terminal says when asked directly;
- whatever
TERMBUF_CAPSinsists on.
Probing is skipped when there is nothing to probe — output that is not a terminal, or a caller that did not supply one. That is not an error: the environment heuristics stand on their own, and a program writing to a pipe still needs a capability set.
Extended Modules
Defined in:
termbuf/caps/resolver.crInstance Method Summary
-
#resolve(env : Hash(String, String) = ENV.to_h, input : IO | Nil = nil, output : IO | Nil = nil, timeout : Time::Span = Prober::DEFAULT_TIMEOUT) : Result
Runs the four stages.