From 8968f143318763e863b1e699946ca0aba41f7dd9 Mon Sep 17 00:00:00 2001 From: RafayAhmad7548 Date: Thu, 18 Jun 2026 14:22:57 +0500 Subject: [PATCH 1/3] neovim update --- .config/fish/config.fish | 4 ++-- .config/kitty/kitty.conf | 1 + .config/nvim/lua/config/keymaps.lua | 4 ++++ .config/nvim/lua/config/options.lua | 3 ++- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.config/fish/config.fish b/.config/fish/config.fish index 487241c..8878cb2 100644 --- a/.config/fish/config.fish +++ b/.config/fish/config.fish @@ -1,10 +1,10 @@ -set -x MANPAGER 'nvim +Man!' +set -q MANPAGER; or set -x MANPAGER 'nvim +Man!' set -x EDITOR 'nvim' set -x SSH_AUTH_SOCK $XDG_RUNTIME_DIR/rbw/ssh-agent-socket set -x CHROME_EXECUTABLE /usr/bin/chromium -set -x SUPPLY_KEY_JSON ~/.fastlane/read-maududi-app-b0b713a4a08b.json +set -x SUPPLY_JSON_KEY ~/.fastlane/read-maududi-app-b0b713a4a08b.json fish_add_path /opt/android-sdk/platform-tools fish_add_path /opt/android-sdk/emulator diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index d19b73c..820e796 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -2479,6 +2479,7 @@ font_size 13.0 map ctrl+shift+n nop +map ctrl+shift+w nop map ctrl+k send_key down map ctrl+i send_key up diff --git a/.config/nvim/lua/config/keymaps.lua b/.config/nvim/lua/config/keymaps.lua index 9b393b0..1bd67af 100644 --- a/.config/nvim/lua/config/keymaps.lua +++ b/.config/nvim/lua/config/keymaps.lua @@ -26,6 +26,10 @@ vim.keymap.set({ 'n', 'v', 'o' }, '#', '_', { desc = '# start of line' }) -- save / quit vim.keymap.set('n', '', ':w', { desc = 'ctrl-s save' }) vim.keymap.set('n', '', Snacks.bufdelete.delete, { desc = 'save and close', nowait = true }) +vim.keymap.set('n', '', function () + Snacks.bufdelete.delete() + vim.cmd('q') +end, { desc = 'save and close', nowait = true }) -- delete word in insert mode vim.keymap.set('i', '', '', { desc = 'delete word in insert mode' }) diff --git a/.config/nvim/lua/config/options.lua b/.config/nvim/lua/config/options.lua index 59d821b..366cd0f 100644 --- a/.config/nvim/lua/config/options.lua +++ b/.config/nvim/lua/config/options.lua @@ -56,4 +56,5 @@ package.path = package.path .. ';' .. vim.fn.expand('$HOME') .. '/.luarocks/shar package.path = package.path .. ';' .. vim.fn.expand('$HOME') .. '/.luarocks/share/lua/5.1/?.lua;' vim.env.GIT_EDITOR = 'nvr -cc tabnew --remote-wait-silent' -vim.env.NVIM_LISTEN_ADDRESS = vim.fn.execute('echo v:servername') +vim.env.MANPAGER = 'nvr -cc tabnew --remote-wait-silent +Man! -' +vim.env.NVIM_LISTEN_ADDRESS = vim.v.servername From 6cb5696eb52447f8e95768319425940cdf48dace Mon Sep 17 00:00:00 2001 From: RafayAhmad7548 Date: Thu, 18 Jun 2026 14:23:09 +0500 Subject: [PATCH 2/3] random --- .config/zed/settings.json | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.config/zed/settings.json b/.config/zed/settings.json index d87237f..9cdcf00 100644 --- a/.config/zed/settings.json +++ b/.config/zed/settings.json @@ -23,6 +23,9 @@ }, "model_parameters": [] }, */ + "agent_servers": { + + }, "ssh_connections": [ { "host": "server", @@ -55,12 +58,11 @@ "sidebar_side": "left", "dock": "right", "always_allow_tool_actions": false, - "default_profile": "write", + "default_profile": "ask", "default_model": { - "effort": "high", "enable_thinking": false, - "provider": "copilot_chat", - "model": "gpt-5.2-codex" + "provider": "google", + "model": "gemini-3-flash-preview" }, }, "terminal": { From 12ec4d920a59cdf61fe2686b48da3c0351d88fe7 Mon Sep 17 00:00:00 2001 From: RafayAhmad7548 Date: Thu, 18 Jun 2026 14:23:23 +0500 Subject: [PATCH 3/3] hyprland lua update --- .config/hypr/.luarc.json | 7 ++ .config/hypr/hyprbinds.lua | 135 ++++++++++++++++++++++++++++++++ .config/hypr/hyprland.conf | 6 +- .config/hypr/hyprland.lua | 153 +++++++++++++++++++++++++++++++++++++ 4 files changed, 298 insertions(+), 3 deletions(-) create mode 100644 .config/hypr/.luarc.json create mode 100644 .config/hypr/hyprbinds.lua create mode 100644 .config/hypr/hyprland.lua diff --git a/.config/hypr/.luarc.json b/.config/hypr/.luarc.json new file mode 100644 index 0000000..b4ecec0 --- /dev/null +++ b/.config/hypr/.luarc.json @@ -0,0 +1,7 @@ +{ + "workspace": { + "library": [ + "/usr/share/hypr/stubs" + ] + } +} diff --git a/.config/hypr/hyprbinds.lua b/.config/hypr/hyprbinds.lua new file mode 100644 index 0000000..ed8764e --- /dev/null +++ b/.config/hypr/hyprbinds.lua @@ -0,0 +1,135 @@ +hl.define_submap('disableOtherKeyBinds', function () + hl.bind('SUPER + ESCAPE', hl.dsp.submap('reset')) +end) + +hl.bind('SUPER + F', hl.dsp.submap('disableOtherKeyBinds')) + + +-- Application Binds +hl.bind('ALT + T', hl.dsp.exec_cmd('kitty')) +hl.bind('ALT + E', hl.dsp.exec_cmd('nautilus')) +hl.bind('ALT + F', hl.dsp.exec_cmd('librewolf')) +hl.bind('ALT + V', hl.dsp.exec_cmd('code')) +hl.bind('ALT + Z', hl.dsp.exec_cmd('zeditor')) +hl.bind('ALT + M', hl.dsp.exec_cmd('prismlauncher')) +hl.bind('ALT + D', hl.dsp.exec_cmd('discord')) +hl.bind('ALT + W', hl.dsp.exec_cmd('flatpak run com.rtosta.zapzap')) +hl.bind('SUPER + SUPER_L', hl.dsp.exec_cmd('rofi -show drun -sort -matching fuzzy')) +hl.bind('SUPER + N', hl.dsp.exec_cmd('swaync-client -t -sw')) + +-- Fullscreen +hl.bind('F11', hl.dsp.window.fullscreen({ mode = 'fullscreen', action = 'toggle' })) +hl.bind('SUPER + F11', hl.dsp.window.fullscreen({ mode = 'maximized', action = 'toggle' })) + +-- Hyprlock +hl.bind('SUPER + CTRL + L', hl.dsp.exec_cmd('~/dotfiles/scripts/currentWallpaperHyprlock.sh')) + +-- Waybar +hl.bind('SUPER + R', hl.dsp.exec_cmd('~/dotfiles/scripts/reloadwaybar')) +hl.bind('SUPER + CTRL + R', hl.dsp.exec_cmd('killall waybar')) + +-- Screenshots +hl.bind('PRINT', hl.dsp.exec_cmd('grim -g "$(slurp)" - | wl-copy')) +hl.bind('SUPER + PRINT', hl.dsp.exec_cmd('grim - | wl-copy')) +hl.bind('CTRL + PRINT', hl.dsp.exec_cmd('grim -g "$(slurp)"')) +hl.bind('CTRL + SUPER + PRINT', hl.dsp.exec_cmd('grim')) + +-- Clipboard +hl.bind('SUPER + SHIFT + V', hl.dsp.exec_cmd('kitty --class clipse -e clipse')) + +-- Password Manager +hl.bind('SUPER + SHIFT + P', hl.dsp.exec_cmd('rofi-rbw')) + +-- Color Picker +hl.bind('ALT + P', hl.dsp.exec_cmd('hyprpicker --format=hex -a')) + +-- Audio Controls +hl.bind('code:123', hl.dsp.exec_cmd('wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+'), { repeating = true, locked = true }) +hl.bind('code:122', hl.dsp.exec_cmd('wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-'), { repeating = true, locked = true }) +hl.bind('code:121', hl.dsp.exec_cmd('wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle'), { repeating = true, locked = true }) + +-- Brightness Controls +hl.bind('code:233', hl.dsp.exec_cmd('brightnessctl s 1%+ && echo true > /home/rafayahmad/dotfiles/.config/eww/brightnessShow'), { repeating = true, locked = true }) +hl.bind('code:232', hl.dsp.exec_cmd('brightnessctl s 1%- && echo true > /home/rafayahmad/dotfiles/.config/eww/brightnessShow'), { repeating = true, locked = true }) + + +-- Window movement +hl.bind('SUPER + V', hl.dsp.window.float({ action = 'toggle' })) +hl.bind('SUPER + H', hl.dsp.layout('togglesplit')) +hl.bind('SUPER + C', hl.dsp.window.center()) +hl.bind('CTRL + Q', hl.dsp.window.close()) +hl.bind('ALT + TAB', hl.dsp.window.cycle_next()) +hl.bind('SUPER + TAB', hl.dsp.window.swap({ next = true })) + +-- Resize windows +hl.bind('ALT + L', hl.dsp.window.resize({ x = 50, y = 0, relative = true }), { repeating = true }) +hl.bind('ALT + J', hl.dsp.window.resize({ x = -50, y = 0, relative = true }), { repeating = true }) +hl.bind('ALT + I', hl.dsp.window.resize({ x = 0, y = 50, relative = true }), { repeating = true }) +hl.bind('ALT + K', hl.dsp.window.resize({ x = 0, y = -50, relative = true }), { repeating = true }) + +-- Move focus +hl.bind('CTRL + ALT + L', hl.dsp.focus({ direction = 'right' })) +hl.bind('CTRL + ALT + J', hl.dsp.focus({ direction = 'left' })) +hl.bind('CTRL + ALT + I', hl.dsp.focus({ direction = 'up' })) +hl.bind('CTRL + ALT + K', hl.dsp.focus({ direction = 'down' })) + +-- Move windows in tile +hl.bind('SUPER + L', hl.dsp.window.move({ direction = 'right' })) +hl.bind('SUPER + J', hl.dsp.window.move({ direction = 'left' })) +hl.bind('SUPER + I', hl.dsp.window.move({ direction = 'up' })) +hl.bind('SUPER + K', hl.dsp.window.move({ direction = 'down' })) + +-- Switch workspaces with mainMod + [0-9] +hl.bind('SUPER + 1', hl.dsp.focus({ workspace = 1 })) +hl.bind('SUPER + 2', hl.dsp.focus({ workspace = 2 })) +hl.bind('SUPER + 3', hl.dsp.focus({ workspace = 3 })) +hl.bind('SUPER + Q', hl.dsp.focus({ workspace = 4 })) +hl.bind('SUPER + W', hl.dsp.focus({ workspace = 5 })) +hl.bind('SUPER + E', hl.dsp.focus({ workspace = 6 })) +hl.bind('SUPER + A', hl.dsp.focus({ workspace = 7 })) +hl.bind('SUPER + S', hl.dsp.focus({ workspace = 8 })) +hl.bind('SUPER + D', hl.dsp.focus({ workspace = 9 })) +hl.bind('SUPER + 0', hl.dsp.focus({ workspace = 10 })) +hl.bind('ALT + 1', hl.dsp.workspace.toggle_special('fluffychat')) +hl.bind('ALT + 2', hl.dsp.workspace.toggle_special('thunderbird')) + +-- Move active window to a workspace and switch with mainMod + SHIFT + [0-9] +hl.bind('SUPER + SHIFT + 1', hl.dsp.window.move({ workspace = 1 })) +hl.bind('SUPER + SHIFT + 2', hl.dsp.window.move({ workspace = 2 })) +hl.bind('SUPER + SHIFT + 3', hl.dsp.window.move({ workspace = 3 })) +hl.bind('SUPER + SHIFT + Q', hl.dsp.window.move({ workspace = 4 })) +hl.bind('SUPER + SHIFT + W', hl.dsp.window.move({ workspace = 5 })) +hl.bind('SUPER + SHIFT + E', hl.dsp.window.move({ workspace = 6 })) +hl.bind('SUPER + SHIFT + A', hl.dsp.window.move({ workspace = 7 })) +hl.bind('SUPER + SHIFT + S', hl.dsp.window.move({ workspace = 8 })) +hl.bind('SUPER + SHIFT + D', hl.dsp.window.move({ workspace = 9 })) +hl.bind('SUPER + SHIFT + 0', hl.dsp.window.move({ workspace = 10 })) +hl.bind('ALT + SHIFT + 1', hl.dsp.window.move({ workspace = 'special:fluffychat' })) +hl.bind('ALT + SHIFT + 2', hl.dsp.window.move({ workspace = 'special:thunderbird' })) + +-- Move active window to a workspace with mainMod + SHIFT + [0-9] +hl.bind('SUPER + CTRL + 1', hl.dsp.window.move({ workspace = 1, follow = false })) +hl.bind('SUPER + CTRL + 2', hl.dsp.window.move({ workspace = 2, follow = false })) +hl.bind('SUPER + CTRL + 3', hl.dsp.window.move({ workspace = 3, follow = false })) +hl.bind('SUPER + CTRL + Q', hl.dsp.window.move({ workspace = 4, follow = false })) +hl.bind('SUPER + CTRL + W', hl.dsp.window.move({ workspace = 5, follow = false })) +hl.bind('SUPER + CTRL + E', hl.dsp.window.move({ workspace = 6, follow = false })) +hl.bind('SUPER + CTRL + A', hl.dsp.window.move({ workspace = 7, follow = false })) +hl.bind('SUPER + CTRL + S', hl.dsp.window.move({ workspace = 8, follow = false })) +hl.bind('SUPER + CTRL + D', hl.dsp.window.move({ workspace = 9, follow = false })) +hl.bind('SUPER + CTRL + 0', hl.dsp.window.move({ workspace = 10, follow = false })) +hl.bind('ALT + CTRL + 1', hl.dsp.window.move({ workspace = 'special:fluffychat', follow = false })) +hl.bind('ALT + CTRL + 2', hl.dsp.window.move({ workspace = 'special:thunderbird', follow = false })) + +-- Scroll through existing workspaces with mainMod + scroll +hl.bind('SUPER + mouse_down', hl.dsp.focus({ workspace = 'e-1' })) +hl.bind('SUPER + mouse_up', hl.dsp.focus({ workspace = 'e+1' })) + +-- Move/resize windows with mainMod + LMB/RMB and dragging +hl.bind('SUPER + mouse:272', hl.dsp.window.drag(), { mouse = true }) +hl.bind('ALT + mouse:272', hl.dsp.window.resize(), { mouse = true }) + +-- Shutdown/Reboot +hl.bind('SUPER + M', hl.dsp.exit) +hl.bind('CTRL + ALT + Z', hl.dsp.exec_cmd('reboot')) +hl.bind('CTRL + ALT + X', hl.dsp.exec_cmd('shutdown now')) diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf index 8a05dd4..6f36ecd 100644 --- a/.config/hypr/hyprland.conf +++ b/.config/hypr/hyprland.conf @@ -12,10 +12,10 @@ monitor=HDMI-A-1,1920x1080@60,0x0,1,mirror,eDP-1 # See https://wiki.hyprland.org/Configuring/Keywords/ for more # Execute your favorite apps at launch +exec-once = systemctl --user start hyprland-session.target exec-once = hypridle exec-once = waybar exec-once = clipse -listen -exec-once = swaync exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 exec-once = eww daemon @@ -38,7 +38,7 @@ $menu = ~/Stuff/scripts/rofiFocus.sh env = XCURSOR_SIZE,24 env = XCURSOR_THEME,mytheme env = QT_QPA_PLATFORMTHEME,qt5ct # change to qt6ct if you have that -env = GTK_THEME, Adwaita-dark +env = GTK_THEME,Adwaita-dark # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { @@ -109,7 +109,7 @@ animations { dwindle { # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more - pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + # pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = yes # you probably want this } diff --git a/.config/hypr/hyprland.lua b/.config/hypr/hyprland.lua new file mode 100644 index 0000000..f94feb3 --- /dev/null +++ b/.config/hypr/hyprland.lua @@ -0,0 +1,153 @@ +hl.monitor({ + output = 'eDP-1', + mode = '1920x1080@60', + position = '0x0', + scale = 1, +}) + +hl.monitor({ + output = 'HDMI-A-1', + mode = '1920x1080@60', + position = '0x0', + scale = 1, + mirror = 'eDP-1', +}) + +hl.on('hyprland.start', function () + hl.exec_cmd("systemctl --user start hyprland-session.target") + + hl.exec_cmd('hypridle') + hl.exec_cmd('hyprpaper') + hl.exec_cmd('waybar') + hl.exec_cmd('clipse -listen') + hl.exec_cmd('/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1') + hl.exec_cmd('eww daemon') + + hl.exec_cmd('/home/rafayahmad/dotfiles/scripts/brightnessWidget.sh') + hl.exec_cmd('~/dotfiles/scripts/battWarning.sh') + hl.exec_cmd('~/dotfiles/scripts/youtubeBlocker.sh') + + hl.exec_cmd('GTK_CSD=0 /opt/fluffychat/fluffychat', { workspace = 'special:fluffychat' }) + hl.exec_cmd('thunderbird', { workspace = 'special:thunderbird' }) +end) + +hl.on('hyprland.shutdown', function () + os.execute("systemctl --user stop hyprland-session.target && sleep 0.1") +end) + +require('hyprbinds') + +hl.env('XCURSOR_SIZE', 24) +hl.env('XCURSOR_THEME', 'mytheme') +hl.env('QT_QPA_PLATFORMTHEME', 'qt5ct') +hl.env('GTK_THEME', 'Adwaita-dark') + +hl.config({ + input = { + kb_file = '/home/rafayahmad/.config/hypr/pauseMod3.xkb', + numlock_by_default = true, + + follow_mouse = 1, + + sensitivity = 0.25, -- -1.0 - 1.0, 0 means no modification. + repeat_rate = 30, + repeat_delay = 200, + + touchpad = { + natural_scroll = true, + } + }, + + general = { + gaps_in = 5, + gaps_out = 10, + border_size = 2, + + col = { + active_border = { + colors = { + 'rgba(33ccffee)', + 'rgba(00ff99ee)', + }, + angle = 45, + }, + inactive_border = 'rgba(595959aa)', + }, + + layout = 'dwindle', + }, + + decoration = { + rounding = 10, + inactive_opacity = 0.8, + blur = { + enabled = true, + size = 4, + passes = 2, + ignore_opacity=true, + } + }, + + animations = { + enabled = true, + }, + + dwindle = { + preserve_split = true, + }, + + misc = { + force_default_wallpaper = 0, + enable_anr_dialog = false, + } +}) + + +-- Animations + +hl.curve('myBezier', { type = 'bezier', points = { {0.05, 0.9}, {0.1, 1.05} } }) + +hl.animation({ leaf = 'windows', enabled = true, speed = 7, bezier = 'myBezier'}) +hl.animation({ leaf = 'windowsOut', enabled = true, speed = 7, bezier = 'default', style = 'popin 80%'}) +hl.animation({ leaf = 'border', enabled = true, speed = 10, bezier = 'default'}) +hl.animation({ leaf = 'borderangle', enabled = true, speed = 8, bezier = 'default'}) +hl.animation({ leaf = 'fade', enabled = true, speed = 7, bezier = 'default'}) +hl.animation({ leaf = 'workspaces', enabled = true, speed = 6, bezier = 'default'}) +hl.animation({ leaf = 'specialWorkspace', enabled = true, speed = 7, bezier = 'myBezier', style = 'slidefadevert'}) + +-- Gestures + +hl.gesture({ + fingers = 3, + direction = 'horizontal', + action = 'workspace', +}) + +-- Window Rules + +hl.window_rule({ + name = 'clipse menu', + match = { + class = 'clipse' + }, + float = true, + size = {700, 600}, +}) + +hl.window_rule({ + name = 'file picker', + match = { + class = '^(xdg-desktop-portal-gtk|gtk3-filechooser-dialog)$', + }, + float = true, + size = {900, 600}, +}) + +hl.window_rule({ + name = 'calculator', + match = { + class = 'org.gnome.Calculator', + }, + float = true, + size = {500, 700}, +})