New neovim config using lua - Initial setup
parent
9ed0387ce2
commit
bb605769d8
12
bash/.bashrc
12
bash/.bashrc
|
@ -1,3 +1,7 @@
|
||||||
|
|
||||||
|
# If not running interactively, don't do anything
|
||||||
|
[[ $- != *i* ]] && return
|
||||||
|
|
||||||
# Add ~/bin and ~/bin/scripts to my path
|
# Add ~/bin and ~/bin/scripts to my path
|
||||||
export PATH=$PATH:$HOME/bin/:$HOME/bin/scripts/
|
export PATH=$PATH:$HOME/bin/:$HOME/bin/scripts/
|
||||||
|
|
||||||
|
@ -104,7 +108,7 @@ ${PROMPT_SYMBOL} "
|
||||||
PROMPT_COMMAND=set_bash_prompt
|
PROMPT_COMMAND=set_bash_prompt
|
||||||
|
|
||||||
# fzf is love, fzf is life.
|
# fzf is love, fzf is life.
|
||||||
source /usr/share/bash-completion/completions/fzf-key-bindings
|
source /usr/share/fzf/key-bindings.bash
|
||||||
|
|
||||||
function cdl() {
|
function cdl() {
|
||||||
cd $@
|
cd $@
|
||||||
|
@ -114,7 +118,7 @@ function cdl() {
|
||||||
# Functions
|
# Functions
|
||||||
function cd-projects {
|
function cd-projects {
|
||||||
dir=$(find ~/Projects -maxdepth 3 -type d | fzf)
|
dir=$(find ~/Projects -maxdepth 3 -type d | fzf)
|
||||||
cd $dir
|
cd "$dir"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Aliases
|
# Aliases
|
||||||
|
@ -122,3 +126,7 @@ alias gg="git log --graph --abbrev-commit --decorate --format=format:'%C(bold bl
|
||||||
alias gca="git add -A; git commit -a --amend --no-edit"
|
alias gca="git add -A; git commit -a --amend --no-edit"
|
||||||
alias gs="git status"
|
alias gs="git status"
|
||||||
alias proj="cd-projects"
|
alias proj="cd-projects"
|
||||||
|
|
||||||
|
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
|
||||||
|
export SDKMAN_DIR="$HOME/.sdkman"
|
||||||
|
[[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||||
|
|
|
@ -0,0 +1,39 @@
|
||||||
|
vim.opt.termguicolors = true
|
||||||
|
vim.opt.clipboard = 'unnamed,unnamedplus'
|
||||||
|
vim.opt.timeoutlen = 300
|
||||||
|
vim.opt.mouse = 'a'
|
||||||
|
vim.opt.undodir = vim.fn.expand('~/.cache/vim/undo')
|
||||||
|
vim.opt.listchars = 'tab:▸ ,extends:❯,precedes:❮'
|
||||||
|
|
||||||
|
vim.opt.relativenumber = true
|
||||||
|
vim.opt.list = true
|
||||||
|
|
||||||
|
vim.opt.autoindent = true
|
||||||
|
vim.opt.expandtab = true
|
||||||
|
vim.opt.softtabstop = 4
|
||||||
|
vim.opt.shiftwidth = 4
|
||||||
|
vim.opt.tabstop = 4
|
||||||
|
vim.opt.smartindent = true
|
||||||
|
vim.opt.modeline = true
|
||||||
|
|
||||||
|
vim.opt.undofile = true
|
||||||
|
vim.g.mapleader = ' '
|
||||||
|
|
||||||
|
-- Load utilities
|
||||||
|
require('kalle.utils')
|
||||||
|
|
||||||
|
-- Load plugins
|
||||||
|
require('kalle.plugins')
|
||||||
|
|
||||||
|
vim.cmd('colorscheme nightfox')
|
||||||
|
|
||||||
|
-- Load config
|
||||||
|
require('kalle.config')
|
||||||
|
|
||||||
|
-- TODO:
|
||||||
|
-- - Terminal panel at the bottem that can be hidden / shown with a hotkey (<Leader>ts [Leader Toggle Shell]?) [https://github.com/akinsho/toggleterm.nvim]
|
||||||
|
-- - Spell checker
|
||||||
|
-- - Debugger integration (gdb?, java?/kotlin?, rust?, etc)
|
||||||
|
-- - https://github.com/SmiteshP/nvim-navic
|
||||||
|
-- - https://github.com/simrat39/symbols-outline.nvim
|
||||||
|
-- - More...?
|
|
@ -0,0 +1,2 @@
|
||||||
|
require('kalle.config.keybinds')
|
||||||
|
require('kalle.config.plugin-config')
|
|
@ -0,0 +1,42 @@
|
||||||
|
Keybind.g({
|
||||||
|
-- [ space + h ] move cursor to left window
|
||||||
|
{ 'n', '<Leader>h', '<Cmd>wincmd h<CR>', { noremap = true, desc = 'Window left' } },
|
||||||
|
-- [ space + l ] move cursor to bottom window
|
||||||
|
{ 'n', '<Leader>j', '<Cmd>wincmd j<CR>', { noremap = true, desc = 'Window down' } },
|
||||||
|
-- [ space + j ] move cursor to top window
|
||||||
|
{ 'n', '<Leader>k', '<Cmd>wincmd k<CR>', { noremap = true, desc = 'Window up' } },
|
||||||
|
-- [ space + k ] move cursor to right window
|
||||||
|
{ 'n', '<Leader>l', '<Cmd>wincmd l<CR>', { noremap = true, desc = 'Window right' } },
|
||||||
|
-- [ space + 1 ] tab 1
|
||||||
|
{ 'n', '<Leader>1', '<Cmd>BufferLineGoToBuffer 1<CR>', {noremap = true, desc = 'Tab 1' } },
|
||||||
|
-- [ space + 2 ] tab 2
|
||||||
|
{ 'n', '<Leader>2', '<Cmd>BufferLineGoToBuffer 2<CR>', {noremap = true, desc = 'Tab 2' } },
|
||||||
|
-- [ space + 3 ] tab 3
|
||||||
|
{ 'n', '<Leader>3', '<Cmd>BufferLineGoToBuffer 3<CR>', {noremap = true, desc = 'Tab 3' } },
|
||||||
|
-- [ space + 4 ] tab 4
|
||||||
|
{ 'n', '<Leader>4', '<Cmd>BufferLineGoToBuffer 4<CR>', {noremap = true, desc = 'Tab 4' } },
|
||||||
|
-- [ space + 5 ] tab 5
|
||||||
|
{ 'n', '<Leader>5', '<Cmd>BufferLineGoToBuffer 5<CR>', {noremap = true, desc = 'Tab 5' } },
|
||||||
|
-- [ space + 6 ] tab 6
|
||||||
|
{ 'n', '<Leader>6', '<Cmd>BufferLineGoToBuffer 6<CR>', {noremap = true, desc = 'Tab 6' } },
|
||||||
|
-- [ space + 7 ] tab 7
|
||||||
|
{ 'n', '<Leader>7', '<Cmd>BufferLineGoToBuffer 7<CR>', {noremap = true, desc = 'Tab 7' } },
|
||||||
|
-- [ space + 8 ] tab 8
|
||||||
|
{ 'n', '<Leader>8', '<Cmd>BufferLineGoToBuffer 8<CR>', {noremap = true, desc = 'Tab 8' } },
|
||||||
|
-- [ space + 9 ] tab 9
|
||||||
|
{ 'n', '<Leader>9', '<Cmd>BufferLineGoToBuffer 9<CR>', {noremap = true, desc = 'Tab 9' } },
|
||||||
|
|
||||||
|
-- [ space + t ] Toggles
|
||||||
|
{ 'n', '<Leader>t', '', { noremap = true, desc = '+Toggle' } },
|
||||||
|
-- [ space + t + t] Toggle file tree
|
||||||
|
{ 'n', '<Leader>tt', '<Cmd>NvimTreeToggle<CR>', { noremap = true, desc = 'Open file tree' } },
|
||||||
|
-- [ space + t + g] Neogit
|
||||||
|
{ 'n', '<Leader>tg', '<Cmd>Neogit<CR>', { noremap = true, desc = 'Open git status' } },
|
||||||
|
|
||||||
|
-- [ space + o] Open
|
||||||
|
{ 'n', '<Leader>o', '', { noremap = true, desc = '+Open' } },
|
||||||
|
-- [ space + o + f] Open file
|
||||||
|
{ 'n', '<Leader>of', '<Cmd>Telescope git_files<CR>', { noremap = true, desc = 'Open file' } },
|
||||||
|
|
||||||
|
|
||||||
|
})
|
|
@ -0,0 +1,182 @@
|
||||||
|
require('which-key').setup {}
|
||||||
|
|
||||||
|
require('nvim-tree').setup {
|
||||||
|
sort_by = 'case_sensitive',
|
||||||
|
view = {
|
||||||
|
adaptive_size = true,
|
||||||
|
mappings = {
|
||||||
|
custom_only = false,
|
||||||
|
list = {},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
renderer = {
|
||||||
|
group_empty = true,
|
||||||
|
highlight_git = true,
|
||||||
|
highlight_opened_files = "name",
|
||||||
|
indent_markers = {
|
||||||
|
enable = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
filters = {
|
||||||
|
dotfiles = true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
require('neogit').setup {}
|
||||||
|
|
||||||
|
require('lualine').setup {}
|
||||||
|
|
||||||
|
require('bufferline').setup {
|
||||||
|
options = {
|
||||||
|
mode = 'buffers',
|
||||||
|
numbers = 'ordinal',
|
||||||
|
separator_style = 'slant',
|
||||||
|
show_buffer_icons = true,
|
||||||
|
show_buffer_close_icons = false,
|
||||||
|
show_close_icon = false,
|
||||||
|
always_show_bufferline = true,
|
||||||
|
right_mouse_command = function(bufnum) end,
|
||||||
|
middle_mouse_command = function(bufnum)
|
||||||
|
require('bufdelete').bufdelete(bufnum)
|
||||||
|
end,
|
||||||
|
custom_areas = {
|
||||||
|
right = function()
|
||||||
|
local result = {}
|
||||||
|
local seve = vim.diagnostic.severity
|
||||||
|
local error = #vim.diagnostic.get(0, {severity = seve.ERROR})
|
||||||
|
local warning = #vim.diagnostic.get(0, {severity = seve.WARN})
|
||||||
|
local info = #vim.diagnostic.get(0, {severity = seve.INFO})
|
||||||
|
local hint = #vim.diagnostic.get(0, {severity = seve.HINT})
|
||||||
|
|
||||||
|
if error ~= 0 then
|
||||||
|
table.insert(result, {text = " " .. error, fg = "#EC5241"})
|
||||||
|
end
|
||||||
|
|
||||||
|
if warning ~= 0 then
|
||||||
|
table.insert(result, {text = " " .. warning, fg = "#EFB839"})
|
||||||
|
end
|
||||||
|
|
||||||
|
if hint ~= 0 then
|
||||||
|
table.insert(result, {text = " " .. hint, fg = "#A3BA5E"})
|
||||||
|
end
|
||||||
|
|
||||||
|
if info ~= 0 then
|
||||||
|
table.insert(result, {text = " " .. info, fg = "#7EA9A7"})
|
||||||
|
end
|
||||||
|
return result
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
offsets = {
|
||||||
|
{
|
||||||
|
filetype = "NvimTree",
|
||||||
|
text = function()
|
||||||
|
return vim.fn.getcwd()
|
||||||
|
end,
|
||||||
|
highlight = "Directory",
|
||||||
|
text_align = "left"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
local cmp = require'cmp'
|
||||||
|
|
||||||
|
cmp.setup({
|
||||||
|
snippet = {
|
||||||
|
expand = function(args)
|
||||||
|
require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
mapping = cmp.mapping.preset.insert({
|
||||||
|
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||||
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||||
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
|
['<C-e>'] = cmp.mapping.abort(),
|
||||||
|
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||||
|
}),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = 'nvim_lsp' },
|
||||||
|
}, {
|
||||||
|
{ name = 'buffer' },
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
cmp.setup.filetype('gitcommit', {
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = 'cmp_git' }, -- You can specify the `cmp_git` source if you were installed it.
|
||||||
|
}, {
|
||||||
|
{ name = 'buffer' },
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Use buffer source for `/` (if you enabled `native_menu`, this won't work anymore).
|
||||||
|
cmp.setup.cmdline('/', {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = {
|
||||||
|
{ name = 'buffer' }
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
|
||||||
|
cmp.setup.cmdline(':', {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = 'path' }
|
||||||
|
}, {
|
||||||
|
{ name = 'cmdline' }
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
-- The nvim-cmp almost supports LSP's capabilities so You should advertise it to LSP servers..
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities)
|
||||||
|
|
||||||
|
require("mason").setup()
|
||||||
|
require("mason-lspconfig").setup()
|
||||||
|
require("mason-lspconfig").setup_handlers({
|
||||||
|
function (server_name) -- default handler (optional)
|
||||||
|
if server_name == 'sumneko_lua' then
|
||||||
|
require("lspconfig")[server_name].setup {
|
||||||
|
capabilities = capabilities,
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
diagnostics = {
|
||||||
|
globals = {'vim'}
|
||||||
|
},
|
||||||
|
runtime = {
|
||||||
|
version = "LuaJIT",
|
||||||
|
path = vim.split(package.path, ";")
|
||||||
|
},
|
||||||
|
workspace = {
|
||||||
|
library = {
|
||||||
|
[vim.fn.expand("$VIMRUNTIME/lua")] = true,
|
||||||
|
[vim.fn.expand("$VIMRUNTIME/lua/vim/lsp")] = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
else
|
||||||
|
require("lspconfig")[server_name].setup {
|
||||||
|
capabilities = capabilities,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
require('gitsigns').setup {
|
||||||
|
current_line_blame = true,
|
||||||
|
}
|
||||||
|
|
||||||
|
require('marks').setup {}
|
||||||
|
|
||||||
|
require('nvim-treesitter.configs').setup {
|
||||||
|
auto_install = true,
|
||||||
|
highlight = {
|
||||||
|
enable = true,
|
||||||
|
additional_vim_regex_highlighting = false,
|
||||||
|
},
|
||||||
|
indent = {
|
||||||
|
enable = true
|
||||||
|
},
|
||||||
|
}
|
|
@ -0,0 +1,88 @@
|
||||||
|
vim.cmd([[
|
||||||
|
augroup packer_user_config
|
||||||
|
autocmd!
|
||||||
|
autocmd BufWritePost plugins.lua source <afile> | PackerCompile
|
||||||
|
augroup end
|
||||||
|
]])
|
||||||
|
|
||||||
|
local fn = vim.fn
|
||||||
|
local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
|
||||||
|
if fn.empty(fn.glob(install_path)) > 0 then
|
||||||
|
packer_bootstrap = fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
|
||||||
|
vim.cmd [[packadd packer.nvim]]
|
||||||
|
end
|
||||||
|
|
||||||
|
return require('packer').startup({function(use)
|
||||||
|
use('wbthomason/packer.nvim')
|
||||||
|
use('EdenEast/nightfox.nvim')
|
||||||
|
use('folke/which-key.nvim')
|
||||||
|
|
||||||
|
use {
|
||||||
|
'nvim-treesitter/nvim-treesitter',
|
||||||
|
run = function() require('nvim-treesitter.install').update({ with_sync = true }) end,
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'kyazdani42/nvim-tree.lua',
|
||||||
|
requires = {
|
||||||
|
'kyazdani42/nvim-web-devicons',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
"williamboman/mason.nvim",
|
||||||
|
"williamboman/mason-lspconfig.nvim",
|
||||||
|
}
|
||||||
|
|
||||||
|
use('chentoast/marks.nvim')
|
||||||
|
|
||||||
|
use('neovim/nvim-lspconfig')
|
||||||
|
|
||||||
|
use('L3MON4D3/LuaSnip')
|
||||||
|
|
||||||
|
use {
|
||||||
|
'hrsh7th/cmp-nvim-lsp',
|
||||||
|
'hrsh7th/cmp-buffer',
|
||||||
|
'hrsh7th/cmp-path',
|
||||||
|
'hrsh7th/cmp-cmdline',
|
||||||
|
'hrsh7th/nvim-cmp',
|
||||||
|
}
|
||||||
|
|
||||||
|
use 'famiu/bufdelete.nvim'
|
||||||
|
|
||||||
|
use {
|
||||||
|
'TimUntersberger/neogit',
|
||||||
|
'lewis6991/gitsigns.nvim',
|
||||||
|
}
|
||||||
|
use('nvim-lua/plenary.nvim')
|
||||||
|
|
||||||
|
use('nvim-lualine/lualine.nvim')
|
||||||
|
use {
|
||||||
|
'akinsho/bufferline.nvim', tag = "v2.*",
|
||||||
|
requires = 'kyazdani42/nvim-web-devicons'
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'nvim-telescope/telescope.nvim', tag = '0.1.0',
|
||||||
|
requires = {
|
||||||
|
'nvim-lua/plenary.nvim'
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Automatically set up your configuration after cloning packer.nvim
|
||||||
|
-- Put this at the end after all plugins
|
||||||
|
if packer_bootstrap then
|
||||||
|
require('packer').sync()
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
config = {
|
||||||
|
auto_reload_compiled = false, -- Automatically reload the compiled file after creating it.
|
||||||
|
display = {
|
||||||
|
open_fn = function()
|
||||||
|
return require('packer.util').float({ border = 'single' })
|
||||||
|
end
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
-- run bootstrap: nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync'
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
Keybind = require('kalle.utils.keybind')
|
||||||
|
|
||||||
|
Vim = {
|
||||||
|
Keybind = Keybind,
|
||||||
|
}
|
|
@ -0,0 +1,37 @@
|
||||||
|
local Keybind = {}
|
||||||
|
|
||||||
|
Keybind.add_global_keybinds = function (keybinds)
|
||||||
|
for _, keybind in pairs(keybinds) do
|
||||||
|
if(keybind[4] == nil) then
|
||||||
|
keybind[4] = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_set_keymap(
|
||||||
|
keybind[1],
|
||||||
|
keybind[2],
|
||||||
|
keybind[3],
|
||||||
|
keybind[4]
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
Keybind.add_buffer_keybinds = function (keybinds)
|
||||||
|
for _, keybind in pairs(keybinds) do
|
||||||
|
if(keybind[5] == nil) then
|
||||||
|
keybind[5] = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_buf_set_keymap(
|
||||||
|
keybind[1],
|
||||||
|
keybind[2],
|
||||||
|
keybind[3],
|
||||||
|
keybind[4],
|
||||||
|
keybind[5]
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
Keybind.g = Keybind.add_global_keybinds
|
||||||
|
Keybind.b = Keybind.add_buffer_keybinds
|
||||||
|
|
||||||
|
return Keybind
|
|
@ -0,0 +1,197 @@
|
||||||
|
-- Automatically generated packer.nvim plugin loader code
|
||||||
|
|
||||||
|
if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then
|
||||||
|
vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"')
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_command('packadd packer.nvim')
|
||||||
|
|
||||||
|
local no_errors, error_msg = pcall(function()
|
||||||
|
|
||||||
|
local time
|
||||||
|
local profile_info
|
||||||
|
local should_profile = false
|
||||||
|
if should_profile then
|
||||||
|
local hrtime = vim.loop.hrtime
|
||||||
|
profile_info = {}
|
||||||
|
time = function(chunk, start)
|
||||||
|
if start then
|
||||||
|
profile_info[chunk] = hrtime()
|
||||||
|
else
|
||||||
|
profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
time = function(chunk, start) end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function save_profiles(threshold)
|
||||||
|
local sorted_times = {}
|
||||||
|
for chunk_name, time_taken in pairs(profile_info) do
|
||||||
|
sorted_times[#sorted_times + 1] = {chunk_name, time_taken}
|
||||||
|
end
|
||||||
|
table.sort(sorted_times, function(a, b) return a[2] > b[2] end)
|
||||||
|
local results = {}
|
||||||
|
for i, elem in ipairs(sorted_times) do
|
||||||
|
if not threshold or threshold and elem[2] > threshold then
|
||||||
|
results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
_G._packer = _G._packer or {}
|
||||||
|
_G._packer.profile_output = results
|
||||||
|
end
|
||||||
|
|
||||||
|
time([[Luarocks path setup]], true)
|
||||||
|
local package_path_str = "/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua"
|
||||||
|
local install_cpath_pattern = "/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so"
|
||||||
|
if not string.find(package.path, package_path_str, 1, true) then
|
||||||
|
package.path = package.path .. ';' .. package_path_str
|
||||||
|
end
|
||||||
|
|
||||||
|
if not string.find(package.cpath, install_cpath_pattern, 1, true) then
|
||||||
|
package.cpath = package.cpath .. ';' .. install_cpath_pattern
|
||||||
|
end
|
||||||
|
|
||||||
|
time([[Luarocks path setup]], false)
|
||||||
|
time([[try_loadstring definition]], true)
|
||||||
|
local function try_loadstring(s, component, name)
|
||||||
|
local success, result = pcall(loadstring(s), name, _G.packer_plugins[name])
|
||||||
|
if not success then
|
||||||
|
vim.schedule(function()
|
||||||
|
vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {})
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
return result
|
||||||
|
end
|
||||||
|
|
||||||
|
time([[try_loadstring definition]], false)
|
||||||
|
time([[Defining packer_plugins]], true)
|
||||||
|
_G.packer_plugins = {
|
||||||
|
LuaSnip = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/LuaSnip",
|
||||||
|
url = "https://github.com/L3MON4D3/LuaSnip"
|
||||||
|
},
|
||||||
|
["bufdelete.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/bufdelete.nvim",
|
||||||
|
url = "https://github.com/famiu/bufdelete.nvim"
|
||||||
|
},
|
||||||
|
["bufferline.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/bufferline.nvim",
|
||||||
|
url = "https://github.com/akinsho/bufferline.nvim"
|
||||||
|
},
|
||||||
|
["cmp-buffer"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/cmp-buffer",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-buffer"
|
||||||
|
},
|
||||||
|
["cmp-cmdline"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/cmp-cmdline",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-cmdline"
|
||||||
|
},
|
||||||
|
["cmp-nvim-lsp"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
|
||||||
|
},
|
||||||
|
["cmp-path"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/cmp-path",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-path"
|
||||||
|
},
|
||||||
|
["gitsigns.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
|
||||||
|
url = "https://github.com/lewis6991/gitsigns.nvim"
|
||||||
|
},
|
||||||
|
["lualine.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/lualine.nvim",
|
||||||
|
url = "https://github.com/nvim-lualine/lualine.nvim"
|
||||||
|
},
|
||||||
|
["marks.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/marks.nvim",
|
||||||
|
url = "https://github.com/chentoast/marks.nvim"
|
||||||
|
},
|
||||||
|
["mason-lspconfig.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim",
|
||||||
|
url = "https://github.com/williamboman/mason-lspconfig.nvim"
|
||||||
|
},
|
||||||
|
["mason.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/mason.nvim",
|
||||||
|
url = "https://github.com/williamboman/mason.nvim"
|
||||||
|
},
|
||||||
|
neogit = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/neogit",
|
||||||
|
url = "https://github.com/TimUntersberger/neogit"
|
||||||
|
},
|
||||||
|
["nightfox.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/nightfox.nvim",
|
||||||
|
url = "https://github.com/EdenEast/nightfox.nvim"
|
||||||
|
},
|
||||||
|
["nvim-cmp"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/nvim-cmp",
|
||||||
|
url = "https://github.com/hrsh7th/nvim-cmp"
|
||||||
|
},
|
||||||
|
["nvim-lspconfig"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
|
||||||
|
url = "https://github.com/neovim/nvim-lspconfig"
|
||||||
|
},
|
||||||
|
["nvim-tree.lua"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/nvim-tree.lua",
|
||||||
|
url = "https://github.com/kyazdani42/nvim-tree.lua"
|
||||||
|
},
|
||||||
|
["nvim-treesitter"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
|
||||||
|
url = "https://github.com/nvim-treesitter/nvim-treesitter"
|
||||||
|
},
|
||||||
|
["nvim-web-devicons"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/nvim-web-devicons",
|
||||||
|
url = "https://github.com/kyazdani42/nvim-web-devicons"
|
||||||
|
},
|
||||||
|
["packer.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/packer.nvim",
|
||||||
|
url = "https://github.com/wbthomason/packer.nvim"
|
||||||
|
},
|
||||||
|
["plenary.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/plenary.nvim",
|
||||||
|
url = "https://github.com/nvim-lua/plenary.nvim"
|
||||||
|
},
|
||||||
|
["telescope.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/telescope.nvim",
|
||||||
|
url = "https://github.com/nvim-telescope/telescope.nvim"
|
||||||
|
},
|
||||||
|
["which-key.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/kalle/.local/share/nvim/site/pack/packer/start/which-key.nvim",
|
||||||
|
url = "https://github.com/folke/which-key.nvim"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
time([[Defining packer_plugins]], false)
|
||||||
|
if should_profile then save_profiles() end
|
||||||
|
|
||||||
|
end)
|
||||||
|
|
||||||
|
if not no_errors then
|
||||||
|
error_msg = error_msg:gsub('"', '\\"')
|
||||||
|
vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None')
|
||||||
|
end
|
6
setup.sh
6
setup.sh
|
@ -13,10 +13,8 @@ else
|
||||||
# Symlink the config.
|
# Symlink the config.
|
||||||
ln -s $DOTS_DIR/nvim $NVIM_DIR
|
ln -s $DOTS_DIR/nvim $NVIM_DIR
|
||||||
|
|
||||||
# Install dein.vim
|
# Bootstrap the plugins
|
||||||
curl https://raw.githubusercontent.com/Shougo/dein.vim/master/bin/installer.sh > /tmp/dein_installer.sh
|
nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync'
|
||||||
chmod +x /tmp/dein_installer.sh
|
|
||||||
/tmp/dein_installer.sh ~/.local/share/dein
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# i3-gaps
|
# i3-gaps
|
||||||
|
|
Loading…
Reference in New Issue