Merge branch 'main' of github.com:DashieTM/dotFiles
This commit is contained in:
commit
2effe7906b
8 changed files with 181 additions and 35 deletions
|
|
@ -1,3 +1,3 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
echo $(playerctl -p ncspot,%any metadata mpris:artUrl)
|
echo $(playerctl -p spofity_player,%any metadata mpris:artUrl)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,3 +10,45 @@
|
||||||
-- vim.cmd("set norelativenumber")
|
-- vim.cmd("set norelativenumber")
|
||||||
-- end,
|
-- end,
|
||||||
-- })
|
-- })
|
||||||
|
|
||||||
|
-- nvim-tree is also there in modified buffers so this function filter it out
|
||||||
|
local modifiedBufs = function(bufs)
|
||||||
|
local t = 0
|
||||||
|
for k, v in pairs(bufs) do
|
||||||
|
if v.name:match("NvimTree_") == nil then
|
||||||
|
t = t + 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return t
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_create_autocmd("BufEnter", {
|
||||||
|
nested = true,
|
||||||
|
callback = function()
|
||||||
|
if #vim.api.nvim_list_wins() == 1 and
|
||||||
|
vim.api.nvim_buf_get_name(0):match("NvimTree_") ~= nil and
|
||||||
|
modifiedBufs(vim.fn.getbufinfo({ bufmodified = 1 })) == 0 then
|
||||||
|
vim.cmd "quit"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
})
|
||||||
|
|
||||||
|
local function open_nvim_tree(data)
|
||||||
|
|
||||||
|
-- buffer is a directory
|
||||||
|
local directory = vim.fn.isdirectory(data.file) == 1
|
||||||
|
|
||||||
|
if not directory then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
-- change to the directory
|
||||||
|
if directory then
|
||||||
|
vim.cmd.cd(data.file)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- open the tree
|
||||||
|
require("nvim-tree.api").tree.open()
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = open_nvim_tree })
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ map("n", "<F9>", ':lua require("dap").continue()<CR>', opts)
|
||||||
map("n", "<F10>", ':lua require("dap").close()<CR> :lua require("dapui").toggle()<CR>', opts)
|
map("n", "<F10>", ':lua require("dap").close()<CR> :lua require("dapui").toggle()<CR>', opts)
|
||||||
|
|
||||||
-- file tree
|
-- file tree
|
||||||
map("n", "f", ":Neotree action=focus toggle=true<CR>", opts)
|
map("n", "f", ":NvimTreeToggle<CR>", opts)
|
||||||
|
|
||||||
-- toggle terminal
|
-- toggle terminal
|
||||||
map("n", "<C-d>", ":lua require('toggleterm').toggle(1)<CR>", opts)
|
map("n", "<C-d>", ":lua require('toggleterm').toggle(1)<CR>", opts)
|
||||||
|
|
|
||||||
|
|
@ -29,8 +29,9 @@ return {
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"hrsh7th/cmp-nvim-lsp",
|
"hrsh7th/cmp-nvim-lsp",
|
||||||
"hrsh7th/cmp-buffer",
|
"hrsh7th/cmp-buffer",
|
||||||
"hrsh7th/cmp-path",
|
"FelipeLema/cmp-async-path",
|
||||||
"saadparwaiz1/cmp_luasnip",
|
"saadparwaiz1/cmp_luasnip",
|
||||||
|
"Saecki/crates.nvim",
|
||||||
{ "roobert/tailwindcss-colorizer-cmp.nvim", config = true },
|
{ "roobert/tailwindcss-colorizer-cmp.nvim", config = true },
|
||||||
},
|
},
|
||||||
opts = function()
|
opts = function()
|
||||||
|
|
@ -113,10 +114,11 @@ return {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
sources = cmp.config.sources({
|
sources = cmp.config.sources({
|
||||||
{ name = "nvim_lsp" },
|
{ name = "nvim_lsp", priority = 99 },
|
||||||
{ name = "luasnip" },
|
{ name = "luasnip", priority = 10, max_item_count = 3 },
|
||||||
{ name = "buffer" },
|
{ name = "buffer", priority = 5, max_item_count = 2, keyword_length = 5 },
|
||||||
{ name = "path" },
|
{ name = "async_path", priority = 0, max_item_count = 2, keyword_length = 3, trigger_characters = {} },
|
||||||
|
{ name = "crates" },
|
||||||
}),
|
}),
|
||||||
formatting = {
|
formatting = {
|
||||||
preselect = cmp.PreselectMode.None,
|
preselect = cmp.PreselectMode.None,
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
return {
|
return {
|
||||||
-- { "L3MON4D3/LuaSnip", enabled = false },
|
{
|
||||||
-- { "hrsh7th/nvim-cmp", enabled = false },
|
{ "nvim-neo-tree/neo-tree.nvim", enabled = false },
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,8 @@ return {
|
||||||
lazy = true,
|
lazy = true,
|
||||||
event = { "BufReadPre", "BufNewFile" },
|
event = { "BufReadPre", "BufNewFile" },
|
||||||
dependencies = {
|
dependencies = {
|
||||||
{ "folke/neoconf.nvim", cmd = "Neoconf", config = true },
|
{ "folke/neoconf.nvim", cmd = "Neoconf", config = true },
|
||||||
{ "folke/neodev.nvim", opts = { experimental = { pathStrict = true } } },
|
{ "folke/neodev.nvim", opts = { experimental = { pathStrict = true } } },
|
||||||
"mason.nvim",
|
"mason.nvim",
|
||||||
"williamboman/mason-lspconfig.nvim",
|
"williamboman/mason-lspconfig.nvim",
|
||||||
"lvimuser/lsp-inlayhints.nvim",
|
"lvimuser/lsp-inlayhints.nvim",
|
||||||
|
|
@ -82,10 +82,11 @@ return {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
staticcheck = {},
|
|
||||||
texlab = {},
|
texlab = {},
|
||||||
gopls = {},
|
gopls = {
|
||||||
sqls = {},
|
staticcheck = true,
|
||||||
|
},
|
||||||
|
sqlls = {},
|
||||||
taplo = {},
|
taplo = {},
|
||||||
lemminx = {},
|
lemminx = {},
|
||||||
yamlls = {},
|
yamlls = {},
|
||||||
|
|
|
||||||
102
nvim/lua/plugins/nvimtree.lua
Normal file
102
nvim/lua/plugins/nvimtree.lua
Normal file
|
|
@ -0,0 +1,102 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"nvim-tree/nvim-tree.lua",
|
||||||
|
lazy = true,
|
||||||
|
opts = {
|
||||||
|
on_attach = function(bufnr)
|
||||||
|
local api = require("nvim-tree.api")
|
||||||
|
local function opts(desc)
|
||||||
|
return { desc = "nvim-tree: " .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
|
||||||
|
end
|
||||||
|
vim.keymap.set("n", "<C-]>", api.tree.change_root_to_node, opts("CD"))
|
||||||
|
vim.keymap.set("n", "<C-e>", api.node.open.replace_tree_buffer, opts("Open: In Place"))
|
||||||
|
vim.keymap.set("n", "<C-k>", api.node.show_info_popup, opts("Info"))
|
||||||
|
vim.keymap.set("n", "<C-r>", api.fs.rename_sub, opts("Rename: Omit Filename"))
|
||||||
|
vim.keymap.set("n", "<C-t>", api.node.open.tab, opts("Open: New Tab"))
|
||||||
|
vim.keymap.set("n", "<C-v>", api.node.open.vertical, opts("Open: Vertical Split"))
|
||||||
|
vim.keymap.set("n", "<C-x>", api.node.open.horizontal, opts("Open: Horizontal Split"))
|
||||||
|
vim.keymap.set("n", "<BS>", api.node.navigate.parent_close, opts("Close Directory"))
|
||||||
|
vim.keymap.set("n", "<CR>", api.node.open.edit, opts("Open"))
|
||||||
|
vim.keymap.set("n", "<Tab>", api.node.open.preview, opts("Open Preview"))
|
||||||
|
vim.keymap.set("n", ">", api.node.navigate.sibling.next, opts("Next Sibling"))
|
||||||
|
vim.keymap.set("n", "<", api.node.navigate.sibling.prev, opts("Previous Sibling"))
|
||||||
|
vim.keymap.set("n", ".", api.node.run.cmd, opts("Run Command"))
|
||||||
|
vim.keymap.set("n", "-", api.tree.change_root_to_parent, opts("Up"))
|
||||||
|
vim.keymap.set("n", "a", api.fs.create, opts("Create"))
|
||||||
|
vim.keymap.set("n", "bmv", api.marks.bulk.move, opts("Move Bookmarked"))
|
||||||
|
vim.keymap.set("n", "B", api.tree.toggle_no_buffer_filter, opts("Toggle No Buffer"))
|
||||||
|
vim.keymap.set("n", "c", api.fs.copy.node, opts("Copy"))
|
||||||
|
vim.keymap.set("n", "C", api.tree.toggle_git_clean_filter, opts("Toggle Git Clean"))
|
||||||
|
vim.keymap.set("n", "[c", api.node.navigate.git.prev, opts("Prev Git"))
|
||||||
|
vim.keymap.set("n", "]c", api.node.navigate.git.next, opts("Next Git"))
|
||||||
|
vim.keymap.set("n", "d", api.fs.remove, opts("Delete"))
|
||||||
|
vim.keymap.set("n", "D", api.fs.trash, opts("Trash"))
|
||||||
|
vim.keymap.set("n", "E", api.tree.expand_all, opts("Expand All"))
|
||||||
|
vim.keymap.set("n", "e", api.fs.rename_basename, opts("Rename: Basename"))
|
||||||
|
vim.keymap.set("n", "]e", api.node.navigate.diagnostics.next, opts("Next Diagnostic"))
|
||||||
|
vim.keymap.set("n", "[e", api.node.navigate.diagnostics.prev, opts("Prev Diagnostic"))
|
||||||
|
vim.keymap.set("n", "<C-F>", api.live_filter.clear, opts("Clean Filter"))
|
||||||
|
vim.keymap.set("n", "F", api.live_filter.start, opts("Filter"))
|
||||||
|
vim.keymap.set("n", "g?", api.tree.toggle_help, opts("Help"))
|
||||||
|
vim.keymap.set("n", "gy", api.fs.copy.absolute_path, opts("Copy Absolute Path"))
|
||||||
|
vim.keymap.set("n", "H", api.tree.toggle_hidden_filter, opts("Toggle Dotfiles"))
|
||||||
|
vim.keymap.set("n", "I", api.tree.toggle_gitignore_filter, opts("Toggle Git Ignore"))
|
||||||
|
vim.keymap.set("n", "J", api.node.navigate.sibling.last, opts("Last Sibling"))
|
||||||
|
vim.keymap.set("n", "K", api.node.navigate.sibling.first, opts("First Sibling"))
|
||||||
|
vim.keymap.set("n", "m", api.marks.toggle, opts("Toggle Bookmark"))
|
||||||
|
vim.keymap.set("n", "o", api.node.open.edit, opts("Open"))
|
||||||
|
vim.keymap.set("n", "O", api.node.open.no_window_picker, opts("Open: No Window Picker"))
|
||||||
|
vim.keymap.set("n", "p", api.fs.paste, opts("Paste"))
|
||||||
|
vim.keymap.set("n", "P", api.node.navigate.parent, opts("Parent Directory"))
|
||||||
|
vim.keymap.set("n", "q", api.tree.close, opts("Close"))
|
||||||
|
vim.keymap.set("n", "r", api.fs.rename, opts("Rename"))
|
||||||
|
vim.keymap.set("n", "R", api.tree.reload, opts("Refresh"))
|
||||||
|
vim.keymap.set("n", "s", api.node.run.system, opts("Run System"))
|
||||||
|
vim.keymap.set("n", "S", api.tree.search_node, opts("Search"))
|
||||||
|
vim.keymap.set("n", "U", api.tree.toggle_custom_filter, opts("Toggle Hidden"))
|
||||||
|
vim.keymap.set("n", "W", api.tree.collapse_all, opts("Collapse"))
|
||||||
|
vim.keymap.set("n", "x", api.fs.cut, opts("Cut"))
|
||||||
|
vim.keymap.set("n", "y", api.fs.copy.filename, opts("Copy Name"))
|
||||||
|
vim.keymap.set("n", "Y", api.fs.copy.relative_path, opts("Copy Relative Path"))
|
||||||
|
vim.keymap.set("n", "<2-LeftMouse>", api.node.open.edit, opts("Open"))
|
||||||
|
vim.keymap.set("n", "<2-RightMouse>", api.tree.change_root_to_node, opts("CD"))
|
||||||
|
end,
|
||||||
|
respect_buf_cwd = true,
|
||||||
|
view = {
|
||||||
|
centralize_selection = false,
|
||||||
|
side = "right",
|
||||||
|
},
|
||||||
|
renderer = {
|
||||||
|
group_empty = true,
|
||||||
|
special_files = { "cargo.toml", "makefile", "readme.md", "readme.md" },
|
||||||
|
symlink_destination = true,
|
||||||
|
},
|
||||||
|
hijack_directories = {
|
||||||
|
enable = true,
|
||||||
|
auto_open = true,
|
||||||
|
},
|
||||||
|
update_focused_file = {
|
||||||
|
enable = true,
|
||||||
|
-- update_cwd = true,
|
||||||
|
update_root = false,
|
||||||
|
ignore_list = {},
|
||||||
|
},
|
||||||
|
system_open = {
|
||||||
|
cmd = "",
|
||||||
|
args = {},
|
||||||
|
},
|
||||||
|
actions = {
|
||||||
|
use_system_clipboard = true,
|
||||||
|
change_dir = {
|
||||||
|
enable = true,
|
||||||
|
global = false,
|
||||||
|
restrict_above_cwd = false,
|
||||||
|
},
|
||||||
|
expand_all = {
|
||||||
|
max_folder_discovery = 300,
|
||||||
|
exclude = {},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
@ -106,26 +106,9 @@ return {
|
||||||
)
|
)
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"nvim-neo-tree/neo-tree.nvim",
|
|
||||||
opts = {
|
|
||||||
close_if_last_window = true,
|
|
||||||
filesystem = {
|
|
||||||
group_empty_dirs = true,
|
|
||||||
},
|
|
||||||
window = {
|
|
||||||
mappings = {
|
|
||||||
["f"] = "close_window",
|
|
||||||
["l"] = "",
|
|
||||||
},
|
|
||||||
position = "right",
|
|
||||||
scan_mode = "deep",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"echasnovski/mini.ai",
|
"echasnovski/mini.ai",
|
||||||
enabled = false,
|
diabled = true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"rcarriga/nvim-notify",
|
"rcarriga/nvim-notify",
|
||||||
|
|
@ -133,13 +116,28 @@ return {
|
||||||
top_down = false,
|
top_down = false,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"elkowar/yuck.vim",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"jbyuki/instant.nvim",
|
"jbyuki/instant.nvim",
|
||||||
config = function()
|
config = function()
|
||||||
vim.cmd("let g:instant_username = 'dashie'")
|
vim.cmd("let g:instant_username = 'dashie'")
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
opts = {
|
||||||
|
textobjects = {
|
||||||
|
select = {
|
||||||
|
enable = true,
|
||||||
|
lookahead = true,
|
||||||
|
keymaps = {
|
||||||
|
-- You can use the capture groups defined in textobjects.scm
|
||||||
|
["af"] = "@function.outer",
|
||||||
|
["if"] = "@function.inner",
|
||||||
|
["ac"] = "@class.outer",
|
||||||
|
["ic"] = "@class.inner",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue