Class: Shellfie::Themes::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/shellfie/themes/base.rb

Direct Known Subclasses

MacOS, Ubuntu, WindowsTerminal

Instance Method Summary collapse

Instance Method Details

#button_colorsObject



48
49
50
# File 'lib/shellfie/themes/base.rb', line 48

def button_colors
  %w[#ff5f56 #ffbd2e #27c93f]
end

#button_styleObject



52
53
54
# File 'lib/shellfie/themes/base.rb', line 52

def button_style
  :circles
end

#buttons_positionObject



56
57
58
# File 'lib/shellfie/themes/base.rb', line 56

def buttons_position
  :left
end

#color_for(name) ⇒ Object



74
75
76
77
78
# File 'lib/shellfie/themes/base.rb', line 74

def color_for(name)
  return name if name.is_a?(String) && name.start_with?("#")

  colors[name.to_sym] || colors[:foreground]
end

#colorsObject



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/shellfie/themes/base.rb', line 20

def colors
  {
    background: "#1e1e1e",
    foreground: "#ffffff",
    title_bar: "#3c3c3c",
    title_text: "#ffffff",
    title_bar_border: "rgba(255,255,255,0.08)",
    border: "rgba(255,255,255,0.10)",
    selection: "rgba(80,140,255,0.28)",
    black: "#000000",
    red: "#ff5555",
    green: "#50fa7b",
    yellow: "#f1fa8c",
    blue: "#6272a4",
    magenta: "#ff79c6",
    cyan: "#8be9fd",
    white: "#f8f8f2",
    bright_black: "#6272a4",
    bright_red: "#ff6e6e",
    bright_green: "#69ff94",
    bright_yellow: "#ffffa5",
    bright_blue: "#d6acff",
    bright_magenta: "#ff92df",
    bright_cyan: "#a4ffff",
    bright_white: "#ffffff"
  }
end

#fontObject



64
65
66
67
68
69
70
71
72
# File 'lib/shellfie/themes/base.rb', line 64

def font
  {
    family: "Monaco",
    size: 14,
    line_height: 1.4,
    fallback_family: "Menlo",
    emoji_family: "Apple Color Emoji"
  }
end

#nameObject



6
7
8
# File 'lib/shellfie/themes/base.rb', line 6

def name
  "base"
end

#title_alignmentObject



60
61
62
# File 'lib/shellfie/themes/base.rb', line 60

def title_alignment
  :center
end

#window_decorationObject



10
11
12
13
14
15
16
17
18
# File 'lib/shellfie/themes/base.rb', line 10

def window_decoration
  {
    title_bar_height: 28,
    button_size: 12,
    button_spacing: 8,
    corner_radius: 10,
    shadow: { blur: 20, offset_x: 0, offset_y: 10, color: "rgba(0,0,0,0.3)" }
  }
end