goog
This commit is contained in:
@ -5,9 +5,9 @@
|
|||||||
"aerial.nvim": { "branch": "master", "commit": "e9661d4f739508377f42528fd08a85c4c8feba6e" },
|
"aerial.nvim": { "branch": "master", "commit": "e9661d4f739508377f42528fd08a85c4c8feba6e" },
|
||||||
"ai.nvim": { "branch": "main", "commit": "ab6b6f54612500f48d4d34fcf81529946b9338f3" },
|
"ai.nvim": { "branch": "main", "commit": "ab6b6f54612500f48d4d34fcf81529946b9338f3" },
|
||||||
"asyncrun.vim": { "branch": "master", "commit": "61cc3081963a12048e00e89f8cedc8bd1cb83b8c" },
|
"asyncrun.vim": { "branch": "master", "commit": "61cc3081963a12048e00e89f8cedc8bd1cb83b8c" },
|
||||||
"bufferline.nvim": { "branch": "main", "commit": "6c456b888823d9e4832aa91c482bccd19445c009" },
|
"bufferline.nvim": { "branch": "main", "commit": "d6cb9b7cac52887bcac65f8698e67479553c0748" },
|
||||||
"catppuccin": { "branch": "main", "commit": "bc1f2151f23227ba02ac203c2c59ad693352a741" },
|
"catppuccin": { "branch": "main", "commit": "c2e6f8e7eb8d0ebf55700c89bdf842809aeecf09" },
|
||||||
"ciderlsp-nvim": { "branch": "main", "commit": "00a86f96f4b8b9e94f0978c2db316447cc30a573" },
|
"ciderlsp-nvim": { "branch": "main", "commit": "16d7b742ad22a5534a22d2ba06516ab611ab1e7b" },
|
||||||
"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" },
|
||||||
"cmp-calc": { "branch": "main", "commit": "ce91d14d2e7a8b3f6ad86d85e34d41c1ae6268d9" },
|
"cmp-calc": { "branch": "main", "commit": "ce91d14d2e7a8b3f6ad86d85e34d41c1ae6268d9" },
|
||||||
@ -25,17 +25,17 @@
|
|||||||
"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" },
|
||||||
"conflict-marker.vim": { "branch": "master", "commit": "11a4d42244755505b66b15cd4496a150432eb5e3" },
|
"conflict-marker.vim": { "branch": "master", "commit": "11a4d42244755505b66b15cd4496a150432eb5e3" },
|
||||||
"conform.nvim": { "branch": "master", "commit": "d99b75b4aedf0e912f41c5740a7267de739cddac" },
|
"conform.nvim": { "branch": "master", "commit": "4588008a7c5b57fbff97fdfb529c059235cdc7ee" },
|
||||||
"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": "0c81cd2bab372bba99815f505eb1fe759d38dd88" },
|
"debugprint.nvim": { "branch": "main", "commit": "0c81cd2bab372bba99815f505eb1fe759d38dd88" },
|
||||||
"ferris.nvim": { "branch": "main", "commit": "52e39c017f511e8cf9a024022d48164bfbfe52ee" },
|
"ferris.nvim": { "branch": "main", "commit": "52e39c017f511e8cf9a024022d48164bfbfe52ee" },
|
||||||
"fidget.nvim": { "branch": "main", "commit": "3a93300c076109d86c7ce35ec67a8034ae6ba9db" },
|
"fidget.nvim": { "branch": "main", "commit": "1d1042d418ee8cb70d68f1e38db639844331c093" },
|
||||||
"firenvim": { "branch": "master", "commit": "f2dd6d3bcf3309a7dd30c79b3b3c03ab55cea6e2" },
|
"firenvim": { "branch": "master", "commit": "f2dd6d3bcf3309a7dd30c79b3b3c03ab55cea6e2" },
|
||||||
"friendly-snippets": { "branch": "main", "commit": "aced40b66b7bae9bc2c37fd7b11841d54727a7b0" },
|
"friendly-snippets": { "branch": "main", "commit": "b8fae73a479ae0a1c54f5c98fa687ae8a0addc53" },
|
||||||
"fzf": { "branch": "master", "commit": "da752fc9a4b3cb9dd08cc80614a491f980436b46" },
|
"fzf": { "branch": "master", "commit": "dd886d22f0b95700ece24954ac00f6e2628226f1" },
|
||||||
"fzf.vim": { "branch": "master", "commit": "f6cb5b17897ff0c38f60fecd4b529678bcfec259" },
|
"fzf.vim": { "branch": "master", "commit": "f6cb5b17897ff0c38f60fecd4b529678bcfec259" },
|
||||||
"gcert.nvim": { "branch": "main", "commit": "9dce1af29c31b97a51bab24e25695c25a367141e" },
|
"gcert.nvim": { "branch": "main", "commit": "8b4b68ce8eeaf54240b55a28081d3a2be1631e95" },
|
||||||
"git-conflict.nvim": { "branch": "main", "commit": "4c8e252b87d54d944c1e56bfb477f78b6fdaf661" },
|
"git-conflict.nvim": { "branch": "main", "commit": "4c8e252b87d54d944c1e56bfb477f78b6fdaf661" },
|
||||||
"go.nvim": { "branch": "master", "commit": "24d2fa373d55d9900cd4b502a88214dc17e6fab6" },
|
"go.nvim": { "branch": "master", "commit": "24d2fa373d55d9900cd4b502a88214dc17e6fab6" },
|
||||||
"googlepaths.nvim": { "branch": "main", "commit": "b46baaaec3f5dbf634d2ea722bb89c376f4eaecb" },
|
"googlepaths.nvim": { "branch": "main", "commit": "b46baaaec3f5dbf634d2ea722bb89c376f4eaecb" },
|
||||||
@ -46,27 +46,27 @@
|
|||||||
"kotlin-vim": { "branch": "master", "commit": "53fe045906df8eeb07cb77b078fc93acda6c90b8" },
|
"kotlin-vim": { "branch": "master", "commit": "53fe045906df8eeb07cb77b078fc93acda6c90b8" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "aedcd79811d491b60d0a6577a9c1701063c2a609" },
|
"lazy.nvim": { "branch": "main", "commit": "aedcd79811d491b60d0a6577a9c1701063c2a609" },
|
||||||
"lazygit.nvim": { "branch": "main", "commit": "1e08e3f5ac1152339690140e61a4a32b3bdc7de5" },
|
"lazygit.nvim": { "branch": "main", "commit": "1e08e3f5ac1152339690140e61a4a32b3bdc7de5" },
|
||||||
"leap.nvim": { "branch": "main", "commit": "9f7cf0a87ca2c3f47df37ef6787d34a65604d248" },
|
"leap.nvim": { "branch": "main", "commit": "14eda5bb233354933baa99b6d40bef3a40dbeaae" },
|
||||||
"libp.nvim": { "branch": "main", "commit": "636b1748e92f66022c1763f32b2ded6b8606eda5" },
|
"libp.nvim": { "branch": "main", "commit": "636b1748e92f66022c1763f32b2ded6b8606eda5" },
|
||||||
"lsp-status.nvim": { "branch": "master", "commit": "54f48eb5017632d81d0fd40112065f1d062d0629" },
|
"lsp-status.nvim": { "branch": "master", "commit": "54f48eb5017632d81d0fd40112065f1d062d0629" },
|
||||||
"lsp-virtual-improved.nvim": { "branch": "master", "commit": "db9cd544b7febdf4c48374e351b3903143b4477d" },
|
"lsp-virtual-improved.nvim": { "branch": "master", "commit": "db9cd544b7febdf4c48374e351b3903143b4477d" },
|
||||||
"lsp-zero.nvim": { "branch": "v3.x", "commit": "c129311f4867675a52551b0a7ef12186308be00b" },
|
"lsp-zero.nvim": { "branch": "v3.x", "commit": "e14aa165d820fc8943704c273e27fbce4a96b29f" },
|
||||||
"lsp_lines.nvim": { "branch": "main", "commit": "dbfd8e96ec2696e1ceedcd23fd70e842256e3dea" },
|
"lsp_lines.nvim": { "branch": "main", "commit": "dbfd8e96ec2696e1ceedcd23fd70e842256e3dea" },
|
||||||
"lspkind.nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" },
|
"lspkind.nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" },
|
||||||
"lualine.nvim": { "branch": "master", "commit": "566b7036f717f3d676362742630518a47f132fff" },
|
"lualine.nvim": { "branch": "master", "commit": "7d131a8d3ba5016229e8a1d08bf8782acea98852" },
|
||||||
"luasnip-google.nvim": { "branch": "main", "commit": "5fd7feb144de0ecea837618c9c9e1bbecc0e3243" },
|
"luasnip-google.nvim": { "branch": "main", "commit": "5fd7feb144de0ecea837618c9c9e1bbecc0e3243" },
|
||||||
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
|
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
|
||||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "b9084b1f42f790d6230dc66dbcb6bcc35b148552" },
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "b9084b1f42f790d6230dc66dbcb6bcc35b148552" },
|
||||||
"mason.nvim": { "branch": "main", "commit": "9c9416817c9f4e6f333c749327a1ed5355cfab61" },
|
"mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" },
|
||||||
"mellifluous.nvim": { "branch": "main", "commit": "da719202489e37e3d5de29b5a0d650fa7f980cfd" },
|
"mellifluous.nvim": { "branch": "main", "commit": "da719202489e37e3d5de29b5a0d650fa7f980cfd" },
|
||||||
"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": "e7ca4a2ea0da5e39a639c08c3edb352b9355f09e" },
|
"neodev.nvim": { "branch": "main", "commit": "345ed5843405126464119154f394d4298c1314c7" },
|
||||||
"neoscopes": { "branch": "main", "commit": "470dff042004b93c10d262e8b0ad7bf6f703f86f" },
|
"neoscopes": { "branch": "main", "commit": "470dff042004b93c10d262e8b0ad7bf6f703f86f" },
|
||||||
"neovim-ayu": { "branch": "master", "commit": "6463d39253bb70e2b867fce57f9e7174f657bd1b" },
|
"neovim-ayu": { "branch": "master", "commit": "6463d39253bb70e2b867fce57f9e7174f657bd1b" },
|
||||||
"neovim-throttle-debounce": { "branch": "main", "commit": "5247b097df15016ab31db672b77ec4938bb9cbfd" },
|
"neovim-throttle-debounce": { "branch": "main", "commit": "5247b097df15016ab31db672b77ec4938bb9cbfd" },
|
||||||
"nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" },
|
"nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" },
|
||||||
"nvgoog": { "branch": "main", "commit": "8e1dd8f5bdfce3d634e4d9e0c9482170a43cb8c2" },
|
"nvgoog": { "branch": "main", "commit": "1a4905bc039dd3c3db9899ff474de54d2efbb722" },
|
||||||
"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" },
|
||||||
@ -75,33 +75,33 @@
|
|||||||
"nvim-hlslens": { "branch": "main", "commit": "8ffc64bb6b624612cf762982b92633f283f7a715" },
|
"nvim-hlslens": { "branch": "main", "commit": "8ffc64bb6b624612cf762982b92633f283f7a715" },
|
||||||
"nvim-jdtls": { "branch": "master", "commit": "66b5ace68a5d1c45fdfb1afa8d847e87af2aa1f8" },
|
"nvim-jdtls": { "branch": "master", "commit": "66b5ace68a5d1c45fdfb1afa8d847e87af2aa1f8" },
|
||||||
"nvim-lightbulb": { "branch": "master", "commit": "8f00b89dd1b1dbde16872bee5fbcee2e58c9b8e9" },
|
"nvim-lightbulb": { "branch": "master", "commit": "8f00b89dd1b1dbde16872bee5fbcee2e58c9b8e9" },
|
||||||
"nvim-lint": { "branch": "master", "commit": "2cf9ad095130755d7d87f1730bcf33c91ee822e4" },
|
"nvim-lint": { "branch": "master", "commit": "8e5920f9ce9f24c283a2e64be5fe58d1d37d1744" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "8917d2c830e04bf944a699b8c41f097621283828" },
|
"nvim-lspconfig": { "branch": "master", "commit": "d9e87768466f91c071375517b170da5fad7b41f5" },
|
||||||
"nvim-luapad": { "branch": "master", "commit": "a5b3d6aa1fe5fe75e6124927392a9d3a60a0ecce" },
|
"nvim-luapad": { "branch": "master", "commit": "a5b3d6aa1fe5fe75e6124927392a9d3a60a0ecce" },
|
||||||
"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": "81660800352ecab6a2e95f4ca30d637df1f3765e" },
|
"nvim-treesitter": { "branch": "master", "commit": "ba6454783493ac3a5dd209c25e491640b07bd8de" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "b427ac5f9dff494f839e81441fb3f04a58cbcfbc" },
|
"nvim-web-devicons": { "branch": "master", "commit": "aaec87dbdaa776bfa0a13c8694bec9bcb7454719" },
|
||||||
"omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "4be2e8689067494ed7e5a4f1221adc31d1a07783" },
|
"omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "4be2e8689067494ed7e5a4f1221adc31d1a07783" },
|
||||||
"onedark.nvim": { "branch": "main", "commit": "b5161f0c631571640485be5d1c059cab82c86872" },
|
"onedark.nvim": { "branch": "main", "commit": "b5161f0c631571640485be5d1c059cab82c86872" },
|
||||||
"persisted.nvim": { "branch": "main", "commit": "edd8aa41cd87f9da1b6ef0c584068dea192f65b7" },
|
"persisted.nvim": { "branch": "main", "commit": "edd8aa41cd87f9da1b6ef0c584068dea192f65b7" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "663246936325062427597964d81d30eaa42ab1e4" },
|
"plenary.nvim": { "branch": "master", "commit": "4f71c0c4a196ceb656c824a70792f3df3ce6bb6d" },
|
||||||
"refactoring.nvim": { "branch": "master", "commit": "f4546284059f7dc01f65be93d03f6c850fd2aba1" },
|
"refactoring.nvim": { "branch": "master", "commit": "aff2e21e2f1a19d302adceb4e7d0fafbb3ae59a9" },
|
||||||
"rustaceanvim": { "branch": "master", "commit": "94dbc3479630b79f1fc05bad91dfeede50b9036c" },
|
"rustaceanvim": { "branch": "master", "commit": "bc8c4b8f7606d5b7c067cd8369e25c1a7ff77bd0" },
|
||||||
"scope.nvim": { "branch": "main", "commit": "cd27af77ad61a7199af5c28d27013fb956eb0e3e" },
|
"scope.nvim": { "branch": "main", "commit": "cd27af77ad61a7199af5c28d27013fb956eb0e3e" },
|
||||||
"sonokai": { "branch": "master", "commit": "42822f8f9b3a5088f05cf72a0aa1477598ad1a40" },
|
"sonokai": { "branch": "master", "commit": "42822f8f9b3a5088f05cf72a0aa1477598ad1a40" },
|
||||||
"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-import.nvim": { "branch": "main", "commit": "08e31708451b43d1ef766d370d5ef17e9f0c24ae" },
|
"telescope-import.nvim": { "branch": "main", "commit": "08e31708451b43d1ef766d370d5ef17e9f0c24ae" },
|
||||||
"telescope.nvim": { "branch": "master", "commit": "301505da4bb72d11ffeee47ad45e0b677f70abe5" },
|
"telescope.nvim": { "branch": "master", "commit": "e54fbf4ab2b64640b639b75c006c23b4bc51c86f" },
|
||||||
"telescope_citc": { "branch": "main", "commit": "f0f74127e262d097119d2946634d3aa7e49b0c2f" },
|
"telescope_citc": { "branch": "main", "commit": "56eae89663154f0ccbd4bfd1259d4a56e383abb1" },
|
||||||
"telescope_codesearch": { "branch": "main", "commit": "a26077ad3c68cf897ae1c31da903d6516ebb9c92" },
|
"telescope_codesearch": { "branch": "main", "commit": "a26077ad3c68cf897ae1c31da903d6516ebb9c92" },
|
||||||
"telescope_fig": { "branch": "main", "commit": "f6122fe82417ebeaddb9343cfd5584f62a4b8df8" },
|
"telescope_fig": { "branch": "main", "commit": "f6122fe82417ebeaddb9343cfd5584f62a4b8df8" },
|
||||||
"text-case.nvim": { "branch": "main", "commit": "6bc91cde614bbec6f0befbaf7fcd302415d803fb" },
|
"text-case.nvim": { "branch": "main", "commit": "6bc91cde614bbec6f0befbaf7fcd302415d803fb" },
|
||||||
"time-ago.vim": { "branch": "master", "commit": "be978d5c790cfcc41f524205f28783b9937fd0ee" },
|
"time-ago.vim": { "branch": "master", "commit": "be978d5c790cfcc41f524205f28783b9937fd0ee" },
|
||||||
"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" },
|
||||||
"undotree": { "branch": "master", "commit": "d9c8b4ef872e078e8c4080812e5a3ed56d151c00" },
|
"undotree": { "branch": "master", "commit": "a1758ba9990b7189f601a3a5acdfc8ca3907a700" },
|
||||||
"vcscommand.vim": { "branch": "master", "commit": "2fb32681361f37533455d20aaa7fc6eb11b0fa4b" },
|
"vcscommand.vim": { "branch": "master", "commit": "2fb32681361f37533455d20aaa7fc6eb11b0fa4b" },
|
||||||
"vim-bazel": { "branch": "master", "commit": "31b0d5e4f51da1aeb56d65bf505a744e6de405de" },
|
"vim-bazel": { "branch": "master", "commit": "31b0d5e4f51da1aeb56d65bf505a744e6de405de" },
|
||||||
"vim-better-whitespace": { "branch": "master", "commit": "029f35c783f1b504f9be086b9ea757a36059c846" },
|
"vim-better-whitespace": { "branch": "master", "commit": "029f35c783f1b504f9be086b9ea757a36059c846" },
|
||||||
|
@ -53,7 +53,8 @@ set-option -g status-interval 2
|
|||||||
bind Escape confirm-before "kill-server"
|
bind Escape confirm-before "kill-server"
|
||||||
|
|
||||||
# Automatically set window title
|
# Automatically set window title
|
||||||
set-option -g automatic-rename off
|
setw -g automatic-rename off
|
||||||
|
set-window-option -g automatic-rename off
|
||||||
# set-option -g automatic-rename on
|
# set-option -g automatic-rename on
|
||||||
# set-option -g automatic-rename-format '#{?#{m/r:^(/google/src)?/cloud/,#{pane_current_path}},#{s|^(/google/src)?/cloud/[^/]+/([^/]+).+$|\2|:pane_current_path},#{b:pane_current_path}}'
|
# set-option -g automatic-rename-format '#{?#{m/r:^(/google/src)?/cloud/,#{pane_current_path}},#{s|^(/google/src)?/cloud/[^/]+/([^/]+).+$|\2|:pane_current_path},#{b:pane_current_path}}'
|
||||||
|
|
||||||
|
@ -19,12 +19,18 @@ return {
|
|||||||
{ import = "nvgoog.google.misc" },
|
{ import = "nvgoog.google.misc" },
|
||||||
-- maktaba is required by all google plugins
|
-- maktaba is required by all google plugins
|
||||||
glug("maktaba", {
|
glug("maktaba", {
|
||||||
lazy = false,
|
lazy = true,
|
||||||
dependencies = {},
|
dependencies = {},
|
||||||
config = function() -- init?
|
config = function() -- init?
|
||||||
vim.cmd("source /usr/share/vim/google/glug/bootstrap.vim")
|
vim.cmd("source /usr/share/vim/google/glug/bootstrap.vim")
|
||||||
end,
|
end,
|
||||||
}),
|
}),
|
||||||
|
glug("logmsgs", {
|
||||||
|
event = "VeryLazy",
|
||||||
|
}),
|
||||||
|
glug("googler", {
|
||||||
|
event = "VeryLazy",
|
||||||
|
}),
|
||||||
glug("core"),
|
glug("core"),
|
||||||
glug("glaive"),
|
glug("glaive"),
|
||||||
glug("alert"),
|
glug("alert"),
|
||||||
@ -32,27 +38,27 @@ return {
|
|||||||
glug("languages"),
|
glug("languages"),
|
||||||
glug("googlespell"),
|
glug("googlespell"),
|
||||||
-- Enable logmsgs ASAP to avoid maktaba's log message queue filling up
|
-- Enable logmsgs ASAP to avoid maktaba's log message queue filling up
|
||||||
veryLazy(glug("logmsgs")),
|
|
||||||
veryLazy(glug("googler")),
|
|
||||||
glug("google-logo"),
|
glug("google-logo"),
|
||||||
-- Add support for google filetypes
|
-- Add support for google filetypes
|
||||||
veryLazy(glug("google-filetypes", {
|
glug("google-filetypes", { event = { "BufReadPre", "BufNewFile" }, dependencies = {} }),
|
||||||
event = "BufReadPre",
|
|
||||||
})),
|
-- Other filetype detection
|
||||||
|
veryLazy(glug("ft-cel", { event = "BufRead,BufNewFile *.cel,*jvp" })),
|
||||||
|
veryLazy(glug("ft-clif", { event = "BufRead,BufNewFile *.clif" })),
|
||||||
|
veryLazy(glug("ft-gin", { event = "BufRead,BufNewFile *.gin" })),
|
||||||
|
veryLazy(glug("ft-gss", { event = "BufRead,BufNewFile *.gss" })),
|
||||||
|
veryLazy(glug("ft-proto", { event = "BufRead,BufNewFile *.proto,*.protodevel,*.rosy,*.textproto" })),
|
||||||
|
veryLazy(glug("ft-soy", { event = "BufRead,BufNewFile *.soy" })),
|
||||||
-- Set up syntax, indent, and core settings for various filetypes
|
-- Set up syntax, indent, and core settings for various filetypes
|
||||||
veryLazy(glug("ft-cel")),
|
veryLazy(glug("ft-cpp", { event = "BufRead,BufNewFile *.[ch],*.cc,*.cpp" })),
|
||||||
veryLazy(glug("ft-clif")),
|
veryLazy(glug("ft-go", { event = "BufRead,BufNewFile *.go" })),
|
||||||
veryLazy(glug("ft-cpp")),
|
veryLazy(glug("ft-java", { event = "BufRead,BufNewFile *.java" })),
|
||||||
veryLazy(glug("ft-gin")),
|
veryLazy(glug("ft-javascript", { event = "BufRead,BufNewFile *.js,*.jsx" })),
|
||||||
veryLazy(glug("ft-go")),
|
veryLazy(glug("ft-kotlin", { event = "BufRead,BufNewFile *.kt,*.kts" })),
|
||||||
veryLazy(glug("ft-java")),
|
veryLazy(glug("ft-python", { event = "BufRead,BufNewFile *.py" })),
|
||||||
veryLazy(glug("ft-javascript")),
|
|
||||||
veryLazy(glug("ft-kotlin")),
|
|
||||||
veryLazy(glug("ft-proto")),
|
|
||||||
veryLazy(glug("ft-python")),
|
|
||||||
veryLazy(glug("ft-soy")),
|
|
||||||
-- Configures nvim to respect Google's coding style
|
-- Configures nvim to respect Google's coding style
|
||||||
veryLazy(glug("googlestyle")),
|
veryLazy(glug("googlestyle", { event = { "BufRead", "BufNewFile" } })),
|
||||||
|
|
||||||
veryLazy(glug("add_usings")),
|
veryLazy(glug("add_usings")),
|
||||||
-- Autogens boilerplate when creating new files
|
-- Autogens boilerplate when creating new files
|
||||||
glug("autogen", {
|
glug("autogen", {
|
||||||
@ -142,7 +148,8 @@ return {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
cmd = { "FormatLines", "FormatCode", "AutoFormatBuffer" },
|
cmd = { "FormatLines", "FormatCode", "AutoFormatBuffer" },
|
||||||
event = "BufWritePre",
|
event = "VimEnter",
|
||||||
|
|
||||||
-- Setting up autocmds in init allows deferring loading the plugin until
|
-- Setting up autocmds in init allows deferring loading the plugin until
|
||||||
-- the `BufWritePre` event. One caveat is we must call `codefmt#FormatBuffer()`
|
-- the `BufWritePre` event. One caveat is we must call `codefmt#FormatBuffer()`
|
||||||
-- manually the first time since the plugin relies on the `BufWritePre` command to call it,
|
-- manually the first time since the plugin relies on the `BufWritePre` command to call it,
|
||||||
@ -167,22 +174,26 @@ return {
|
|||||||
})
|
})
|
||||||
end
|
end
|
||||||
-- Build opts from possible parent specs since lazy.nvim doesn't provide it in `init`
|
-- Build opts from possible parent specs since lazy.nvim doesn't provide it in `init`
|
||||||
local plugin_opts = {}
|
local plugin_opts = require("lazy.core.plugin").values(plugin, "opts", false)
|
||||||
local curr_plugin = plugin
|
|
||||||
while curr_plugin do
|
|
||||||
if type(curr_plugin.opts) == "table" then
|
|
||||||
plugin_opts = require("lazy.core.util").merge(curr_plugin.opts, plugin_opts)
|
|
||||||
elseif type(curr_plugin.opts) == "function" then
|
|
||||||
plugin_opts = curr_plugin.opts(plugin, plugin_opts)
|
|
||||||
end
|
|
||||||
curr_plugin = curr_plugin._ and curr_plugin._.super or nil
|
|
||||||
end
|
|
||||||
for filetypes, formatter in pairs(plugin_opts.auto_format or {}) do
|
for filetypes, formatter in pairs(plugin_opts.auto_format or {}) do
|
||||||
autocmd(filetypes, formatter)
|
autocmd(filetypes, formatter)
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
glug("critique", {
|
||||||
|
dependencies = {
|
||||||
|
veryLazy(glug("googler")),
|
||||||
|
},
|
||||||
|
-- optional = true,
|
||||||
|
cmd = {
|
||||||
|
"CritiqueComments",
|
||||||
|
"CritiqueUnresolvedComments",
|
||||||
|
"CritiqueNextComment",
|
||||||
|
"CritiquePreviousComment",
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
|
||||||
-- Run blaze commands
|
-- Run blaze commands
|
||||||
glug("blaze", {
|
glug("blaze", {
|
||||||
dependencies = {
|
dependencies = {
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
# vi: ft=sh
|
||||||
# ---------------
|
# ---------------
|
||||||
# Google Specific
|
# Google Specific
|
||||||
# ---------------
|
# ---------------
|
||||||
@ -195,3 +196,6 @@ source /etc/bash_completion.d/g4d
|
|||||||
gcertstatus --quiet || gcert && source /google/bin/releases/gmscore-tools/cli/prod/setup_prod_gms.sh
|
gcertstatus --quiet || gcert && source /google/bin/releases/gmscore-tools/cli/prod/setup_prod_gms.sh
|
||||||
|
|
||||||
complete -D -C /google/data/ro/users/sk/skaushik/www/public-tools/flagpick -o bashdefault -o default
|
complete -D -C /google/data/ro/users/sk/skaushik/www/public-tools/flagpick -o bashdefault -o default
|
||||||
|
|
||||||
|
# Setup go/hi #!>>HI<<!#
|
||||||
|
source /etc/bash.bashrc.d/shell_history_forwarder.sh #!>>HI<<!#
|
||||||
|
@ -151,5 +151,3 @@ export LANG_ALL="en_US.UTF-8"
|
|||||||
source ~/.bash_profile
|
source ~/.bash_profile
|
||||||
|
|
||||||
export PATH="$HOME/.local/bin:$PATH"
|
export PATH="$HOME/.local/bin:$PATH"
|
||||||
# Setup go/hi #!>>HI<<!#
|
|
||||||
source /etc/bash.bashrc.d/shell_history_forwarder.sh #!>>HI<<!#
|
|
||||||
|
@ -1,422 +0,0 @@
|
|||||||
########################################
|
|
||||||
# go/goog_prompt
|
|
||||||
#
|
|
||||||
# version: 2.1
|
|
||||||
# author: Justin Bishop
|
|
||||||
# email: jubi@google.com
|
|
||||||
########################################
|
|
||||||
|
|
||||||
##### BEGIN ENV settings #####
|
|
||||||
|
|
||||||
# Space reserved between left and right prompt
|
|
||||||
export -i PROMPT_SPACE=${PROMPT_SPACE:-41}
|
|
||||||
|
|
||||||
# The start of our left prompt
|
|
||||||
export PROMPT_PREFIX=${PROMPT_PREFIX:-$USER}
|
|
||||||
|
|
||||||
# The end of our left prompt
|
|
||||||
PROMPT_SUFFIX="${PROMPT_SUFFIX:-#>}"
|
|
||||||
|
|
||||||
# Hours before we care about staleness
|
|
||||||
export -i STALENESS_THRESHOLD=${STALENESS_THRESHOLD:-20}
|
|
||||||
|
|
||||||
# Prompt colors
|
|
||||||
typeset -Ag clr=(
|
|
||||||
path 123
|
|
||||||
wkspace 207
|
|
||||||
src 39
|
|
||||||
home 154
|
|
||||||
prefix 190
|
|
||||||
warn white
|
|
||||||
warn_bg 196
|
|
||||||
p4head 1
|
|
||||||
tip 154
|
|
||||||
patched 165
|
|
||||||
rollback 214
|
|
||||||
icons white
|
|
||||||
stale 207
|
|
||||||
author 45
|
|
||||||
div white
|
|
||||||
cl_updated green
|
|
||||||
cl_willupdate yellow
|
|
||||||
cl_unsubmitted magenta
|
|
||||||
desc green
|
|
||||||
)
|
|
||||||
|
|
||||||
export cloudHome="/google/src/cloud/$USER"
|
|
||||||
|
|
||||||
##### END ENV settings #####
|
|
||||||
|
|
||||||
##### BEGIN Workspace identification #####
|
|
||||||
|
|
||||||
# Workspace name
|
|
||||||
function workspace() {
|
|
||||||
# Use :A parameter expansion to resolve symlinks to /google/src
|
|
||||||
# http://zsh.sourceforge.net/Doc/Release/Expansion.html#index-parameter-expansion-flags
|
|
||||||
if [[ $PWD:A =~ "$cloudHome/([^/]+)" ]]; then
|
|
||||||
echo ${match[1]}
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Absolute directory of our workspace
|
|
||||||
function workspace_dir() {
|
|
||||||
if [[ $WORKSPACE != "" ]]; then
|
|
||||||
echo "$cloudHome/$WORKSPACE/google3"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Relative path after google3/
|
|
||||||
function source_pwd() {
|
|
||||||
local wkspace_dir=$(workspace_dir)
|
|
||||||
if [[ -n "$wkspace_dir" ]]; then
|
|
||||||
echo "$PWD[${#wkspace_dir}+2,${#PWD}]"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
##### END Workspace identification #####
|
|
||||||
|
|
||||||
##### BEGIN VCS analysis #####
|
|
||||||
|
|
||||||
# Clears out our exported vars
|
|
||||||
function unset_vcs_info() {
|
|
||||||
unset AUTHOR CHANGELIST COMMIT_MESSAGE
|
|
||||||
RPROMPT=""
|
|
||||||
typeset -Ag VCS_STATUS=()
|
|
||||||
}
|
|
||||||
|
|
||||||
# Kicks off async request for vcs info
|
|
||||||
function fetch_vcs_info() {
|
|
||||||
unset_vcs_info
|
|
||||||
if [[ -z $WORKSPACE || ! -d $cloudHome/$WORKSPACE/.hg ]]; then return; fi
|
|
||||||
|
|
||||||
async_worker_eval vcs_worker cd $PWD
|
|
||||||
async_job vcs_worker eval 'chg log --rev p4base -T "{date}\n"; chg log --follow -l 1 -T "{author}\n:{parents}\n{node|shortest}\n:{clpreferredname}\n:{clnumber}\n:{p4head}\n:{patchedcl}\n:{rollback_cl}\n:{tags}\n:{willupdatecl}\n{GOOG_trim_desc(desc)}"'
|
|
||||||
}
|
|
||||||
|
|
||||||
# exports $AUTHOR $CHANGELIST $COMMIT_MESSAGE $VCS_STATUS
|
|
||||||
function update_vcs_info() {
|
|
||||||
unset_vcs_info
|
|
||||||
|
|
||||||
# If we got an error, we need to kick off the service again
|
|
||||||
if [[ $2 -ne 0 ]]; then
|
|
||||||
async_stop_worker vcs_worker
|
|
||||||
async_unregister_callback vcs_worker
|
|
||||||
async_flush_jobs vcs_worker
|
|
||||||
async_start_worker vcs_worker
|
|
||||||
async_register_callback vcs_worker update_vcs_info
|
|
||||||
fetch_vcs_info
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $1 != "eval" || -z $WORKSPACE ]]; then return; fi
|
|
||||||
|
|
||||||
# If there's already another queued, we throw this one away
|
|
||||||
if [[ $6 -eq 1 ]]; then return; fi
|
|
||||||
|
|
||||||
# Extract values from reply
|
|
||||||
local -a values=("${(f)3}")
|
|
||||||
local -i p4date=$values[1]
|
|
||||||
export AUTHOR=$values[2]
|
|
||||||
local -a parents=(${=values[3]})
|
|
||||||
export SHORTEST_NODE=$values[4]
|
|
||||||
export CHANGELIST="${values[5]:1}"
|
|
||||||
local clnumber=$values[6]
|
|
||||||
local p4head=$values[7]
|
|
||||||
local patchedcl=$values[8]
|
|
||||||
local rollbackcl=$values[9]
|
|
||||||
local tags=$values[10]
|
|
||||||
local willupdatecl=$values[11]
|
|
||||||
export COMMIT_MESSAGE=$values[12]
|
|
||||||
|
|
||||||
# Set various VCS_STATUS
|
|
||||||
local -i now=$(date +"%s")
|
|
||||||
local -i diff; ((diff = ($now - $p4date) / 3600))
|
|
||||||
if [[ $diff -ge $STALENESS_THRESHOLD ]]; then
|
|
||||||
VCS_STATUS[stale]=$diff
|
|
||||||
fi
|
|
||||||
if [[ $#parents -ge 2 ]]; then
|
|
||||||
VCS_STATUS[merge]=$parents
|
|
||||||
fi
|
|
||||||
if [[ $clnumber =~ "\b([0-9]+)\b" ]]; then
|
|
||||||
VCS_STATUS[clnumber]=$match[1]
|
|
||||||
fi
|
|
||||||
if [[ $p4head == ":p4head" ]]; then
|
|
||||||
VCS_STATUS[p4head]=1
|
|
||||||
fi
|
|
||||||
if [[ $patchedcl =~ "\b([0-9]+)\b" ]]; then
|
|
||||||
VCS_STATUS[patched_cl]=$match[1]
|
|
||||||
fi
|
|
||||||
if [[ $rollbackcl =~ "\b([0-9]+)\b" ]]; then
|
|
||||||
VCS_STATUS[rollback_cl]=$match[1]
|
|
||||||
fi
|
|
||||||
if [[ $tags =~ "\btip\b" ]]; then
|
|
||||||
VCS_STATUS[tip]=1
|
|
||||||
fi
|
|
||||||
if [[ $willupdatecl =~ "\b([0-9]+)\b" ]]; then
|
|
||||||
VCS_STATUS[willupdate_cl]=$match[1]
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Update the prompt then tell ZSH to redraw it
|
|
||||||
update_rprompt
|
|
||||||
zle && zle reset-prompt
|
|
||||||
}
|
|
||||||
|
|
||||||
# Updated in precmd, used to track fig changes
|
|
||||||
local vcs_mtime=""
|
|
||||||
function get_vcs_mtime() {
|
|
||||||
case `uname` in
|
|
||||||
Darwin)
|
|
||||||
local statArgs="-f%c"
|
|
||||||
;;
|
|
||||||
Linux)
|
|
||||||
local statArgs="-c %Z"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
local mtime=""
|
|
||||||
if [[ -f $cloudHome/$WORKSPACE/.hg/dirstate ]]; then
|
|
||||||
mtime+="$(/usr/bin/stat $statArgs $cloudHome/$WORKSPACE/.hg/dirstate)"
|
|
||||||
fi
|
|
||||||
if [[ -f $cloudHome/$WORKSPACE/.hg/store/review__units ]]; then
|
|
||||||
mtime+="-$(/usr/bin/stat $statArgs $cloudHome/$WORKSPACE/.hg/store/review__units)"
|
|
||||||
fi
|
|
||||||
echo $mtime
|
|
||||||
}
|
|
||||||
|
|
||||||
# Setup async worker for getting VCS info
|
|
||||||
async_start_worker vcs_worker
|
|
||||||
async_register_callback vcs_worker update_vcs_info
|
|
||||||
|
|
||||||
##### END VCS analysis #####
|
|
||||||
|
|
||||||
##### BEGIN Prompt management #####
|
|
||||||
|
|
||||||
# get the color for CL indicators
|
|
||||||
function get_cl_color() {
|
|
||||||
if [[ -n $VCS_STATUS[willupdate_cl] ]]; then
|
|
||||||
echo $clr[cl_willupdate]
|
|
||||||
elif [[ -n $VCS_STATUS[clnumber] ]]; then
|
|
||||||
echo $clr[cl_updated]
|
|
||||||
elif [[ -n $CHANGELIST ]]; then
|
|
||||||
echo $clr[cl_unsubmitted]
|
|
||||||
else
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Updated by update_prompt
|
|
||||||
local -i PROMPT_SIZE=0
|
|
||||||
|
|
||||||
# Fetches new RPROMPT string
|
|
||||||
function get_rprompt() {
|
|
||||||
if [[ -z $WORKSPACE || -z $vcs_mtime ]]; then
|
|
||||||
echo "" && return
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Build an array of RPROMPT elements to join at the end
|
|
||||||
local rprompt=()
|
|
||||||
|
|
||||||
# Calculate total columns available for rprompt
|
|
||||||
local -i avail_columns
|
|
||||||
((avail_columns = $COLUMNS - $PROMPT_SIZE - $PROMPT_SPACE))
|
|
||||||
|
|
||||||
# If we're stale, display the stale symbol, +3 for 🕑h
|
|
||||||
if [[ -n $VCS_STATUS[stale] ]]; then
|
|
||||||
rprompt+=("%F{$clr[stale]}🕑$VCS_STATUS[stale]h%f")
|
|
||||||
((avail_columns = $avail_columns - $#VCS_STATUS[stale] - 3))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# If we're at tip, display the tip symbol, +2 for ➳
|
|
||||||
if [[ $VCS_STATUS[tip] -eq 1 ]]; then
|
|
||||||
rprompt+=("%F{$clr[tip]}➳%f")
|
|
||||||
((avail_columns = $avail_columns - 2))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# If we're at p4head, display the p4head symbol, +2 for ☽
|
|
||||||
if [[ $VCS_STATUS[p4head] -eq 1 ]]; then
|
|
||||||
rprompt+=("%F{$clr[p4head]}☽%f")
|
|
||||||
((avail_columns = $avail_columns - 2))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# If we're a patch, display the patch symbol, +2 for ℞
|
|
||||||
if [[ -n $VCS_STATUS[patched_cl] ]]; then
|
|
||||||
rprompt+=("%F{$clr[patched]}℞%f")
|
|
||||||
((avail_columns = $avail_columns - 2))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# If we're a rollback, display the rollback symbol, +2 for ⟳
|
|
||||||
if [[ -n $VCS_STATUS[rollback_cl] ]]; then
|
|
||||||
rprompt+=("%F{$clr[rollback]}⟳%f")
|
|
||||||
((avail_columns = $avail_columns - 2))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# We show evil merge warning no matter what, then end it
|
|
||||||
if [[ -n $VCS_STATUS[merge] ]]; then
|
|
||||||
rprompt+=("❗%K{$clr[warn_bg]}%F{$clr[warn]}%BDon't amend! (Merge)%b%f%k")
|
|
||||||
echo ${(j: :)rprompt} && return
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Display author if it's not us, +1 for 🙋
|
|
||||||
if [[ ! $AUTHOR =~ "$USER(@google.com)?" &&
|
|
||||||
$avail_columns -ge (($#AUTHOR + 1)) ]]; then
|
|
||||||
rprompt+=("🙋%F{$clr[author]}$AUTHOR%f")
|
|
||||||
((avail_columns = $avail_columns - $#AUTHOR - 2))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Adding any changelist info
|
|
||||||
if [[ -n $CHANGELIST ]]; then
|
|
||||||
# Add the shortest node? +2 for 🔰
|
|
||||||
if [[ -n $SHOW_SHORTEST_NODE &&
|
|
||||||
$avail_columns -ge (($#SHORTEST_NODE + 2)) ]]; then
|
|
||||||
if [[ -n $clr[shortest_node] ]]; then
|
|
||||||
rprompt+=("%F{$clr[shortest_node]}🔰$SHORTEST_NODE%f")
|
|
||||||
else
|
|
||||||
rprompt+=("%F{$(get_cl_color)}🔰$SHORTEST_NODE%f")
|
|
||||||
fi
|
|
||||||
((avail_columns = $avail_columns - $#SHORTEST_NODE - 2))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Show the dot? +2 for ●
|
|
||||||
if [[ $avail_columns -ge 2 && (-n $SHOW_CL_STATUS_DOT ||
|
|
||||||
(-z $HIDE_CL && $avail_columns -lt ($#CHANGELIST + 2))) ]]; then
|
|
||||||
rprompt+=("%F{$(get_cl_color)}●%f")
|
|
||||||
((avail_columns = $avail_columns - 2))
|
|
||||||
fi
|
|
||||||
# Show the CL number? +2 for ✔
|
|
||||||
if [[ -z $HIDE_CL && $avail_columns -ge (($#CHANGELIST + 2)) ]]; then
|
|
||||||
rprompt+=("%F{$clr[icons]}✔%F{$(get_cl_color)}$CHANGELIST%f")
|
|
||||||
((avail_columns = $avail_columns - $#CHANGELIST - 2))
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# End if there's no commit_mesage or we're out of space
|
|
||||||
if [[ -z $COMMIT_MESSAGE || $avail_columns -lt 5 ]]; then
|
|
||||||
echo ${(j: :)rprompt} && return
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Do we need to shorten the commit message? +2 for ✐
|
|
||||||
if [[ $avail_columns -lt (($#COMMIT_MESSAGE + 2)) ]]; then
|
|
||||||
local commit="$COMMIT_MESSAGE[1, (($avail_columns - 4))].."
|
|
||||||
else
|
|
||||||
local commit=$COMMIT_MESSAGE
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Escape percent signs in the commit message
|
|
||||||
rprompt+=("%F{$clr[icons]}✐%F{$clr[desc]}${commit:gs/%/%%}%f")
|
|
||||||
|
|
||||||
echo ${(j: :)rprompt}
|
|
||||||
}
|
|
||||||
|
|
||||||
# Make our RPROMPT work regardless of whether `prompt_subst` is set
|
|
||||||
function update_rprompt(){
|
|
||||||
if [[ -o prompt_subst ]]; then
|
|
||||||
RPROMPT='$(get_rprompt)'
|
|
||||||
else
|
|
||||||
RPROMPT=$(get_rprompt)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Update prompt
|
|
||||||
function update_prompt() {
|
|
||||||
if [[ -n $GP_IGNORE_LEFT_PROMPT ]]; then return; fi
|
|
||||||
|
|
||||||
if [[ -n $INDICATOR_FUNCTION ]]; then
|
|
||||||
local indicator=$($INDICATOR_FUNCTION)
|
|
||||||
else
|
|
||||||
local indicator="%F{green}⇪"
|
|
||||||
fi
|
|
||||||
PROMPT="$indicator%F{$clr[prefix]}$PROMPT_PREFIX%F{$clr[div]}:%f"
|
|
||||||
((PROMPT_SIZE = $#PROMPT_PREFIX + 2)) # 2 for "⇪:"
|
|
||||||
|
|
||||||
if [[ $PWD == $HOME ]]; then # If we're in $HOME, just show 🏠
|
|
||||||
PROMPT+="🏠"
|
|
||||||
((PROMPT_SIZE = PROMPT_SIZE + 1)) # 1 for 🏠
|
|
||||||
elif [[ $PWD == $HOME* ]]; then # Or relative path to 🏠
|
|
||||||
local rel_home="${PWD##$HOME/}"
|
|
||||||
PROMPT+="🏠%F{$clr[home]}$rel_home%f"
|
|
||||||
((PROMPT_SIZE = PROMPT_SIZE + $#rel_home + 1)) # 1 for 🏠
|
|
||||||
elif [[ $PWD == $(workspace_dir) ]]; then # Or just $WORKSPACE
|
|
||||||
PROMPT+="%F{$clr[wkspace]}%B$WORKSPACE%b%f"
|
|
||||||
((PROMPT_SIZE = PROMPT_SIZE + $#WORKSPACE))
|
|
||||||
else
|
|
||||||
local src_pwd=$(source_pwd)
|
|
||||||
if [[ -n $src_pwd ]]; then # Show relative path to workspace
|
|
||||||
PROMPT+="%F{$clr[wkspace]}%B$WORKSPACE%b%F{$clr[div]}/%F{$clr[src]}$src_pwd%f"
|
|
||||||
((PROMPT_SIZE = PROMPT_SIZE + $#WORKSPACE + $#src_pwd + 1)) # 1 for "/"
|
|
||||||
else
|
|
||||||
# Not in $WORKSPACE or $HOME, show absolute path up to 50 chars
|
|
||||||
PROMPT+="%F{$clr[path]}%50<..<%~%f"
|
|
||||||
if [[ $#PWD -gt 50 ]]; then
|
|
||||||
((PROMPT_SIZE = PROMPT_SIZE + 50))
|
|
||||||
else
|
|
||||||
((PROMPT_SIZE = PROMPT_SIZE + $#PWD))
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
((PROMPT_SIZE = PROMPT_SIZE + $#PROMPT_SUFFIX))
|
|
||||||
PROMPT+="%F{$clr[div]}$PROMPT_SUFFIX%f"
|
|
||||||
}
|
|
||||||
|
|
||||||
# add-zsh-hook to hook into chpwd and precmd
|
|
||||||
autoload -Uz add-zsh-hook
|
|
||||||
|
|
||||||
# Track when PWD/WORKSPACE has changed to update prompt
|
|
||||||
function pwd_changed() {
|
|
||||||
# Mark if workspace has changed
|
|
||||||
unset WORKSPACE_CHANGED
|
|
||||||
local new_workspace=$(workspace)
|
|
||||||
if [[ $new_workspace != $WORKSPACE ]]; then
|
|
||||||
export WORKSPACE=$new_workspace
|
|
||||||
export WORKSPACE_CHANGED=0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Mark that PWD changed
|
|
||||||
export PWD_CHANGED=0
|
|
||||||
|
|
||||||
# Update prompt, unless it always happens inside prompt_precmd()
|
|
||||||
if [[ -z $INDICATOR_FUNCTION ]]; then update_prompt; fi
|
|
||||||
}
|
|
||||||
add-zsh-hook chpwd pwd_changed
|
|
||||||
|
|
||||||
# Run before every command, to determine whether rprompt needs updating
|
|
||||||
function prompt_precmd() {
|
|
||||||
export LAST_EXIT=$? # For access by INDICATOR_FUNCTION
|
|
||||||
|
|
||||||
# Initial prompt needs to be set up
|
|
||||||
if [[ $PROMPT_SIZE -eq 0 ]]; then
|
|
||||||
pwd_changed
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Always update left prompt because of INDICATOR_FUNCTION
|
|
||||||
if [[ -n $INDICATOR_FUNCTION ]]; then
|
|
||||||
update_prompt
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Update if our WORKSPACE changed
|
|
||||||
if [[ -n $WORKSPACE_CHANGED ]]; then
|
|
||||||
if [[ -n $WORKSPACE ]]; then
|
|
||||||
vcs_mtime=$(get_vcs_mtime)
|
|
||||||
else vcs_mtime=''; fi
|
|
||||||
fetch_vcs_info
|
|
||||||
elif [[ -n $WORKSPACE ]]; then
|
|
||||||
# Update if .hg has been changed
|
|
||||||
local new_mtime=$(get_vcs_mtime)
|
|
||||||
if [[ $new_mtime != $vcs_mtime ]]; then
|
|
||||||
vcs_mtime=$new_mtime
|
|
||||||
fetch_vcs_info
|
|
||||||
elif [[ -n $PWD_CHANGED ]]; then update_rprompt; fi
|
|
||||||
elif [[ -n $PWD_CHANGED ]]; then update_rprompt; fi
|
|
||||||
|
|
||||||
# Unset this for tracking next cycle
|
|
||||||
unset PWD_CHANGED WORKSPACE_CHANGED
|
|
||||||
}
|
|
||||||
add-zsh-hook precmd prompt_precmd
|
|
||||||
|
|
||||||
# If the terminal resizes, we need to rerun update_rprompt
|
|
||||||
function window_changed() {
|
|
||||||
update_rprompt
|
|
||||||
zle && zle reset-prompt
|
|
||||||
}
|
|
||||||
trap window_changed WINCH
|
|
||||||
|
|
||||||
##### END Prompt management #####
|
|
Reference in New Issue
Block a user