diff options
| author | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2021-07-08 15:28:34 +0200 | 
|---|---|---|
| committer | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2021-07-08 15:28:34 +0200 | 
| commit | 56e16603121f94b6ea4b7125c596a09540569841 (patch) | |
| tree | 252afa6c8680f58095771f437f6ad516fda4fe13 /.config/nvim/lua | |
| parent | 235a49fe4ab108abbecf43066a7a37133bb49bc9 (diff) | |
Latest updates from LunarVim, new handrolled colorscheme
Diffstat (limited to '.config/nvim/lua')
| -rw-r--r-- | .config/nvim/lua/cfg/barbar/init.lua | 27 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/dashboard/init.lua | 11 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/galaxyline/init.lua | 106 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/neoformat/init.lua | 29 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/telescope/init.lua | 2 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/themes/dark.lua (renamed from .config/nvim/lua/cfg/themes/spacegray.lua) | 68 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/utils/init.lua | 20 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/vimtex/init.lua | 10 | ||||
| -rw-r--r-- | .config/nvim/lua/cfg/which-key/init.lua | 47 | ||||
| -rw-r--r-- | .config/nvim/lua/default-config.lua | 3 | ||||
| -rw-r--r-- | .config/nvim/lua/keymappings.lua | 27 | ||||
| -rw-r--r-- | .config/nvim/lua/plugins.lua | 41 | ||||
| -rw-r--r-- | .config/nvim/lua/settings.lua | 71 | 
13 files changed, 271 insertions, 191 deletions
diff --git a/.config/nvim/lua/cfg/barbar/init.lua b/.config/nvim/lua/cfg/barbar/init.lua new file mode 100644 index 0000000..5257de5 --- /dev/null +++ b/.config/nvim/lua/cfg/barbar/init.lua @@ -0,0 +1,27 @@ +vim.api.nvim_set_keymap("n", "<TAB>", ":BufferNext<CR>", { noremap = true, silent = true }) +vim.api.nvim_set_keymap("n", "<S-TAB>", ":BufferPrevious<CR>", { noremap = true, silent = true }) +vim.api.nvim_set_keymap("n", "<S-x>", ":BufferClose<CR>", { noremap = true, silent = true }) + +O.user_which_key["b"] = { +  name = "Buffers", +  j = { "<cmd>BufferPick<cr>", "jump to buffer" }, +  f = { "<cmd>Telescope buffers<cr>", "Find buffer" }, +  w = { "<cmd>BufferWipeout<cr>", "wipeout buffer" }, +  e = { +    "<cmd>BufferCloseAllButCurrent<cr>", +    "close all but current buffer", +  }, +  h = { "<cmd>BufferCloseBuffersLeft<cr>", "close all buffers to the left" }, +  l = { +    "<cmd>BufferCloseBuffersRight<cr>", +    "close all BufferLines to the right", +  }, +  D = { +    "<cmd>BufferOrderByDirectory<cr>", +    "sort BufferLines automatically by directory", +  }, +  L = { +    "<cmd>BufferOrderByLanguage<cr>", +    "sort BufferLines automatically by language", +  }, +} diff --git a/.config/nvim/lua/cfg/dashboard/init.lua b/.config/nvim/lua/cfg/dashboard/init.lua index bac9081..770bb5a 100644 --- a/.config/nvim/lua/cfg/dashboard/init.lua +++ b/.config/nvim/lua/cfg/dashboard/init.lua @@ -1,4 +1,3 @@ -  local M = {}  M.config = function() @@ -17,15 +16,15 @@ M.config = function()        description = { "  Recently Used Files" },        command = "Telescope oldfiles",      }, +    -- c = { +    --   description = { "  Load Last Session  " }, +    --   command = "SessionLoad", +    -- },      c = { -      description = { "  Load Last Session  " }, -      command = "SessionLoad", -    }, -    d = {        description = { "  Find Word          " },        command = "Telescope live_grep",      }, -    e = { +    d = {        description = { "  Settings           " },        command = ":e " .. CONFIG_PATH .. "/config.lua",      }, diff --git a/.config/nvim/lua/cfg/galaxyline/init.lua b/.config/nvim/lua/cfg/galaxyline/init.lua index 536144d..c59d4f4 100644 --- a/.config/nvim/lua/cfg/galaxyline/init.lua +++ b/.config/nvim/lua/cfg/galaxyline/init.lua @@ -1,23 +1,30 @@ -local gl = require('galaxyline') +-- if not package.loaded['galaxyline'] then +--   return +-- end +local status_ok, gl = pcall(require, "galaxyline") +if not status_ok then +  return +end  -- get my theme in galaxyline repo +-- local colors = require('galaxyline.theme').default  local colors = { -    bg = '#080808', -    yellow = '#DCDCAA', -    dark_yellow = '#D7BA7D', -    cyan = '#4EC9B0', -    green = '#608B4E', -    light_green = '#B5CEA8', -    string_orange = '#CE9178', -    orange = '#FF8800', -    purple = '#C586C0', -    magenta = '#D16D9E', -    grey = '#858585', -    blue = '#569CD6', -    vivid_blue = '#4FC1FF', -    light_blue = '#9CDCFE', -    red = '#D16969', -    error_red = '#F44747', -    info_yellow = '#FFCC66' +  bg = "#0A0A0A", +  yellow = "#DCDCAA", +  dark_yellow = "#D7BA7D", +  cyan = "#4EC9B0", +  green = "#608B4E", +  light_green = "#B5CEA8", +  string_orange = "#CE9178", +  orange = "#FF8800", +  purple = "#C586C0", +  magenta = "#D16D9E", +  grey = "#858585", +  blue = "#569CD6", +  vivid_blue = "#4FC1FF", +  light_blue = "#9CDCFE", +  red = "#D16969", +  error_red = "#F44747", +  info_yellow = "#FFCC66",  }  local condition = require "galaxyline.condition" @@ -51,8 +58,9 @@ table.insert(gls.left, {          t = colors.blue,        }        vim.api.nvim_command("hi GalaxyViMode guifg=" .. mode_color[vim.fn.mode()]) -      return "▎" +      return "▊"      end, +    separator_highlight = "StatusLineSeparator",      highlight = "StatusLineNC",    },  }) @@ -108,6 +116,60 @@ table.insert(gls.left, {    },  }) +table.insert(gls.left, { +  Filler = { +    provider = function() +      return " " +    end, +    highlight = "StatusLineGitDelete", +  }, +}) +-- get output from shell command +function os.capture(cmd, raw) +  local f = assert(io.popen(cmd, "r")) +  local s = assert(f:read "*a") +  f:close() +  if raw then +    return s +  end +  s = string.gsub(s, "^%s+", "") +  s = string.gsub(s, "%s+$", "") +  s = string.gsub(s, "[\n\r]+", " ") +  return s +end +-- cleanup virtual env +local function env_cleanup(venv) +  if string.find(venv, "/") then +    local final_venv = venv +    for w in venv:gmatch "([^/]+)" do +      final_venv = w +    end +    venv = final_venv +  end +  return venv +end +local PythonEnv = function() +  if vim.bo.filetype == "python" then +    local venv = os.getenv "CONDA_DEFAULT_ENV" +    if venv ~= nil then +      return "🅒 (" .. env_cleanup(venv) .. ")" +    end +    venv = os.getenv "VIRTUAL_ENV" +    if venv ~= nil then +      return "  (" .. env_cleanup(venv) .. ")" +    end +    return "" +  end +  return "" +end +table.insert(gls.left, { +  VirtualEnv = { +    provider = PythonEnv, +    highlight = "StatusLineTreeSitter", +    event = "BufEnter", +  }, +}) +  table.insert(gls.right, {    DiagnosticError = {      provider = "DiagnosticError", @@ -157,7 +219,7 @@ table.insert(gls.right, {  })  local get_lsp_client = function(msg) -  msg = msg or "No Active LSP Client" +  msg = msg or "LSP Inactive"    local buf_ft = vim.api.nvim_buf_get_option(0, "filetype")    local clients = vim.lsp.get_active_clients()    if next(clients) == nil then @@ -173,7 +235,7 @@ local get_lsp_client = function(msg)          lsps = client.name        else          lsps = lsps .. ", " .. client.name -       -- print("more", lsps) +        -- print("more", lsps)        end      end    end @@ -277,3 +339,5 @@ table.insert(gls.short_line_left, {      highlight = "StatusLineNC",    },  }) + +--table.insert(gls.short_line_right[1] = {BufferIcon = {provider = 'BufferIcon', highlight = {colors.grey, colors.bg}}}) diff --git a/.config/nvim/lua/cfg/neoformat/init.lua b/.config/nvim/lua/cfg/neoformat/init.lua index eb9596e..9a5ac76 100644 --- a/.config/nvim/lua/cfg/neoformat/init.lua +++ b/.config/nvim/lua/cfg/neoformat/init.lua @@ -1,12 +1,23 @@  -- autoformat  if O.format_on_save then -  require("cfg.utils").define_augroups { -    autoformat = { -      { -        "BufWritePre", -        "*", -        [[try | undojoin | Neoformat | catch /^Vim\%((\a\+)\)\=:E790/ | finally | silent Neoformat | endtry]], -      }, -    }, -  } +	require("cfg.utils").define_augroups({ +		autoformat = { +			{ +				"BufWritePre", +				"*", +				[[try | undojoin | Neoformat | catch /^Vim\%((\a\+)\)\=:E790/ | finally | silent Neoformat | endtry]], +			}, +		}, +	}) +end + +vim.g.neoformat_run_all_formatters = 0 + +vim.g.neoformat_enabled_python = { "flake8", "black", "docformatter" } +vim.g.neoformat_enabled_javascript = { "prettier" } + +if not O.format_on_save then +	vim.cmd([[if exists('#autoformat#BufWritePre') +	:autocmd! autoformat +	endif]])  end diff --git a/.config/nvim/lua/cfg/telescope/init.lua b/.config/nvim/lua/cfg/telescope/init.lua index 5411c32..9e0c45f 100644 --- a/.config/nvim/lua/cfg/telescope/init.lua +++ b/.config/nvim/lua/cfg/telescope/init.lua @@ -36,7 +36,7 @@ telescope.setup {      file_sorter = require("telescope.sorters").get_fzy_sorter,      file_ignore_patterns = {},      generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter, -    shorten_path = true, +    path_display = {"shorten"},      winblend = 0,      border = {},      borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" }, diff --git a/.config/nvim/lua/cfg/themes/spacegray.lua b/.config/nvim/lua/cfg/themes/dark.lua index 0bb695c..fe2ff03 100644 --- a/.config/nvim/lua/cfg/themes/spacegray.lua +++ b/.config/nvim/lua/cfg/themes/dark.lua @@ -3,46 +3,40 @@ local hsl = lush.hsl  local theme = lush(function()    local c = { -    bg = hsl "#212121", -    bg1 = hsl "#2a2a2a", -    -- bg2 = hsl("#3a3a3a"), -    bg2 = hsl "#383d45", +    bg = hsl "#0A0A0A", +    bg1 = hsl "#0D0D0D", +    bg2 = hsl "#202020", -    white = hsl "#c8c9d1", +    white = hsl "#f5f5f5", -    gray = hsl "#858585", -    light_gray = hsl "#c8c9c1", +    gray = hsl "#505050", +    light_gray = hsl "#D0D0D0", -    error_red = hsl "#F44747", -    warning_orange = hsl "#ff8800", -    info_yellow = hsl "#ffcc66", -    hint_blue = hsl "#4fc1ff", +    error_red = hsl "#AC4142", +    warning_orange = hsl "#F4BF75", +    info_yellow = hsl "#F4BF75", +    hint_blue = hsl "#A5D6FF", -    red = hsl "#b04b57", +    red = hsl "#AC4142", -    blue = hsl "#5486c0", -    gray_blue = hsl "#66899d", +    blue = hsl "#A5D6FF", +    gray_blue = hsl "#A5D6FF", -    -- yellow = hsl("#ffcb6b"), -    yellow = hsl "#eeba5a", +    yellow = hsl "#F4BF75", -    -- orange = hsl("#c98a75"), -    orange = hsl "#c6735a", +    orange = hsl "#FFA657", -    green = hsl "#87b379", -    light_green = hsl "#b2d77c", +    green = hsl "#A1B56C", +    light_green = hsl "#A1B56C", -    -- aqua = hsl("#46b1d0"), -    aqua = hsl "#65a7c5", +    aqua = hsl "#A5D6FF", -    purple = hsl "#bf83c1", -    pale_purple = hsl "#7199ee", +    purple = hsl "#AA759F", +    pale_purple = hsl "#A5D6FF", -    sign_add = hsl "#587C0C", -    sign_change = hsl "#0C7D9D", -    sign_delete = hsl "#94151B", - -    test = hsl "#ff00ff", +    sign_add = hsl "#A1B56C", +    sign_change = hsl "#A5D6FF", +    sign_delete = hsl "#AC4142",    }    return {      Normal { bg = c.bg, fg = c.white, gui = "NONE" }, -- used for the columns set with 'colorcolumn' @@ -99,7 +93,7 @@ local theme = lush(function()      EndOfBuffer { bg = "NONE", fg = c.bg, gui = "NONE" },      NonText { EndOfBuffer }, -    String { fg = c.green }, +    String { fg = c.blue },      Character { fg = c.light_green },      Constant { fg = c.orange },      Number { fg = c.red }, @@ -107,10 +101,10 @@ local theme = lush(function()      Float { fg = c.red },      Identifier { fg = c.white }, -    Function { fg = c.yellow }, -    Operator { fg = c.gray_blue }, +    Function { fg = c.orange }, +    Operator { fg = c.orange }, -    Type { fg = c.purple }, +    Type { fg = c.blue },      StorageClass { Type },      Structure { Type },      Typedef { Type }, @@ -271,8 +265,8 @@ local theme = lush(function()      -- BarBar      TabLine { bg = c.bg1, fg = c.white, gui = "NONE" }, -    TabLineFill { bg = c.bg1, fg = c.white, gui = "NONE" }, -    TabLineSel { bg = c.blue, fg = c.bg1, gui = "NONE" }, +    TabLineFill { bg = c.bg1, fg = c.gray, gui = "NONE" }, +    TabLineSel { bg = c.white, fg = c.bg1, gui = "NONE" },      BufferCurrent { fg = c.fg, bg = c.bg },      BufferCurrentIndex { fg = c.aqua, bg = c.bg }, @@ -340,8 +334,8 @@ local theme = lush(function()      TabLineHint { LspDiagnosticsSignHint },      TabLineInformation { LspDiagnosticsSignInformation }, -- which-key.nvim -    WhichKey { fg = c.purple }, -- nvim-compe -    WhichKeySeperator { fg = c.green }, -- nvim-compe +    WhichKey { fg = c.white }, -- nvim-compe +    WhichKeySeperator { fg = c.gray }, -- nvim-compe      WhichKeyGroup { fg = c.blue }, -- nvim-compe      WhichKeyDesc { fg = c.aqua }, -- nvim-compe      WhichKeyFloat { bg = c.bg1 }, -- nvim-compe diff --git a/.config/nvim/lua/cfg/utils/init.lua b/.config/nvim/lua/cfg/utils/init.lua index f8ed082..2fe3331 100644 --- a/.config/nvim/lua/cfg/utils/init.lua +++ b/.config/nvim/lua/cfg/utils/init.lua @@ -3,7 +3,7 @@ local utils = {}  function utils.reload_config()    vim.cmd "source ~/.config/nvim/config.lua"    vim.cmd "source ~/.config/nvim/lua/plugins.lua" -  vim.cmd "source ~/.config/nvim/lua/neoformat/init.lua" +  vim.cmd "source ~/.config/nvim/lua/cfg/neoformat/init.lua"    vim.cmd ":PackerCompile"    vim.cmd ":PackerInstall"  end @@ -54,7 +54,7 @@ utils.define_augroups {        "*",        "setlocal formatoptions-=c formatoptions-=r formatoptions-=o",      }, -    { "BufWritePost", "config.lua", "lua require('utils').reload_config()" }, +    { "BufWritePost", "config.lua", "lua require('cfg.utils').reload_config()" },      { "VimLeavePre", "*", "set title set titleold=" },    },    -- _solidity = { @@ -74,7 +74,11 @@ utils.define_augroups {    },    _auto_resize = {      -- will cause split windows to be resized evenly if main window is resized -    { "VimResized ", "*", "wincmd =" }, +    { "VimResized", "*", "wincmd =" }, +  }, +  _packer_compile = { +    -- will cause split windows to be resized evenly if main window is resized +    { "BufWritePost", "plugins.lua", "PackerCompile" },    },    -- _mode_switching = {    --   -- will switch between absolute and relative line numbers depending on mode @@ -85,4 +89,14 @@ utils.define_augroups {    -- },  } +vim.cmd [[ +  function! QuickFixToggle() +    if empty(filter(getwininfo(), 'v:val.quickfix')) +      copen +    else +      cclose +    endif +endfunction +]] +  return utils diff --git a/.config/nvim/lua/cfg/vimtex/init.lua b/.config/nvim/lua/cfg/vimtex/init.lua index 11ed68b..4d7b93b 100644 --- a/.config/nvim/lua/cfg/vimtex/init.lua +++ b/.config/nvim/lua/cfg/vimtex/init.lua @@ -2,6 +2,16 @@ vim.g.vimtex_compiler_method = "latexmk"  vim.g.vimtex_view_method = "zathura"  vim.g.vimtex_fold_enabled = 0 +O.user_which_key["L"] = { +  name = "+Latex", +  c = { "<cmd>VimtexCompile<cr>", "Toggle Compilation Mode" }, +  f = { "<cmd>call vimtex#fzf#run()<cr>", "Fzf Find" }, +  i = { "<cmd>VimtexInfo<cr>", "Project Information" }, +  s = { "<cmd>VimtexStop<cr>", "Stop Project Compilation" }, +  t = { "<cmd>VimtexTocToggle<cr>", "Toggle Table Of Content" }, +  v = { "<cmd>VimtexView<cr>", "View PDF" }, +} +  -- Compile on initialization, cleanup on quit  vim.api.nvim_exec(    [[ diff --git a/.config/nvim/lua/cfg/which-key/init.lua b/.config/nvim/lua/cfg/which-key/init.lua index 2a22c9c..993018c 100644 --- a/.config/nvim/lua/cfg/which-key/init.lua +++ b/.config/nvim/lua/cfg/which-key/init.lua @@ -99,7 +99,7 @@ vim.api.nvim_set_keymap(  local mappings = { -  ["."] = "LunarConfig", +  ["."] = "Config",    ["k"] = "Comment",    ["c"] = "Close Buffer",    ["e"] = "Explorer", @@ -108,29 +108,6 @@ local mappings = {    [";"] = "Dashboard",    ["v"] = "Vertical Split",    ["h"] = "Horizontal Split", -  b = { -    name = "Buffers", -    j = { "<cmd>BufferPick<cr>", "jump to buffer" }, -    f = { "<cmd>Telescope buffers<cr>", "Find buffer" }, -    w = { "<cmd>BufferWipeout<cr>", "wipeout buffer" }, -    e = { -      "<cmd>BufferCloseAllButCurrent<cr>", -      "close all but current buffer", -    }, -    h = { "<cmd>BufferCloseBuffersLeft<cr>", "close all buffers to the left" }, -    l = { -      "<cmd>BufferCloseBuffersRight<cr>", -      "close all BufferLines to the right", -    }, -    D = { -      "<cmd>BufferOrderByDirectory<cr>", -      "sort BufferLines automatically by directory", -    }, -    L = { -      "<cmd>BufferOrderByLanguage<cr>", -      "sort BufferLines automatically by language", -    }, -  },    p = {      name = "Packer",      c = { "<cmd>PackerCompile<cr>", "Compile" }, @@ -198,11 +175,6 @@ local mappings = {      R = { "<cmd>Telescope registers<cr>", "Registers" },      t = { "<cmd>Telescope live_grep<cr>", "Text" },    }, -  S = { -    name = "Session", -    s = { "<cmd>SessionSave<cr>", "Save Session" }, -    l = { "<cmd>SessionLoad<cr>", "Load Session" }, -  },    T = {      name = "Treesitter",      i = { ":TSConfigInfo<cr>", "Info" }, @@ -235,18 +207,6 @@ if O.plugin.telescope_project.active then    mappings["P"] = "Projects"  end -if O.lang.latex.active then -  mappings["L"] = { -    name = "+Latex", -    c = { "<cmd>VimtexCompile<cr>", "Toggle Compilation Mode" }, -    f = { "<cmd>call vimtex#fzf#run()<cr>", "Fzf Find" }, -    i = { "<cmd>VimtexInfo<cr>", "Project Information" }, -    s = { "<cmd>VimtexStop<cr>", "Stop Project Compilation" }, -    t = { "<cmd>VimtexTocToggle<cr>", "Toggle Table Of Content" }, -    v = { "<cmd>VimtexView<cr>", "View PDF" }, -  } -end -  if O.lushmode then    mappings["L"] = {      name = "+Lush", @@ -257,13 +217,8 @@ if O.lushmode then    }  end --- for _, v in pairs(O.user_which_key) do --- end  for k, v in pairs(O.user_which_key) do    mappings[k] = v -  -- table.insert(mappings, O.user_which_key[1]) -  -- print(k) -  --   print(v)  end  local wk = require "which-key" diff --git a/.config/nvim/lua/default-config.lua b/.config/nvim/lua/default-config.lua index fce3caf..2f5a674 100644 --- a/.config/nvim/lua/default-config.lua +++ b/.config/nvim/lua/default-config.lua @@ -8,10 +8,13 @@ O = {    auto_close_tree = 0,    auto_complete = true,    colorscheme = "lunar", +  clipboard = "unnamedplus",    hidden_files = true,    wrap_lines = false,    number = true,    relative_number = true, +  number_width = 4, +  cmdheight = 2,    cursorline = true,    shell = "zsh",    timeoutlen = 100, diff --git a/.config/nvim/lua/keymappings.lua b/.config/nvim/lua/keymappings.lua index 3b6a95a..4dfcbb0 100644 --- a/.config/nvim/lua/keymappings.lua +++ b/.config/nvim/lua/keymappings.lua @@ -4,19 +4,16 @@ vim.api.nvim_set_keymap("n", "<C-j>", "<C-w>j", { silent = true })  vim.api.nvim_set_keymap("n", "<C-k>", "<C-w>k", { silent = true })  vim.api.nvim_set_keymap("n", "<C-l>", "<C-w>l", { silent = true }) --- TODO fix this  -- Terminal window navigation -vim.cmd [[ -  tnoremap <C-h> <C-\><C-N><C-w>h -  tnoremap <C-j> <C-\><C-N><C-w>j -  tnoremap <C-k> <C-\><C-N><C-w>k -  tnoremap <C-l> <C-\><C-N><C-w>l -  inoremap <C-h> <C-\><C-N><C-w>h -  inoremap <C-j> <C-\><C-N><C-w>j -  inoremap <C-k> <C-\><C-N><C-w>k -  inoremap <C-l> <C-\><C-N><C-w>l -  tnoremap <Esc> <C-\><C-n> -]] +vim.api.nvim_set_keymap("t", "<C-h>", "<C-\\><C-N><C-w>h", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("t", "<C-j>", "<C-\\><C-N><C-w>j", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("t", "<C-k>", "<C-\\><C-N><C-w>k", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("t", "<C-l>", "<C-\\><C-N><C-w>l", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("i", "<C-h>", "<C-\\><C-N><C-w>h", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("i", "<C-j>", "<C-\\><C-N><C-w>j", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("i", "<C-k>", "<C-\\><C-N><C-w>k", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("i", "<C-l>", "<C-\\><C-N><C-w>l", {silent = true, noremap = true}) +vim.api.nvim_set_keymap("t", "<Esc>", "<C-\\><C-n>", {silent = true, noremap = true})  -- TODO fix this  -- resize with arrows @@ -70,9 +67,3 @@ vim.cmd 'vnoremap P "0P'  -- Toggle the QuickFix window  vim.api.nvim_set_keymap("", "<C-q>", ":call QuickFixToggle()<CR>", { noremap = true, silent = true }) - --- Telescope stuff --- vim.api.nvim_set_keymap("n", "<Leader>fb", "<cmd>lua require'telescope.builtin'.buffers{}<CR>", { noremap = true, silent = true })                   -- search open buffers --- vim.api.nvim_set_keymap("n", "<Leader>fl", "<cmd>lua require'telescope.builtin'.current_buffer_fuzzy_find{}<CR>", { noremap = true, silent = true }) -- search lines in current buffer --- vim.api.nvim_set_keymap("n", "<Leader>gg", "<cmd>lua require'telescope.builtin'.live_grep{}<CR>", { noremap = true, silent = true })                 -- search all lines in project --- vim.api.nvim_set_keymap("n", "<Leader>fr", "<cmd>lua require'telescope.builtin'.lsp_references{}<CR>", { noremap = true, silent = true })            -- search references to symbol under cursor diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua index fcd5239..1f9e4a3 100644 --- a/.config/nvim/lua/plugins.lua +++ b/.config/nvim/lua/plugins.lua @@ -22,8 +22,6 @@ packer.init {    },  } -vim.cmd "autocmd BufWritePost plugins.lua PackerCompile" -  return require("packer").startup(function(use)    -- Packer can manage itself as an optional plugin    use "wbthomason/packer.nvim" @@ -38,7 +36,7 @@ return require("packer").startup(function(use)    use {      "nvim-telescope/telescope.nvim",      config = [[require('cfg.telescope')]], -    event = "BufEnter", +    -- event = "BufEnter",    }    -- Autocomplete @@ -57,7 +55,13 @@ return require("packer").startup(function(use)    use { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" }    -- Neoformat -  use { "sbdchd/neoformat" } +  use { +    "sbdchd/neoformat", +    config = function() +      require "cfg.neoformat" +    end, +    event = "BufRead", +  }    use {      "kyazdani42/nvim-tree.lua", @@ -71,7 +75,6 @@ return require("packer").startup(function(use)    use {      "lewis6991/gitsigns.nvim", -      config = function()        require("cfg.gitsigns").config()      end, @@ -79,7 +82,13 @@ return require("packer").startup(function(use)    }    -- whichkey -  use { "folke/which-key.nvim" } +  use { +    "folke/which-key.nvim", +    config = function() +      require "cfg.which-key" +    end, +    event = "BufWinEnter", +  }    -- Autopairs    use { @@ -94,8 +103,7 @@ return require("packer").startup(function(use)    -- Comments    use {      "terrortylor/nvim-comment", -    event = "BufRead", -    -- cmd = "CommentToggle", +    event = "BufWinEnter",      config = function()        local status_ok, nvim_comment = pcall(require, "nvim_comment")        if not status_ok then @@ -112,16 +120,20 @@ return require("packer").startup(function(use)    use { "kyazdani42/nvim-web-devicons" }    -- Status Line and Bufferline -  use { "glepnir/galaxyline.nvim" } +  use { +    "glepnir/galaxyline.nvim", +    config = function() +      require "cfg.galaxyline" +    end, +    -- event = "VimEnter", +  }    use {      "romgrk/barbar.nvim",      config = function() -      vim.api.nvim_set_keymap("n", "<TAB>", ":BufferNext<CR>", { noremap = true, silent = true }) -      vim.api.nvim_set_keymap("n", "<S-TAB>", ":BufferPrevious<CR>", { noremap = true, silent = true }) -      vim.api.nvim_set_keymap("n", "<S-x>", ":BufferClose<CR>", { noremap = true, silent = true }) +      require "cfg.barbar"      end, -    -- event = "BufRead", +    event = "BufWinEnter",    }    -- Builtins, these do not load by default @@ -146,10 +158,9 @@ return require("packer").startup(function(use)    use {      "norcalli/nvim-colorizer.lua", -    event = "BufRead", +    event = "BufWinEnter",      config = function()        require "cfg.colorizer" -      vim.cmd "ColorizerReloadAllBuffers"      end,      disable = not O.plugin.colorizer.active,    } diff --git a/.config/nvim/lua/settings.lua b/.config/nvim/lua/settings.lua index 371cdb0..914561d 100644 --- a/.config/nvim/lua/settings.lua +++ b/.config/nvim/lua/settings.lua @@ -21,40 +21,41 @@ vim.g.colors_name = O.colorscheme  ---  SETTINGS  --- -opt.backup = false -- creates a backup file -opt.clipboard = "unnamedplus" -- allows neovim to access the system clipboard -opt.cmdheight = 2 -- more space in the neovim command line for displaying messages -opt.colorcolumn = "99999" -- fix indentline for now +opt.backup = false                            -- creates a backup file +opt.clipboard = O.clipboard                   -- allows neovim to access the system clipboard +opt.cmdheight = O.cmdheight                   -- more space in the neovim command line for displaying messages +opt.colorcolumn = "99999"                     -- fix indentline for now  opt.completeopt = { "menuone", "noselect" } -opt.conceallevel = 0 -- so that `` is visible in markdown files -opt.fileencoding = "utf-8" -- the encoding written to a file -opt.guifont = "monospace:h17" -- the font used in graphical neovim applications -opt.hidden = O.hidden_files -- required to keep multiple buffers and open multiple buffers -opt.hlsearch = O.hl_search -- highlight all matches on previous search pattern -opt.ignorecase = O.ignore_case -- ignore case in search patterns -opt.mouse = "a" -- allow the mouse to be used in neovim -opt.pumheight = 10 -- pop up menu height -opt.showmode = false -- we don't need to see things like -- INSERT -- anymore -opt.showtabline = 2 -- always show tabs -opt.smartcase = O.smart_case -- smart case -opt.smartindent = true -- make indenting smarter again -opt.splitbelow = true -- force all horizontal splits to go below current window -opt.splitright = true -- force all vertical splits to go to the right of current window -opt.swapfile = false -- creates a swapfile -opt.termguicolors = true -- set term gui colors (most terminals support this) -opt.timeoutlen = O.timeoutlen -- time to wait for a mapped sequence to complete (in milliseconds) -opt.title = true -- set the title of window to the value of the titlestring -opt.titlestring = "%<%F%=%l/%L - nvim" -- what the title of the window will be set to -opt.undodir = CACHE_PATH .. "/undo" -- set an undo directory -opt.undofile = true -- enable persisten undo -opt.updatetime = 300 -- faster completion -opt.writebackup = false -- if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited -opt.expandtab = true -- convert tabs to spaces -opt.shiftwidth = 4 -- the number of spaces inserted for each indentation +opt.conceallevel = 0                          -- so that `` is visible in markdown files +opt.fileencoding = "utf-8"                    -- the encoding written to a file +opt.guifont = "monospace:h17"                 -- the font used in graphical neovim applications +opt.hidden = O.hidden_files                   -- required to keep multiple buffers and open multiple buffers +opt.hlsearch = O.hl_search                    -- highlight all matches on previous search pattern +opt.ignorecase = O.ignore_case                -- ignore case in search patterns +opt.mouse = "a"                               -- allow the mouse to be used in neovim +opt.pumheight = 10                            -- pop up menu height +opt.showmode = false                          -- we don't need to see things like -- INSERT -- anymore +opt.showtabline = 2                           -- always show tabs +opt.smartcase = O.smart_case                  -- smart case +opt.smartindent = true                        -- make indenting smarter again +opt.splitbelow = true                         -- force all horizontal splits to go below current window +opt.splitright = true                         -- force all vertical splits to go to the right of current window +opt.swapfile = false                          -- creates a swapfile +opt.termguicolors = true                      -- set term gui colors (most terminals support this) +opt.timeoutlen = O.timeoutlen                 -- time to wait for a mapped sequence to complete (in milliseconds) +opt.title = true                              -- set the title of window to the value of the titlestring +opt.titlestring = "%<%F%=%l/%L - nvim"        -- what the title of the window will be set to +opt.undodir = CACHE_PATH .. "/undo"           -- set an undo directory +opt.undofile = true                           -- enable persisten undo +opt.updatetime = 300                          -- faster completion +opt.writebackup = false                       -- if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited +opt.expandtab = true                          -- convert tabs to spaces +opt.shiftwidth = 4                            -- the number of spaces inserted for each indentation  opt.shortmess:append "c" -opt.tabstop = 4 -- insert 4 spaces for a tab -opt.cursorline = O.cursorline -- highlight the current line -opt.number = O.number -- set numbered lines -opt.relativenumber = O.relative_number -- set relative numbered lines -opt.signcolumn = "yes" -- always show the sign column, otherwise it would shift the text each time -opt.wrap = O.wrap_lines -- display lines as one long line +opt.tabstop = 4                               -- insert 4 spaces for a tab +opt.cursorline = O.cursorline                 -- highlight the current line +opt.number = O.number                         -- set numbered lines +opt.relativenumber = O.relative_number        -- set relative numbered lines +opt.numberwidth = O.number_width              -- set number column width to 2 {default 4} +opt.signcolumn = "yes"                        -- always show the sign column, otherwise it would shift the text each time +opt.wrap = O.wrap_lines                       -- display lines as one long line  |