2021-10-25 19:44:21 +02:00
|
|
|
require("install-packer")
|
2021-10-11 18:02:04 +02:00
|
|
|
|
2021-08-19 17:04:46 +02:00
|
|
|
local u = require("utils")
|
|
|
|
|
2021-08-10 21:50:49 +02:00
|
|
|
local o = vim.o
|
|
|
|
local g = vim.g
|
2021-09-06 13:29:42 +02:00
|
|
|
local cmd = vim.cmd
|
2021-11-10 13:09:54 +01:00
|
|
|
local opt = vim.opt
|
2021-08-19 16:59:40 +02:00
|
|
|
|
2021-10-25 19:44:21 +02:00
|
|
|
require ("plugins")
|
2021-08-19 15:57:07 +02:00
|
|
|
|
2021-09-06 13:29:42 +02:00
|
|
|
if u.has_plugin("cmp") then
|
2021-08-19 17:14:34 +02:00
|
|
|
-- Global options
|
2021-10-27 20:37:42 +02:00
|
|
|
o.number = true -- show line number
|
2021-10-11 16:49:55 +02:00
|
|
|
o.tabstop = 2
|
2021-08-19 17:14:34 +02:00
|
|
|
o.shiftwidth = 2 -- Indents will have a width of 4
|
|
|
|
o.softtabstop = 2 -- Sets the number of columns for a TAB
|
2021-10-08 11:16:06 +02:00
|
|
|
o.expandtab = false -- Dont expand TABs to spaces
|
|
|
|
o.autoindent = true
|
2021-10-27 20:37:42 +02:00
|
|
|
o.showmatch = true -- show matching brackets
|
|
|
|
o.swapfile = false
|
|
|
|
|
2021-11-10 13:09:54 +01:00
|
|
|
o.autoread = true
|
|
|
|
|
|
|
|
o.lazyredraw = true
|
|
|
|
|
2021-10-27 20:37:42 +02:00
|
|
|
g.hidden = true --unload buffers when hidden
|
|
|
|
g.filetype = true -- execute autocommands based on filetype
|
2021-09-24 12:47:15 +02:00
|
|
|
|
2021-11-10 13:09:54 +01:00
|
|
|
-- Search
|
|
|
|
o.inccommand = 'nosplit' -- show substitutions incrementally
|
|
|
|
o.ignorecase = true
|
|
|
|
o.smartcase = true
|
|
|
|
opt.wildignore:append('.git/*', 'node_modules/*')
|
|
|
|
o.wildignorecase = true
|
|
|
|
o.lazyredraw = true
|
|
|
|
|
|
|
|
opt.listchars:append({
|
|
|
|
extends = "#",
|
|
|
|
eol = '↴',
|
|
|
|
space = '⋅',
|
|
|
|
tab = '▸ ',
|
|
|
|
})
|
|
|
|
|
|
|
|
-- Shortmess
|
|
|
|
cmd [[set shortmess+=F]]
|
|
|
|
g.loaded_netrw = 1
|
|
|
|
g.loaded_netrwPlugin = 1
|
|
|
|
g.loaded_zipPlugin = 1
|
|
|
|
g.loaded_zip = 1
|
|
|
|
|
2021-10-27 20:37:42 +02:00
|
|
|
cmd [[set mouse=a]] -- enable mouse interaction
|
|
|
|
cmd [[set undofile]]
|
|
|
|
cmd [[set fcs=eob:\ ]] --disable showing ~ in empty lines
|
2021-11-08 01:29:28 +01:00
|
|
|
|
2021-09-24 12:47:15 +02:00
|
|
|
cmd [[set noshowmode]] --to get rid of thing like --INSERT--
|
|
|
|
cmd [[set noshowcmd]] --to get rid of display of last command
|
2021-11-08 01:29:28 +01:00
|
|
|
cmd [[set noruler]]
|
|
|
|
|
|
|
|
g.ale_fixers = {"prettier", "eslint"}
|
2021-08-12 13:12:30 +02:00
|
|
|
|
2021-10-27 20:37:42 +02:00
|
|
|
-- Enable Theming / Syntax
|
2021-08-19 17:14:34 +02:00
|
|
|
o.syntax = "enable"
|
|
|
|
o.termguicolors = true
|
2021-10-27 20:37:42 +02:00
|
|
|
cmd("colorscheme material")
|
|
|
|
g.material_terminal_italics = 1
|
|
|
|
g.material_theme_style = "darker"
|
|
|
|
-- Remove background color
|
|
|
|
require("transparent").setup({enable = true})
|
|
|
|
cmd("highlight Normal guibg=none")
|
|
|
|
cmd("highlight NonText guibg=none")
|
|
|
|
|
2021-11-08 13:39:00 +01:00
|
|
|
require('neoscroll').setup()
|
|
|
|
|
2021-10-27 20:37:42 +02:00
|
|
|
-- Configure nvim-tree
|
|
|
|
g.nvim_tree_special_files = {}
|
2021-09-23 23:23:04 +02:00
|
|
|
g.nvim_tree_icons = {
|
|
|
|
default = "",
|
|
|
|
symlink = "",
|
|
|
|
git = {
|
|
|
|
unstaged = "*",
|
|
|
|
staged = "✓",
|
|
|
|
unmerged = "",
|
|
|
|
renamed = "➜",
|
|
|
|
untracked = "★",
|
|
|
|
deleted = "",
|
|
|
|
ignored = "◌"
|
|
|
|
},
|
|
|
|
folder = {
|
2021-10-27 20:37:42 +02:00
|
|
|
arrow_open = " ",
|
|
|
|
arrow_closed = " ",
|
2021-09-23 23:23:04 +02:00
|
|
|
default = "",
|
|
|
|
open = "",
|
|
|
|
empty = "",
|
|
|
|
empty_open = "",
|
|
|
|
symlink = "",
|
|
|
|
symlink_open = ""
|
|
|
|
},
|
|
|
|
lsp = {
|
|
|
|
hint = "",
|
|
|
|
info = "",
|
|
|
|
warning = "",
|
|
|
|
error = ""
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-10-27 20:37:42 +02:00
|
|
|
require("nvim-tree").setup {
|
|
|
|
auto_open = 1,
|
|
|
|
gitignore = 1,
|
|
|
|
group_empty = 1,
|
|
|
|
hijack_cursor = 1,
|
|
|
|
update_focused_file = {
|
|
|
|
enable = false,
|
|
|
|
},
|
|
|
|
diagnostics = {
|
|
|
|
enable = true
|
|
|
|
},
|
|
|
|
view = {
|
|
|
|
auto_resize = true,
|
|
|
|
hide_root_folder = true,
|
|
|
|
winopts = {
|
|
|
|
signcolumn = "no"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
require('nvim-tree.view').View.winopts.signcolumn = 'no'
|
|
|
|
|
|
|
|
-- Configure Wiki
|
2021-09-12 16:35:38 +02:00
|
|
|
g.wiki_root = "~/Notes"
|
|
|
|
g.wiki_filetypes = {"md"}
|
|
|
|
g.wiki_link_extension = ".md"
|
2021-10-27 20:37:42 +02:00
|
|
|
|
|
|
|
-- KeyBindings
|
2021-08-19 17:14:34 +02:00
|
|
|
g.mapleader = " "
|
|
|
|
require "keymappings"
|
2021-08-10 21:50:49 +02:00
|
|
|
|
2021-09-23 23:23:04 +02:00
|
|
|
require "nvim-tmux-navigation".setup {
|
|
|
|
keybindings = {
|
|
|
|
left = "<C-h>",
|
|
|
|
down = "<C-j>",
|
|
|
|
up = "<C-k>",
|
|
|
|
right = "<C-l>",
|
|
|
|
last_active = "<C-\\>",
|
|
|
|
next = "<C-Space>"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-10-11 16:49:55 +02:00
|
|
|
require'nvim-autopairs'.setup()
|
|
|
|
|
2021-08-19 17:14:34 +02:00
|
|
|
-- Treesitter config
|
2021-10-27 20:37:42 +02:00
|
|
|
require "treesitter-conf"
|
|
|
|
|
|
|
|
-- Toggleterm / Lazygit setup
|
2021-08-19 17:14:34 +02:00
|
|
|
require "lazy-git"
|
2021-09-06 13:29:42 +02:00
|
|
|
|
2021-11-10 13:09:54 +01:00
|
|
|
require "autocommands"
|
2021-08-10 21:50:49 +02:00
|
|
|
|
2021-09-06 13:29:42 +02:00
|
|
|
-- Setup rest.vim
|
|
|
|
require("rest-nvim").setup(
|
|
|
|
{
|
|
|
|
-- Open request results in a horizontal split
|
|
|
|
result_split_horizontal = false,
|
|
|
|
-- Skip SSL verification, useful for unknown certificates
|
|
|
|
skip_ssl_verification = false,
|
|
|
|
-- Highlight request on run
|
|
|
|
highlight = {
|
|
|
|
enabled = true,
|
|
|
|
timeout = 150
|
|
|
|
},
|
|
|
|
-- Jump to request line on run
|
|
|
|
jump_to_request = false
|
|
|
|
}
|
|
|
|
)
|
|
|
|
|
2021-08-19 17:14:34 +02:00
|
|
|
-- Autocompletion Setup
|
2021-10-27 20:37:42 +02:00
|
|
|
o.completeopt = "menuone,noselect,noinsert"
|
2021-08-19 17:14:34 +02:00
|
|
|
require "autocomplete"
|
2021-08-10 21:50:49 +02:00
|
|
|
|
2021-08-19 17:14:34 +02:00
|
|
|
-- LSP Config
|
2021-10-27 20:37:42 +02:00
|
|
|
require "lspinstaller-conf"
|
|
|
|
require "lsp-utils"
|
2021-08-10 21:50:49 +02:00
|
|
|
|
2021-08-19 17:24:36 +02:00
|
|
|
else
|
2021-10-25 19:44:21 +02:00
|
|
|
vim.cmd[[PackerSync]]
|
2021-08-31 21:22:57 +02:00
|
|
|
end
|