Module: RubyTUI::Symbols

Defined in:
lib/rubytui/symbols.rb

Overview

Predefined box-drawing glyph sets for widget borders.

Examples:

Widgets::Block.new(borders: :all, border_set: Symbols::DOUBLE)

Defined Under Namespace

Classes: BorderSet

Constant Summary collapse

PLAIN =

ASCII-only borders using +, - and |.

BorderSet.new(
  top_left: "+", top_right: "+", bottom_left: "+", bottom_right: "+",
  horizontal: "-", vertical: "|",
  cross: "+",
  tee_left: "+", tee_right: "+", tee_top: "+", tee_bottom: "+"
).freeze
ROUNDED =

Light lines with rounded corners (╭ ╮ ╰ ╯).

BorderSet.new(
  top_left: "\u256D", top_right: "\u256E",   # ╭ ╮
  bottom_left: "\u2570", bottom_right: "\u256F", # ╰ ╯
  horizontal: "\u2500", vertical: "\u2502",   # ─ │
  cross: "\u253C",                             # ┼
  tee_left: "\u2524", tee_right: "\u251C",     # ┤ ├
  tee_top: "\u2534", tee_bottom: "\u252C"      # ┴ ┬
).freeze
DOUBLE =

Double lines (═ ║ ╔ ╗ ╚ ╝).

BorderSet.new(
  top_left: "\u2554", top_right: "\u2557",     # ╔ ╗
  bottom_left: "\u255A", bottom_right: "\u255D", # ╚ ╝
  horizontal: "\u2550", vertical: "\u2551",     # ═ ║
  cross: "\u256C",                               # ╬
  tee_left: "\u2563", tee_right: "\u2560",       # ╣ ╠
  tee_top: "\u2569", tee_bottom: "\u2566"        # ╩ ╦
).freeze
THICK =

Heavy lines (━ ┃ ┏ ┓ ┗ ┛).

BorderSet.new(
  top_left: "\u250F", top_right: "\u2513",     # ┏ ┓
  bottom_left: "\u2517", bottom_right: "\u251B", # ┗ ┛
  horizontal: "\u2501", vertical: "\u2503",     # ━ ┃
  cross: "\u254B",                               # ╋
  tee_left: "\u252B", tee_right: "\u2523",       # ┫ ┣
  tee_top: "\u253B", tee_bottom: "\u2533"        # ┻ ┳
).freeze
LIGHT =

Light lines with square corners (─ │ ┌ ┐ └ ┘).

BorderSet.new(
  top_left: "\u250C", top_right: "\u2510",     # ┌ ┐
  bottom_left: "\u2514", bottom_right: "\u2518", # └ ┘
  horizontal: "\u2500", vertical: "\u2502",     # ─ │
  cross: "\u253C",                               # ┼
  tee_left: "\u2524", tee_right: "\u251C",       # ┤ ├
  tee_top: "\u2534", tee_bottom: "\u252C"        # ┴ ┬
).freeze