Class: TerminalSlides::Printer
- Inherits:
-
Object
- Object
- TerminalSlides::Printer
- Defined in:
- lib/terminal_slides/printer.rb
Constant Summary collapse
- DEFAULT_ASCII_ART =
"starwars".freeze
- FONTS =
{ standard: 0, bold: 1, italic: 3, underline: 4, blink: 5, reverse: 6 }.freeze
- COLORS =
{ red: 31, green: 32, brown: 33, blue: 34, magenta: 35, cyan: 36, gray: 37 }.freeze
- BG_COLORS =
{ bg_red: 41, bg_gren: 42, bg_brown: 43, bg_blue: 44, bg_magenta: 45, bg_cyan: 46, bg_gray: 47 }.freeze
- MAPPING =
{ **FONTS, **COLORS, **BG_COLORS }.freeze
Instance Method Summary collapse
- #puts(string) ⇒ Object
- #set_ascii_art(string) ⇒ Object
- #set_font(font) ⇒ Object
- #set_image(path) ⇒ Object
Instance Method Details
#puts(string) ⇒ Object
55 56 57 58 59 |
# File 'lib/terminal_slides/printer.rb', line 55 def puts(string) color = font || :standard code = MAPPING[color.to_sym] || MAPPING[:standard] Kernel.puts("\e[#{code}m#{string}") end |
#set_ascii_art(string) ⇒ Object
51 52 53 |
# File 'lib/terminal_slides/printer.rb', line 51 def set_ascii_art(string) print Artii::Base.new(font: DEFAULT_ASCII_ART).asciify(string) end |
#set_font(font) ⇒ Object
43 44 45 |
# File 'lib/terminal_slides/printer.rb', line 43 def set_font(font) @font = font end |
#set_image(path) ⇒ Object
47 48 49 |
# File 'lib/terminal_slides/printer.rb', line 47 def set_image(path) Kernel.puts "\033]1337;File=inline=1:#{Base64.strict_encode64(File.open(path).read)}\a" end |