From e966d5328d6f328546db213278d1a1a6cd2f58d5 Mon Sep 17 00:00:00 2001 From: iceyrazor Date: Sat, 24 May 2025 04:08:28 -0500 Subject: install scripts. reorganization. soon to be deployable --- env/.config/wezterm/colors.lua | 26 ++++ env/.config/wezterm/reference.lua | 319 ++++++++++++++++++++++++++++++++++++++ env/.config/wezterm/wezterm.lua | 31 ++++ 3 files changed, 376 insertions(+) create mode 100644 env/.config/wezterm/colors.lua create mode 100755 env/.config/wezterm/reference.lua create mode 100755 env/.config/wezterm/wezterm.lua (limited to 'env/.config/wezterm') diff --git a/env/.config/wezterm/colors.lua b/env/.config/wezterm/colors.lua new file mode 100644 index 0000000..e77256e --- /dev/null +++ b/env/.config/wezterm/colors.lua @@ -0,0 +1,26 @@ +return { + foreground = '#e6e6e6', + background = '#04000a', + cursor_fg = '#fabd2f', + selection_bg = '#08000a', + ansi = { + '#263640', + '#d12f2c', + '#819400', + '#b08500', + '#2587cc', + '#696ebf', + '#289c93', + '#bfbaac', + }, + brights = { + '#4a697d', + '#fa3935', + '#a4bd00', + '#d9a400', + '#09a2f5', + '#8086e8', + '#00c5ba', + '#fdf6e3', + } +} \ No newline at end of file diff --git a/env/.config/wezterm/reference.lua b/env/.config/wezterm/reference.lua new file mode 100755 index 0000000..603e272 --- /dev/null +++ b/env/.config/wezterm/reference.lua @@ -0,0 +1,319 @@ +local wezterm = require 'wezterm' + +local config = {} +local act = wezterm.action +config.default_prog = { 'zsh', '-l' } --config.font = wezterm.font 'Classic Console' config.font_size = 15 config.font = wezterm.font 'Source Code Pro' +-- tab bar +config.enable_tab_bar = false +--config.hide_tab_bar_if_only_one_tab = false +--config.tab_bar_at_bottom = true +--config.use_fancy_tab_bar = false +--config.show_tabs_in_tab_bar = true +--config.show_new_tab_button_in_tab_bar = false +--config.tab_and_split_indices_are_zero_based = true +--config.font = wezterm.font 'CozetteVector' + + +-- In newer versions of wezterm, use the config_builder which will +-- help provide clearer error messages +--[[ +if wezterm.config_builder then + config = wezterm.config_builder() +end +--]] + +config.font = wezterm.font_with_fallback { + 'B612 Mono', + --'Inconsolata', + -- 'CozetteVector', --has weird offset with japanese. きki becomes せse and vice versa + 'JetBrainsMono', + 'JetBrainsMono Nerd Font', + 'JetBrainsMono Nerd Font Mono', + 'IPAGothic', + 'FreeMono', +} +--config.font = wezterm.font 'Inconsolata' +config.font_size = 13 +--config.font = wezterm.font 'Caesar Dressing' +--config.font_size = 13 + +--config.window_background_image = "/home/iceyrazor/stuff/media/wallpapers/hfdsjkldysa87gr9eahgf4rjek ltjkedjkaslfjd salk 9270221.jpg" +--[[ +config.window_background_image_hsb = { + -- Darken the background image by reducing it to 1/3rd + brightness = 0.05, + + -- You can adjust the hue by scaling its value. + -- a multiplier of 1.0 leaves the value unchanged. + hue = 1.0, + + -- You can adjust the saturation also. + saturation = 1.0, +} +]]-- + +config.colors={ + foreground = '#e6e6e6', + --background = '#101010', + background = '#04000a', + cursor_fg = '#fabd2f', + ansi = { + '#263640', + '#d12f2c', + '#819400', + '#b08500', + '#2587cc', + '#696ebf', + '#289c93', + '#bfbaac', + }, + brights = { + '#4a697d', + '#fa3935', + '#a4bd00', + '#d9a400', + '#09a2f5', + '#8086e8', + '#00c5ba', + '#fdf6e3', + }, +} + +config.window_background_opacity = 0.8 + +local function tab_title(tab_info) + local title = tab_info.tab_title + -- if the tab title is explicitly set, take that + if title and #title > 0 then + return title + end + -- Otherwise, use the title from the active pane + -- in that tab + return tab_info.active_pane.title +end + +-- The filled in variant of the < symbol +local SOLID_LEFT_ARROW = wezterm.nerdfonts.pl_right_hard_divider + +-- The filled in variant of the > symbol +local SOLID_RIGHT_ARROW = wezterm.nerdfonts.pl_left_hard_divider +--[[ +wezterm.on( + 'format-tab-title', + function(tab, tabs, panes, config2, hover, max_width) + local edge_background = '#0b0022' + local background = '#1b1032' + local foreground = '#808080' + + if tab.is_active then + background = '#2b2042' + foreground = '#c0c0c0' + elseif hover then + background = '#3b3052' + foreground = '#909090' + end + + local edge_foreground = background + + local title = tab_title(tab) + + -- ensure that the titles fit in the available space, + -- and that we have room for the edges. + title = wezterm.truncate_right(title, max_width - 2) + + return { + { Background = { Color = edge_background } }, + { Foreground = { Color = edge_foreground } }, + { Text = SOLID_LEFT_ARROW }, + { Background = { Color = background } }, + { Foreground = { Color = foreground } }, + { Text = title }, + { Background = { Color = edge_background } }, + { Foreground = { Color = edge_foreground } }, + { Text = SOLID_RIGHT_ARROW }, + } + end +) +--]] + +--[[ +local keysmain = { + { key = 'h', mods = 'SHIFT|CTRL', action = act.ActivatePaneDirection 'Left' }, + { key = 'h', mods = 'SHIFT|ALT|CTRL', action = act.AdjustPaneSize{ 'Left', 1 } }, + { key = 'l', mods = 'SHIFT|CTRL', action = act.ActivatePaneDirection 'Right' }, + { key = 'l', mods = 'SHIFT|ALT|CTRL', action = act.AdjustPaneSize{ 'Right', 1 } }, + { key = 'k', mods = 'SHIFT|CTRL', action = act.ActivatePaneDirection 'Up' }, + { key = 'k', mods = 'SHIFT|ALT|CTRL', action = act.AdjustPaneSize{ 'Up', 1 } }, + { key = 'j', mods = 'SHIFT|CTRL', action = act.ActivatePaneDirection 'Down' }, + { key = 'j', mods = 'SHIFT|ALT|CTRL', action = act.AdjustPaneSize{ 'Down', 1 } }, +} +]]-- + +-- WezTerm Keybindings Documentation by dragonlobster +-- =================================================== +-- Leader Key: +-- The leader key is set to ALT + q, with a timeout of 2000 milliseconds (2 seconds). +-- To execute any keybinding, press the leader key (ALT + q) first, then the corresponding key. + +-- Keybindings: +-- 1. Tab Management: +-- - LEADER + c: Create a new tab in the current pane's domain. +-- - LEADER + x: Close the current pane (with confirmation). +-- - LEADER + b: Switch to the previous tab. +-- - LEADER + n: Switch to the next tab. +-- - LEADER + : Switch to a specific tab (0–9). + +-- 2. Pane Splitting: +-- - LEADER + |: Split the current pane horizontally into two panes. +-- - LEADER + -: Split the current pane vertically into two panes. + +-- 3. Pane Navigation: +-- - LEADER + h: Move to the pane on the left. +-- - LEADER + j: Move to the pane below. +-- - LEADER + k: Move to the pane above. +-- - LEADER + l: Move to the pane on the right. + +-- 4. Pane Resizing: +-- - LEADER + LeftArrow: Increase the pane size to the left by 5 units. +-- - LEADER + RightArrow: Increase the pane size to the right by 5 units. +-- - LEADER + DownArrow: Increase the pane size downward by 5 units. +-- - LEADER + UpArrow: Increase the pane size upward by 5 units. + +-- 5. Status Line: +-- - The status line indicates when the leader key is active, displaying an ocean wave emoji (🌊). + +-- Miscellaneous Configurations: +-- - Tabs are shown even if there's only one tab. +-- - The tab bar is located at the bottom of the terminal window. +-- - Tab and split indices are zero-based. + +-- For example, changing the color scheme: +-- config.color_scheme = "Catppuccin Macchiato" +-- config.window_decorations = "RESIZE" + +-- tmux +config.leader = { key = "Space", mods = "SHIFT", timrout_milliseconds = 20000 } +config.keys = { + { + mods = "LEADER", + key = "c", + action = wezterm.action.SpawnTab "CurrentPaneDomain", + }, + { + mods = "LEADER", + key = "x", + action = wezterm.action.CloseCurrentPane { confirm = true } + }, + { + mods = "LEADER", + key = "b", + action = wezterm.action.ActivateTabRelative(-1) + }, + { + mods = "LEADER", + key = "n", + action = wezterm.action.ActivateTabRelative(1) + }, + { + mods = "LEADER", + key = "\\", + action = wezterm.action.SplitHorizontal { domain = "CurrentPaneDomain" } + }, + { + mods = "LEADER", + key = "-", + action = wezterm.action.SplitVertical { domain = "CurrentPaneDomain" } + }, + { + mods = "LEADER", + key = "h", + action = wezterm.action.ActivatePaneDirection "Left" + }, + { + mods = "LEADER", + key = "j", + action = wezterm.action.ActivatePaneDirection "Down" + }, + { + mods = "LEADER", + key = "k", + action = wezterm.action.ActivatePaneDirection "Up" + }, + { + mods = "LEADER", + key = "l", + action = wezterm.action.ActivatePaneDirection "Right" + }, + { + mods = "LEADER", + key = "LeftArrow", + action = wezterm.action.AdjustPaneSize { "Left", 5 } + }, + { + mods = "LEADER", + key = "RightArrow", + action = wezterm.action.AdjustPaneSize { "Right", 5 } + }, + { + mods = "LEADER", + key = "DownArrow", + action = wezterm.action.AdjustPaneSize { "Down", 5 } + }, + { + mods = "LEADER", + key = "UpArrow", + action = wezterm.action.AdjustPaneSize { "Up", 5 } + }, +} + +for i = 1, 9 do + -- leader + number to activate that tab + table.insert(config.keys, { + key = tostring(i), + mods = "LEADER", + action = wezterm.action.ActivateTab(i-1), + }) +end + + +-- tmux status +wezterm.on("update-right-status", function(window, _) + local SOLID_LEFT_ARROW = "" + --local ARROW_FOREGROUND = { Foreground = { Color = "#c6a0f6" } } + -- local ARROW_FOREGROUND = { Foreground = { Color = "#000000" } } + local prefix = "" + + if window:leader_is_active() then + prefix = " " .. utf8.char(0x1f30a) -- ocean wave + SOLID_LEFT_ARROW = utf8.char(0xe0b2) + end + + if window:active_tab():tab_id() ~= 0 then + -- ARROW_FOREGROUND = { Foreground = { Color = "#1e2030" } } + -- ARROW_FOREGROUND = { Foreground = { Color = "#000000" } } + end -- arrow color based on if tab is first pane + + window:set_left_status(wezterm.format { + --{ Background = { Color = "#b7bdf8" } }, + -- { Background = { Color = "#000000" } }, + { Text = prefix }, + ARROW_FOREGROUND, + { Text = SOLID_LEFT_ARROW } + }) +end) + + +config.unix_domains = { + { + name = 'unix', + no_serve_automatically = false, + }, +} + +-- This causes `wezterm` to act as though it was started as +-- `wezterm connect unix` by default, connecting to the unix +-- domain on startup. +-- If you prefer to connect manually, leave out this line. +-- config.default_gui_startup_args = { 'connect', 'unix' } + +return config diff --git a/env/.config/wezterm/wezterm.lua b/env/.config/wezterm/wezterm.lua new file mode 100755 index 0000000..df15edd --- /dev/null +++ b/env/.config/wezterm/wezterm.lua @@ -0,0 +1,31 @@ +local wezterm = require 'wezterm' +local colors= require 'colors' + +local config = {} +config.default_prog = { 'zsh', '-l' } --config.font = wezterm.font 'Classic Console' config.font_size = 15 config.font = wezterm.font 'Source Code Pro' +config.enable_tab_bar = false + +config.font = wezterm.font_with_fallback { + 'B612 Mono', + --'Inconsolata', + -- 'CozetteVector', --has weird offset with japanese. きki becomes せse and vice versa + 'JetBrainsMono', + 'JetBrainsMono Nerd Font', + 'JetBrainsMono Nerd Font Mono', + 'IPAGothic', + 'FreeMono', +} +config.font_size = 13 + +config.colors=colors + +config.window_background_opacity = 0.8 + +config.unix_domains = { + { + name = 'unix', + no_serve_automatically = false, + }, +} + +return config -- cgit v1.3