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
BIN
View File
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
packer_compiled.lua
+18
View File
@@ -0,0 +1,18 @@
## Step one
install ripgrep: `brew install ripgrep`
install `packer` (find install on their github repo)
## Step two
open nvim anywhere. `nvim .`
## Step three
run `:PackerSync`
## Step four
go ahead and play around in the remaps.
the vim related keymaps in are in the remaps.lua file. however, all
plugin related remaps are in their respective files.
+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)
+5
View File
@@ -0,0 +1,5 @@
#!/usr/bin/env bash
rm -rf ~/.config/nvim
ln -s $(pwd) ~/.config/nvim
+1
View File
@@ -0,0 +1 @@
require("talksik")
+34
View File
@@ -0,0 +1,34 @@
require("talksik.packer")
require("talksik.set")
require("talksik.remap")
local augroup = vim.api.nvim_create_augroup
local talksikGroup = augroup('talksik', {})
local autocmd = vim.api.nvim_create_autocmd
local yank_group = augroup('HighlightYank', {})
function R(name)
require("plenary.reload").reload_module(name)
end
autocmd('TextYankPost', {
group = yank_group,
pattern = '*',
callback = function()
vim.highlight.on_yank({
higroup = 'IncSearch',
timeout = 40,
})
end,
})
autocmd({"BufWritePre"}, {
group = talksikGroup,
pattern = "*",
command = [[%s/\s\+$//e]],
})
vim.g.netrw_browse_split = 0
vim.g.netrw_banner = 0
vim.g.netrw_winsize = 25
+101
View File
@@ -0,0 +1,101 @@
-- This file can be loaded by calling `lua require('plugins')` from your init.vim
-- Only required if you have packer configured as `opt`
vim.cmd [[packadd packer.nvim]]
return require('packer').startup(function(use)
-- Packer can manage itself
use 'wbthomason/packer.nvim'
use('nvim-lua/plenary.nvim')
use {
'nvim-telescope/telescope.nvim', tag = '0.1.0',
-- or , branch = '0.1.x',
requires = { { 'nvim-lua/plenary.nvim' } }
}
use({ 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' })
use('nvim-treesitter/playground')
use('mbbill/undotree')
use {
'VonHeikemen/lsp-zero.nvim',
branch = 'v1.x',
requires = {
-- LSP Support
{ 'neovim/nvim-lspconfig' },
{ 'williamboman/mason.nvim' },
{ 'williamboman/mason-lspconfig.nvim' },
-- Autocompletion
{ 'hrsh7th/nvim-cmp' },
{ 'hrsh7th/cmp-buffer' },
{ 'hrsh7th/cmp-path' },
{ 'saadparwaiz1/cmp_luasnip' },
{ 'hrsh7th/cmp-nvim-lsp' },
{ 'hrsh7th/cmp-nvim-lua' },
-- Snippets
{ 'L3MON4D3/LuaSnip' },
{ 'rafamadriz/friendly-snippets' },
}
}
use("folke/zen-mode.nvim")
use("github/copilot.vim")
use("eandrju/cellular-automaton.nvim")
use("nvim-tree/nvim-web-devicons")
use {
'nvim-lualine/lualine.nvim',
}
use("f-person/git-blame.nvim")
use("wellle/context.vim")
use {
'numToStr/Comment.nvim',
config = function()
require('Comment').setup()
end
}
-- Adds extra functionality over rust analyzer
use("simrat39/rust-tools.nvim")
use("ThePrimeagen/harpoon")
-- themes
use('shaunsingh/solarized.nvim')
use('navarasu/onedark.nvim')
use('nvim-lua/lsp-status.nvim')
use {
"startup-nvim/startup.nvim",
requires = {"nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim"},
}
use('RobertBrunhage/flutter-riverpod-snippets')
use('Neevash/awesome-flutter-snippets')
use {
'akinsho/flutter-tools.nvim',
requires = {
'nvim-lua/plenary.nvim',
'stevearc/dressing.nvim', -- optional for vim.ui.select
},
}
use({
"iamcco/markdown-preview.nvim",
run = function() vim.fn["mkdp#util#install"]() end,
})
use('peterhoeg/vim-qml')
use('tpope/vim-fugitive')
end)
+57
View File
@@ -0,0 +1,57 @@
vim.g.mapleader = " "
vim.keymap.set("n", "<leader>e", vim.cmd.Ex)
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv")
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv")
vim.keymap.set("n", "J", "mzJ`z")
vim.keymap.set("n", "<C-d>", "<C-d>zz")
vim.keymap.set("n", "<C-u>", "<C-u>zz")
vim.keymap.set("n", "<C-n>", "nzzzv")
vim.keymap.set("n", "<C-p>", "Nzzzv")
vim.keymap.set("n", "n", "nzzzv")
vim.keymap.set("n", "N", "Nzzzv")
vim.keymap.set("n", "*", "*zz")
-- cycle through current and last buffer
vim.keymap.set("n", "<leader>b", "<C-^>zz")
vim.keymap.set("n", "<leader>vwm", function()
require("vim-with-me").StartVimWithMe()
end)
vim.keymap.set("n", "<leader>svwm", function()
require("vim-with-me").StopVimWithMe()
end)
-- greatest remap ever
vim.keymap.set("x", "<leader>p", [["_dP]])
-- next greatest remap ever : asbjornHaland
vim.keymap.set({ "n", "v" }, "<leader>y", [["+y]])
vim.keymap.set("n", "<leader>Y", [["+Y]])
vim.keymap.set({ "n", "v" }, "<leader>d", [["_d]])
-- This is going to get me cancelled
vim.keymap.set("i", "<C-c>", "<Esc>")
vim.keymap.set("n", "Q", "<nop>")
vim.keymap.set("n", "<C-f>", "<cmd>silent !tmux neww tmux-sessionizer<CR>")
vim.keymap.set("n", "<C-k>", "<cmd>cnext<CR>zz")
vim.keymap.set("n", "<C-j>", "<cmd>cprev<CR>zz")
vim.keymap.set("n", "<leader>k", "<cmd>lnext<CR>zz")
vim.keymap.set("n", "<leader>j", "<cmd>lprev<CR>zz")
vim.keymap.set("n", "<leader>x", "<cmd>!chmod +x %<CR>", { silent = true })
vim.keymap.set("n", "<leader>vpp", "<cmd>e ~/.dotfiles/nvim/.config/nvim/lua/theprimeagen/packer.lua<CR>");
vim.keymap.set("n", "<leader>mr", "<cmd>CellularAutomaton make_it_rain<CR>");
-- go to different buffers with C hjkl
vim.keymap.set("n", "<C-h>", "<C-w>h")
vim.keymap.set("n", "<C-j>", "<C-w>j")
vim.keymap.set("n", "<C-k>", "<C-w>k")
vim.keymap.set("n", "<C-l>", "<C-w>l")
+36
View File
@@ -0,0 +1,36 @@
vim.opt.nu = true
vim.opt.relativenumber = true
vim.opt.tabstop = 2
vim.opt.softtabstop = 2
vim.opt.shiftwidth = 2
vim.opt.expandtab = true
vim.opt.smartindent = true
vim.opt.wrap = false
vim.opt.swapfile = false
vim.opt.backup = false
vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir"
vim.opt.undofile = true
-- vim.opt.hlsearch = false
vim.opt.incsearch = true
vim.opt.termguicolors = true
vim.opt.scrolloff = 8
vim.opt.signcolumn = "yes"
vim.opt.isfname:append("@-@")
vim.opt.updatetime = 50
vim.opt.colorcolumn = "80"
vim.leader = " "
-- case insensitive searching UNLESS /C or capital in searching
vim.opt.ignorecase = true
BIN
View File
Binary file not shown.