aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniil Rozanov <dev@rozanov.info>2025-06-17 01:42:42 +0400
committerDaniil Rozanov <dev@rozanov.info>2025-06-17 01:42:42 +0400
commit2dcd24d371b6335a8a3f2c8937847719a3b00cb5 (patch)
tree7eb987c5b7385d655627b12b4046116a4fd80c5f
parentf8649f2913cab3e9c381dfe3d23016866bdf0929 (diff)
rocks in progress
-rwxr-xr-x[-rw-r--r--].gitignore1
-rwxr-xr-x[-rw-r--r--]LICENSE0
-rwxr-xr-x[-rw-r--r--]README.md0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/Development.qmap0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/Job.qmap0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/Personal.qmap0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/TestMail.qmap0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/aerc.conf0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/binds.conf0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/stylesets/gruvbox0
-rwxr-xr-x[-rw-r--r--]aerc/.config/aerc/stylesets/gruvbox_material_dark_medium0
-rw-r--r--alacritty/.config/alacritty/alacritty.toml21
-rwxr-xr-x[-rw-r--r--]clang-format/.clang-format0
-rwxr-xr-x[-rw-r--r--]editorconfig/.editorconfig1
-rwxr-xr-x[-rw-r--r--]ghostty/.config/ghostty/config0
-rwxr-xr-x[-rw-r--r--]git/.gitconfig0
-rwxr-xr-x[-rw-r--r--]gnupg/.gnupg/gpg-agent.conf0
-rwxr-xr-x[-rw-r--r--]gnupg/.gnupg/gpg.conf0
-rw-r--r--guix/manifest.scm45
-rwxr-xr-xhypr/.config/hypr/hypridle.conf34
-rwxr-xr-xhypr/.config/hypr/hyprland.conf288
-rw-r--r--hypr/.config/hypr/hyprpaper.conf2
-rwxr-xr-x[-rw-r--r--]isync/.config/isyncrc0
-rwxr-xr-xmako/.config/mako/config21
-rw-r--r--mpv/.config/mpv/mpv.conf2
-rwxr-xr-x[-rw-r--r--]newsboat/.config/newsboat/config13
-rwxr-xr-x[-rw-r--r--]notmuch/.config/notmuch/account/config0
l---------notmuch/.config/notmuch/account/hooks1
-rwxr-xr-x[-rw-r--r--]notmuch/.config/notmuch/default/config0
-rwxr-xr-x[-rw-r--r--]notmuch/.config/notmuch/dev/config0
l---------notmuch/.config/notmuch/dev/hooks1
-rwxr-xr-x[-rw-r--r--]notmuch/.config/notmuch/job/config0
l---------notmuch/.config/notmuch/job/hooks1
-rwxr-xr-x[-rw-r--r--]notmuch/.config/notmuch/personal/config0
l---------notmuch/.config/notmuch/personal/hooks1
-rwxr-xr-x[-rw-r--r--]notmuch/.config/notmuch/testmail/config0
l---------notmuch/.config/notmuch/testmail/hooks1
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/.gitignore0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/after/ftplugin/dbui.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/after/ftplugin/sql.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/init.lua54
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lsp/bashls.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lsp/clangd.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lsp/lua_ls.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/autocmds.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/keymaps.lua81
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/lsp.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/netrw.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/options.lua23
-rw-r--r--nvim/.config/nvim/lua/plugins/auto-session.lua3
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/autopairs.lua19
-rw-r--r--nvim/.config/nvim/lua/plugins/better-escape.lua1
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/bqf.lua2
-rwxr-xr-xnvim/.config/nvim/lua/plugins/celluar-automaton.lua0
-rw-r--r--nvim/.config/nvim/lua/plugins/celluar.lua1
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/cmake.lua1
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/cmp.lua138
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/comment.lua2
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/conform.lua51
-rw-r--r--nvim/.config/nvim/lua/plugins/dadbod.lua16
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/fidget.lua7
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/gitsigns.lua130
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/harpoon.lua57
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/lazydev.lua12
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/leap.lua12
-rw-r--r--nvim/.config/nvim/lua/plugins/leetcode.lua1
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/lualine.lua6
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/mini.lua9
-rw-r--r--nvim/.config/nvim/lua/plugins/neogit.lua4
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/neorg.lua36
-rw-r--r--nvim/.config/nvim/lua/plugins/oil.lua23
-rwxr-xr-xnvim/.config/nvim/lua/plugins/poimandres.lua1
-rw-r--r--nvim/.config/nvim/lua/plugins/rest.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/sort.lua2
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/substitude.lua14
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/surround.lua7
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/telescope.lua6
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/textcase.lua0
-rw-r--r--nvim/.config/nvim/lua/plugins/themes.lua7
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/todo-comments.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/toggleterm.lua0
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/treesitter.lua12
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/plugins/which-key.lua33
-rw-r--r--nvim/.config/nvim/lua/plugins/zen-mode.lua5
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/lua/terminal.lua0
-rw-r--r--nvim/.config/nvim/rocks.toml93
-rwxr-xr-x[-rw-r--r--]nvim/.config/nvim/stylua.toml0
l---------nvim/after1
l---------nvim/init.lua1
l---------nvim/lsp1
l---------nvim/lua1
l---------nvim/rocks.toml1
l---------nvim/stylua.toml1
-rw-r--r--rofi/.config/rofi/config.rasi1
-rwxr-xr-x[-rw-r--r--]stylua/stylua.toml0
-rw-r--r--tmux/.tmux.conf91
-rwxr-xr-xwaybar/.config/waybar/config.jsonc41
-rwxr-xr-xwaybar/.config/waybar/style.css73
-rwxr-xr-x[-rw-r--r--]zsh/.config/zsh/.zprofile0
-rwxr-xr-x[-rw-r--r--]zsh/.config/zsh/.zshrc7
-rwxr-xr-x[-rw-r--r--]zsh/.config/zsh/functions.zsh0
-rwxr-xr-x[-rw-r--r--]zsh/.zshenv12
102 files changed, 908 insertions, 625 deletions
diff --git a/.gitignore b/.gitignore
index 01894e8..d24a0c3 100644..100755
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
.zcompdump
*.lock
+urls
diff --git a/LICENSE b/LICENSE
index f288702..f288702 100644..100755
--- a/LICENSE
+++ b/LICENSE
diff --git a/README.md b/README.md
index 3e9230c..3e9230c 100644..100755
--- a/README.md
+++ b/README.md
diff --git a/aerc/.config/aerc/Development.qmap b/aerc/.config/aerc/Development.qmap
index 60418a0..60418a0 100644..100755
--- a/aerc/.config/aerc/Development.qmap
+++ b/aerc/.config/aerc/Development.qmap
diff --git a/aerc/.config/aerc/Job.qmap b/aerc/.config/aerc/Job.qmap
index 60418a0..60418a0 100644..100755
--- a/aerc/.config/aerc/Job.qmap
+++ b/aerc/.config/aerc/Job.qmap
diff --git a/aerc/.config/aerc/Personal.qmap b/aerc/.config/aerc/Personal.qmap
index 16cd958..16cd958 100644..100755
--- a/aerc/.config/aerc/Personal.qmap
+++ b/aerc/.config/aerc/Personal.qmap
diff --git a/aerc/.config/aerc/TestMail.qmap b/aerc/.config/aerc/TestMail.qmap
index 60418a0..60418a0 100644..100755
--- a/aerc/.config/aerc/TestMail.qmap
+++ b/aerc/.config/aerc/TestMail.qmap
diff --git a/aerc/.config/aerc/aerc.conf b/aerc/.config/aerc/aerc.conf
index deb8cf7..deb8cf7 100644..100755
--- a/aerc/.config/aerc/aerc.conf
+++ b/aerc/.config/aerc/aerc.conf
diff --git a/aerc/.config/aerc/binds.conf b/aerc/.config/aerc/binds.conf
index 58397e9..58397e9 100644..100755
--- a/aerc/.config/aerc/binds.conf
+++ b/aerc/.config/aerc/binds.conf
diff --git a/aerc/.config/aerc/stylesets/gruvbox b/aerc/.config/aerc/stylesets/gruvbox
index 2c15329..2c15329 100644..100755
--- a/aerc/.config/aerc/stylesets/gruvbox
+++ b/aerc/.config/aerc/stylesets/gruvbox
diff --git a/aerc/.config/aerc/stylesets/gruvbox_material_dark_medium b/aerc/.config/aerc/stylesets/gruvbox_material_dark_medium
index b115337..b115337 100644..100755
--- a/aerc/.config/aerc/stylesets/gruvbox_material_dark_medium
+++ b/aerc/.config/aerc/stylesets/gruvbox_material_dark_medium
diff --git a/alacritty/.config/alacritty/alacritty.toml b/alacritty/.config/alacritty/alacritty.toml
deleted file mode 100644
index 9670328..0000000
--- a/alacritty/.config/alacritty/alacritty.toml
+++ /dev/null
@@ -1,21 +0,0 @@
-[env]
-# TERM = "xterm-256color"
-
-[window]
-
-[font]
-size = 10.5
-
-[font.normal]
-family = "JetBrainsMono Nerd Font"
-style = "Regular"
-
-[font.bold]
-style = "Bold"
-
-[font.italic]
-style = "Italic"
-
-[[keyboard.bindings]]
-action = "ToggleFullscreen"
-key = "F11"
diff --git a/clang-format/.clang-format b/clang-format/.clang-format
index 4a88ce1..4a88ce1 100644..100755
--- a/clang-format/.clang-format
+++ b/clang-format/.clang-format
diff --git a/editorconfig/.editorconfig b/editorconfig/.editorconfig
index 6a637a0..9c3d9bc 100644..100755
--- a/editorconfig/.editorconfig
+++ b/editorconfig/.editorconfig
@@ -16,3 +16,4 @@ indent_size = 4
# Tab indentation (no size specified)
[Makefile]
indent_style = tab
+indent_size = 4
diff --git a/ghostty/.config/ghostty/config b/ghostty/.config/ghostty/config
index 813b1eb..813b1eb 100644..100755
--- a/ghostty/.config/ghostty/config
+++ b/ghostty/.config/ghostty/config
diff --git a/git/.gitconfig b/git/.gitconfig
index bd628ff..bd628ff 100644..100755
--- a/git/.gitconfig
+++ b/git/.gitconfig
diff --git a/gnupg/.gnupg/gpg-agent.conf b/gnupg/.gnupg/gpg-agent.conf
index 682af4e..682af4e 100644..100755
--- a/gnupg/.gnupg/gpg-agent.conf
+++ b/gnupg/.gnupg/gpg-agent.conf
diff --git a/gnupg/.gnupg/gpg.conf b/gnupg/.gnupg/gpg.conf
index ffa0f43..ffa0f43 100644..100755
--- a/gnupg/.gnupg/gpg.conf
+++ b/gnupg/.gnupg/gpg.conf
diff --git a/guix/manifest.scm b/guix/manifest.scm
deleted file mode 100644
index f94ac0a..0000000
--- a/guix/manifest.scm
+++ /dev/null
@@ -1,45 +0,0 @@
-;; This "manifest" file can be passed to 'guix package -m' to reproduce
-;; the content of your profile. This is "symbolic": it only specifies
-;; package names. To reproduce the exact same profile, you also need to
-;; capture the channels being used, as returned by "guix describe".
-;; See the "Replicating Guix" section in the manual.
-
-(use-modules (guix transformations))
-
-(define transform1
- (options->transformation
- '((with-branch . "neovim=release-0.10")
- (with-branch . "tree-sitter=release-0.24"))))
-
-(packages->manifest
- (list (specification->package "cmatrix")
- (specification->package "zsh")
- (specification->package "cmake")
- (transform1 (specification->package "neovim"))
- (transform1
- (specification->package "tree-sitter"))
- (specification->package "docker")
- (specification->package "vlc")
- (specification->package "sbcl")
- (specification->package "telegram-desktop")
- (specification->package "tor-client")
- (specification->package "tor")
- (specification->package "clang")
- (specification->package "llvm")
- (specification->package "tmux")
- (specification->package "rlwrap")
- (specification->package "gcc-toolchain")
- (specification->package "alacritty")
- (specification->package "guile")
- (specification->package "nftables")
- (specification->package "w3m")
- (specification->package "wireguard-tools")
- (specification->package "torsocks")
- (specification->package "postgresql")
- (specification->package "less")
- (specification->package "man-db")
- (specification->package "coreutils")
- (specification->package "ncurses")
- (specification->package "neomutt")
- (specification->package "mutt")
- (specification->package "glibc-locales")))
diff --git a/hypr/.config/hypr/hypridle.conf b/hypr/.config/hypr/hypridle.conf
new file mode 100755
index 0000000..dd40f90
--- /dev/null
+++ b/hypr/.config/hypr/hypridle.conf
@@ -0,0 +1,34 @@
+general {
+ lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
+ before_sleep_cmd = loginctl lock-session # lock before suspend.
+ after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
+}
+
+listener {
+ timeout = 300 # 5min.
+ on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor.
+ on-resume = brightnessctl -r # monitor backlight restore.
+}
+
+# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight.
+listener {
+ timeout = 300 # 5min.
+ on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight.
+ on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight.
+}
+
+listener {
+ timeout = 600 # 10min
+ on-timeout = loginctl lock-session # lock screen when timeout has passed
+}
+
+listener {
+ timeout = 610 # 5.5min
+ on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
+ on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected after timeout has fired.
+}
+
+listener {
+ timeout = 1800 # 30min
+ on-timeout = systemctl suspend # suspend pc
+}
diff --git a/hypr/.config/hypr/hyprland.conf b/hypr/.config/hypr/hyprland.conf
new file mode 100755
index 0000000..39984b3
--- /dev/null
+++ b/hypr/.config/hypr/hyprland.conf
@@ -0,0 +1,288 @@
+################
+### MONITORS ###
+################
+
+# See https://wiki.hyprland.org/Configuring/Monitors/
+monitor=eDP-1, 3024x1965@60, auto, auto
+monitor=HDMI-A-1, 3840x2560@49.98, auto, auto
+
+
+###################
+### MY PROGRAMS ###
+###################
+
+# See https://wiki.hyprland.org/Configuring/Keywords/
+
+# Set programs that you use
+$terminal = kitty -d $(hyprcwd)
+$browser = firefox
+$fileManager = thunar
+$menu = rofi -show drun --show-icons
+
+
+#################
+### AUTOSTART ###
+#################
+
+exec-once = hyprlock
+exec-once = hypridle
+exec-once = waybar
+exec-once = dunst
+# exec-once = hyprpaper
+exec-once = swaybg -i ~/wallpapers/current
+
+
+#############################
+### ENVIRONMENT VARIABLES ###
+#############################
+
+env = XCURSOR_SIZE,23
+env = HYPRCURSOR_SIZE,23
+# Optionally, customize slurp's appearance
+env = SLURP_ARGS, -d -b -B F050F022 -b 10101022 -c ff00ff
+
+# Can fix high cpu loads on some machines
+env = GRIMBLAST_HIDE_CURSOR, 0
+
+#####################
+### LOOK AND FEEL ###
+#####################
+
+general {
+ gaps_in = 4
+ gaps_out = 5, 5, 10, 5
+
+ border_size = 1
+
+ # 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
+
+ layout = dwindle
+}
+
+decoration {
+ rounding = 10
+
+ # Does not exists in current version
+ # rounding_power = 2
+
+ # Change transparency of focused and unfocused windows
+ active_opacity = 1.0
+ inactive_opacity = 1.0
+
+ shadow {
+ enabled = true
+ range = 4
+ render_power = 3
+ color = rgba(1a1a1aee)
+ }
+
+ # https://wiki.hyprland.org/Configuring/Variables/#blur
+ blur {
+ enabled = true
+ size = 3
+ passes = 3
+
+ vibrancy = 0.1696
+ noise = 0.05
+contrast = 1
+new_optimizations = true
+
+ }
+}
+
+animations {
+ enabled = yes
+
+ 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
+}
+
+# "Smart gaps" / "No gaps when only"
+workspace = w[tv1], gapsout:0, gapsin:0
+workspace = f[1], gapsout:0, gapsin:0
+windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1]
+windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1]
+windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
+windowrulev2 = rounding 0, floating:0, onworkspace:f[1]
+
+
+layerrule = blur,waybar
+layerrule = blur,rofi
+layerrule = blur,notifications
+layerrule = ignorezero,notifications
+
+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
+}
+
+master {
+ new_status = master
+}
+
+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. :(
+}
+
+#############
+### INPUT ###
+#############
+
+input {
+ kb_layout = us, ru
+ kb_variant =
+ kb_model =
+ kb_options = grp:alt_shift_toggle,caps:ctrl_modifier
+ kb_rules =
+
+ follow_mouse = 1
+
+ sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
+
+ touchpad {
+ natural_scroll = true
+ }
+}
+
+gestures {
+ workspace_swipe = true
+}
+
+# Example per-device config
+device {
+ name = epic-mouse-v1
+ sensitivity = -0.5
+}
+
+
+###################
+### KEYBINDINGS ###
+###################
+
+$mainMod = SUPER # Sets "Windows" key as main modifier
+
+bind = $mainMod, T, exec, $terminal
+bind = $mainMod, B, exec, $browser
+bind = $mainMod, E, exec, $fileManager
+bind = $mainMod, SPACE, exec, $menu
+bind = $mainMod, Q, killactive,
+bind = $mainMod, X, exit,
+bind = $mainMod, F, fullscreen, 0
+bind = $mainMod, O, togglesplit,
+
+
+bind = $mainMod, p, exec, grimblast copysave active
+bind = $mainMod SHIFT, p, exec, grimblast copysave area
+bind = $mainMod ALT, p, exec, grimblast copysave output
+bind = $mainMod CTRL, p, exec, grimblast copysave screen
+
+# Move focus with mainMod + arrow keys
+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
+bind = $mainMod, mouse_down, workspace, e+1
+bind = $mainMod, mouse_up, 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 @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 5%+
+bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 5%-
+
+# Requires playerctl
+bindl = , XF86AudioNext, exec, playerctl next
+bindl = , XF86AudioPause, exec, playerctl play-pause
+bindl = , XF86AudioPlay, exec, playerctl play-pause
+bindl = , XF86AudioPrev, exec, playerctl previous
+
+binde = , XF86LaunchA, exec, brightnessctl --device='kbd_backlight' set 5%-
+binde = , XF86Search, exec, brightnessctl --device='kbd_backlight' set 5%+
+
+##############################
+### WINDOWS AND WORKSPACES ###
+##############################
+
+# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
+# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
+
+# Example windowrule v1
+# windowrule = float, ^(kitty)$
+
+# Example windowrule v2
+# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
+
+# Ignore maximize requests from apps. You'll probably like this.
+windowrulev2 = suppressevent maximize, class:.*
+
+# Fix some dragging issues with XWayland
+windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
diff --git a/hypr/.config/hypr/hyprpaper.conf b/hypr/.config/hypr/hyprpaper.conf
new file mode 100644
index 0000000..86f2c26
--- /dev/null
+++ b/hypr/.config/hypr/hyprpaper.conf
@@ -0,0 +1,2 @@
+preload = ~/wallpapers/current
+wallpaper = , ~/wallpapers/current
diff --git a/isync/.config/isyncrc b/isync/.config/isyncrc
index 65166a5..65166a5 100644..100755
--- a/isync/.config/isyncrc
+++ b/isync/.config/isyncrc
diff --git a/mako/.config/mako/config b/mako/.config/mako/config
new file mode 100755
index 0000000..faa4442
--- /dev/null
+++ b/mako/.config/mako/config
@@ -0,0 +1,21 @@
+background-color=#30303090
+width=300
+height=110
+border-size=1
+border-color=#88c0d090
+border-radius=5
+default-timeout=4000
+ignore-timeout=1
+font=monospace 14
+format=<b>%s</b>\n%b
+
+[urgency=low]
+border-color=#cccccc
+
+[urgency=normal]
+border-color=#60a1ee
+
+[urgency=critical]
+border-color=#bf616aA0
+default-timeout=0
+
diff --git a/mpv/.config/mpv/mpv.conf b/mpv/.config/mpv/mpv.conf
new file mode 100644
index 0000000..5cdb892
--- /dev/null
+++ b/mpv/.config/mpv/mpv.conf
@@ -0,0 +1,2 @@
+gpu-context=wayland
+hwdec
diff --git a/newsboat/.config/newsboat/config b/newsboat/.config/newsboat/config
index 976cb31..f45e6b1 100644..100755
--- a/newsboat/.config/newsboat/config
+++ b/newsboat/.config/newsboat/config
@@ -1,7 +1,5 @@
-#show-read-feeds no
auto-reload no
-browser firefox
pager "less -R"
external-url-viewer "urlscan -dc -r 'linkhandler {}'"
@@ -31,16 +29,9 @@ color listfocus_unread yellow default bold
color info red black bold
color article white default bold
+browser firefox
macro , open-in-browser
-macro t set browser "qndl" ; open-in-browser ; set browser linkhandler
-macro a set browser "tsp yt-dlp --embed-metadata -xic -f bestaudio/best --restrict-filenames" ; open-in-browser ; set browser linkhandler
-macro v set browser "setsid -f mpv" ; open-in-browser ; set browser linkhandler
-macro w set browser "lynx" ; open-in-browser ; set browser linkhandler
-macro d set browser "dmenuhandler" ; open-in-browser ; set browser linkhandler
-macro c set browser "echo %u | xclip -r -sel c" ; open-in-browser ; set browser linkhandler
-macro C set browser "youtube-viewer --comments=%u" ; open-in-browser ; set browser linkhandler
-macro p set browser "peertubetorrent %u 480" ; open-in-browser ; set browser linkhandler
-macro P set browser "peertubetorrent %u 1080" ; open-in-browser ; set browser linkhandler
+macro v set browser "mpv %u &"; open-in-browser-noninteractively; set browser firefox;
highlight all "---.*---" yellow
highlight feedlist ".*(0/0))" black
diff --git a/notmuch/.config/notmuch/account/config b/notmuch/.config/notmuch/account/config
index dc8d1f7..dc8d1f7 100644..100755
--- a/notmuch/.config/notmuch/account/config
+++ b/notmuch/.config/notmuch/account/config
diff --git a/notmuch/.config/notmuch/account/hooks b/notmuch/.config/notmuch/account/hooks
deleted file mode 120000
index f631275..0000000
--- a/notmuch/.config/notmuch/account/hooks
+++ /dev/null
@@ -1 +0,0 @@
-../hooks \ No newline at end of file
diff --git a/notmuch/.config/notmuch/default/config b/notmuch/.config/notmuch/default/config
index a0579a4..a0579a4 100644..100755
--- a/notmuch/.config/notmuch/default/config
+++ b/notmuch/.config/notmuch/default/config
diff --git a/notmuch/.config/notmuch/dev/config b/notmuch/.config/notmuch/dev/config
index 0876333..0876333 100644..100755
--- a/notmuch/.config/notmuch/dev/config
+++ b/notmuch/.config/notmuch/dev/config
diff --git a/notmuch/.config/notmuch/dev/hooks b/notmuch/.config/notmuch/dev/hooks
deleted file mode 120000
index f631275..0000000
--- a/notmuch/.config/notmuch/dev/hooks
+++ /dev/null
@@ -1 +0,0 @@
-../hooks \ No newline at end of file
diff --git a/notmuch/.config/notmuch/job/config b/notmuch/.config/notmuch/job/config
index d43dbc9..d43dbc9 100644..100755
--- a/notmuch/.config/notmuch/job/config
+++ b/notmuch/.config/notmuch/job/config
diff --git a/notmuch/.config/notmuch/job/hooks b/notmuch/.config/notmuch/job/hooks
deleted file mode 120000
index f631275..0000000
--- a/notmuch/.config/notmuch/job/hooks
+++ /dev/null
@@ -1 +0,0 @@
-../hooks \ No newline at end of file
diff --git a/notmuch/.config/notmuch/personal/config b/notmuch/.config/notmuch/personal/config
index 161faf5..161faf5 100644..100755
--- a/notmuch/.config/notmuch/personal/config
+++ b/notmuch/.config/notmuch/personal/config
diff --git a/notmuch/.config/notmuch/personal/hooks b/notmuch/.config/notmuch/personal/hooks
deleted file mode 120000
index f631275..0000000
--- a/notmuch/.config/notmuch/personal/hooks
+++ /dev/null
@@ -1 +0,0 @@
-../hooks \ No newline at end of file
diff --git a/notmuch/.config/notmuch/testmail/config b/notmuch/.config/notmuch/testmail/config
index e69de29..e69de29 100644..100755
--- a/notmuch/.config/notmuch/testmail/config
+++ b/notmuch/.config/notmuch/testmail/config
diff --git a/notmuch/.config/notmuch/testmail/hooks b/notmuch/.config/notmuch/testmail/hooks
deleted file mode 120000
index f631275..0000000
--- a/notmuch/.config/notmuch/testmail/hooks
+++ /dev/null
@@ -1 +0,0 @@
-../hooks \ No newline at end of file
diff --git a/nvim/.config/nvim/.gitignore b/nvim/.config/nvim/.gitignore
index e033bc6..e033bc6 100644..100755
--- a/nvim/.config/nvim/.gitignore
+++ b/nvim/.config/nvim/.gitignore
diff --git a/nvim/.config/nvim/after/ftplugin/dbui.lua b/nvim/.config/nvim/after/ftplugin/dbui.lua
index dccca2f..dccca2f 100644..100755
--- a/nvim/.config/nvim/after/ftplugin/dbui.lua
+++ b/nvim/.config/nvim/after/ftplugin/dbui.lua
diff --git a/nvim/.config/nvim/after/ftplugin/sql.lua b/nvim/.config/nvim/after/ftplugin/sql.lua
index cb4775f..cb4775f 100644..100755
--- a/nvim/.config/nvim/after/ftplugin/sql.lua
+++ b/nvim/.config/nvim/after/ftplugin/sql.lua
diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua
index 765c55a..8ee3981 100644..100755
--- a/nvim/.config/nvim/init.lua
+++ b/nvim/.config/nvim/init.lua
@@ -1,31 +1,33 @@
+vim.g.maplocalleader = ","
vim.g.mapleader = " "
-vim.g.maplocalleader = " "
-require("keymaps")
-require("autocmds")
-require("options")
-require("terminal")
-require("lsp")
+local rocks_config = {
+ rocks_path = vim.env.HOME .. "/.local/share/nvim/rocks",
+}
-local lazypath = vim.fn.stdpath "data" .. "/lazy/lazy.nvim"
-if not vim.uv.fs_stat(lazypath) then
- vim.fn.system {
- "git",
- "clone",
- "--filter=blob:none",
- "https://github.com/folke/lazy.nvim.git",
- "--branch=stable",
- lazypath,
- }
-end
+vim.g.rocks_nvim = rocks_config
--- Add lazy to the `runtimepath`, this allows us to `require` it.
----@diagnostic disable-next-line: undefined-field
-vim.opt.rtp:prepend(lazypath)
+local luarocks_path = {
+ vim.fs.joinpath(rocks_config.rocks_path, "share", "lua", "5.1", "?.lua"),
+ vim.fs.joinpath(rocks_config.rocks_path, "share", "lua", "5.1", "?", "init.lua"),
+}
+package.path = package.path .. ";" .. table.concat(luarocks_path, ";")
--- Set up lazy, and load my `lua/plugins/` folder
-require("lazy").setup({ import = "plugins" }, {
- change_detection = {
- notify = false,
- },
-})
+local luarocks_cpath = {
+ vim.fs.joinpath(rocks_config.rocks_path, "lib", "lua", "5.1", "?.so"),
+ vim.fs.joinpath(rocks_config.rocks_path, "lib64", "lua", "5.1", "?.so"),
+ -- Remove the dylib and dll paths if you do not need macos or windows support
+ vim.fs.joinpath(rocks_config.rocks_path, "lib", "lua", "5.1", "?.dylib"),
+ vim.fs.joinpath(rocks_config.rocks_path, "lib64", "lua", "5.1", "?.dylib"),
+ vim.fs.joinpath(rocks_config.rocks_path, "lib", "lua", "5.1", "?.dll"),
+ vim.fs.joinpath(rocks_config.rocks_path, "lib64", "lua", "5.1", "?.dll"),
+}
+package.cpath = package.cpath .. ";" .. table.concat(luarocks_cpath, ";")
+
+vim.opt.runtimepath:append(vim.fs.joinpath(rocks_config.rocks_path, "lib", "luarocks", "rocks-5.1", "*", "*"))
+
+require "keymaps"
+require "autocmds"
+require "options"
+require "terminal"
+require "lsp"
diff --git a/nvim/.config/nvim/lsp/bashls.lua b/nvim/.config/nvim/lsp/bashls.lua
index ff1e16d..ff1e16d 100644..100755
--- a/nvim/.config/nvim/lsp/bashls.lua
+++ b/nvim/.config/nvim/lsp/bashls.lua
diff --git a/nvim/.config/nvim/lsp/clangd.lua b/nvim/.config/nvim/lsp/clangd.lua
index ca25f94..ca25f94 100644..100755
--- a/nvim/.config/nvim/lsp/clangd.lua
+++ b/nvim/.config/nvim/lsp/clangd.lua
diff --git a/nvim/.config/nvim/lsp/lua_ls.lua b/nvim/.config/nvim/lsp/lua_ls.lua
index 3ea54d9..3ea54d9 100644..100755
--- a/nvim/.config/nvim/lsp/lua_ls.lua
+++ b/nvim/.config/nvim/lsp/lua_ls.lua
diff --git a/nvim/.config/nvim/lua/autocmds.lua b/nvim/.config/nvim/lua/autocmds.lua
index a14bd32..a14bd32 100644..100755
--- a/nvim/.config/nvim/lua/autocmds.lua
+++ b/nvim/.config/nvim/lua/autocmds.lua
diff --git a/nvim/.config/nvim/lua/keymaps.lua b/nvim/.config/nvim/lua/keymaps.lua
index 3d5337e..9b2937c 100644..100755
--- a/nvim/.config/nvim/lua/keymaps.lua
+++ b/nvim/.config/nvim/lua/keymaps.lua
@@ -1,69 +1,40 @@
-local set = vim.keymap.set
+vim.keymap.set("n", "<leader>w", "<cmd>w<cr>", { desc = "Write buffer" })
-set("n", "<leader>w", "<cmd>w<cr>", { desc = "Write buffer" })
-
-set("n", "<leader>e", vim.diagnostic.open_float, { desc = "Show diagnostic [E]rror messages" })
-
--- execute current file. TODO: think this can be smarter
-set("n", "<leader>r", '<cmd>!"%:p"<cr>')
+-- execute current file in shell
+vim.keymap.set("n", "<leader>r", '<cmd>!"%:p"<cr>')
-- ui navigation
-set("n", "<m-j>", "<c-w><c-j>")
-set("n", "<m-k>", "<c-w><c-k>")
-set("n", "<m-l>", "<c-w><c-l>")
-set("n", "<m-h>", "<c-w><c-h>")
-
-set("n", "<m-<>", "<c-w>5<")
-set("n", "<m->>", "<c-w>5>")
-set("n", "<m-+>", "<c-w>4+")
-set("n", "<m-->", "<c-w>4-")
+vim.keymap.set("n", "<c-j>", "<c-w><c-j>")
+vim.keymap.set("n", "<c-k>", "<c-w><c-k>")
+vim.keymap.set("n", "<c-l>", "<c-w><c-l>")
+vim.keymap.set("n", "<c-h>", "<c-w><c-h>")
-set("n", "<m-v>", "<cmd>vsplit<cr>")
-set("n", "<m-s>", "<cmd>split<cr>")
+vim.keymap.set("n", "<m-v>", "<cmd>vsplit<cr>")
+vim.keymap.set("n", "<m-s>", "<cmd>split<cr>")
-set("n", "<m-q>", "<cmd>q<cr>", { desc = "Quit window" })
-
-set("n", "<m-t>", "<cmd>tabnew<cr>", { desc = "New Tab" })
-set("n", "<s-m-t>", "<cmd>tabclose<cr>", { desc = "Close Tab" })
-set("n", "<m-n>", "<cmd>tabnext<cr>", { desc = "Next Tab" })
-set("n", "<m-p>", "<cmd>tabprevious<cr>", { desc = "Previous Tab" })
-
--- Toggle hlsearch if it's on, otherwise just do "enter"
-set("n", "<cr>", function()
- ---@diagnostic disable-next-line: undefined-field
- if vim.opt.hlsearch:get() then
- vim.cmd.nohl()
- return ""
- else
- return "<cr>"
- end
-end, { expr = true })
+vim.keymap.set("n", "<m-q>", "<cmd>q<cr>", { desc = "Quit window" })
---swap lines
-set("n", "<c-j>", function()
- if vim.opt.diff:get() then
- vim.cmd [[normal! ]c]]
- else
- vim.cmd [[m .+1<CR>==]]
- end
-end)
-set("n", "<c-k>", function()
- if vim.opt.diff:get() then
- vim.cmd [[normal! [c]]
- else
- vim.cmd [[m .-2<cr>==]]
- end
-end)
+vim.keymap.set("n", "<m-t>", "<cmd>tabnew<cr>", { desc = "New Tab" })
+vim.keymap.set("n", "<s-m-t>", "<cmd>tabclose<cr>", { desc = "Close Tab" })
+vim.keymap.set("n", "<m-n>", "<cmd>tabnext<cr>", { desc = "Next Tab" })
+vim.keymap.set("n", "<m-p>", "<cmd>tabprevious<cr>", { desc = "Previous Tab" })
--lsp
-set("n", "grt", vim.lsp.buf.type_definition, { desc = "Go to type definition" })
-set("n", "gd", vim.lsp.buf.definition, { buffer = 0 })
-set("n", "gD", vim.lsp.buf.declaration, { buffer = 0 })
+vim.keymap.set("n", "grt", vim.lsp.buf.type_definition, { desc = "Go to type definition" })
+vim.keymap.set("n", "gd", vim.lsp.buf.definition, { buffer = 0 })
+vim.keymap.set("n", "gD", vim.lsp.buf.declaration, { buffer = 0 })
+
--ui
+
local toggle = function(obj)
return function()
obj.enable(not obj.is_enabled())
end
end
-set("n", "<leader>uh", toggle(vim.lsp.inlay_hint), { desc = "Toggle inlay hints" })
-set("n", "<leader>ud", toggle(vim.diagnostic), { desc = "Toggle inlay hints" })
+
+vim.keymap.set("n", "<leader>th", toggle(vim.lsp.inlay_hint), { desc = "Inlay hints" })
+vim.keymap.set("n", "<leader>td", toggle(vim.diagnostic), { desc = "Diagnostics" })
+
+vim.keymap.set("n", "<leader>tn", function()
+ vim.opt.relativenumber = not vim.o.rnu
+end, { desc = "Number" })
diff --git a/nvim/.config/nvim/lua/lsp.lua b/nvim/.config/nvim/lua/lsp.lua
index bbe1a8f..bbe1a8f 100644..100755
--- a/nvim/.config/nvim/lua/lsp.lua
+++ b/nvim/.config/nvim/lua/lsp.lua
diff --git a/nvim/.config/nvim/lua/netrw.lua b/nvim/.config/nvim/lua/netrw.lua
index e69de29..e69de29 100644..100755
--- a/nvim/.config/nvim/lua/netrw.lua
+++ b/nvim/.config/nvim/lua/netrw.lua
diff --git a/nvim/.config/nvim/lua/options.lua b/nvim/.config/nvim/lua/options.lua
index 087b599..443d136 100644..100755
--- a/nvim/.config/nvim/lua/options.lua
+++ b/nvim/.config/nvim/lua/options.lua
@@ -5,20 +5,20 @@ vim.opt.mouse = "a"
vim.opt.clipboard = "unnamedplus" -- Sync clipboard between OS and Neovim.
-vim.opt.breakindent = true -- Enable break indent
+vim.opt.breakindent = true -- Enable break indent
-vim.opt.undofile = true -- Save undo history
+vim.opt.undofile = true -- Save undo history
-vim.opt.ignorecase = true -- Case-insensitive searching UNLESS \C or one or more capital letters in the search term
+vim.opt.ignorecase = true -- Case-insensitive searching UNLESS \C or one or more capital letters in the search term
vim.opt.smartcase = true
vim.opt.signcolumn = "yes" -- Keep signcolumn on by default
-vim.opt.updatetime = 250 -- Decrease update time
+vim.opt.updatetime = 250 -- Decrease update time
-vim.opt.timeoutlen = 300 -- Decrease mapped sequence wait time
+vim.opt.timeoutlen = 300 -- Decrease mapped sequence wait time
-vim.opt.splitright = true -- Configure how new splits should be opened
+vim.opt.splitright = true -- Configure how new splits should be opened
vim.opt.splitbelow = true
vim.opt.list = true -- Sets how neovim will display certain whitespace characters in the editor.
@@ -28,7 +28,7 @@ vim.opt.listchars = { tab = "» ", trail = "·", nbsp = "␣" }
vim.opt.cursorline = true -- Show which line your cursor is on
-vim.opt.scrolloff = 10 -- Minimal number of screen lines to keep above and below the cursor.
+vim.opt.scrolloff = 10 -- Minimal number of screen lines to keep above and below the cursor.
vim.opt.sidescrolloff = 5
vim.opt.hlsearch = true -- Set highlight on search
@@ -38,4 +38,11 @@ vim.opt.background = "dark"
vim.opt.laststatus = 3
-vim.diagnostic.config({ virtual_text = true, virtual_line = false })
+vim.opt.completeopt = { "menu", "menuone", "noselect" }
+vim.opt.shortmess:append "c"
+
+vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions"
+
+vim.diagnostic.config { virtual_text = true, virtual_line = false }
+
+vim.cmd "colorscheme poimandres"
diff --git a/nvim/.config/nvim/lua/plugins/auto-session.lua b/nvim/.config/nvim/lua/plugins/auto-session.lua
new file mode 100644
index 0000000..a8074a8
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/auto-session.lua
@@ -0,0 +1,3 @@
+require("auto-session").setup {
+ suppressed_dirs = { "~/", "~/Downloads", "/" },
+}
diff --git a/nvim/.config/nvim/lua/plugins/autopairs.lua b/nvim/.config/nvim/lua/plugins/autopairs.lua
index b97128c..447e610 100644..100755
--- a/nvim/.config/nvim/lua/plugins/autopairs.lua
+++ b/nvim/.config/nvim/lua/plugins/autopairs.lua
@@ -1,13 +1,6 @@
-return {
- "windwp/nvim-autopairs",
- event = "InsertEnter",
- -- Optional dependency
- dependencies = { "hrsh7th/nvim-cmp" },
- config = function()
- require("nvim-autopairs").setup {}
- -- Automatically add `(` after selecting a function or method
- local cmp_autopairs = require "nvim-autopairs.completion.cmp"
- local cmp = require "cmp"
- cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done())
- end,
-}
+require("nvim-autopairs").setup {}
+
+-- Automatically add `(` after selecting a function or method
+local cmp_autopairs = require "nvim-autopairs.completion.cmp"
+local cmp = require "cmp"
+cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done())
diff --git a/nvim/.config/nvim/lua/plugins/better-escape.lua b/nvim/.config/nvim/lua/plugins/better-escape.lua
new file mode 100644
index 0000000..387dfd1
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/better-escape.lua
@@ -0,0 +1 @@
+require("better_escape").setup()
diff --git a/nvim/.config/nvim/lua/plugins/bqf.lua b/nvim/.config/nvim/lua/plugins/bqf.lua
index 92630a8..540c57d 100644..100755
--- a/nvim/.config/nvim/lua/plugins/bqf.lua
+++ b/nvim/.config/nvim/lua/plugins/bqf.lua
@@ -1 +1 @@
-return { "kevinhwang91/nvim-bqf", ft = "qf" }
+require("bqf").setup {}
diff --git a/nvim/.config/nvim/lua/plugins/celluar-automaton.lua b/nvim/.config/nvim/lua/plugins/celluar-automaton.lua
new file mode 100755
index 0000000..e69de29
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/celluar-automaton.lua
diff --git a/nvim/.config/nvim/lua/plugins/celluar.lua b/nvim/.config/nvim/lua/plugins/celluar.lua
deleted file mode 100644
index f90161e..0000000
--- a/nvim/.config/nvim/lua/plugins/celluar.lua
+++ /dev/null
@@ -1 +0,0 @@
-return { "Eandrju/cellular-automaton.nvim" }
diff --git a/nvim/.config/nvim/lua/plugins/cmake.lua b/nvim/.config/nvim/lua/plugins/cmake.lua
index 4e8c610..190b729 100644..100755
--- a/nvim/.config/nvim/lua/plugins/cmake.lua
+++ b/nvim/.config/nvim/lua/plugins/cmake.lua
@@ -1,4 +1,3 @@
-return {}
-- if vim.loop.os_uname().sysname ~= "Darwin" then
-- return {
-- "daniilrozanov/cmake.nvim",
diff --git a/nvim/.config/nvim/lua/plugins/cmp.lua b/nvim/.config/nvim/lua/plugins/cmp.lua
index 6c4c89e..1ce382a 100644..100755
--- a/nvim/.config/nvim/lua/plugins/cmp.lua
+++ b/nvim/.config/nvim/lua/plugins/cmp.lua
@@ -1,88 +1,68 @@
-return {
- "hrsh7th/nvim-cmp",
- event = "InsertEnter",
- priority = 100,
- dependencies = {
- "onsails/lspkind.nvim",
- "hrsh7th/cmp-nvim-lsp",
- "hrsh7th/cmp-path",
- "hrsh7th/cmp-buffer",
- {
- "L3MON4D3/LuaSnip",
- build = "make install_jsregexp",
- dependencies = { "rafamadriz/friendly-snippets" },
- },
- "saadparwaiz1/cmp_luasnip",
- },
- config = function()
- vim.opt.completeopt = { "menu", "menuone", "noselect" }
- vim.opt.shortmess:append "c"
- local lspkind = require "lspkind"
- lspkind.init {}
+local lspkind = require "lspkind"
+lspkind.init {}
- local luasnip = require "luasnip"
- luasnip.config.setup {}
- require("luasnip.loaders.from_vscode").lazy_load()
+local luasnip = require "luasnip"
+luasnip.config.setup {}
- local cmp = require "cmp"
+require("luasnip.loaders.from_vscode").lazy_load()
- cmp.setup {
- snippet = {
- expand = function(args)
- luasnip.lsp_expand(args.body)
- end,
- },
- completion = { completeopt = "menu,menuone,noinsert" },
- mapping = cmp.mapping.preset.insert {
- -- ["<C-n>"] = cmp.mapping.select_next_item { behavior = cmp.SelectBehavior.Insert },
- -- ["<C-p>"] = cmp.mapping.select_prev_item { behavior = cmp.SelectBehavior.Insert },
- ["<C-y>"] = cmp.mapping(
- cmp.mapping.confirm {
- behavior = cmp.ConfirmBehavior.Insert,
- select = true,
- },
- { "i", "c" }
- ),
- ["<C-b>"] = cmp.mapping.scroll_docs(-4),
- ["<C-f>"] = cmp.mapping.scroll_docs(4),
- -- ["<C-y>"] = cmp.mapping.confirm { select = true },
- -- -- Will move you to the right of each of the snippet's expansion locations.
- ["<C-l>"] = cmp.mapping(function()
- if luasnip.expand_or_locally_jumpable() then
- luasnip.expand_or_jump()
- end
- end, { "i", "s" }),
- -- Will move you to the left of each of the snippet's expansion locations.
- ["<C-h>"] = cmp.mapping(function()
- if luasnip.locally_jumpable(-1) then
- luasnip.jump(-1)
- end
- end, { "i", "s" }),
- },
- sources = {
- { name = "nvim_lsp" },
- { name = "luasnip" },
- { name = "path" },
- { name = "buffer" },
- },
- }
+local cmp = require "cmp"
- -- Setup up vim-dadbod
- cmp.setup.filetype({ "sql" }, {
- sources = {
- { name = "vim-dadbod-completion" },
- { name = "buffer" },
+cmp.setup {
+ snippet = {
+ expand = function(args)
+ luasnip.lsp_expand(args.body)
+ end,
+ },
+ completion = { completeopt = "menu,menuone,noinsert" },
+ mapping = cmp.mapping.preset.insert {
+ -- ["<C-n>"] = cmp.mapping.select_next_item { behavior = cmp.SelectBehavior.Insert },
+ -- ["<C-p>"] = cmp.mapping.select_prev_item { behavior = cmp.SelectBehavior.Insert },
+ ["<C-y>"] = cmp.mapping(
+ cmp.mapping.confirm {
+ behavior = cmp.ConfirmBehavior.Insert,
+ select = true,
},
- })
+ { "i", "c" }
+ ),
+ ["<C-b>"] = cmp.mapping.scroll_docs(-4),
+ ["<C-f>"] = cmp.mapping.scroll_docs(4),
+ -- ["<C-y>"] = cmp.mapping.confirm { select = true },
+ -- -- Will move you to the right of each of the snippet's expansion locations.
+ ["<C-l>"] = cmp.mapping(function()
+ if luasnip.expand_or_locally_jumpable() then
+ luasnip.expand_or_jump()
+ end
+ end, { "i", "s" }),
+ -- Will move you to the left of each of the snippet's expansion locations.
+ ["<C-h>"] = cmp.mapping(function()
+ if luasnip.locally_jumpable(-1) then
+ luasnip.jump(-1)
+ end
+ end, { "i", "s" }),
+ },
+ sources = {
+ { name = "nvim_lsp" },
+ { name = "luasnip" },
+ { name = "path" },
+ { name = "buffer" },
+ },
+}
- luasnip.config.set_config {
- history = false,
- updateevents = "TextChanged,TextChangedI",
- }
+-- Setup up vim-dadbod
+-- cmp.setup.filetype({ "sql" }, {
+-- sources = {
+-- { name = "vim-dadbod-completion" },
+-- { name = "buffer" },
+-- },
+-- })
- for _, ft_path in ipairs(vim.api.nvim_get_runtime_file("lua/custom/snippets/*.lua", true)) do
- loadfile(ft_path)()
- end
- end,
+luasnip.config.set_config {
+ history = false,
+ updateevents = "TextChanged,TextChangedI",
}
+
+for _, ft_path in ipairs(vim.api.nvim_get_runtime_file("lua/custom/snippets/*.lua", true)) do
+ loadfile(ft_path)()
+end
diff --git a/nvim/.config/nvim/lua/plugins/comment.lua b/nvim/.config/nvim/lua/plugins/comment.lua
index 46f5032..a844323 100644..100755
--- a/nvim/.config/nvim/lua/plugins/comment.lua
+++ b/nvim/.config/nvim/lua/plugins/comment.lua
@@ -1 +1 @@
-return { 'numToStr/Comment.nvim' }
+require('Comment').setup()
diff --git a/nvim/.config/nvim/lua/plugins/conform.lua b/nvim/.config/nvim/lua/plugins/conform.lua
index 5220a84..83fd33d 100644..100755
--- a/nvim/.config/nvim/lua/plugins/conform.lua
+++ b/nvim/.config/nvim/lua/plugins/conform.lua
@@ -8,49 +8,10 @@ vim.api.nvim_create_autocmd("BufWritePre", {
end,
})
-return {
- "stevearc/conform.nvim",
- opts = {
- formatters_by_ft = {
- lua = { "stylua" },
- cpp = { "clang-format" },
- c = { "clang-format" },
- },
- }
+require("conform").setup {
+ formatters_by_ft = {
+ lua = { "stylua" },
+ cpp = { "clang-format" },
+ c = { "clang-format" },
+ },
}
--- {
--- config = function()
--- vim.api.nvim_create_autocmd("LspAttach", {
--- callback = function(args)
--- local bufnr = args.buf
--- local client = assert(vim.lsp.get_client_by_id(args.data.client_id), "must have valid client")
--- local builtin = require "telescope.builtin"
---
--- vim.opt_local.omnifunc = "v:lua.vim.lsp.omnifunc"
--- vim.keymap.set("n", "gd", vim.lsp.buf.definition, { buffer = 0 })
--- vim.keymap.set("n", "gD", vim.lsp.buf.declaration, { buffer = 0 })
--- vim.keymap.set("n", "gT", vim.lsp.buf.type_definition, { buffer = 0 })
--- vim.keymap.set("n", "<leader>ls", builtin.lsp_document_symbols, { desc = "[D]ocument [S]ymbols" })
--- vim.keymap.set("n", "<leader>lw", builtin.lsp_dynamic_workspace_symbols, { desc = "[W]orkspace Symbols" })
--- -- nmap("gd", builtin.lsp_definitions, { desc = "[G]oto [D]efinition" })
--- -- nmap("gr", builtin.lsp_references, { desc = "[G]oto [R]eferences" })
---
--- local filetype = vim.bo[bufnr].filetype
--- if disable_semantic_tokens[filetype] then
--- client.server_capabilities.semanticTokensProvider = nil
--- end
---
--- if client and client.server_capabilities.inlayHintProvider and vim.lsp.inlay_hint then
--- vim.keymap.set("n", "<leader>Th", function()
--- vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())
--- end, { desc = "[T]oggle Inlay [H]ints" })
--- end
--- end,
--- })
---
--- -- Autoformatting Setup
--- require("conform").setup {
--- }
---
--- end,
--- }
diff --git a/nvim/.config/nvim/lua/plugins/dadbod.lua b/nvim/.config/nvim/lua/plugins/dadbod.lua
deleted file mode 100644
index 8411fa5..0000000
--- a/nvim/.config/nvim/lua/plugins/dadbod.lua
+++ /dev/null
@@ -1,16 +0,0 @@
-return {
- "kristijanhusak/vim-dadbod-ui",
- dependencies = {
- { "tpope/vim-dadbod", lazy = true },
- { "kristijanhusak/vim-dadbod-completion", ft = { "sql", "mysql", "plsql" }, lazy = true },
- },
- cmd = {
- "DBUI",
- "DBUIToggle",
- "DBUIAddConnection",
- "DBUIFindBuffer",
- },
- init = function()
- vim.g.db_ui_use_nerd_fonts = 1
- end,
-}
diff --git a/nvim/.config/nvim/lua/plugins/fidget.lua b/nvim/.config/nvim/lua/plugins/fidget.lua
index 2d70394..945f564 100644..100755
--- a/nvim/.config/nvim/lua/plugins/fidget.lua
+++ b/nvim/.config/nvim/lua/plugins/fidget.lua
@@ -1,6 +1 @@
-return {
- "j-hui/fidget.nvim",
- opts = {
- -- options
- },
-}
+require("fidget").setup {}
diff --git a/nvim/.config/nvim/lua/plugins/gitsigns.lua b/nvim/.config/nvim/lua/plugins/gitsigns.lua
index 8856fae..8b99647 100644..100755
--- a/nvim/.config/nvim/lua/plugins/gitsigns.lua
+++ b/nvim/.config/nvim/lua/plugins/gitsigns.lua
@@ -1,65 +1,83 @@
-return {
- "lewis6991/gitsigns.nvim",
- config = function()
+require("gitsigns").setup {
+ signs = {
+ add = { text = "┃" },
+ change = { text = "┃" },
+ delete = { text = "_" },
+ topdelete = { text = "‾" },
+ changedelete = { text = "~" },
+ untracked = { text = "┆" },
+ },
+ signs_staged = {
+ add = { text = "┃" },
+ change = { text = "┃" },
+ delete = { text = "_" },
+ topdelete = { text = "‾" },
+ changedelete = { text = "~" },
+ untracked = { text = "┆" },
+ },
+ on_attach = function(bufnr)
local gitsigns = require "gitsigns"
- local on_attach = function(bufnr)
- local function map(mode, l, r, opts)
- opts = opts or {}
- opts.buffer = bufnr
- vim.keymap.set(mode, l, r, opts)
+ local function map(mode, l, r, opts)
+ opts = opts or {}
+ opts.buffer = bufnr
+ vim.keymap.set(mode, l, r, opts)
+ end
+
+ -- Navigation
+ map("n", "]c", function()
+ if vim.wo.diff then
+ vim.cmd.normal { "]c", bang = true }
+ else
+ gitsigns.nav_hunk "next"
+ end
+ end)
+
+ map("n", "[c", function()
+ if vim.wo.diff then
+ vim.cmd.normal { "[c", bang = true }
+ else
+ gitsigns.nav_hunk "prev"
end
+ end)
- -- Navigation
- map("n", "]c", function()
- if vim.wo.diff then
- vim.cmd.normal { "]c", bang = true }
- else
- gitsigns.nav_hunk "next"
- end
- end)
+ -- Actions
+ map("n", "<leader>gs", gitsigns.stage_hunk, { desc = "Stage hunk" })
+ map("n", "<leader>gr", gitsigns.reset_hunk, { desc = "Reset hunk" })
- map("n", "[c", function()
- if vim.wo.diff then
- vim.cmd.normal { "[c", bang = true }
- else
- gitsigns.nav_hunk "prev"
- end
- end)
+ map("v", "<leader>gs", function()
+ gitsigns.stage_hunk { vim.fn.line ".", vim.fn.line "v" }
+ end)
- -- Actions
- map("n", "<leader>gs", gitsigns.stage_hunk, { desc = "Stage hunk" })
- map("n", "<leader>gr", gitsigns.reset_hunk, { desc = "Reset hunk" })
- map("v", "<leader>gs", function()
- gitsigns.stage_hunk { vim.fn.line ".", vim.fn.line "v" }
- end, { desc = "Stage hunk" })
- map("v", "<leader>gr", function()
- gitsigns.reset_hunk { vim.fn.line ".", vim.fn.line "v" }
- end, { desc = "Reset hunk" })
- map("n", "<leader>gS", gitsigns.stage_buffer, { desc = "Stage buffer" })
- map("n", "<leader>gu", gitsigns.undo_stage_hunk, { desc = "Undo stage hunk" })
- map("n", "<leader>gR", gitsigns.reset_buffer, { desc = "Reset buffer" })
- map("n", "<leader>gp", gitsigns.preview_hunk, { desc = "Preview hunk" })
- map("n", "<leader>gb", function()
- gitsigns.blame_line { full = true }
- end, { desc = "Blame line" })
- map("n", "<leader>Tb", gitsigns.toggle_current_line_blame, { desc = "Toggle blame line" })
- map("n", "<leader>Td", gitsigns.toggle_deleted, { desc = "Toggle deleted" })
- map("n", "<leader>gd", gitsigns.diffthis, { desc = "Diff this" })
- map("n", "<leader>gD", function()
- gitsigns.diffthis "~"
- end, { desc = "Diff this ~" })
- end
+ map("v", "<leader>gr", function()
+ gitsigns.reset_hunk { vim.fn.line ".", vim.fn.line "v" }
+ end)
+
+ map("n", "<leader>gS", gitsigns.stage_buffer, { desc = "Stage buffer" })
+ map("n", "<leader>gR", gitsigns.reset_buffer, { desc = "Reset buffer" })
+ map("n", "<leader>gp", gitsigns.preview_hunk, { desc = "Preview hunk" })
+ map("n", "<leader>gi", gitsigns.preview_hunk_inline, { desc = "Preview hunk inline" })
+
+ map("n", "<leader>gb", function()
+ gitsigns.blame_line { full = true }
+ end, { desc = "Blame line full" })
+
+ map("n", "<leader>gd", gitsigns.diffthis, { desc = "Diff" })
+
+ map("n", "<leader>gD", function()
+ gitsigns.diffthis "~"
+ end, { desc = "Diff ~" })
+
+ map("n", "<leader>gQ", function()
+ gitsigns.setqflist "all"
+ end, { desc = "Setqflist all" })
+ map("n", "<leader>gq", gitsigns.setqflist, { desc = "Setqflist" })
+
+ -- Toggles
+ map("n", "<leader>tb", gitsigns.toggle_current_line_blame, { desc = "Toggle current line blame" })
+ map("n", "<leader>tw", gitsigns.toggle_word_diff, { desc = "Toggle word diff" })
- gitsigns.setup {
- signs = {
- add = { text = "+" },
- change = { text = "~" },
- delete = { text = "_" },
- topdelete = { text = "‾" },
- changedelete = { text = "~" },
- },
- on_attach = on_attach,
- }
+ -- Text object
+ map({ "o", "x" }, "ih", gitsigns.select_hunk, { desc = "Select hunk" })
end,
}
diff --git a/nvim/.config/nvim/lua/plugins/harpoon.lua b/nvim/.config/nvim/lua/plugins/harpoon.lua
index a464808..dcf3ee2 100644..100755
--- a/nvim/.config/nvim/lua/plugins/harpoon.lua
+++ b/nvim/.config/nvim/lua/plugins/harpoon.lua
@@ -1,32 +1,25 @@
-return {
- "ThePrimeagen/harpoon",
- branch = "harpoon2",
- dependencies = { "nvim-lua/plenary.nvim" },
- config = function()
- local harpoon = require("harpoon")
- harpoon:setup()
-
- vim.keymap.set("n", "<leader>a", function()
- harpoon:list():add()
- end, { desc = "Add buffer to harpoon" })
-
- vim.keymap.set("n", "<leader><leader>", function()
- harpoon.ui:toggle_quick_menu(harpoon:list())
- end, { desc = "Toggle harpoon menu" })
-
- vim.keymap.set("n", "<c-n>", function()
- require("harpoon"):list():next()
- end, { desc = "Goto next harpooned" })
-
- vim.keymap.set("n", "<c-p>", function()
- require("harpoon"):list():prev()
- end, { desc = "Goto prev harpooned" })
-
- -- Set <space>1..<space>5 be my shortcuts to moving to the files
- for _, idx in ipairs { 1, 2, 3, 4, 5 } do
- vim.keymap.set("n", string.format("<leader>%d", idx), function()
- harpoon:list():select(idx)
- end, { desc = string.format("Goto %d harpooned", idx) })
- end
- end,
-}
+-- local harpoon = require "harpoon"
+-- harpoon:setup()
+--
+-- vim.keymap.set("n", "<leader>a", function()
+-- harpoon:list():add()
+-- end, { desc = "Add buffer to harpoon" })
+--
+-- vim.keymap.set("n", "<leader><leader>", function()
+-- harpoon.ui:toggle_quick_menu(harpoon:list())
+-- end, { desc = "Toggle harpoon menu" })
+--
+-- vim.keymap.set("n", "<c-n>", function()
+-- require("harpoon"):list():next()
+-- end, { desc = "Goto next harpooned" })
+--
+-- vim.keymap.set("n", "<c-p>", function()
+-- require("harpoon"):list():prev()
+-- end, { desc = "Goto prev harpooned" })
+--
+-- -- Set <space>1..<space>5 be my shortcuts to moving to the files
+-- for _, idx in ipairs { 1, 2, 3, 4, 5 } do
+-- vim.keymap.set("n", string.format("<leader>%d", idx), function()
+-- harpoon:list():select(idx)
+-- end, { desc = string.format("Goto %d harpooned", idx) })
+-- end
diff --git a/nvim/.config/nvim/lua/plugins/lazydev.lua b/nvim/.config/nvim/lua/plugins/lazydev.lua
index 82739c2..0dfa477 100644..100755
--- a/nvim/.config/nvim/lua/plugins/lazydev.lua
+++ b/nvim/.config/nvim/lua/plugins/lazydev.lua
@@ -1,10 +1,6 @@
-return {
- "folke/lazydev.nvim",
- ft = "lua", -- only load on lua files
- opts = {
- library = {
- -- Load luvit types when the `vim.uv` word is found
- { path = "${3rd}/luv/library", words = { "vim%.uv" } },
- },
+require("lazydev").setup {
+ library = {
+ -- Load luvit types when the `vim.uv` word is found
+ { path = "${3rd}/luv/library", words = { "vim%.uv" } },
},
}
diff --git a/nvim/.config/nvim/lua/plugins/leap.lua b/nvim/.config/nvim/lua/plugins/leap.lua
index 649f96e..97dcc63 100644..100755
--- a/nvim/.config/nvim/lua/plugins/leap.lua
+++ b/nvim/.config/nvim/lua/plugins/leap.lua
@@ -1,9 +1,3 @@
-return {
- "ggandor/leap.nvim",
- lazy = false, --TODO: lazy
- config = function()
- vim.keymap.set("n", "s", "<Plug>(leap)", { desc = "Leap" })
- vim.keymap.set("n", "S", "<Plug>(leap-from-window)", { desc = "Leap other window" })
- require("leap").setup { safe_labels = {} }
- end,
-}
+require("leap").setup { safe_labels = {} }
+vim.keymap.set("n", "s", "<Plug>(leap)", { desc = "Leap" })
+vim.keymap.set("n", "S", "<Plug>(leap-from-window)", { desc = "Leap other window" })
diff --git a/nvim/.config/nvim/lua/plugins/leetcode.lua b/nvim/.config/nvim/lua/plugins/leetcode.lua
new file mode 100644
index 0000000..1c6d550
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/leetcode.lua
@@ -0,0 +1 @@
+require("leetcode").setup {}
diff --git a/nvim/.config/nvim/lua/plugins/lualine.lua b/nvim/.config/nvim/lua/plugins/lualine.lua
index 661f7fc..c200066 100644..100755
--- a/nvim/.config/nvim/lua/plugins/lualine.lua
+++ b/nvim/.config/nvim/lua/plugins/lualine.lua
@@ -1,5 +1 @@
-return {
- "nvim-lualine/lualine.nvim",
- dependencies = { "nvim-tree/nvim-web-devicons" },
- config = true,
-}
+require("lualine").setup {}
diff --git a/nvim/.config/nvim/lua/plugins/mini.lua b/nvim/.config/nvim/lua/plugins/mini.lua
index 654222e..cb1d50a 100644..100755
--- a/nvim/.config/nvim/lua/plugins/mini.lua
+++ b/nvim/.config/nvim/lua/plugins/mini.lua
@@ -1,8 +1 @@
-return { -- Collection of various small independent plugins/modules
- "echasnovski/mini.nvim",
- dependencies = "nvim-treesitter/nvim-treesitter",
- config = function()
- -- Better Around/Inside textobjects
- require("mini.ai").setup { n_lines = 500 }
- end,
-}
+require("mini.ai").setup { n_lines = 500 }
diff --git a/nvim/.config/nvim/lua/plugins/neogit.lua b/nvim/.config/nvim/lua/plugins/neogit.lua
new file mode 100644
index 0000000..3371247
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/neogit.lua
@@ -0,0 +1,4 @@
+git = require "neogit"
+git.setup {}
+
+vim.keymap.set("n", "<leader>gg", git.open, { desc = "Neogit" })
diff --git a/nvim/.config/nvim/lua/plugins/neorg.lua b/nvim/.config/nvim/lua/plugins/neorg.lua
index 455b80d..3a3ecb1 100644..100755
--- a/nvim/.config/nvim/lua/plugins/neorg.lua
+++ b/nvim/.config/nvim/lua/plugins/neorg.lua
@@ -1,22 +1,14 @@
-return {}
--- return {
--- "nvim-neorg/neorg",
--- lazy = false,
--- version = "*",
--- config = function()
--- require("neorg").setup {
--- load = {
--- ["core.defaults"] = {},
--- ["core.concealer"] = {},
--- ["core.dirman"] = {
--- config = {
--- workspaces = {
--- notes = "~/notes"
--- },
--- default_workspace = "notes"
--- }
--- },
--- }
--- }
--- end,
--- }
+require("neorg").setup {
+ load = {
+ ["core.defaults"] = {},
+ ["core.concealer"] = {},
+ ["core.dirman"] = {
+ config = {
+ workspaces = {
+ notes = "~/notes"
+ },
+ default_workspace = "notes"
+ }
+ },
+ }
+}
diff --git a/nvim/.config/nvim/lua/plugins/oil.lua b/nvim/.config/nvim/lua/plugins/oil.lua
new file mode 100644
index 0000000..dbd8197
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/oil.lua
@@ -0,0 +1,23 @@
+require("oil").setup {
+ keymaps = {
+ ["g?"] = { "actions.show_help", mode = "n" },
+ ["<CR>"] = "actions.select",
+ ["<C-v>"] = { "actions.select", opts = { vertical = true } },
+ ["<C-s>"] = { "actions.select", opts = { horizontal = true } },
+ ["<C-t>"] = { "actions.select", opts = { tab = true } },
+ ["<C-p>"] = "actions.preview",
+ ["<C-c>"] = { "actions.close", mode = "n" },
+ ["<C-m>"] = "actions.refresh",
+ ["-"] = { "actions.parent", mode = "n" },
+ ["_"] = { "actions.open_cwd", mode = "n" },
+ ["`"] = { "actions.cd", mode = "n" },
+ ["~"] = { "actions.cd", opts = { scope = "tab" }, mode = "n" },
+ ["gs"] = { "actions.change_sort", mode = "n" },
+ ["gx"] = "actions.open_external",
+ ["g."] = { "actions.toggle_hidden", mode = "n" },
+ ["g\\"] = { "actions.toggle_trash", mode = "n" },
+ },
+ use_default_keymaps = false,
+}
+
+vim.keymap.set("n", "<leader>e", "<cmd>Oil<cr>", { desc = "Open file explorer" })
diff --git a/nvim/.config/nvim/lua/plugins/poimandres.lua b/nvim/.config/nvim/lua/plugins/poimandres.lua
new file mode 100755
index 0000000..4b43ea7
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/poimandres.lua
@@ -0,0 +1 @@
+require('poimandres').setup { }
diff --git a/nvim/.config/nvim/lua/plugins/rest.lua b/nvim/.config/nvim/lua/plugins/rest.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/rest.lua
diff --git a/nvim/.config/nvim/lua/plugins/sort.lua b/nvim/.config/nvim/lua/plugins/sort.lua
index f5483e6..4ee0618 100644..100755
--- a/nvim/.config/nvim/lua/plugins/sort.lua
+++ b/nvim/.config/nvim/lua/plugins/sort.lua
@@ -1 +1 @@
-return { "sQVe/sort.nvim" }
+ require("sort").setup({ })
diff --git a/nvim/.config/nvim/lua/plugins/substitude.lua b/nvim/.config/nvim/lua/plugins/substitude.lua
index 4e2c02f..7615c91 100644..100755
--- a/nvim/.config/nvim/lua/plugins/substitude.lua
+++ b/nvim/.config/nvim/lua/plugins/substitude.lua
@@ -1,11 +1,5 @@
-return {
- "gbprod/substitute.nvim",
- config = function()
- require("substitute").setup {}
+require("substitute").setup {}
- vim.keymap.set("n", ",", require("substitute").operator, { noremap = true })
- vim.keymap.set("n", ",,", require("substitute").line, { noremap = true })
- -- vim.keymap.set("n", "", require("substitute").eol, { noremap = true })
- vim.keymap.set("x", ",", require("substitute").visual, { noremap = true })
- end,
-}
+vim.keymap.set("n", ";", require("substitute").operator, { noremap = true })
+-- vim.keymap.set("n", ",,", require("substitute").line, { noremap = true })
+vim.keymap.set("x", ";", require("substitute").visual, { noremap = true })
diff --git a/nvim/.config/nvim/lua/plugins/surround.lua b/nvim/.config/nvim/lua/plugins/surround.lua
index e3c3c6c..bd6daf2 100644..100755
--- a/nvim/.config/nvim/lua/plugins/surround.lua
+++ b/nvim/.config/nvim/lua/plugins/surround.lua
@@ -1,6 +1 @@
-return {
- "kylechui/nvim-surround",
- event = { "BufReadPre", "BufNewFile" },
- version = "*",
- config = true,
-}
+require("nvim-surround").setup {}
diff --git a/nvim/.config/nvim/lua/plugins/telescope.lua b/nvim/.config/nvim/lua/plugins/telescope.lua
index a8d6484..8644006 100644..100755
--- a/nvim/.config/nvim/lua/plugins/telescope.lua
+++ b/nvim/.config/nvim/lua/plugins/telescope.lua
@@ -1,7 +1,7 @@
return {
"nvim-telescope/telescope.nvim",
event = "VimEnter",
- branch = "0.1.x",
+ branch = "0.1.8",
dependencies = {
"nvim-lua/plenary.nvim",
{ "nvim-telescope/telescope-fzf-native.nvim", build = "make" },
@@ -14,10 +14,6 @@ return {
extensions = {
fzf = {},
wrap_results = true,
- history = {
- -- path = vim.fs.joinpath(data, "telescope_history.sqlite3"),
- limit = 100,
- },
["ui-select"] = {
require("telescope.themes").get_dropdown(),
},
diff --git a/nvim/.config/nvim/lua/plugins/textcase.lua b/nvim/.config/nvim/lua/plugins/textcase.lua
index e335b38..e335b38 100644..100755
--- a/nvim/.config/nvim/lua/plugins/textcase.lua
+++ b/nvim/.config/nvim/lua/plugins/textcase.lua
diff --git a/nvim/.config/nvim/lua/plugins/themes.lua b/nvim/.config/nvim/lua/plugins/themes.lua
deleted file mode 100644
index 0f9ca03..0000000
--- a/nvim/.config/nvim/lua/plugins/themes.lua
+++ /dev/null
@@ -1,7 +0,0 @@
-return {
- { "ellisonleao/gruvbox.nvim", priority = 1000, config = function()
- require("gruvbox").setup({})
- vim.cmd([[colorscheme gruvbox]])
- end
- },
-}
diff --git a/nvim/.config/nvim/lua/plugins/todo-comments.lua b/nvim/.config/nvim/lua/plugins/todo-comments.lua
index 4b46f89..4b46f89 100644..100755
--- a/nvim/.config/nvim/lua/plugins/todo-comments.lua
+++ b/nvim/.config/nvim/lua/plugins/todo-comments.lua
diff --git a/nvim/.config/nvim/lua/plugins/toggleterm.lua b/nvim/.config/nvim/lua/plugins/toggleterm.lua
index 7f20237..7f20237 100644..100755
--- a/nvim/.config/nvim/lua/plugins/toggleterm.lua
+++ b/nvim/.config/nvim/lua/plugins/toggleterm.lua
diff --git a/nvim/.config/nvim/lua/plugins/treesitter.lua b/nvim/.config/nvim/lua/plugins/treesitter.lua
index 9e01e7d..695dd9b 100644..100755
--- a/nvim/.config/nvim/lua/plugins/treesitter.lua
+++ b/nvim/.config/nvim/lua/plugins/treesitter.lua
@@ -8,19 +8,19 @@ return {
ensure_installed = {
"bash",
"c",
+ "cmake",
+ "cpp",
"diff",
"html",
+ "http",
+ "json",
"lua",
"luadoc",
- "json",
"markdown",
+ "proto",
+ "query",
"vim",
"vimdoc",
- "cpp",
- "cmake",
- "query",
- "http",
- "proto",
"xml",
},
highlight = { enable = true },
diff --git a/nvim/.config/nvim/lua/plugins/which-key.lua b/nvim/.config/nvim/lua/plugins/which-key.lua
index 42ebe43..72161bf 100644..100755
--- a/nvim/.config/nvim/lua/plugins/which-key.lua
+++ b/nvim/.config/nvim/lua/plugins/which-key.lua
@@ -1,24 +1,11 @@
-return {
- "folke/which-key.nvim",
- event = "VeryLazy",
- opts = {
- -- TODO: move this to where mappings created
- spec = {
- { "<leader>f", desc = "Find" },
- { "<leader>T", desc = "Toggle options" },
- { "<leader>t", desc = "ToggleTerm" },
- { "<leader>g", desc = "Git" },
- { "<leader>l", desc = "LSP" },
- { "<leader><tab>", desc = "Tab pages" },
- }
- },
- keys = {
- {
- "<leader>?",
- function()
- require("which-key").show({ global = false })
- end,
- desc = "Buffer Local Keymaps (which-key)",
- },
- },
+local wk = require "which-key"
+
+wk.setup {}
+
+wk.add {
+ { "<leader><tab>", group = "Tab pages" },
+ { "<leader>f", group = "Find" },
+ { "<leader>g", group = "Git" },
+ { "<leader>l", group = "LSP" },
+ { "<leader>t", group = "Toggle" },
}
diff --git a/nvim/.config/nvim/lua/plugins/zen-mode.lua b/nvim/.config/nvim/lua/plugins/zen-mode.lua
new file mode 100644
index 0000000..f857733
--- /dev/null
+++ b/nvim/.config/nvim/lua/plugins/zen-mode.lua
@@ -0,0 +1,5 @@
+zen = require "zen-mode"
+
+zen.setup {}
+
+vim.keymap.set("n", "<leader>tz", zen.toggle, { desc = "Zen mode" })
diff --git a/nvim/.config/nvim/lua/terminal.lua b/nvim/.config/nvim/lua/terminal.lua
index 2327a34..2327a34 100644..100755
--- a/nvim/.config/nvim/lua/terminal.lua
+++ b/nvim/.config/nvim/lua/terminal.lua
diff --git a/nvim/.config/nvim/rocks.toml b/nvim/.config/nvim/rocks.toml
new file mode 100644
index 0000000..ac5fe83
--- /dev/null
+++ b/nvim/.config/nvim/rocks.toml
@@ -0,0 +1,93 @@
+[rocks]
+
+[plugins]
+"rocks.nvim" = "2.45.0"
+"rocks-git.nvim" = "2.5.3"
+"rocks-config.nvim" = "3.1.1"
+"rocks-lazy.nvim" = "1.2.0"
+"rocks-dev.nvim" = "1.8.0"
+"rocks-treesitter.nvim" = "1.3.0"
+
+"auto-hlsearch.nvim" = { version = "1.1.0", event = "CmdlineEnter" }
+"better-escape.nvim" = "2.3.3"
+"cellular-automaton.nvim" = "scm"
+"comment.nvim" = "0.8.0"
+"conform.nvim" = "9.0.0"
+"diffview.nvim" = "scm"
+"gitsigns.nvim" = "1.0.2"
+"kanagawa.nvim" = "scm"
+"lazydev.nvim" = {version = "1.9.0", ft = "lua"}
+"leap.nvim" = "scm"
+"lspkind.nvim" = "scm"
+"lualine.nvim" = "scm"
+"mini.ai" = "0.16.0"
+"oil.nvim" = "2.15.0"
+"repeat.vim" = "1.2"
+"rest.nvim" = "3.13.0"
+"substitute.nvim" = "2.0.0"
+"todo-comments.nvim" = "1.4.0"
+"toggleterm.nvim" = "2.13.1"
+"which-key.nvim" = "3.17.0"
+auto-session = "2.5.1"
+cmp-buffer = "scm"
+cmp-git = "scm"
+cmp-nvim-lsp = "scm"
+cmp-path = "scm"
+cmp_luasnip = "scm"
+friendly-snippets = "scm"
+harpoon = "scm"
+luasnip = "2.4.0"
+neogit = "2.0.0"
+neorg = {version = "9.3.0", ft = "norg"}
+neorg-conceal-wrap = "1.0.1"
+nvim-autopairs = { version = "scm", event = "InsertEnter" }
+nvim-bqf = { version = "1.1.1", ft = "qf" }
+nvim-cmp = { version = "scm", event = "InsertEnter" }
+nvim-dap = "0.10.0"
+nvim-dap-ui = "4.0.0"
+nvim-dap-virtual-text = "scm"
+nvim-treesitter-textobjects = "scm"
+nvim-web-devicons = "0.100"
+telescope = "0.6.0"
+vim-cool = { git = "romainl/vim-cool" }
+vim-startuptime = "4.5.0"
+"zen-mode.nvim" = "1.4.0"
+
+tree-sitter-bash = "scm"
+tree-sitter-c = "scm"
+tree-sitter-cmake = "scm"
+tree-sitter-comment = "0.0.31"
+tree-sitter-cpp = "scm"
+tree-sitter-css = "0.0.38"
+tree-sitter-diff = "scm"
+tree-sitter-ecma = "0.0.30"
+tree-sitter-gnuplot = "0.0.30"
+tree-sitter-html = "0.0.36"
+tree-sitter-http = "scm"
+tree-sitter-jsdoc = "0.0.35"
+tree-sitter-json = "0.0.36"
+tree-sitter-lua = "0.0.35"
+tree-sitter-luadoc = "0.0.29"
+tree-sitter-markdown = "scm"
+tree-sitter-nix = "0.0.59"
+tree-sitter-query = "scm"
+tree-sitter-scheme = "0.0.35"
+tree-sitter-sql = "0.0.41"
+tree-sitter-toml = "0.0.31"
+tree-sitter-vim = "0.0.34"
+tree-sitter-vimdoc = "0.0.34"
+tree-sitter-xml = "scm"
+tree-sitter-yaml = "0.0.36"
+tree-sitter-make = "0.0.30"
+"gruvbox.nvim" = "2.0.0"
+
+[plugins."poimandres.nvim" ]
+git = "olivercederborg/poimandres.nvim"
+rev = "v0.6.0"
+
+[plugins."nvim-surround" ]
+git = "kylechui/nvim-surround"
+rev = "v3.1.2"
+
+[plugins."sort.nvim" ]
+git = "sQVe/sort.nvim"
diff --git a/nvim/.config/nvim/stylua.toml b/nvim/.config/nvim/stylua.toml
index 364ef9c..364ef9c 100644..100755
--- a/nvim/.config/nvim/stylua.toml
+++ b/nvim/.config/nvim/stylua.toml
diff --git a/nvim/after b/nvim/after
new file mode 120000
index 0000000..b2e1b86
--- /dev/null
+++ b/nvim/after
@@ -0,0 +1 @@
+.config/nvim/after \ No newline at end of file
diff --git a/nvim/init.lua b/nvim/init.lua
new file mode 120000
index 0000000..766342e
--- /dev/null
+++ b/nvim/init.lua
@@ -0,0 +1 @@
+.config/nvim/init.lua \ No newline at end of file
diff --git a/nvim/lsp b/nvim/lsp
new file mode 120000
index 0000000..5bb40be
--- /dev/null
+++ b/nvim/lsp
@@ -0,0 +1 @@
+.config/nvim/lsp \ No newline at end of file
diff --git a/nvim/lua b/nvim/lua
new file mode 120000
index 0000000..7b503c0
--- /dev/null
+++ b/nvim/lua
@@ -0,0 +1 @@
+.config/nvim/lua \ No newline at end of file
diff --git a/nvim/rocks.toml b/nvim/rocks.toml
new file mode 120000
index 0000000..413f91f
--- /dev/null
+++ b/nvim/rocks.toml
@@ -0,0 +1 @@
+.config/nvim/rocks.toml \ No newline at end of file
diff --git a/nvim/stylua.toml b/nvim/stylua.toml
new file mode 120000
index 0000000..b28c29c
--- /dev/null
+++ b/nvim/stylua.toml
@@ -0,0 +1 @@
+.config/nvim/stylua.toml \ No newline at end of file
diff --git a/rofi/.config/rofi/config.rasi b/rofi/.config/rofi/config.rasi
new file mode 100644
index 0000000..f035020
--- /dev/null
+++ b/rofi/.config/rofi/config.rasi
@@ -0,0 +1 @@
+@theme "spotlight-dark"
diff --git a/stylua/stylua.toml b/stylua/stylua.toml
index 364ef9c..364ef9c 100644..100755
--- a/stylua/stylua.toml
+++ b/stylua/stylua.toml
diff --git a/tmux/.tmux.conf b/tmux/.tmux.conf
deleted file mode 100644
index 8fec4b2..0000000
--- a/tmux/.tmux.conf
+++ /dev/null
@@ -1,91 +0,0 @@
-# Keybindings
-setw -g mode-keys vi
-bind-key k select-pane -U
-bind-key j select-pane -D
-bind-key h select-pane -L
-bind-key l select-pane -R
-bind-key M-k resize-pane -U 5
-bind-key M-j resize-pane -D 5
-bind-key M-h resize-pane -L 5
-bind-key M-l resize-pane -R 5
-bind 'v' copy-mode
-
-
-unbind '"'
-unbind %
-bind-key "\\" split-window -h -c "#{pane_current_path}"
-bind-key "|" split-window -fh -c "#{pane_current_path}"
-bind-key "-" split-window -v -c "#{pane_current_path}"
-bind-key "_" split-window -fv -c "#{pane_current_path}"
-
-unbind c
-bind c new-window -c "#{pane_current_path}"
-
-unbind r
-bind r source-file $HOME/.tmux.conf
-
-set -g prefix C-s
-
-# start window numbers at 1 to match keyboard order with tmux window order
-set -g base-index 1
-set-window-option -g pane-base-index 1
-
-# renumber windows sequentially after closing any of them
-set -g renumber-windows on
-
-# remove administrative debris (session name, hostname, time) in status bar
-set -g status-left ''
-set -g status-right ''
-
-# increase scrollback lines
-set -g history-limit 50000
-
-# don't suspend-client
-unbind-key C-z
-
-
-# Style
-
-# Dark grey background
-set -g default-terminal "screen-256color"
-set -ag terminal-overrides ",xterm-256color:Tc"
-
-# Pane border
-set -g pane-border-style fg=cyan
-set -g pane-active-border-style fg=green
-
-# Status bar
-set -g status-style bg=black,fg=yellow
-set -g window-status-style fg=green,bold
-
-# Message/input
-set -g message-style bg=black,fg=white
-
-# Pane text
-set -g pane-border-style fg=white
-
-
-# Plugins
-set-environment -g TMUX_PLUGIN_MANAGER_PATH $XDG_DATA_HOME/tmux/plugins/
-
-# List of plugins
-set -g @plugin 'tmux-plugins/tpm'
-set -g @plugin 'tmux-plugins/tmux-sensible'
-set -g @plugin 'tmux-plugins/tmux-yank'
-
-set -g @plugin 'tmux-plugins/tmux-resurrect'
-set -g @plugin 'tmux-plugins/tmux-continuum'
-set -g @plugin 'tmux-plugins/tmux-sessionist'
-
-# restore: neovim session, automatic
-set -g @resurrect-strategy-nvim 'session'
-set -g @resurrect-capture-pane-contents 'on'
-set -g @continuum-restore 'on'
-set -g @continuum-save-interval '5'
-
-run $XDG_DATA_HOME'/tmux/plugins/tpm/tpm'
-run-shell $XDG_DATA_HOME'/tmux/plugins/tmux-continuum/continuum.tmux'
-run-shell $XDG_DATA_HOME'/tmux/plugins/tmux-sessionist/sessionist.tmux'
-run-shell $XDG_DATA_HOME'/tmux/plugins/tmux-resurrect/resurrect.tmux'
-
-
diff --git a/waybar/.config/waybar/config.jsonc b/waybar/.config/waybar/config.jsonc
new file mode 100755
index 0000000..7020d51
--- /dev/null
+++ b/waybar/.config/waybar/config.jsonc
@@ -0,0 +1,41 @@
+{
+ "reload_style_on_change" : true,
+ "position": "top",
+ "height" : 32,
+ "modules-left": ["hyprland/workspaces"],
+ "modules-right": ["network", "wireplumber", "backlight", "battery", "clock"],
+ "clock": {
+ "format": "<span foreground='#f5c2e7'> </span>{:%a %d %H:%M}"
+ },
+ "battery": {
+ "states": {
+ "warning": 30,
+ "critical": 15
+ },
+ "format": "<span foreground='#a6e3a1'>{icon} </span> {capacity}%",
+ "format-warning": "<span foreground='#B1E3AD'>{icon} </span> {capacity}%",
+ "format-critical": "<span foreground='#E38C8F'>{icon} </span> {capacity}%",
+ "format-charging": "<span foreground='#B1E3AD'> </span>{capacity}%",
+ "format-plugged": "<span foreground='#B1E3AD'> </span>{capacity}%",
+ "format-icons": ["", "", "", "", ""],
+ "tooltip-format": "{time}"
+ },
+ "network": {
+ "format-wifi": " ",
+ "format-ethernet": "🌐",
+ "format-linked": "{ifname} (No IP) ",
+ "format-disconnected": " ",
+ "tooltip-format-wifi": "{essid}. Signal Strenght: {signalStrength}%"
+ },
+ "wireplumber": {
+ "format": "{icon} {volume}%",
+ "format-muted": "🔇",
+ "format-icons": {
+ "default": ["🔈", "🔉", "🔊"]
+ }
+ },
+ "backlight": {
+ "format": "{icon} {percent}%",
+ "format-icons": ["🔆"]
+ }
+}
diff --git a/waybar/.config/waybar/style.css b/waybar/.config/waybar/style.css
new file mode 100755
index 0000000..a1be003
--- /dev/null
+++ b/waybar/.config/waybar/style.css
@@ -0,0 +1,73 @@
+* {
+ font-size: 14px;
+ font-weight: normal;
+ color: white;
+}
+
+window#waybar {
+ background: rgba(120, 120, 120, 0.30);
+}
+
+#workspaces {
+ padding: 2px 0;
+}
+
+#workspaces button {
+ border: none;
+ border-radius: 10px;
+ margin: 0 2px;
+ padding: 0 6px;
+}
+
+#workspaces button:hover {
+ background-color: transparent;
+ background: rgba(120, 120, 120, 0.30);
+ box-shadow: inherit;
+ text-shadow: inherit;
+}
+
+#workspaces button.focused {
+ /*background-color: rgba(0, 0, 0, 0);*/
+}
+
+#workspaces button.active {
+ background-color: rgba(0, 0, 0, 0.3);
+}
+
+#workspaces button.urgent {
+ background-color: #eb4d4b;
+}
+
+
+#pulseaudio,
+#clock,
+#battery,
+#cpu,
+#memory,
+#disk,
+#temperature,
+#backlight,
+#wireplumber,
+#tray,
+#network,
+#mode,
+#scratchpad {
+ margin-top: 2px;
+ margin-bottom: 2px;
+ margin-left: 4px;
+ margin-right: 4px;
+ padding-left: 4px;
+ padding-right: 4px;
+}
+
+#network {
+ color: #9BC7FF
+}
+
+.modules-left>widget:first-child>#workspaces {
+ margin-left: 10px;
+}
+
+.modules-right>widget:last-child>#workspaces {
+ margin-right: 0;
+}
diff --git a/zsh/.config/zsh/.zprofile b/zsh/.config/zsh/.zprofile
index 9e5f5fd..9e5f5fd 100644..100755
--- a/zsh/.config/zsh/.zprofile
+++ b/zsh/.config/zsh/.zprofile
diff --git a/zsh/.config/zsh/.zshrc b/zsh/.config/zsh/.zshrc
index fe0a35f..5c489a7 100644..100755
--- a/zsh/.config/zsh/.zshrc
+++ b/zsh/.config/zsh/.zshrc
@@ -110,8 +110,8 @@ bindkey '^e' edit-command-line
# Aliases
alias v=nvim
alias ls="ls --color"
-alias la="ls -la"
-alias c='clear; tmux clear-history'
+alias la="ls -lah"
+alias c='clear'
alias x='source $ZDOTDIR/.zshrc'
function fkill () {
(date; ps -ef) |
@@ -135,6 +135,9 @@ alias gl='git log'
alias gsh='git show'
alias gsw='git switch'
+alias -g L=' | less -R'
+alias -g G=' | grep'
+
# Shell integrations
source <(fzf --zsh)
diff --git a/zsh/.config/zsh/functions.zsh b/zsh/.config/zsh/functions.zsh
index e854a4a..e854a4a 100644..100755
--- a/zsh/.config/zsh/functions.zsh
+++ b/zsh/.config/zsh/functions.zsh
diff --git a/zsh/.zshenv b/zsh/.zshenv
index b2783f6..7210cc0 100644..100755
--- a/zsh/.zshenv
+++ b/zsh/.zshenv
@@ -1,2 +1,14 @@
# ZSH config dir
export ZDOTDIR=$HOME/.config/zsh
+
+# TODO: DELETE THIS AS SOON AS THIS WILL BE UNNECESSARY
+# This is just a fix of some gtk bug which stops opening
+# transmission, pavucontrol and maybe other
+export GSK_RENDERER=ngl
+
+export XDG_CACHE_HOME=$HOME/.cache
+export XDG_CONFIG_HOME=$HOME/.config
+export XDG_DATA_HOME=$HOME/.local/share
+export XDG_STATE_HOME=$HOME/.local/state
+
+[[ -f "$XDG_CONFIG_HOME/user-dirs.dirs" ]] && . "$XDG_CONFIG_HOME/user-dirs.dirs"