changing file structure and adding harpoon
parent
d09e5e3bc6
commit
8e1d6b1aae
@ -0,0 +1,12 @@
|
||||
-- sets autocommands for bufenters etc
|
||||
|
||||
-- recognize i3 files as such
|
||||
vim.api.nvim_create_autocmd({"BufRead","BufNewFile"}, {
|
||||
pattern = {"*/i3/*.conf"},
|
||||
command = "set filetype=i3config",
|
||||
})
|
||||
-- calcurse -> markdown
|
||||
vim.api.nvim_create_autocmd({"BufRead","BufNewFile"}, {
|
||||
pattern = {"/tmp/calcurse*","~/.local/share/calcurse/notes/*"},
|
||||
command = "set filetype=markdown",
|
||||
})
|
@ -1,7 +0,0 @@
|
||||
-- calcurse -> markdown
|
||||
vim.api.nvim_create_autocmd({"BufRead","BufNewFile"}, {
|
||||
pattern = {"/tmp/calcurse*","~/.local/share/calcurse/notes/*"},
|
||||
command = "set filetype=markdown",
|
||||
})
|
||||
|
||||
|
@ -1,11 +0,0 @@
|
||||
require('telescope').setup({
|
||||
defaults = {
|
||||
layout_config = {
|
||||
horizontal = { width = 0.5 }
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
local builtin = require('telescope.builtin')
|
||||
vim.keymap.set('n','<leader>f', builtin.find_files, {})
|
||||
vim.keymap.set('n','<leader>s', builtin.spell_suggest, {})
|
@ -1,6 +0,0 @@
|
||||
vim.g.go_hightlight_types = 1
|
||||
vim.g.go_hightlight_fields = 1
|
||||
vim.g.go_hightlight_functions = 1
|
||||
vim.g.go_hightlight_function_calls = 1
|
||||
vim.g.go_hightlight_operators = 1
|
||||
vim.g.go_hightlight_extra_types = 1
|
@ -1,6 +0,0 @@
|
||||
-- recognize i3 config from dotfiles
|
||||
--
|
||||
vim.api.nvim_create_autocmd({"BufRead","BufNewFile"}, {
|
||||
pattern = {"*/i3/*.conf"},
|
||||
command = "set filetype=i3config",
|
||||
})
|
@ -0,0 +1,83 @@
|
||||
-- language server setup
|
||||
local lspconfig = require('lspconfig')
|
||||
|
||||
-- Go
|
||||
lspconfig.gopls.setup{
|
||||
cmd = {"gopls", "serve"},
|
||||
filetypes = {"go", "gomod"},
|
||||
settings = {
|
||||
gopls = {
|
||||
analyses = {
|
||||
unusedparams = true,
|
||||
},
|
||||
staticcheck = true,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
-- C/C++
|
||||
lspconfig.clangd.setup{}
|
||||
|
||||
-- Lua
|
||||
lspconfig.lua_ls.setup{
|
||||
settings = {
|
||||
Lua = {
|
||||
diagnostics = {globals = {'vim', 'opts'}},
|
||||
},
|
||||
telemetry = {
|
||||
enable = false,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
-- Rust
|
||||
lspconfig.rust_analyzer.setup{}
|
||||
|
||||
-- Python
|
||||
lspconfig.pylsp.setup{}
|
||||
|
||||
-- TypeScript
|
||||
lspconfig.tsserver.setup{}
|
||||
|
||||
-- Fix virtual text going off screen
|
||||
vim.diagnostic.config({
|
||||
virtual_text = false,
|
||||
signs = true,
|
||||
underline = true,
|
||||
update_in_insert = false,
|
||||
severity_sort = false,
|
||||
})
|
||||
|
||||
|
||||
vim.api.nvim_create_autocmd('LspAttach', {
|
||||
callback = function(ev)
|
||||
-- custom colors
|
||||
--vim.cmd('hi DiagnosticUnderlineError cterm=undercurl guisp=Red')
|
||||
-- key mappings
|
||||
local opts = { buffer = ev.buf,}
|
||||
-- error viewing
|
||||
vim.keymap.set('n', '<leader>e', vim.diagnostic.open_float, opts)
|
||||
vim.keymap.set('n', '<leader>[d', vim.diagnostic.goto_prev, opts)
|
||||
vim.keymap.set('n', '<leader>]d', vim.diagnostic.goto_next, opts)
|
||||
-- def viewing/rename
|
||||
vim.keymap.set('n', '<leader>gD', vim.lsp.buf.declaration, opts)
|
||||
vim.keymap.set('n', '<leader>gd', vim.lsp.buf.definition, opts)
|
||||
vim.keymap.set('n', '<leader>rn', vim.lsp.buf.rename, opts)
|
||||
vim.keymap.set('n', '<leader>H', vim.lsp.buf.hover, opts)
|
||||
-- auto hover for error viewing
|
||||
vim.api.nvim_create_autocmd("CursorHold", {
|
||||
callback = function()
|
||||
opts = {
|
||||
buffer = ev.buf,
|
||||
focusable = false,
|
||||
border = 'rounded',
|
||||
source = 'always',
|
||||
prefix = ' ',
|
||||
scope = 'cursor',
|
||||
close_events = { "BufLeave","CursorMoved","InsertEnter","FocusLost" },
|
||||
}
|
||||
vim.diagnostic.open_float(nil, opts)
|
||||
end
|
||||
})
|
||||
end,
|
||||
})
|
@ -1,13 +1,52 @@
|
||||
require('tree')
|
||||
require('fuzzy')
|
||||
require('lsp')
|
||||
require('transparent')
|
||||
require('spellcheck')
|
||||
|
||||
-- airline settings
|
||||
if vim.g.airline_symbols == nil then
|
||||
vim.g.airline_symbols = vim.empty_dict()
|
||||
-- nvim tree setup
|
||||
require('nvim-tree').setup({
|
||||
open_on_tab = false,
|
||||
filters = {
|
||||
dotfiles = true,
|
||||
},
|
||||
actions = {
|
||||
open_file = {
|
||||
quit_on_open = true,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
showHiddenFiles = false
|
||||
|
||||
local function open_nvim_tree(data)
|
||||
|
||||
-- buffer is a directory
|
||||
local directory = vim.fn.isdirectory(data.file) == 1
|
||||
|
||||
local empty_file = data.file == ""
|
||||
|
||||
if not directory and not empty_file then
|
||||
return
|
||||
end
|
||||
|
||||
vim.g.airline_powerline_fonts = 1
|
||||
vim.g.airline_symbols.linenr = ''
|
||||
vim.g.airline_symbols.maxlinenr = ''
|
||||
vim.g.airline_symbols.dirty = ''
|
||||
if directory then
|
||||
vim.cmd.cd(data.file)
|
||||
end
|
||||
vim.cmd.enew()
|
||||
vim.cmd.bw(data.buf)
|
||||
-- change to directory and open
|
||||
require("nvim-tree.api").tree.open()
|
||||
end
|
||||
|
||||
-- nvim-tree open at startup
|
||||
vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = open_nvim_tree, })
|
||||
|
||||
-- fuzzy finder setup
|
||||
require('telescope').setup({
|
||||
defaults = {
|
||||
layout_config = {
|
||||
horizontal = { width = 0.5 }
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
require.('telescope).load_extension('harpoon')
|
||||
|
@ -0,0 +1,9 @@
|
||||
-- simple spell check toggle
|
||||
|
||||
function SpellToggle()
|
||||
if vim.o.spell == nil or vim.o.spell then
|
||||
vim.o.spell = false
|
||||
else
|
||||
vim.o.spell = true
|
||||
end
|
||||
end
|
@ -1,9 +1,10 @@
|
||||
-- allows for toggling of background
|
||||
function ToggleTransparent()
|
||||
Transparent = not Transparent
|
||||
if Transparent then
|
||||
vim.cmd("hi Normal ctermbg=NONE")
|
||||
else
|
||||
vim.cmd("set background=dark")
|
||||
vim.cmd("syntax enable")
|
||||
-- 234 is hybrid dark bg color
|
||||
vim.cmd("hi Normal ctermbg=234")
|
||||
end
|
||||
end
|
||||
|
@ -1,40 +0,0 @@
|
||||
require('nvim-tree').setup({
|
||||
open_on_tab = false,
|
||||
filters = {
|
||||
dotfiles = true,
|
||||
},
|
||||
actions = {
|
||||
open_file = {
|
||||
quit_on_open = true,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
showHiddenFiles = false
|
||||
|
||||
local function open_nvim_tree(data)
|
||||
|
||||
-- buffer is a directory
|
||||
local directory = vim.fn.isdirectory(data.file) == 1
|
||||
|
||||
local empty_file = data.file == ""
|
||||
|
||||
if not directory and not empty_file then
|
||||
return
|
||||
end
|
||||
|
||||
if directory then
|
||||
vim.cmd.cd(data.file)
|
||||
end
|
||||
vim.cmd.enew()
|
||||
vim.cmd.bw(data.buf)
|
||||
-- change to directory and open
|
||||
require("nvim-tree.api").tree.open()
|
||||
end
|
||||
|
||||
-- toggle dotfiles visibility
|
||||
vim.keymap.set("n", "<leader>d", ":lua require('nvim-tree.api').tree.toggle_hidden_filter()<CR>")
|
||||
|
||||
-- nvim-tree open at startup
|
||||
vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = open_nvim_tree, })
|
||||
|
Loading…
Reference in New Issue