feat: configuración de WezTerm con temas visuales y skill de personalización
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
local colors = {
|
||||
foreground = '#d0e8ff',
|
||||
background = '#0d0221',
|
||||
cursor_bg = '#05d9e8',
|
||||
cursor_fg = '#0d0221',
|
||||
cursor_border = '#05d9e8',
|
||||
selection_bg = '#3d1256',
|
||||
selection_fg = '#ffffff',
|
||||
compose_cursor = '#05d9e8',
|
||||
ansi = {
|
||||
'#0d0221',
|
||||
'#ff2a6d',
|
||||
'#05d9e8',
|
||||
'#f2f230',
|
||||
'#00b3ff',
|
||||
'#b967ff',
|
||||
'#01c4e7',
|
||||
'#d0e8ff',
|
||||
},
|
||||
brights = {
|
||||
'#3d1256',
|
||||
'#ff5c8a',
|
||||
'#6ffff0',
|
||||
'#ffff6a',
|
||||
'#5cc9ff',
|
||||
'#d08cff',
|
||||
'#7ce9ff',
|
||||
'#ffffff',
|
||||
},
|
||||
tab_bar = {
|
||||
background = '#16052e',
|
||||
active_tab = { bg_color = '#ff2a6d', fg_color = '#ffffff', intensity = 'Bold' },
|
||||
inactive_tab = { bg_color = '#16052e', fg_color = '#05d9e8' },
|
||||
inactive_tab_hover = { bg_color = '#3d1256', fg_color = '#ff5c8a' },
|
||||
new_tab = { bg_color = '#16052e', fg_color = '#05d9e8' },
|
||||
new_tab_hover = { bg_color = '#3d1256', fg_color = '#b967ff' },
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
name = 'cyberpunk',
|
||||
label = 'CYBERPUNK',
|
||||
colors = colors,
|
||||
window_background_opacity = 0.97,
|
||||
window_background_gradient = { colors = { '#0d0221', '#1a0533' }, orientation = 'Vertical' },
|
||||
cursor_blink_rate = 500,
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
local colors = {
|
||||
foreground = '#f8f8f2',
|
||||
background = '#282a36',
|
||||
cursor_bg = '#f8f8f2',
|
||||
cursor_fg = '#282a36',
|
||||
cursor_border = '#f8f8f2',
|
||||
selection_bg = '#44475a',
|
||||
selection_fg = '#f8f8f2',
|
||||
compose_cursor = '#f8f8f2',
|
||||
ansi = {
|
||||
'#21222c',
|
||||
'#ff5555',
|
||||
'#50fa7b',
|
||||
'#f1fa8c',
|
||||
'#bd93f9',
|
||||
'#ff79c6',
|
||||
'#8be9fd',
|
||||
'#f8f8f2',
|
||||
},
|
||||
brights = {
|
||||
'#6272a4',
|
||||
'#ff6e6e',
|
||||
'#69ff94',
|
||||
'#ffffa5',
|
||||
'#d6acff',
|
||||
'#ff92df',
|
||||
'#a4ffff',
|
||||
'#ffffff',
|
||||
},
|
||||
tab_bar = {
|
||||
background = '#21222c',
|
||||
active_tab = { bg_color = '#bd93f9', fg_color = '#282a36', intensity = 'Bold' },
|
||||
inactive_tab = { bg_color = '#21222c', fg_color = '#f8f8f2' },
|
||||
inactive_tab_hover = { bg_color = '#44475a', fg_color = '#f8f8f2' },
|
||||
new_tab = { bg_color = '#21222c', fg_color = '#50fa7b' },
|
||||
new_tab_hover = { bg_color = '#44475a', fg_color = '#f8f8f2' },
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
name = 'dracula',
|
||||
label = 'DRACULA',
|
||||
colors = colors,
|
||||
window_background_opacity = 1.0,
|
||||
cursor_blink_rate = 500,
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
local colors = {
|
||||
foreground = '#00ff41',
|
||||
background = '#000000',
|
||||
cursor_bg = '#00ff41',
|
||||
cursor_fg = '#000000',
|
||||
cursor_border = '#00ff41',
|
||||
selection_bg = '#003b1f',
|
||||
selection_fg = '#c8ffe0',
|
||||
compose_cursor = '#00ff41',
|
||||
ansi = {
|
||||
'#0a1f0a',
|
||||
'#ff4d4d',
|
||||
'#00ff41',
|
||||
'#c8e65c',
|
||||
'#40c9ff',
|
||||
'#c792ea',
|
||||
'#00e0a0',
|
||||
'#a8ffb0',
|
||||
},
|
||||
brights = {
|
||||
'#1a3b1a',
|
||||
'#ff8080',
|
||||
'#66ff8a',
|
||||
'#e0ff70',
|
||||
'#80ddff',
|
||||
'#d4a0ff',
|
||||
'#66ffc0',
|
||||
'#d8ffdd',
|
||||
},
|
||||
tab_bar = {
|
||||
background = '#001400',
|
||||
active_tab = { bg_color = '#00ff41', fg_color = '#000000', intensity = 'Bold' },
|
||||
inactive_tab = { bg_color = '#001400', fg_color = '#00ff41' },
|
||||
inactive_tab_hover = { bg_color = '#003b1f', fg_color = '#00ff41' },
|
||||
new_tab = { bg_color = '#001400', fg_color = '#00ff41' },
|
||||
new_tab_hover = { bg_color = '#003b1f', fg_color = '#00ff41' },
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
name = 'matrix',
|
||||
label = 'MATRIX',
|
||||
colors = colors,
|
||||
window_background_opacity = 0.97,
|
||||
window_background_gradient = { colors = { '#000000', '#001a00' }, orientation = 'Vertical' },
|
||||
cursor_blink_rate = 500,
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
local colors = {
|
||||
foreground = '#d8dee9',
|
||||
background = '#2e3440',
|
||||
cursor_bg = '#d8dee9',
|
||||
cursor_fg = '#2e3440',
|
||||
cursor_border = '#d8dee9',
|
||||
selection_bg = '#4c566a',
|
||||
selection_fg = '#eceff4',
|
||||
compose_cursor = '#d8dee9',
|
||||
ansi = {
|
||||
'#3b4252',
|
||||
'#bf616a',
|
||||
'#a3be8c',
|
||||
'#ebcb8b',
|
||||
'#81a1c1',
|
||||
'#b48ead',
|
||||
'#88c0d0',
|
||||
'#e5e9f0',
|
||||
},
|
||||
brights = {
|
||||
'#4c566a',
|
||||
'#bf616a',
|
||||
'#a3be8c',
|
||||
'#ebcb8b',
|
||||
'#81a1c1',
|
||||
'#b48ead',
|
||||
'#8fbcbb',
|
||||
'#eceff4',
|
||||
},
|
||||
tab_bar = {
|
||||
background = '#2e3440',
|
||||
active_tab = { bg_color = '#81a1c1', fg_color = '#2e3440', intensity = 'Bold' },
|
||||
inactive_tab = { bg_color = '#3b4252', fg_color = '#d8dee9' },
|
||||
inactive_tab_hover = { bg_color = '#434c5e', fg_color = '#eceff4' },
|
||||
new_tab = { bg_color = '#3b4252', fg_color = '#88c0d0' },
|
||||
new_tab_hover = { bg_color = '#434c5e', fg_color = '#eceff4' },
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
name = 'nord',
|
||||
label = 'NORD',
|
||||
colors = colors,
|
||||
window_background_opacity = 1.0,
|
||||
cursor_blink_rate = 500,
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
local colors = {
|
||||
foreground = '#ffb000',
|
||||
background = '#1a0f00',
|
||||
cursor_bg = '#ffb000',
|
||||
cursor_fg = '#1a0f00',
|
||||
cursor_border = '#ffb000',
|
||||
selection_bg = '#4a2c00',
|
||||
selection_fg = '#ffe8c0',
|
||||
compose_cursor = '#ffb000',
|
||||
ansi = {
|
||||
'#1a0f00',
|
||||
'#ff4a00',
|
||||
'#ffb000',
|
||||
'#ffd080',
|
||||
'#ff8c00',
|
||||
'#ff6600',
|
||||
'#ffcc66',
|
||||
'#ffd9a0',
|
||||
},
|
||||
brights = {
|
||||
'#3d2a00',
|
||||
'#ff6a00',
|
||||
'#ffc040',
|
||||
'#ffe0a0',
|
||||
'#ffaa40',
|
||||
'#ff8040',
|
||||
'#ffd080',
|
||||
'#ffe8c0',
|
||||
},
|
||||
tab_bar = {
|
||||
background = '#241500',
|
||||
active_tab = { bg_color = '#ffb000', fg_color = '#1a0f00', intensity = 'Bold' },
|
||||
inactive_tab = { bg_color = '#241500', fg_color = '#ffb000' },
|
||||
inactive_tab_hover = { bg_color = '#4a2c00', fg_color = '#ffb000' },
|
||||
new_tab = { bg_color = '#241500', fg_color = '#ffb000' },
|
||||
new_tab_hover = { bg_color = '#4a2c00', fg_color = '#ffb000' },
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
name = 'phosphor-amber',
|
||||
label = 'PHOSPHOR-AMBER',
|
||||
colors = colors,
|
||||
window_background_opacity = 0.97,
|
||||
window_background_gradient = { colors = { '#1a0f00', '#2a1a00' }, orientation = 'Vertical' },
|
||||
cursor_blink_rate = 600,
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
local colors = {
|
||||
foreground = '#33ff33',
|
||||
background = '#001a00',
|
||||
cursor_bg = '#33ff33',
|
||||
cursor_fg = '#001a00',
|
||||
cursor_border = '#33ff33',
|
||||
selection_bg = '#003d00',
|
||||
selection_fg = '#ccffcc',
|
||||
compose_cursor = '#33ff33',
|
||||
ansi = {
|
||||
'#003300',
|
||||
'#00cc44',
|
||||
'#33ff33',
|
||||
'#99ff33',
|
||||
'#00ccff',
|
||||
'#66ffcc',
|
||||
'#00ff88',
|
||||
'#ccffcc',
|
||||
},
|
||||
brights = {
|
||||
'#006600',
|
||||
'#33ff66',
|
||||
'#66ff66',
|
||||
'#ccff66',
|
||||
'#66ffff',
|
||||
'#99ffee',
|
||||
'#66ffcc',
|
||||
'#ffffff',
|
||||
},
|
||||
tab_bar = {
|
||||
background = '#002000',
|
||||
active_tab = { bg_color = '#33ff33', fg_color = '#001a00', intensity = 'Bold' },
|
||||
inactive_tab = { bg_color = '#002000', fg_color = '#33ff33' },
|
||||
inactive_tab_hover = { bg_color = '#003d00', fg_color = '#33ff33' },
|
||||
new_tab = { bg_color = '#002000', fg_color = '#33ff33' },
|
||||
new_tab_hover = { bg_color = '#003d00', fg_color = '#33ff33' },
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
name = 'phosphor-green',
|
||||
label = 'PHOSPHOR-GREEN',
|
||||
colors = colors,
|
||||
window_background_opacity = 0.97,
|
||||
window_background_gradient = { colors = { '#001a00', '#002000' }, orientation = 'Vertical' },
|
||||
cursor_blink_rate = 600,
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
local wezterm = require 'wezterm'
|
||||
|
||||
local themes_dir = wezterm.config_dir .. '/themes'
|
||||
local state_file = wezterm.config_dir .. '/.current-theme'
|
||||
|
||||
local theme_files = {
|
||||
'matrix',
|
||||
'phosphor-green',
|
||||
'phosphor-amber',
|
||||
'cyberpunk',
|
||||
'nord',
|
||||
'tokyonight',
|
||||
'dracula',
|
||||
}
|
||||
|
||||
local themes = {}
|
||||
local order = {}
|
||||
|
||||
for _, name in ipairs(theme_files) do
|
||||
local ok, theme = pcall(dofile, themes_dir .. '/' .. name .. '.lua')
|
||||
if ok and theme and theme.name then
|
||||
themes[name] = theme
|
||||
order[#order + 1] = name
|
||||
else
|
||||
wezterm.log_error('wezterm-themes: error loading theme "' .. name .. '": ' .. tostring(theme))
|
||||
end
|
||||
end
|
||||
|
||||
local M = {}
|
||||
|
||||
function M.names()
|
||||
return order
|
||||
end
|
||||
|
||||
function M.get(name)
|
||||
return themes[name] or themes[order[1]]
|
||||
end
|
||||
|
||||
function M.current()
|
||||
local f = io.open(state_file, 'r')
|
||||
local name = f and f:read('*l')
|
||||
if f then
|
||||
f:close()
|
||||
end
|
||||
if name and themes[name] then
|
||||
return themes[name]
|
||||
end
|
||||
return themes[order[1]]
|
||||
end
|
||||
|
||||
function M.next(name)
|
||||
local cur = name or M.current().name
|
||||
local idx = 0
|
||||
for i, n in ipairs(order) do
|
||||
if n == cur then
|
||||
idx = i
|
||||
break
|
||||
end
|
||||
end
|
||||
return themes[order[(idx % #order) + 1]]
|
||||
end
|
||||
|
||||
function M.save(theme)
|
||||
local f = io.open(state_file, 'w')
|
||||
if f then
|
||||
f:write(theme.name .. '\n')
|
||||
f:close()
|
||||
end
|
||||
end
|
||||
|
||||
return M
|
||||
@@ -0,0 +1,46 @@
|
||||
local colors = {
|
||||
foreground = '#c0caf5',
|
||||
background = '#1a1b26',
|
||||
cursor_bg = '#c0caf5',
|
||||
cursor_fg = '#1a1b26',
|
||||
cursor_border = '#c0caf5',
|
||||
selection_bg = '#33467c',
|
||||
selection_fg = '#c0caf5',
|
||||
compose_cursor = '#c0caf5',
|
||||
ansi = {
|
||||
'#15161e',
|
||||
'#f7768e',
|
||||
'#9ece6a',
|
||||
'#e0af68',
|
||||
'#7aa2f7',
|
||||
'#bb9af7',
|
||||
'#7dcfff',
|
||||
'#a9b1d6',
|
||||
},
|
||||
brights = {
|
||||
'#414868',
|
||||
'#f7768e',
|
||||
'#9ece6a',
|
||||
'#e0af68',
|
||||
'#7aa2f7',
|
||||
'#bb9af7',
|
||||
'#7dcfff',
|
||||
'#c0caf5',
|
||||
},
|
||||
tab_bar = {
|
||||
background = '#16161e',
|
||||
active_tab = { bg_color = '#7aa2f7', fg_color = '#16161e', intensity = 'Bold' },
|
||||
inactive_tab = { bg_color = '#16161e', fg_color = '#a9b1d6' },
|
||||
inactive_tab_hover = { bg_color = '#1f2335', fg_color = '#c0caf5' },
|
||||
new_tab = { bg_color = '#16161e', fg_color = '#7aa2f7' },
|
||||
new_tab_hover = { bg_color = '#1f2335', fg_color = '#7dcfff' },
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
name = 'tokyonight',
|
||||
label = 'TOKYO-NIGHT',
|
||||
colors = colors,
|
||||
window_background_opacity = 1.0,
|
||||
cursor_blink_rate = 500,
|
||||
}
|
||||
Reference in New Issue
Block a user