mirror of
https://github.com/SoPat712/dotfiles.git
synced 2025-12-26 08:27:22 -05:00
Added yazi, fixed nvim and tmux a bit, regular updates to ZSH
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
[user]
|
[user]
|
||||||
email = 30350506+SoPat712@users.noreply.github.com
|
email = 30350506+SoPat712@users.noreply.github.com
|
||||||
name = Josh Patra
|
name = Josh Patra
|
||||||
signingkey = 34E3C1465C60BF2DDDD994A819FDD4F401823AE1
|
signingkey = 19FDD4F401823AE1
|
||||||
[diff]
|
[diff]
|
||||||
tool = nvimdiff
|
tool = nvimdiff
|
||||||
[core]
|
[core]
|
||||||
@@ -28,3 +28,7 @@
|
|||||||
postBuffer = 524288000
|
postBuffer = 524288000
|
||||||
[pull]
|
[pull]
|
||||||
rebase = false
|
rebase = false
|
||||||
|
[gpg]
|
||||||
|
program = /opt/homebrew/bin/gpg
|
||||||
|
[credential]
|
||||||
|
helper = store
|
||||||
|
|||||||
5
nvim/.config/nvim/large-file.vim
Normal file
5
nvim/.config/nvim/large-file.vim
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
syntax off
|
||||||
|
filetype off
|
||||||
|
set noundofile
|
||||||
|
set noswapfile
|
||||||
|
set noloadplugins
|
||||||
@@ -1,58 +1,58 @@
|
|||||||
{
|
{
|
||||||
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||||
"LuaSnip": { "branch": "master", "commit": "fb525166ccc30296fb3457441eb979113de46b00" },
|
"LuaSnip": { "branch": "master", "commit": "21e9fecfc07fb2cd707b6c7c3fa148550a34d053" },
|
||||||
"actions-preview.nvim": { "branch": "master", "commit": "36513ad213855d497b7dd3391a24d1d75d58e36f" },
|
"actions-preview.nvim": { "branch": "master", "commit": "cb938c25edaac38d362555f19244a9cb85d561e8" },
|
||||||
"alpha-nvim": { "branch": "main", "commit": "a35468cd72645dbd52c0624ceead5f301c566dff" },
|
"alpha-nvim": { "branch": "main", "commit": "3979b01cb05734331c7873049001d3f2bb8477f4" },
|
||||||
"clangd_extensions.nvim": { "branch": "main", "commit": "db28f29be928d18cbfb86fbfb9f83f584f658feb" },
|
"clangd_extensions.nvim": { "branch": "main", "commit": "b67cc417d9020fb4b83d46662351b4d16894905e" },
|
||||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
|
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
|
||||||
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" },
|
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "fd3e882e56956675c620898bf1ffcf4fcbe7ec84" },
|
||||||
"cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" },
|
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
|
||||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||||
"codesnap.nvim": { "branch": "main", "commit": "be6d6b9a3b5e6999edbda76b16dace03d9bfcd3d" },
|
"codesnap.nvim": { "branch": "main", "commit": "927d4a40361cf3c066a5426477822b41ba6069ab" },
|
||||||
"compiler.nvim": { "branch": "main", "commit": "eb7f82bb8f9e722dd194f638e67ec53c12ce5ac5" },
|
"compiler.nvim": { "branch": "main", "commit": "c09ab4e795b92378727d7377c03b0d5c2453957c" },
|
||||||
"conform.nvim": { "branch": "master", "commit": "8132ec733eed3bf415b97b76797ca41b59f51d7d" },
|
"conform.nvim": { "branch": "master", "commit": "1bf8b5b9caee51507aa51eaed3da5b0f2595c6b9" },
|
||||||
"flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" },
|
"flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" },
|
||||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||||
"gitsigns.nvim": { "branch": "main", "commit": "6ef8c54fb526bf3a0bc4efb0b2fe8e6d9a7daed2" },
|
"gitsigns.nvim": { "branch": "main", "commit": "6ef8c54fb526bf3a0bc4efb0b2fe8e6d9a7daed2" },
|
||||||
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
|
||||||
"lualine.nvim": { "branch": "master", "commit": "a94fc68960665e54408fe37dcf573193c4ce82c9" },
|
"lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
|
||||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "bef29b653ba71d442816bf56286c2a686210be04" },
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "7d527c76c43f46294de9c19d39c5a86317809b4b" },
|
||||||
"mason-tool-installer.nvim": { "branch": "main", "commit": "93a9ff9b34c91c0cb0f7de8d5f7e4abce51d8903" },
|
"mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" },
|
||||||
"mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
|
"mason.nvim": { "branch": "main", "commit": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800" },
|
||||||
"mini.indentscope": { "branch": "main", "commit": "5fdc3edf7bb1b6365980c2c47dac2f19ec93c97b" },
|
"mini.indentscope": { "branch": "main", "commit": "0308f949f31769e509696af5d5f91cebb2159c69" },
|
||||||
"mini.nvim": { "branch": "main", "commit": "8f2ea1e69546d2606b97cb1c0e9458a1a0d2e73f" },
|
"mini.nvim": { "branch": "main", "commit": "6e885e4c27743ae6bf5957ea78ce86c032835f09" },
|
||||||
"minimap.vim": { "branch": "master", "commit": "57287e2dd28fa3e63276a32d11c729df14741d54" },
|
"minimap.vim": { "branch": "master", "commit": "57287e2dd28fa3e63276a32d11c729df14741d54" },
|
||||||
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
|
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
|
||||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||||
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
"nvim-cmp": { "branch": "main", "commit": "d97d85e01339f01b842e6ec1502f639b080cb0fc" },
|
||||||
"nvim-lint": { "branch": "master", "commit": "2b0039b8be9583704591a13129c600891ac2c596" },
|
"nvim-lint": { "branch": "master", "commit": "a0718addcf9b5ba4325eb45441020bb824af9503" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "583a1d555c8e407868ce00c57e37eca4b7ff960e" },
|
"nvim-lspconfig": { "branch": "master", "commit": "b7c48a7111534b66bee077da8035ac7208a294ff" },
|
||||||
"nvim-notify": { "branch": "master", "commit": "b5825cf9ee881dd8e43309c93374ed5b87b7a896" },
|
"nvim-notify": { "branch": "master", "commit": "8701bece920b38ea289b457f902e2ad184131a5d" },
|
||||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||||
"nvim-treesitter-context": { "branch": "master", "commit": "b5ef8e3b8cb40b76975cfbcd2f590654eeb6ff00" },
|
"nvim-treesitter-context": { "branch": "master", "commit": "660861b1849256398f70450afdf93908d28dc945" },
|
||||||
"nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" },
|
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
|
||||||
"nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" },
|
"nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" },
|
||||||
"nvim-ufo": { "branch": "main", "commit": "80fe8215ba566df2fbf3bf4d25f59ff8f41bc0e1" },
|
"nvim-ufo": { "branch": "main", "commit": "72d54c31079d38d8dfc5456131b1d0fb5c0264b0" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" },
|
"nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
|
||||||
"outline.nvim": { "branch": "main", "commit": "321f89ef79f168a78685f70d70c52d0e7b563abb" },
|
"outline.nvim": { "branch": "main", "commit": "6b62f73a6bf317531d15a7ae1b724e85485d8148" },
|
||||||
"overseer.nvim": { "branch": "master", "commit": "6271cab7ccc4ca840faa93f54440ffae3a3918bd" },
|
"overseer.nvim": { "branch": "master", "commit": "6271cab7ccc4ca840faa93f54440ffae3a3918bd" },
|
||||||
"persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" },
|
"persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||||
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
|
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
|
||||||
"smart-splits.nvim": { "branch": "master", "commit": "dcc9a886ac7214db6dd67d27044b8388b628dcb6" },
|
"smart-splits.nvim": { "branch": "master", "commit": "71cf185c848d7c3ed62043df916f056a22cb4007" },
|
||||||
"telescope-file-browser.nvim": { "branch": "master", "commit": "626998e5c1b71c130d8bc6cf7abb6709b98287bb" },
|
"telescope-file-browser.nvim": { "branch": "master", "commit": "3610dc7dc91f06aa98b11dca5cc30dfa98626b7e" },
|
||||||
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
||||||
"telescope-undo.nvim": { "branch": "main", "commit": "928d0c2dc9606e01e2cc547196f48d2eaecf58e5" },
|
"telescope-undo.nvim": { "branch": "main", "commit": "928d0c2dc9606e01e2cc547196f48d2eaecf58e5" },
|
||||||
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
||||||
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
|
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
|
||||||
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
|
"tokyonight.nvim": { "branch": "main", "commit": "5da1b76e64daf4c5d410f06bcb6b9cb640da7dfd" },
|
||||||
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" },
|
"trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
|
||||||
"vim-commentary": { "branch": "master", "commit": "64a654ef4a20db1727938338310209b6a63f60c9" },
|
"vim-commentary": { "branch": "master", "commit": "64a654ef4a20db1727938338310209b6a63f60c9" },
|
||||||
"vim-fugitive": { "branch": "master", "commit": "4a745ea72fa93bb15dd077109afbb3d1809383f2" },
|
"vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" },
|
||||||
"vim-illuminate": { "branch": "master", "commit": "0d1e93684da00ab7c057410fecfc24f434698898" },
|
"vim-illuminate": { "branch": "master", "commit": "0d1e93684da00ab7c057410fecfc24f434698898" },
|
||||||
"vim-matchup": { "branch": "master", "commit": "c478d4a72bbf397eff42743198f1939f6a264736" },
|
"vim-matchup": { "branch": "master", "commit": "1c276e12b49a83c1bdca74351187b8adea5da4b9" },
|
||||||
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" },
|
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" },
|
||||||
"vim-smoothie": { "branch": "master", "commit": "df1e324e9f3395c630c1c523d0555a01d2eb1b7e" },
|
"vim-smoothie": { "branch": "master", "commit": "df1e324e9f3395c630c1c523d0555a01d2eb1b7e" },
|
||||||
"vim-startuptime": { "branch": "master", "commit": "b6f0d93f6b8cf6eee0b4c94450198ba2d6a05ff6" },
|
"vim-startuptime": { "branch": "master", "commit": "b6f0d93f6b8cf6eee0b4c94450198ba2d6a05ff6" },
|
||||||
|
|||||||
@@ -1,16 +1,17 @@
|
|||||||
return {
|
return {
|
||||||
"mistricky/codesnap.nvim",
|
"mistricky/codesnap.nvim",
|
||||||
lazy = "true",
|
build = "make build_generator",
|
||||||
build = "make",
|
lazy = false,
|
||||||
cmd = "CodeSnapPreviewOn",
|
|
||||||
config = function()
|
config = function()
|
||||||
require("codesnap").setup({
|
require("codesnap").setup({
|
||||||
mac_window_bar = true, -- (Optional) MacOS style title bar switch
|
mac_window_bar = true, -- macOS-style title bar
|
||||||
opacity = true, -- (Optional) The code snap has some opacity by default, set it to false for 100% opacity
|
watermark = "", -- no watermark
|
||||||
watermark = "joshp", -- (Optional) you can custom your own watermark, but if you don't like it, just set it to ""
|
has_line_number = true, -- show line numbers
|
||||||
preview_title = "CodeSnap.nvim", -- (Optional) preview page title
|
has_breadcrumbs = false, -- disable breadcrumbs
|
||||||
bg_theme = "summer",
|
show_workspace = false, -- disable workspace name
|
||||||
has_line_number = true,
|
bg_theme = "sea", -- background theme
|
||||||
|
code_font_family = "SauceCodePro Nerd Font", -- your preferred font
|
||||||
|
save_path = "~/Pictures", -- save directory
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,12 +21,16 @@ return {
|
|||||||
|
|
||||||
mason_tool_installer.setup({
|
mason_tool_installer.setup({
|
||||||
ensure_installed = {
|
ensure_installed = {
|
||||||
"prettier", -- prettier formatter
|
-- Formatters
|
||||||
"stylua", -- lua formatter
|
"prettier",
|
||||||
"isort", -- python formatter
|
"stylua",
|
||||||
"black", -- python formatter
|
"isort",
|
||||||
"pylint", -- python linter
|
"black",
|
||||||
"eslint_d", -- js linter
|
-- Linters
|
||||||
|
"eslint_d",
|
||||||
|
"pylint",
|
||||||
|
-- LSP servers
|
||||||
|
"vtsls", -- better TypeScript/JavaScript LSP (or use "typescript-language-server" for ts_ls)
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
@@ -41,7 +45,6 @@ return {
|
|||||||
{
|
{
|
||||||
"neovim/nvim-lspconfig",
|
"neovim/nvim-lspconfig",
|
||||||
lazy = false,
|
lazy = false,
|
||||||
-- This table is used in the config function (below) for vim.diagnostic.config()
|
|
||||||
opts = {
|
opts = {
|
||||||
diagnostics = {
|
diagnostics = {
|
||||||
underline = true,
|
underline = true,
|
||||||
@@ -66,7 +69,7 @@ return {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
config = function(_, opts)
|
config = function(_, opts)
|
||||||
-- 1) Use opts.diagnostics to configure diagnostic signs
|
-- 1) Configure diagnostics
|
||||||
local diag = opts.diagnostics or {}
|
local diag = opts.diagnostics or {}
|
||||||
if diag.signs and diag.signs.text then
|
if diag.signs and diag.signs.text then
|
||||||
local sign_config = {}
|
local sign_config = {}
|
||||||
@@ -82,7 +85,7 @@ return {
|
|||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
-- 2) Set up capabilities and each LSP
|
-- 2) Set up capabilities
|
||||||
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||||
capabilities.offsetEncoding = { "utf-16" }
|
capabilities.offsetEncoding = { "utf-16" }
|
||||||
capabilities.textDocument.foldingRange = {
|
capabilities.textDocument.foldingRange = {
|
||||||
@@ -90,51 +93,78 @@ return {
|
|||||||
lineFoldingOnly = true,
|
lineFoldingOnly = true,
|
||||||
}
|
}
|
||||||
|
|
||||||
local lspconfig = require("lspconfig")
|
-- 3) Setup LSP servers using vim.lsp.config
|
||||||
|
|
||||||
-- Example LSPs
|
-- TypeScript/JavaScript (using vtsls for better refactoring support)
|
||||||
lspconfig.ts_ls.setup({
|
vim.lsp.config("vtsls", {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
|
filetypes = { "javascript", "javascriptreact", "typescript", "typescriptreact" },
|
||||||
})
|
})
|
||||||
lspconfig.html.setup({
|
|
||||||
capabilities = capabilities,
|
-- HTML
|
||||||
})
|
vim.lsp.config("html", {
|
||||||
lspconfig.lua_ls.setup({
|
|
||||||
capabilities = capabilities,
|
|
||||||
})
|
|
||||||
lspconfig.gopls.setup({
|
|
||||||
capabilities = capabilities,
|
|
||||||
})
|
|
||||||
lspconfig.svelte.setup({
|
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Python example
|
-- Lua
|
||||||
|
vim.lsp.config("lua_ls", {
|
||||||
|
capabilities = capabilities,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Go
|
||||||
|
vim.lsp.config("gopls", {
|
||||||
|
capabilities = capabilities,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Svelte
|
||||||
|
vim.lsp.config("svelte", {
|
||||||
|
capabilities = capabilities,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Python (Pyright)
|
||||||
local function get_python_path(workspace)
|
local function get_python_path(workspace)
|
||||||
-- Use a pattern to find the venv path in the workspace directory
|
-- 1) Workspace-local venv: <workspace>/venv/bin/python
|
||||||
local venv_path = lspconfig.util.path.join(workspace, "venv", "bin", "python")
|
if workspace and workspace ~= "" then
|
||||||
return venv_path
|
local venv_path = vim.fs.joinpath(workspace, "venv", "bin", "python")
|
||||||
|
if vim.fn.executable(venv_path) == 1 then
|
||||||
|
return venv_path
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- 2) Active virtualenv, if any
|
||||||
|
if vim.env.VIRTUAL_ENV and vim.env.VIRTUAL_ENV ~= "" then
|
||||||
|
local venv_python = vim.fs.joinpath(vim.env.VIRTUAL_ENV, "bin", "python")
|
||||||
|
if vim.fn.executable(venv_python) == 1 then
|
||||||
|
return venv_python
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- 3) Fallback to system python
|
||||||
|
return "python3"
|
||||||
end
|
end
|
||||||
lspconfig.pyright.setup({
|
|
||||||
|
vim.lsp.config("pyright", {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
before_init = function(_, config)
|
before_init = function(params, config)
|
||||||
config.settings = {
|
-- Try a few ways to get a sane workspace path
|
||||||
python = {
|
local workspace = config.root_dir
|
||||||
analysis = {
|
or (params.rootUri and vim.uri_to_fname(params.rootUri))
|
||||||
autoSearchPaths = true,
|
or vim.loop.cwd()
|
||||||
useLibraryCodeForTypes = true,
|
|
||||||
},
|
config.settings = config.settings or {}
|
||||||
pythonPath = get_python_path(config.root_dir),
|
config.settings.python = config.settings.python or {}
|
||||||
},
|
|
||||||
|
config.settings.python.analysis = {
|
||||||
|
autoSearchPaths = true,
|
||||||
|
useLibraryCodeForTypes = true,
|
||||||
}
|
}
|
||||||
end,
|
|
||||||
on_attach = function(client, bufnr)
|
config.settings.python.pythonPath = get_python_path(workspace)
|
||||||
-- Optional: additional setup such as key mappings, etc.
|
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Rust
|
-- Rust
|
||||||
lspconfig.rust_analyzer.setup({
|
vim.lsp.config("rust_analyzer", {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
settings = {
|
settings = {
|
||||||
["rust-analyzer"] = {},
|
["rust-analyzer"] = {},
|
||||||
@@ -142,18 +172,8 @@ return {
|
|||||||
})
|
})
|
||||||
|
|
||||||
-- C/C++ (clangd)
|
-- C/C++ (clangd)
|
||||||
lspconfig.clangd.setup({
|
vim.lsp.config("clangd", {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
init_options = {
|
|
||||||
clangdFileStatus = true,
|
|
||||||
usePlaceholders = true,
|
|
||||||
completeUnimported = true,
|
|
||||||
semanticHighlighting = true,
|
|
||||||
},
|
|
||||||
on_attach = function(client, bufnr)
|
|
||||||
require("clangd_extensions.inlay_hints").setup_autocmd()
|
|
||||||
require("clangd_extensions.inlay_hints").set_inlay_hints()
|
|
||||||
end,
|
|
||||||
cmd = {
|
cmd = {
|
||||||
"clangd",
|
"clangd",
|
||||||
"--background-index",
|
"--background-index",
|
||||||
@@ -166,67 +186,85 @@ return {
|
|||||||
"-j=12",
|
"-j=12",
|
||||||
"--header-insertion-decorators",
|
"--header-insertion-decorators",
|
||||||
},
|
},
|
||||||
root_dir = function(fname)
|
root_markers = {
|
||||||
return require("lspconfig.util").root_pattern(
|
"Makefile",
|
||||||
"Makefile",
|
"configure.ac",
|
||||||
"configure.ac",
|
"configure.in",
|
||||||
"configure.in",
|
"config.h.in",
|
||||||
"config.h.in",
|
"meson.build",
|
||||||
"meson.build",
|
"meson_options.txt",
|
||||||
"meson_options.txt",
|
"build.ninja",
|
||||||
"build.ninja"
|
"compile_commands.json",
|
||||||
)(fname) or require("lspconfig.util").root_pattern(
|
"compile_flags.txt",
|
||||||
"compile_commands.json",
|
".git",
|
||||||
"compile_flags.txt"
|
},
|
||||||
)(fname) or require("lspconfig.util").find_git_ancestor(fname)
|
on_attach = function(client, bufnr)
|
||||||
|
-- Optional: clangd extensions setup
|
||||||
|
local ok, clangd_ext = pcall(require, "clangd_extensions.inlay_hints")
|
||||||
|
if ok then
|
||||||
|
clangd_ext.setup_autocmd()
|
||||||
|
clangd_ext.set_inlay_hints()
|
||||||
|
end
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- UFO setup
|
-- UFO setup
|
||||||
require("ufo").setup()
|
require("ufo").setup()
|
||||||
|
|
||||||
-- 3) Global LspAttach mappings
|
-- 4) Global LspAttach mappings
|
||||||
vim.api.nvim_create_autocmd("LspAttach", {
|
vim.api.nvim_create_autocmd("LspAttach", {
|
||||||
group = vim.api.nvim_create_augroup("UserLspConfig", {}),
|
group = vim.api.nvim_create_augroup("UserLspConfig", {}),
|
||||||
callback = function(ev)
|
callback = function(ev)
|
||||||
local opts = { buffer = ev.buf }
|
local opts = { buffer = ev.buf }
|
||||||
vim.keymap.set("n", "<leader>e", vim.diagnostic.open_float, { desc = "Open diagnostic float" })
|
|
||||||
vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, { desc = "Go to previous diagnostic" })
|
vim.keymap.set(
|
||||||
vim.keymap.set("n", "]d", vim.diagnostic.goto_next, { desc = "Go to next diagnostic" })
|
"n",
|
||||||
vim.keymap.set("n", "gD", vim.lsp.buf.declaration, opts, { desc = "Go to declaration" })
|
"<leader>e",
|
||||||
|
vim.diagnostic.open_float,
|
||||||
|
{ buffer = ev.buf, desc = "Open diagnostic float" }
|
||||||
|
)
|
||||||
|
vim.keymap.set(
|
||||||
|
"n",
|
||||||
|
"[d",
|
||||||
|
vim.diagnostic.goto_prev,
|
||||||
|
{ buffer = ev.buf, desc = "Go to previous diagnostic" }
|
||||||
|
)
|
||||||
|
vim.keymap.set(
|
||||||
|
"n",
|
||||||
|
"]d",
|
||||||
|
vim.diagnostic.goto_next,
|
||||||
|
{ buffer = ev.buf, desc = "Go to next diagnostic" }
|
||||||
|
)
|
||||||
|
vim.keymap.set("n", "gD", vim.lsp.buf.declaration, { buffer = ev.buf, desc = "Go to declaration" })
|
||||||
vim.keymap.set(
|
vim.keymap.set(
|
||||||
"n",
|
"n",
|
||||||
"gd",
|
"gd",
|
||||||
require("telescope.builtin").lsp_definitions,
|
require("telescope.builtin").lsp_definitions,
|
||||||
opts,
|
{ buffer = ev.buf, desc = "Go to definition" }
|
||||||
{ desc = "Go to definition" }
|
|
||||||
)
|
)
|
||||||
vim.keymap.set(
|
vim.keymap.set(
|
||||||
"n",
|
"n",
|
||||||
"gr",
|
"gr",
|
||||||
require("telescope.builtin").lsp_references,
|
require("telescope.builtin").lsp_references,
|
||||||
opts,
|
{ buffer = ev.buf, desc = "Go to references" }
|
||||||
{ desc = "Go to references" }
|
|
||||||
)
|
)
|
||||||
vim.keymap.set(
|
vim.keymap.set(
|
||||||
"n",
|
"n",
|
||||||
"gi",
|
"gi",
|
||||||
require("telescope.builtin").lsp_implementations,
|
require("telescope.builtin").lsp_implementations,
|
||||||
opts,
|
{ buffer = ev.buf, desc = "Go to implementations" }
|
||||||
{ desc = "Go to implementations" }
|
|
||||||
)
|
)
|
||||||
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
|
vim.keymap.set("n", "K", vim.lsp.buf.hover, { buffer = ev.buf, desc = "Hover" })
|
||||||
vim.keymap.set("n", "<leader>rn", vim.lsp.buf.rename, opts, { desc = "Rename" })
|
vim.keymap.set("n", "<leader>rn", vim.lsp.buf.rename, { buffer = ev.buf, desc = "Rename" })
|
||||||
vim.keymap.set(
|
vim.keymap.set(
|
||||||
{ "n", "v" },
|
{ "n", "v" },
|
||||||
"<leader>ca",
|
"<leader>ca",
|
||||||
require("actions-preview").code_actions,
|
require("actions-preview").code_actions,
|
||||||
opts,
|
{ buffer = ev.buf, desc = "Code actions" }
|
||||||
{ desc = "Code actions" }
|
|
||||||
)
|
)
|
||||||
vim.keymap.set("n", "<leader>f", function()
|
vim.keymap.set("n", "<leader>f", function()
|
||||||
vim.lsp.buf.format({ async = true })
|
vim.lsp.buf.format({ async = true })
|
||||||
end, opts, { desc = "Format" })
|
end, { buffer = ev.buf, desc = "Format" })
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
|
|||||||
Submodule tmux/.tmux/plugins/tmux updated: c2b1d67cbd...91a1e09b3d
Submodule tmux/.tmux/plugins/vim-tmux-navigator updated: 5b3c701686...c45243dc1f
160
yazi/theme.toml
Normal file
160
yazi/theme.toml
Normal file
@@ -0,0 +1,160 @@
|
|||||||
|
[mgr]
|
||||||
|
# NOTE: can be combined with tmTheme (sublime colorshceme file) for preview code highlight
|
||||||
|
# syntect_theme = "path/to/tmTheme"
|
||||||
|
|
||||||
|
cwd = { fg = "#a9b1d6", italic = true }
|
||||||
|
|
||||||
|
# Hovered
|
||||||
|
hovered = { bg = "#292E50" }
|
||||||
|
preview_hovered = { bg = "#292E50" }
|
||||||
|
|
||||||
|
# Find
|
||||||
|
find_keyword = { fg = "#1f2335", bg = "#ff9e64", bold = true }
|
||||||
|
find_position = { fg = "#0db9d7", bg = "#22374b", bold = true }
|
||||||
|
|
||||||
|
# Marker
|
||||||
|
marker_copied = { fg = "#9ece6a", bg = "#9ece6a" }
|
||||||
|
marker_cut = { fg = "#f7768e", bg = "#f7768e" }
|
||||||
|
marker_marked = { fg = "#bb9af7", bg = "#bb9af7" }
|
||||||
|
marker_selected = { fg = "#7aa2f7", bg = "#7aa2f7" }
|
||||||
|
|
||||||
|
# Count
|
||||||
|
count_copied = { fg = "#1f2335", bg = "#9ece6a" }
|
||||||
|
count_cut = { fg = "#1f2335", bg = "#f7768e" }
|
||||||
|
count_selected = { fg = "#1f2335", bg = "#7aa2f7" }
|
||||||
|
|
||||||
|
# Border
|
||||||
|
border_symbol = "│"
|
||||||
|
border_style = { fg = "#29a4bd" }
|
||||||
|
|
||||||
|
# Tab
|
||||||
|
[tabs]
|
||||||
|
active = { fg = "#1d202f", bg = "#7aa2f7" }
|
||||||
|
inactive = { fg = "#7aa2f7", bg = "#3b4261" }
|
||||||
|
|
||||||
|
[mode]
|
||||||
|
normal_main = { fg = "#1d202f", bg = "#7aa2f7", bold = true }
|
||||||
|
normal_alt = { fg = "#7aa2f7", bg = "#3b4261" }
|
||||||
|
|
||||||
|
select_main = { fg = "#1d202f", bg = "#bb9af7", bold = true }
|
||||||
|
select_alt = { fg = "#bb9af7", bg = "#3b4261" }
|
||||||
|
|
||||||
|
unset_main = { fg = "#1d202f", bg = "#9d7cd8", bold = true }
|
||||||
|
unset_alt = { fg = "#9d7cd8", bg = "#3b4261" }
|
||||||
|
|
||||||
|
[status]
|
||||||
|
overall = { fg = "#c0caf5", bg = "#1f2335" }
|
||||||
|
sep_left = { open = "", close = "" }
|
||||||
|
sep_right = { open = "", close = "" }
|
||||||
|
|
||||||
|
# Progress
|
||||||
|
progress_label = { fg = "#c0caf5", bold = true }
|
||||||
|
progress_normal = { fg = "#3d59a1", bg = "#292e42" }
|
||||||
|
progress_error = { fg = "#db4b4b", bg = "#292e42" }
|
||||||
|
|
||||||
|
# Permissions
|
||||||
|
perm_type = { fg = "#7aa2f7" }
|
||||||
|
perm_read = { fg = "#e0af68" }
|
||||||
|
perm_write = { fg = "#f7768e" }
|
||||||
|
perm_exec = { fg = "#9ece6a" }
|
||||||
|
perm_sep = { fg = "#414868" }
|
||||||
|
|
||||||
|
[pick]
|
||||||
|
border = { fg = "#29a4bd" }
|
||||||
|
active = { fg = "#c0caf5", bg = "#2e3c64" }
|
||||||
|
inactive = { fg = "#c0caf5" }
|
||||||
|
|
||||||
|
# Input
|
||||||
|
[input]
|
||||||
|
border = { fg = "#0db9d7" }
|
||||||
|
title = { fg = "#0db9d7" }
|
||||||
|
value = { fg = "#9d7cd8" }
|
||||||
|
selected = { bg = "#2e3c64" }
|
||||||
|
|
||||||
|
# Completion
|
||||||
|
[cmp]
|
||||||
|
border = { fg = "#0db9d7" }
|
||||||
|
active = { fg = "#c0caf5", bg = "#363d59" }
|
||||||
|
inactive = { fg = "#c0caf5" }
|
||||||
|
|
||||||
|
icon_file = ""
|
||||||
|
icon_folder = ""
|
||||||
|
icon_command = ""
|
||||||
|
|
||||||
|
# Tasks
|
||||||
|
[tasks]
|
||||||
|
border = { fg = "#29a4bd" }
|
||||||
|
title = { fg = "#29a4bd" }
|
||||||
|
hovered = { fg = "#c0caf5", bg = "#2e3c64" }
|
||||||
|
|
||||||
|
# Which
|
||||||
|
[which]
|
||||||
|
cols = 3
|
||||||
|
mask = { bg = "#1f2335" }
|
||||||
|
cand = { fg = "#7dcfff" }
|
||||||
|
rest = { fg = "#7aa2f7" }
|
||||||
|
desc = { fg = "#bb9af7" }
|
||||||
|
separator = " ➜ "
|
||||||
|
separator_style = { fg = "#565f89" }
|
||||||
|
|
||||||
|
# Confirm
|
||||||
|
[confirm]
|
||||||
|
border = { fg = "#0db9d7" }
|
||||||
|
title = { fg = "#29a4bd" }
|
||||||
|
content = {}
|
||||||
|
list = {}
|
||||||
|
btn_yes = { bg = "#2e3c64" }
|
||||||
|
btn_no = {}
|
||||||
|
btn_labels = [ " [Y]es ", " (N)o " ]
|
||||||
|
|
||||||
|
# Spot
|
||||||
|
[spot]
|
||||||
|
border = { fg = "#29a4bd" }
|
||||||
|
title = { fg = "#29a4bd" }
|
||||||
|
|
||||||
|
# Notify
|
||||||
|
[notify]
|
||||||
|
title_info = { fg = "#0db9d7" }
|
||||||
|
title_warn = { fg = "#e0af68" }
|
||||||
|
title_error = { fg = "#db4b4b" }
|
||||||
|
|
||||||
|
icon_error = ""
|
||||||
|
icon_warn = ""
|
||||||
|
icon_info = ""
|
||||||
|
|
||||||
|
# Help
|
||||||
|
[help]
|
||||||
|
on = { fg = "#9ece6a" }
|
||||||
|
run = { fg = "#bb9af7" }
|
||||||
|
desc = { fg = "#7dcfff" }
|
||||||
|
hovered = { bg = "#292e42" }
|
||||||
|
footer = { fg = "#c0caf5", bg = "#24283b" }
|
||||||
|
|
||||||
|
[filetype]
|
||||||
|
|
||||||
|
rules = [
|
||||||
|
# Images
|
||||||
|
{ mime = "image/*", fg = "#e0af68" },
|
||||||
|
|
||||||
|
# Media
|
||||||
|
{ mime = "{audio,video}/*", fg = "#bb9af7" },
|
||||||
|
|
||||||
|
# Archives
|
||||||
|
{ mime = "application/*zip", fg = "#f7768e" },
|
||||||
|
{ mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "#f7768e" },
|
||||||
|
|
||||||
|
# Documents
|
||||||
|
{ mime = "application/{pdf,doc,rtf,vnd.*}", fg = "#7dcfff" },
|
||||||
|
|
||||||
|
# Empty files
|
||||||
|
# { mime = "inode/x-empty", fg = "#f7768e" },
|
||||||
|
|
||||||
|
# Special files
|
||||||
|
{ name = "*", is = "orphan", bg = "#f7768e" },
|
||||||
|
{ name = "*", is = "exec" , fg = "#9ece6a" },
|
||||||
|
|
||||||
|
# Fallback
|
||||||
|
{ name = "*/", fg = "#7aa2f7" },
|
||||||
|
{ name = "*", fg = "#c0caf5" }
|
||||||
|
]
|
||||||
|
|
||||||
@@ -1 +1,4 @@
|
|||||||
eval "$(/opt/homebrew/bin/brew shellenv)"
|
eval "$(/opt/homebrew/bin/brew shellenv)"
|
||||||
|
|
||||||
|
# Added by `rbenv init` on Thu Nov 6 22:59:40 EST 2025
|
||||||
|
eval "$(rbenv init - --no-rehash zsh)"
|
||||||
|
|||||||
49
zsh/.zshrc
49
zsh/.zshrc
@@ -27,6 +27,16 @@ export FZF_ALT_C_OPTS="--preview 'eza --tree --color=always {} | head -200'"
|
|||||||
export LC_ALL=en_US.UTF-8
|
export LC_ALL=en_US.UTF-8
|
||||||
export LANG=en_US.UTF-8
|
export LANG=en_US.UTF-8
|
||||||
export MANPAGER='nvim +Man!'
|
export MANPAGER='nvim +Man!'
|
||||||
|
export OLLAMA_KEEP_ALIVE=20m
|
||||||
|
export OLLAMA_HOST=0.0.0.0:11434
|
||||||
|
export LM_STUDIO_API_KEY="sk-dummy-api-key"
|
||||||
|
export OPENAI_API_KEY="sk-dummy-api-key"
|
||||||
|
export OPENAI_BASE_URL="http://localhost:1234/v1"
|
||||||
|
export OPENAI_MODEL="qwen/qwen3-coder-30b"
|
||||||
|
export NEXTDNS_URL="https://link-ip.nextdns.io/6f6c4e/f5476a644c7d5b0d"
|
||||||
|
|
||||||
|
# Stuff for development
|
||||||
|
export PATH="$(brew --prefix)/opt/findutils/libexec/gnubin:$(brew --prefix)/opt/gnu-getopt/bin:$(brew --prefix)/opt/make/libexec/gnubin:$(brew --prefix)/opt/util-linux/bin:${PATH}"
|
||||||
#Nano Zone for gcc on MacOS
|
#Nano Zone for gcc on MacOS
|
||||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
export MallocNanoZone=0
|
export MallocNanoZone=0
|
||||||
@@ -58,6 +68,7 @@ if command -v pyenv 1>/dev/null 2>&1; then
|
|||||||
fi
|
fi
|
||||||
eval "$(fzf --zsh)"
|
eval "$(fzf --zsh)"
|
||||||
eval "$(~/.local/bin/mise activate zsh)"
|
eval "$(~/.local/bin/mise activate zsh)"
|
||||||
|
# eval "$(rbenv init - zsh)"
|
||||||
|
|
||||||
# Aliases
|
# Aliases
|
||||||
alias zshconfig="nvim ~/.zshrc"
|
alias zshconfig="nvim ~/.zshrc"
|
||||||
@@ -72,6 +83,27 @@ alias cat=bat
|
|||||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
export PATH=$PATH:/Users/joshp/.spicetify
|
export PATH=$PATH:/Users/joshp/.spicetify
|
||||||
|
|
||||||
|
music() {
|
||||||
|
echo "Running music sync..."
|
||||||
|
|
||||||
|
cd ~/Projects/lrcput || return
|
||||||
|
python lrcput.py -d "/Volumes/Crucial X8/Media/Music/" -r -R
|
||||||
|
|
||||||
|
dot_clean "/Volumes/Crucial X8/Media/Music/"
|
||||||
|
|
||||||
|
rsync -aHv --delete --chown=navidrome:navidrome \
|
||||||
|
--chmod=F644,D755 \
|
||||||
|
-e 'ssh -p 6222' \
|
||||||
|
"/Volumes/Crucial X8/Media/Music/" \
|
||||||
|
root@ddns.joshpatra.me:/media/FiveTB/Navidrome/joshp
|
||||||
|
|
||||||
|
rsync -aHv --delete \
|
||||||
|
"/Volumes/Crucial X8/Media/Music/" \
|
||||||
|
"/Volumes/Samsung USB/Music/"
|
||||||
|
|
||||||
|
echo "✅ Music sync complete."
|
||||||
|
}
|
||||||
|
|
||||||
alluptd() {
|
alluptd() {
|
||||||
skip_all=false
|
skip_all=false
|
||||||
run_music=false
|
run_music=false
|
||||||
@@ -158,7 +190,7 @@ if [[ "$OSTYPE" == "darwin"* ]]; then
|
|||||||
|
|
||||||
rsync -aHv --delete --chown=navidrome:navidrome \
|
rsync -aHv --delete --chown=navidrome:navidrome \
|
||||||
--chmod=F644,D755 \
|
--chmod=F644,D755 \
|
||||||
-e 'ssh -p 5222' \
|
-e 'ssh -p 6222' \
|
||||||
"/Volumes/Crucial X8/Media/Music/" \
|
"/Volumes/Crucial X8/Media/Music/" \
|
||||||
root@ddns.joshpatra.me:/media/FiveTB/Navidrome/joshp
|
root@ddns.joshpatra.me:/media/FiveTB/Navidrome/joshp
|
||||||
|
|
||||||
@@ -218,3 +250,18 @@ export DYLD_LIBRARY_PATH="/opt/homebrew/Cellar/libgit2/1.9.0/lib:$DYLD_LIBRARY_P
|
|||||||
export NVM_DIR="$HOME/.nvm"
|
export NVM_DIR="$HOME/.nvm"
|
||||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||||
|
|
||||||
|
[[ "$TERM_PROGRAM" == "kiro" ]] && . "$(kiro --locate-shell-integration-path zsh)"
|
||||||
|
|
||||||
|
export PATH="$PATH:$HOME/.local/bin"
|
||||||
|
|
||||||
|
# Added by LM Studio CLI (lms)
|
||||||
|
export PATH="$PATH:/Users/joshp/.lmstudio/bin"
|
||||||
|
# End of LM Studio CLI section
|
||||||
|
|
||||||
|
export GEMINI_API_KEY=AIzaSyA515wVt60qNWDqdt0QCKvx9vPoDb6b0fg
|
||||||
|
# The following lines have been added by Docker Desktop to enable Docker CLI completions.
|
||||||
|
fpath=(/Users/joshp/.docker/completions $fpath)
|
||||||
|
autoload -Uz compinit
|
||||||
|
compinit
|
||||||
|
# End of Docker CLI completions
|
||||||
|
|||||||
Reference in New Issue
Block a user