Skip to content
This repository was archived by the owner on Sep 3, 2024. It is now read-only.
/ terminal Public archive

A terminal abstraction with platform-specific drivers.

License

Notifications You must be signed in to change notification settings

spectreconsole/terminal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

10cef58 · Jun 13, 2022

History

63 Commits
Jun 13, 2022
Jun 13, 2022
May 30, 2021
Jun 13, 2022
Jun 13, 2022
May 26, 2021
May 26, 2021
May 30, 2021
Aug 3, 2021
Jun 13, 2022
Jun 13, 2022
Jun 13, 2022

Repository files navigation

Spectre.Terminals

A terminal abstraction with platform specific drivers.

Disclaimer

This is a work in progress, and usage is not yet recommended.
Things will change, move around and break.

Acknowledgement

Inspired by system-terminal written by Alex Rønne Petersen.

Features

  • Windows

    • STDIN
      • Read Key
      • Read Single Character (if raw mode is enabled)
      • Read Line
      • Get encoding
      • Set encoding
      • Redirect to custom reader
      • Is handle redirected?
    • STDOUT/STDERR
      • Write
      • Get encoding
      • Set encoding
      • Redirect to custom writer
      • Is handle redirected?
    • Raw mode (enable/disable)
    • Signals
      • SIGINT (CTRL+C)
      • SIGQUIT (CTRL+BREAK)
    • Window
      • Get width
      • Get height
    • VT/ANSI emulation (Windows only)
      • CUU (Cursor up)
      • CUD (Cursor down)
      • CUF (Cursor forward)
      • CUB (Cursor back)
      • CNL (Cursor next line)
      • CPL (Cursor previous line)
      • CHA (Cursor horizontal absolute)
      • CUP (Cursor position)
      • ED (Erase in display)
      • EL (Erase in line)
      • SGR (Selection graphic rendition)
      • SCP (Save current cursor position)
      • RCP (Restore saved cursor position)
      • DECTCEM 25 (Hide cursor)
      • DECTCEM 25 (Show cursor)
      • DECSET 1049 (Enable alternative buffer)
      • DECSET 1049 (Disable alternative buffer)
  • Linux

    • STDIN
      • Read Key
      • Read Single Character
      • Read Line
      • Get encoding
      • Set encoding (NOT SUPPORTED)
      • Redirect to custom reader
      • Is handle redirected?
    • STDOUT/STDERR
      • Write
      • Get encoding
      • Set encoding (NOT SUPPORTED)
      • Redirect to custom writer
      • Is handle redirected?
    • Raw mode (enable/disable)
    • Signals
      • SIGINT
      • SIGQUIT
    • Window
      • Get width
      • Get height
  • macOS

    • STDIN
      • Read Key
      • Read Single Character
      • Read Line
      • Get encoding
      • Set encoding (NOT SUPPORTED)
      • Redirect to custom reader
      • Is handle redirected?
    • STDOUT/STDERR
      • Write
      • Get encoding
      • Set encoding (NOT SUPPORTED)
      • Redirect to custom writer
      • Is handle redirected?
    • Raw mode (enable/disable)
    • Signals
      • SIGINT
      • SIGQUIT
    • Window
      • Get width
      • Get height

About

A terminal abstraction with platform-specific drivers.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages