-
Notifications
You must be signed in to change notification settings - Fork 0
/
template.erb
99 lines (99 loc) · 4.21 KB
/
template.erb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<html lang="en">
<head>
<title>Base16 Gallery</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lobster&display=swap" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5/dist/css/bootstrap.min.css" rel="stylesheet">
<style>
<% colorschemes = Dir['schemes/base16/*.yaml'].map{ |s| s.sub(/.*\//, '').sub(/\..*$/, '') } %>
<% colorschemes.each do |colorscheme| %>
<%= File.read("out/#{colorscheme}.css") %>
<% end %>
h1 {
font-family: Lobster, cursive;
}
.content > pre::-webkit-scrollbar {
display: none;
}
.content > pre {
scrollbar-width: none;
padding: 20px;
height: 300px;
overflow-y: scroll;
box-shadow: 5px 5px 10px #333;
border-radius: 5px;
}
.title {
font-size: 1.5em !important;
padding-bottom: 50px;
}
.pallete {
justify-content: center;
display: flex;
box-shadow: 5px 5px 10px #333;
}
.pallete > * {
flex-grow: 1;
height: 30px;
}
.content {
position: relative;
}
input[type="checkbox"] {
top: 10px;
right: 10px;
position: absolute;
}
input[type="checkbox"]:not(:checked) + pre {
display: none;
}
input[type="checkbox"]:checked + pre + pre {
display: none;
}
</style>
</head>
<body>
<div class="container-fluid">
<div class="row">
<h1 class="text-center">Base16 Gallery</h1>
<p class="text-center">
This gallery is generated from <a href="https://github.com/tinted-theming/base16-vim">tinted-theming/base16-vim</a>.</p>
</div>
<div class="row" id="gallery">
<% colorschemes.each do |colorscheme| %>
<div class="col-xxl-2 col-lg-3 col-md-4 col-sm-6" id="base16-<%= colorscheme %>">
<div class="content">
<input type="checkbox" />
<pre><code><%= File.read("schemes/base16/#{colorscheme}.yaml") %></code></pre>
<%= File.read("out/#{colorscheme}.html") %>
</div>
<div class="pallete">
<% require 'yaml' %>
<% palette = YAML.load_file("schemes/base16/#{colorscheme}.yaml")['palette'] %>
<div title="#<%= palette['base00'] %>" style="background-color: #<%= palette['base00'] %>;"></div>
<div title="#<%= palette['base01'] %>" style="background-color: #<%= palette['base01'] %>;"></div>
<div title="#<%= palette['base02'] %>" style="background-color: #<%= palette['base02'] %>;"></div>
<div title="#<%= palette['base03'] %>" style="background-color: #<%= palette['base03'] %>;"></div>
<div title="#<%= palette['base04'] %>" style="background-color: #<%= palette['base04'] %>;"></div>
<div title="#<%= palette['base05'] %>" style="background-color: #<%= palette['base05'] %>;"></div>
<div title="#<%= palette['base06'] %>" style="background-color: #<%= palette['base06'] %>;"></div>
<div title="#<%= palette['base07'] %>" style="background-color: #<%= palette['base07'] %>;"></div>
<div title="#<%= palette['base08'] %>" style="background-color: #<%= palette['base08'] %>;"></div>
<div title="#<%= palette['base09'] %>" style="background-color: #<%= palette['base09'] %>;"></div>
<div title="#<%= palette['base0A'] %>" style="background-color: #<%= palette['base0A'] %>;"></div>
<div title="#<%= palette['base0B'] %>" style="background-color: #<%= palette['base0B'] %>;"></div>
<div title="#<%= palette['base0C'] %>" style="background-color: #<%= palette['base0C'] %>;"></div>
<div title="#<%= palette['base0D'] %>" style="background-color: #<%= palette['base0D'] %>;"></div>
<div title="#<%= palette['base0E'] %>" style="background-color: #<%= palette['base0E'] %>;"></div>
<div title="#<%= palette['base0F'] %>" style="background-color: #<%= palette['base0F'] %>;"></div>
</div>
<div class="title text-center">
<%= colorscheme %>
</div>
</div>
<% end %>
</div>
</div>
</body>
</html>