Dotfiles V.1.1.5
Updated Neovim Plugins as well as cleaned up aerospace config and sketbar config and added fastfetch config
This commit is contained in:
39
.config/wezterm/plugins/sessionizer.lua
Normal file
39
.config/wezterm/plugins/sessionizer.lua
Normal file
@@ -0,0 +1,39 @@
|
||||
-- Pull in the wezterm API
|
||||
local wezterm = require("wezterm")
|
||||
|
||||
-- require plugin
|
||||
|
||||
local sessionizer = wezterm.plugin.require("https://github.com/mikkasendke/sessionizer.wezterm")
|
||||
|
||||
-- initialize module vairable
|
||||
|
||||
local module = {}
|
||||
|
||||
local my_schema = {
|
||||
"default",
|
||||
" EDU",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/nus_II",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/physik_I",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/analysis_II",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/informatik_I",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/grundzuege_recht",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/mathematische_methoden",
|
||||
wezterm.home_dir .. "/Informatik_ETH/SS25/Informatik",
|
||||
" Makerspace",
|
||||
wezterm.home_dir .. "/kicad",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/maker_space",
|
||||
" DEV",
|
||||
sessionizer.FdSearch({ fd_path = "/opt/homebrew/bin/fd", wezterm.home_dir .. "/Projects" }),
|
||||
}
|
||||
|
||||
-- key map
|
||||
|
||||
module.keys = {
|
||||
{
|
||||
key = "s",
|
||||
mods = "LEADER",
|
||||
action = sessionizer.show(my_schema),
|
||||
},
|
||||
}
|
||||
|
||||
return module
|
||||
57
.config/wezterm/plugins/smart_splits.lua
Normal file
57
.config/wezterm/plugins/smart_splits.lua
Normal file
@@ -0,0 +1,57 @@
|
||||
local wezterm = require("wezterm")
|
||||
|
||||
-- if you are *NOT* lazy-loading smart-splits.nvim (recommended)
|
||||
local function is_vim(pane)
|
||||
-- this is set by the plugin, and unset on ExitPre in Neovim
|
||||
return pane:get_user_vars().IS_NVIM == "true"
|
||||
end
|
||||
|
||||
-- if you *ARE* lazy-loading smart-splits.nvim (not recommended)
|
||||
-- you have to use this instead, but note that this will not work
|
||||
-- in all cases (e.g. over an SSH connection). Also note that
|
||||
-- `pane:get_foreground_process_name()` can have high and highly variable
|
||||
-- latency, so the other implementation of `is_vim()` will be more
|
||||
-- performant as well.
|
||||
|
||||
local direction_keys = {
|
||||
h = "Left",
|
||||
j = "Down",
|
||||
k = "Up",
|
||||
l = "Right",
|
||||
}
|
||||
|
||||
local function split_nav(resize_or_move, key)
|
||||
return {
|
||||
key = key,
|
||||
mods = resize_or_move == "resize" and "CTRL|SHIFT" or "CTRL",
|
||||
action = wezterm.action_callback(function(win, pane)
|
||||
if is_vim(pane) then
|
||||
-- pass the keys through to vim/nvim
|
||||
win:perform_action({
|
||||
SendKey = { key = key, mods = resize_or_move == "resize" and "CTRL|SHIFT" or "CTRL" },
|
||||
}, pane)
|
||||
else
|
||||
if resize_or_move == "resize" then
|
||||
win:perform_action({ AdjustPaneSize = { direction_keys[key], 3 } }, pane)
|
||||
else
|
||||
win:perform_action({ ActivatePaneDirection = direction_keys[key] }, pane)
|
||||
end
|
||||
end
|
||||
end),
|
||||
}
|
||||
end
|
||||
|
||||
return {
|
||||
keys = {
|
||||
-- move between split panes
|
||||
split_nav("move", "h"),
|
||||
split_nav("move", "j"),
|
||||
split_nav("move", "k"),
|
||||
split_nav("move", "l"),
|
||||
-- resize panes
|
||||
split_nav("resize", "h"),
|
||||
split_nav("resize", "j"),
|
||||
split_nav("resize", "k"),
|
||||
split_nav("resize", "l"),
|
||||
},
|
||||
}
|
||||
50
.config/wezterm/plugins/tabline.lua
Normal file
50
.config/wezterm/plugins/tabline.lua
Normal file
@@ -0,0 +1,50 @@
|
||||
-- Pull in the wezterm API
|
||||
|
||||
local wezterm = require("wezterm")
|
||||
|
||||
-- require plugin
|
||||
|
||||
local tabline = wezterm.plugin.require("https://github.com/michaelbrusegard/tabline.wez")
|
||||
|
||||
-- initialize module variable
|
||||
|
||||
local module = {}
|
||||
|
||||
-- initialize setup function
|
||||
|
||||
function module.apply_to_config(config)
|
||||
tabline.setup({
|
||||
options = {
|
||||
theme = "Catppuccin Macchiato",
|
||||
section_separators = {
|
||||
left = wezterm.nerdfonts.ple_right_half_circle_thick,
|
||||
right = wezterm.nerdfonts.ple_left_half_circle_thick,
|
||||
},
|
||||
component_separators = {
|
||||
left = wezterm.nerdfonts.ple_left_half_circle_thin,
|
||||
right = wezterm.nerdfonts.ple_left_half_circle_thin,
|
||||
},
|
||||
tab_separators = {
|
||||
left = wezterm.nerdfonts.ple_right_half_circle_thick,
|
||||
right = wezterm.nerdfonts.ple_left_half_circle_thick,
|
||||
},
|
||||
},
|
||||
sections = {
|
||||
tab_active = {
|
||||
"index",
|
||||
":",
|
||||
"tab",
|
||||
},
|
||||
tab_inactive = {
|
||||
"index",
|
||||
":",
|
||||
"tab",
|
||||
},
|
||||
tabline_x = {},
|
||||
tabline_y = {},
|
||||
tabline_z = { "datetime" },
|
||||
},
|
||||
})
|
||||
end
|
||||
|
||||
return module
|
||||
Reference in New Issue
Block a user