Bohdan's terminal configuration

Compare changes

Choose any two refs to compare.

Changed files
+171 -88
nvim
.config
tmux
ttyper
.config
ttyper
window_manager
.config
+24 -23
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": "5624b5ebe6988c75d3f4eb588b9f31f3847a721c" }, 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-dap-ui": { "branch": "master", "commit": "73a26abf4941aa27da59820fd6b028ebcdbcf932" }, 25 - "nvim-lspconfig": { "branch": "master", "commit": "4bc481b6f0c0cf3671fc894debd0e00347089a4e" }, 24 + "nvim-dap": { "branch": "master", "commit": "a479e25ed5b5d331fb46ee4b9e160ff02ac64310" }, 25 + "nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" }, 26 + "nvim-lspconfig": { "branch": "master", "commit": "3d66048f40ace2d8b8f0789f4346d4fc0a6de15f" }, 26 27 "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, 27 - "nvim-tree.lua": { "branch": "master", "commit": "ea5097a1e2702b4827cb7380e7fa0bd6da87699c" }, 28 - "nvim-treesitter": { "branch": "master", "commit": "28d480e0624b259095e56f353ec911f9f2a0f404" }, 29 - "nvim-web-devicons": { "branch": "master", "commit": "2c2b4eafce6cdd0cb165036faa17396eff18f847" }, 30 - "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, 31 - "render-markdown.nvim": { "branch": "main", "commit": "b4016e812c9a18784d8c1c6b4f0b2858a4cf502d" }, 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" }, 32 33 "rustaceanvim": { "branch": "master", "commit": "e9c5aaba16fead831379d5f44617547a90b913c7" }, 33 - "telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" }, 34 + "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" }, 34 35 "tmux.nvim": { "branch": "main", "commit": "2c1c3be0ef287073cef963f2aefa31a15c8b9cd8" }, 35 - "ui": { "branch": "v3.0", "commit": "4466c87073c811c22b14215ba8a0cfc7d1b8b688" }, 36 + "ui": { "branch": "v3.0", "commit": "af4407decaf6528cb21a7b0fd8925664c8e573c0" }, 36 37 "vim-slint": { "branch": "main", "commit": "9badce3860297562bb5e80ba1666628f9e0ac632" }, 37 - "volt": { "branch": "main", "commit": "c45d5f48da8e802e608b5c6da471ca4d84276dfb" }, 38 + "volt": { "branch": "main", "commit": "7b8c5e790120d9f08c8487dcb80692db6d2087a1" }, 38 39 "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }, 39 40 "yuck.vim": { "branch": "master", "commit": "9b5e0370f70cc30383e1dabd6c215475915fe5c3" }, 40 41 "zola.nvim": { "branch": "main", "commit": "0319c188e443ecae90819cf013d46ff9bf387def" }
+1
nvim/.config/nvim/lua/configs/lspconfig.lua
··· 8 8 "clangd", 9 9 "slint_lsp", 10 10 "pyright", 11 + "glsl_analyzer", 11 12 } 12 13 vim.lsp.enable(servers) 13 14
+6
nvim/.config/nvim/lua/options.lua
··· 4 4 5 5 -- local o = vim.o 6 6 -- o.cursorlineopt ='both' -- to enable cursorline! 7 + vim.o.autoread = true 8 + vim.api.nvim_create_autocmd({ "CursorHold", "FocusGained" }, { 9 + pattern = "*", 10 + command = "checktime", 11 + }) 12 +
+6
nvim/.config/nvim/lua/plugins/glsl.lua
··· 1 + return { 2 + { 3 + "timtro/glslView-nvim" 4 + }, 5 + } 6 +
+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
··· 1 + default_language = "rust" 2 + border_type = "double" 3 +
+3
ttyper/README.md
··· 1 + Typing trainer config. 2 + 3 + Just install `ttyper`
+5 -5
window_manager/.config/eww/eww.yuck
··· 28 28 29 29 (defwidget poweroff [] 30 30 (box :orientation "v" :space-evenly false 31 - (button :onclick "notify-send Power-Off!" 31 + (button 32 32 :vexpand true 33 33 :class "poweroff powerbutton" 34 34 :onclick "systemctl poweroff" ··· 39 39 40 40 (defwidget reboot [] 41 41 (box :orientation "v" :space-evenly false 42 - (button :onclick "notify-send Reboot!" 42 + (button 43 43 :vexpand true 44 44 :class "reboot powerbutton" 45 45 :onclick "systemctl reboot" ··· 50 50 51 51 (defwidget suspend [] 52 52 (box :orientation "v" :space-evenly false 53 - (button :onclick "notify-send Suspend!" 53 + (button 54 54 :vexpand true 55 55 :class "suspend powerbutton" 56 - :onclick "systemctl suspend" 56 + :onclick "hyprlock & systemctl suspend" 57 57 (label :text "๏“ฎ")) 58 58 (label :text "ัะพะฝ" :valign "start") 59 59 ) ··· 61 61 62 62 (defwidget logout [] 63 63 (box :orientation "v" :space-evenly false 64 - (button :onclick "notify-send Logout!" 64 + (button 65 65 :vexpand true 66 66 :class "logout powerbutton" 67 67 :onclick "loginctl kill-session $XDG_SESSION_ID"
+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 $terminal = kitty 2 2 $fileManager = dolphin 3 - $menu = wofi --show drun 3 + $menu = fuzzel 4 4 $browser = flatpak run app.zen_browser.zen 5 5
+3
window_manager/.config/hypr/hyprland/autostart.conf
··· 12 12 # eww 13 13 exec-once = eww daemon 14 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
··· 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
··· 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
+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
+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
··· 22 22 mpvpaper_sound = False 23 23 mpvpaper_options = 24 24 use_xdg_state = False 25 + zen_mode = False 25 26
-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 - }
+2 -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 ··· 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 15 - `eww` - poweroff/suspend/logout/reboot menu 16 + - `cliphist` - clipboard history 16 17 17 18 Optional/alternatives available: 18 19 - [Zen Browser](https://flathub.org/apps/app.zen_browser.zen) from Flathub - can be changed at `.config/hypr/hyprland/apps.conf`