Compare commits
2 Commits
dde9c63864
...
94e3daa04b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
94e3daa04b | ||
|
|
5b723ba7cf |
@ -1,35 +0,0 @@
|
|||||||
##################
|
|
||||||
### ANIMATIONS ###
|
|
||||||
##################
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
|
||||||
|
|
||||||
animations {
|
|
||||||
enabled = yes, please :)
|
|
||||||
|
|
||||||
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
|
||||||
|
|
||||||
bezier = easeOutQuint,0.23,1,0.32,1
|
|
||||||
bezier = easeInOutCubic,0.65,0.05,0.36,1
|
|
||||||
bezier = linear,0,0,1,1
|
|
||||||
bezier = almostLinear,0.5,0.5,0.75,1.0
|
|
||||||
bezier = quick,0.15,0,0.1,1
|
|
||||||
|
|
||||||
animation = global, 1, 10, default
|
|
||||||
animation = border, 1, 5.39, easeOutQuint
|
|
||||||
animation = windows, 1, 4.79, easeOutQuint
|
|
||||||
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
|
|
||||||
animation = windowsOut, 1, 1.49, linear, popin 87%
|
|
||||||
animation = fadeIn, 1, 1.73, almostLinear
|
|
||||||
animation = fadeOut, 1, 1.46, almostLinear
|
|
||||||
animation = fade, 1, 3.03, quick
|
|
||||||
animation = layers, 1, 3.81, easeOutQuint
|
|
||||||
animation = layersIn, 1, 4, easeOutQuint, fade
|
|
||||||
animation = layersOut, 1, 1.5, linear, fade
|
|
||||||
animation = fadeLayersIn, 1, 1.79, almostLinear
|
|
||||||
animation = fadeLayersOut, 1, 1.39, almostLinear
|
|
||||||
animation = workspaces, 1, 1.94, almostLinear, fade
|
|
||||||
animation = workspacesIn, 1, 1.21, almostLinear, fade
|
|
||||||
animation = workspacesOut, 1, 1.94, almostLinear, fade
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,66 +0,0 @@
|
|||||||
###############
|
|
||||||
### GENERAL ###
|
|
||||||
###############
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#general
|
|
||||||
|
|
||||||
general {
|
|
||||||
gaps_in = 5
|
|
||||||
gaps_out = 15
|
|
||||||
|
|
||||||
border_size = 3
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
|
||||||
col.inactive_border = rgba(595959aa)
|
|
||||||
|
|
||||||
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
|
||||||
resize_on_border = false
|
|
||||||
|
|
||||||
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
|
||||||
allow_tearing = false
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
##################
|
|
||||||
### DECORATION ###
|
|
||||||
##################
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
|
||||||
|
|
||||||
decoration {
|
|
||||||
rounding = 10
|
|
||||||
rounding_power = 5
|
|
||||||
|
|
||||||
# Change transparency of focused and unfocused windows
|
|
||||||
active_opacity = 1.0
|
|
||||||
inactive_opacity = 0.95
|
|
||||||
|
|
||||||
shadow {
|
|
||||||
enabled = true
|
|
||||||
range = 4
|
|
||||||
render_power = 3
|
|
||||||
color = rgba(1a1a1aee)
|
|
||||||
}
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
|
||||||
blur {
|
|
||||||
enabled = true
|
|
||||||
size = 3
|
|
||||||
passes = 1
|
|
||||||
|
|
||||||
vibrancy = 0.1696
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
############
|
|
||||||
### MISC ###
|
|
||||||
############
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
|
||||||
|
|
||||||
misc {
|
|
||||||
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
|
||||||
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
#################
|
|
||||||
### AUTOSTART ###
|
|
||||||
#################
|
|
||||||
|
|
||||||
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
|
||||||
|
|
||||||
exec-once = /home/iborrelli/.config/hypr/waybar.sh
|
|
||||||
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
#############################
|
|
||||||
### ENVIRONMENT VARIABLES ###
|
|
||||||
#############################
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Environment-variables/
|
|
||||||
|
|
||||||
env = XCURSOR_SIZE,24
|
|
||||||
env = HYPRCURSOR_SIZE,24
|
|
||||||
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
$hypr_config_dir = ~/.config/hypr
|
|
||||||
source = $hypr_config_dir/monitors.conf
|
|
||||||
source = $hypr_config_dir/programs.conf
|
|
||||||
source = $hypr_config_dir/autostart.conf
|
|
||||||
source = $hypr_config_dir/env.conf
|
|
||||||
source = $hypr_config_dir/appearance.conf
|
|
||||||
source = $hypr_config_dir/layout.conf
|
|
||||||
source = $hypr_config_dir/animations.conf
|
|
||||||
source = $hypr_config_dir/input.conf
|
|
||||||
source = $hypr_config_dir/keybindings.conf
|
|
||||||
source = $hypr_config_dir/rules.conf
|
|
||||||
|
|
||||||
# Wiki
|
|
||||||
# https://wiki.hyprland.org/Configuring/
|
|
||||||
@ -1,33 +0,0 @@
|
|||||||
#############
|
|
||||||
### INPUT ###
|
|
||||||
#############
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#input
|
|
||||||
input {
|
|
||||||
kb_layout = us
|
|
||||||
kb_variant =
|
|
||||||
kb_model =
|
|
||||||
kb_options =
|
|
||||||
kb_rules =
|
|
||||||
|
|
||||||
follow_mouse = 1
|
|
||||||
|
|
||||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
|
||||||
|
|
||||||
touchpad {
|
|
||||||
natural_scroll = false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
|
||||||
gestures {
|
|
||||||
workspace_swipe = false
|
|
||||||
}
|
|
||||||
|
|
||||||
# Example per-device config
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
|
||||||
device {
|
|
||||||
name = epic-mouse-v1
|
|
||||||
sensitivity = -0.5
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,91 +0,0 @@
|
|||||||
###################
|
|
||||||
### KEYBINDINGS ###
|
|
||||||
###################
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
|
||||||
$mainMod = SUPER # Sets "Windows" key as main modifier
|
|
||||||
$mod2 = ALT
|
|
||||||
|
|
||||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
|
||||||
bind = $mainMod, Q, exec, $terminal
|
|
||||||
bind = $mainMod, Return, exec, $terminal
|
|
||||||
bind = $mainMod, C, killactive,
|
|
||||||
bind = $mainMod, M, exit,
|
|
||||||
bind = $mainMod, E, exec, $fileManager
|
|
||||||
bind = $mainMod, V, togglefloating,
|
|
||||||
bind = $mainMod, R, exec, $menu
|
|
||||||
bind = $mainMod, P, pseudo, # dwindle
|
|
||||||
bind = $mainMod, J, togglesplit, # dwindle
|
|
||||||
bind = $mainMod, F, fullscreen
|
|
||||||
bind = $mainMod, B, exec, $browser
|
|
||||||
|
|
||||||
# Shift workspace to next monitor
|
|
||||||
bind = $mainMod, Semicolon, movecurrentworkspacetomonitor, +1
|
|
||||||
bind = $mainMod Shift, Semicolon, movecurrentworkspacetomonitor, -1
|
|
||||||
|
|
||||||
# Move focus with mainMod + (arrow keys / hjkl)
|
|
||||||
bind = $mainMod, left, movefocus, l
|
|
||||||
bind = $mainMod, right, movefocus, r
|
|
||||||
bind = $mainMod, up, movefocus, u
|
|
||||||
bind = $mainMod, down, movefocus, d
|
|
||||||
bind = $mainMod, h, movefocus, l
|
|
||||||
bind = $mainMod, l, movefocus, r
|
|
||||||
bind = $mainMod, k, movefocus, u
|
|
||||||
bind = $mainMod, j, movefocus, d
|
|
||||||
|
|
||||||
# Switch workspaces with mainMod + [0-9]
|
|
||||||
bind = $mainMod, 1, workspace, 1
|
|
||||||
bind = $mainMod, 2, workspace, 2
|
|
||||||
bind = $mainMod, 3, workspace, 3
|
|
||||||
bind = $mainMod, 4, workspace, 4
|
|
||||||
bind = $mainMod, 5, workspace, 5
|
|
||||||
bind = $mainMod, 6, workspace, 6
|
|
||||||
bind = $mainMod, 7, workspace, 7
|
|
||||||
bind = $mainMod, 8, workspace, 8
|
|
||||||
bind = $mainMod, 9, workspace, 9
|
|
||||||
bind = $mainMod, 0, workspace, 10
|
|
||||||
|
|
||||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
|
||||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
|
||||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
|
||||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
|
||||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
|
||||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
|
||||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
|
||||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
|
||||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
|
||||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
|
||||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
|
||||||
|
|
||||||
# Example special workspace (scratchpad)
|
|
||||||
bind = $mainMod, S, togglespecialworkspace, magic
|
|
||||||
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
|
||||||
|
|
||||||
# Scroll through existing workspaces with mainMod + scroll or mod2 + (arrow keys / hjkl)
|
|
||||||
bind = $mainMod, mouse_down, workspace, e+1
|
|
||||||
bind = $mainMod, mouse_up, workspace, e-1
|
|
||||||
bind = $mod2, right, workspace, e+1
|
|
||||||
bind = $mod2, left, workspace, e-1
|
|
||||||
bind = $mod2, h, workspace, e-1
|
|
||||||
bind = $mod2, j, workspace, e-1
|
|
||||||
bind = $mod2, k, workspace, e+1
|
|
||||||
bind = $mod2, l, workspace, e+1
|
|
||||||
|
|
||||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
|
||||||
bindm = $mainMod, mouse:272, movewindow
|
|
||||||
bindm = $mainMod, mouse:273, resizewindow
|
|
||||||
|
|
||||||
# Laptop multimedia keys for volume and LCD brightness
|
|
||||||
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
|
||||||
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
|
||||||
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
|
||||||
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
|
||||||
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
|
|
||||||
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
|
|
||||||
|
|
||||||
# Requires playerctl
|
|
||||||
bindl = , XF86AudioNext, exec, playerctl next
|
|
||||||
bindl = , XF86AudioPause, exec, playerctl play-pause
|
|
||||||
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
|
||||||
bindl = , XF86AudioPrev, exec, playerctl previous
|
|
||||||
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
##############
|
|
||||||
### LAYOUT ###
|
|
||||||
##############
|
|
||||||
|
|
||||||
general {
|
|
||||||
layout = dwindle
|
|
||||||
}
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
|
||||||
dwindle {
|
|
||||||
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
|
||||||
preserve_split = true # You probably want this
|
|
||||||
}
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
|
||||||
master {
|
|
||||||
new_status = master
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
################
|
|
||||||
### MONITORS ###
|
|
||||||
################
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
|
||||||
|
|
||||||
monitor=,preferred,auto,auto
|
|
||||||
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
###################
|
|
||||||
### MY PROGRAMS ###
|
|
||||||
###################
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
|
||||||
|
|
||||||
$terminal = kitty
|
|
||||||
$fileManager = zsh -c 'source ~/.zshrc && kitty yazi'
|
|
||||||
$menu = wofi --show drun
|
|
||||||
$browser = firefox
|
|
||||||
$email = thunderbird
|
|
||||||
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
|
|
||||||
##############################
|
|
||||||
### WINDOWS AND WORKSPACES ###
|
|
||||||
##############################
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
|
||||||
|
|
||||||
# Ignore maximize requests from apps. You'll probably like this.
|
|
||||||
windowrule = suppressevent maximize, class:.*
|
|
||||||
|
|
||||||
# Fix some dragging issues with XWayland
|
|
||||||
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
|
||||||
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
CONFIG_FILES="$HOME/.config/waybar/config.jsonc $HOME/.config/waybar/style.css"
|
|
||||||
|
|
||||||
trap "killall waybar" EXIT
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
waybar &
|
|
||||||
inotifywait -e create,modify $CONFIG_FILES
|
|
||||||
killall waybar
|
|
||||||
done
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
-- Setup leader keys before loading lazy.nvim
|
|
||||||
vim.g.mapleader = " "
|
|
||||||
vim.g.maplocalleader = "\\"
|
|
||||||
|
|
||||||
-- Initialize lazy.nvim
|
|
||||||
require("config.lazy")
|
|
||||||
|
|
||||||
-- Source other configuration files
|
|
||||||
require("keybindings")
|
|
||||||
require("settings")
|
|
||||||
@ -1,37 +0,0 @@
|
|||||||
-- Bootstrap lazy.nvim
|
|
||||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
|
||||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
|
||||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
|
||||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
|
||||||
if vim.v.shell_error ~= 0 then
|
|
||||||
vim.api.nvim_echo({
|
|
||||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
|
||||||
{ out, "WarningMsg" },
|
|
||||||
{ "\nPress any key to exit..." },
|
|
||||||
}, true, {})
|
|
||||||
vim.fn.getchar()
|
|
||||||
os.exit(1)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
vim.opt.rtp:prepend(lazypath)
|
|
||||||
|
|
||||||
-- Setup lazy.nvim
|
|
||||||
require("lazy").setup({
|
|
||||||
spec = {
|
|
||||||
-- import your plugins
|
|
||||||
{ import = "plugins" },
|
|
||||||
{ import = "plugins.file_navigation" },
|
|
||||||
{ import = "plugins.language_support" },
|
|
||||||
{ import = "plugins.lsp" },
|
|
||||||
{ import = "plugins.ui" },
|
|
||||||
{ import = "plugins.util" },
|
|
||||||
},
|
|
||||||
|
|
||||||
-- colorscheme that will be used when installing plugins.
|
|
||||||
install = { colorscheme = { "habamax" } },
|
|
||||||
-- automatically check for plugin updates
|
|
||||||
checker = { enabled = true },
|
|
||||||
-- don't notify on changes to configs
|
|
||||||
change_detection = { enabled = false },
|
|
||||||
})
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
local map = vim.api.nvim_set_keymap
|
|
||||||
local opts = { noremap = true, silent = true }
|
|
||||||
|
|
||||||
opts.desc = "Navigate window left"
|
|
||||||
map("n", "<leader>h", "<C-w>h", opts)
|
|
||||||
|
|
||||||
opts.desc = "Navigate window down"
|
|
||||||
map("n", "<leader>j", "<C-w>j", opts)
|
|
||||||
|
|
||||||
opts.desc = "Navigate window up"
|
|
||||||
map("n", "<leader>k", "<C-w>k", opts)
|
|
||||||
|
|
||||||
opts.desc = "Navigate window right"
|
|
||||||
map("n", "<leader>l", "<C-w>l", opts)
|
|
||||||
@ -1,74 +0,0 @@
|
|||||||
return {
|
|
||||||
{
|
|
||||||
"comfysage/cuddlefish.nvim",
|
|
||||||
config = function()
|
|
||||||
require("cuddlefish").setup({
|
|
||||||
theme = {
|
|
||||||
accent = "pink",
|
|
||||||
},
|
|
||||||
editor = {
|
|
||||||
transparent_background = false,
|
|
||||||
},
|
|
||||||
style = {
|
|
||||||
tabline = { "reverse" },
|
|
||||||
search = { "italic", "reverse" },
|
|
||||||
incsearch = { "italic", "reverse" },
|
|
||||||
types = { "italic" },
|
|
||||||
keyword = { "italic" },
|
|
||||||
comment = { "italic" },
|
|
||||||
},
|
|
||||||
})
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
{ "maxmx03/dracula.nvim" },
|
|
||||||
{
|
|
||||||
"rebelot/kanagawa.nvim",
|
|
||||||
},
|
|
||||||
{ "2giosangmitom/nightfall.nvim" },
|
|
||||||
{
|
|
||||||
"olimorris/onedarkpro.nvim",
|
|
||||||
},
|
|
||||||
{ "pauchiner/pastelnight.nvim" },
|
|
||||||
{ "numToStr/Sakura.nvim" },
|
|
||||||
{
|
|
||||||
"folke/tokyonight.nvim",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"yorumicolors/yorumi.nvim",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"zaldih/themery.nvim",
|
|
||||||
lazy = false,
|
|
||||||
priority = 1000,
|
|
||||||
config = function()
|
|
||||||
vim.cmd("colorscheme deeper-night")
|
|
||||||
local themery = require("themery")
|
|
||||||
|
|
||||||
themery.setup({
|
|
||||||
-- List of swappable colorschemes.
|
|
||||||
themes = {
|
|
||||||
"cuddlefish",
|
|
||||||
"deeper-night",
|
|
||||||
"onedark_dark",
|
|
||||||
"dracula",
|
|
||||||
"yorumi",
|
|
||||||
"nord",
|
|
||||||
"tokyonight-moon",
|
|
||||||
"kanagawa-dragon",
|
|
||||||
"sakura",
|
|
||||||
"pastelnight",
|
|
||||||
},
|
|
||||||
livePreview = true, -- Apply theme while picking. Default to true.
|
|
||||||
})
|
|
||||||
|
|
||||||
themery.setThemeByIndex(1, true)
|
|
||||||
|
|
||||||
vim.keymap.set("n", "<leader>tt", function()
|
|
||||||
local numberOfThemes = #themery.getAvailableThemes()
|
|
||||||
local currentThemeIndex = themery.getCurrentTheme().index
|
|
||||||
local nextThemeIndex = (currentThemeIndex % numberOfThemes) + 1
|
|
||||||
themery.setThemeByIndex(nextThemeIndex, true)
|
|
||||||
end, { noremap = true })
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
-- Set basic options
|
|
||||||
vim.o.number = true -- Show line numbers
|
|
||||||
vim.o.relativenumber = true -- Show relative line numbers
|
|
||||||
vim.o.tabstop = 4 -- Number of spaces tabs count for
|
|
||||||
vim.o.shiftwidth = 4 -- Number of spaces to use for each step of (auto)indent
|
|
||||||
vim.o.expandtab = true -- Convert tabs to spaces
|
|
||||||
vim.o.smartindent = true -- Insert indents automatically
|
|
||||||
|
|
||||||
vim.filetype.add({
|
|
||||||
pattern = {
|
|
||||||
[".*/etc/nginx/.*/.*%.conf"] = "nginx", -- Make conf files in the nginx folder can be formatted with nginx formatter
|
|
||||||
},
|
|
||||||
})
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
##################
|
|
||||||
### CATPPUCCIN ###
|
|
||||||
##################
|
|
||||||
|
|
||||||
set -g @catppuccin_flavor "frappe"
|
|
||||||
|
|
||||||
set -g status-right-length 100
|
|
||||||
set -g status-left-length 100
|
|
||||||
|
|
||||||
# Window
|
|
||||||
set -g @catppuccin_window_status_style "rounded"
|
|
||||||
|
|
||||||
run ~/.config/tmux/plugins/tmux/catppuccin.tmux
|
|
||||||
|
|
||||||
## Window global/default configuration
|
|
||||||
set -g @catppuccin_window_text " #W"
|
|
||||||
set -g @catppuccin_window_status "icon"
|
|
||||||
set -g @catppuccin_window_default_fill "number"
|
|
||||||
set -g @catppuccin_window_number_position "left"
|
|
||||||
|
|
||||||
## Window current configuration
|
|
||||||
set -g @catppuccin_window_current_text " #W"
|
|
||||||
set -g @catppuccin_window_current_fill "all"
|
|
||||||
set -g @catppuccin_window_current_number_color "#{@thm_maroon}"
|
|
||||||
|
|
||||||
set -g @catppuccin_window_text_color "#{@thm_surface_0}"
|
|
||||||
set -g @catppuccin_window_number_color "#{@thm_rosewater}"
|
|
||||||
|
|
||||||
# Status
|
|
||||||
set -gF status-left ""
|
|
||||||
set -gF status-right "#{@catppuccin_status_session}"
|
|
||||||
set -agF status-right "#{@catppuccin_status_directory}"
|
|
||||||
set -agF status-right "#{@catppuccin_status_user}"
|
|
||||||
set -agF status-right "#{@catppuccin_status_host}"
|
|
||||||
set -agF status-right "#{E:@catppuccin_status_date_time}"
|
|
||||||
@ -1,111 +0,0 @@
|
|||||||
###############
|
|
||||||
### PLUGINS ###
|
|
||||||
###############
|
|
||||||
|
|
||||||
set -g default-terminal "tmux-256color"
|
|
||||||
|
|
||||||
set -g @plugin 'catppuccin/tmux#v2.1.3'
|
|
||||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
|
||||||
set -g @plugin 'tmux-plugins/tpm'
|
|
||||||
|
|
||||||
|
|
||||||
################
|
|
||||||
### BINDINGS ###
|
|
||||||
################
|
|
||||||
|
|
||||||
### PREFIXED ###
|
|
||||||
|
|
||||||
# r : RELOAD
|
|
||||||
bind r source-file ~/.config/tmux/tmux.conf
|
|
||||||
|
|
||||||
# | : HORIZONTAL SPLIT
|
|
||||||
bind | split-window -h
|
|
||||||
|
|
||||||
# - : VERTICAL SPLIT
|
|
||||||
bind - split-window -v
|
|
||||||
|
|
||||||
# X : KILL PANE
|
|
||||||
bind X kill-pane
|
|
||||||
|
|
||||||
# Alt-arrow : RESIZE 1 ROW
|
|
||||||
bind M-Left resize-pane -L 1 \; switch-client -T prefix
|
|
||||||
bind M-Down resize-pane -D 1 \; switch-client -T prefix
|
|
||||||
bind M-Up resize-pane -U 1 \; switch-client -T prefix
|
|
||||||
bind M-Right resize-pane -R 1 \; switch-client -T prefix
|
|
||||||
|
|
||||||
# C-arrow : RESIZE 5 ROWS
|
|
||||||
bind C-Left resize-pane -L 5 \; switch-client -T prefix
|
|
||||||
bind C-Down resize-pane -D 5 \; switch-client -T prefix
|
|
||||||
bind C-Up resize-pane -U 5 \; switch-client -T prefix
|
|
||||||
bind C-Right resize-pane -R 5 \; switch-client -T prefix
|
|
||||||
|
|
||||||
# Alt-c : CHANGE SESSION ROOT DIR
|
|
||||||
bind M-c attach-session -c "#{pane_current_path}"
|
|
||||||
|
|
||||||
|
|
||||||
### UNPREFIXED ###
|
|
||||||
|
|
||||||
# Alt-arrow : SWITCH PANES
|
|
||||||
bind -n M-Left select-pane -L
|
|
||||||
bind -n M-Down select-pane -D
|
|
||||||
bind -n M-Up select-pane -U
|
|
||||||
bind -n M-Right select-pane -R
|
|
||||||
|
|
||||||
# Alt-hjkl : SWITCH PANES
|
|
||||||
bind -n M-h select-pane -L
|
|
||||||
bind -n M-j select-pane -D
|
|
||||||
bind -n M-k select-pane -U
|
|
||||||
bind -n M-l select-pane -R
|
|
||||||
|
|
||||||
# Alt-z : FULL SCREEN
|
|
||||||
bind -n M-z resize-pane -Z
|
|
||||||
|
|
||||||
|
|
||||||
################
|
|
||||||
### SETTINGS ###
|
|
||||||
################
|
|
||||||
|
|
||||||
# Enable mouse
|
|
||||||
set -g mouse on
|
|
||||||
|
|
||||||
# Don't rename windows automatically
|
|
||||||
set-option -g allow-rename off
|
|
||||||
|
|
||||||
# Don't do anything when a 'bell' rings
|
|
||||||
set -g visual-activity off
|
|
||||||
set -g visual-bell off
|
|
||||||
set -g visual-silence off
|
|
||||||
setw -g monitor-activity off
|
|
||||||
set -g bell-action none
|
|
||||||
|
|
||||||
|
|
||||||
#######################
|
|
||||||
### VI MODE COPYING ###
|
|
||||||
#######################
|
|
||||||
|
|
||||||
# Enable Vi keybindings in copy mode
|
|
||||||
set-window-option -g mode-keys vi
|
|
||||||
|
|
||||||
# Bind 'v' to start selection in copy mode
|
|
||||||
bind-key -T copy-mode-vi v send -X begin-selection
|
|
||||||
|
|
||||||
# Bind 'y' to copy the selection to the system clipboard
|
|
||||||
bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel
|
|
||||||
|
|
||||||
# Bind 'Y' to copy the entire buffer to the system clipboard
|
|
||||||
bind-key -T copy-mode-vi Y send -X copy-pipe-and-cancel
|
|
||||||
|
|
||||||
|
|
||||||
############
|
|
||||||
### LOAD ###
|
|
||||||
############
|
|
||||||
|
|
||||||
# Catppuccin conf
|
|
||||||
source-file ~/.config/tmux/catppuccin.conf
|
|
||||||
|
|
||||||
# Local conf if using
|
|
||||||
if-shell "[ -f ~/.config/tmux/local.tmux.conf ]" "source-file ~/.config/tmux/local.tmux.conf"
|
|
||||||
|
|
||||||
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
|
|
||||||
# Install with git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm
|
|
||||||
run ~/.config/tmux/plugins/tpm/tpm
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"modules-left": [],
|
|
||||||
"modules-center": ["hyprland/workspaces"],
|
|
||||||
"modules-right": ["battery", "clock"],
|
|
||||||
"battery": {
|
|
||||||
"format": "{capacity}% {icon}",
|
|
||||||
"format-icons": ["", "", "", "", ""]
|
|
||||||
},
|
|
||||||
"clock": {
|
|
||||||
"format": "{:%H:%M} ",
|
|
||||||
"format-alt": "{:%A, %B %d, %Y (%R)} ",
|
|
||||||
"tooltip-format": "<tt><small>{calendar}</small></tt>",
|
|
||||||
"calendar": {
|
|
||||||
"mode" : "year",
|
|
||||||
"mode-mon-col" : 3,
|
|
||||||
"weeks-pos" : "right",
|
|
||||||
"on-scroll" : 1,
|
|
||||||
"format": {
|
|
||||||
"months": "<span color='#ffead3'><b>{}</b></span>",
|
|
||||||
"days": "<span color='#ecc6d9'><b>{}</b></span>",
|
|
||||||
"weeks": "<span color='#99ffdd'><b>W{}</b></span>",
|
|
||||||
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
|
|
||||||
"today": "<span color='#ff6699'><b><u>{}</u></b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"actions": {
|
|
||||||
"on-click-right": "mode",
|
|
||||||
"on-scroll-up": "tz_up",
|
|
||||||
"on-scroll-down": "tz_down",
|
|
||||||
"on-scroll-up": "shift_up",
|
|
||||||
"on-scroll-down": "shift_down"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
* {
|
|
||||||
font-family: "CaskaydiaCove Nerd Font Mono, Meslo LGS Nerd Font Sans Mono";
|
|
||||||
}
|
|
||||||
22
.gitignore
vendored
22
.gitignore
vendored
@ -1,22 +0,0 @@
|
|||||||
# Ignore all
|
|
||||||
*
|
|
||||||
|
|
||||||
# Except
|
|
||||||
!.config/hypr/*
|
|
||||||
|
|
||||||
!.config/neofetch/*
|
|
||||||
|
|
||||||
!.config/nvim/init.lua
|
|
||||||
!.config/nvim/lua/*
|
|
||||||
|
|
||||||
!.config/tmux/tmux.conf
|
|
||||||
!.config/tmux/catppuccin.conf
|
|
||||||
.config/tmux/local.tmux.config
|
|
||||||
|
|
||||||
!.config/waybar/*
|
|
||||||
|
|
||||||
!.gitignore
|
|
||||||
!.p10k.zsh
|
|
||||||
!.zinit.zsh
|
|
||||||
!.zshrc
|
|
||||||
!.zstyle.zsh
|
|
||||||
67
.zinit.zsh
67
.zinit.zsh
@ -1,67 +0,0 @@
|
|||||||
#####################
|
|
||||||
### INSTALL ZINIT ###
|
|
||||||
#####################
|
|
||||||
|
|
||||||
if [[ ! -f $HOME/.local/share/zinit/zinit.git/zinit.zsh ]]; then
|
|
||||||
print -P "%F{33} %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f"
|
|
||||||
command mkdir -p "$HOME/.local/share/zinit" && command chmod g-rwX "$HOME/.local/share/zinit"
|
|
||||||
command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git" && \
|
|
||||||
print -P "%F{33} %F{34}Installation successful.%f%b" || \
|
|
||||||
print -P "%F{160} The clone has failed.%f%b"
|
|
||||||
fi
|
|
||||||
|
|
||||||
###################
|
|
||||||
### START ZINIT ###
|
|
||||||
###################
|
|
||||||
|
|
||||||
source "$HOME/.local/share/zinit/zinit.git/zinit.zsh"
|
|
||||||
autoload -Uz _zinit
|
|
||||||
(( ${+_comps} )) && _comps[zinit]=_zinit
|
|
||||||
|
|
||||||
#############
|
|
||||||
### THEME ###
|
|
||||||
#############
|
|
||||||
|
|
||||||
zinit ice depth=1; zinit light romkatv/powerlevel10k
|
|
||||||
|
|
||||||
###############
|
|
||||||
### PLUGINS ###
|
|
||||||
###############
|
|
||||||
|
|
||||||
# FZF
|
|
||||||
zinit ice from="gh-r" as="command" bpick="*linux_amd64*"
|
|
||||||
zinit light junegunn/fzf
|
|
||||||
|
|
||||||
# FZF BYNARY AND TMUX HELPER SCRIPT
|
|
||||||
zinit ice lucid wait'0c' as="command" id-as="junegunn/fzf-tmux" pick="bin/fzf-tmux"
|
|
||||||
zinit light junegunn/fzf
|
|
||||||
|
|
||||||
# BIND MULTIPLE WIDGETS USING FZF
|
|
||||||
zinit ice lucid wait'0c' multisrc"shell/{completion,key-bindings}.zsh" id-as="junegunn/fzf_completions" pick="/dev/null"
|
|
||||||
zinit light junegunn/fzf
|
|
||||||
|
|
||||||
# FZF-TAB
|
|
||||||
zinit ice wait="1" lucid
|
|
||||||
zinit light Aloxaf/fzf-tab
|
|
||||||
|
|
||||||
# AUTOSUGGESTIONS, TRIGGER PRECMD HOOK UPON LOAD
|
|
||||||
ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=20
|
|
||||||
zinit ice wait="0a" lucid atload="_zsh_autosuggest_start"
|
|
||||||
zinit light zsh-users/zsh-autosuggestions
|
|
||||||
|
|
||||||
# ENHANCD
|
|
||||||
zinit ice wait="0b" lucid
|
|
||||||
zinit light b4b4r07/enhancd
|
|
||||||
export ENHANCD_FILTER=fzf:fzy:peco
|
|
||||||
|
|
||||||
# ZOXIDE
|
|
||||||
zinit ice wait="0" lucid from="gh-r" as="program" pick="zoxide-*/zoxide -> zoxide" cp="zoxide-*/completions/_zoxide -> _zoxide" atclone="./zoxide init zsh > init.zsh" atpull="%atclone" src="init.zsh"
|
|
||||||
zinit light ajeetdsouza/zoxide
|
|
||||||
|
|
||||||
# TAB COMPLETIONS
|
|
||||||
zinit ice wait="0b" lucid blockf
|
|
||||||
zinit light zsh-users/zsh-completions
|
|
||||||
|
|
||||||
# SYNTAX HIGHLIGHTING
|
|
||||||
zinit ice wait="0c" lucid atinit="zpcompinit;zpcdreplay"
|
|
||||||
zinit light zdharma-continuum/fast-syntax-highlighting
|
|
||||||
52
.zshrc
52
.zshrc
@ -1,52 +0,0 @@
|
|||||||
if [[ ! $(tmux ls) ]] 2> /dev/null; then
|
|
||||||
tmux new -s λ
|
|
||||||
fi
|
|
||||||
|
|
||||||
############
|
|
||||||
### P10K ###
|
|
||||||
############
|
|
||||||
|
|
||||||
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
|
||||||
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
|
||||||
fi
|
|
||||||
|
|
||||||
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
|
||||||
|
|
||||||
#############
|
|
||||||
### ZINIT ###
|
|
||||||
#############
|
|
||||||
|
|
||||||
source ~/.zinit.zsh
|
|
||||||
source ~/.zstyle.zsh
|
|
||||||
|
|
||||||
#############
|
|
||||||
### PATHS ###
|
|
||||||
#############
|
|
||||||
|
|
||||||
# n
|
|
||||||
export N_PREFIX=$HOME/.n
|
|
||||||
export PATH=$N_PREFIX/bin:$PATH
|
|
||||||
|
|
||||||
#####################
|
|
||||||
### ENV VARIABLES ###
|
|
||||||
#####################
|
|
||||||
|
|
||||||
export SUDO_EDITOR="nvim"
|
|
||||||
export EDITOR="nvim"
|
|
||||||
export VISUAL="nvim"
|
|
||||||
|
|
||||||
HISTSIZE=10000
|
|
||||||
SAVEHIST=50000
|
|
||||||
HISTFILE=${XDG_STATE_HOME:-$HOME/.local/state}/.zsh_history
|
|
||||||
|
|
||||||
###############
|
|
||||||
### ALIASES ###
|
|
||||||
###############
|
|
||||||
|
|
||||||
alias svim="sudo -E -s nvim"
|
|
||||||
alias dots='/usr/bin/git --git-dir=$HOME/.git/ --work-tree=$HOME'
|
|
||||||
alias vim="nvim"
|
|
||||||
alias vi="nvim"
|
|
||||||
alias team="teamocil"
|
|
||||||
|
|
||||||
[[ ! -f ~/.localrc.zsh ]] || source ~/.localrc.zsh
|
|
||||||
63
.zstyle.zsh
63
.zstyle.zsh
@ -1,63 +0,0 @@
|
|||||||
###################
|
|
||||||
### COMPLETIONS ###
|
|
||||||
###################
|
|
||||||
|
|
||||||
compctl -g '~/.teamocil/*(:t:r)' teamocil
|
|
||||||
|
|
||||||
# Specify the order of completers to use:
|
|
||||||
# - `_expand`: Expand variables and globs.
|
|
||||||
# - `_complete`: Standard completion.
|
|
||||||
# - `_ignored`: Ignore certain completions.
|
|
||||||
# - `_approximate`: Approximate matching for fuzzy completions.
|
|
||||||
zstyle ':completion:*' completer _expand _complete _ignored _approximate
|
|
||||||
|
|
||||||
# Enable case-insensitive matching
|
|
||||||
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
|
|
||||||
|
|
||||||
# Disable the menu selection feature (automatically select the first match)
|
|
||||||
zstyle ':completion:*' menu no
|
|
||||||
|
|
||||||
# Customize the prompt shown when scrolling through completions
|
|
||||||
# - `%SScrolling active: current selection at %p%s`: Shows a message indicating that scrolling is active and the current selection.
|
|
||||||
zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
|
|
||||||
|
|
||||||
# Format descriptions in completion lists
|
|
||||||
# - `[%d]`: Wrap descriptions in square brackets.
|
|
||||||
zstyle ':completion:*:descriptions' format '[%d]'
|
|
||||||
|
|
||||||
# Specify the command to use for completing process names
|
|
||||||
# - `ps -au$USER`: List processes for the current user.
|
|
||||||
zstyle ':completion:*:processes' command 'ps -au$USER'
|
|
||||||
|
|
||||||
# Specify the command to use for completing process names with fzf-tab
|
|
||||||
# - `ps -u $USER -o pid,user,comm,cmd -w -w`: List processes with detailed information.
|
|
||||||
zstyle ':completion:*:*:*:*:processes' command "ps -u $USER -o pid,user,comm,cmd -w -w"
|
|
||||||
|
|
||||||
# Disable sorting of completion options
|
|
||||||
zstyle ':completion:complete:*:options' sort false
|
|
||||||
|
|
||||||
# Disable sorting of git checkout completions
|
|
||||||
zstyle ":completion:*:git-checkout:*" sort false
|
|
||||||
|
|
||||||
# Apply LS_COLORS to completion lists for colored output
|
|
||||||
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
|
|
||||||
|
|
||||||
# Configure fzf-tab behavior
|
|
||||||
|
|
||||||
# Use the input string as the query string for _zlua completions
|
|
||||||
zstyle ':fzf-tab:complete:_zlua:*' query-string input
|
|
||||||
|
|
||||||
# Customize the kill command completion with fzf-tab
|
|
||||||
# - `extra-opts`: Additional options for fzf, including a preview window showing the command of the selected process.
|
|
||||||
zstyle ':fzf-tab:complete:kill:argument-rest' extra-opts --preview=$extract'ps --pid=$in[(w)1] -o cmd --no-headers -w -w' --preview-window=down:3:wrap
|
|
||||||
|
|
||||||
# Customize the cd command completion with fzf-tab
|
|
||||||
# - `fzf-preview`: Show a preview of directories using `eza` (a modern replacement for `ls`).
|
|
||||||
zstyle ':fzf-tab:complete:cd:*' fzf-preview 'eza -1 --color=always $realpath'
|
|
||||||
|
|
||||||
# Customize the z command completion with fzf-tab
|
|
||||||
# - `fzf-preview`: Show a preview of directories using `eza`.
|
|
||||||
zstyle ':fzf-tab:complete:z:*' fzf-preview 'eza -1 --color=always $realpath'
|
|
||||||
|
|
||||||
# Use default fzf options for fzf-tab
|
|
||||||
zstyle ':fzf-tab:*' use-fzf-default-opts yes
|
|
||||||
@ -9,12 +9,26 @@ cd ..
|
|||||||
sudo rm -r paru
|
sudo rm -r paru
|
||||||
|
|
||||||
paru -Syy
|
paru -Syy
|
||||||
|
git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm
|
||||||
|
# Change shell
|
||||||
|
chsh -s /usr/bin/zsh
|
||||||
|
|
||||||
|
### Clone dot files
|
||||||
|
cd <ArchInstall dir>
|
||||||
|
# Set url in script
|
||||||
|
chmod +x clone_dots.sh
|
||||||
|
./clone_dots.sh
|
||||||
|
|
||||||
|
### Install tpm
|
||||||
|
git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm
|
||||||
|
|
||||||
|
|
||||||
### Zsh
|
### Zsh
|
||||||
paru -S zsh-theme-powerlevel10k-git zinit
|
paru -S zsh-theme-powerlevel10k-git zinit
|
||||||
|
|
||||||
|
### Install tmuxinator if using
|
||||||
|
paru -S tmuxinator
|
||||||
|
|
||||||
|
|
||||||
### First time installing zinit and zim
|
### First time installing zinit and zim
|
||||||
# Zinit
|
# Zinit
|
||||||
@ -24,16 +38,6 @@ zinit self-update
|
|||||||
# ZIM
|
# ZIM
|
||||||
curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
|
curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
|
||||||
|
|
||||||
### Next time get all dot files
|
|
||||||
|
|
||||||
git clone --bare <git-repo-url> $HOME/.git
|
|
||||||
/usr/bin/git --git-dir=$HOME/.git/ --work-tree=$HOME checkout
|
|
||||||
|
|
||||||
###
|
|
||||||
|
|
||||||
chsh -s /usr/bin/zsh
|
|
||||||
|
|
||||||
|
|
||||||
# GUI
|
# GUI
|
||||||
paru -S --noconfirm greetd inotifywait-tools waybar hyprland zsh-theme-powerlevel10k-git nerd-fonts kitty neovim wl-clipboard wofi yazi
|
paru -S --noconfirm greetd inotifywait-tools waybar hyprland zsh-theme-powerlevel10k-git nerd-fonts kitty neovim wl-clipboard wofi yazi
|
||||||
|
|
||||||
|
|||||||
@ -5,4 +5,6 @@ vim ~/.zshrc
|
|||||||
export WAYLAND_DISPLAY=wayland-1
|
export WAYLAND_DISPLAY=wayland-1
|
||||||
----
|
----
|
||||||
|
|
||||||
|
# Start nvim and sync with :Lazy sync
|
||||||
|
nvim
|
||||||
|
|
||||||
|
|||||||
14
clone_dots.sh
Normal file
14
clone_dots.sh
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
git clone --bare <url> $HOME/.git
|
||||||
|
function dots {
|
||||||
|
/usr/bin/git --git-dir=$HOME/.git/ --work-tree=$HOME $@
|
||||||
|
}
|
||||||
|
mkdir -p .config-backup
|
||||||
|
dots checkout
|
||||||
|
if [ $? = 0 ]; then
|
||||||
|
echo "Checked out config.";
|
||||||
|
else
|
||||||
|
echo "Backing up pre-existing dot files.";
|
||||||
|
config checkout 2>&1 | egrep "\s+\." | awk {'print $1'} | xargs -I{} mv {} .config-backup/{}
|
||||||
|
fi;
|
||||||
|
dots checkout
|
||||||
|
dots config status.showUntrackedFiles no
|
||||||
Loading…
x
Reference in New Issue
Block a user