Compare commits

...

19 Commits

Author SHA1 Message Date
77d3404812 Merge branch 'master' into macbook 2025-10-14 14:41:45 +05:00
be35b62a87 adjust lsp plugins load order 2025-10-14 14:41:17 +05:00
a598dcd1fc Merge branch 'master' of git.woopwoopserver.com:woopwoop/dotfiles into macbook 2025-10-14 13:58:05 +05:00
95d80c31d5 remove gopls 2025-10-14 13:41:00 +05:00
51515037b3 revert test for mobile devices 2025-10-12 10:33:04 +05:00
0a6a42e0b7 try to fix mobile youtube 2025-10-12 10:31:08 +05:00
1820a8eff5 remove gaps from swaybar 2025-09-14 23:06:09 +05:00
e43d39b957 disable status bar for sway 2025-09-07 03:24:37 +05:00
f83ad4c21e remove background color for tmux command line 2025-08-29 22:25:33 +05:00
0659773daf changed swaybar font 2025-08-29 14:20:41 +05:00
6f574b81e0 initialized separate macbook branch with macbook-specific settings 2025-08-29 01:23:15 +05:00
88f0c9b0b9 switch to hack nerd font mono 2025-08-28 16:26:25 +05:00
153d829677 bigger font and switched to hack nerd font 2025-08-28 16:17:56 +05:00
d0ccffc8d0 better binding for lyrics menu 2025-08-25 02:14:11 +05:00
78a32b5616 attempt at more predictable autosuggestions for shell commands 2025-08-25 02:12:45 +05:00
0ab0236ba2 remove status bar colortheme plugin, make YOUR OWN!!!\ 2025-08-25 02:12:16 +05:00
61df95387e added close window shortcut to mimic linux config 2025-08-22 01:09:49 +05:00
002092af34 deleted skhd and yabai 2025-08-22 00:58:45 +05:00
452fa88d70 added aerospace config for simple macos twm 2025-08-22 00:58:18 +05:00
12 changed files with 139 additions and 146 deletions

View File

@ -0,0 +1,76 @@
# i3 doesn't have "normalizations" feature that why we disable them here.
# But the feature is very helpful.
# Normalizations eliminate all sorts of weird tree configurations that don't make sense.
# Give normalizations a chance and enable them back.
enable-normalization-flatten-containers = true
enable-normalization-opposite-orientation-for-nested-containers = true
automatically-unhide-macos-hidden-apps = true
# Mouse follows focus when focused monitor changes
on-focused-monitor-changed = ['move-mouse monitor-lazy-center']
start-at-login = true
[gaps]
inner.horizontal = 10
inner.vertical = 10
outer.left = 5
outer.bottom = 5
outer.top = 5
outer.right = 5
[mode.main.binding]
alt-enter = 'exec-and-forget alacritty msg create-window || alacritty'
alt-b = 'exec-and-forget /Applications/LibreWolf.app/Contents/MacOS/librewolf'
# i3 wraps focus by default
alt-h = 'focus left'
alt-j = 'focus down'
alt-k = 'focus up'
alt-l = 'focus right'
# alt-shift-j = 'move left'
# alt-shift-k = 'move down'
# alt-shift-l = 'move up'
# alt-shift-semicolon = 'move right'
# Consider using 'join-with' command as a 'split' replacement if you want to enable
# normalizations
# alt-h = 'split horizontal'
# alt-v = 'split vertical'
alt-f = 'fullscreen'
alt-shift-q = 'exec-and-forget current_workspace="$(aerospace list-workspaces --focused)"; aerospace close; aerospace workspace "$current_workspace"'
alt-shift-space = 'layout floating tiling' # 'floating toggle' in i3
alt-1 = 'workspace 1'
alt-2 = 'workspace 2'
alt-3 = 'workspace 3'
alt-4 = 'workspace 4'
alt-5 = 'workspace 5'
alt-6 = 'workspace 6'
alt-7 = 'workspace 7'
alt-8 = 'workspace 8'
alt-9 = 'workspace 9'
alt-0 = 'workspace 10'
alt-shift-1 = 'move-node-to-workspace 1'
alt-shift-2 = 'move-node-to-workspace 2'
alt-shift-3 = 'move-node-to-workspace 3'
alt-shift-4 = 'move-node-to-workspace 4'
alt-shift-5 = 'move-node-to-workspace 5'
alt-shift-6 = 'move-node-to-workspace 6'
alt-shift-7 = 'move-node-to-workspace 7'
alt-shift-8 = 'move-node-to-workspace 8'
alt-shift-9 = 'move-node-to-workspace 9'
alt-shift-0 = 'move-node-to-workspace 10'
alt-shift-r = 'reload-config'
alt-y = 'resize width -50'
alt-o = 'resize width +50'

View File

@ -2,22 +2,22 @@
TERM = "xterm-256color" TERM = "xterm-256color"
[font] [font]
size = 12.0 size = 14
[font.normal] [font.normal]
family = "Input Nerd Font" family = "Hack Nerd Font Mono"
style = "Regular" style = "Regular"
[font.bold] [font.bold]
family = "Input Nerd Font" family = "Hack Nerd Font Mono"
style = "Bold" style = "Bold"
[font.bold_italic] [font.bold_italic]
family = "Input Nerd Font" family = "Hack Nerd Font Mono"
style = "Bold Italic" style = "Bold Italic"
[font.italic] [font.italic]
family = "Input Nerd Font" family = "Hack Nerd Font Mono"
style = "Italic" style = "Italic"
[font.offset] [font.offset]

View File

@ -10,4 +10,5 @@ def_key "l"
enter_directory enter_directory
def_key "h" def_key "h"
jump_to_parent_directory jump_to_parent_directory
def_key "4"
show_lyrics

View File

@ -4,16 +4,7 @@ return {
config = true config = true
}, },
{ {
"williamboman/mason-lspconfig.nvim", "mason-org/mason-lspconfig.nvim",
},
{
"neovim/nvim-lspconfig",
event = "BufReadPre BufNewFile",
dependencies = {
"williamboman/mason.nvim",
"williamboman/mason-lspconfig.nvim",
"nvimtools/none-ls.nvim",
},
config = function() config = function()
require("user.plugins.lsp.mason_lsp_config") require("user.plugins.lsp.mason_lsp_config")
require("user.plugins.lsp.diagnostics_config").setup() require("user.plugins.lsp.diagnostics_config").setup()
@ -33,16 +24,22 @@ return {
vim.cmd([[ command! Format execute 'lua vim.lsp.buf.format{async=true}' ]]) vim.cmd([[ command! Format execute 'lua vim.lsp.buf.format{async=true}' ]])
end, end,
dependencies = {
{ "mason-org/mason.nvim", opts = {} },
"neovim/nvim-lspconfig",
},
},
{
"neovim/nvim-lspconfig",
event = "BufReadPre BufNewFile",
dependencies = {
"nvimtools/none-ls.nvim",
},
}, },
{ {
"lukas-reineke/lsp-format.nvim", "lukas-reineke/lsp-format.nvim",
event = "VeryLazy", event = "VeryLazy",
config = function() config = function()
local on_attach = function(client)
require("lsp-format").on_attach(client)
end
require("lspconfig").gopls.setup { on_attach = on_attach }
end end
}, },
{ {

View File

@ -4,6 +4,8 @@ vim.lsp.enable({
"omnisharp", "omnisharp",
"pylsp", "pylsp",
"rust_analyzer", "rust_analyzer",
"luals",
"vimls"
}) })
-- TODO: this does not work, need to install pylsp-mypy plugin manually -- TODO: this does not work, need to install pylsp-mypy plugin manually
@ -45,4 +47,20 @@ vim.lsp.config('rust_analyzer', {
} }
}) })
vim.lsp.config('luals', {
settings = {
Lua = {}
}
})
vim.lsp.config('rust_analyzer', {
settings = {
["rust-analyzer"] = {
cargo = {
features = "all",
},
},
}
})
mason_lspconfig.setup() mason_lspconfig.setup()

View File

@ -1,67 +0,0 @@
alt - return : alacritty msg create-window || open -n -a 'Alacritty.app'
alt - b : /Applications/LibreWolf.app/Contents/MacOS/librewolf
# Navigation
alt - h : yabai -m window --focus west
alt - j : yabai -m window --focus south
alt - k : yabai -m window --focus north
alt - l : yabai -m window --focus east
#kill Yabai
shift + alt - c : brew services stop yabai
#start Yabai
alt - c : brew services start yabai
# Moving windows
shift + alt - h : yabai -m window --warp west
shift + alt - j : yabai -m window --warp south
shift + alt - k : yabai -m window --warp north
shift + alt - l : yabai -m window --warp east
#resize windows
alt - y : yabai -m window --resize left:-50:0; \
yabai -m window --resize right:-50:0
alt - u : yabai -m window --resize bottom:0:50; \
yabai -m window --resize top:0:50
alt - i : yabai -m window --resize top:0:-50; \
yabai -m window --resize bottom:0:-50
alt - o : yabai -m window --resize right:50:0; \
yabai -m window --resize left:50:0
# Make window native fullscreen
alt - f : yabai -m window --toggle zoom-fullscreen
shift + alt - f : yabai -m window --toggle native-fullscreen
# Float / Unfloat window
shift + alt - space : \
yabai -m window --toggle float; \
yabai -m window --toggle border
shift + alt - r : \
/usr/bin/env osascript <<< \
"display notification \"Restarting Yabai\" with title \"Yabai\""; \
launchctl kickstart -k "gui/${UID}/homebrew.mxcl.yabai"
shift + alt - 1 : yabai -m window --space 1;
shift + alt - 2 : yabai -m window --space 2;
shift + alt - 3 : yabai -m window --space 3;
shift + alt - 4 : yabai -m window --space 4;
shift + alt - 5 : yabai -m window --space 5;
shift + alt - 6 : yabai -m window --space 6;
shift + alt - 7 : yabai -m window --space 7;
alt - 1 : yabai -m space --focus 1;
alt - 2 : yabai -m space --focus 2;
alt - 3 : yabai -m space --focus 3;
alt - 4 : yabai -m space --focus 4;
alt - 5 : yabai -m space --focus 5;
alt - 6 : yabai -m space --focus 6;
alt - 7 : yabai -m space --focus 7;
play : mpc toggle;
rewind : mpc prev;
fast : mpc next;
alt - 0x2C : mpc volume -10;
alt - 0x1C : mpc volume +10;

View File

@ -28,10 +28,11 @@ exec xrandr --output DP-2 --primary
bar { bar {
id 1 id 1
mode hide
tray_output none tray_output none
font Input Nerd Font 9 font Hack Nerd Font 9
status_command "~/Scripts/sway/bar.sh" status_command "~/Scripts/sway/bar.sh"
gaps 0 6 0 0 gaps 0 0 0 0
colors { colors {
# focused_workspace #7E9CD8 #7E9CD8 #AAAAAA # focused_workspace #7E9CD8 #7E9CD8 #AAAAAA
} }
@ -76,6 +77,9 @@ bindsym --to-code $mod+m exec $term msg create-window --class in_scratchpad -e n
bindsym --to-code $mod+e exec $term msg create-window -e neomutt || $term -e neomutt bindsym --to-code $mod+e exec $term msg create-window -e neomutt || $term -e neomutt
bindsym --to-code $mod+n exec $term msg create-window -e newsboat || $term -e newsboat bindsym --to-code $mod+n exec $term msg create-window -e newsboat || $term -e newsboat
# toggle showing bar
bindsym --to-code $mod+minus exec "swaymsg bar 1 mode toggle"
# open windows with id "in_scratchpad" in scratchpad # open windows with id "in_scratchpad" in scratchpad
for_window [app_id="in_scratchpad"] move container to scratchpad, focus for_window [app_id="in_scratchpad"] move container to scratchpad, focus

View File

@ -43,7 +43,6 @@ set -g @tpm_plugins ' \
tmux-plugins/tmux-sensible \ tmux-plugins/tmux-sensible \
tmux-plugins/tmux-resurrect \ tmux-plugins/tmux-resurrect \
tmux-plugins/tmux-yank \ tmux-plugins/tmux-yank \
Nybkox/tmux-kanagawa \
tmux-plugins/tmux-continuum \ tmux-plugins/tmux-continuum \
' '
@ -52,14 +51,20 @@ set -g @continuum-save-interval '30'
set -g @resurrect-processes 'false' set -g @resurrect-processes 'false'
set -g @kanagawa-ignore-window-colors true # border colours
set -g pane-border-style "fg=#282728"
set -g pane-active-border-style "fg=#938AA9"
set -g @kanagawa-plugins " " # status bar
set -g @kanagawa-show-battery false set-option -g status-style bg=default
set -g @kanagawa-day-month true set -g message-command-style bg=default
set -g @kanagawa-show-timezone false set -g message-style bg=default
set -g @kanagawa-time-format "%R" set -g status-left '| #S | '
set -g status-right ''
set -g status-left-length 500
set -g window-status-format "#I:#W "
set -g window-status-current-format "#[fg=red]#I#[fg=default]:#W* "
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.config/tmux/plugins/tpm/tpm' run '~/.config/tmux/plugins/tpm/tpm'

View File

@ -1,3 +0,0 @@
#!/bin/bash
echo "$(whoami) ALL=(root) NOPASSWD: sha256:$(shasum -a 256 $(which yabai) | cut -d " " -f 1) $(which yabai) --load-sa" | sudo tee /private/etc/sudoers.d/yabai

View File

@ -1,45 +0,0 @@
yabai -m signal --add event=dock_did_restart action="sudo yabai --load-sa"
sudo yabai --load-sa
yabai -m config layout bsp
yabai -m config window_placement second_child
yabai -m config window_topmost on
yabai -m config focus_follows_mouse autoraise
yabai -m config window_opacity on
yabai -m config active_window_opacity 0.95
yabai -m config normal_window_opacity 0.85
yabai -m config window_gap 10
yabai -m config top_padding 10
yabai -m config right_padding 10
yabai -m config left_padding 10
yabai -m config bottom_padding 10
yabai -m config window_border off
yabai -m config window_opacity off
yabai -m config window_shadow off
yabai -m rule --add label="Finder" app="^Finder$" title="(Co(py|nnect)|Move|Info|Pref)" manage=off
yabai -m rule --add label="macfeh" app="^macfeh$" manage=off
yabai -m rule --add label="System Preferences" app="^System Preferences$" title=".*" manage=off
yabai -m rule --add label="App Store" app="^App Store$" manage=off
yabai -m rule --add label="Activity Monitor" app="^Activity Monitor$" manage=off
yabai -m rule --add label="KeePassXC" app="^KeePassXC$" manage=off
yabai -m rule --add label="Calculator" app="^Calculator$" manage=off
yabai -m rule --add label="Dictionary" app="^Dictionary$" manage=off
yabai -m rule --add label="mpv" app="^mpv$" manage=off
yabai -m rule --add label="Software Update" title="Software Update" manage=off
yabai -m rule --add label="About This Mac" app="System Information" title="About This Mac" manage=off
yabai -m signal --add event=application_front_switched action="${ubersicht_spaces_refresh_command}"
yabai -m signal --add event=display_changed action="${ubersicht_spaces_refresh_command}"
yabai -m signal --add event=space_changed action="${ubersicht_spaces_refresh_command}"
yabai -m signal --add event=window_created action="${ubersicht_spaces_refresh_command}"
yabai -m signal --add event=window_destroyed action="${ubersicht_spaces_refresh_command}"
yabai -m signal --add event=window_focused action="${ubersicht_spaces_refresh_command}"
yabai -m signal --add event=window_title_changed action="${ubersicht_spaces_refresh_command}"

View File

@ -5,6 +5,13 @@ export SUDO_EDITOR=/usr/bin/nvim
export XDG_CURRENT_DESKTOP=Sway export XDG_CURRENT_DESKTOP=Sway
export HOMEBREW_NO_AUTO_UPDATE=true export HOMEBREW_NO_AUTO_UPDATE=true
export ELECTRON_OZONE_PLATFORM_HINT=auto export ELECTRON_OZONE_PLATFORM_HINT=auto
# Created by `pipx` on 2024-10-08 14:33:09
export PATH="$PATH:/Users/nikitabykov/.local/bin"
# >>> coursier install directory >>>
export PATH="$PATH:/Users/nikitabykov/Library/Application Support/Coursier/bin"
# <<< coursier install directory <<<
eval "$(/opt/homebrew/bin/brew shellenv)"
if [[ -z $DISPLAY && $TTY = /dev/tty1 ]]; then if [[ -z $DISPLAY && $TTY = /dev/tty1 ]]; then
exec sway exec sway

2
.zshrc
View File

@ -48,7 +48,7 @@ source "$HOME/.local/share/zinit/zinit.git/zinit.zsh"
autoload -Uz _zinit autoload -Uz _zinit
(( ${+_comps} )) && _comps[zinit]=_zinit (( ${+_comps} )) && _comps[zinit]=_zinit
ZSH_AUTOSUGGEST_STRATEGY=(match_prev_cmd completion) ZSH_AUTOSUGGEST_STRATEGY=(history completion)
# Load a few important annexes, without Turbo # Load a few important annexes, without Turbo
# (this is currently required for annexes) # (this is currently required for annexes)