Adding in nvim to trackd

This commit is contained in:
talksik
2023-07-28 09:43:58 -07:00
parent fbdb849c67
commit 868a263cbd
21 changed files with 503 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
require('onedark').setup {
style = 'deep'
}
require('onedark').load()
function theme_solarized(color)
color = color or "solarized"
vim.cmd.colorscheme(color)
end
+1
View File
@@ -0,0 +1 @@
require("flutter-tools").setup {} -- use defaults
+1
View File
@@ -0,0 +1 @@
vim.keymap.set('n', '<leader>gg', function() vim.cmd('Git') end, {})
+14
View File
@@ -0,0 +1,14 @@
local harpoon = require("harpoon")
local mark = require("harpoon.mark")
local ui = require("harpoon.ui")
harpoon.setup({
mark_branch = true,
})
vim.keymap.set("n", "<C-a>", mark.add_file)
vim.keymap.set("n", "<C-e>", ui.toggle_quick_menu)
vim.keymap.set("n", "<C-g>", function() ui.nav_file(1) end)
vim.keymap.set("n", "<C-b>", function() ui.nav_file(2) end)
vim.keymap.set("n", "<C-n>", function() ui.nav_file(3) end)
+147
View File
@@ -0,0 +1,147 @@
local lsp = require("lsp-zero")
local lsp_config = require('lspconfig')
lsp.preset("recommended")
lsp.ensure_installed({
'tsserver'
})
-- Fix Undefined global 'vim'
lsp.configure('sumneko_lua', {
settings = {
Lua = {
diagnostics = {
globals = { 'vim' }
}
}
}
})
local cmp = require('cmp')
local cmp_select = { behavior = cmp.SelectBehavior.Select }
local cmp_mappings = lsp.defaults.cmp_mappings({
['<C-p>'] = cmp.mapping.select_prev_item(cmp_select),
['<C-n>'] = cmp.mapping.select_next_item(cmp_select),
['<C-y>'] = cmp.mapping.confirm({ select = true }),
["<C-Space>"] = cmp.mapping.complete(),
})
cmp_mappings['<Tab>'] = nil
cmp_mappings['<S-Tab>'] = nil
lsp.setup_nvim_cmp({
mapping = cmp_mappings
})
lsp.set_preferences({
suggest_lsp_servers = true,
sign_icons = {
error = 'E',
warn = 'W',
hint = 'H',
info = 'I'
}
})
local on_attach = function(client, bufnr)
local opts = { buffer = bufnr, remap = false }
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts)
vim.keymap.set("n", "K", function() vim.lsp.buf.hover() end, opts)
vim.keymap.set("n", "<leader>vws", function() vim.lsp.buf.workspace_symbol() end, opts)
vim.keymap.set("n", "<leader>lg", function() vim.diagnostic.open_float() end, opts)
vim.keymap.set("n", "[d", function() vim.diagnostic.goto_next() end, opts)
vim.keymap.set("n", "]d", function() vim.diagnostic.goto_prev() end, opts)
vim.keymap.set("n", "<leader>la", function() vim.lsp.buf.code_action() end, opts)
vim.keymap.set("n", "<leader>lf", function() vim.lsp.buf.format() end, opts)
vim.keymap.set("n", "<leader>gr", function() vim.lsp.buf.references() end, opts)
vim.keymap.set("n", "<leader>vrn", function() vim.lsp.buf.rename() end, opts)
vim.keymap.set("i", "<C-h>", function() vim.lsp.buf.signature_help() end, opts)
end
lsp.on_attach(on_attach)
lsp_config["dartls"].setup({
on_attach = on_attach,
root_dir = lsp_config.util.root_pattern('.git'),
settings = {
dart = {
analysisExcludedFolders = {
vim.fn.expand("$HOME/AppData/Local/Pub/Cache"),
vim.fn.expand("$HOME/.pub-cache"),
vim.fn.expand("/opt/homebrew/"),
vim.fn.expand("$HOME/tools/flutter/"),
},
updateImportsOnRename = true,
completeFunctionCalls = true,
showTodos = true,
}
},
})
lsp.skip_server_setup({ 'rust_analyzer' })
lsp.setup()
vim.diagnostic.config({
virtual_text = true,
update_in_insert = false,
underline = true,
severity_sort = false,
float = true,
})
-- RUST SETUP
local rt = require("rust-tools")
-- Set up lspconfig.
local capabilities = require('cmp_nvim_lsp').default_capabilities()
-- Replace <YOUR_LSP_SERVER> with each lsp server you've enabled.
require('lspconfig')['rust_analyzer'].setup {
capabilities = capabilities
}
-- Configure LSP through rust-tools.nvim plugin.
-- rust-tools will configure and enable certain LSP features for us.
-- See https://github.com/simrat39/rust-tools.nvim#configuration
rt.setup({
server = {
capabilities = capabilities,
on_attach = function(_, bufnr)
-- Hover actions
vim.keymap.set("n", "K", rt.hover_actions.hover_actions, { buffer = bufnr })
-- Code action groups
vim.keymap.set("n", "<leader>la", rt.code_action_group.code_action_group, { buffer = bufnr })
vim.keymap.set("n", "<leader>lg", vim.diagnostic.open_float, { buffer = bufnr })
vim.keymap.set("n", "<leader>lf", vim.lsp.buf.format, { buffer = bufnr })
end,
settings = {
-- to enable rust-analyzer settings visit:
-- https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/user/generated_config.adoc
["rust-analyzer"] = {
diagnostics = {
enable = true,
experimental = {
enable = true
}
},
-- -- enable clippy on save
checkOnSave = {
command = "clippy",
},
cargo = {
-- to enable include! macro being read
-- loadOutDirsFromCheck = true,
buildScripts = {
-- to enable build scripts being read
enable = true
},
},
},
},
},
})
+13
View File
@@ -0,0 +1,13 @@
require('lualine').setup {
options = {
icons_enabled = true,
theme = 'codedark',
},
sections = {
lualine_a = {
{ 'filename',
path = 1,
}
}
}
}
+1
View File
@@ -0,0 +1 @@
require("startup").setup({theme = "dashboard"})
+25
View File
@@ -0,0 +1,25 @@
local builtin = require('telescope.builtin')
require('telescope').setup {
defaults = {
mappings = {
-- normal mode
n = {
['<c-d>'] = require('telescope.actions').delete_buffer
},
-- insert mode
i = {
['<c-d>'] = require('telescope.actions').delete_buffer
}
}
},
}
vim.keymap.set('n', '<leader>f', builtin.find_files, {})
vim.keymap.set('n', '<leader>sw', builtin.live_grep, {})
vim.keymap.set('n', '<leader>sr', builtin.lsp_references, {})
vim.keymap.set('n', '<leader>ss', builtin.lsp_document_symbols, {})
vim.keymap.set('n', '<leader>st', builtin.lsp_workspace_symbols, {})
vim.keymap.set('n', '<leader>sd', builtin.diagnostics, {})
vim.keymap.set('n', '<leader>so', builtin.buffers, {})
vim.keymap.set('n', '<leader>s/', builtin.current_buffer_fuzzy_find, {})
+23
View File
@@ -0,0 +1,23 @@
require'nvim-treesitter.configs'.setup {
-- A list of parser names, or "all"
ensure_installed = { "javascript", "typescript", "c", "lua", "rust" },
-- Install parsers synchronously (only applied to `ensure_installed`)
sync_install = false,
-- Automatically install missing parsers when entering buffer
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
auto_install = true,
highlight = {
-- `false` will disable the whole extension
enable = true,
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
-- Using this option may slow down your editor, and you may see some duplicate highlights.
-- Instead of true it can also be a list of languages
additional_vim_regex_highlighting = false,
},
}
+2
View File
@@ -0,0 +1,2 @@
vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle)
+13
View File
@@ -0,0 +1,13 @@
require("zen-mode").setup {
window = {
width = 100,
options = {
number = true,
relativenumber = true,
}
},
}
vim.keymap.set("n", "<leader>zz", function()
require("zen-mode").toggle()
end)