85 Commits

Author SHA1 Message Date
81b117fc87 Add changes in .zshrc and lsp.lua 2024-10-16 17:55:21 +02:00
4037fe4c36 nvim: Update plugins 2024-10-16 17:44:49 +02:00
ec628cd17f Add kanshi config 2024-10-16 17:39:33 +02:00
c54fe574c0 Add 'lazy=false' in auto_session conf 2024-10-16 17:35:30 +02:00
b9eed4c40f nvim: Add time tracker plugin 2024-10-16 17:20:02 +02:00
d1f835ff1c Update whichkey config to new version 2024-10-16 17:14:35 +02:00
9b2d29a3a3 Add matlab path to lsp config 2024-10-16 17:13:12 +02:00
13a9467abd Remove duplicate keymap 2024-10-16 17:12:42 +02:00
2c87ad3a67 Add custom mason registry 2024-10-16 17:12:31 +02:00
44395835e6 Format changes 2024-10-16 17:11:35 +02:00
3e5ad2225a change neoformat markdown spec 2024-10-16 16:50:32 +02:00
8d6c988661 Change clang format 2024-10-16 16:48:08 +02:00
156e36053e Make Release default version in overseer cmake action 2024-10-16 16:47:50 +02:00
f2d9534fba Change trouble symbol list width 2024-10-16 16:47:16 +02:00
83b264f678 Remove useless keymap 2024-10-16 16:45:46 +02:00
18aa4bc748 Fix waybar clock 2024-10-16 16:45:17 +02:00
b4b1e5cdf7 Add zsh completion 2024-10-16 16:44:53 +02:00
1223893f49 Fix flog alias 2024-08-25 16:04:12 +02:00
a2e83bbe00 Change z command in zshrc to cd 2024-08-25 16:02:04 +02:00
eb7fabbb48 Update aliases in zshrc 2024-08-25 15:57:16 +02:00
30e2b8a052 Update neovim plugins 2024-08-25 15:47:24 +02:00
b7fa096c90 Automatically import numpy and sympy when starting python shell 2024-08-25 15:46:42 +02:00
92d2e7118a Don't start blueman-applet in sway config 2024-08-25 15:46:19 +02:00
b99e5a5ec3 Add brightness control scripts 2024-08-25 15:45:28 +02:00
ef74b0e660 Enable interactive comments on zsh 2024-08-25 15:44:41 +02:00
bb2311dd43 Update workspace configuration 2024-08-25 15:44:21 +02:00
949e930a56 Add new neovim welcome screen and change probability definitions 2024-06-18 01:48:01 +02:00
1ea00e644d Check out newest version of trouble and modify keymaps 2024-06-18 01:47:35 +02:00
be256e882b Fix monitor config 2024-06-18 01:47:12 +02:00
478ded7f6e Add 'c' alias for config 2024-06-18 01:46:50 +02:00
1d299f2e43 Update neovim plugins lazy-lock 2024-06-11 00:40:33 +02:00
c812148917 Update trouble to version 3.3.0 2024-06-11 00:40:19 +02:00
e690f17ff8 Add cd .. aliases to zshrc 2024-06-11 00:33:17 +02:00
89257b28ec Add zsh-autosuggestions config to .zshrc 2024-06-06 01:50:55 +02:00
f9617088f8 Fix trouble config 2024-06-06 01:50:46 +02:00
b6a2fa03c3 Add hostname to zsh prompt 2024-06-06 01:22:27 +02:00
3ee58eb2e2 Update neovim plugins 2024-06-06 01:03:02 +02:00
b00d82b7c9 Fix cargo quickfix error parsing 2024-06-06 01:02:25 +02:00
bbb673e7e2 Add overseer cargo jobs 2024-06-06 00:59:14 +02:00
dafec71c57 Merge pull request 'Move from i3 to sway' (#1) from feature/sway into main
Reviewed-on: https://git.mercurial-manifold.eu/an.tsouchlos/dotfiles/pulls/1
2024-06-05 22:57:01 +00:00
19c943abbe Add kitty scroll multiplier 2024-06-03 11:01:22 +02:00
0976aa378b Update lazy-lock 2024-05-15 20:44:09 +02:00
0043e6c6fd Tidy some stuff up 2024-05-15 20:43:08 +02:00
478544b7d9 Fix sway setup for multiple monitors 2024-05-15 20:42:13 +02:00
16d6ba467d Disable left-handed mode 2024-05-05 11:27:33 +02:00
188ae38be4 Add screenshot shortcut 2024-05-04 22:40:33 +02:00
276ac34da1 Remove '--no-startup-id' flag 2024-05-04 20:47:50 +02:00
d6bc329c85 Increase zsh history size 2024-05-04 20:30:34 +02:00
a49d728b4b Reduce gaps 2024-05-04 20:30:25 +02:00
c5d88a5943 Lock screen on lid close 2024-05-04 01:21:21 +02:00
af2bfb7032 Configure locking 2024-05-04 00:47:28 +02:00
a79c078b80 Add language to waybar; Remove useless config 2024-05-04 00:46:56 +02:00
0afcfdd7cc Clean up navigation.conf 2024-05-03 19:33:00 +02:00
8403882027 Add other keyboard layouts 2024-05-03 19:22:23 +02:00
ea90e4950b Add README.md 2024-05-03 18:46:13 +02:00
a270b45c6f Change ll alias for zsh 2024-05-03 18:42:41 +02:00
6438e2b385 Finish refactoring directory 2024-05-03 18:38:25 +02:00
2ef96e965b Change directory structure 2024-05-03 18:28:51 +02:00
b8d625f85e Remove .bashrc 2024-05-03 18:22:48 +02:00
3fed6c5c51 Remove .Xresources 2024-05-03 18:22:33 +02:00
7dfa5289a7 Remove picom, polybar and rofi configs 2024-05-03 18:21:21 +02:00
978bd04156 Add waybar and wofi configs 2024-05-03 18:18:16 +02:00
e033e31c0d Add sway config alias to zshrc 2024-05-03 18:16:10 +02:00
1274c62cd0 Remove i3 config; Create sway config 2024-05-03 18:15:51 +02:00
6d43613a77 Add matlab lsp 2024-05-03 18:14:02 +02:00
834fc7fcdf Make cmake_build overseer action use 16 threads 2024-05-03 18:13:44 +02:00
73cee5d646 Fix polybar battery setting for framework 2024-05-03 18:12:45 +02:00
e0c6ada3a6 Fix i3 monitor config 2024-04-17 22:15:14 +02:00
134fdac492 Update i3 config 2024-04-17 22:15:04 +02:00
26a6a66b77 Update zshrc 2024-04-17 22:04:15 +02:00
adfa9bdf16 Parallelize neovim overseer cmake build conf 2024-04-17 21:33:32 +02:00
98b5e08f7a Fix random title image selection 2024-04-04 15:41:39 +02:00
6a2054b203 Add noice; fix highlight groups of theme 2024-04-04 15:41:16 +02:00
b86f268e9a Change remaps 2024-04-04 15:40:57 +02:00
0709c23757 Add overseer and dap 2024-04-04 15:39:28 +02:00
167534d65f Re-add whichkey; remove tpipeline 2024-04-04 15:38:40 +02:00
6226776f8e Fix multi-monitor setup; map caps lock to escape; Fix loading cursor 2024-04-04 15:37:27 +02:00
4c79955e8c Change zsh aliases; add zoxide eval(.) to config 2024-04-04 15:35:58 +02:00
f6521ee10b Fix escape delay when using tmux 2024-04-04 15:35:00 +02:00
e474805aad Add tmux config 2024-03-17 00:06:56 +01:00
5a663d790e Remove kitty audio bell 2024-03-17 00:06:34 +01:00
71053e4f28 Fix alpha issue 2024-03-17 00:04:57 +01:00
6eed4b469c Add multiple keyboard layouts 2024-03-17 00:03:52 +01:00
60d908aa93 Add zsh config files; remove sd and asd commands from bashrc 2024-03-17 00:02:42 +01:00
295193ad7d Change fade-in and fade-out step for picom 2024-03-11 12:08:07 +01:00
96 changed files with 1501 additions and 1161 deletions

96
.bashrc
View File

@@ -1,96 +0,0 @@
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
alias grep='grep --color=auto'
PS1='[\u@\h \W]\$ '
alias ll='ls -alF'
alias sd="cd \$(find . -type d -not -path '*/.*' 2>/dev/null | sed 's/^..//' | fzf)"
alias asd="cd \$(find . -type d 2>/dev/null | sed 's/^..//' | fzf)"
alias cls="printf '\033[2J\033[3J\033[1;1H'"
export PATH=$PATH:/home/andreas/ext_sw/flutter/bin
export PATH=$PATH:/home/andreas/.local/bin
alias get-idf='. $HOME/git/esp-idf/export.sh'
alias clang-idf='export IDF_TOOLCHAIN=clang && . $HOME/git/esp-idf/export.sh'
alias ic='cd ~/.config/i3'
alias nc='cd ~/.config/nvim'
alias ebc='nvim ~/.bashrc'
alias ait='cd ~/Documents/kit/AIT'
alias kit='cd ~/Documents/kit'
alias eml='cd ~/Documents/kit/EMLLAB/emllab-challenge && . venv/bin/activate'
alias let='cd ~/git/ba-letter'
alias hyp='cd ~/git/HyperLink_SW'
source /usr/share/git/completion/git-completion.bash
eval "$(thefuck --alias)"
export VISUAL=nvim
export EDITOR="$VISUAL"
function pym {
python -m $@
}
function _pym_complete {
local executable current previous options
executable=${COMP_WORDS[0]}
current="${COMP_WORDS[COMP_CWORD]}"
previous="${COMP_WORDS[COMP_CWORD-1]}"
COMPREPLY=()
if [[ ( "$executable" == python* && "$previous" == "-m" ) ||
( "$executable" == pym && ! "$current" == -* ) ]]; then
options="`python <<EOF
import os
import pkgutil
import sys
current = '$current'
if '.' in current:
package_name = current.rsplit('.', 1)[0]
try:
package = __import__(package_name, fromlist=['__name__'])
except:
exit()
else:
package_name = ''
package = None
def walk_packages(paths, match, prefix=''):
for loader, name, ispkg in pkgutil.iter_modules(paths, prefix):
if not name.startswith(match):
continue
yield loader, name, ispkg
if ispkg:
for x in walk_packages([os.path.join(loader.path, name.split('.')[-1])], match, name + '.'):
yield x
for loader, name, ispkg in walk_packages(
package and getattr(package, '__path__', ()),
current,
package_name and (package_name + '.'),
):
if ispkg:
continue
if name.endswith('.__main__'):
print(name.rsplit('.', 1)[0])
else:
print(name)
EOF
`"
COMPREPLY=( $(compgen -W "${options}") )
return 0
fi
}
complete -F _pym_complete -o nospace -o bashdefault -o default pym
complete -F _pym_complete -o nospace -o bashdefault -o default python

View File

@@ -1,38 +0,0 @@
set $mod Mod4
# exec_always "setxkbmap -layout de"
exec_always "setxkbmap -layout de -variant nodeadkeys"
include ~/.config/i3/config.d/*
bindsym $mod+d exec --no-startup-id rofi -show run -config ~/.config/rofi/config.rasi
bindsym $mod+Return exec kitty
bindsym $mod+Shift+q kill
bindsym $mod+Shift+c reload
bindsym $mod+Shift+r restart
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
mode "exit: [l]ogout, [r]eboot, [s]hutdown" {
bindsym l exec i3-msg exit
bindsym r exec systemctl reboot
bindsym s exec systemctl shutdown
bindsym Escape mode "default"
bindsym Return mode "default"
}
bindsym $mod+x mode "exit: [l]ogout, [r]eboot, [s]hutdown"
bindsym $mod+Shift+x exec i3lock
bindsym XF86AudioRaiseVolume exec --no-startup-id pulsemixer --change-volume +5 --max-volume 100 #increase sound volume
bindsym XF86AudioLowerVolume exec --no-startup-id pulsemixer --change-volume -5 --max-volume 100 #decrease sound volume
bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id pulsemixer --change-volume +5 --max-volume 300 #increase sound volume
bindsym Shift+XF86AudioLowerVolume exec --no-startup-id pulsemixer --change-volume -5 --max-volume 300 #decrease sound volume
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle # mute sound
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioPause exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set +5%
bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set 5%-

View File

@@ -1,5 +0,0 @@
exec --no-startup-id dex --autostart --environment i3
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
exec --no-startup-id nm-applet &
exec --no-startup-id blueman-applet &

View File

@@ -1,54 +0,0 @@
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
bindsym $mod+p split h
bindsym $mod+v split v
bindsym $mod+f fullscreen toggle
mode "resize" {
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
#bindsym $mod+d focus child
floating_modifier $mod

View File

@@ -1,71 +0,0 @@
# Workspaces
set $ws1 "1: Dev"
set $ws2 "2: Firefox"
set $ws3 "3: Management"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7: Music"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10
# assign [class="firefox"] $ws2
assign [class="Spotify"] $ws7
exec --no-startup-id i3-msg 'workspace $ws2; exec firefox'
exec --no-startup-id i3-msg 'workspace $ws1; exec kitty; $ws1'
# Multiple monitors
workspace $ws1 output DP-1-3 eDP-1
workspace $ws2 output DP-1-3 eDP-1
workspace $ws3 output DP-1-3 eDP-1
workspace $ws4 output DP-1-3 eDP-1
workspace $ws5 output eDP-1
workspace $ws6 output eDP-1
workspace $ws7 output eDP-1
workspace $ws8 output eDP-1
exec_always --no-startup-id xrandr --output eDP-1 --primary --mode 1920x1080 --pos 1920x903 --rotate normal --output DP-1-3 --mode 1920x1200 --pos 0x0 --rotate normal
bindsym $mod+m exec --no-startup-id xrandr --output eDP-1 --primary --mode 1920x1080 --pos 1920x903 --rotate normal --output DP-1-3 --mode 1920x1200 --pos 0x0 --rotate normal
# bindsym $mod+m exec --no-startup-id xrandr --output HDMI2 --auto --right-of eDP1
# Normal stuff
exec_always --no-startup-id "picom --config ~/.config/picom/picom.conf"
exec_always --no-startup-id ~/.config/polybar/launch.sh &
exec_always --no-startup-id feh --bg-scale ~/.config/i3/wallpapers/mountains.jpg
for_window [class="^.*"] border pixel 3
default_floating_border none
default_floating_border normal 0
hide_edge_borders smart
gaps inner 20
smart_gaps on

View File

@@ -1,15 +0,0 @@
return {
{
"folke/which-key.nvim",
event = "VeryLazy",
init = function()
vim.o.timeout = true
vim.o.timeoutlen = 300
end,
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
}
}
}

View File

@@ -1,45 +0,0 @@
return {
-- {'doums/darcula', config = function() vim.cmd('colorscheme darcula') end}
-- {
-- "folke/tokyonight.nvim",
-- lazy = false,
-- priority = 1000,
-- opts = {},
-- config = function() vim.cmd('colorscheme tokyonight-moon') end
-- }
-- {
-- 'rose-pine/neovim',
-- config = function() vim.cmd('colorscheme rose-pine-moon') end
-- }
-- {
-- 'AlexvZyl/nordic.nvim',
-- lazy = false,
-- priority = 1000,
-- init = function()
-- require('nordic').setup {
-- telescope = {
-- style = 'classic'
-- -- style = 'flat'
-- }
-- }
-- require'nordic'.load()
-- end
-- }
-- {
-- "briones-gabriel/darcula-solid.nvim",
-- dependencies = "rktjmp/lush.nvim",
-- config = function()
-- vim.cmd 'colorscheme darcula-solid'
-- vim.cmd 'set termguicolors'
-- end
-- }
{
"ellisonleao/gruvbox.nvim",
priority = 1000,
config = true,
opts = {
contrast = "hard"
},
init = function() vim.cmd("colorscheme gruvbox") end
}
}

View File

@@ -1,47 +0,0 @@
return {
{
"folke/trouble.nvim",
dependencies = {
{
"nvim-tree/nvim-web-devicons"
},
{
'folke/lsp-colors.nvim'
},
{
'nvim-telescope/telescope.nvim'
}
},
cmd = {
"Trouble",
"TroubleClose",
"TroubleToggle",
"TroubleRefresh"
},
init = function()
vim.keymap.set("n", "<leader>xx", function() require("trouble").toggle() end)
vim.keymap.set("n", "<leader>xw", function() require("trouble").toggle("workspace_diagnostics") end)
vim.keymap.set("n", "<leader>xd", function() require("trouble").toggle("document_diagnostics") end)
vim.keymap.set("n", "<leader>xq", function() require("trouble").toggle("quickfix") end)
vim.keymap.set("n", "<leader>xl", function() require("trouble").toggle("loclist") end)
vim.keymap.set("n", "gR", function() require("trouble").toggle("lsp_references") end)
end,
config = function()
local trouble_provider = require("trouble.providers.telescope")
local telescope = require("telescope")
telescope.setup {
defaults = {
mappings = {
i = {
["<c-t>"] = trouble_provider.open_with_trouble
},
n = {
["<c-t>"] = trouble_provider.open_with_trouble
}
}
}
}
end
}
}

View File

@@ -1,28 +0,0 @@
vim.g.mapleader = " "
vim.opt.nu = true
vim.opt.relativenumber = true
vim.opt.tabstop = 4
vim.opt.softtabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = true
vim.opt.smartindent = true
vim.opt.wrap = false
vim.opt.swapfile = false
vim.opt.backup = false
vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir"
vim.opt.undofile = true
vim.opt.hlsearch = false
vim.opt.incsearch = true
vim.opt.termguicolors = true
vim.opt.scrolloff = 8
vim.opt.signcolumn = "yes"
vim.opt.updatetime = 50

View File

@@ -1,415 +0,0 @@
#################################
# Shadows #
#################################
# Enabled client-side shadows on windows. Note desktop windows
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
# unless explicitly requested using the wintypes option.
#
# shadow = false
shadow = true;
# The blur radius for shadows, in pixels. (defaults to 12)
# shadow-radius = 12
shadow-radius = 7;
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
# shadow-opacity = .75
# The left offset for shadows, in pixels. (defaults to -15)
# shadow-offset-x = -15
shadow-offset-x = -7;
# The top offset for shadows, in pixels. (defaults to -15)
# shadow-offset-y = -15
shadow-offset-y = -7;
# Red color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-red = 0
# Green color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-green = 0
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-blue = 0
# Hex string color value of shadow (#000000 - #FFFFFF, defaults to #000000). This option will override options set shadow-(red/green/blue)
# shadow-color = "#000000"
# Specify a list of conditions of windows that should have no shadow.
#
# examples:
# shadow-exclude = "n:e:Notification";
#
# shadow-exclude = []
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"_GTK_FRAME_EXTENTS@:c"
];
# Specify a list of conditions of windows that should have no shadow painted over, such as a dock window.
# clip-shadow-above = []
# Specify a X geometry that describes the region in which shadow should not
# be painted in, such as a dock window region. Use
# shadow-exclude-reg = "x10+0+0"
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
#
# shadow-exclude-reg = ""
# Crop shadow of a window fully on a particular Xinerama screen to the screen.
# xinerama-shadow-crop = false
#################################
# Fading #
#################################
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
# fading = false
fading = true;
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.028
fade-in-step = 0.03;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
# fade-out-step = 0.03
fade-out-step = 0.03;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10
# Specify a list of conditions of windows that should not be faded.
# fade-exclude = []
# Do not fade on window open/close.
# no-fading-openclose = false
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
#################################
# Transparency / Opacity #
#################################
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
# inactive-opacity = 1
inactive-opacity = 1;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
# frame-opacity = 1.0
frame-opacity = 1;
# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows.
# inactive-opacity-override = true
inactive-opacity-override = false;
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
# active-opacity = 1.0
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
# inactive-dim = 0.0
# Specify a list of conditions of windows that should never be considered focused.
# focus-exclude = []
focus-exclude = [ "class_g = 'Cairo-clock'" ];
# Use fixed inactive dim value, instead of adjusting according to window opacity.
# inactive-dim-fixed = 1.0
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
# like `50:name *= "Firefox"`. picom-trans is recommended over this.
# Note we don't make any guarantee about possible conflicts with other
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
# example:
# opacity-rule = [ "80:class_g = 'URxvt'" ];
#
# opacity-rule = []
#################################
# Corners #
#################################
# Sets the radius of rounded window corners. When > 0, the compositor will
# round the corners of windows. Does not interact well with
# `transparent-clipping`.
corner-radius = 0
round_borders = 1
# Exclude conditions for rounded corners.
rounded-corners-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'"
];
#################################
# Background-Blurring #
#################################
# Parameters for background blurring, see the *BLUR* section for more information.
# blur-method =
# blur-size = 12
#
# blur-deviation = false
#
blur-strength = 7
blur-method = "dual_kawase";
# Blur background of semi-transparent / ARGB windows.
# Bad in performance, with driver-dependent behavior.
# The name of the switch may change without prior notifications.
#
# blur-background = false
# Blur background of windows when the window frame is not opaque.
# Implies:
# blur-background
# Bad in performance, with driver-dependent behavior. The name may change.
#
# blur-background-frame = false
# Use fixed blur strength rather than adjusting according to window opacity.
# blur-background-fixed = false
# Specify the blur convolution kernel, with the following format:
# example:
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
#
# blur-kern = ""
blur-kern = "3x3box";
# Exclude conditions for background blur.
# blur-background-exclude = []
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
#################################
# General Settings #
#################################
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
# daemon = false
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
# `xrender` is the default one.
#
backend = "glx"
#backend = "xrender";
# Enable/disable VSync.
# vsync = false
vsync = true;
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
# dbus = false
# Try to detect WM windows (a non-override-redirect window with no
# child that has 'WM_STATE') and mark them as active.
#
# mark-wmwin-focused = false
mark-wmwin-focused = true;
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
# mark-ovredir-focused = false
mark-ovredir-focused = true;
# Try to detect windows with rounded corners and don't consider them
# shaped windows. The accuracy is not very high, unfortunately.
#
# detect-rounded-corners = false
detect-rounded-corners = true;
# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers
# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
#
# detect-client-opacity = false
detect-client-opacity = true;
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
# provided that the WM supports it.
#
# use-ewmh-active-win = false
# Unredirect all windows if a full-screen opaque window is detected,
# to maximize performance for full-screen windows. Known to cause flickering
# when redirecting/unredirecting windows.
#
# unredir-if-possible = false
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
# unredir-if-possible-delay = 0
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
# unredir-if-possible-exclude = []
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
# in the same group focused at the same time.
#
# detect-transient = false
detect-transient = true;
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
# group focused at the same time. This usually means windows from the same application
# will be considered focused or unfocused at the same time.
# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
#
# detect-client-leader = false
# Resize damaged region by a specific number of pixels.
# A positive value enlarges it while a negative one shrinks it.
# If the value is positive, those additional pixels will not be actually painted
# to screen, only used in blur calculation, and such. (Due to technical limitations,
# with use-damage, those pixels will still be incorrectly painted to screen.)
# Primarily used to fix the line corruption issues of blur,
# in which case you should use the blur radius value here
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
# with a 5x5 one you use `--resize-damage 2`, and so on).
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
#
# resize-damage = 1
# Specify a list of conditions of windows that should be painted with inverted color.
# Resource-hogging, and is not well tested.
#
# invert-color-include = []
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
# Might cause incorrect opacity when rendering transparent content (but never
# practically happened) and may not work with blur-background.
# My tests show a 15% performance boost. Recommended.
#
glx-no-stencil = true;
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes,
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
# Recommended if it works.
#
# glx-no-rebind-pixmap = false
# Disable the use of damage information.
# This cause the whole screen to be redrawn everytime, instead of the part of the screen
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
# The opposing option is use-damage
#
# no-use-damage = false
use-damage = true;
# Use X Sync fence to sync clients' draw calls, to make sure all draw
# calls are finished before picom starts drawing. Needed on nvidia-drivers
# with GLX backend for some users.
#
# xrender-sync-fence = false
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
# in the source tree for examples.
#
# glx-fshader-win = ""
# Force all windows to be painted with blending. Useful if you
# have a glx-fshader-win that could turn opaque pixels transparent.
#
# force-win-blend = false
# Do not use EWMH to detect fullscreen windows.
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
#
# no-ewmh-fullscreen = false
# Dimming bright windows so their brightness doesn't exceed this set value.
# Brightness of a window is estimated by averaging all pixels in the window,
# so this could comes with a performance hit.
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
#
# max-brightness = 1.0
# Make transparent windows clip other windows like non-transparent windows do,
# instead of blending on top of them.
#
# transparent-clipping = false
# Set the log level. Possible values are:
# "trace", "debug", "info", "warn", "error"
# in increasing level of importance. Case doesn't matter.
# If using the "TRACE" log level, it's better to log into a file
# using *--log-file*, since it can generate a huge stream of logs.
#
# log-level = "debug"
log-level = "warn";
# Set the log file.
# If *--log-file* is never specified, logs will be written to stderr.
# Otherwise, logs will to written to the given file, though some of the early
# logs might still be written to the stderr.
# When setting this option from the config file, it is recommended to use an absolute path.
#
# log-file = "/path/to/your/log/file"
# Show all X errors (for debugging)
# show-all-xerrors = false
# Write process ID to a file.
# write-pid-path = "/path/to/your/log/file"
# Window type settings
#
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
# "tooltip", "notification", "combo", and "dnd".
#
# Following per window-type options are available: ::
#
# fade, shadow:::
# Controls window-type-specific shadow and fade settings.
#
# opacity:::
# Controls default opacity of the window type.
#
# focus:::
# Controls whether the window of this type is to be always considered focused.
# (By default, all window types except "normal" and "dialog" has this on.)
#
# full-shadow:::
# Controls whether shadow is drawn under the parts of the window that you
# normally won't be able to see. Useful when the window has parts of it
# transparent, and you want shadows in those areas.
#
# clip-shadow-above:::
# Controls wether shadows that would have been drawn above the window should
# be clipped. Useful for dock windows that should have no shadow painted on top.
#
# redir-ignore:::
# Controls whether this type of windows should cause screen to become
# redirected again after been unredirected. If you have unredir-if-possible
# set, and doesn't want certain window to cause unnecessary screen redirection,
# you can set this to `true`.
#
wintypes:
{
tooltip = { fade = false; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
dock = { shadow = false; clip-shadow-above = true; }
dnd = { shadow = false; }
popup_menu = { opacity = 0.8; }
dropdown_menu = { opacity = 0.8; }
}

View File

@@ -1,220 +0,0 @@
[colors]
background = #282828
background-alt = #282828
gray = #928374
foreground = #ebdbb2
;primary = #d5c4a1
;secondary = #8ABEB7
alert = #cc241d
;disabled = #707880
green = #98971a
yellow = #d79921
blue = #458588
purple = #b16286
aqua = #689d6a
aqualight= #8ec07c
red = #fb4934
orange = #fe8019
[bar/bar]
width = 100%
;offset-x = 15%
height = 24pt
radius = 0
; dpi = 96
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3pt
border-size = 0
border-color = #00000000
padding-left = 1
padding-right = 1
module-margin = 1
;separator = |
separator-foreground = ${colors.disabled}
font-0 = "Hack Nerd Font:size=10;2"
font-1 = "Hack Nerd Font:size=10;2"
modules-left = xwindow xworkspaces
modules-center = date
modules-right = pulseaudio memory cpu cpu-temp battery wifi
cursor-click = pointer
cursor-scroll = ns-resize
enable-ipc = true
tray-position = right
; wm-restack = generic
; wm-restack = bspwm
; wm-restack = i3
; override-redirect = true
[module/xworkspaces]
type = internal/xworkspaces
label-active = %name%
label-active-background = ${colors.background-alt}
label-active-foreground = ${colors.foreground}
label-active-underline= ${colors.yellow}
label-active-padding = 1
label-occupied = %name%
label-occupied-padding = 1
label-occupied-foreground = ${colors.gray}
label-urgent = %name%
label-urgent-background = ${colors.alert}
label-urgent-padding = 1
label-empty = %name%
label-empty-foreground = ${colors.disabled}
label-empty-padding = 1
[module/xwindow]
type = internal/xwindow
label = %title:0:60:...%
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.disabled}
[module/pulseaudio]
type = internal/pulseaudio
format-volume-prefix = "󰕾 "
format-volume-foreground = ${colors.foreground}
format-volume-prefix-foreground = ${colors.yellow}
format-volume = <label-volume>
label-volume = %percentage%%
label-muted = muted
label-muted-foreground = ${colors.disabled}
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
label-layout = %layout%
label-layout-foreground = ${colors.primary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-foreground = ${colors.background}
label-indicator-background = ${colors.secondary}
[module/memory]
type = internal/memory
interval = 2
format-prefix = "󰍛 "
format-prefix-foreground = ${colors.green}
label = %percentage_used:2%%
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.aqualight}
format-foreground = ${colors.foreground}
label = %percentage:2%%
[network-base]
type = internal/network
interval = 5
format-connected = <label-connected>
format-disconnected = <label-disconnected>
label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
[module/wlan]
inherit = network-base
interface-type = wireless
label-connected = %{F#F0C674}%ifname%%{F-} %essid% %local_ip%
[module/eth]
inherit = network-base
interface-type = wired
label-connected = %{F#F0C674}%ifname%%{F-} %local_ip%
[module/date]
type = internal/date
interval = 1
date = %a, %d %B %Y | %H:%M
;date = %H:%M
;date-alt = %d-%m-%Y %r
;%H:%M:%S
label = %date%
label-foreground = ${colors.foreground}
format-prefix = " "
format-prefix-foreground = ${colors.orange}
[settings]
screenchange-reload = true
pseudo-transparency = true
[module/battery]
;https://github.com/jaagr/polybar/wiki/Module:-battery
type = internal/battery
battery = BAT0
adapter = AC0
full-at = 100
format-charging = <animation-charging> <label-charging>
label-charging = %percentage%%
format-charging-foreground = ${colors.foreground}
format-charging-background = ${colors.background}
;format-chaging-underline = #a3c725
format-discharging = <ramp-capacity> <label-discharging>
label-discharging = %percentage%%
;format-discharging-underline = #c7ae25
format-discharging-foreground = ${colors.foreground}
format-discharging-background = ${colors.background}
format-full-prefix = " "
format-full-prefix-foreground = #a3c725
;format-full-underline = #a3c725
format-full-foreground = ${colors.foreground}
format-full-background = ${colors.background}
ramp-capacity-0 =
ramp-capacity-1 =
ramp-capacity-2 =
ramp-capacity-3 =
ramp-capacity-4 =
ramp-capacity-foreground = ${colors.aqua}
animation-charging-0 =
animation-charging-1 =
animation-charging-2 =
animation-charging-3 =
animation-charging-4 =
animation-charging-foreground = ${colors.green}
animation-charging-framerate = 750
[module/cpu-temp]
type = custom/script
exec = sensors| grep temp1 | awk '{print $2}' | sort -n | tail -n 1
;/home/zaid/.config/custom-scripts/cputemp.sh
format-prefix = " "
format-prefix-foreground = ${colors.red}
interval = 1
;vim:ft=dosini

View File

@@ -1,14 +0,0 @@
#!/usr/bin/env bash
# Terminate already running bar instances
# If all your bars have ipc enabled, you can use
polybar-msg cmd quit
# Otherwise you can use the nuclear option:
# killall -q polybar
# Launch bar1 and bar2
echo "---" | tee -a /tmp/polybar1.log /tmp/polybar2.log
polybar bar 2>&1 | tee -a /tmp/polybar1.log & disown
#polybar bar2 2>&1 | tee -a /tmp/polybar2.log & disown
echo "Bars launched..."

View File

@@ -1,35 +0,0 @@
/*******************************************************
* ROFI Arch Dark Transparent colors for EndeavourOS
* Maintainer: joekamprad <joekamprad@endeavouros.com>
*******************************************************/
* {
selected-normal-foreground: rgba ( 40, 40, 40, 100 % );
foreground: rgba ( 174, 139, 138, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 45, 48, 59, 1 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 249, 249, 249, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 204, 102, 102, 100 % );
alternate-urgent-background: rgba ( 75, 81, 96, 90 % );
active-foreground: rgba ( 101, 172, 255, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 249, 249, 249, 100 % );
alternate-active-background: rgba ( 45, 48, 59, 88 % );
background: rgba ( 40, 40, 40, 88 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 45, 48, 59, 1 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 254, 128, 25, 100 % );
border-color: rgba ( 124, 131, 137, 100 % );
spacing: 2;
separatorcolor: rgba ( 45, 48, 59, 1 % );
urgent-background: rgba ( 45, 48, 59, 15 % );
selected-urgent-background: rgba ( 165, 66, 66, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 29, 31, 33, 17 % );
selected-active-background: rgba ( 26, 28, 35, 100 % );
}

View File

@@ -1,3 +1,5 @@
README.md
.git/
.gitignore
.git
.gitmodules

8
README.md Normal file
View File

@@ -0,0 +1,8 @@
# Dotfiles
## Usage
```bash
$ stow -S clang-format kitty nvim sway tmux waybar wofi zsh kanshi
```

View File

@@ -9,6 +9,7 @@ PointerAlignment: Left
AccessModifierOffset: -4
AlwaysBreakTemplateDeclarations: true
LambdaBodyIndentation: Signature
AllowShortLambdasOnASingleLine: None
MaxEmptyLinesToKeep: 3
#ColumnLimit: 128

View File

@@ -0,0 +1,13 @@
profile Home {
output "eDP-1" mode 2256x1504@59.999Hz position 1920,875 transform normal scale 1.399999976158142
output "DP-11" mode 1920x1200@59.95Hz position 0,0 transform normal scale 1.0
exec swayws move --away 1 eDP-1
exec swayws move --away 4 eDP-1
}
profile Kinemic {
output "eDP-1" mode 2256x1504@59.999Hz position 449,1440 transform normal scale 1.399999976158142
output "DP-3" mode 2560x1440@59.951Hz position 0,0 transform normal scale 1.0
exec swayws move --away 1 eDP-1
exec swayws move --away 4 eDP-1
}

View File

@@ -4,3 +4,5 @@ include current-theme.conf
# END_KITTY_THEME
#
background_opacity 0.87
enable_audio_bell no
touch_scroll_multiplier 8.0

View File

@@ -0,0 +1,52 @@
{
"LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" },
"alpha-nvim": { "branch": "main", "commit": "bf3c8bb8c02ed3d9644cc5bbc48e2bdc39349cd7" },
"auto-session": { "branch": "main", "commit": "9d02776ed42874d37869dc683396234e3724b52d" },
"cellular-automaton.nvim": { "branch": "main", "commit": "11aea08aa084f9d523b0142c2cd9441b8ede09ed" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" },
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
"copilot.vim": { "branch": "release", "commit": "87038123804796ca7af20d1b71c3428d858a9124" },
"dressing.nvim": { "branch": "master", "commit": "1b7921eecc65af1baf8ac1dc06f0794934cbcfb2" },
"friendly-snippets": { "branch": "main", "commit": "de8fce94985873666bd9712ea3e49ee17aadb1ed" },
"gruvbox.nvim": { "branch": "main", "commit": "49d9c0b150ba70efcd831ec7b3cb8ee740067045" },
"harpoon": { "branch": "master", "commit": "1bc17e3e42ea3c46b33c0bbad6a880792692a1b3" },
"lazy.nvim": { "branch": "main", "commit": "077102c5bfc578693f12377846d427f49bc50076" },
"lsp-colors.nvim": { "branch": "main", "commit": "2bbe7541747fd339bdd8923fc45631a09bb4f1e5" },
"lsp-zero.nvim": { "branch": "v3.x", "commit": "56db3d5ce5476b183783160e6045f7337ba12b83" },
"lualine.nvim": { "branch": "master", "commit": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "25c11854aa25558ee6c03432edfa0df0217324be" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
"molten-nvim": { "branch": "main", "commit": "8346bba69e0de96278dad2038e9be74605908b7d" },
"neoformat": { "branch": "master", "commit": "d9d3311097eacdba9bd7a425b267d304b509e7ea" },
"noice.nvim": { "branch": "main", "commit": "df448c649ef6bc5a6a633a44f2ad0ed8d4442499" },
"nui.nvim": { "branch": "main", "commit": "b58e2bfda5cea347c9d58b7f11cf3012c7b3953f" },
"nvim-cmp": { "branch": "main", "commit": "ae644feb7b67bf1ce4260c231d1d4300b19c6f30" },
"nvim-dap": { "branch": "master", "commit": "7ff6936010b7222fea2caea0f67ed77f1b7c60dd" },
"nvim-dap-ui": { "branch": "master", "commit": "ffa89839f97bad360e78428d5c740fdad9a0ff02" },
"nvim-lspconfig": { "branch": "master", "commit": "541f3a2781de481bb84883889e4d9f0904250a56" },
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" },
"nvim-tree.lua": { "branch": "master", "commit": "f5f67892996b280ae78b1b0a2d07c4fa29ae0905" },
"nvim-treesitter": { "branch": "master", "commit": "92725df6222614307c4712eb9982e5287f21aa11" },
"nvim-web-devicons": { "branch": "master", "commit": "19d257cf889f79f4022163c3fbb5e08639077bd8" },
"overseer.nvim": { "branch": "master", "commit": "6f8bc37eb729a00e185cdf38b1ed3309a05bfeef" },
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
"session-lens": { "branch": "main", "commit": "eae46b472b3150f5ec0f977556e8085683d49eb0" },
"sqlite.nvim": { "branch": "master", "commit": "53115a1a73972ce75c9a371a682d27286be9e81e" },
"telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
"time-tracker.nvim": { "branch": "master", "commit": "c0b87c30484920ed1b9a4589eb62902015dfe5c2" },
"todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" },
"toggleterm.nvim": { "branch": "main", "commit": "48be57eaba817f038d61bbf64d2c597f578c0827" },
"trouble.nvim": { "branch": "main", "commit": "3609bb9a82bbab1ef95cf2c27ce7e52267a7d40d" },
"undotree": { "branch": "master", "commit": "78b5241191852ffa9bb5da5ff2ee033160798c3b" },
"vim-doge": { "branch": "master", "commit": "188351964c8b2540a69c1d2648b3c6e7877a016f" },
"vim-flog": { "branch": "master", "commit": "6f80c1ffa7068ca8cc0e29af7af4f6ed0717e65e" },
"vim-fugitive": { "branch": "master", "commit": "d4877e54cef67f5af4f950935b1ade19ed6b7370" },
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
"vimtex": { "branch": "master", "commit": "9a5ef1d4ac8e4e06071179ebe8121350fcb97861" },
"which-key.nvim": { "branch": "main", "commit": "8badb359f7ab8711e2575ef75dfe6fbbd87e4821" }
}

View File

@@ -0,0 +1,25 @@
return {
name = "Cargo Build",
builder = function()
local file = vim.fn.expand("%:p")
return {
cmd = {
"cargo"
},
args = {
"build"
},
components = {
{
"on_output_quickfix"
},
"default"
}
}
end,
condition = {
filetype = {
"rust",
}
}
}

View File

@@ -0,0 +1,22 @@
return {
name = "Cargo Clean",
builder = function()
local file = vim.fn.expand("%:p")
return {
cmd = {
"cargo"
},
args = {
"clean",
},
components = {
"default"
}
}
end,
condition = {
filetype = {
"rust",
}
}
}

View File

@@ -0,0 +1,22 @@
return {
name = "Cargo Run",
builder = function()
local file = vim.fn.expand("%:p")
return {
cmd = {
"cargo"
},
args = {
"run"
},
components = {
"default"
}
}
end,
condition = {
filetype = {
"rust"
}
}
}

View File

@@ -0,0 +1,24 @@
return {
name = "Cargog Test",
builder = function()
return {
cmd = {
"cargo"
},
args = {
"test",
},
components = {
{
"on_output_quickfix"
},
"default"
}
}
end,
condition = {
filetype = {
"rust",
}
}
}

View File

@@ -0,0 +1,28 @@
return {
name = "CMake Build",
builder = function()
local file = vim.fn.expand("%:p")
return {
cmd = {
"cmake"
},
args = {
"--build",
"build",
"-j16"
},
components = {
{
"on_output_quickfix"
},
"default"
}
}
end,
condition = {
filetype = {
"cmake",
"cpp"
}
}
}

View File

@@ -0,0 +1,24 @@
return {
name = "CMake Clean",
builder = function()
local file = vim.fn.expand("%:p")
return {
cmd = {
"rm"
},
args = {
"-r",
"build",
},
components = {
"default"
}
}
end,
condition = {
filetype = {
"cmake",
"cpp"
}
}
}

View File

@@ -0,0 +1,58 @@
return {
name = "CMake Generate",
params = {
build_type = {
type = "enum",
choices = {
"Debug",
"Release",
"RelWithDebInfo",
"MinSizeRel"
},
default = "Release"
},
generator = {
type = "enum",
choices = {
"Ninja",
"Unix Makefiles"
},
default = "Ninja"
},
compiler = {
type = "enum",
choices = {
"g++",
"clang++"
},
default = "g++"
}
},
builder = function(params)
return {
cmd = {
"cmake"
},
args = {
"-B",
"build",
"-S",
".",
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
"-DCMAKE_BUILD_TYPE=" .. params.build_type,
"-DCMAKE_CXX_COMPILER=" .. params.compiler,
"-G",
params.generator
},
components = {
"default"
}
}
end,
condition = {
filetype = {
"cmake",
"cpp"
}
}
}

View File

@@ -0,0 +1,27 @@
return {
name = "CMake Test",
builder = function()
return {
cmd = {
"ctest"
},
args = {
"--test-dir",
"build",
"--output-on-failure",
},
components = {
{
"on_output_quickfix"
},
"default"
}
}
end,
condition = {
filetype = {
"cmake",
"cpp"
}
}
}

View File

@@ -0,0 +1,22 @@
return {
name = "Python Run",
builder = function()
local file = vim.fn.expand("%:p")
return {
cmd = {
"python"
},
args = {
file
},
components = {
"default"
}
}
end,
condition = {
filetype = {
"python"
}
}
}

View File

@@ -4,7 +4,7 @@
local function clamp(x, min, max) return math.max(math.min(x, max), min) end
local function get_random_image()
images = {
local images = {
{
[[██╗ █████╗ ██████╗██╗ ██╗███████╗]],
[[██║ ██╔══██╗██╔════╝██║ ██║██╔════╝]],
@@ -29,12 +29,53 @@ local function get_random_image()
[[██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║]],
[[██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║]],
[[╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═╝ ╚═╝]]
},
{
[[ ▄ ]],
[[ ▟█▙ ]],
[[ ▟███▙ ]],
[[ ▟█████▙ ]],
[[ ▟███████▙ ]],
[[ ▂▔▀▜██████▙ ]],
[[ ▟██▅▂▝▜█████▙ ]],
[[ ▟█████████████▙ ]],
[[ ▟███████████████▙ ]],
[[ ▟█████████████████▙ ]],
[[ ▟███████████████████▙ ]],
[[ ▟█████████▛▀▀▜████████▙ ]],
[[ ▟████████▛ ▜███████▙ ]],
[[ ▟█████████ ████████▙ ]],
[[ ▟██████████ █████▆▅▄▃▂ ]],
[[ ▟██████████▛ ▜█████████▙ ]],
[[ ▟██████▀▀▀ ▀▀██████▙ ]],
[[ ▟███▀▘ ▝▀███▙ ]],
[[▟▛▀ ▀▜▙]],
[[ btw ]]
}
}
-- local i = math.random(#images)
local i = clamp(math.random(1, 40), 1, #images)
return images[i]
local pmf = {0.25, 0.25, 0.25, 0.25}
local cdf = {}
cdf[1] = 0
for j = 2, #pmf+1 do
cdf[j] = cdf[j - 1] + pmf[j - 1]
end
if math.abs(cdf[#cdf] - 1) > 0.01 then
error("Probabilities do not add up to 1")
elseif #images ~= #pmf then
error("Number of images and probabilities do not match")
end
math.randomseed(os.time())
local r = math.random(100)
for j = 2, #cdf do
if r <= cdf[j] * 100 then
return images[j-1]
end
end
end
-----------------
@@ -44,7 +85,7 @@ end
return {
{
"goolord/alpha-nvim",
event = "VimEnter",
lazy = false,
config = function()
local dashboard = require("alpha.themes.dashboard")
dashboard.section.header.val = get_random_image()

View File

@@ -1,6 +1,7 @@
return {
{
"rmagatti/auto-session",
lazy = false,
dependencies = {
"nvim-lualine/lualine.nvim"
},
@@ -8,8 +9,12 @@ return {
init = function()
vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions"
vim.keymap.set('n', '<leader><C-s>', '<cmd>SessionSave<CR>')
vim.keymap.set('n', '<leader><C-d>', '<cmd>SessionDelete<CR>')
vim.keymap.set('n', '<leader>ss', '<cmd>SessionSave<CR>', {
desc = "Save"
})
vim.keymap.set('n', '<leader>sd', '<cmd>SessionDelete<CR>', {
desc = "Delete"
})
end,
opts = {
log_level = "error",
@@ -27,11 +32,13 @@ return {
'nvim-telescope/telescope.nvim'
},
init = function()
vim.keymap.set('n', '<leader>p', function() require('session-lens').search_session() end)
vim.keymap.set('n', '<leader>sf', function() require('session-lens').search_session() end, {
desc = "Find"
})
end,
config = function()
require('session-lens').setup({
prompt_title = 'Projects'
prompt_title = 'Sessions'
})
end
}

View File

@@ -0,0 +1,154 @@
return {
{
'mfussenegger/nvim-dap',
config = function()
local dap = require("dap")
dap.adapters.gdb = {
type = "executable",
command = "gdb",
args = {
"-i",
"dap"
}
}
dap.adapters.python = function(cb, config)
if config.request == 'attach' then
local port = (config.connect or config).port
local host = (config.connect or config).host or '127.0.0.1'
cb({
type = 'server',
port = assert(port, '`connect.port` is required for a python `attach` configuration'),
host = host,
options = {
source_filetype = 'python'
}
})
else
cb({
type = 'executable',
command = 'python',
args = {
'-m',
'debugpy.adapter'
},
options = {
source_filetype = 'python'
}
})
end
end
dap.configurations.c = {
{
name = "Launch",
type = "gdb",
request = "launch",
program = function()
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
end,
cwd = "${workspaceFolder}",
stopAtBeginningOfMainSubprogram = false
}
}
dap.configurations.cpp = {
{
name = "Launch",
type = "gdb",
request = "launch",
program = function()
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
end,
cwd = "${workspaceFolder}",
stopAtBeginningOfMainSubprogram = false
}
}
dap.configurations.python = {
{
type = 'python',
request = 'launch',
name = "Launch file",
program = "${file}",
pythonPath = function()
local cwd = vim.fn.getcwd()
if vim.fn.executable(cwd .. '/venv/bin/python') == 1 then
return cwd .. '/venv/bin/python'
elseif vim.fn.executable(cwd .. '/.venv/bin/python') == 1 then
return cwd .. '/.venv/bin/python'
else
return '/usr/bin/python'
end
end
}
}
vim.keymap.set("n", "<leader>db", "<cmd>DapToggleBreakpoint<cr>", {
desc = "Toggle breakpoint"
})
vim.keymap.set("n", "<leader>dc", "<cmd>DapContinue<cr>", {
desc = "Continue"
})
vim.keymap.set("n", "<leader>dt", "<cmd>DapTerminate<cr>", {
desc = "Terminate"
})
vim.keymap.set("n", "<leader>di", "<cmd>DapStepInto<cr>", {
desc = "Step into"
})
vim.keymap.set("n", "<leader>dn", "<cmd>DapStepOver<cr>", {
desc = "Step over"
})
vim.keymap.set("n", "<leader>do", "<cmd>DapStepOut<cr>", {
desc = "Step out"
})
vim.keymap.set("n", '<Leader>dh', function() require('dap.ui.widgets').hover() end, {
desc = "Hover"
})
end
},
{
"rcarriga/nvim-dap-ui",
dependencies = {
"mfussenegger/nvim-dap",
"nvim-neotest/nvim-nio"
},
config = function()
require("dapui").setup({
controls = {
enabled = false
},
layouts = {
{
elements = {
{
id = "scopes",
size = 0.33
},
{
id = "breakpoints",
size = 0.33
},
{
id = "stacks",
size = 0.33
}
},
position = "left",
size = 60
},
{
elements = {
{
id = "repl",
size = 1
}
},
position = "bottom",
size = 15
}
}
})
vim.keymap.set("n", "<leader>du", function() require("dapui").toggle() end, {
desc = " Toggle UI"
})
end
}
}

View File

@@ -3,9 +3,13 @@ return {
'kkoomen/vim-doge',
build = ':call doge#install()',
init = function()
vim.g.doge_enable_mappings = 0
vim.g.doge_doc_standard_cpp = 'doxygen_cpp_comment_slash'
vim.g.doge_mapping_comment_jump_forward = '<c-j>'
vim.g.doge_mapping_comment_jump_backward = '<c-k>'
vim.keymap.set('n', '<leader>gd', '<Plug>(doge-generate)', { silent = true, desc = "Generate doc"})
-- nmap <silent> <Leader>d <Plug>(doge-generate)
end
}
}

View File

@@ -8,8 +8,8 @@ return {
}
},
init = function()
vim.keymap.set("n", "<C-e>", function() require("harpoon.ui").toggle_quick_menu() end)
vim.keymap.set("n", "<leader>a", function() require("harpoon.mark").add_file() end)
vim.keymap.set("n", "<C-e>", function() require("harpoon.ui").toggle_quick_menu() end, {desc = "Toggle harpoon ui"})
vim.keymap.set("n", "<leader>a", function() require("harpoon.mark").add_file() end, {desc = "Add to harpoon list"})
vim.keymap.set("n", "<C-h>", function() require("harpoon.ui").nav_file(1) end)
vim.keymap.set("n", "<C-t>", function() require("harpoon.ui").nav_file(2) end)

View File

@@ -14,7 +14,12 @@ return {
{
'williamboman/mason.nvim',
lazy = false,
config = true
opts = {
registries = {
"github:antsouchlos/mason-registry",
"github:mason-org/mason-registry"
}
}
},
-- Autocompletion
@@ -37,26 +42,14 @@ return {
cmp.setup({
sources = {
{
name = 'path'
},
{
name = 'nvim_lsp'
},
{
name = 'nvim_lua'
},
{
name = 'luasnip',
keyword_length = 2
},
{
name = 'buffer',
keyword_length = 3
},
{
name = 'nvim_lsp_signature_help'
}
-- LuaFormatter off
{ name = 'path' },
{ name = 'nvim_lsp' },
{ name = 'nvim_lua' },
{ name = 'luasnip', keyword_length = 2 },
{ name = 'buffer', keyword_length = 3 },
{ name = 'nvim_lsp_signature_help' }
-- LuaFormatter on
},
formatting = lsp_zero.cmp_format(),
mapping = cmp.mapping.preset.insert({
@@ -73,15 +66,12 @@ return {
})
cmp.setup.filetype('gitcommit', {
sources = cmp.config.sources({
{
name = 'git'
}
}, {
{
name = 'buffer'
}
})
-- LuaFormatter off
sources = cmp.config.sources(
{ { name = 'git' } },
{ { name = 'buffer' } }
)
-- LuaFormatter on
})
cmp.setup.cmdline({
@@ -126,36 +116,36 @@ return {
dependencies = {
'hrsh7th/cmp-nvim-lsp',
'williamboman/mason-lspconfig.nvim',
'folke/trouble.nvim' -- required for the current config
"folke/trouble.nvim"
},
config = function()
local lsp_zero = require('lsp-zero')
lsp_zero.extend_lspconfig()
lsp_zero.on_attach(function(client, bufnr)
local opts = {
buffer = bufnr,
remap = false
}
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts)
vim.keymap.set("n", "K", function() vim.lsp.buf.hover() end, opts)
vim.keymap.set("n", "<leader>vws", function() vim.lsp.buf.workspace_symbol() end, opts)
vim.keymap.set("n", "<leader>vd", function() vim.diagnostic.open_float() end, opts)
vim.keymap.set("n", "[d", function() vim.diagnostic.goto_next() end, opts)
vim.keymap.set("n", "]d", function() vim.diagnostic.goto_prev() end, opts)
vim.keymap.set("n", "<leader>vca", function() vim.lsp.buf.code_action() end, opts)
-- vim.keymap.set("n", "<leader>vrr", function() vim.lsp.buf.references() end, opts)
vim.keymap.set("n", "<leader>vrr", "<cmd>Trouble lsp_references<CR>", opts)
vim.keymap.set("n", "<leader>vrn", function() vim.lsp.buf.rename() end, opts)
vim.keymap.set("i", "<C-p>", function() vim.lsp.buf.signature_help() end, opts)
vim.keymap.set("n", "<M-cr>", function() vim.lsp.buf.code_action() end, opts)
vim.keymap.set("i", "<M-cr>", function() vim.lsp.buf.code_action() end, opts)
vim.keymap.set("n", "<leader>ld", function() vim.lsp.buf.definition() end, {
desc = "Go to definition"
})
vim.keymap.set("n", "<leader>lh", function() vim.lsp.buf.hover() end, {
desc = "Hover"
})
vim.keymap.set("n", "<leader>lr", ":Trouble lsp_references<CR>", {
desc = "Show references"
})
vim.keymap.set("n", "<leader>ln", function() vim.lsp.buf.rename() end, {
desc = "Rename"
})
vim.keymap.set("n", "<leader>ls", function() vim.lsp.buf.signature_help() end, {
desc = "Signature help"
})
vim.keymap.set("n", "<leader>la", function() vim.lsp.buf.code_action() end, {
desc = "Code actions"
})
end)
require('mason-lspconfig').setup({
ensure_installed = {
'clangd',
-- 'clangd',
'pyright',
'cmake',
'texlab'
@@ -172,10 +162,31 @@ return {
require('lspconfig')['clangd'].setup {
cmd = {
"clangd",
"--background-index",
"--clang-tidy",
"--completion-style=bundled",
"--cross-file-rename",
"--header-insertion=iwyu",
-- Required for embedded system compilers
"--query-driver=/**/*g++",
"--offset-encoding=utf-16"
-- "-j=8",
-- "--malloc-trim",
-- "--pch-storage=memory"
}
}
require('lspconfig').matlab_ls.setup({
settings = {
filetypes = {
"matlab"
},
matlab = {
installPath = "/opt/matlab/R2023a/"
}
},
single_file_support = true
})
end
}
}

View File

@@ -15,7 +15,7 @@ return {
let g:neoformat_markdown_mdformat = {
\ 'exe': 'mdformat',
\ 'args': ['--wrap=79'],
\ 'args': ['--wrap=79', '--number'],
\ 'replace': 1,
\ }
let g:neoformat_enabled_markdown = ['mdformat']

View File

@@ -0,0 +1,38 @@
-- lazy.nvim
return {
"folke/noice.nvim",
event = "VeryLazy",
opts = {
lsp = {
signature = {
enabled = false
},
hover = {
enabled = false
}
},
views = {
cmdline_popup = {
backend = "popup",
relative = "editor",
position = {
row = -1,
col = "0%"
},
border = {
style = "none"
}
},
cmdline_popupmenu = {
relative = "editor",
position = {
row = -2,
col = "0%"
}
}
}
},
dependencies = {
"MunifTanjim/nui.nvim"
}
}

View File

@@ -7,7 +7,11 @@ return {
},
init = function()
vim.opt.termguicolors = true
vim.keymap.set('n', '<leader>t', '<cmd>NvimTreeToggle<cr>', {noremap = true, silent = true})
vim.keymap.set('n', '<leader>e', '<cmd>NvimTreeToggle<cr>', {
noremap = true,
silent = true,
desc = "Explorer"
})
end,
config = function() require("nvim-tree").setup() end
}

View File

@@ -0,0 +1,32 @@
return {
"stevearc/overseer.nvim",
config = function()
require("overseer").setup({
templates = {
-- "builtin",
"user.cargo_build",
"user.cargo_clean",
"user.cargo_run",
"user.cargo_test",
"user.cmake_generate",
"user.cmake_build",
"user.cmake_clean",
"user.cmake_test",
"user.python_run"
}
})
vim.keymap.set("n", "<leader>oo", function() require("overseer").toggle() end, {
desc = "Toggle"
})
vim.keymap.set("n", "<leader>or", ":OverseerRun<CR>", {
desc = "Run"
})
vim.keymap.set("n", "<leader>oq", ":OverseerQuickAction<CR>", {
desc = "Quick Action"
})
vim.keymap.set("n", "<leader>of", ":OverseerQuickAction open float<CR>", {
desc = "Open Float"
})
end
}

View File

@@ -36,14 +36,14 @@ return {
cmd = "Telescope",
init = function()
-- LuaFormatter off
vim.keymap.set('n', '<leader>ff', function() require("telescope.builtin").find_files() end,{desc = "Telescope find files"})
vim.keymap.set('n', '<leader>fg', function() require("telescope.builtin").live_grep() end,{desc = "Telescope live grep"})
vim.keymap.set('n', '<leader>ff', function() require("telescope.builtin").find_files() end,{desc = "Files"})
vim.keymap.set('n', '<leader>fg', function() require("telescope.builtin").live_grep() end,{desc = "grep"})
vim.keymap.set('n', '<leader>fa', function()
require("telescope.builtin").find_files({hidden = true})
end, {desc = "Telescope find all files"})
end, {desc = "All files"})
vim.keymap.set('n', '<leader>fb', function() require("telescope.builtin").buffers() end, {desc = "Telescope buffers"})
vim.keymap.set('n', '<leader>fh', function() require("telescope.builtin").help_tags() end, {desc = "Telescope help tags"})
vim.keymap.set('n', '<leader>fb', function() require("telescope.builtin").buffers() end, {desc = "Buffers"})
vim.keymap.set('n', '<leader>fh', function() require("telescope.builtin").help_tags() end, {desc = "Help tags"})
-- LuaFormatter on
end
}

View File

@@ -0,0 +1,63 @@
return {
-- {'doums/darcula', config = function() vim.cmd('colorscheme darcula') end}
-- {
-- "folke/tokyonight.nvim",
-- lazy = false,
-- priority = 1000,
-- opts = {},
-- config = function() vim.cmd('colorscheme tokyonight-moon') end
-- }
-- {
-- 'rose-pine/neovim',
-- config = function()
-- vim.cmd('colorscheme rose-pine-moon')
-- -- LuaFormatter off
-- vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" })
-- vim.api.nvim_set_hl(0, "FloatBorder", { bg = "none", fg = "none" })
-- vim.api.nvim_set_hl(0, "TelescopeNormal", { bg = "none" })
-- vim.api.nvim_set_hl(0, "TelescopeBorder", { bg = "none" })
-- -- LuaFormatter on
-- end
-- }
-- {
-- 'AlexvZyl/nordic.nvim',
-- lazy = false,
-- priority = 1000,
-- init = function()
-- require('nordic').setup {
-- telescope = {
-- style = 'classic'
-- -- style = 'flat'
-- }
-- }
-- require'nordic'.load()
-- end
-- }
-- {
-- "briones-gabriel/darcula-solid.nvim",
-- dependencies = "rktjmp/lush.nvim",
-- config = function()
-- vim.cmd 'colorscheme darcula-solid'
-- vim.cmd 'set termguicolors'
-- end
-- }
{
"ellisonleao/gruvbox.nvim",
priority = 1000,
config = true,
opts = {
contrast = "hard"
},
init = function()
vim.cmd("colorscheme gruvbox")
-- LuaFormatter off
vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" })
vim.api.nvim_set_hl(0, "NoiceCmdlineIcon", { bg = "#1d2021" })
vim.api.nvim_set_hl(0, "NoiceCmdlinePopupBorder", { bg = "#1d2021" })
vim.api.nvim_set_hl(0, "NoiceCmdlinePopupTitle", { bg = "#1d2021" })
-- LuaFormatter on
end
}
}

View File

@@ -0,0 +1,10 @@
return {
"3rd/time-tracker.nvim",
dependencies = {
"3rd/sqlite.nvim"
},
event = "VeryLazy",
opts = {
data_file = vim.fn.stdpath("data") .. "/time-tracker.db"
}
}

View File

@@ -0,0 +1,59 @@
return {
{
"folke/trouble.nvim",
tag="v3.4.1",
dependencies = {
{
"nvim-tree/nvim-web-devicons"
},
{
'folke/lsp-colors.nvim'
},
{
'nvim-telescope/telescope.nvim'
}
},
opts = {
modes = {
symbols = {
win = {
size = 50,
}
}
}
},
cmd = "Trouble",
keys = {
{
"<leader>xw",
"<cmd>Trouble diagnostics toggle<cr>",
desc = "Diagnostics (Trouble)",
},
{
"<leader>xd",
"<cmd>Trouble diagnostics toggle filter.buf=0<cr>",
desc = "Buffer Diagnostics (Trouble)",
},
{
"<leader>xs",
"<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)",
},
},
}
}

View File

@@ -8,6 +8,10 @@ return {
"UndotreeFocus",
"UndotreePersistUndo"
},
init = function() vim.keymap.set("n", "<leader>u", "<cmd>UndotreeToggle<CR>") end
init = function()
vim.keymap.set("n", "<leader>u", "<cmd>UndotreeToggle<CR>", {
desc = "Undotree"
})
end
}
}

View File

@@ -0,0 +1,46 @@
return {
{
"folke/which-key.nvim",
event = "VeryLazy",
init = function()
vim.o.timeout = true
vim.o.timeoutlen = 300
end,
opts = {
defaults = {
["<leader>x"] = {
name = "+Trouble"
}
}
},
config = function()
local wk = require("which-key")
wk.add({
{
"<leader>d",
group = "Debug"
},
{
"<leader>f",
group = "Find"
},
{
"<leader>l",
group = "LSP"
},
{
"<leader>o",
group = "Overseer"
},
{
"<leader>s",
group = "Session"
},
{
"<leader>x",
group = "Trouble"
}
})
end
}
}

View File

@@ -9,7 +9,6 @@ vim.keymap.set("n", "n", "nzzzv")
vim.keymap.set("n", "N", "Nzzzv")
vim.keymap.set("x", "<leader>p", "\"_dP")
vim.keymap.set("n", "<leader>d", "\"_d")
vim.keymap.set("v", "<leader>d", "\"_d")
vim.keymap.set("n", "<leader>y", "\"+y")
@@ -20,10 +19,4 @@ vim.keymap.set("n", "Q", "<nop>")
vim.keymap.set("n", "q:", "<nop>")
vim.cmd [[call nvim_create_user_command('W', 'w', {'nargs': 0})]]
vim.keymap.set("n", "<leader>s", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]])
vim.keymap.set("n", "<leader>cb", [[:up | %bd | e#<CR>]])
-- vim.keymap.set('n', '<leader><C-s>', '<cmd>mksession! .nvim_session<CR>', {})
-- vim.keymap
-- .set('n', '<leader><C-l>', '<cmd>silent! source .nvim_session<CR>', {})
-- vim.keymap.set("n", "<leader>cb", [[:up | %bd | e#<CR>]])

View File

@@ -0,0 +1,57 @@
vim.g.mapleader = " "
vim.opt.nu = true
vim.opt.relativenumber = true
vim.opt.tabstop = 4
vim.opt.softtabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = true
vim.opt.smartindent = true
vim.opt.wrap = false
vim.opt.swapfile = false
vim.opt.backup = false
vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir"
vim.opt.undofile = true
vim.opt.hlsearch = false
vim.opt.incsearch = true
vim.opt.termguicolors = true
vim.opt.scrolloff = 8
vim.opt.signcolumn = "yes"
vim.opt.updatetime = 50
vim.api.nvim_create_autocmd('FileType', {
pattern = 'rust',
callback = function()
vim.cmd [[
let &efm = ''
" Random non issue stuff
let &efm .= '%-G%.%#aborting due to previous error%.%#,'
let &efm .= '%-G%.%#test failed, to rerun pass%.%#,'
" Capture enter directory events for doc tests
let &efm .= '%D%*\sDoc-tests %f%.%#,'
" Doc Tests
let &efm .= '%E---- %f - %o (line %l) stdout ----,'
let &efm .= '%Cerror%m,'
let &efm .= '%-Z%*\s--> %f:%l:%c,'
" Unit tests && `tests/` dir failures
" This pattern has to come _after_ the doc test one
let &efm .= '%E---- %o stdout ----,'
let &efm .= '%Zthread %.%# panicked at %m\, %f:%l:%c,'
let &efm .= '%Cthread %.%# panicked at %m,'
let &efm .= '%+C%*\sleft: %.%#,'
let &efm .= '%+Z%*\sright: %.%#\, %f:%l:%c,'
" Compiler Errors and Warnings
let &efm .= '%Eerror%m,'
let &efm .= '%Wwarning: %m,'
let &efm .= '%-Z%*\s--> %f:%l:%c,'
]]
end
})

69
sway/.config/sway/config Normal file
View File

@@ -0,0 +1,69 @@
set $mod Mod4
set $term kitty
set $menu dmenu_path | wofi --show=run --matching | xargs swaymsg exec --
set $lock swaylock --screenshot --effect-blur 10x10 --effect-vignette 0.5:1 --ring-color 3c3836 --key-hl-color d65e0e -f
output * bg ~/.config/sway/wallpapers/mountains.jpg fill
output eDP-1 scale 1.4
bindswitch --reload --locked lid:on exec $lock
exec sway-audio-idle-inhibit
exec swayidle -w \
timeout 10 $lock \
timeout 20 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
before-sleep $lock
bindsym Control+Mod1+l exec $lock
bindsym Print exec grim -g "$(slurp -d)" - | wl-copy
bindsym $mod+p exec kitty -e /usr/bin/expect -c "spawn python; expect \\"*>>> \\"; send \\"import numpy as np\n\\"; send \\"import sympy as sp\n\\"; interact"
bindsym $mod+Return exec $term
bindsym $mod+Shift+q kill
bindsym $mod+d exec $menu
floating_modifier $mod normal
bindsym $mod+Shift+c reload
bindsym $mod+Shift+e exec i3-msg exit
bar {
swaybar_command waybar
position top
}
bindsym XF86AudioRaiseVolume exec pulsemixer --change-volume +5 --max-volume 100 #increase sound volume
bindsym XF86AudioLowerVolume exec pulsemixer --change-volume -5 --max-volume 100 #decrease sound volume
bindsym Shift+XF86AudioRaiseVolume exec pulsemixer --change-volume +5 --max-volume 300 #increase sound volume
bindsym Shift+XF86AudioLowerVolume exec pulsemixer --change-volume -5 --max-volume 300 #decrease sound volume
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle # mute sound
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioPause exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym XF86MonBrightnessUp exec /bin/sh -c ~/.config/sway/scripts/increase_brightness
bindsym XF86MonBrightnessDown exec /bin/sh -c ~/.config/sway/scripts/decrease_brightness
bindsym $mod+c exec kitty -e python
for_window [title="blueman-manager"] floating enable
for_window [class="^.*"] border pixel 3
default_floating_border none
default_floating_border normal 0
hide_edge_borders smart
gaps inner 15
smart_gaps on
blur enable
blur_radius 8
exec dbus-update-activation-environment DISPLAY
include ~/.config/sway/config.d/*

View File

@@ -0,0 +1,2 @@
exec_always nm-applet &
#exec_always blueman-applet &

View File

@@ -0,0 +1,14 @@
input "type:touchpad" {
tap enabled
natural_scroll enabled
scroll_factor 0.4
dwt disable
accel_profile "adaptive"
pointer_accel 0
}
input type:keyboard {
xkb_layout de(nodeadkeys),gr,de(neo)
xkb_options grp:ctrls_toggle,caps:escape
}

View File

@@ -0,0 +1,73 @@
#
# Window Focus
#
set $left h
set $down j
set $up k
set $right l
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
#
# Window Movement
#
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
#
# Window Size
#
mode "resize" {
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
#
# WM Behavior
#
bindsym $mod+b splith
bindsym $mod+v splitv
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+minus scratchpad show

View File

@@ -0,0 +1,54 @@
set $ws1 "1: Dev"
set $ws2 "2: Firefox"
set $ws3 "3: Management"
set $ws4 "4"
set $ws5 "5: Doc"
set $ws6 "6: 3D-Printing"
set $ws7 "7: Music"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10
assign [class="Spotify"] $ws7
exec i3-msg 'workspace $ws1; exec kitty; $ws1'
exec i3-msg 'workspace $ws2; exec firefox'
#
## Multiple monitors
#
set $this_disp "eDP-1"
set $other_disp "DP-11"
workspace $ws1 output $other_disp $this_disp
workspace $ws2 output $this_disp
workspace $ws3 output $this_disp
workspace $ws4 output $other_disp $this_disp
workspace $ws5 output $this_disp
workspace $ws6 output $this_disp
workspace $ws7 output $this_disp
workspace $ws8 output $this_disp

View File

@@ -0,0 +1,18 @@
#!/bin/sh
export BRIGHTNESS=`brightnessctl g`
if [ $BRIGHTNESS -gt 0 ]; then
brightnessctl set 5%-
else
killall gammastep &> /dev/null
export BRIGHTNESS=`cat /tmp/brightness 2> /dev/null || echo 1`
if [ `echo "$BRIGHTNESS > 0.1" | bc -l` == 1 ]; then
export BRIGHTNESS=`echo "$BRIGHTNESS - 0.1" | bc`
echo $BRIGHTNESS > /tmp/brightness
gammastep -O 6500 -b $BRIGHTNESS:0.1 &
else
gammastep -O 6500 -b 0.1:0.1 &
fi
fi

View File

@@ -0,0 +1,18 @@
#!/bin/sh
export BRIGHTNESS=`brightnessctl g`
if [ $BRIGHTNESS == 0 ]; then
killall gammastep &> /dev/null
export BRIGHTNESS=`cat /tmp/brightness 2> /dev/null || echo 1`
if [ `echo "$BRIGHTNESS < 1.0" | bc -l` == 1 ]; then
export BRIGHTNESS=`echo "$BRIGHTNESS + 0.1" | bc`
echo $BRIGHTNESS > /tmp/brightness
gammastep -O 6500 -b $BRIGHTNESS:0.1 &
else
brightnessctl set 5%
fi
else
brightnessctl set +5%
fi

View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

Before

Width:  |  Height:  |  Size: 514 KiB

After

Width:  |  Height:  |  Size: 514 KiB

View File

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 88 KiB

View File

Before

Width:  |  Height:  |  Size: 3.4 MiB

After

Width:  |  Height:  |  Size: 3.4 MiB

View File

Before

Width:  |  Height:  |  Size: 779 KiB

After

Width:  |  Height:  |  Size: 779 KiB

64
tmux/.tmux.conf Normal file
View File

@@ -0,0 +1,64 @@
set-option -g default-shell /bin/zsh
setw -g mode-keys vi
set -g base-index 1
setw -g pane-base-index 1
set -g focus-events on
set -g status-style bg=default
set -g status-left-length 90
set -g status-right-length 90
set -g status-justify centre
set -s escape-time 0
## COLORSCHEME: gruvbox dark (medium)
set-option -g status "on"
# default statusbar color
set-option -g status-style bg=colour237,fg=colour223 # bg=bg1, fg=fg1
# default window title colors
set-window-option -g window-status-style bg=colour214,fg=colour237 # bg=yellow, fg=bg1
# default window with an activity alert
set-window-option -g window-status-activity-style bg=colour237,fg=colour248 # bg=bg1, fg=fg3
# active window title colors
set-window-option -g window-status-current-style bg=red,fg=colour237 # fg=bg1
# pane border
set-option -g pane-active-border-style fg=colour250 #fg2
set-option -g pane-border-style fg=colour237 #bg1
# message infos
set-option -g message-style bg=colour239,fg=colour223 # bg=bg2, fg=fg1
# writing commands inactive
set-option -g message-command-style bg=colour239,fg=colour223 # bg=fg3, fg=bg1
# pane number display
set-option -g display-panes-active-colour colour250 #fg2
set-option -g display-panes-colour colour237 #bg1
# clock
set-window-option -g clock-mode-colour colour109 #blue
# bell
set-window-option -g window-status-bell-style bg=colour167,fg=colour235 # bg=red, fg=bg
## Theme settings mixed with colors (unfortunately, but there is no cleaner way)
set-option -g status-justify "left"
set-option -g status-left-style none
set-option -g status-left-length "80"
set-option -g status-right-style none
set-option -g status-right-length "80"
set-window-option -g window-status-separator ""
set-option -g status-left "#[bg=colour241,fg=colour248] #S #[bg=colour237,fg=colour241,nobold,noitalics,nounderscore]"
set-option -g status-right "#[bg=colour237,fg=colour239 nobold, nounderscore, noitalics]#[bg=colour239,fg=colour246] %Y-%m-%d  %H:%M #[bg=colour239,fg=colour248,nobold,noitalics,nounderscore]#[bg=colour248,fg=colour237] #h "
set-window-option -g window-status-current-format "#[bg=colour214,fg=colour237,nobold,noitalics,nounderscore]#[bg=colour214,fg=colour239] #I #[bg=colour214,fg=colour239,bold] #W#{?window_zoomed_flag,*Z,} #[bg=colour237,fg=colour214,nobold,noitalics,nounderscore]"
set-window-option -g window-status-format "#[bg=colour239,fg=colour237,noitalics]#[bg=colour239,fg=colour223] #I #[bg=colour239,fg=colour223] #W #[bg=colour237,fg=colour239,noitalics]"
# vim: set ft=tmux tw=0 nowrap:

View File

@@ -0,0 +1,92 @@
{
"layer": "top",
"position": "top",
"modules-left": [
"sway/workspaces",
],
"modules-center": [
"clock#1",
"clock#2",
"custom/clock",
],
"modules-right": [
"pulseaudio",
"memory",
"cpu",
"battery",
"disk",
"sway/language",
"tray"
],
"sway/workspaces": {
"disable-scroll": true,
"format": "{name}"
},
"sway/language": {
"format": "{short} {variant} ",
},
"clock#1": {
"format": "{:%a}",
"tooltip": false
},
"clock#2": {
"format": "{:%d-%m-%Y}",
"tooltip": false
},
"custom/clock": {
"exec": "date +\"%H:%M\"",
"interval": 10,
"tooltip": false
},
"pulseaudio": {
"format": "{icon} {volume:2}%",
"format-bluetooth": "{icon} {volume}%",
"format-muted": "MUTE",
"format-icons": {
"headphones": "",
"default": [
"",
""
]
},
"scroll-step": 5,
"on-click": "pamixer -t",
"on-click-right": "pavucontrol"
},
"memory": {
"interval": 5,
"format": "Mem {}%"
},
"cpu": {
"interval": 5,
"format": "CPU {usage:2}%"
},
"battery": {
"states": {
"good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}%",
"format-icons": [
"",
"",
"",
"",
""
]
},
"disk": {
"interval": 5,
"format": "Disk {percentage_used:2}%",
"path": "/"
},
"tray": {
"icon-size": 20
}
}

View File

@@ -0,0 +1,73 @@
* {
/* font-size: 10px;
font-family: monospace; */
}
window#waybar {
background: #282828;
color: #ebdbb2;
}
#custom-right-arrow-dark,
#custom-left-arrow-dark {
color: #1a1a1a;
}
#custom-right-arrow-light,
#custom-left-arrow-light {
color: #292b2e;
background: #1a1a1a;
}
#workspaces,
#clock.1,
#clock.2,
#clock.3,
#pulseaudio,
#memory,
#cpu,
#battery,
#disk,
#tray {
}
#workspaces button {
padding: 0 2px;
color: #ebdbb2;
}
#workspaces button.focused {
color: #fe8019;
}
#workspaces button:hover {
box-shadow: inherit;
text-shadow: inherit;
}
#workspaces button:hover {
background: #1a1a1a;
border: #1a1a1a;
padding: 0 3px;
}
#pulseaudio {
color: #d3869b;
}
#memory {
color: #83a598;
}
#cpu {
color: #fe8019;
}
#battery {
color: #8ec07c;
}
#disk {
color: #a89984;
}
#clock,
#pulseaudio,
#memory,
#cpu,
#battery,
#disk {
padding: 0 10px;
}

View File

@@ -0,0 +1,39 @@
window {
margin: 0px;
border: 1px solid #928374;
background-color: #282828;
}
#input {
margin: 5px;
border: none;
color: #ebdbb2;
background-color: #1d2021;
}
#inner-box {
margin: 5px;
border: none;
background-color: #282828;
}
#outer-box {
margin: 5px;
border: none;
background-color: #282828;
}
#scroll {
margin: 0px;
border: none;
}
#text {
margin: 5px;
border: none;
color: #ebdbb2;
}
#entry:selected {
background-color: #1d2021;
}

54
zsh/.zshrc Normal file
View File

@@ -0,0 +1,54 @@
# Lines configured by zsh-newuser-install
HISTFILE=~/.histfile
HISTSIZE=5000
SAVEHIST=5000
setopt hist_ignore_all_dups
setopt extendedglob
unsetopt beep
setopt interactivecomments
bindkey -v
# End of lines configured by zsh-newuser-install
# The following lines were added by compinstall
zstyle :compinstall filename '/home/andreas/.zshrc'
autoload -Uz compinit
compinit
# End of lines added by compinstall
bindkey -v '^?' backward-delete-char
autoload -Uz vcs_info
precmd() { vcs_info }
zstyle ':vcs_info:git:*' formats '%b '
setopt PROMPT_SUBST
PROMPT='%F{magenta}[%m] %F{blue}%~%f %F{red}${vcs_info_msg_0_}%f$ '
source /usr/share/doc/fzf/examples/key-bindings.zsh
alias ssh='kitty +kitten ssh'
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias ll='ls -l'
alias la='ls -la'
alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
export PATH=$PATH:/home/andreas/.local/bin
export EDITOR=nvim
alias get-idf='. $HOME/ext_sw/esp-idf/export.sh'
alias c='cd ~/.dotfiles'
alias sc='cd ~/.config/sway'
alias nc='cd ~/.config/nvim'
alias flog='nvim -c "Flog -all"'
# . "$HOME/.cargo/env"
#
# eval "$(zoxide init zsh)"
# eval "$(thefuck --alias)"
. "$HOME/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh"
bindkey '^y' autosuggest-accept