diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua index ec8ac6c..3add8c2 100644 --- a/nvim/.config/nvim/init.lua +++ b/nvim/.config/nvim/init.lua @@ -165,6 +165,10 @@ require('lazy').setup({ -- In normal mode type `sh` then write `lazy.nvim-plugin` -- you can continue same window with `sr` which resumes last telescope search }, { + git = { + throttle = { enabled = true, rate = 2, duration = 5 * 1000 }, + }, + ui = { -- If you are using a Nerd Font: set icons to an empty table which will use the -- default lazy.nvim defined Nerd Font icons, otherwise define a unicode icons table diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index 2384b30..17671a1 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -4,7 +4,7 @@ "alpha-nvim": { "branch": "main", "commit": "3979b01cb05734331c7873049001d3f2bb8477f4" }, "blink-copilot": { "branch": "main", "commit": "7ad8209b2f880a2840c94cdcd80ab4dc511d4f39" }, "blink.cmp": { "branch": "main", "commit": "b19413d214068f316c78978b08264ed1c41830ec" }, - "codecompanion.nvim": { "branch": "main", "commit": "3559fffb1410f86314fa1ed401c99e14b95482a7" }, + "codecompanion.nvim": { "branch": "main", "commit": "b3bb0d73079643d4a5b0d8b621cde619a73bc91a" }, "conform.nvim": { "branch": "master", "commit": "5420c4b5ea0aeb99c09cfbd4fd0b70d257b44f25" }, "copilot.lua": { "branch": "master", "commit": "e78d1ffebdf6ccb6fd8be4e6898030c1cf5f9b64" }, "copilot.vim": { "branch": "release", "commit": "f89e977c87180519ba3b942200e3d05b17b1e2fc" }, @@ -24,7 +24,7 @@ "nvim": { "branch": "main", "commit": "ce8d176faa4643e026e597ae3c31db59b63cef09" }, "nvim-lspconfig": { "branch": "master", "commit": "d20d83b3f24f5884da73a9fc92fdc47e778b8d0d" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, - "nvim-treesitter": { "branch": "main", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-treesitter": { "branch": "main", "commit": "6e42d823ce0a5a76180c473c119c7677738a09d1" }, "nvim-ufo": { "branch": "main", "commit": "72d54c31079d38d8dfc5456131b1d0fb5c0264b0" }, "nvim-web-devicons": { "branch": "master", "commit": "6788013bb9cb784e606ada44206b0e755e4323d7" }, "octo.nvim": { "branch": "master", "commit": "09ff70efd885fe1cdf62505dce3a9bc6baeb85e1" }, diff --git a/waybar/.config/waybar/config b/waybar/.config/waybar/config new file mode 100644 index 0000000..dedbbc7 --- /dev/null +++ b/waybar/.config/waybar/config @@ -0,0 +1,196 @@ +{ + "layer": "top", // Waybar at top layer + "position": "top", // Waybar position (top|bottom|left|right) + "height": 34, // Waybar height (to be removed for auto height) + // "width": 1280, // Waybar width + "spacing": 4, // Gaps between modules (4px) + // Choose the order of the modules + "modules-left": ["hyprland/workspaces", "idle_inhibitor", "pulseaudio", "backlight", "network", "custom/updates"], + "modules-center": ["hyprland/window"], + "modules-right": ["hyprland/submap", "hyprland/language", "cpu", "memory", "temperature", "battery", "tray", "clock"], + // Modules configuration + "hyprland/workspaces": { + "disable-scroll": true, + "on-click": "activate", + // "all-outputs": false, + // "format": "{name}: {icon}", + "format": "{name}", + "on-scroll-up": "hyprctl dispatch workspace m-1 > /dev/null", + "on-scroll-down": "hyprctl dispatch workspace m+1 > /dev/null", + "format-icons": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "urgent": "", + "focused": "", + "default": "" + } + }, + "keyboard-state": { + "numlock": false, + "capslock": false, + "format": "{name} {icon}", + "format-icons": { + "locked": "", + "unlocked": "" + } + }, + "hyprland/window": { + "max-length": 50, + "separate-outputs": true + }, + "hyprland/language": { + "format": "{}", + "max-length": 18 + }, + "sway/mode": { + "format": "{}" + }, + "sway/scratchpad": { + "format": "{icon} {count}", + "show-empty": false, + "format-icons": ["", ""], + "tooltip": true, + "tooltip-format": "{app}: {title}" + }, + "mpd": { + "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ", + "format-disconnected": "Disconnected ", + "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ", + "unknown-tag": "N/A", + "interval": 2, + "consume-icons": { + "on": " " + }, + "random-icons": { + "off": " ", + "on": " " + }, + "repeat-icons": { + "on": " " + }, + "single-icons": { + "on": "1 " + }, + "state-icons": { + "paused": "", + "playing": "" + }, + "tooltip-format": "MPD (connected)", + "tooltip-format-disconnected": "MPD (disconnected)" + }, + "idle_inhibitor": { + "format": "{icon}", + "format-icons": { + "activated": "", + "deactivated": "" + } + }, + "tray": { + // "icon-size": 21, + "spacing": 0 + }, + "clock": { + // "timezone": "America/New_York", + "tooltip-format": "{:%Y %B}\n{calendar}", + "format-alt": "{:%Y-%m-%d}" + }, + "cpu": { + "format": "{usage}% ", + "tooltip": false + }, + "memory": { + "format": "{}% " + }, + "temperature": { + // "thermal-zone": 2, + // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", + "critical-threshold": 80, + // "format-critical": "{temperatureC}°C {icon}", + "format": "{temperatureC}°C {icon}", + "format-icons": ["", "", ""] + }, + "backlight": { + // "device": "acpi_video1", + "format": "{percent}% {icon}", + "format-icons": ["", "", "", "", "", "", "", "", ""] + }, + "battery": { + "states": { + // "good": 95, + "warning": 30, + "critical": 15 + }, + "format": "{capacity}% {icon}", + "format-charging": "{capacity}% 🗲", + "format-plugged": "{capacity}% ", + "format-alt": "{time} {icon}", + // "format-good": "", // An empty format will hide the module + // "format-full": "", + "format-icons": ["", "", "", "", ""] + }, + "battery#bat2": { + "bat": "BAT2" + }, + "network": { + // "interface": "wlan0", // (Optional) To force the use of this interface + // "format-wifi": "{essid} ", + "format-ethernet": "{ipaddr}/{cidr} ", + "tooltip-format": "{ifname} via {gwaddr} ", + "format-linked": "{ifname} (No IP) ", + "format-disconnected": "Disconnected ⚠", + "format-alt": "{ifname}: {ipaddr}/{cidr}" + }, + "pulseaudio": { + // "scroll-step": 10, // %, can be a float + "format": "{volume}%{icon} {format_source}", + "format-bluetooth": "{volume}% {icon} {format_source}", + "format-bluetooth-muted": " {icon} {format_source}", + "format-muted": " {format_source}", + "format-source": "{volume}% ", + "format-source-muted": "", + "format-icons": { + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": ["", "", ""] + }, + "on-click": "wiremix" + }, + "custom/notification": { + "tooltip": false, + "format": "{} {icon}", + "format-icons": { + "notification": " ", + "none": "", + "dnd-notification": " ", + "dnd-none": "", + "inhibited-notification": " ", + "inhibited-none": "", + "dnd-inhibited-notification": " ", + "dnd-inhibited-none": "" + }, + "return-type": "json", + "exec-if": "which swaync-client", + "exec": "swaync-client -swb", + "on-click": "sleep 0.1 && swaync-client -t -sw", + "on-click-right": "swaync-client -d -sw", + "escape": true + }, + "custom/updates": { + "format": "{} {icon}", + "return-type": "json", + "format-icons": { + "has-updates": "󱍷", + "updated": "󰂪" + }, + "exec-if": "which waybar-module-pacman-updates", + "exec": "waybar-module-pacman-updates --interval-seconds 5 --network-interval-seconds 300 --tooltip-align-columns 'Source Code Pro' --color-semver-updates F15D22,FFCE51,73C48F,48B9C7,88807C" + } +} + diff --git a/waybar/.config/waybar/style.css b/waybar/.config/waybar/style.css new file mode 100644 index 0000000..d5f79ce --- /dev/null +++ b/waybar/.config/waybar/style.css @@ -0,0 +1,104 @@ +@define-color base00 #181818; +@define-color base01 #2b2e37; +@define-color base02 #3b3e47; +@define-color base03 #585858; +@define-color base04 #b8b8b8; +@define-color base05 #d8d8d8; +@define-color base06 #e8e8e8; +@define-color base07 #f8f8f8; +@define-color base08 #ab4642; +@define-color base09 #dc9656; +@define-color base0A #f7ca88; +@define-color base0B #a1b56c; +@define-color base0C #86c1b9; +@define-color base0D #7cafc2; +@define-color base0E #ba8baf; +@define-color base0F #a16946; + +* { + transition: none; + box-shadow: none; +} + +#waybar { + font-family: 'Source Code Pro', sans-serif; + font-size: 1.2em; + font-weight: 400; + color: @base04; + background: @base01; +} + +#workspaces { + margin: 0 4px; +} + +#workspaces button { + margin: 4px 0; + padding: 0 4px; + color: @base05; +} + +#workspaces button.visible { +} + +#workspaces button.active { + border-radius: 4px; + background-color: @base02; +} + +#workspaces button.urgent { + color: rgba(238, 46, 36, 1); +} + +#tray { + margin: 4px 4px 4px 4px; + border-radius: 4px; + background-color: @base02; +} + +#tray * { + padding: 0 6px; + border-left: 1px solid @base00; +} + +#tray *:first-child { + border-left: none; +} + +#mode, #battery, #cpu, #memory, #network, #pulseaudio, #idle_inhibitor, #backlight, #custom-storage, #custom-updates, #custom-weather, #custom-mail, #clock, #temperature, #language{ + margin: 4px 2px; + padding: 0 6px; + background-color: @base02; + border-radius: 4px; + min-width: 20px; +} + +#pulseaudio.muted { + color: @base0F; +} + +#pulseaudio.bluetooth { + color: @base0C; +} + +#clock { + margin-left: 0px; + margin-right: 4px; + background-color: transparent; +} + +#temperature.critical { + color: @base0F; +} + +#window { + font-size: 0.9em; + font-weight: 400; + font-family: sans-serif; +} + +#language { + font-size: 0.9em; + font-weight: 500; + letter-spacing: -1px; +}