Compare commits
19 Commits
c36d9b3464
...
macbook
| Author | SHA1 | Date | |
|---|---|---|---|
| 77d3404812 | |||
| be35b62a87 | |||
| a598dcd1fc | |||
| 95d80c31d5 | |||
| 51515037b3 | |||
| 0a6a42e0b7 | |||
| 1820a8eff5 | |||
| e43d39b957 | |||
| f83ad4c21e | |||
| 0659773daf | |||
| 6f574b81e0 | |||
| 88f0c9b0b9 | |||
| 153d829677 | |||
| d0ccffc8d0 | |||
| 78a32b5616 | |||
| 0ab0236ba2 | |||
| 61df95387e | |||
| 002092af34 | |||
| 452fa88d70 |
76
.config/aerospace/aerospace.toml
Normal file
76
.config/aerospace/aerospace.toml
Normal 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'
|
||||||
@ -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]
|
||||||
|
|||||||
@ -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
|
||||||
|
|||||||
@ -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
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@ -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()
|
||||||
|
|||||||
@ -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;
|
|
||||||
@ -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
|
||||||
|
|
||||||
|
|||||||
@ -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'
|
||||||
|
|||||||
@ -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
|
|
||||||
@ -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}"
|
|
||||||
|
|
||||||
@ -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
2
.zshrc
@ -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)
|
||||||
|
|||||||
Reference in New Issue
Block a user