TermUI.Platform.Unix (TermUI v0.2.0)

View Source

Unix-specific terminal handling for Linux and macOS.

Provides platform-specific implementations for:

  • Terminal size detection
  • Signal handling hints
  • Capability detection hints

Summary

Functions

Returns hints for Unix-specific capability detection.

Returns the Unix variant (linux, macos, freebsd).

Returns Unix-specific terminal information.

Returns the kernel version string.

Checks if a specific signal is available.

Returns signal names supported on Unix.

Returns paths where terminfo database may be found.

Functions

capability_hints()

@spec capability_hints() :: map()

Returns hints for Unix-specific capability detection.

detect_unix_variant()

@spec detect_unix_variant() :: :linux | :macos | :freebsd | :unknown

Returns the Unix variant (linux, macos, freebsd).

info()

@spec info() :: map()

Returns Unix-specific terminal information.

kernel_version()

@spec kernel_version() :: String.t() | nil

Returns the kernel version string.

signal_available?(signal)

@spec signal_available?(atom()) :: boolean()

Checks if a specific signal is available.

supported_signals()

@spec supported_signals() :: [atom()]

Returns signal names supported on Unix.

terminfo_paths()

@spec terminfo_paths() :: [String.t()]

Returns paths where terminfo database may be found.