+1
nvim/.config/nvim/init.lua
+1
nvim/.config/nvim/init.lua
+26
-22
nvim/.config/nvim/lazy-lock.json
+26
-22
nvim/.config/nvim/lazy-lock.json
···
1
1
{
2
-
"LuaSnip": { "branch": "master", "commit": "d474d67848006fc3fea201c77d408e1ed25123f0" },
3
-
"NvChad": { "branch": "v2.5", "commit": "d5ea76925fd5750e5e1ea265d371197a6a393399" },
2
+
"LuaSnip": { "branch": "master", "commit": "de10d8414235b0a8cabfeba60d07c24304e71f5c" },
3
+
"NvChad": { "branch": "v2.5", "commit": "29ebe31ea6a4edf351968c76a93285e6e108ea08" },
4
4
"Vim-Jinja2-Syntax": { "branch": "master", "commit": "2c17843b074b06a835f88587e1023ceff7e2c7d1" },
5
-
"base46": { "branch": "v3.0", "commit": "80358ecdb5779b199130ed03031c34c0c2bca3fc" },
5
+
"base46": { "branch": "v3.0", "commit": "13a8a258da6ca87ce46014084063d5b846afd3bc" },
6
+
"cmp-async-path": { "branch": "main", "commit": "0ed1492f59e730c366d261a5ad822fa37e44c325" },
6
7
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
7
-
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
8
+
"cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
8
9
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
9
-
"cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" },
10
10
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
11
-
"conform.nvim": { "branch": "master", "commit": "372fc521f8421b7830ea6db4d6ea3bae1c77548c" },
12
-
"crates.nvim": { "branch": "main", "commit": "2c8f4fab02e3e9ea42c6ad9b547e4207a914a397" },
11
+
"conform.nvim": { "branch": "master", "commit": "973f3cb73887d510321653044791d7937c7ec0fa" },
12
+
"crates.nvim": { "branch": "main", "commit": "a49df0f70171adc77704eac70dd2c0d179065933" },
13
13
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
14
-
"gitsigns.nvim": { "branch": "main", "commit": "056d5ea359efe35c4e25e2ebcc255117ac86500d" },
14
+
"gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" },
15
+
"glslView-nvim": { "branch": "master", "commit": "2ad41cef51e658a0de1685728a950dd8c13788fd" },
15
16
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
16
17
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
17
-
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" },
18
-
"menu": { "branch": "main", "commit": "8adb036ec34c679050913864cbc98cc64eb91f6c" },
19
-
"mini.icons": { "branch": "main", "commit": "397ed3807e96b59709ef3292f0a3e253d5c1dc0a" },
18
+
"mason.nvim": { "branch": "main", "commit": "7dc4facca9702f95353d5a1f87daf23d78e31c2a" },
19
+
"menu": { "branch": "main", "commit": "7a0a4a2896b715c066cfbe320bdc048091874cc6" },
20
+
"mini.icons": { "branch": "main", "commit": "b8f6fa6f5a3fd0c56936252edcd691184e5aac0c" },
20
21
"minty": { "branch": "main", "commit": "aafc9e8e0afe6bf57580858a2849578d8d8db9e0" },
21
-
"nvim-autopairs": { "branch": "master", "commit": "4d74e75913832866aa7de35e4202463ddf6efd1b" },
22
+
"nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" },
22
23
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
23
-
"nvim-dap": { "branch": "master", "commit": "8df427aeba0a06c6577dc3ab82de3076964e3b8d" },
24
-
"nvim-lspconfig": { "branch": "master", "commit": "4bc481b6f0c0cf3671fc894debd0e00347089a4e" },
25
-
"nvim-tree.lua": { "branch": "master", "commit": "ea5097a1e2702b4827cb7380e7fa0bd6da87699c" },
26
-
"nvim-treesitter": { "branch": "master", "commit": "94ea4f436d2b59c80f02e293466c374584f03b8c" },
27
-
"nvim-web-devicons": { "branch": "master", "commit": "2c2b4eafce6cdd0cb165036faa17396eff18f847" },
28
-
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
29
-
"render-markdown.nvim": { "branch": "main", "commit": "fa92c30f59afa980708e110824ff0933bc0954e5" },
24
+
"nvim-dap": { "branch": "master", "commit": "a479e25ed5b5d331fb46ee4b9e160ff02ac64310" },
25
+
"nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" },
26
+
"nvim-lspconfig": { "branch": "master", "commit": "3d66048f40ace2d8b8f0789f4346d4fc0a6de15f" },
27
+
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
28
+
"nvim-tree.lua": { "branch": "master", "commit": "f0e9951778802526b14c934f7bf746e1e0ae5ed0" },
29
+
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
30
+
"nvim-web-devicons": { "branch": "master", "commit": "c2599a81ecabaae07c49ff9b45dcd032a8d90f1a" },
31
+
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
32
+
"render-markdown.nvim": { "branch": "main", "commit": "ca86b5941a56b04ac140837ee7a366cf3fa5cd88" },
30
33
"rustaceanvim": { "branch": "master", "commit": "e9c5aaba16fead831379d5f44617547a90b913c7" },
31
-
"telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" },
34
+
"telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
32
35
"tmux.nvim": { "branch": "main", "commit": "2c1c3be0ef287073cef963f2aefa31a15c8b9cd8" },
33
-
"ui": { "branch": "v3.0", "commit": "4466c87073c811c22b14215ba8a0cfc7d1b8b688" },
36
+
"ui": { "branch": "v3.0", "commit": "af4407decaf6528cb21a7b0fd8925664c8e573c0" },
34
37
"vim-slint": { "branch": "main", "commit": "9badce3860297562bb5e80ba1666628f9e0ac632" },
35
-
"volt": { "branch": "main", "commit": "c45d5f48da8e802e608b5c6da471ca4d84276dfb" },
38
+
"volt": { "branch": "main", "commit": "7b8c5e790120d9f08c8487dcb80692db6d2087a1" },
36
39
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" },
40
+
"yuck.vim": { "branch": "master", "commit": "9b5e0370f70cc30383e1dabd6c215475915fe5c3" },
37
41
"zola.nvim": { "branch": "main", "commit": "0319c188e443ecae90819cf013d46ff9bf387def" }
38
42
}
+1
-1
nvim/.config/nvim/lua/chadrc.lua
+1
-1
nvim/.config/nvim/lua/chadrc.lua
+16
nvim/.config/nvim/lua/configs/dap_ui.lua
+16
nvim/.config/nvim/lua/configs/dap_ui.lua
···
1
+
local dapui = require "dapui"
2
+
dapui.setup()
3
+
4
+
dap.listeners.before.attach.dapui_config = function()
5
+
dapui.open()
6
+
end
7
+
dap.listeners.before.launch.dapui_config = function()
8
+
dapui.open()
9
+
end
10
+
dap.listeners.before.event_terminated.dapui_config = function()
11
+
dapui.close()
12
+
end
13
+
dap.listeners.before.event_exited.dapui_config = function()
14
+
dapui.close()
15
+
end
16
+
+29
-35
nvim/.config/nvim/lua/configs/lspconfig.lua
+29
-35
nvim/.config/nvim/lua/configs/lspconfig.lua
···
1
-
local configs = require "nvchad.configs.lspconfig"
1
+
require("nvchad.configs.lspconfig").defaults()
2
2
3
3
local servers = {
4
-
html = {
5
-
filetypes = { "html", "htmldjango", "superhtml" }
6
-
},
7
-
cssls = {},
8
-
somesass_ls = {
9
-
root_dir = function(...)
10
-
return require("lspconfig.util").root_pattern ".git"(...)
11
-
end,
12
-
init_options = {
13
-
workspace = root_dir,
14
-
},
15
-
},
16
-
bashls = {},
17
-
clangd = {},
4
+
"html",
5
+
"cssls",
6
+
"somesass_ls",
7
+
"bashls",
8
+
"clangd",
9
+
"slint_lsp",
10
+
"pyright",
11
+
"glsl_analyzer",
12
+
}
13
+
vim.lsp.enable(servers)
18
14
19
-
slint_lsp = {},
15
+
vim.lsp.config('html', {
16
+
filetypes = { "html", "htmldjango", "superhtml" }
17
+
})
18
+
vim.lsp.config('somesass_ls', {
19
+
root_dir = function(...)
20
+
return require("lspconfig.util").root_pattern ".git"(...)
21
+
end,
22
+
init_options = {
23
+
workspace = root_dir,
24
+
},
25
+
})
20
26
21
-
pyright = {
22
-
settings = {
23
-
python = {
24
-
analysis = {
25
-
autoSearchPaths = true,
26
-
typeCheckingMode = "basic",
27
-
},
27
+
vim.lsp.config('pyright', {
28
+
settings = {
29
+
python = {
30
+
analysis = {
31
+
autoSearchPaths = true,
32
+
typeCheckingMode = "basic",
28
33
},
29
34
},
30
35
},
31
-
32
-
asm_lsp = {},
33
-
rnix = {},
34
-
}
35
-
36
-
for name, opts in pairs(servers) do
37
-
opts.on_init = configs.on_init
38
-
opts.on_attach = configs.on_attach
39
-
opts.capabilities = configs.capabilities
40
-
41
-
require("lspconfig")[name].setup(opts)
42
-
end
36
+
})
+29
-14
nvim/.config/nvim/lua/mappings.lua
+29
-14
nvim/.config/nvim/lua/mappings.lua
···
3
3
-- add yours here
4
4
5
5
local map = vim.keymap.set
6
-
local tmux = require("tmux")
7
-
local dap = require("dap")
6
+
local tmux = require "tmux"
7
+
local dap = require "dap"
8
8
9
9
map("n", ";", ":", { desc = "CMD enter command mode" })
10
10
map("i", "jk", "<ESC>")
···
12
12
vim.lsp.buf.rename()
13
13
end, { desc = "Rename the symbol at cursor" })
14
14
15
-
16
15
-- tmux navigation
17
-
map("n", "<C-h>", function() tmux.move_left() end)
18
-
map("n", "<C-j>", function() tmux.move_bottom() end)
19
-
map("n", "<C-k>", function() tmux.move_top() end)
20
-
map("n", "<C-l>", function() tmux.move_right() end)
21
-
22
-
-- map({ "n", "i", "v" }, "<C-s>", "<cmd> w <cr>")
16
+
map("n", "<C-h>", function()
17
+
tmux.move_left()
18
+
end)
19
+
map("n", "<C-j>", function()
20
+
tmux.move_bottom()
21
+
end)
22
+
map("n", "<C-k>", function()
23
+
tmux.move_top()
24
+
end)
25
+
map("n", "<C-l>", function()
26
+
tmux.move_right()
27
+
end)
23
28
24
29
-- DAP
25
-
map("n", "<leader>dba", function() dap.toggle_breakpoint() end, { desc = "Toggle breakpoint" })
26
-
map("n", "<leader>dbc", function() dap.continue() end, { desc = "Continue debugging" })
27
-
map("n", "<leader>dbso", function() dap.step_over() end, { desc = "Step over" })
28
-
map("n", "<leader>dbsi", function() dap.step_into() end, { desc = "Step into" })
29
-
30
+
map("n", "<leader>dba", function()
31
+
dap.toggle_breakpoint()
32
+
end, { desc = "Toggle breakpoint" })
33
+
map("n", "<leader>dbc", function()
34
+
dap.continue()
35
+
end, { desc = "Continue debugging" })
36
+
map("n", "<leader>dbso", function()
37
+
dap.step_over()
38
+
end, { desc = "Step over" })
39
+
map("n", "<leader>dbsi", function()
40
+
dap.step_into()
41
+
end, { desc = "Step into" })
42
+
map("n", "<leader>dbsO", function()
43
+
dap.step_out()
44
+
end, { desc = "Step out" })
+6
nvim/.config/nvim/lua/options.lua
+6
nvim/.config/nvim/lua/options.lua
+10
nvim/.config/nvim/lua/plugins/dap.lua
+10
nvim/.config/nvim/lua/plugins/dap.lua
+6
nvim/.config/nvim/lua/plugins/glsl.lua
+6
nvim/.config/nvim/lua/plugins/glsl.lua
+8
nvim/.config/nvim/lua/plugins/init.lua
+8
nvim/.config/nvim/lua/plugins/init.lua
···
11
11
config = function()
12
12
require "configs.lspconfig"
13
13
end,
14
+
init_options = {
15
+
userLanguages = {
16
+
eelixir = "html-eex",
17
+
eruby = "erb",
18
+
rust = "html"
19
+
}
20
+
}
14
21
},
15
22
16
23
{
···
42
49
"cpp",
43
50
"python",
44
51
"slint",
52
+
"yuck",
45
53
},
46
54
},
47
55
},
+3
nvim/.config/nvim/lua/preferences.lua
+3
nvim/.config/nvim/lua/preferences.lua
+69
tmux/.tmux.conf
+69
tmux/.tmux.conf
···
1
+
# custom options
2
+
set -g default-terminal "tmux-256color"
3
+
4
+
## enable clipboard
5
+
set -g set-clipboard on
6
+
setw -g mode-keys vi
7
+
8
+
## splitting
9
+
unbind %
10
+
unbind '"'
11
+
12
+
bind v split-window -h -c "#{pane_current_path}"
13
+
bind h split-window -v -c "#{pane_current_path}"
14
+
15
+
## reloading
16
+
unbind r
17
+
bind r source-file ~/.tmux.conf \; display "Reloaded ~/.tmux.conf"
18
+
19
+
## status bar options
20
+
set-option -g status-position top
21
+
22
+
set -g @catppuccin_window_status_style "rounded"
23
+
24
+
set -g status-right-length 100
25
+
set -g status-left-length 100
26
+
set -g status-left ""
27
+
set -g status-right "#{E:@catppuccin_status_application}"
28
+
set -agF status-right "#{E:@catppuccin_status_cpu}"
29
+
set -ag status-right "#{E:@catppuccin_status_session}"
30
+
set -ag status-right "#{E:@catppuccin_status_uptime}"
31
+
32
+
# zsh
33
+
set-option -g default-shell /usr/bin/zsh
34
+
35
+
# window enumeration
36
+
set -g base-index 1
37
+
setw -g pane-base-index 1
38
+
39
+
# plugins
40
+
set -g @plugin 'tmux-plugins/tpm'
41
+
42
+
## catppuccin status bar
43
+
set -g @plugin 'catppuccin/tmux'
44
+
45
+
### some additions to the status bar
46
+
set -g @plugin 'tmux-plugins/tmux-cpu'
47
+
48
+
## nvim
49
+
set -g @plugin 'aserowy/tmux.nvim'
50
+
51
+
### navigation
52
+
set -g @tmux-nvim-navigation true
53
+
set -g @tmux-nvim-navigation-cycle true
54
+
set -g @tmux-nvim-navigation-keybinding-left 'C-h'
55
+
set -g @tmux-nvim-navigation-keybinding-down 'C-j'
56
+
set -g @tmux-nvim-navigation-keybinding-up 'C-k'
57
+
set -g @tmux-nvim-navigation-keybinding-right 'C-l'
58
+
59
+
### resize
60
+
set -g @tmux-nvim-resize true
61
+
set -g @tmux-nvim-resize-step-x 1
62
+
set -g @tmux-nvim-resize-step-y 1
63
+
set -g @tmux-nvim-resize-keybinding-left 'M-h'
64
+
set -g @tmux-nvim-resize-keybinding-down 'M-j'
65
+
set -g @tmux-nvim-resize-keybinding-up 'M-k'
66
+
set -g @tmux-nvim-resize-keybinding-right 'M-l'
67
+
68
+
69
+
run '~/.tmux/plugins/tpm/tpm'
+3
ttyper/.config/ttyper/config.toml
+3
ttyper/.config/ttyper/config.toml
+53
window_manager/.config/eww/eww.scss
+53
window_manager/.config/eww/eww.scss
···
1
+
// general styling
2
+
3
+
* {
4
+
font-family: JetBrainsMono Nerd Font Mono;
5
+
}
6
+
7
+
label, button, .powerbutton {
8
+
padding: 0px;
9
+
min-width: 0px;
10
+
min-height: 0px;
11
+
}
12
+
13
+
.powermenu, .powerbutton {
14
+
background-color: #000000;
15
+
}
16
+
17
+
button {
18
+
background-image: none;
19
+
border-radius: 10px;
20
+
border-width: 3px;
21
+
margin: 4pt;
22
+
}
23
+
24
+
.powerbutton label {
25
+
font-size: 4em;
26
+
}
27
+
28
+
// button-specific
29
+
30
+
$poweroff_color: #03624c;
31
+
$reboot_color: #2cc295;
32
+
$suspend_color: #00df81;
33
+
$logout_color: #f1f7f6;
34
+
35
+
.poweroff {
36
+
border-color: $poweroff_color;
37
+
color: $poweroff_color;
38
+
}
39
+
40
+
.reboot {
41
+
border-color: $reboot_color;
42
+
color: $reboot_color;
43
+
}
44
+
45
+
.suspend {
46
+
border-color: $suspend_color;
47
+
color: $suspend_color;
48
+
}
49
+
50
+
.logout {
51
+
border-color: $logout_color;
52
+
color: $logout_color;
53
+
}
+72
window_manager/.config/eww/eww.yuck
+72
window_manager/.config/eww/eww.yuck
···
1
+
(defwindow powermenu
2
+
:monitor 0
3
+
:stacking "fg"
4
+
:exclusive false
5
+
:focusable false
6
+
:geometry (geometry
7
+
:width "15%"
8
+
:height "30%"
9
+
:anchor "top right")
10
+
(powermenu_layout))
11
+
12
+
(defwidget powermenu_layout []
13
+
(box :orientation "v" :class "powermenu_layout"
14
+
:vexpand true
15
+
(box :orientation "h" :class "powermenu_row_1"
16
+
:vexpand true
17
+
(poweroff)
18
+
(reboot)
19
+
)
20
+
21
+
(box :orientation "h" :class "powermenu_row_2"
22
+
(suspend)
23
+
(logout)
24
+
)
25
+
)
26
+
)
27
+
28
+
29
+
(defwidget poweroff []
30
+
(box :orientation "v" :space-evenly false
31
+
(button
32
+
:vexpand true
33
+
:class "poweroff powerbutton"
34
+
:onclick "systemctl poweroff"
35
+
(label :text "๏"))
36
+
(label :text "ะพัะบะปััะธัั" :valign "start")
37
+
)
38
+
)
39
+
40
+
(defwidget reboot []
41
+
(box :orientation "v" :space-evenly false
42
+
(button
43
+
:vexpand true
44
+
:class "reboot powerbutton"
45
+
:onclick "systemctl reboot"
46
+
(label :text "๓ฐ"))
47
+
(label :text "ะฟะตัะตะทะฐะณััะท" :valign "start")
48
+
)
49
+
)
50
+
51
+
(defwidget suspend []
52
+
(box :orientation "v" :space-evenly false
53
+
(button
54
+
:vexpand true
55
+
:class "suspend powerbutton"
56
+
:onclick "hyprlock & systemctl suspend"
57
+
(label :text "๏ฎ"))
58
+
(label :text "ัะพะฝ" :valign "start")
59
+
)
60
+
)
61
+
62
+
(defwidget logout []
63
+
(box :orientation "v" :space-evenly false
64
+
(button
65
+
:vexpand true
66
+
:class "logout powerbutton"
67
+
:onclick "loginctl kill-session $XDG_SESSION_ID"
68
+
(label :text "๓ฐฝ"))
69
+
(label :text "ะฒัะนัะธ" :valign "start")
70
+
)
71
+
)
72
+
+22
window_manager/.config/fuzzel/fuzzel.ini
+22
window_manager/.config/fuzzel/fuzzel.ini
···
1
+
[main]
2
+
3
+
# text
4
+
font = JetBrainsMono Nerd Font:size=12:weight=bold
5
+
use-bold = yes
6
+
placeholder = find anything...
7
+
8
+
# misc
9
+
10
+
terminal = kitty -e
11
+
12
+
[colors]
13
+
14
+
background = 032221ff
15
+
text = f1f7f6ff
16
+
prompt = 00df81ff
17
+
placeholder = 03624cff
18
+
input = 2cc295ff
19
+
match = 00df81ff
20
+
selection = 00df81ff
21
+
selection-text = 032221ff
22
+
selection-match = f1f7f6ff
+1
-1
window_manager/.config/hypr/hyprland/apps.conf
+1
-1
window_manager/.config/hypr/hyprland/apps.conf
+8
-1
window_manager/.config/hypr/hyprland/autostart.conf
+8
-1
window_manager/.config/hypr/hyprland/autostart.conf
···
7
7
exec-once = uwsm app -- /etc/xdg/autostart/blueman.desktop
8
8
9
9
# anti-RSI
10
-
exec-once = uwsm app -- /usr/bin/safeeyes
10
+
exec-once = uwsm app -- safeeyes
11
+
12
+
# eww
13
+
exec-once = eww daemon
14
+
15
+
# clipboard history
16
+
exec-once = wl-paste --type text --watch cliphist store # Stores only text data
17
+
exec-once = wl-paste --type image --watch cliphist store # Stores only image data
+2
-2
window_manager/.config/hypr/hyprland/input.conf
+2
-2
window_manager/.config/hypr/hyprland/input.conf
···
1
1
# https://wiki.hyprland.org/Configuring/Variables/#input
2
2
input {
3
3
kb_layout = us,ua,ru
4
-
kb_variant =
4
+
kb_variant = altgr-intl,
5
5
kb_options = grp:win_space_toggle,caps:swapescape
6
6
7
7
follow_mouse = 1
···
9
9
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
10
10
11
11
touchpad {
12
-
natural_scroll = false
12
+
natural_scroll = true
13
13
}
14
14
}
15
15
+13
-5
window_manager/.config/hypr/hyprland/keybindings.conf
+13
-5
window_manager/.config/hypr/hyprland/keybindings.conf
···
7
7
bind = $mainMod, C, killactive,
8
8
bind = ALT, F4, killactive,
9
9
bind = $mainMod, ESCAPE, exit,
10
-
bind = $mainMod, V, togglefloating,
10
+
bind = $mainMod ALT, V, togglefloating,
11
11
bind = $mainMod, P, pseudo, # dwindle
12
12
bind = $mainMod, J, togglesplit, # dwindle
13
13
bind = $mainMod, L, exec, hyprlock # lock screen
···
18
18
bind = $mainMod, F, exec, $menu
19
19
bind = $mainMod, B, exec, $browser
20
20
21
-
## DBus Global Shortcuts
21
+
# DBus Global Shortcuts
22
+
## GPU Screen Recorder
22
23
bind = $mainMod ALT, Print, global, com.dec05eba.gpu_screen_recorder:gpu_screen_recorder_start_stop_recording
23
24
bind = $mainMod ALT, R, global, com.dec05eba.gpu_screen_recorder:gpu_screen_recorder_save_replay
24
25
bind = $mainMod ALT, P, global, com.dec05eba.gpu_screen_recorder:gpu_screen_recorder_pause_unpause_recording
···
29
30
# Screenshots
30
31
bind = $mainMod, Print, exec, grim -g "$(slurp)"
31
32
bind = , Print, exec, grim
33
+
34
+
# Clipboard manager
35
+
bind = $mainMod, V, exec, cliphist list | fuzzel --dmenu | cliphist decode | wl-copy
32
36
33
37
# Move focus with mainMod + arrow keys
34
38
bind = $mainMod, left, movefocus, l
···
70
74
bind = $mainMod SHIFT, 9, movetoworkspace, 9
71
75
bind = $mainMod SHIFT, 0, movetoworkspace, 10
72
76
73
-
# Example special workspace (scratchpad)
74
-
bind = $mainMod, S, togglespecialworkspace, magic
75
-
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
77
+
# Gaming special workspace (scratchpad)
78
+
bind = $mainMod, S, togglespecialworkspace, gaming
79
+
bind = $mainMod SHIFT, S, movetoworkspace, special:gaming
80
+
81
+
# Audio gear special workspace
82
+
bind = $mainMod, M, togglespecialworkspace, audio
83
+
bind = $mainMod SHIFT, M, movetoworkspace, special:audio
76
84
77
85
# Scroll through existing workspaces with mainMod + scroll
78
86
bind = $mainMod, mouse_up, workspace, e+1
+1
-1
window_manager/.config/hypr/hyprland/look_and_feel.conf
+1
-1
window_manager/.config/hypr/hyprland/look_and_feel.conf
+3
-3
window_manager/.config/hypr/scripts/lock/language.sh
+3
-3
window_manager/.config/hypr/scripts/lock/language.sh
···
1
1
layout=$(hyprctl devices -j | jq -r '.keyboards[] | select(.main == true) | .active_keymap')
2
2
3
3
if [[ -n "$layout" ]]; then
4
-
if [[ "$layout" == "English (US)" ]]; then
4
+
if [[ $layout == English* ]]; then
5
5
echo "EN"
6
-
elif [[ "$layout" == "Russian" ]]; then
6
+
elif [[ $layout == Russian* ]]; then
7
7
echo "RU"
8
-
elif [[ "$layout" == "Ukrainian" ]]; then
8
+
elif [[ $layout == Ukrainian* ]]; then
9
9
echo "UA"
10
10
fi
11
11
fi
+6
-22
window_manager/.config/waybar/config.jsonc
+6
-22
window_manager/.config/waybar/config.jsonc
···
34
34
"default": "๏"
35
35
}
36
36
},
37
-
"keyboard-state": {
38
-
"numlock": true,
39
-
"capslock": true,
40
-
"format": "{name} {icon}",
41
-
"format-icons": {
42
-
"locked": "๏ฃ",
43
-
"unlocked": "๏"
44
-
}
45
-
},
46
37
"tray": {
47
38
// "icon-size": 21,
48
39
"spacing": 10
···
50
41
"clock": {
51
42
// "timezone": "America/New_York",
52
43
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
53
-
"format-alt": "{:%Y-%m-%d}"
44
+
"format-alt": "{:%d.%m.%Y}"
54
45
},
55
46
"network": {
56
47
// "interface": "wlp2*", // (Optional) To force the use of this interface
57
-
"format-wifi": "{essid} ({signalStrength}%) ๏ซ",
58
-
"format-ethernet": "{ipaddr}/{cidr} ๏",
48
+
"format-wifi": "{signalStrength}% ๏ซ",
49
+
"format-ethernet": "๓ฐ",
59
50
"tooltip-format": "{ifname} via {gwaddr} ๏",
60
51
"format-linked": "{ifname} (No IP) ๏",
61
52
"format-disconnected": "Disconnected โ ",
···
72
63
"format-icons": {
73
64
"headphone": "๏ฅ",
74
65
"hands-free": "๏",
75
-
"headset": "๏",
66
+
"headset": "๓ฐ",
76
67
"phone": "๏",
77
68
"portable": "๏",
78
69
"car": "๏น",
···
81
72
"on-click": "flatpak run com.saivert.pwvucontrol"
82
73
},
83
74
"custom/power": {
84
-
"format" : "โป ",
75
+
"format" : " โป ",
85
76
"tooltip": false,
86
-
"menu": "on-click",
87
-
"menu-file": "$HOME/.config/waybar/power_menu.xml", // Menu file in resources folder
88
-
"menu-actions": {
89
-
"shutdown": "shutdown",
90
-
"reboot": "reboot",
91
-
"suspend": "systemctl suspend",
92
-
"hibernate": "systemctl hibernate"
93
-
}
77
+
"on-click": "$HOME/.config/waybar/scripts/toggle_eww_window.sh powermenu"
94
78
},
95
79
"custom/notification": {
96
80
"tooltip": false,
+19
window_manager/.config/waybar/scripts/toggle_eww_window.sh
+19
window_manager/.config/waybar/scripts/toggle_eww_window.sh
···
1
+
#!/bin/bash
2
+
3
+
stringContain() { case $2 in *$1* ) return 0;; *) return 1;; esac ;}
4
+
5
+
if [ $# -ne 1 ]; then
6
+
echo "usage: toggle_eww_window.sh <eww_window_name>"
7
+
exit 1
8
+
fi
9
+
10
+
name=$1
11
+
windows=$(eww active-windows)
12
+
13
+
if stringContain "$name" "$windows"; then
14
+
eww close $name
15
+
echo "window closed"
16
+
exit 0
17
+
fi
18
+
19
+
eww open $name
+7
-1
window_manager/.config/waybar/style.css
+7
-1
window_manager/.config/waybar/style.css
···
15
15
/* border-bottom: 3px solid rgba(100, 114, 125, 0.5); */
16
16
color: #ffffff;
17
17
transition-property: background-color;
18
-
transition-duration: 0.5s;
18
+
/* transition-duration: 0.5s; */
19
19
}
20
20
21
21
window#waybar.hidden {
···
74
74
border: #00df81;
75
75
padding: 0 5px;
76
76
border-radius: 10px;
77
+
78
+
/* disables animation */
79
+
box-shadow: none;
80
+
text-shadow: none;
81
+
transition: none;
82
+
background: none;
77
83
}
78
84
79
85
#workspaces button.active {
+1
window_manager/.config/waypaper/config.ini
+1
window_manager/.config/waypaper/config.ini
-47
window_manager/.config/wofi/style.css
-47
window_manager/.config/wofi/style.css
···
1
-
window {
2
-
margin: 0px;
3
-
border: 5px solid #032221;
4
-
}
5
-
6
-
#input {
7
-
margin: 5px;
8
-
border: none;
9
-
color: #032221;
10
-
background-color: #f1f7f6;
11
-
}
12
-
13
-
#inner-box {
14
-
margin: 5px;
15
-
border: none;
16
-
background-color: #032221;
17
-
}
18
-
19
-
#outer-box {
20
-
margin: 5px;
21
-
border: none;
22
-
background-color: #032221;
23
-
}
24
-
25
-
#scroll {
26
-
margin: 0px;
27
-
border: none;
28
-
}
29
-
30
-
#text {
31
-
margin: 5px;
32
-
border: none;
33
-
color: #f1f7f6;
34
-
}
35
-
36
-
#entry:selected #text {
37
-
color: #021b1a;
38
-
}
39
-
40
-
#input #text {
41
-
color: #f1f7f6;
42
-
}
43
-
44
-
#entry:selected {
45
-
background-color: #00df81;
46
-
border-radius: 5px;
47
-
}
+3
-1
window_manager/README.md
+3
-1
window_manager/README.md
···
4
4
5
5
Mandatory:
6
6
- `waybar` - top bar
7
-
- `wofi` - app launcher
7
+
- `fuzzel` - app launcher
8
8
- `waypaper` and `hyprpaper` - for the wallpaper
9
9
- `kitty` - terminal
10
10
- Hyprland - my tiling WM of choice
···
12
12
- `blueman` - Bluetooth stuff
13
13
- [Pwvucontrol](https://flathub.org/apps/com.saivert.pwvucontrol) from Flathub - to control audio devices
14
14
- `grim` and `slurp` - to make screenshots work
15
+
- `eww` - poweroff/suspend/logout/reboot menu
16
+
- `cliphist` - clipboard history
15
17
16
18
Optional/alternatives available:
17
19
- [Zen Browser](https://flathub.org/apps/app.zen_browser.zen) from Flathub - can be changed at `.config/hypr/hyprland/apps.conf`