summaryrefslogtreecommitdiff
path: root/archive/.config
diff options
context:
space:
mode:
authorJack Jamison <jackqjamison@gmail.com>2026-05-13 19:32:22 -0400
committerJack Jamison <jackqjamison@gmail.com>2026-05-13 19:32:22 -0400
commit2f3f91682f7b4a33f1791781bfa8eca4f7c9527a (patch)
treeeaf91e90301d87363bcb22dcd5c2253e0b0bad6d /archive/.config
parentbe8c956b0e819f2db0c6ae3598b6590b62982a83 (diff)
new system on gentoo
Diffstat (limited to 'archive/.config')
-rw-r--r--archive/.config/alacritty/alacritty.toml14
-rw-r--r--archive/.config/alacritty/theme.toml29
-rw-r--r--archive/.config/fastfetch/config.jsonc33
-rw-r--r--archive/.config/fuzzel/fuzzel.ini120
-rw-r--r--archive/.config/hypr/binds.conf93
-rw-r--r--archive/.config/hypr/hypridle.conf9
-rw-r--r--archive/.config/hypr/hyprland.conf123
-rw-r--r--archive/.config/hypr/hyprlock.conf40
-rw-r--r--archive/.config/hypr/hyprpaper.conf2
-rw-r--r--archive/.config/kitty/kitty.conf13
-rw-r--r--archive/.config/nvim/.gitignore1
-rw-r--r--archive/.config/nvim/TODO5
-rw-r--r--archive/.config/nvim/init.lua24
-rw-r--r--archive/.config/nvim/lua/autocmds.lua22
-rw-r--r--archive/.config/nvim/lua/keymaps.lua49
-rw-r--r--archive/.config/nvim/lua/options.lua40
-rw-r--r--archive/.config/nvim/lua/plugins/cmp.lua53
-rw-r--r--archive/.config/nvim/lua/plugins/colorscheme.lua6
-rw-r--r--archive/.config/nvim/lua/plugins/comment.lua4
-rw-r--r--archive/.config/nvim/lua/plugins/fidget.lua17
-rw-r--r--archive/.config/nvim/lua/plugins/glance.lua10
-rw-r--r--archive/.config/nvim/lua/plugins/init.lua1
-rw-r--r--archive/.config/nvim/lua/plugins/lspconfig.lua96
-rw-r--r--archive/.config/nvim/lua/plugins/luadev.lua5
-rw-r--r--archive/.config/nvim/lua/plugins/luasnip.lua12
-rw-r--r--archive/.config/nvim/lua/plugins/multicursor.lua61
-rw-r--r--archive/.config/nvim/lua/plugins/neogit.lua8
-rw-r--r--archive/.config/nvim/lua/plugins/pair.lua5
-rw-r--r--archive/.config/nvim/lua/plugins/scroll.lua23
-rw-r--r--archive/.config/nvim/lua/plugins/signature.lua10
-rw-r--r--archive/.config/nvim/lua/plugins/surround.lua21
-rw-r--r--archive/.config/nvim/lua/plugins/telescope.lua45
-rw-r--r--archive/.config/nvim/lua/plugins/treesitter.lua24
-rw-r--r--archive/.config/nvim/lua/plugins/trouble.lua37
-rw-r--r--archive/.config/nvim/lua/plugins/yank.lua10
-rw-r--r--archive/.config/sway/config233
-rw-r--r--archive/.config/tmux/tmux.conf5
37 files changed, 1303 insertions, 0 deletions
diff --git a/archive/.config/alacritty/alacritty.toml b/archive/.config/alacritty/alacritty.toml
new file mode 100644
index 0000000..5766001
--- /dev/null
+++ b/archive/.config/alacritty/alacritty.toml
@@ -0,0 +1,14 @@
+[general]
+import = [
+ "~/.config/alacritty/themes/themes/theme.toml"
+]
+
+[window]
+padding = { x = 5, y = 5 }
+opacity = 1.0
+
+[font]
+size = 13.0
+
+[font.normal]
+family = "Fantasque Sans Mono" \ No newline at end of file
diff --git a/archive/.config/alacritty/theme.toml b/archive/.config/alacritty/theme.toml
new file mode 100644
index 0000000..cd09ebe
--- /dev/null
+++ b/archive/.config/alacritty/theme.toml
@@ -0,0 +1,29 @@
+# Colors (Tokyo Night)
+# Source https//github.com/zatchheems/tokyo-night-alacritty-theme
+
+# Default colors
+[colors.primary]
+background = '#1a1b26'
+foreground = '#a9b1d6'
+
+# Normal colors
+[colors.normal]
+black = '#32344a'
+red = '#f7768e'
+green = '#9ece6a'
+yellow = '#e0af68'
+blue = '#7aa2f7'
+magenta = '#ad8ee6'
+cyan = '#449dab'
+white = '#787c99'
+
+# Bright colors
+[colors.bright]
+black = '#444b6a'
+red = '#ff7a93'
+green = '#b9f27c'
+yellow = '#ff9e64'
+blue = '#7da6ff'
+magenta = '#bb9af7'
+cyan = '#0db9d7'
+white = '#acb0d0' \ No newline at end of file
diff --git a/archive/.config/fastfetch/config.jsonc b/archive/.config/fastfetch/config.jsonc
new file mode 100644
index 0000000..52344a9
--- /dev/null
+++ b/archive/.config/fastfetch/config.jsonc
@@ -0,0 +1,33 @@
+{
+ "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
+ "modules": [
+ "title",
+ "separator",
+ "os",
+ "host",
+ "kernel",
+ "uptime",
+ "packages",
+ "shell",
+ "display",
+ "de",
+ "wm",
+ "wmtheme",
+ "theme",
+ "icons",
+ "font",
+ "cursor",
+ "terminal",
+ "terminalfont",
+ "cpu",
+ "gpu",
+ "memory",
+ "swap",
+ "disk",
+ "battery",
+ "poweradapter",
+ "locale",
+ "break",
+ "colors"
+ ]
+}
diff --git a/archive/.config/fuzzel/fuzzel.ini b/archive/.config/fuzzel/fuzzel.ini
new file mode 100644
index 0000000..d89c975
--- /dev/null
+++ b/archive/.config/fuzzel/fuzzel.ini
@@ -0,0 +1,120 @@
+# output=<not set>
+# font=monospace
+# dpi-aware=auto
+# use-bold=no
+# prompt="> "
+# placeholder=
+# icon-theme=default
+# icons-enabled=yes
+# hide-before-typing=no
+# fields=filename,name,generic
+# password-character=*
+# filter-desktop=no
+# match-mode=fzf
+# sort-result=yes
+# match-counter=no
+# delayed-filter-ms=300
+# delayed-filter-limit=20000
+# show-actions=no
+# terminal=$TERMINAL -e # Note: you cannot actually use environment variables here
+# launch-prefix=<not set>
+# list-executables-in-path=no
+
+# anchor=center
+# x-margin=0
+# y-margin=0
+# lines=15
+# width=30
+# tabs=8
+# horizontal-pad=40
+# vertical-pad=8
+# inner-pad=0
+
+# scaling-filter=bilinear
+image-size-ratio=0.5
+
+# gamma-correct-blending=no
+# line-height=<use font metrics>
+# letter-spacing=0
+
+# layer=overlay
+# keyboard-focus=exclusive
+# exit-on-keyboard-focus-loss=yes
+
+# cache=<not set>
+
+# render-workers=<number of logical CPUs>
+# match-workers=<number of logical CPUs>
+
+[colors]
+# background=fdf6e3ff
+# text=657b83ff
+# prompt=586e75ff
+# placeholder=93a1a1ff
+# input=657b83ff
+# match=cb4b16ff
+# selection=eee8d5ff
+# selection-text=586e75ff
+# selection-match=cb4b16ff
+# counter=93a1a1ff
+# border=002b36ff
+
+[border]
+# width=1
+radius=0
+
+[dmenu]
+# mode=text # text|index
+# exit-immediately-if-empty=no
+
+[key-bindings]
+# cancel=Escape Control+g Control+c Control+bracketleft
+# execute=Return KP_Enter Control+y
+# execute-or-next=Tab
+# execute-input=Shift+Return Shift+KP_Enter
+# cursor-left=Left Control+b
+# cursor-left-word=Control+Left Mod1+b
+# cursor-right=Right Control+f
+# cursor-right-word=Control+Right Mod1+f
+# cursor-home=Home Control+a
+# cursor-end=End Control+e
+# delete-prev=BackSpace Control+h
+# delete-prev-word=Mod1+BackSpace Control+BackSpace Control+w
+# delete-line-backward=Control+u
+# delete-next=Delete KP_Delete Control+d
+# delete-next-word=Mod1+d Control+Delete Control+KP_Delete
+# delete-line-forward=Control+k
+# prev=Up Control+p
+# prev-with-wrap=ISO_Left_Tab
+# prev-page=Page_Up KP_Page_Up
+# next=Down Control+n
+# next-with-wrap=none
+# next-page=Page_Down KP_Page_Down
+# expunge=Shift+Delete
+# clipboard-paste=Control+v XF86Paste
+# primary-paste=Shift+Insert Shift+KP_Insert
+
+# custom-N: *dmenu mode only*. Like execute, but with a non-zero
+# exit-code; custom-1 exits with code 10, custom-2 with 11, custom-3
+# with 12, and so on.
+
+# custom-1=Mod1+1
+# custom-2=Mod1+2
+# custom-3=Mod1+3
+# custom-4=Mod1+4
+# custom-5=Mod1+5
+# custom-6=Mod1+6
+# custom-7=Mod1+7
+# custom-8=Mod1+8
+# custom-9=Mod1+9
+# custom-10=Mod1+0
+# custom-11=Mod1+exclam
+# custom-12=Mod1+at
+# custom-13=Mod1+numbersign
+# custom-14=Mod1+dollar
+# custom-15=Mod1+percent
+# custom-16=Mod1+dead_circumflex
+# custom-17=Mod1+ampersand
+# custom-18=Mod1+asterix
+# custom-19=Mod1+parentleft
+
diff --git a/archive/.config/hypr/binds.conf b/archive/.config/hypr/binds.conf
new file mode 100644
index 0000000..8de4514
--- /dev/null
+++ b/archive/.config/hypr/binds.conf
@@ -0,0 +1,93 @@
+# main mod
+$mainMod = SUPER
+
+# used programs
+$terminal = emacsclient -c -s main --eval "(my/switch-to-master-vterm)"
+$browser = firefox
+$menu = swenu-run -oi
+$appMenu = swenu-run -coil 10
+
+# main binds
+bind = $mainMod, D, killactive,
+bind = $mainMod CTRL SHIFT, D, exec, hyprctl kill
+bind = $mainMod, V, togglefloating,
+bind = $mainMod, F, fullscreen
+bind = $mainMod, SPACE, layoutmsg, swapwithmaster
+bind = $mainMod, G, fullscreenstate, 0 3
+bind = $mainMod, R, exec, $menu
+bind = $mainMod, RETURN, exec, $appMenu
+bind = $mainMod SHIFT, Q, exit,
+
+# app and util binds
+bind = $mainMod CONTROLALT SHIFT, L, exec, xdg-open https://linkedin.com
+bind = $mainMod, I, exec, sysinfo
+bind = $mainMod, A, exec, $terminal
+bind = $mainMod, W, exec, $browser
+bind = $mainMod, E, exec, launchemacs
+bind = $mainMod CTRL, P, exec, hyprpicker -a
+bind = $mainMod, L, exec, simlock
+bind = $mainMod, K, exec, $terminal -e htop
+bind = $mainMod SHIFT, B, exec, /bin/sh -c "pidof waybar && pkill -x waybar || waybar"
+bind = $mainMod SHIFT, E, exec, wlboomer
+
+# screenshot (region + full)
+bind = $mainMod SHIFT, S, exec, screenshot -save
+bind = $mainMod, S, exec, screenshot -full -save
+# screenshot and copy
+bind = $mainMod CTRL SHIFT, S, exec, screenshot
+bind = $mainMod CTRL, S, exec, screenshot -full
+
+# brightess and audio controls
+bindle = , xf86monbrightnessup , exec, brightnessctl set 10%+
+bindle = , xf86monbrightnessdown, exec, brightnessctl set 10%-
+bindle = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
+bindle = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-
+bindle = SHIFT, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+
+bindle = SHIFT, XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%-
+bindle = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
+
+# Move focus with mainMod + arrow keys
+binde = $mainMod, left, movefocus, l
+binde = $mainMod, right, movefocus, r
+binde = $mainMod, n, cyclenext, prev
+binde = $mainMod, p, cyclenext
+binde = $mainMod, up, movefocus, u
+binde = $mainMod, down, movefocus, d
+bind = $mainMod, o, cyclenext, prev
+
+# Move windows
+binde = $mainMod SHIFT,left ,movewindow, l
+binde = $mainMod SHIFT,right ,movewindow, r
+binde = $mainMod SHIFT, n, swapnext, prev
+binde = $mainMod SHIFT, p, swapnext
+binde = $mainMod SHIFT,up ,movewindow, u
+binde = $mainMod SHIFT,down ,movewindow, d
+bind = $mainMod SHIFT, o, swapnext, prev
+
+# Move/resize windows with mainMod + LMB/RMB and dragging
+bindm = $mainMod, mouse:272, movewindow
+bindm = $mainMod, mouse:273, resizewindow
+
+# 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, movetoworkspacesilent, 1
+bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
+bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
+bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
+bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
+bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
+bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
+bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
+bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
+bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
diff --git a/archive/.config/hypr/hypridle.conf b/archive/.config/hypr/hypridle.conf
new file mode 100644
index 0000000..96dfaa7
--- /dev/null
+++ b/archive/.config/hypr/hypridle.conf
@@ -0,0 +1,9 @@
+general {
+ before_sleep_cmd = pidof simlock || simlock
+ after_sleep_cmd = hyprctl dispatch dpms on
+}
+
+listener {
+ timeout = 300 # 5min
+ on-timeout = loginctl suspend
+}
diff --git a/archive/.config/hypr/hyprland.conf b/archive/.config/hypr/hyprland.conf
new file mode 100644
index 0000000..1edcb6b
--- /dev/null
+++ b/archive/.config/hypr/hyprland.conf
@@ -0,0 +1,123 @@
+source=binds.conf
+
+# Settings
+monitor = eDP-1, 1920x1200@60, 0x0, 1
+env = XCURSOR_PATH=${XCURSOR_PATH}:/usr/share/icons
+env = XCURSOR_SIZE,24
+env = XCURSOR_THEME,whiteglass
+
+exec-once = hyprctl setcursor whiteglass 24
+exec-once = xrdb ~/.Xresources
+
+# Startup
+exec-once = startup
+exec-once = hyprctl dispatch workspace 1
+
+env = XDG_CURRENT_DESKTOP, Hyprland
+env = XDG_SESSION_TYPE, wayland
+env = XDG_SESSION_DESKTOP, Hyprland
+exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
+exec-once = start-xdg-portal-hyprland
+
+input {
+ kb_layout = us
+ kb_options = ctrl:nocaps
+
+ follow_mouse = 1
+
+ repeat_delay = 300
+ repeat_rate = 30
+
+ accel_profile = adaptive
+
+ touchpad {
+ scroll_factor = 0.7
+ natural_scroll = yes
+ disable_while_typing = false
+ }
+
+ sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
+}
+
+general {
+ layout = master
+ allow_tearing = true
+ resize_on_border = false
+
+ gaps_in = 0
+ gaps_out = 0
+
+ border_size = 0
+
+ col.active_border = rgba(AFD7FFff)
+ col.inactive_border = rgba(59595900)
+}
+
+cursor {
+ no_hardware_cursors = false
+ no_warps = false
+ persistent_warps = true
+ warp_on_change_workspace = true
+}
+
+windowrulev2 = noshadow, floating:0
+
+decoration {
+ rounding = 0
+
+ blur {
+ enabled = true
+ size = 1
+ passes = 1
+ }
+}
+
+master {
+ new_status = slave
+ new_on_top = true
+ orientation = left
+ mfact = 0.5
+}
+
+misc {
+ force_default_wallpaper = 1 # Set to 0 or 1 to disable the anime mascot wallpapers
+ enable_anr_dialog = false
+}
+
+animations {
+ enabled = yes, please :)
+
+ # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
+
+ bezier = easeOutQuint,0.23,1,0.32,1
+ bezier = easeInOutCubic,0.65,0.05,0.36,1
+ bezier = linear,0,0,1,1
+ bezier = almostLinear,0.5,0.5,0.75,1.0
+ bezier = quick,0.15,0,0.1,1
+
+ animation = global, 1, 10, default
+ animation = border, 1, 5.39, easeOutQuint
+
+ animation = windows, 1, 4.79, easeOutQuint
+ animation = windowsIn, 1, 4.1, easeOutQuint, slide
+ animation = windowsOut, 1, 2, linear, slide
+
+ animation = fadeIn, 1, 1.73, almostLinear
+ animation = fadeOut, 1, 2, easeOutQuint
+ 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, 0, 1.94, almostLinear, fade
+ animation = workspacesIn, 0, 1.21, almostLinear, fade
+ animation = workspacesOut, 1, 1.94, almostLinear, fade
+}
+
+# Ignore maximize requests from apps. You'll probably like this.
+windowrule = suppressevent maximize, class:.*
+# Fix some dragging issues with XWayland
+windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
diff --git a/archive/.config/hypr/hyprlock.conf b/archive/.config/hypr/hyprlock.conf
new file mode 100644
index 0000000..e8d61a5
--- /dev/null
+++ b/archive/.config/hypr/hyprlock.conf
@@ -0,0 +1,40 @@
+background {
+ path = screenshot
+
+ blur_passes = 2 # 0 disables blurring
+ blur_size = 2
+ noise = 0.0117
+ contrast = 0.8916
+ brightness = 0.8172
+ vibrancy = 0.1696
+ vibrancy_darkness = 0.0
+}
+input-field {
+ # size = 200, 200
+ # outline_thickness = 15
+ # dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8
+ # dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
+ # dots_center = false
+ # dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
+ # outer_color = rgb(151515)
+ # inner_color = rgb(200, 200, 200)
+ # font_color = rgb(10, 10, 10)
+ # fade_on_empty = true
+ # fade_timeout = 50 # Milliseconds before fade_on_empty is triggered.
+ # hide_input = true
+ # rounding = -1 # -1 means complete rounding (circle/oval)
+ # check_color = rgb(100, 118, 48)
+ # fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color
+ # placeholder_text =
+ # fail_text = <i><b>($ATTEMPTS)</b></i> # can be set to empty
+ # fail_transition = 50 # transition time in ms between normal outer_color and fail_color
+ # capslock_color = -1
+ # numlock_color = -1
+ # bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above)
+ # invert_numlock = false # change color if numlock is off
+ # swap_font_color = false # see below
+
+ position = 0, -20
+ halign = center
+ valign = center
+}
diff --git a/archive/.config/hypr/hyprpaper.conf b/archive/.config/hypr/hyprpaper.conf
new file mode 100644
index 0000000..98f7b7c
--- /dev/null
+++ b/archive/.config/hypr/hyprpaper.conf
@@ -0,0 +1,2 @@
+preload = $HOME/dotfiles/files/wallpapers/tlou.png
+wallpaper = eDP-1,contain:$HOME/dotfiles/files/wallpapers/tlou.png
diff --git a/archive/.config/kitty/kitty.conf b/archive/.config/kitty/kitty.conf
new file mode 100644
index 0000000..ae2f7ab
--- /dev/null
+++ b/archive/.config/kitty/kitty.conf
@@ -0,0 +1,13 @@
+cursor_blink_interval 0.5
+background_opacity 0.85
+
+shell_integration enabled
+shell /bin/zsh
+
+# padding
+window_padding_width 3
+
+# BEGIN_KITTY_THEME
+# Bliss
+include current-theme.conf
+# END_KITTY_THEME
diff --git a/archive/.config/nvim/.gitignore b/archive/.config/nvim/.gitignore
new file mode 100644
index 0000000..e033bc6
--- /dev/null
+++ b/archive/.config/nvim/.gitignore
@@ -0,0 +1 @@
+lazy-lock.json
diff --git a/archive/.config/nvim/TODO b/archive/.config/nvim/TODO
new file mode 100644
index 0000000..655d2e7
--- /dev/null
+++ b/archive/.config/nvim/TODO
@@ -0,0 +1,5 @@
+- save more than one yank (emacs killring like)
+- undo chunks typed in insert mode
+- argument preview in status bar
+- next snippet argument
+- fix yank taking time
diff --git a/archive/.config/nvim/init.lua b/archive/.config/nvim/init.lua
new file mode 100644
index 0000000..c4af29d
--- /dev/null
+++ b/archive/.config/nvim/init.lua
@@ -0,0 +1,24 @@
+require('options')
+require('keymaps')
+require('autocmds')
+
+local lazypath = vim.fn.stdpath 'data' .. '/lazy/lazy.nvim'
+if not vim.loop.fs_stat(lazypath) then
+ vim.fn.system {
+ 'git',
+ 'clone',
+ '--filter=blob:none',
+ 'https://github.com/folke/lazy.nvim.git',
+ '--branch=stable', -- latest stable release
+ lazypath,
+ }
+end
+vim.opt.rtp:prepend(lazypath)
+
+require('lazy').setup(
+ 'plugins',
+ {
+ change_detection = { enabled = false }
+ }
+)
+
diff --git a/archive/.config/nvim/lua/autocmds.lua b/archive/.config/nvim/lua/autocmds.lua
new file mode 100644
index 0000000..bff808a
--- /dev/null
+++ b/archive/.config/nvim/lua/autocmds.lua
@@ -0,0 +1,22 @@
+-- Wrap and check for spell in text filetypes.
+vim.api.nvim_create_autocmd('FileType', {
+ group = vim.api.nvim_create_augroup('wrap_spell', { clear = true }),
+ pattern = { 'gitcommit', 'markdown' },
+ callback = function()
+ vim.opt_local.wrap = true
+ vim.opt_local.spell = true
+ end,
+})
+
+-- Go to last loc when opening a buffer.
+vim.api.nvim_create_autocmd('BufReadPost', {
+ group = vim.api.nvim_create_augroup('last_loc', { clear = true }),
+ callback = function()
+ local mark = vim.api.nvim_buf_get_mark(0, '"')
+ local lcount = vim.api.nvim_buf_line_count(0)
+ if mark[1] > 0 and mark[1] <= lcount then
+ -- Protected call to catch errors.
+ pcall(vim.api.nvim_win_set_cursor, 0, mark)
+ end
+ end,
+})
diff --git a/archive/.config/nvim/lua/keymaps.lua b/archive/.config/nvim/lua/keymaps.lua
new file mode 100644
index 0000000..7b5a27a
--- /dev/null
+++ b/archive/.config/nvim/lua/keymaps.lua
@@ -0,0 +1,49 @@
+-- Remap for dealing with word wrap
+vim.keymap.set('n', 'k', "v:count == 0 ? 'gk' : 'k'", { expr = true, silent = true })
+vim.keymap.set('n', 'j', "v:count == 0 ? 'gj' : 'j'", { expr = true, silent = true })
+
+-- Move to window using the <C-hjkl> keys
+vim.keymap.set('n', '<C-h>', '<C-w>h', { desc = 'Switch to left window' })
+vim.keymap.set('n', '<C-j>', '<C-w>j', { desc = 'Switch to lower window' })
+vim.keymap.set('n', '<C-k>', '<C-w>k', { desc = 'Switch to upper window' })
+vim.keymap.set('n', '<C-l>', '<C-w>l', { desc = 'Switch to right window' })
+
+-- Quickfix list
+vim.keymap.set('n', '[q', vim.cmd.cprev, { desc = 'Previous quickfix item' })
+vim.keymap.set('n', ']q', vim.cmd.cnext, { desc = 'Next quickfix item' })
+
+-- Diagnostics
+vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'Go to prev diagnostic message' })
+vim.keymap.set('n', ']d', vim.diagnostic.goto_next, { desc = 'Go to next diagnostic message' })
+vim.keymap.set('n', 'gl', vim.diagnostic.open_float, { desc = 'Open floating diagnostic message' })
+vim.keymap.set('n', '<leader>q', vim.diagnostic.setqflist, { desc = 'Open diagnostic quickfix list' })
+
+-- Nagivation in insert
+vim.keymap.set({'i', 'c'}, '<C-h>', '<Left>', { desc = "Forward char" })
+vim.keymap.set({'i', 'c'}, '<C-j>', '<C-o>gj', { desc = "Up char" })
+vim.keymap.set({'i', 'c'}, '<C-k>', '<C-o>gk', { desc = "Down char" })
+vim.keymap.set({'i', 'c'}, '<C-l>', '<Right>', { desc = "Backward char" })
+
+-- <C-g> to exit
+vim.keymap.set({'i', 'n', 'v', 'c'}, '<C-g>', '<Esc>', { desc = "Exit mode" })
+vim.cmd('cmap <C-g> <C-c>')
+
+-- C-d to delete
+vim.keymap.set('i', '<C-d>', '<Del>', { desc = "Delete forward char"})
+
+-- Jump forward and back
+vim.keymap.set('n', '<C-l>', '$', { desc = "Delete forward char"})
+vim.keymap.set('n', '<C-h>', '_', { desc = "Delete forward char"})
+
+-- File managerment
+vim.keymap.set('n', '<leader>e', ':e <C-R>=expand("%:p:h") . "/"<CR>', { desc = 'Open file in current directory' })
+
+-- Insert at correct tab
+vim.keymap.set("n", "i", function()
+ local line = vim.api.nvim_get_current_line()
+ if #line == 0 then
+ return [["_cc]]
+ else
+ return "i"
+ end
+end, { expr = true, noremap = true })
diff --git a/archive/.config/nvim/lua/options.lua b/archive/.config/nvim/lua/options.lua
new file mode 100644
index 0000000..d0adefb
--- /dev/null
+++ b/archive/.config/nvim/lua/options.lua
@@ -0,0 +1,40 @@
+-- tabs
+vim.opt.tabstop = 4
+vim.opt.shiftwidth = 0
+vim.opt.expandtab = false
+vim.opt.autoindent = true
+vim.opt.smartindent = true
+-- display cursor at front of tabs
+vim.opt.list = true
+vim.opt.listchars = { tab = " " }
+
+vim.opt.shortmess:append { s = true, I = true }
+
+vim.g.mapleader = ' '
+vim.g.maplocalleader = '\\'
+
+-- line numbers
+vim.opt.signcolumn="number"
+vim.opt.number=true
+vim.opt.fillchars:append({ eob = " " })
+vim.opt.scrolloff = 7
+
+vim.opt.splitright = true
+
+vim.opt.cinoptions:append("g0")
+vim.opt.cinoptions:append("L0")
+
+vim.opt.cursorline = true
+
+vim.diagnostic.config({
+ virtual_text = true,
+})
+
+-- undo
+vim.opt.swapfile = false
+vim.opt.backup = false
+vim.opt.undodir = os.getenv("HOME") .. "/.cache/nvim/undodir"
+vim.opt.undofile = true
+
+-- misc
+vim.opt.updatetime = 700
diff --git a/archive/.config/nvim/lua/plugins/cmp.lua b/archive/.config/nvim/lua/plugins/cmp.lua
new file mode 100644
index 0000000..f515e17
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/cmp.lua
@@ -0,0 +1,53 @@
+return {
+ 'hrsh7th/nvim-cmp',
+ event = { 'InsertEnter', 'CmdlineEnter' },
+ dependencies = {
+ 'saadparwaiz1/cmp_luasnip',
+ 'hrsh7th/cmp-buffer',
+ 'hrsh7th/cmp-cmdline',
+ 'hrsh7th/cmp-path',
+ },
+ opts = function()
+ local cmp = require('cmp')
+ local select_opts = {behavior = cmp.SelectBehavior.Select}
+
+ return {
+ snippet = {
+ expand = function(args)
+ require('luasnip').lsp_expand(args.body)
+ end,
+ },
+ mapping = {
+ ['<C-p>'] = cmp.mapping.select_prev_item(select_opts),
+ ['<C-n>'] = cmp.mapping.select_next_item(select_opts),
+ ['<C-u>'] = cmp.mapping.scroll_docs(-4),
+ ['<C-d>'] = cmp.mapping.scroll_docs(4),
+ ['<C-e>'] = cmp.mapping.abort(),
+ ['<Tab>'] = cmp.mapping.confirm({select = true}),
+ },
+ sources = cmp.config.sources({
+ { name = 'nvim_lsp', max_item_count = 5, keyword_length = 1 },
+ { name = "luasnip", max_item_count = 5, keyword_length = 2 },
+ }, {
+ { name = 'buffer', max_item_count = 2, keyword_length = 3 },
+ }, {
+ { name = 'path', max_item_count = 2 },
+ }),
+ sorting = {
+ comparators = {
+ cmp.config.compare.offset,
+ cmp.config.compare.exact,
+ --cmp.config.compare.scopes,
+ cmp.config.compare.score,
+
+ cmp.config.compare.locality,
+ cmp.config.compare.kind,
+ --cmp.config.compare.sort_text,
+ cmp.config.compare.length,
+ cmp.config.compare.order,
+ },
+ },
+ }
+ end,
+}
+
diff --git a/archive/.config/nvim/lua/plugins/colorscheme.lua b/archive/.config/nvim/lua/plugins/colorscheme.lua
new file mode 100644
index 0000000..acdc3ee
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/colorscheme.lua
@@ -0,0 +1,6 @@
+return {
+ "folke/tokyonight.nvim",
+ config = function ()
+ vim.cmd[[colorscheme tokyonight-moon]]
+ end
+}
diff --git a/archive/.config/nvim/lua/plugins/comment.lua b/archive/.config/nvim/lua/plugins/comment.lua
new file mode 100644
index 0000000..4fbab38
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/comment.lua
@@ -0,0 +1,4 @@
+return {
+ 'numToStr/Comment.nvim',
+ config = true,
+}
diff --git a/archive/.config/nvim/lua/plugins/fidget.lua b/archive/.config/nvim/lua/plugins/fidget.lua
new file mode 100644
index 0000000..facf28b
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/fidget.lua
@@ -0,0 +1,17 @@
+return {
+ 'j-hui/fidget.nvim',
+ tag = 'v1.4.1',
+ lazy = true,
+ opts = {
+ progress = {
+ display = {
+ progress_icon = { pattern = 'line', period = 0.7 },
+ },
+ },
+ notification = {
+ window = {
+ winblend = 0,
+ },
+ },
+ },
+}
diff --git a/archive/.config/nvim/lua/plugins/glance.lua b/archive/.config/nvim/lua/plugins/glance.lua
new file mode 100644
index 0000000..9c43939
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/glance.lua
@@ -0,0 +1,10 @@
+return {
+ 'dnlhc/glance.nvim',
+ cmd = 'Glance',
+ config = function()
+ require("glance").setup({})
+ end,
+ keys = {
+ { 'gr', '<CMD>Glance references<CR>' }
+ }
+}
diff --git a/archive/.config/nvim/lua/plugins/init.lua b/archive/.config/nvim/lua/plugins/init.lua
new file mode 100644
index 0000000..a564707
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/init.lua
@@ -0,0 +1 @@
+return {}
diff --git a/archive/.config/nvim/lua/plugins/lspconfig.lua b/archive/.config/nvim/lua/plugins/lspconfig.lua
new file mode 100644
index 0000000..ee8c464
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/lspconfig.lua
@@ -0,0 +1,96 @@
+local on_attach = function(client, bufnr)
+ local keymap = function(mode, keys, func, opts)
+ opts.buffer = bufnr
+ vim.keymap.set(mode, keys, func, opts)
+ end
+
+ keymap('n', 'gd', vim.lsp.buf.definition, { desc = 'Go to definition' })
+ keymap('n', 'gD', vim.lsp.buf.declaration, { desc = 'Go to declaration' })
+ keymap('n', 'gI', vim.lsp.buf.implementation, { desc = 'Go to implementation' })
+ keymap('n', 'gy', vim.lsp.buf.type_definition, { desc = 'Go to type definition' })
+ -- keymap('n', 'gr', vim.lsp.buf.references, { desc = 'List references' })
+
+ keymap('n', '<leader>ds', vim.lsp.buf.document_symbol, { desc = 'List document symbols' })
+ keymap('n', '<leader>ws', vim.lsp.buf.workspace_symbol, { desc = 'List workspace symbols' })
+
+ keymap('n', 'K', vim.lsp.buf.hover, { desc = 'Show documentation' })
+ keymap('n', 'gK', vim.lsp.buf.signature_help, { desc = 'Show signature' })
+ keymap('i', '<C-s>', vim.lsp.buf.signature_help, { desc = 'Show signature' })
+
+ keymap('n', '<leader>rn', vim.lsp.buf.rename, { desc = 'Rename symbol' })
+ keymap('n', '<leader>ca', vim.lsp.buf.code_action, { desc = 'Code action' })
+
+ keymap('n', '<leader>wa', vim.lsp.buf.add_workspace_folder, { desc = 'Add workspace folder' })
+ keymap('n', '<leader>wr', vim.lsp.buf.remove_workspace_folder, { desc = 'Remove workspace folder' })
+ keymap('n', '<leader>cf', vim.cmd.ClangdSwitchSourceHeader, { desc = 'Switch source with header' })
+ keymap(
+ 'n',
+ '<leader>wl',
+ function() print(vim.inspect(vim.lsp.buf.list_workspace_folders())) end,
+ { desc = 'List workspace folders' }
+ )
+end
+
+return {
+ 'neovim/nvim-lspconfig',
+ dependencies = {
+ "hrsh7th/cmp-nvim-lsp",
+ 'j-hui/fidget.nvim',
+ },
+ ft = { 'c', 'cpp', 'lua', 'zig' },
+ opts = {
+ servers = {
+ lua_ls = {
+ settings = {
+ Lua = {
+ workspace = { checkThirdParty = false },
+ telemetry = { enable = false },
+ },
+ },
+ },
+ clangd = {
+ settings = {},
+ cmd = { "clangd", "--header-insertion=never" },
+ },
+ zls = {
+ settings = {},
+ },
+ },
+ },
+ config = function(_, opts)
+ local lspconfig = require('lspconfig');
+ local capabilities = require('cmp_nvim_lsp').default_capabilities()
+
+ for name, conf in pairs(opts.servers) do
+ lspconfig[name].setup {
+ capabilities = capabilities,
+ settings = conf.settings,
+ on_attach = function(client, bufnr)
+ local _, err = pcall(on_attach, client, bufnr)
+ if err then
+ vim.notify('[on_attach] error: ' .. err, vim.log.levels.ERROR)
+ else
+ vim.notify('[on_attach] ' .. client.name .. ' attached to buffer ' .. bufnr, vim.log.levels.INFO)
+ end
+ end,
+ }
+ end
+
+ -- Autohighlight symbol under cursor
+ vim.api.nvim_create_autocmd({ "CursorHold", "CursorHoldI" }, {
+ callback = function()
+ local bufnr = vim.api.nvim_get_current_buf()
+ if next(vim.lsp.get_clients({ buffer = bufnr })) then
+ vim.lsp.buf.document_highlight()
+ end
+ end,
+ })
+ -- Clear highlights when cursor moves
+ vim.api.nvim_create_autocmd({ "CursorMoved", "CursorMovedI" }, {
+ callback = function()
+ vim.lsp.buf.clear_references()
+ end,
+ })
+
+ end
+}
diff --git a/archive/.config/nvim/lua/plugins/luadev.lua b/archive/.config/nvim/lua/plugins/luadev.lua
new file mode 100644
index 0000000..7011f66
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/luadev.lua
@@ -0,0 +1,5 @@
+return {
+ "folke/lazydev.nvim",
+ ft = "lua",
+ config = true,
+}
diff --git a/archive/.config/nvim/lua/plugins/luasnip.lua b/archive/.config/nvim/lua/plugins/luasnip.lua
new file mode 100644
index 0000000..8ed8c24
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/luasnip.lua
@@ -0,0 +1,12 @@
+return {
+ 'L3MON4D3/LuaSnip',
+ lazy = true,
+ dependencies = { 'rafamadriz/friendly-snippets' },
+ keys = {
+ { '<M-h>', function() require('luasnip').jump(-1) end, mode = { 'i', 's' } },
+ { '<M-l>', function() require('luasnip').jump(1) end, mode = { 'i', 's' } },
+ },
+ config = function()
+ require('luasnip.loaders.from_vscode').lazy_load()
+ end,
+}
diff --git a/archive/.config/nvim/lua/plugins/multicursor.lua b/archive/.config/nvim/lua/plugins/multicursor.lua
new file mode 100644
index 0000000..75f8b6e
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/multicursor.lua
@@ -0,0 +1,61 @@
+return {
+ "jake-stewart/multicursor.nvim",
+ branch = "1.0",
+ config = function()
+ local mc = require("multicursor-nvim")
+ mc.setup()
+
+ local set = vim.keymap.set
+
+ -- Add or skip cursor above/below the main cursor.
+ set({"n", "x"}, "<up>", function() mc.lineAddCursor(-1) end)
+ set({"n", "x"}, "<down>", function() mc.lineAddCursor(1) end)
+ set({"n", "x"}, "<leader><up>", function() mc.lineSkipCursor(-1) end)
+ set({"n", "x"}, "<leader><down>", function() mc.lineSkipCursor(1) end)
+
+ -- Add or skip adding a new cursor by matching word/selection
+ set({"n", "x"}, "<leader>n", function() mc.matchAddCursor(1) end)
+ set({"n", "x"}, "<leader>s", function() mc.matchSkipCursor(1) end)
+ set({"n", "x"}, "<leader>N", function() mc.matchAddCursor(-1) end)
+ set({"n", "x"}, "<leader>S", function() mc.matchSkipCursor(-1) end)
+
+ -- Add and remove cursors with control + left click.
+ set("n", "<c-leftmouse>", mc.handleMouse)
+ set("n", "<c-leftdrag>", mc.handleMouseDrag)
+ set("n", "<c-leftrelease>", mc.handleMouseRelease)
+
+ -- Disable and enable cursors.
+ set({"n", "x"}, "<c-q>", mc.toggleCursor)
+
+ -- Mappings defined in a keymap layer only apply when there are
+ -- multiple cursors. This lets you have overlapping mappings.
+ mc.addKeymapLayer(function(layerSet)
+
+ -- Select a different cursor as the main one.
+ layerSet({"n", "x"}, "<left>", mc.prevCursor)
+ layerSet({"n", "x"}, "<right>", mc.nextCursor)
+
+ -- Delete the main cursor.
+ layerSet({"n", "x"}, "<leader>x", mc.deleteCursor)
+
+ -- Enable and clear cursors using escape.
+ layerSet("n", "<esc>", function()
+ if not mc.cursorsEnabled() then
+ mc.enableCursors()
+ else
+ mc.clearCursors()
+ end
+ end)
+ end)
+
+ -- Customize how cursors look.
+ local hl = vim.api.nvim_set_hl
+ hl(0, "MultiCursorCursor", { reverse = true })
+ hl(0, "MultiCursorVisual", { link = "Visual" })
+ hl(0, "MultiCursorSign", { link = "SignColumn"})
+ hl(0, "MultiCursorMatchPreview", { link = "Search" })
+ hl(0, "MultiCursorDisabledCursor", { reverse = true })
+ hl(0, "MultiCursorDisabledVisual", { link = "Visual" })
+ hl(0, "MultiCursorDisabledSign", { link = "SignColumn"})
+ end
+}
diff --git a/archive/.config/nvim/lua/plugins/neogit.lua b/archive/.config/nvim/lua/plugins/neogit.lua
new file mode 100644
index 0000000..0f5f90e
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/neogit.lua
@@ -0,0 +1,8 @@
+return {
+ "NeogitOrg/neogit",
+ dependencies = {
+ "nvim-lua/plenary.nvim", -- required
+ "sindrets/diffview.nvim", -- optional - Diff integration
+ "nvim-telescope/telescope.nvim", -- optional
+ },
+}
diff --git a/archive/.config/nvim/lua/plugins/pair.lua b/archive/.config/nvim/lua/plugins/pair.lua
new file mode 100644
index 0000000..5698563
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/pair.lua
@@ -0,0 +1,5 @@
+return {
+ 'windwp/nvim-autopairs',
+ event = "InsertEnter",
+ config = true
+}
diff --git a/archive/.config/nvim/lua/plugins/scroll.lua b/archive/.config/nvim/lua/plugins/scroll.lua
new file mode 100644
index 0000000..4de5939
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/scroll.lua
@@ -0,0 +1,23 @@
+return {
+ "karb94/neoscroll.nvim",
+ opts = {
+ mappings = { -- Keys to be mapped to their corresponding default scrolling animation
+ '<C-u>', '<C-d>',
+ '<C-b>', '<C-f>',
+ '<C-y>', '<C-e>',
+ 'zt', 'zz', 'zb',
+ },
+ hide_cursor = true, -- Hide cursor while scrolling
+ stop_eof = true, -- Stop at <EOF> when scrolling downwards
+ respect_scrolloff = false, -- Stop scrolling when the cursor reaches the scrolloff margin of the file
+ cursor_scrolls_alone = true, -- The cursor will keep on scrolling even if the window cannot scroll further
+ duration_multiplier = 1.0, -- Global duration multiplier
+ easing = 'linear', -- Default easing function
+ pre_hook = nil, -- Function to run before the scrolling animation starts
+ post_hook = nil, -- Function to run after the scrolling animation ends
+ performance_mode = false, -- Disable "Performance Mode" on all buffers.
+ ignored_events = { -- Events ignored while scrolling
+ 'WinScrolled', 'CursorMoved'
+ },
+ },
+}
diff --git a/archive/.config/nvim/lua/plugins/signature.lua b/archive/.config/nvim/lua/plugins/signature.lua
new file mode 100644
index 0000000..0d0a174
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/signature.lua
@@ -0,0 +1,10 @@
+return {
+ "ray-x/lsp_signature.nvim",
+ event = "InsertEnter",
+ opts = {
+ bind = true,
+ handler_opts = {
+ border = "rounded"
+ }
+ },
+}
diff --git a/archive/.config/nvim/lua/plugins/surround.lua b/archive/.config/nvim/lua/plugins/surround.lua
new file mode 100644
index 0000000..7504211
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/surround.lua
@@ -0,0 +1,21 @@
+return {
+ "echasnovski/mini.surround",
+ event = "VeryLazy",
+ config = function()
+ require("mini.surround").setup({
+ mappings = {
+ add = '',
+ delete = 'ds',
+ find = '',
+ find_left = '',
+ highlight = '',
+ replace = '',
+ update_n_lines = '',
+
+ -- Add this only if you don't want to use extended mappings
+ suffix_last = '',
+ suffix_next = '',
+ }
+ })
+ end
+}
diff --git a/archive/.config/nvim/lua/plugins/telescope.lua b/archive/.config/nvim/lua/plugins/telescope.lua
new file mode 100644
index 0000000..264a77b
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/telescope.lua
@@ -0,0 +1,45 @@
+return {
+ 'nvim-telescope/telescope.nvim',
+ cmd = 'Telescope',
+ dependencies = {
+ 'nvim-lua/plenary.nvim',
+ },
+ keys = function()
+ local lazy_telescope = function(builtin)
+ return function(...)
+ if builtin == 'find_files_custom' then
+ require('telescope.builtin').find_files({ find_command = {'rg', '--files', '--hidden', '-g', '!.git', '-g', '!external/', '-g', '!build/' }})
+ else
+ require('telescope.builtin')[builtin](...)
+ end
+ end
+ end
+ return {
+ { '<leader>fb', lazy_telescope('buffers'), desc = 'Find buffers' },
+ { '<leader>fd', lazy_telescope('diagnostics'), desc = 'Find diagnostics' },
+ { '<leader>fF', lazy_telescope('git_files'), desc = 'Find Git files' },
+ { '<leader>fG', lazy_telescope('git_status'), desc = 'Find Git status' },
+ { '<leader>ff', lazy_telescope('find_files_custom'), desc = 'Find files' },
+ { '<leader>fg', lazy_telescope('live_grep'), desc = 'Find files by content' },
+ { '<leader>fh', lazy_telescope('help_tags'), desc = 'Find help tags' },
+ { '<leader>fo', lazy_telescope('oldfiles'), desc = 'Find recently opened files' },
+ { '<leader>fw', lazy_telescope('grep_string'), desc = 'Find word in buffer' },
+ { '<leader>f/', lazy_telescope('current_buffer_fuzzy_find'), desc = 'Find fuzzy match in current buffer' },
+ }
+ end,
+ config = function()
+ local telescope = require('telescope')
+ telescope.setup({
+ defaults = {
+ mappings = {
+ i = {
+ ["<C-g>"] = require('telescope.actions').close,
+ },
+ n = {
+ ["<C-g>"] = require('telescope.actions').close,
+ },
+ },
+ },
+ })
+ end,
+}
diff --git a/archive/.config/nvim/lua/plugins/treesitter.lua b/archive/.config/nvim/lua/plugins/treesitter.lua
new file mode 100644
index 0000000..268e13d
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/treesitter.lua
@@ -0,0 +1,24 @@
+return {
+ 'nvim-treesitter/nvim-treesitter',
+ ft = { 'c', 'cpp', 'zig', 'lua', 'rust' },
+ build = ':TSUpdate',
+ config = function()
+ require('nvim-treesitter.configs').setup {
+ -- Add languages to be installed here that you want installed for treesitter
+ ensure_installed = { 'c', 'cpp', 'lua', 'rust', 'vimdoc', 'vim', 'zig' },
+
+ -- Install parsers synchronously (only applied to `ensure_installed`)
+ sync_install = false,
+
+ -- Automatically install missing parsers when entering buffer
+ -- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
+ auto_install = false,
+
+ highlight = {
+ enable = true,
+ disable = function(_, bufnr) return vim.api.nvim_buf_line_count(bufnr) > 10000 end,
+ additional_vim_regex_highlighting = false,
+ },
+ }
+ end,
+}
diff --git a/archive/.config/nvim/lua/plugins/trouble.lua b/archive/.config/nvim/lua/plugins/trouble.lua
new file mode 100644
index 0000000..3741f30
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/trouble.lua
@@ -0,0 +1,37 @@
+return {
+ "folke/trouble.nvim",
+ opts = {}, -- for default options, refer to the configuration section for custom setup.
+ cmd = "Trouble",
+ keys = {
+ {
+ "<leader>xx",
+ "<cmd>Trouble diagnostics toggle<cr>",
+ desc = "Diagnostics (Trouble)",
+ },
+ {
+ "<leader>xX",
+ "<cmd>Trouble diagnostics toggle filter.buf=0<cr>",
+ desc = "Buffer Diagnostics (Trouble)",
+ },
+ {
+ "<leader>cs",
+ "<cmd>Trouble symbols toggle focus=false<cr>",
+ desc = "Symbols (Trouble)",
+ },
+ {
+ "<leader>cl",
+ "<cmd>Trouble lsp toggle focus=false win.position=right<cr>",
+ desc = "LSP Definitions / references / ... (Trouble)",
+ },
+ {
+ "<leader>xL",
+ "<cmd>Trouble loclist toggle<cr>",
+ desc = "Location List (Trouble)",
+ },
+ {
+ "<leader>xQ",
+ "<cmd>Trouble qflist toggle<cr>",
+ desc = "Quickfix List (Trouble)",
+ },
+ },
+}
diff --git a/archive/.config/nvim/lua/plugins/yank.lua b/archive/.config/nvim/lua/plugins/yank.lua
new file mode 100644
index 0000000..cdf0f15
--- /dev/null
+++ b/archive/.config/nvim/lua/plugins/yank.lua
@@ -0,0 +1,10 @@
+return {
+ "svban/YankAssassin.nvim",
+ event = "VeryLazy",
+ config = function()
+ require("YankAssassin").setup {
+ auto_normal = true, -- if true, autocmds are used. Whenever y is used in normal mode, the cursor doesn't move to start
+ auto_visual = true, -- if true, autocmds are used. Whenever y is used in visual mode, the cursor doesn't move to start
+ }
+ end,
+}
diff --git a/archive/.config/sway/config b/archive/.config/sway/config
new file mode 100644
index 0000000..1cca1e9
--- /dev/null
+++ b/archive/.config/sway/config
@@ -0,0 +1,233 @@
+### Variables
+
+set $mod Mod4
+
+# home row direction keys, like vim
+set $left h
+set $down j
+set $up k
+set $right l
+
+set $term alacritty
+set $menu swenu-run
+set $browser firefox
+
+# init
+exec startup
+
+### Output configuration
+#
+# Default wallpaper (more resolutions are available in @datadir@/backgrounds/sway/)
+output * bg ~/dotfiles/files/wallpapers/sunset.jpg fill
+#
+# Example configuration:
+#
+# output HDMI-A-1 resolution 1920x1080 position 1920,0
+#
+# You can get the names of your outputs by running: swaymsg -t get_outputs
+output eDP-1 position -0,0
+# output HDMI-A-1 position -0,0 mode 1920x1080
+
+### Idle configuration
+exec swayidle -w \
+ timeout 150 'sleep_computer' \
+
+### Input configuration
+input type:touchpad {
+ natural_scroll enabled
+ dwt disabled
+}
+
+input type:keyboard {
+ xkb_options ctrl:nocaps
+ repeat_delay 300
+ repeat_rate 30
+}
+
+### Style
+default_border none
+
+### Key bindings
+#
+# Basics:
+#
+ # Start a terminal
+ bindsym $mod+a exec $term
+
+ bindsym $mod+i exec sysinfo
+
+ # Kill focused window
+ bindsym $mod+d kill
+
+ # emacs
+ bindsym $mod+e exec open-emacs
+ bindsym $mod+Shift+e exec open-emacs-project
+
+ # Start your launcher
+ bindsym $mod+Return exec $menu
+
+ # Start your browser
+ bindsym $mod+w exec $browser
+
+ # Start screen locker
+ bindsym $mod+Ctrl+l exec lock
+
+ # screenshot
+ bindsym $mod+s exec screenshot -save
+ bindsym $mod+Shift+s exec screenshot
+
+ # Drag floating windows by holding down $mod and left mouse button.
+ floating_modifier $mod normal
+
+ # Reload the configuration file
+ bindsym $mod+Shift+c reload
+
+ # Exit sway (logs you out of your Wayland session)
+ bindsym $mod+Shift+q exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
+#
+# Moving around:
+#
+ # Move your focus around
+ bindsym $mod+$left focus left
+ bindsym $mod+$down focus down
+ bindsym $mod+$up focus up
+ bindsym $mod+$right focus right
+ # Or use $mod+[up|down|left|right]
+ bindsym $mod+Left focus left
+ bindsym $mod+Down focus down
+ bindsym $mod+Up focus up
+ bindsym $mod+Right focus right
+
+ # Move the focused window with the same, but add Shift
+ bindsym $mod+Shift+$left move left
+ bindsym $mod+Shift+$down move down
+ bindsym $mod+Shift+$up move up
+ bindsym $mod+Shift+$right move right
+ # Ditto, with arrow keys
+ bindsym $mod+Shift+Left move left
+ bindsym $mod+Shift+Down move down
+ bindsym $mod+Shift+Up move up
+ bindsym $mod+Shift+Right move right
+#
+# Workspaces:
+#
+ # Switch to workspace
+ bindsym $mod+1 workspace number 1
+ bindsym $mod+2 workspace number 2
+ bindsym $mod+3 workspace number 3
+ bindsym $mod+4 workspace number 4
+ bindsym $mod+5 workspace number 5
+ bindsym $mod+6 workspace number 6
+ bindsym $mod+7 workspace number 7
+ bindsym $mod+8 workspace number 8
+ bindsym $mod+9 workspace number 9
+ bindsym $mod+0 workspace number 10
+ # Move focused container to workspace
+ bindsym $mod+Shift+1 move container to workspace number 1
+ bindsym $mod+Shift+2 move container to workspace number 2
+ bindsym $mod+Shift+3 move container to workspace number 3
+ bindsym $mod+Shift+4 move container to workspace number 4
+ bindsym $mod+Shift+5 move container to workspace number 5
+ bindsym $mod+Shift+6 move container to workspace number 6
+ bindsym $mod+Shift+7 move container to workspace number 7
+ bindsym $mod+Shift+8 move container to workspace number 8
+ bindsym $mod+Shift+9 move container to workspace number 9
+ bindsym $mod+Shift+0 move container to workspace number 10
+ # Note: workspaces can have any name you want, not just numbers.
+ # We just use 1-10 as the default.
+#
+# Layout stuff:
+#
+ # You can "split" the current object of your focus with
+ # $mod+b or $mod+v, for horizontal and vertical splits
+ # respectively.
+ bindsym $mod+b splith
+ # bindsym $mod+v splitv
+
+ # Switch the current container between different layout styles
+ # bindsym $mod+s layout stacking
+ # bindsym $mod+w layout tabbed
+ # bindsym $mod+e layout toggle split
+
+ # Make the current focus fullscreen
+ bindsym $mod+f fullscreen
+
+ # Toggle the current focus between tiling and floating mode
+ bindsym $mod+v floating toggle
+
+ # Swap focus between the tiling area and the floating area
+ bindsym $mod+space focus mode_toggle
+
+ # Move focus to the parent container
+ # bindsym $mod+a focus parent
+#
+# Scratchpad:
+#
+ # Sway has a "scratchpad", which is a bag of holding for windows.
+ # You can send windows there and get them back later.
+
+ # Move the currently focused window to the scratchpad
+ bindsym $mod+Shift+minus move scratchpad
+
+ # Show the next scratchpad window or hide the focused scratchpad window.
+ # If there are multiple scratchpad windows, this command cycles through them.
+ bindsym $mod+minus scratchpad show
+#
+# Resizing containers:
+#
+mode "resize" {
+ # left will shrink the containers width
+ # right will grow the containers width
+ # up will shrink the containers height
+ # down will grow the containers height
+ bindsym $left resize shrink width 10px
+ bindsym $down resize grow height 10px
+ bindsym $up resize shrink height 10px
+ bindsym $right resize grow width 10px
+
+ # Ditto, with arrow keys
+ bindsym Left resize shrink width 10px
+ bindsym Down resize grow height 10px
+ bindsym Up resize shrink height 10px
+ bindsym Right resize grow width 10px
+
+ # Return to default mode
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+bindsym $mod+r mode "resize"
+#
+# Utilities:
+#
+ # Special keys to adjust volume via PulseAudio
+ bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
+ bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5%
+ bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5%
+ bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
+
+ # Special keys to adjust brightness via brightnessctl
+ bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
+ bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
+
+ # Special key to take a screenshot with grim
+ bindsym Print exec grim
+
+#
+# Status Bar:
+#
+# Read `man 5 sway-bar` for more information about this section.
+# bar {
+# position top
+
+# # When the status_command prints a new line to stdout, swaybar updates.
+# # The default just shows the current date and time.
+# status_command while true; do echo $(TERM="" sysinfo | tr '\n' ' '); sleep 1; done
+
+# colors {
+# statusline #ffffff
+# background #323232
+# inactive_workspace #32323200 #32323200 #5c5c5c
+# }
+# }
+
+include @sysconfdir@/sway/config.d/*
diff --git a/archive/.config/tmux/tmux.conf b/archive/.config/tmux/tmux.conf
new file mode 100644
index 0000000..2d25dd9
--- /dev/null
+++ b/archive/.config/tmux/tmux.conf
@@ -0,0 +1,5 @@
+# set -g status-position top
+# set -g status-style 'bg=purple'
+set -g status off
+
+bind r source-file ~/.config/tmux/tmux.conf