Compare commits

...

4 Commits

Author SHA1 Message Date
d3f28cd1da better diagnostics 2024-01-12 00:25:29 -06:00
523ff3068d tmux update 2024-01-11 23:36:08 -06:00
44c0523801 test.lua 2024-01-11 23:09:38 -06:00
27d2ea5b33 Trying out lazygit 2024-01-11 18:56:51 -06:00
32 changed files with 921 additions and 298 deletions

View File

@ -2,12 +2,11 @@
"Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" },
"LuaSnip": { "branch": "master", "commit": "82108e7e31cc6fc223cc5df5cae6d89f70bb199f" }, "LuaSnip": { "branch": "master", "commit": "82108e7e31cc6fc223cc5df5cae6d89f70bb199f" },
"aerial.nvim": { "branch": "master", "commit": "e2e3bc2df4490690ea005395eecdc8eeb30c4def" }, "aerial.nvim": { "branch": "master", "commit": "e2e3bc2df4490690ea005395eecdc8eeb30c4def" },
"ai.nvim": { "branch": "main", "commit": "ab6b6f54612500f48d4d34fcf81529946b9338f3" }, "ai.nvim": { "branch": "main", "commit": "7fce571d1efe34fb41989a899efe0c57e13111a3" },
"asyncrun.vim": { "branch": "master", "commit": "61cc3081963a12048e00e89f8cedc8bd1cb83b8c" }, "asyncrun.vim": { "branch": "master", "commit": "61cc3081963a12048e00e89f8cedc8bd1cb83b8c" },
"auto-session": { "branch": "main", "commit": "51196ca66b38fc1660fdf50031cb0b31a199b7c9" }, "auto-session": { "branch": "main", "commit": "51196ca66b38fc1660fdf50031cb0b31a199b7c9" },
"bluloco.nvim": { "branch": "main", "commit": "752c7e49337597aa8b796e4eb562010a835cde7c" },
"bufferline.nvim": { "branch": "main", "commit": "6c456b888823d9e4832aa91c482bccd19445c009" }, "bufferline.nvim": { "branch": "main", "commit": "6c456b888823d9e4832aa91c482bccd19445c009" },
"catppuccin": { "branch": "main", "commit": "5e36ca599f4aa41bdd87fbf2c5aae4397ac55074" },
"ciderlsp-nvim": { "branch": "main", "commit": "00a86f96f4b8b9e94f0978c2db316447cc30a573" },
"clyde.vim": { "branch": "master", "commit": "368691fe856c09b0d064f34b35c856ddb196b391" }, "clyde.vim": { "branch": "master", "commit": "368691fe856c09b0d064f34b35c856ddb196b391" },
"cmp-async-path": { "branch": "main", "commit": "d8229a93d7b71f22c66ca35ac9e6c6cd850ec61d" }, "cmp-async-path": { "branch": "main", "commit": "d8229a93d7b71f22c66ca35ac9e6c6cd850ec61d" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
@ -16,7 +15,6 @@
"cmp-cmdline-history": { "branch": "master", "commit": "003573b72d4635ce636234a826fa8c4ba2895ffe" }, "cmp-cmdline-history": { "branch": "master", "commit": "003573b72d4635ce636234a826fa8c4ba2895ffe" },
"cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" }, "cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" },
"cmp-nerdfont": { "branch": "main", "commit": "a3b7c0cadb7bd389f513eecda376d4c6bec90003" }, "cmp-nerdfont": { "branch": "main", "commit": "a3b7c0cadb7bd389f513eecda376d4c6bec90003" },
"cmp-nvim-ciderlsp": { "branch": "main", "commit": "e1b0015a0c090e20d1cbb34e5639e6dd145d3f3e" },
"cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" },
"cmp-nvim-lsp-document-symbol": { "branch": "main", "commit": "f0f53f704c08ea501f9d222b23491b0d354644b0" }, "cmp-nvim-lsp-document-symbol": { "branch": "main", "commit": "f0f53f704c08ea501f9d222b23491b0d354644b0" },
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "3d8912ebeb56e5ae08ef0906e3a54de1c66b92f1" }, "cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "3d8912ebeb56e5ae08ef0906e3a54de1c66b92f1" },
@ -25,43 +23,39 @@
"cmp-treesitter": { "branch": "master", "commit": "13e4ef8f4dd5639fca2eb9150e68f47639a9b37d" }, "cmp-treesitter": { "branch": "master", "commit": "13e4ef8f4dd5639fca2eb9150e68f47639a9b37d" },
"cmp-under-comparator": { "branch": "master", "commit": "6857f10272c3cfe930cece2afa2406e1385bfef8" }, "cmp-under-comparator": { "branch": "master", "commit": "6857f10272c3cfe930cece2afa2406e1385bfef8" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
"codeium.nvim": { "branch": "main", "commit": "f871000e91faa9ed334da2bfa4eadbf54d0e1047" },
"conflict-marker.vim": { "branch": "master", "commit": "11a4d42244755505b66b15cd4496a150432eb5e3" }, "conflict-marker.vim": { "branch": "master", "commit": "11a4d42244755505b66b15cd4496a150432eb5e3" },
"conform.nvim": { "branch": "master", "commit": "75e7c5c7eb5fbd53f8b12dc420b31ec70770b231" }, "conform.nvim": { "branch": "master", "commit": "75e7c5c7eb5fbd53f8b12dc420b31ec70770b231" },
"crates.nvim": { "branch": "main", "commit": "1dffccc0a95f656ebe00cacb4de282473430c5a1" }, "crates.nvim": { "branch": "main", "commit": "1dffccc0a95f656ebe00cacb4de282473430c5a1" },
"dashboard-nvim": { "branch": "master", "commit": "63df28409d940f9cac0a925df09d3dc369db9841" }, "dashboard-nvim": { "branch": "master", "commit": "63df28409d940f9cac0a925df09d3dc369db9841" },
"debugprint.nvim": { "branch": "main", "commit": "661eea1d6f8237097ae372578fbe7458d690a3ac" }, "debugprint.nvim": { "branch": "main", "commit": "661eea1d6f8237097ae372578fbe7458d690a3ac" },
"fidget.nvim": { "branch": "main", "commit": "3a93300c076109d86c7ce35ec67a8034ae6ba9db" },
"firenvim": { "branch": "master", "commit": "138424db463e6c0e862a05166a4ccc781cd7c19d" }, "firenvim": { "branch": "master", "commit": "138424db463e6c0e862a05166a4ccc781cd7c19d" },
"friendly-snippets": { "branch": "main", "commit": "69a2c1675b66e002799f5eef803b87a12f593049" }, "friendly-snippets": { "branch": "main", "commit": "69a2c1675b66e002799f5eef803b87a12f593049" },
"fzf": { "branch": "master", "commit": "e4d0f7acd516d8f5869d3a2210fbf552743a129a" },
"fzf.vim": { "branch": "master", "commit": "f6cb5b17897ff0c38f60fecd4b529678bcfec259" }, "fzf.vim": { "branch": "master", "commit": "f6cb5b17897ff0c38f60fecd4b529678bcfec259" },
"git-conflict.nvim": { "branch": "main", "commit": "690879ba23741f21646e97ba287333ff56137c4d" }, "git-conflict.nvim": { "branch": "main", "commit": "4e0191c9a0ae05d7fbdcdc7f15cd358f56d23bfb" },
"go.nvim": { "branch": "master", "commit": "24d2fa373d55d9900cd4b502a88214dc17e6fab6" }, "go.nvim": { "branch": "master", "commit": "24d2fa373d55d9900cd4b502a88214dc17e6fab6" },
"guihua.lua": { "branch": "master", "commit": "9fb6795474918b492d9ab01b1ebaf85e8bf6fe0b" }, "guihua.lua": { "branch": "master", "commit": "9fb6795474918b492d9ab01b1ebaf85e8bf6fe0b" },
"hg": { "branch": "main", "commit": "1c4bdf80174ec840ba76c4dc7032c4313db62199" },
"java-syntax.vim": { "branch": "master", "commit": "9a3d76a8c6cd7765ba93a7bdd9280594167e3f1b" }, "java-syntax.vim": { "branch": "master", "commit": "9a3d76a8c6cd7765ba93a7bdd9280594167e3f1b" },
"kanagawa.nvim": { "branch": "master", "commit": "c19b9023842697ec92caf72cd3599f7dd7be4456" }, "kanagawa.nvim": { "branch": "master", "commit": "c19b9023842697ec92caf72cd3599f7dd7be4456" },
"kotlin-vim": { "branch": "master", "commit": "53fe045906df8eeb07cb77b078fc93acda6c90b8" }, "kotlin-vim": { "branch": "master", "commit": "53fe045906df8eeb07cb77b078fc93acda6c90b8" },
"lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" },
"lazygit.nvim": { "branch": "main", "commit": "1e08e3f5ac1152339690140e61a4a32b3bdc7de5" },
"leap.nvim": { "branch": "main", "commit": "4394f67ccefc64cdb3258c9f22195ed65a13e874" }, "leap.nvim": { "branch": "main", "commit": "4394f67ccefc64cdb3258c9f22195ed65a13e874" },
"libp.nvim": { "branch": "main", "commit": "636b1748e92f66022c1763f32b2ded6b8606eda5" },
"lsp-status.nvim": { "branch": "master", "commit": "54f48eb5017632d81d0fd40112065f1d062d0629" }, "lsp-status.nvim": { "branch": "master", "commit": "54f48eb5017632d81d0fd40112065f1d062d0629" },
"lsp-timeout.nvim": { "branch": "main", "commit": "6325906730330105a9adc41d0ceb8499b3072e2b" },
"lsp-zero.nvim": { "branch": "v3.x", "commit": "433db11e818d07a5151e2c750ca8f09cc2aa3146" }, "lsp-zero.nvim": { "branch": "v3.x", "commit": "433db11e818d07a5151e2c750ca8f09cc2aa3146" },
"lsp_lines.nvim": { "branch": "main", "commit": "cf2306dd332e34a3e91075b40bdd4f6db824b2ee" }, "lspkind.nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" },
"lspkind.nvim": { "branch": "master", "commit": "7f26cf5e27e2bd910ce0ea00c514da2bf97423b8" },
"lualine.nvim": { "branch": "master", "commit": "566b7036f717f3d676362742630518a47f132fff" }, "lualine.nvim": { "branch": "master", "commit": "566b7036f717f3d676362742630518a47f132fff" },
"luasnip-google.nvim": { "branch": "main", "commit": "5fd7feb144de0ecea837618c9c9e1bbecc0e3243" }, "lush.nvim": { "branch": "main", "commit": "e8a58f36c256af65cda36878f6f2024a612154c3" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "0989bdf4fdf7b5aa4c74131d7ffccc3f399ac788" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "0989bdf4fdf7b5aa4c74131d7ffccc3f399ac788" },
"mason.nvim": { "branch": "main", "commit": "e110bc3be1a7309617cecd77bfe4bf86ba1b8134" }, "mason.nvim": { "branch": "main", "commit": "e110bc3be1a7309617cecd77bfe4bf86ba1b8134" },
"mellifluous.nvim": { "branch": "main", "commit": "d4a52152997907598715d341cad10a4000cf7152" },
"mkdir.nvim": { "branch": "main", "commit": "c55d1dee4f099528a1853b28bb28caa802eba217" }, "mkdir.nvim": { "branch": "main", "commit": "c55d1dee4f099528a1853b28bb28caa802eba217" },
"neo-tree.nvim": { "branch": "v2.x", "commit": "80dc74d081823649809f78370fa5b204aa9a853a" }, "neo-tree.nvim": { "branch": "v2.x", "commit": "80dc74d081823649809f78370fa5b204aa9a853a" },
"neodev.nvim": { "branch": "main", "commit": "be8d4d4cab6c13c6a572269c9d6a63774baba9a0" }, "neodev.nvim": { "branch": "main", "commit": "34b93b809b781b8a1ad862142e40b11bae1dc0e9" },
"neoscopes": { "branch": "main", "commit": "470dff042004b93c10d262e8b0ad7bf6f703f86f" }, "neoscopes": { "branch": "main", "commit": "470dff042004b93c10d262e8b0ad7bf6f703f86f" },
"neovim-ayu": { "branch": "master", "commit": "6463d39253bb70e2b867fce57f9e7174f657bd1b" },
"neovim-throttle-debounce": { "branch": "main", "commit": "5247b097df15016ab31db672b77ec4938bb9cbfd" },
"nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" }, "nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" },
"nvgoog": { "branch": "main", "commit": "c07300e18e81c0341967b8a5ba9afbf7388ca533" },
"nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" }, "nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" },
"nvim-cmp-buffer-lines": { "branch": "master", "commit": "924ccc04dc5c919b6baa05d45818025baa82699a" }, "nvim-cmp-buffer-lines": { "branch": "master", "commit": "924ccc04dc5c919b6baa05d45818025baa82699a" },
"nvim-colorizer.lua": { "branch": "master", "commit": "85855b38011114929f4058efc97af1059ab3e41d" }, "nvim-colorizer.lua": { "branch": "master", "commit": "85855b38011114929f4058efc97af1059ab3e41d" },
@ -73,28 +67,24 @@
"nvim-lint": { "branch": "master", "commit": "8df53b5dde8ea80f0a039775777eae6648a10229" }, "nvim-lint": { "branch": "master", "commit": "8df53b5dde8ea80f0a039775777eae6648a10229" },
"nvim-lspconfig": { "branch": "master", "commit": "796394fd19fb878e8dbc4fd1e9c9c186ed07a5f4" }, "nvim-lspconfig": { "branch": "master", "commit": "796394fd19fb878e8dbc4fd1e9c9c186ed07a5f4" },
"nvim-luapad": { "branch": "master", "commit": "a5b3d6aa1fe5fe75e6124927392a9d3a60a0ecce" }, "nvim-luapad": { "branch": "master", "commit": "a5b3d6aa1fe5fe75e6124927392a9d3a60a0ecce" },
"nvim-notify": { "branch": "master", "commit": "1576123bff3bed67bc673a3076e591abfe5d8ca9" },
"nvim-scrollbar": { "branch": "main", "commit": "35f99d559041c7c0eff3a41f9093581ceea534e8" }, "nvim-scrollbar": { "branch": "main", "commit": "35f99d559041c7c0eff3a41f9093581ceea534e8" },
"nvim-surround": { "branch": "main", "commit": "703ec63aa798e5e07d309b35e42def34bebe0174" }, "nvim-surround": { "branch": "main", "commit": "703ec63aa798e5e07d309b35e42def34bebe0174" },
"nvim-treesitter": { "branch": "master", "commit": "8cd2b230174efbf7b5d9f49fe2f90bda6b5eb16e" }, "nvim-treesitter": { "branch": "master", "commit": "8cd2b230174efbf7b5d9f49fe2f90bda6b5eb16e" },
"nvim-web-devicons": { "branch": "master", "commit": "db0c864375c198cacc171ff373e76bfce2a85045" }, "nvim-web-devicons": { "branch": "master", "commit": "db0c864375c198cacc171ff373e76bfce2a85045" },
"omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "4be2e8689067494ed7e5a4f1221adc31d1a07783" }, "omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "4be2e8689067494ed7e5a4f1221adc31d1a07783" },
"onedark.nvim": { "branch": "main", "commit": "b5161f0c631571640485be5d1c059cab82c86872" }, "oxocarbon.nvim": { "branch": "main", "commit": "c5846d10cbe4131cc5e32c6d00beaf59cb60f6a2" },
"plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
"presence.nvim": { "branch": "main", "commit": "87c857a56b7703f976d3a5ef15967d80508df6e6" },
"refactoring.nvim": { "branch": "master", "commit": "c067e44b8171494fc1b5206ab4c267cd74c043b1" }, "refactoring.nvim": { "branch": "master", "commit": "c067e44b8171494fc1b5206ab4c267cd74c043b1" },
"registers.nvim": { "branch": "main", "commit": "22bb98f93a423252fffeb3531f7bc12a3e07b63f" }, "registers.nvim": { "branch": "main", "commit": "22bb98f93a423252fffeb3531f7bc12a3e07b63f" },
"rustaceanvim": { "branch": "master", "commit": "e4020e72a5562b9e7cd09e9cd025467f7b0ea76a" }, "rustaceanvim": { "branch": "master", "commit": "d03f72788b81cb311250d9fe0692f3435d609b5a" },
"scope.nvim": { "branch": "main", "commit": "cd27af77ad61a7199af5c28d27013fb956eb0e3e" }, "scope.nvim": { "branch": "main", "commit": "cd27af77ad61a7199af5c28d27013fb956eb0e3e" },
"scss-syntax.vim": { "branch": "master", "commit": "bda22a93d1dcfcb8ee13be1988560d9bb5bd0fef" }, "scss-syntax.vim": { "branch": "master", "commit": "bda22a93d1dcfcb8ee13be1988560d9bb5bd0fef" },
"tabular": { "branch": "master", "commit": "339091ac4dd1f17e225fe7d57b48aff55f99b23a" }, "tabular": { "branch": "master", "commit": "339091ac4dd1f17e225fe7d57b48aff55f99b23a" },
"tagalong.vim": { "branch": "main", "commit": "5a2bbf2b1d5b657685a49d48d98a4aa921c1fde3" }, "tagalong.vim": { "branch": "main", "commit": "5a2bbf2b1d5b657685a49d48d98a4aa921c1fde3" },
"telescope-dap.nvim": { "branch": "master", "commit": "8c88d9716c91eaef1cdea13cb9390d8ef447dbfe" }, "telescope-dap.nvim": { "branch": "master", "commit": "8c88d9716c91eaef1cdea13cb9390d8ef447dbfe" },
"telescope.nvim": { "branch": "master", "commit": "4367e05c06d19f28c514e1498bcd9410f4bc65b2" }, "telescope.nvim": { "branch": "master", "commit": "da8b3d485975a8727bea127518b65c980521ae22" },
"telescope_citc": { "branch": "main", "commit": "f0f74127e262d097119d2946634d3aa7e49b0c2f" }, "text-case.nvim": { "branch": "main", "commit": "04a2ef39604fac1e1cd280989afd101615039b88" },
"telescope_codesearch": { "branch": "main", "commit": "a26077ad3c68cf897ae1c31da903d6516ebb9c92" },
"telescope_fig": { "branch": "main", "commit": "f6122fe82417ebeaddb9343cfd5584f62a4b8df8" },
"text-case.nvim": { "branch": "main", "commit": "d65b8ade26ef442d11cbf4719bb9830916a492c1" },
"time-ago.vim": { "branch": "master", "commit": "be978d5c790cfcc41f524205f28783b9937fd0ee" },
"todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" }, "todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" },
"tree-sitter-gdscript": { "branch": "master", "commit": "03f20b94707a21bed90bb95101684bc4036139ce" }, "tree-sitter-gdscript": { "branch": "master", "commit": "03f20b94707a21bed90bb95101684bc4036139ce" },
"trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" }, "trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" },
@ -104,7 +94,7 @@
"vim-better-whitespace": { "branch": "master", "commit": "4d45b4a9b59faffa75a3662c448b8e500db07703" }, "vim-better-whitespace": { "branch": "master", "commit": "4d45b4a9b59faffa75a3662c448b8e500db07703" },
"vim-conjoin": { "branch": "master", "commit": "2ea3b8ed994d12bbf255825d973d865621c64860" }, "vim-conjoin": { "branch": "master", "commit": "2ea3b8ed994d12bbf255825d973d865621c64860" },
"vim-floaterm": { "branch": "master", "commit": "3f01a623376957437f9376327637491b74719e38" }, "vim-floaterm": { "branch": "master", "commit": "3f01a623376957437f9376327637491b74719e38" },
"vim-imp": { "branch": "main", "commit": "fe9be485854ba602059f0d8af4fa4ab0a74d61ac" }, "vim-godot": { "branch": "master", "commit": "d748a46be5195256f6b2c767ef32de87b05ae8f7" },
"vim-maktaba": { "branch": "master", "commit": "fe95bb10f6bb250943a44632107f6a3d76ce5f28" }, "vim-maktaba": { "branch": "master", "commit": "fe95bb10f6bb250943a44632107f6a3d76ce5f28" },
"vim-matchup": { "branch": "master", "commit": "e2cca1747ab175b8d839a5d28679427564643a57" }, "vim-matchup": { "branch": "master", "commit": "e2cca1747ab175b8d839a5d28679427564643a57" },
"vim-ripgrep": { "branch": "master", "commit": "2bb2425387b449a0cd65a54ceb85e123d7a320b8" }, "vim-ripgrep": { "branch": "master", "commit": "2bb2425387b449a0cd65a54ceb85e123d7a320b8" },

View File

@ -0,0 +1 @@
*.swp

View File

@ -106,7 +106,11 @@ upower_battery_remaining_time() {
} }
acpi_battery_remaining_time() { acpi_battery_remaining_time() {
acpi -b | grep -m 1 -Eo "[0-9]+:[0-9]+:[0-9]+" regex="[0-9]+:[0-9]+"
if ! $short; then
regex="$regex:[0-9]+"
fi
acpi -b | grep -m 1 -Eo "$regex"
} }
print_battery_remain() { print_battery_remain() {

1
tmux/.tmux/plugins/tmux/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
custom

View File

@ -15,6 +15,24 @@
<img src="./assets/preview.webp"/> <img src="./assets/preview.webp"/>
</p> </p>
## Content
1. [Themes](#themes)
2. [Installation](#installation)
3. [Overview](#overview)
4. [Configuration options](#configuration-options)
1. [Window](#window)
2. [Window default](#window-default)
3. [Window current](#window-current)
4. [Status](#status)
5. [Customizing modules](#customizing-modules)
6. [Battery module](#battery-module)
5. [Create a custom module](#create-a-custom-module)
6. [Configuration Examples](#configuration-examples)
1. [Config 1](#config-1)
2. [Config 2](#config-2)
3. [Config 3](#config-3)
## Themes ## Themes
- 🌻 [Latte](./catppuccin-latte.tmuxtheme) - 🌻 [Latte](./catppuccin-latte.tmuxtheme)
@ -22,7 +40,10 @@
- 🌺 [Macchiato](./catppuccin-macchiato.tmuxtheme) - 🌺 [Macchiato](./catppuccin-macchiato.tmuxtheme)
- 🌿 [Mocha](./catppuccin-mocha.tmuxtheme) - 🌿 [Mocha](./catppuccin-mocha.tmuxtheme)
## Usage ## Installation
In order to have the icons displayed correctly please use / update your favorite [patched font](https://www.nerdfonts.com/font-downloads).
If you do not have a patched font installed, you can override or remove any icon. Check the documentation bellow on the options available.
### TPM ### TPM
@ -46,13 +67,312 @@ set -g @catppuccin_flavour 'latte' # or frappe, macchiato, mocha
1. Copy your desired theme's configuration contents into your Tmux config (usually stored at `~/.tmux.conf`) 1. Copy your desired theme's configuration contents into your Tmux config (usually stored at `~/.tmux.conf`)
2. Reload Tmux by either restarting the session or reloading it with `tmux source-file ~/.tmux.conf` 2. Reload Tmux by either restarting the session or reloading it with `tmux source-file ~/.tmux.conf`
## Overview
![Default](./assets/overview.png)
This is a diagram on how the theme is split between it's components.
## Configuration options
All flavours support certain levels of customization that match our [Catppuccin
Style Guide][style-guide]. To add these customizations, add any of the following
options to your Tmux configuration.
### Window
#### Set the window left separator:
```sh
set -g @catppuccin_window_left_separator "█"
```
#### Set the window middle separator:
```sh
set -g @catppuccin_window_middle_separator "█"
```
#### Set the window right separator:
```sh
set -g @catppuccin_window_right_separator "█"
```
#### Position the number:
```sh
set -g @catppuccin_window_number_position "left"
```
Values:
- left - the number will be on the left part of the window
- right - the number will be on the right part of the window
#### Enable window status:
```sh
set -g @catppuccin_window_status_enable "yes"
```
Values:
- yes - this will enable the window status part
- no - this will disable the window status part
#### Enable window status icons instead of text:
```sh
set -g @catppuccin_window_status_icon_enable "yes"
```
Values:
- yes - this will replace the windows status text with icons
- no - this will keep the windows status in text format
#### Override windows status icons
```sh
set -g @catppuccin_icon_window_last "󰖰"
set -g @catppuccin_icon_window_current "󰖯"
set -g @catppuccin_icon_window_zoom "󰁌"
set -g @catppuccin_icon_window_mark "󰃀"
set -g @catppuccin_icon_window_silent "󰂛"
set -g @catppuccin_icon_window_activity "󰖲"
set -g @catppuccin_icon_window_bell "󰂞"
```
### Window default
#### Set the window default color fill:
```sh
set -g @catppuccin_window_default_fill "number"
```
Values:
- number - only the number of the window part will have color
- all - the entire window part will have the same color
- none - the entire window part will have no color
#### Override the window default text:
```sh
set -g @catppuccin_window_default_text "#{b:pane_current_path}" # use "#W" for application instead of directory
```
### Window current
#### Set the window current color fill:
```sh
set -g @catppuccin_window_current_fill "number"
```
Values:
- number - only the number of the window part will have color
- all - the entire window part will have the same color
- none - the entire window part will have no color
#### Override the window current text:
```sh
set -g @catppuccin_window_current_text "#{b:pane_current_path}" # use "#W" for application instead of directory
```
#### Set the current directory format
```sh
set -g @catppuccin_window_current_format_directory_text "#{b:pane_current_path}"
```
Use this to overide the way the current directory is displayed.
#### Set the directory format
```sh
set -g @catppuccin_window_format_directory_text "#{b:pane_current_path}"
```
Use this to overide the way the directory is displayed.
### Status
#### Set the status module left separator:
```sh
set -g @catppuccin_status_left_separator ""
```
#### Set the status module right separator:
```sh
set -g @catppuccin_status_right_separator "█"
```
#### Set the status module right separator inverse:
```sh
set -g @catppuccin_status_right_separator_inverse "no"
```
Values:
- yes - the colors will be inverted for the right separator
- no - the colors will not be inverted for the right separator
#### Set the status connect separator:
```sh
set -g @catppuccin_status_connect_separator "yes"
```
Values:
- yes - the background color of the separator will not blend in with the brackground color of tmux
- no - the background color of the separator will blend in with the brackground color of tmux
#### Set the status module color fill:
```sh
set -g @catppuccin_status_fill "icon"
```
Values:
- icon - only the icon of the module will have color
- all - the entire module will have the same color
#### Set the module list
```sh
set -g @catppuccin_status_modules_right "application session"
set -g @catppuccin_status_modules_left ""
```
Provide a list of modules and the order in which you want them to appear in the status.
Available modules:
- application - display the current window running application
- directory - display the basename of the current window path
- session - display the number of tmux sessions running
- user - display the username
- host - display the hostname
- date_time - display the date and time
- [battery](#battery-module) - display the battery
### Customizing modules
Every module (except the module "session") supports the following overrides:
#### Override the specific module icon
```sh
set -g @catppuccin_[module_name]_icon "icon"
```
#### Override the specific module color
```sh
set -g @catppuccin_[module_name]_color "color"
```
#### Override the specific module text
```sh
set -g @catppuccin_[module_name]_text "text"
```
#### Removing a specific module option
```sh
set -g @catppuccin_[module_name]_[option] "null"
```
This is for the situation where you want to remove the icon from a module.
Ex:
```sh
set -g @catppuccin_date_time_icon "null"
```
### Battery module
#### Requirements
This module depends on [tmux-battery](https://github.com/tmux-plugins/tmux-battery/tree/master).
#### Install
The prefered way to install tmux-battery is using [TPM](https://github.com/tmux-plugins/tpm).
#### Configure
Load tmux-battery after you load catppuccin.
```sh
set -g @plugin 'catppuccin/tmux'
...
set -g @plugin 'tmux-plugins/tmux-battery'
```
Add the battery module to the status modules list.
```sh
set -g @catppuccin_status_modules_right "... battery ..."
```
## Create a custom module
It is possible to add a new custom module or overrite any of the existing modules.
Look into custom/README.md for more details.
Any file added to the custom folder will be preserved when updating catppuccin.
## Configuration Examples
Below are provided a few configurations as examples or starting points.
Note:
When switching between configurations run:
```sh
tmux kill-server
```
In order to kill the tmux server and clear all global variables.
### Config 1
![Default](./assets/config1.png)
```sh
set -g @catppuccin_window_right_separator "█ "
set -g @catppuccin_window_number_position "right"
set -g @catppuccin_window_middle_separator " | "
set -g @catppuccin_window_default_fill "none"
set -g @catppuccin_window_current_fill "all"
set -g @catppuccin_status_modules_right "application session user host date_time"
set -g @catppuccin_status_left_separator "█"
set -g @catppuccin_status_right_separator "█"
set -g @catppuccin_date_time_text "%Y-%m-%d %H:%M:%S"
```
### Config 2
![Default](./assets/config2.png)
```sh
set -g @catppuccin_window_left_separator "█"
set -g @catppuccin_window_right_separator "█ "
set -g @catppuccin_window_number_position "right"
set -g @catppuccin_window_middle_separator " █"
set -g @catppuccin_window_default_fill "number"
set -g @catppuccin_window_current_fill "number"
set -g @catppuccin_window_current_text "#{pane_current_path}"
set -g @catppuccin_status_modules_right "application session date_time"
set -g @catppuccin_status_left_separator ""
set -g @catppuccin_status_right_separator " "
set -g @catppuccin_status_right_separator_inverse "yes"
set -g @catppuccin_status_fill "all"
set -g @catppuccin_status_connect_separator "no"
```
### Config 3
![Default](./assets/config3.png)
```sh
set -g @catppuccin_window_left_separator ""
set -g @catppuccin_window_right_separator " "
set -g @catppuccin_window_middle_separator " █"
set -g @catppuccin_window_number_position "right"
set -g @catppuccin_window_default_fill "number"
set -g @catppuccin_window_default_text "#W"
set -g @catppuccin_window_current_fill "number"
set -g @catppuccin_window_current_text "#W"
set -g @catppuccin_status_modules_right "directory user host session"
set -g @catppuccin_status_left_separator " "
set -g @catppuccin_status_right_separator ""
set -g @catppuccin_status_right_separator_inverse "no"
set -g @catppuccin_status_fill "icon"
set -g @catppuccin_status_connect_separator "no"
set -g @catppuccin_directory_text "#{pane_current_path}"
```
[style-guide]: https://github.com/catppuccin/catppuccin/blob/main/docs/style-guide.md
## 💝 Thanks to ## 💝 Thanks to
- [Pocco81](https://github.com/catppuccin) - [Pocco81](https://github.com/catppuccin)
- [vinnyA3](https://github.com/vinnyA3) - [vinnyA3](https://github.com/vinnyA3)
- [rogeruiz](https://github.com/rogeruiz)
&nbsp; &nbsp;
<p align="center"><img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/footers/gray0_ctp_on_line.svg?sanitize=true" /></p> <p align="center"><img src="https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/footers/gray0_ctp_on_line.svg?sanitize=true" /></p>
<p align="center">Copyright &copy; 2021-present <a href="https://github.com/catppuccin" target="_blank">Catppuccin Org</a> <p align="center">Copyright &copy; 2021-present <a href="https://github.com/catppuccin" target="_blank">Catppuccin Org</a>
<p align="center"><a href="https://github.com/catppuccin/catppuccin/blob/main/LICENSE"><img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&logoColor=d9e0ee&colorA=363a4f&colorB=b7bdf8"/></a></p> <p align="center"><a href="https://github.com/catppuccin/catppuccin/blob/main/LICENSE"><img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&logoColor=d9e0ee&colorA=363a4f&colorB=b7bdf8"/></a></p>

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 KiB

54
tmux/.tmux/plugins/tmux/catppuccin-frappe.tmuxtheme Executable file → Normal file
View File

@ -1,5 +1,3 @@
#!/usr/bin/env bash
# NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: "" # NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: ""
# WARNING: hex colors can't contain capital letters # WARNING: hex colors can't contain capital letters
@ -17,55 +15,3 @@ thm_yellow="#e5c890"
thm_blue="#8caaee" thm_blue="#8caaee"
thm_orange="#ef9f76" thm_orange="#ef9f76"
thm_black4="#626880" thm_black4="#626880"
# ----------------------------=== Theme ===--------------------------
# utils
set() {
local option=$1
local value=$2
tmux set-option -gq "$option" "$value"
}
setw() {
local option=$1
local value=$2
tmux set-window-option -gq "$option" "$value"
}
# status
set status "on"
set status-bg "${thm_bg}"
set status-justify "left"
set status-left-length "100"
set status-right-length "100"
# messages
set message-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
set message-command-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
# panes
set pane-border-style "fg=${thm_gray}"
set pane-active-border-style "fg=${thm_blue}"
# windows
setw window-status-activity-style "fg=${thm_fg},bg=${thm_bg},none"
setw window-status-separator ""
setw window-status-style "fg=${thm_fg},bg=${thm_bg},none"
# --------=== Statusline
set status-left ""
set status-right "#[fg=$thm_pink,bg=$thm_bg,nobold,nounderscore,noitalics]#[fg=$thm_bg,bg=$thm_pink,nobold,nounderscore,noitalics] #[fg=$thm_fg,bg=$thm_gray] #W #{?client_prefix,#[fg=$thm_red],#[fg=$thm_green]}#[bg=$thm_gray]#{?client_prefix,#[bg=$thm_red],#[bg=$thm_green]}#[fg=$thm_bg] #[fg=$thm_fg,bg=$thm_gray] #S "
# current_dir
setw window-status-format "#[fg=$thm_bg,bg=$thm_blue] #I #[fg=$thm_fg,bg=$thm_gray] #{b:pane_current_path} "
setw window-status-current-format "#[fg=$thm_bg,bg=$thm_orange] #I #[fg=$thm_fg,bg=$thm_bg] #{b:pane_current_path} "
# parent_dir/current_dir
# setw window-status-format "#[fg=colour232,bg=colour111] #I #[fg=colour222,bg=colour235] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# setw window-status-current-format "#[fg=colour232,bg=colour208] #I #[fg=colour255,bg=colour237] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# --------=== Modes
setw clock-mode-colour "${thm_blue}"
setw mode-style "fg=${thm_pink} bg=${thm_black4} bold"

54
tmux/.tmux/plugins/tmux/catppuccin-latte.tmuxtheme Executable file → Normal file
View File

@ -1,5 +1,3 @@
#!/usr/bin/env bash
# NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: "" # NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: ""
# WARNING: hex colors can't contain capital letters # WARNING: hex colors can't contain capital letters
@ -17,55 +15,3 @@ thm_yellow="#df8e1d"
thm_blue="#1e66f5" thm_blue="#1e66f5"
thm_orange="#fe640b" thm_orange="#fe640b"
thm_black4="#acb0be" thm_black4="#acb0be"
# ----------------------------=== Theme ===--------------------------
# utils
set() {
local option=$1
local value=$2
tmux set-option -gq "$option" "$value"
}
setw() {
local option=$1
local value=$2
tmux set-window-option -gq "$option" "$value"
}
# status
set status "on"
set status-bg "${thm_bg}"
set status-justify "left"
set status-left-length "100"
set status-right-length "100"
# messages
set message-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
set message-command-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
# panes
set pane-border-style "fg=${thm_gray}"
set pane-active-border-style "fg=${thm_blue}"
# windows
setw window-status-activity-style "fg=${thm_fg},bg=${thm_bg},none"
setw window-status-separator ""
setw window-status-style "fg=${thm_fg},bg=${thm_bg},none"
# --------=== Statusline
set status-left ""
set status-right "#[fg=$thm_pink,bg=$thm_bg,nobold,nounderscore,noitalics]#[fg=$thm_bg,bg=$thm_pink,nobold,nounderscore,noitalics] #[fg=$thm_fg,bg=$thm_gray] #W #{?client_prefix,#[fg=$thm_red],#[fg=$thm_green]}#[bg=$thm_gray]#{?client_prefix,#[bg=$thm_red],#[bg=$thm_green]}#[fg=$thm_bg] #[fg=$thm_fg,bg=$thm_gray] #S "
# current_dir
setw window-status-format "#[fg=$thm_bg,bg=$thm_blue] #I #[fg=$thm_fg,bg=$thm_gray] #{b:pane_current_path} "
setw window-status-current-format "#[fg=$thm_bg,bg=$thm_orange] #I #[fg=$thm_fg,bg=$thm_bg] #{b:pane_current_path} "
# parent_dir/current_dir
# setw window-status-format "#[fg=colour232,bg=colour111] #I #[fg=colour222,bg=colour235] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# setw window-status-current-format "#[fg=colour232,bg=colour208] #I #[fg=colour255,bg=colour237] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# --------=== Modes
setw clock-mode-colour "${thm_blue}"
setw mode-style "fg=${thm_pink} bg=${thm_black4} bold"

54
tmux/.tmux/plugins/tmux/catppuccin-macchiato.tmuxtheme Executable file → Normal file
View File

@ -1,5 +1,3 @@
#!/usr/bin/env bash
# NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: "" # NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: ""
# WARNING: hex colors can't contain capital letters # WARNING: hex colors can't contain capital letters
@ -17,55 +15,3 @@ thm_yellow="#eed49f"
thm_blue="#8aadf4" thm_blue="#8aadf4"
thm_orange="#f5a97f" thm_orange="#f5a97f"
thm_black4="#5b6078" thm_black4="#5b6078"
# ----------------------------=== Theme ===--------------------------
# utils
set() {
local option=$1
local value=$2
tmux set-option -gq "$option" "$value"
}
setw() {
local option=$1
local value=$2
tmux set-window-option -gq "$option" "$value"
}
# status
set status "on"
set status-bg "${thm_bg}"
set status-justify "left"
set status-left-length "100"
set status-right-length "100"
# messages
set message-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
set message-command-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
# panes
set pane-border-style "fg=${thm_gray}"
set pane-active-border-style "fg=${thm_blue}"
# windows
setw window-status-activity-style "fg=${thm_fg},bg=${thm_bg},none"
setw window-status-separator ""
setw window-status-style "fg=${thm_fg},bg=${thm_bg},none"
# --------=== Statusline
set status-left ""
set status-right "#[fg=$thm_pink,bg=$thm_bg,nobold,nounderscore,noitalics]#[fg=$thm_bg,bg=$thm_pink,nobold,nounderscore,noitalics] #[fg=$thm_fg,bg=$thm_gray] #W #{?client_prefix,#[fg=$thm_red],#[fg=$thm_green]}#[bg=$thm_gray]#{?client_prefix,#[bg=$thm_red],#[bg=$thm_green]}#[fg=$thm_bg] #[fg=$thm_fg,bg=$thm_gray] #S "
# current_dir
setw window-status-format "#[fg=$thm_bg,bg=$thm_blue] #I #[fg=$thm_fg,bg=$thm_gray] #W "
setw window-status-current-format "#[fg=$thm_bg,bg=$thm_orange] #I #[fg=$thm_fg,bg=$thm_bg] #W "
# parent_dir/current_dir
# setw window-status-format "#[fg=colour232,bg=colour111] #I #[fg=colour222,bg=colour235] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# setw window-status-current-format "#[fg=colour232,bg=colour208] #I #[fg=colour255,bg=colour237] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# --------=== Modes
setw clock-mode-colour "${thm_blue}"
setw mode-style "fg=${thm_pink} bg=${thm_black4} bold"

54
tmux/.tmux/plugins/tmux/catppuccin-mocha.tmuxtheme Executable file → Normal file
View File

@ -1,5 +1,3 @@
#!/usr/bin/env bash
# NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: "" # NOTE: you can use vars with $<var> and ${<var>} as long as the str is double quoted: ""
# WARNING: hex colors can't contain capital letters # WARNING: hex colors can't contain capital letters
@ -17,55 +15,3 @@ thm_yellow="#f9e2af"
thm_blue="#89b4fa" thm_blue="#89b4fa"
thm_orange="#fab387" thm_orange="#fab387"
thm_black4="#585b70" thm_black4="#585b70"
# ----------------------------=== Theme ===--------------------------
# utils
set() {
local option=$1
local value=$2
tmux set-option -gq "$option" "$value"
}
setw() {
local option=$1
local value=$2
tmux set-window-option -gq "$option" "$value"
}
# status
set status "on"
set status-bg "${thm_bg}"
set status-justify "left"
set status-left-length "100"
set status-right-length "100"
# messages
set message-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
set message-command-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
# panes
set pane-border-style "fg=${thm_gray}"
set pane-active-border-style "fg=${thm_blue}"
# windows
setw window-status-activity-style "fg=${thm_fg},bg=${thm_bg},none"
setw window-status-separator ""
setw window-status-style "fg=${thm_fg},bg=${thm_bg},none"
# --------=== Statusline
set status-left ""
set status-right "#[fg=$thm_pink,bg=$thm_bg,nobold,nounderscore,noitalics]#[fg=$thm_bg,bg=$thm_pink,nobold,nounderscore,noitalics] #[fg=$thm_fg,bg=$thm_gray] #W #{?client_prefix,#[fg=$thm_red],#[fg=$thm_green]}#[bg=$thm_gray]#{?client_prefix,#[bg=$thm_red],#[bg=$thm_green]}#[fg=$thm_bg] #[fg=$thm_fg,bg=$thm_gray] #S "
# current_dir
setw window-status-format "#[fg=$thm_bg,bg=$thm_blue] #I #[fg=$thm_fg,bg=$thm_gray] #{b:pane_current_path} "
setw window-status-current-format "#[fg=$thm_bg,bg=$thm_orange] #I #[fg=$thm_fg,bg=$thm_bg] #{b:pane_current_path} "
# parent_dir/current_dir
# setw window-status-format "#[fg=colour232,bg=colour111] #I #[fg=colour222,bg=colour235] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# setw window-status-current-format "#[fg=colour232,bg=colour208] #I #[fg=colour255,bg=colour237] #(echo '#{pane_current_path}' | rev | cut -d'/' -f-2 | rev) "
# --------=== Modes
setw clock-mode-colour "${thm_blue}"
setw mode-style "fg=${thm_pink} bg=${thm_black4} bold"

View File

@ -1,23 +1,332 @@
#!/usr/bin/env bash #!/usr/bin/env bash
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" PLUGIN_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
get-tmux-option() { get_tmux_option() {
local option value default local option value default
option="$1" option="$1"
default="$2" default="$2"
value="$(tmux show-option -gqv "$option")" value=$(tmux show-option -gqv "$option")
if [ -n "$value" ]; then if [ -n "$value" ]
then
if [ "$value" = "null" ]
then
echo ""
else
echo "$value" echo "$value"
fi
else else
echo "$default" echo "$default"
fi fi
} }
set() {
local option=$1
local value=$2
tmux_commands+=(set-option -gq "$option" "$value" ";")
}
setw() {
local option=$1
local value=$2
tmux_commands+=(set-window-option -gq "$option" "$value" ";")
}
build_window_icon() {
local window_status_icon_enable=$(get_tmux_option "@catppuccin_window_status_icon_enable" "yes")
local custom_icon_window_last=$(get_tmux_option "@catppuccin_icon_window_last" "󰖰")
local custom_icon_window_current=$(get_tmux_option "@catppuccin_icon_window_current" "󰖯")
local custom_icon_window_zoom=$(get_tmux_option "@catppuccin_icon_window_zoom" "󰁌")
local custom_icon_window_mark=$(get_tmux_option "@catppuccin_icon_window_mark" "󰃀")
local custom_icon_window_silent=$(get_tmux_option "@catppuccin_icon_window_silent" "󰂛")
local custom_icon_window_activity=$(get_tmux_option "@catppuccin_icon_window_activity" "󰖲")
local custom_icon_window_bell=$(get_tmux_option "@catppuccin_icon_window_bell" "󰂞")
if [ "$window_status_icon_enable" = "yes" ]
then
# #!~[*-]MZ
local show_window_status="#{?window_activity_flag,${custom_icon_window_activity},}#{?window_bell_flag,${custom_icon_window_bell},}#{?window_silence_flag,${custom_icon_window_silent},}#{?window_active,${custom_icon_window_current},}#{?window_last_flag,${custom_icon_window_last},}#{?window_marked_flag,${custom_icon_window_mark},}#{?window_zoomed_flag,${custom_icon_window_zoom},}"
fi
if [ "$window_status_icon_enable" = "no" ]
then
local show_window_status="#F"
fi
echo "$show_window_status"
}
build_window_format() {
local number=$1
local color=$2
local background=$3
local text=$4
local fill=$5
if [ "$window_status_enable" = "yes" ]
then
local icon="$( build_window_icon )"
text="$text $icon"
fi
if [ "$fill" = "none" ]
then
local show_left_separator="#[fg=$thm_gray,bg=$thm_bg,nobold,nounderscore,noitalics]$window_left_separator"
local show_number="#[fg=$thm_fg,bg=$thm_gray]$number"
local show_middle_separator="#[fg=$thm_fg,bg=$thm_gray,nobold,nounderscore,noitalics]$window_middle_separator"
local show_text="#[fg=$thm_fg,bg=$thm_gray]$text"
local show_right_separator="#[fg=$thm_gray,bg=$thm_bg]$window_right_separator"
fi
if [ "$fill" = "all" ]
then
local show_left_separator="#[fg=$color,bg=$thm_bg,nobold,nounderscore,noitalics]$window_left_separator"
local show_number="#[fg=$background,bg=$color]$number"
local show_middle_separator="#[fg=$background,bg=$color,nobold,nounderscore,noitalics]$window_middle_separator"
local show_text="#[fg=$background,bg=$color]$text"
local show_right_separator="#[fg=$color,bg=$thm_bg]$window_right_separator"
fi
if [ "$fill" = "number" ]
then
local show_number="#[fg=$background,bg=$color]$number"
local show_middle_separator="#[fg=$color,bg=$background,nobold,nounderscore,noitalics]$window_middle_separator"
local show_text="#[fg=$thm_fg,bg=$background]$text"
if [ "$window_number_position" = "right" ]
then
local show_left_separator="#[fg=$background,bg=$thm_bg,nobold,nounderscore,noitalics]$window_left_separator"
local show_right_separator="#[fg=$color,bg=$thm_bg]$window_right_separator"
fi
if [ "$window_number_position" = "left" ]
then
local show_right_separator="#[fg=$background,bg=$thm_bg,nobold,nounderscore,noitalics]$window_right_separator"
local show_left_separator="#[fg=$color,bg=$thm_bg]$window_left_separator"
fi
fi
local final_window_format
if [ "$window_number_position" = "right" ]
then
final_window_format="$show_left_separator$show_text$show_middle_separator$show_number$show_right_separator"
fi
if [ "$window_number_position" = "left" ]
then
final_window_format="$show_left_separator$show_number$show_middle_separator$show_text$show_right_separator"
fi
echo "$final_window_format"
}
build_status_module() {
local index=$1
local icon=$2
local color=$3
local text=$4
if [ "$status_fill" = "icon" ]
then
local show_left_separator="#[fg=$color,bg=$thm_gray,nobold,nounderscore,noitalics]$status_left_separator"
local show_icon="#[fg=$thm_bg,bg=$color,nobold,nounderscore,noitalics]$icon "
local show_text="#[fg=$thm_fg,bg=$thm_gray] $text"
local show_right_separator="#[fg=$thm_gray,bg=$thm_bg,nobold,nounderscore,noitalics]$status_right_separator"
if [ "$status_connect_separator" = "yes" ]
then
local show_left_separator="#[fg=$color,bg=$thm_gray,nobold,nounderscore,noitalics]$status_left_separator"
local show_right_separator="#[fg=$thm_gray,bg=$thm_gray,nobold,nounderscore,noitalics]$status_right_separator"
else
local show_left_separator="#[fg=$color,bg=$thm_bg,nobold,nounderscore,noitalics]$status_left_separator"
local show_right_separator="#[fg=$thm_gray,bg=$thm_bg,nobold,nounderscore,noitalics]$status_right_separator"
fi
fi
if [ "$status_fill" = "all" ]
then
local show_left_separator="#[fg=$color,bg=$thm_gray,nobold,nounderscore,noitalics]$status_left_separator"
local show_icon="#[fg=$thm_bg,bg=$color,nobold,nounderscore,noitalics]$icon "
local show_text="#[fg=$thm_bg,bg=$color]$text"
local show_right_separator="#[fg=$color,bg=$thm_gray,nobold,nounderscore,noitalics]$status_right_separator"
if [ "$status_connect_separator" = "yes" ]
then
local show_left_separator="#[fg=$color,nobold,nounderscore,noitalics]$status_left_separator"
local show_right_separator="#[fg=$color,bg=$color,nobold,nounderscore,noitalics]$status_right_separator"
else
local show_left_separator="#[fg=$color,bg=$thm_bg,nobold,nounderscore,noitalics]$status_left_separator"
local show_right_separator="#[fg=$color,bg=$thm_bg,nobold,nounderscore,noitalics]$status_right_separator"
fi
fi
if [ "$status_right_separator_inverse" = "yes" ]
then
if [ "$status_connect_separator" = "yes" ]
then
local show_right_separator="#[fg=$thm_gray,bg=$color,nobold,nounderscore,noitalics]$status_right_separator"
else
local show_right_separator="#[fg=$thm_bg,bg=$color,nobold,nounderscore,noitalics]$status_right_separator"
fi
fi
if [ $(($index)) -eq 0 ]
then
local show_left_separator="#[fg=$color,bg=$thm_bg,nobold,nounderscore,noitalics]$status_left_separator"
fi
echo "$show_left_separator$show_icon$show_text$show_right_separator"
}
load_modules() {
local modules_list=$1
local modules_custom_path=$PLUGIN_DIR/custom
local modules_status_path=$PLUGIN_DIR/status
local modules_window_path=$PLUGIN_DIR/window
local module_index=0;
local module_name
local loaded_modules
local IN=$modules_list
# https://stackoverflow.com/questions/918886/how-do-i-split-a-string-on-a-delimiter-in-bash#15988793
while [ "$IN" != "$iter" ] ;do
# extract the substring from start of string up to delimiter.
iter=${IN%% *}
# delete this first "element" AND next separator, from $IN.
IN="${IN#$iter }"
# Print (or doing anything with) the first "element".
module_name=$iter
local module_path=$modules_custom_path/$module_name.sh
source $module_path
if [ 0 -eq $? ]
then
loaded_modules="$loaded_modules$( show_$module_name $module_index )"
module_index=$module_index+1
continue
fi
local module_path=$modules_status_path/$module_name.sh
source $module_path
if [ 0 -eq $? ]
then
loaded_modules="$loaded_modules$( show_$module_name $module_index )"
module_index=$module_index+1
continue
fi
local module_path=$modules_window_path/$module_name.sh
source $module_path
if [ 0 -eq $? ]
then
loaded_modules="$loaded_modules$( show_$module_name $module_index )"
module_index=$module_index+1
continue
fi
done
echo "$loaded_modules"
}
main() { main() {
local theme local theme
theme="$(get-tmux-option "@catppuccin_flavour" "mocha")" theme="$(get_tmux_option "@catppuccin_flavour" "mocha")"
tmux run -b "$CURRENT_DIR/catppuccin-${theme}.tmuxtheme"
# Aggregate all commands in one array
local tmux_commands=()
# NOTE: Pulling in the selected theme by the theme that's being set as local
# variables.
# shellcheck source=catppuccin-frappe.tmuxtheme
# https://github.com/dylanaraps/pure-sh-bible#parsing-a-keyval-file
while IFS='=' read -r key val; do
# Skip over lines containing comments.
# (Lines starting with '#').
[ "${key##\#*}" ] || continue
# '$key' stores the key.
# '$val' stores the value.
eval "local $key"="$val"
done < "${PLUGIN_DIR}/catppuccin-${theme}.tmuxtheme"
# status
set status "on"
set status-bg "${thm_bg}"
set status-justify "left"
set status-left-length "100"
set status-right-length "100"
# messages
set message-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
set message-command-style "fg=${thm_cyan},bg=${thm_gray},align=centre"
# panes
set pane-border-style "fg=${thm_gray}"
set pane-active-border-style "fg=${thm_blue}"
# windows
setw window-status-activity-style "fg=${thm_fg},bg=${thm_bg},none"
setw window-status-separator ""
setw window-status-style "fg=${thm_fg},bg=${thm_bg},none"
# --------=== Statusline
local window_left_separator=$(get_tmux_option "@catppuccin_window_left_separator" "█")
local window_right_separator=$(get_tmux_option "@catppuccin_window_right_separator" "█")
local window_middle_separator=$(get_tmux_option "@catppuccin_window_middle_separator" "█ ")
local window_number_position=$(get_tmux_option "@catppuccin_window_number_position" "left") # right, left
local window_status_enable=$(get_tmux_option "@catppuccin_window_status_enable" "no") # right, left
local window_format=$( load_modules "window_default_format")
local window_current_format=$( load_modules "window_current_format")
setw window-status-format "$window_format"
setw window-status-current-format "$window_current_format"
local status_left_separator=$(get_tmux_option "@catppuccin_status_left_separator" "")
local status_right_separator=$(get_tmux_option "@catppuccin_status_right_separator" "█")
local status_right_separator_inverse=$(get_tmux_option "@catppuccin_status_right_separator_inverse" "no")
local status_connect_separator=$(get_tmux_option "@catppuccin_status_connect_separator" "yes")
local status_fill=$(get_tmux_option "@catppuccin_status_fill" "icon")
local status_modules_right=$(get_tmux_option "@catppuccin_status_modules_right" "application session")
local loaded_modules_right=$( load_modules "$status_modules_right")
local status_modules_left=$(get_tmux_option "@catppuccin_status_modules_left" "")
local loaded_modules_left=$( load_modules "$status_modules_left")
set status-left "$loaded_modules_left"
set status-right "$loaded_modules_right"
# --------=== Modes
#
setw clock-mode-colour "${thm_blue}"
setw mode-style "fg=${thm_pink} bg=${thm_black4} bold"
tmux "${tmux_commands[@]}"
} }
main "$@" main "$@"

View File

@ -0,0 +1,10 @@
show_application() {
local index=$1
local icon=$(get_tmux_option "@catppuccin_application_icon" "")
local color=$(get_tmux_option "@catppuccin_application_color" "$thm_pink")
local text=$(get_tmux_option "@catppuccin_application_text" "#W")
local module=$( build_status_module "$index" "$icon" "$color" "$text" )
echo "$module"
}

View File

@ -0,0 +1,23 @@
show_battery() {
tmux set-option -g @batt_icon_charge_tier8 '󰁹'
tmux set-option -g @batt_icon_charge_tier7 '󰂁'
tmux set-option -g @batt_icon_charge_tier6 '󰁿'
tmux set-option -g @batt_icon_charge_tier5 '󰁾'
tmux set-option -g @batt_icon_charge_tier4 '󰁽'
tmux set-option -g @batt_icon_charge_tier3 '󰁼'
tmux set-option -g @batt_icon_charge_tier2 '󰁻'
tmux set-option -g @batt_icon_charge_tier1 '󰁺'
tmux set-option -g @batt_icon_status_charged '󰚥'
tmux set-option -g @batt_icon_status_charging '󰂄'
tmux set-option -g @batt_icon_status_discharging '󰂃'
tmux set-option -g @batt_icon_status_unknown '󰂑'
local index=$1
local icon=$(get_tmux_option "@catppuccin_battery_icon" "#{battery_icon}")
local color=$(get_tmux_option "@catppuccin_battery_color" "$thm_yellow")
local text=$(get_tmux_option "@catppuccin_battery_text" "#{battery_percentage}")
local module=$( build_status_module "$index" "$icon" "$color" "$text" )
echo "$module"
}

View File

@ -0,0 +1,11 @@
show_date_time() {
local index=$1
local icon="$(get_tmux_option "@catppuccin_date_time_icon" "󰃰")"
local color="$(get_tmux_option "@catppuccin_date_time_color" "$thm_blue")"
local text="$(get_tmux_option "@catppuccin_date_time_text" "%Y-%m-%d %H:%M")"
local module=$( build_status_module "$index" "$icon" "$color" "$text" )
echo "$module"
}

View File

@ -0,0 +1,10 @@
show_directory() {
local index=$1
local icon=$(get_tmux_option "@catppuccin_directory_icon" "")
local color=$(get_tmux_option "@catppuccin_directory_color" "$thm_pink")
local text=$(get_tmux_option "@catppuccin_directory_text" "#{b:pane_current_path}")
local module=$( build_status_module "$index" "$icon" "$color" "$text" )
echo "$module"
}

View File

@ -0,0 +1,10 @@
show_host() {
local index=$1
local icon=$(get_tmux_option "@catppuccin_host_icon" "󰒋")
local color=$(get_tmux_option "@catppuccin_host_color" "$thm_magenta")
local text=$(get_tmux_option "@catppuccin_host_text" "#H")
local module=$( build_status_module "$index" "$icon" "$color" "$text" )
echo "$module"
}

View File

@ -0,0 +1,10 @@
show_session() {
local index=$1
local icon=$(get_tmux_option "@catppuccin_session_icon" "")
local color=$(get_tmux_option "@catppuccin_session_color" "#{?client_prefix,$thm_red,$thm_green}")
local text=$(get_tmux_option "@catppuccin_session_text" "#S")
local module=$( build_status_module "$index" "$icon" "$color" "$text" )
echo "$module"
}

View File

@ -0,0 +1,10 @@
show_user() {
local index=$1
local icon=$(get_tmux_option "@catppuccin_user_icon" "")
local color=$(get_tmux_option "@catppuccin_user_color" "$thm_cyan")
local text=$(get_tmux_option "@catppuccin_user_text" "#(whoami)")
local module=$( build_status_module "$index" "$icon" "$color" "$text" )
echo "$module"
}

View File

@ -0,0 +1,11 @@
show_window_current_format() {
local number="#I"
local color="$thm_orange"
local background="$thm_bg"
local text="$(get_tmux_option "@catppuccin_window_current_text" "#{b:pane_current_path}")" # use #W for application instead of directory
local fill="$(get_tmux_option "@catppuccin_window_current_fill" "number")" # number, all, none
local current_window_format=$( build_window_format "$number" "$color" "$background" "$text" "$fill" )
echo "$current_window_format"
}

View File

@ -0,0 +1,11 @@
show_window_default_format() {
local number="#I"
local color="$thm_blue"
local background="$thm_gray"
local text="$(get_tmux_option "@catppuccin_window_default_text" "#{b:pane_current_path}")" # use #W for application instead of directory
local fill="$(get_tmux_option "@catppuccin_window_default_fill" "number")" # number, all, none
local default_window_format=$( build_window_format "$number" "$color" "$background" "$text" "$fill" )
echo "$default_window_format"
}

View File

@ -53,6 +53,31 @@ If you are using Vim 8+, you don't need any plugin manager. Simply clone this re
git clone git@github.com:christoomey/vim-tmux-navigator.git ~/.vim/pack/plugins/start/vim-tmux-navigator git clone git@github.com:christoomey/vim-tmux-navigator.git ~/.vim/pack/plugins/start/vim-tmux-navigator
``` ```
### lazy.nvim
If you are using [lazy.nvim](https://github.com/folke/lazy.nvim). Add the following plugin to your configuration.
```lua
{
"christoomey/vim-tmux-navigator",
cmd = {
"TmuxNavigateLeft",
"TmuxNavigateDown",
"TmuxNavigateUp",
"TmuxNavigateRight",
"TmuxNavigatePrevious",
},
keys = {
{ "<c-h>", "<cmd><C-U>TmuxNavigateLeft<cr>" },
{ "<c-j>", "<cmd><C-U>TmuxNavigateDown<cr>" },
{ "<c-k>", "<cmd><C-U>TmuxNavigateUp<cr>" },
{ "<c-l>", "<cmd><C-U>TmuxNavigateRight<cr>" },
{ "<c-\\>", "<cmd><C-U>TmuxNavigatePrevious<cr>" },
},
}
```
Then, restart Neovim and lazy.nvim will automatically install the plugin and configure the keybindings.
### tmux ### tmux

0
vim/.vim/icons.lua Normal file
View File

View File

@ -4,7 +4,6 @@ return {
-- "sindrets/diffview.nvim", -- "sindrets/diffview.nvim",
{ "johmsalas/text-case.nvim" }, { "johmsalas/text-case.nvim" },
{ "nvim-lua/plenary.nvim", lazy = false }, { "nvim-lua/plenary.nvim", lazy = false },
{ "nvim-tree/nvim-web-devicons", lazy = false },
{ "squk/java-syntax.vim", ft = "java" }, { "squk/java-syntax.vim", ft = "java" },
{ "squk/gdrama-syntax.vim", dir = vim.fn.expand("$HOME/dev/gdrama-syntax.vim") }, { "squk/gdrama-syntax.vim", dir = vim.fn.expand("$HOME/dev/gdrama-syntax.vim") },
{ {
@ -12,6 +11,16 @@ return {
dependencies = { "nvim-lua/plenary.nvim" }, dependencies = { "nvim-lua/plenary.nvim" },
opts = {}, opts = {},
}, },
{
"mawkler/modicator.nvim",
init = function()
-- These are required for Modicator to work
vim.o.cursorline = true
vim.o.number = true
vim.o.termguicolors = true
end,
opts = {},
},
{ {
"NvChad/nvim-colorizer.lua", "NvChad/nvim-colorizer.lua",
ft = "lua", ft = "lua",
@ -37,6 +46,7 @@ return {
}) })
end, end,
}, },
"kdheepak/lazygit.nvim",
"flwyd/vim-conjoin", "flwyd/vim-conjoin",
"godlygeek/tabular", "godlygeek/tabular",
"wesQ3/vim-windowswap", "wesQ3/vim-windowswap",
@ -74,7 +84,7 @@ return {
}, },
cmd = { "AerialToggle", "AerialOn" }, cmd = { "AerialToggle", "AerialOn" },
keys = { keys = {
{ "<leader>so", ":AerialToggle<CR>", desc = "[S]ymbols [O]utline" }, { "<leader>so", ":AerialToggle<CR>", desc = "[S]symbols [O]utline" },
}, },
}, },
{ {
@ -83,12 +93,6 @@ return {
require("auto-session").setup({ log_level = "error" }) require("auto-session").setup({ log_level = "error" })
end, end,
}, },
{
"ipod825/libp.nvim",
config = function()
require("libp").setup()
end,
},
{ {
"iamcco/markdown-preview.nvim", "iamcco/markdown-preview.nvim",
build = "cd app && npm install", build = "cd app && npm install",

View File

@ -68,6 +68,7 @@ return {
cmp.setup.cmdline(":", { cmp.setup.cmdline(":", {
mapping = cmp.mapping.preset.cmdline(), mapping = cmp.mapping.preset.cmdline(),
sources = cmp.config.sources({ sources = cmp.config.sources({
{ name = "nvim_lsp_signature_help", priority = 9 },
{ name = "async_path" }, { name = "async_path" },
{ name = "cmdline", option = { ignore_cmds = { "edit", "write", "tabedit" } } }, { name = "cmdline", option = { ignore_cmds = { "edit", "write", "tabedit" } } },
}), }),

View File

@ -1,5 +1,5 @@
return { return {
url = "https://git.sr.ht/~whynothugo/lsp_lines.nvim", "Maan2003/lsp_lines.nvim",
event = "VimEnter", event = "VimEnter",
name = "lsp_lines.nvim", name = "lsp_lines.nvim",
config = function() config = function()
@ -19,7 +19,10 @@ return {
vim.schedule(function() vim.schedule(function()
vim.diagnostic.config({ vim.diagnostic.config({
virtual_text = true, virtual_text = false,
virtual_improved = {
current_line = "hide",
},
virtual_lines = { highlight_whole_line = false, only_current_line = true }, virtual_lines = { highlight_whole_line = false, only_current_line = true },
}) })
end) end)

View File

@ -24,7 +24,6 @@ return {
"omnisharp_mono", "omnisharp_mono",
"tsserver", "tsserver",
"gopls", "gopls",
"markdown_lint",
"docker_compose_language_service", "docker_compose_language_service",
"dockerls", "dockerls",
"graphql", "graphql",

View File

@ -1,6 +1,8 @@
return { return {
{
"rcarriga/nvim-notify", "rcarriga/nvim-notify",
event = "VimEnter", event = "VimEnter",
cond = false,
lazy = true, lazy = true,
config = function() config = function()
-- local colors = require("catppuccin.palettes").get_palette() -- local colors = require("catppuccin.palettes").get_palette()
@ -13,4 +15,35 @@ return {
}) })
vim.notify = require("notify") vim.notify = require("notify")
end, end,
},
{
"j-hui/fidget.nvim",
event = "VimEnter",
cond = true,
opts = {
progress = {
display = {
done_ttl = 5,
done_icon = "󰞑 ",
},
},
notification = {
override_vim_notify = true,
},
},
},
-- {
-- "echasnovski/mini.notify",
-- version = false,
-- dependencies = {
-- "rcarriga/nvim-notify",
-- "j-hui/fidget.nvim",
-- },
-- config = function()
-- vim.notify = function(msg, level, opts)
-- require("fidget").notify(msg, level, opts)
-- require("mini.notify").make_notify()(msg, level, opts)
-- end
-- end,
-- },
} }

View File

@ -0,0 +1,28 @@
return {
"nvim-tree/nvim-web-devicons",
lazy = false,
config = function()
require("nvim-web-devicons").set_icon({
rs = {
icon = "",
color = "#dea584",
cterm_color = "65",
name = "Rust",
},
})
end,
-- {
-- "ipod825/libp.nvim",
-- config = function()
-- require("libp").setup({
-- integration = {
-- web_devicon = {
-- icons = {
-- ["rs"] = { icon = "", name = "Rust", hl = { fg = "#dea584", underline = true } },
-- },
-- },
-- },
-- })
-- end,
-- },
}

View File

@ -1,4 +1,18 @@
return { return {
{
"luozhiya/lsp-virtual-improved.nvim",
event = { "LspAttach" },
config = function()
require("lsp-virtual-improved").setup()
end,
},
{
"dgagn/diagflow.nvim",
opts = {
toggle_event = { "InsertEnter" },
},
},
{
"folke/trouble.nvim", "folke/trouble.nvim",
event = "VimEnter", event = "VimEnter",
config = function() config = function()
@ -22,4 +36,5 @@ return {
{ "[g", "<cmd>lua vim.diagnostic.goto_prev()<CR>" }, { "[g", "<cmd>lua vim.diagnostic.goto_prev()<CR>" },
{ "]g", "<cmd>lua vim.diagnostic.goto_next()<CR>" }, { "]g", "<cmd>lua vim.diagnostic.goto_next()<CR>" },
}, },
},
} }