christianchiarulli 4 роки тому
батько
коміт
2cd8c6a21c
53 змінених файлів з 331 додано та 712 видалено
  1. 40 51
      README.md
  2. 20 45
      init.lua
  3. 19 0
      lua/lsp/emmet-ls.lua
  4. 0 15
      lua/lsp/virtual_text.lua
  5. 2 2
      lua/lv-autocommands/init.lua
  6. 0 0
      lua/lv-autopairs/init.lua
  7. 0 0
      lua/lv-barbar/init.lua
  8. 0 0
      lua/lv-comment/init.lua
  9. 0 0
      lua/lv-compe/init.lua
  10. 55 0
      lua/lv-dashboard/init.lua
  11. 0 0
      lua/lv-emmet/init.lua
  12. 0 0
      lua/lv-galaxyline/init.lua
  13. 0 0
      lua/lv-gitsigns/init.lua
  14. 1 1
      lua/lv-globals.lua
  15. 0 0
      lua/lv-lspinstall/init.lua
  16. 0 0
      lua/lv-lspkind/init.lua
  17. 0 0
      lua/lv-nvim-dap/init.lua
  18. 65 0
      lua/lv-nvimtree/init.lua
  19. 6 0
      lua/lv-rnvimr/init.lua
  20. 0 9
      lua/lv-telescope/init.lua
  21. 1 10
      lua/lv-treesitter/init.lua
  22. 0 0
      lua/lv-utils/init.lua
  23. 0 2
      lua/nv-bookmark/init.lua
  24. 0 12
      lua/nv-colorizer/init.lua
  25. 0 6
      lua/nv-dadbod/init.lua
  26. 0 33
      lua/nv-dashboard/init.lua
  27. 0 1
      lua/nv-dependency/init.lua
  28. 0 15
      lua/nv-dial/init.lua
  29. 0 1
      lua/nv-doge/init.lua
  30. 0 14
      lua/nv-floaterm/init.lua
  31. 0 2
      lua/nv-gitblame/init.lua
  32. 0 3
      lua/nv-hop/init.lua
  33. 0 11
      lua/nv-indentline/init.lua
  34. 0 34
      lua/nv-lightbulb/init.lua
  35. 0 1
      lua/nv-matchup/init.lua
  36. 0 4
      lua/nv-numb/init.lua
  37. 0 2
      lua/nv-nvim-peekup/init.lua
  38. 0 74
      lua/nv-nvimtree/init.lua
  39. 0 4
      lua/nv-quickscope/init.lua
  40. 0 24
      lua/nv-rnvimr/init.lua
  41. 0 33
      lua/nv-startify/init.lua
  42. 0 0
      lua/nv-surround/init.lua
  43. 0 2
      lua/nv-vim-rooter/init.lua
  44. 77 147
      lua/plugins.lua
  45. 1 2
      lv-settings.lua
  46. 0 2
      utils/init.lua
  47. 14 14
      utils/installer/install.sh
  48. BIN
      utils/media/demo.png
  49. BIN
      utils/media/nvcode_logo.png
  50. BIN
      utils/media/nvcode_logo.png.old
  51. 25 29
      vimscript/functions.vim
  52. 5 5
      vimscript/lv-vscode/init.vim
  53. 0 102
      vimscript/lv-whichkey/init.vim

+ 40 - 51
README.md

@@ -1,28 +1,33 @@
-![NVCode Logo](./utils/media/nvcode_logo.png)
+```
+   _..._                             
+ .'   (_`.    _                         __     ___           
+:  .      :  | |   _   _ _ __   __ _ _ _\ \   / (_)_ __ ___  
+:)    ()  :  | |  | | | | '_ \ / _` | '__\ \ / /| | '_ ` _ \ 
+`.   .   .'  | |__| |_| | | | | (_| | |   \ V / | | | | | | |
+  `-...-'    |_____\__,_|_| |_|\__,_|_|    \_/  |_|_| |_| |_|
+```
 
 
-<a href="https://discord.gg/Xb9B4Ny"><img src="https://img.shields.io/discord/308323056592486420?logo=discord" alt="chat on Discord"></a>
-[![GitHub license](https://img.shields.io/github/license/ChristianChiarulli/nvcode)](https://github.com/ChristianChiarulli/nvcode/blob/master/LICENSE)
-[![Open Source? Yes!](https://badgen.net/badge/Open%20Source%20%3F/Yes%21/blue?icon=github)](https://github.com/ChristianChiarulli/nvcode)
+[![GitHub license](https://img.shields.io/github/license/ChristianChiarulli/lunarvim)](https://github.com/ChristianChiarulli/lunarvim/blob/master/LICENSE)
+[![Open Source? Yes!](https://badgen.net/badge/Open%20Source%20%3F/Yes%21/blue?icon=github)](https://github.com/ChristianChiarulli/lunarvim)
 [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
 <a href="https://patreon.com/chrisatmachine" title="Donate to this project using Patreon"><img src="https://img.shields.io/badge/patreon-donate-yellow.svg" alt="Patreon donate button" /></a>
 <a href="https://twitter.com/intent/follow?screen_name=chrisatmachine"><img src="https://img.shields.io/twitter/follow/chrisatmachine?style=social&logo=twitter" alt="follow on Twitter"></a>
 
+![LunarVim Demo](./utils/media/demo.png)
 
+1. This project aims to help one transition away from VSCode, and into a superior text editing experience. (Just making this clear)
 
+2. This is also a community project, if you would like to see support for a feature or [language](https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md) consider making a PR.
 
-![NVCode Demo](./utils/media/demo.png)
-
-This project aims to help one transition away from VSCode, and into a superior text editing experience. (Just making this clear)
-
-This is also a community project, if you would like to see support for a feature or language consider making a PR.
+3. This project will do it's best to include core features you would expect from a modern IDE, while making it easy to add or remove what the user wants.
 
 ## Install In One Command!
 
 Make sure you have the newest version of Neovim
 
 ``` bash
-bash <(curl -s https://raw.githubusercontent.com/ChristianChiarulli/nvim/master/utils/installer/install.sh)
+bash <(curl -s https://raw.githubusercontent.com/ChristianChiarulli/lunarvim/master/utils/installer/install.sh)
 ```
 
 After installation run `nvim` and then `:PackerInstall`
@@ -43,30 +48,6 @@ or if you are on Arch you can get it from the AUR
 yay -S neovim-nightly-git
 ```
 
-## VSCode support
-
-I recommend you support Free/Libre versions if you plan to use VSCode:
-
-- [VSCodium](https://vscodium.com/)
-
-- Article to get you set up with VSCodium: [link](https://www.chrisatmachine.com/Neovim/22-vscodium-neovim/) 
-
-After installing the [Neovim
-extension](https://github.com/asvetliakov/vscode-neovim) in VSCode
-
-I recommend using this alongside the VSCode
-[which-key](https://github.com/VSpaceCode/vscode-which-key) extension
-
-You will also need `settings.json` and `keybindings.json` which can be
-found in utils/vscode\_config
-
-Point the nvim path to your `nvim` binary
-
-Point your `init.vim` path to:
-
-``` vim
-$HOME/.config/nvim/vimscript/nv-vscode/init.vim
-```
 
 ## Clipboard Support
 
@@ -110,16 +91,12 @@ For a more in depth LSP support:
 
 ## Useful Programs
 
+LunarVim depends on the following:
+
 ``` bash
 ranger
 ueberzug
-fd
 ripgrep
-jq
-fzf
-lazygit
-lazydocker
-ncdu
 pynvim
 neovim-remote
 ```
@@ -160,23 +137,35 @@ npm install -g prettier
 pandoc
 ```
 
-## Vim Gists
+## De-bugging
 
-To use vim-gists you will need to configure the following:
+To set up your particular debugger, look here:
+[link](https://github.com/mfussenegger/nvim-dap/wiki/Debug-Adapter-installation)
 
-``` bash
-git config --global github.user <username>
-```
+## VSCodium
 
-## Snippets
+I recommend you support Free/Libre versions if you plan to use VSCode:
 
-If you are looking for snippets checkout this github topic: [Snippet
-Topic](https://github.com/topics/vscode-snippets)
+- [VSCodium](https://vscodium.com/)
 
-## De-bugging
+- Article to get you set up with VSCodium: [link](https://www.chrisatmachine.com/Neovim/22-vscodium-neovim/) 
 
-To set up your particular debugger, look here:
-[link](https://github.com/mfussenegger/nvim-dap/wiki/Debug-Adapter-installation)
+After installing the [Neovim
+extension](https://github.com/asvetliakov/vscode-neovim) in VSCode
+
+I recommend using this alongside the VSCode
+[which-key](https://github.com/VSpaceCode/vscode-which-key) extension
+
+You will also need `settings.json` and `keybindings.json` which can be
+found in utils/vscode\_config
+
+Point the nvim path to your `nvim` binary
+
+Point your `init.vim` path to:
+
+``` vim
+$HOME/.config/nvim/vimscript/lv-vscode/init.vim
+```
 
 ## TODO
 

+ 20 - 45
init.lua

@@ -1,49 +1,27 @@
--- General mappings
 require('plugins')
-require('nv-globals')
-require('nv-utils')
-vim.cmd('luafile ~/.config/nvim/nv-settings.lua')
-require('nv-autocommands')
--- require('config')
+require('lv-globals')
+require('lv-utils')
+vim.cmd('luafile ~/.config/nvim/lv-settings.lua')
+require('lv-autocommands')
 require('settings')
 require('keymappings')
 require('colorscheme')
-require('nv-galaxyline')
-
--- Plugins
-require('nv-compe')
-require('nv-colorizer')
-require('nv-nvimtree')
-require('nv-treesitter')
-require('nv-barbar')
-require('nv-emmet')
-require('nv-quickscope')
-require('nv-gitsigns')
-require('nv-autopairs')
-require('nv-comment')
-require('nv-rnvimr')
-require('nv-telescope')
-require('nv-floaterm')
-require('nv-vim-rooter')
-require('nv-matchup')
-require('nv-lspkind')
-require('nv-numb')
-require('nv-hop')
-require('nv-gitblame')
-require('nv-nvim-peekup')
-require('nv-dashboard')
-require('nv-dial')
-require('nv-nvim-dap')
-require('nv-lightbulb')
-require('nv-indentline')
-require('nv-bookmark')
-require('nv-dadbod')
-require('nv-doge')
-require('nv-dependency')
--- require('nv-lspinstall')
+require('lv-galaxyline')
+require('lv-comment')
+require('lv-lspkind')
+require('lv-compe')
+require('lv-barbar')
+require('lv-dashboard')
+require('lv-telescope')
+require('lv-gitsigns')
+require('lv-nvimtree')
+require('lv-treesitter')
+require('lv-autopairs')
+require('lv-barbar')
+require('lv-rnvimr')
 
 -- Which Key (Hope to replace with Lua plugin someday)
-vim.cmd('source ~/.config/nvim/vimscript/nv-whichkey/init.vim')
+vim.cmd('source ~/.config/nvim/vimscript/lv-whichkey/init.vim')
 vim.cmd('source ~/.config/nvim/vimscript/functions.vim')
 
 -- LSP
@@ -62,14 +40,11 @@ require('lsp.yaml-ls')
 require('lsp.terraform-ls')
 require('lsp.vim-ls')
 require('lsp.graphql-ls')
-require('lsp.css-ls')
 require('lsp.docker-ls')
 require('lsp.html-ls')
+require('lsp.css-ls')
+require('lsp.emmet-ls')
 require('lsp.efm-general-ls')
-require('lsp.virtual_text')
 require('lsp.latex-ls')
 require('lsp.svelte-ls')
 require('lsp.tailwindcss-ls')
-
--- vim.lsp.callbacks["textDocument/publishDiagnostics"] = function() end
--- vim.lsp.handlers["textDocument/publishDiagnostics"] = nil

+ 19 - 0
lua/lsp/emmet-ls.lua

@@ -0,0 +1,19 @@
+local nvim_lsp = require'lspconfig'
+local configs = require'lspconfig/configs'
+local capabilities = vim.lsp.protocol.make_client_capabilities()
+capabilities.textDocument.completion.completionItem.snippetSupport = true
+
+configs.emmet_ls = {
+  default_config = {
+    cmd = {'emmet-ls', '--stdio'};
+    filetypes = {'html', 'css'};
+    root_dir = function()
+      return vim.loop.cwd()
+    end;
+    settings = {};
+  };
+}
+
+nvim_lsp.emmet_ls.setup{
+  -- on_attach = on_attach;
+}

+ 0 - 15
lua/lsp/virtual_text.lua

@@ -1,15 +0,0 @@
-local virtual_text = {}
-
-virtual_text.show = true
-
-virtual_text.toggle = function()
-    virtual_text.show = not virtual_text.show
-    vim.lsp.diagnostic.display(
-        vim.lsp.diagnostic.get(0, 1),
-        0,
-        1,
-        {virtual_text = virtual_text.show}
-    )
-end
-
-return virtual_text

+ 2 - 2
lua/nv-autocommands/init.lua → lua/lv-autocommands/init.lua

@@ -1,4 +1,4 @@
-local utils = require('nv-utils')
+local utils = require('lv-utils')
 
 local auto_formatters = {            }
 
@@ -24,7 +24,7 @@ utils.define_augroups({
         {'BufWinEnter', '*', 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'},
         {'BufRead', '*', 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'},
         {'BufNewFile', '*', 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'},
-        {'VimLeavePre', '*', 'set title set titleold='},
+        {'VimLeavePre', '*', 'set title set titleold='}
 
         -- {'User', 'GoyoLeave', 'lua require(\'galaxyline\').disable_galaxyline()'},
         -- {'User', 'GoyoEnter', 'lua require(\'galaxyline\').galaxyline_augroup()'},

+ 0 - 0
lua/nv-autopairs/init.lua → lua/lv-autopairs/init.lua


+ 0 - 0
lua/nv-barbar/init.lua → lua/lv-barbar/init.lua


+ 0 - 0
lua/nv-comment/init.lua → lua/lv-comment/init.lua


+ 0 - 0
lua/nv-compe/init.lua → lua/lv-compe/init.lua


+ 55 - 0
lua/lv-dashboard/init.lua

@@ -0,0 +1,55 @@
+-- vim.g.dashboard_custom_header = {
+--     '███╗   ██╗██╗   ██╗ ██████╗ ██████╗ ██████╗ ███████╗',
+--     '████╗  ██║██║   ██║██╔════╝██╔═══██╗██╔══██╗██╔════╝',
+--     '██╔██╗ ██║██║   ██║██║     ██║   ██║██║  ██║█████╗',
+--     '██║╚██╗██║╚██╗ ██╔╝██║     ██║   ██║██║  ██║██╔══╝',
+--     '██║ ╚████║ ╚████╔╝ ╚██████╗╚██████╔╝██████╔╝███████╗',
+--     '╚═╝  ╚═══╝  ╚═══╝   ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝'
+-- }
+-- vim.g.dashboard_custom_header = {
+--
+-- '      _..._                                                                           ',
+-- '    .\'     `.   ██      ██    ██ ███    ██  █████  ██████  ██    ██ ██ ███    ███ ',
+-- '   :         :  ██      ██    ██ ████   ██ ██   ██ ██   ██ ██    ██ ██ ████  ████ ',
+-- '   :         :  ██      ██    ██ ██ ██  ██ ███████ ██████  ██    ██ ██ ██ ████ ██ ',
+-- '   `.       .\'  ██      ██    ██ ██  ██ ██ ██   ██ ██   ██  ██  ██  ██ ██  ██  ██ ',
+-- '     `-...-\'    ███████  ██████  ██   ████ ██   ██ ██   ██   ████   ██ ██      ██ ',
+--
+-- }
+
+vim.g.dashboard_custom_header = {
+
+'                 _..._                                                                           ',
+'               .\'   (_`.    _                         __     ___           ',
+'              :  .      :  | |   _   _ _ __   __ _ _ _\\ \\   / (_)_ __ ___  ',
+'              :)    ()  :  | |  | | | | \'_ \\ / _` | \'__\\ \\ / /| | \'_ ` _ \\ ',
+'              `.   .   .\'  | |__| |_| | | | | (_| | |   \\ V / | | | | | | |',
+'                `-...-\'    |_____\\__,_|_| |_|\\__,_|_|    \\_/  |_|_| |_| |_|',
+
+}
+
+
+vim.g.dashboard_default_executive = 'telescope'
+
+vim.g.dashboard_custom_section = {
+    a = {description = {'  Find File          '}, command = 'Telescope find_files'},
+    b = {description = {'  Recently Used Files'}, command = 'Telescope oldfiles'},
+    c = {description = {'  Load Last Session  '}, command = 'SessionLoad'},
+    d = {description = {'  Find Word          '}, command = 'Telescope live_grep'},
+    e = {description = {'  Settings           '}, command = ':e ~/.config/nvim/nv-settings.lua'}
+    -- e = {description = {'  Marks              '}, command = 'Telescope marks'}
+}
+
+-- file_browser = {description = {' File Browser'}, command = 'Telescope find_files'},
+
+-- vim.g.dashboard_custom_shortcut = {
+--     a = 'f',
+--     find_word = 'SPC f a',
+--     last_session = 'SPC s l',
+--     new_file = 'SPC c n',
+--     book_marks = 'SPC f b'
+-- }
+-- find_history = 'SPC f h',
+
+-- vim.g.dashboard_session_directory = '~/.cache/nvim/session'
+vim.g.dashboard_custom_footer = {'chrisatmachine.com'}

+ 0 - 0
lua/nv-emmet/init.lua → lua/lv-emmet/init.lua


+ 0 - 0
lua/nv-galaxyline/init.lua → lua/lv-galaxyline/init.lua


+ 0 - 0
lua/nv-gitsigns/init.lua → lua/lv-gitsigns/init.lua


+ 1 - 1
lua/nv-globals.lua → lua/lv-globals.lua

@@ -1,7 +1,7 @@
 O = {
     auto_close_tree = 0,
     auto_complete = true,
-    colorscheme = 'nvcode',
+    colorscheme = 'lunar',
     hidden_files = true,
     wrap_lines = false,
     number = true,

+ 0 - 0
lua/nv-lspinstall/init.lua → lua/lv-lspinstall/init.lua


+ 0 - 0
lua/nv-lspkind/init.lua → lua/lv-lspkind/init.lua


+ 0 - 0
lua/nv-nvim-dap/init.lua → lua/lv-nvim-dap/init.lua


+ 65 - 0
lua/lv-nvimtree/init.lua

@@ -0,0 +1,65 @@
+--[[ " 
+--let g:nvim_tree_auto_ignore_ft = 'startify' "empty by default, don't auto open tree on specific filetypes.
+let g:nvim_tree_hide_dotfiles = 1 "0 by default, this option hides files and folders starting with a dot `.`
+let g:nvim_tree_git_hl = 1 "0 by default, will enable file highlight for git attributes (can be used without the icons).
+" let g:nvim_tree_tab_open = 1 "0 by default, will open the tree when entering a new tab and the tree was previously open
+" let g:nvim_tree_width_allow_resize  = 1 "0 by default, will not resize the tree when opening a file
+let g:nvim_tree_show_icons = {
+    \ 'git': 1,
+    \ 'folders': 1,
+    \ 'files': 1,
+    \ }
+
+"If 0, do not show the icons for one of 'git' 'folder' and 'files'
+"1 by default, notice that if 'files' is 1, it will only display
+"if nvim-web-devicons is installed and on your runtimepath ]] -- vim.g.nvim_tree_ignore = [ '.git', 'node_modules', '.cache' ] "empty by default
+vim.g.nvim_tree_disable_netrw = 0 -- "1 by default, disables netrw
+-- vim.g.nvim_tree_hijack_netrw = 0 --"1 by default, prevents netrw from automatically opening when opening directories (but lets you keep its other utilities)
+vim.g.nvim_tree_hide_dotfiles = 1 -- 0 by default, this option hides files and folders starting with a dot `.`
+vim.g.nvim_tree_indent_markers = 1 -- "0 by default, this option shows indent markers when folders are open
+vim.g.nvim_tree_follow = 1 -- "0 by default, this option allows the cursor to be updated when entering a buffer
+vim.g.nvim_tree_auto_close = O.auto_close_tree -- 0 by default, closes the tree when it's the last window
+vim.g.nvim_tree_auto_ignore_ft = 'startify' --empty by default, don't auto open tree on specific filetypes.
+local tree_cb = require'nvim-tree.config'.nvim_tree_callback
+    vim.g.nvim_tree_bindings = {
+      -- ["<CR>"] = ":YourVimFunction()<cr>",
+      -- ["u"] = ":lua require'some_module'.some_function()<cr>",
+
+      -- default mappings
+      ["<CR>"]           = tree_cb("edit"),
+      ["o"]              = tree_cb("edit"),
+      ["l"]              = tree_cb("edit"),
+      ["<2-LeftMouse>"]  = tree_cb("edit"),
+      ["<2-RightMouse>"] = tree_cb("cd"),
+      ["<C-]>"]          = tree_cb("cd"),
+      ["<C-v>"]          = tree_cb("vsplit"),
+      ["<C-x>"]          = tree_cb("split"),
+      ["<C-t>"]          = tree_cb("tabnew"),
+      ["<"]              = tree_cb("prev_sibling"),
+      [">"]              = tree_cb("next_sibling"),
+      ["<BS>"]           = tree_cb("close_node"),
+      -- ["h"]           = tree_cb("close_node"),
+      ["<S-CR>"]         = tree_cb("close_node"),
+      ["<Tab>"]          = tree_cb("preview"),
+      ["I"]              = tree_cb("toggle_ignored"),
+      ["H"]              = tree_cb("toggle_dotfiles"),
+      ["R"]              = tree_cb("refresh"),
+      ["a"]              = tree_cb("create"),
+      ["d"]              = tree_cb("remove"),
+      ["r"]              = tree_cb("rename"),
+      ["<C-r>"]          = tree_cb("full_rename"),
+      ["x"]              = tree_cb("cut"),
+      ["c"]              = tree_cb("copy"),
+      ["p"]              = tree_cb("paste"),
+      ["[c"]             = tree_cb("prev_git_item"),
+      ["]c"]             = tree_cb("next_git_item"),
+      ["-"]              = tree_cb("dir_up"),
+      ["q"]              = tree_cb("close"),
+    }
+-- vim.g.nvim_tree_show_icons = {git = 1, folders = 1, files = 1}
+vim.g.nvim_tree_icons = {
+    default = '',
+    symlink = '',
+    git = {unstaged = "", staged = "✓", unmerged = "", renamed = "➜", untracked = ""},
+    folder = {default = "", open = "", empty = "", empty_open = "", symlink = ""}
+}

+ 6 - 0
lua/lv-rnvimr/init.lua

@@ -0,0 +1,6 @@
+-- Make Ranger replace netrw and be the file explorer
+vim.g.rnvimr_ex_enable = 1
+vim.g.rnvimr_draw_border = 1
+vim.g.rnvimr_pick_enable = 1
+vim.g.rnvimr_bw_enable = 1
+vim.api.nvim_set_keymap('n', '-', ':RnvimrToggle<CR>', {noremap = true, silent = true})

+ 0 - 9
lua/nv-telescope/init.lua → lua/lv-telescope/init.lua

@@ -2,7 +2,6 @@ local actions = require('telescope.actions')
 -- Global remapping
 ------------------------------
 -- '--color=never',
-require('telescope').load_extension('media_files')
 require('telescope').setup {
     defaults = {
         find_command = {'rg', '--no-heading', '--with-filename', '--line-number', '--column', '--smart-case'},
@@ -61,13 +60,5 @@ require('telescope').setup {
                 -- ["<C-i>"] = my_cool_custom_action,
             }
         }
-    },
-    extensions = {
-        media_files = {
-            -- filetypes whitelist
-            -- defaults to {"png", "jpg", "mp4", "webm", "pdf"}
-            filetypes = {"png", "webp", "jpg", "jpeg"},
-            find_cmd = "rg" -- find command (defaults to `fd`)
-        }
     }
 }

+ 1 - 10
lua/nv-treesitter/init.lua → lua/lv-treesitter/init.lua

@@ -1,21 +1,12 @@
 require'nvim-treesitter.configs'.setup {
     ensure_installed = O.treesitter.ensure_installed, -- one of "all", "maintained" (parsers with maintainers), or a list of languages
-    -- TODO seems to be broken
     ignore_install = O.treesitter.ignore_install,
     highlight = {
         enable = O.treesitter.highlight.enabled -- false will disable the whole extension
     },
     -- indent = {enable = true, disable = {"python", "html", "javascript"}},
+    -- TODO seems to be broken
     indent = {enable = {"javascriptreact"}},
-    playground = {
-        enable = O.treesitter.playground.enabled,
-        disable = {},
-        updatetime = 25, -- Debounced time for highlighting nodes in the playground from source code
-        persist_queries = false -- Whether the query persists across vim sessions
-    },
     autotag = {enable = true},
-    rainbow = {enable = O.treesitter.rainbow.enabled},
-    context_commentstring = {enable = true, config = {javascriptreact = {style_element = '{/*%s*/}'}}}
-    -- refactor = {highlight_definitions = {enable = true}}
 }
 

+ 0 - 0
lua/nv-utils/init.lua → lua/lv-utils/init.lua


+ 0 - 2
lua/nv-bookmark/init.lua

@@ -1,2 +0,0 @@
-vim.g.bookmark_no_default_key_mappings = 1
-vim.g.bookmark_sign = ''

+ 0 - 12
lua/nv-colorizer/init.lua

@@ -1,12 +0,0 @@
-require'colorizer'.setup(
-  {'*';},
-  {
-    RGB      = true;         -- #RGB hex codes
-    RRGGBB   = true;         -- #RRGGBB hex codes
-    RRGGBBAA = true;         -- #RRGGBBAA hex codes
-    rgb_fn   = true;         -- CSS rgb() and rgba() functions
-    hsl_fn   = true;         -- CSS hsl() and hsla() functions
-    css      = true;         -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB
-    css_fn   = true;         -- Enable all CSS *functions*: rgb_fn, hsl_fn
-  })
-	  -- names    = true;         -- "Name" codes like Blue

+ 0 - 6
lua/nv-dadbod/init.lua

@@ -1,6 +0,0 @@
-vim.api.nvim_set_keymap("n", "<leader>Du", ":DBUIToggle<CR>", {noremap=true, silent = true})
-vim.api.nvim_set_keymap("n", "<leader>Df", ":DBUIFindBuffer<CR>", {noremap=true, silent = true})
-vim.api.nvim_set_keymap("n", "<leader>Dr", ":DBUIRenameBuffer<CR>", {noremap=true, silent = true})
-vim.api.nvim_set_keymap("n", "<leader>Dl", ":DBUILastQueryInfo<CR>", {noremap=true, silent = true})
-vim.g.db_ui_save_location = O.database.save_location
-vim.g.db_ui_auto_execute_table_helpers = O.database.auto_execute

+ 0 - 33
lua/nv-dashboard/init.lua

@@ -1,33 +0,0 @@
-vim.g.dashboard_custom_header = {
-    '███╗   ██╗██╗   ██╗ ██████╗ ██████╗ ██████╗ ███████╗',
-    '████╗  ██║██║   ██║██╔════╝██╔═══██╗██╔══██╗██╔════╝',
-    '██╔██╗ ██║██║   ██║██║     ██║   ██║██║  ██║█████╗',
-    '██║╚██╗██║╚██╗ ██╔╝██║     ██║   ██║██║  ██║██╔══╝',
-    '██║ ╚████║ ╚████╔╝ ╚██████╗╚██████╔╝██████╔╝███████╗',
-    '╚═╝  ╚═══╝  ╚═══╝   ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝'
-}
-
-vim.g.dashboard_default_executive = 'telescope'
-
-vim.g.dashboard_custom_section = {
-    a = {description = {'  Find File          '}, command = 'Telescope find_files'},
-    b = {description = {'  Recently Used Files'}, command = 'Telescope oldfiles'},
-    c = {description = {'  Load Last Session  '}, command = 'SessionLoad'},
-    d = {description = {'  Find Word          '}, command = 'Telescope live_grep'},
-    e = {description = {'  Settings           '}, command = ':e ~/.config/nvim/nv-settings.lua'}
-    -- e = {description = {'  Marks              '}, command = 'Telescope marks'}
-}
-
--- file_browser = {description = {' File Browser'}, command = 'Telescope find_files'},
-
--- vim.g.dashboard_custom_shortcut = {
---     a = 'f',
---     find_word = 'SPC f a',
---     last_session = 'SPC s l',
---     new_file = 'SPC c n',
---     book_marks = 'SPC f b'
--- }
--- find_history = 'SPC f h',
-
--- vim.g.dashboard_session_directory = '~/.cache/nvim/session'
-vim.g.dashboard_custom_footer = {'chrisatmachine.com'}

+ 0 - 1
lua/nv-dependency/init.lua

@@ -1 +0,0 @@
-require('dependency_assist').setup()

+ 0 - 15
lua/nv-dial/init.lua

@@ -1,15 +0,0 @@
-local dial = require("dial")
-
-dial.augends["custom#boolean"] = dial.common.enum_cyclic{
-    name = "boolean",
-    strlist = {"true", "false"},
-}
-table.insert(dial.config.searchlist.normal, "custom#boolean")
-vim.cmd([[
-nmap <C-a> <Plug>(dial-increment)
-nmap <C-x> <Plug>(dial-decrement)
-vmap <C-a> <Plug>(dial-increment)
-vmap <C-x> <Plug>(dial-decrement)
-vmap g<C-a> <Plug>(dial-increment-additional)
-vmap g<C-x> <Plug>(dial-decrement-additional)
-  ]])

+ 0 - 1
lua/nv-doge/init.lua

@@ -1 +0,0 @@
-vim.g.doge_mapping = '<Leader>*'

+ 0 - 14
lua/nv-floaterm/init.lua

@@ -1,14 +0,0 @@
--- Floaterm
-vim.g.floaterm_keymap_toggle = '<F1>'
-vim.g.floaterm_keymap_next   = '<F2>'
-vim.g.floaterm_keymap_prev   = '<F3>'
-vim.g.floaterm_keymap_new    = '<F4>'
-vim.g.floaterm_title=''
-
-vim.g.floaterm_gitcommit='floaterm'
-vim.g.floaterm_shell=O.shell
-vim.g.floaterm_autoinsert=1
-vim.g.floaterm_width=0.8
-vim.g.floaterm_height=0.8
-vim.g.floaterm_wintitle=0
-vim.g.floaterm_autoclose=1

+ 0 - 2
lua/nv-gitblame/init.lua

@@ -1,2 +0,0 @@
-vim.cmd('highlight default link gitblame SpecialComment')
-vim.g.gitblame_enabled = 0

+ 0 - 3
lua/nv-hop/init.lua

@@ -1,3 +0,0 @@
-vim.api.nvim_set_keymap('n', 's', ":HopChar2<cr>", {silent = true})
-vim.api.nvim_set_keymap('n', 'S', ":HopWord<cr>", {silent = true})
-

+ 0 - 11
lua/nv-indentline/init.lua

@@ -1,11 +0,0 @@
-vim.g.indent_blankline_buftype_exclude = {'terminal'}
-vim.g.indent_blankline_filetype_exclude = {'man', 'help', 'startify', 'dashboard', 'packer', 'neogitstatus', 'markdown'}
-vim.g.indent_blankline_char = '▏'
--- vim.g.indent_blankline_use_treesitter = true
-vim.g.indent_blankline_show_trailing_blankline_indent = false
-vim.g.indent_blankline_show_current_context = true
-vim.g.indent_blankline_context_patterns = {
-    'class', 'return', 'function', 'method', '^if', '^while', 'jsx_element', '^for', '^object', '^table', 'block',
-    'arguments', 'if_statement', 'else_clause', 'jsx_element', 'jsx_self_closing_element', 'try_statement',
-    'catch_clause', 'import_statement', 'operation_type'
-}

+ 0 - 34
lua/nv-lightbulb/init.lua

@@ -1,34 +0,0 @@
--- Showing defaults
-require'nvim-lightbulb'.update_lightbulb {
-    sign = {
-        enabled = true,
-        -- Priority of the gutter sign
-        priority = 10,
-        text = "💡",
-    },
-    float = {
-        enabled = false,
-        -- Text to show in the popup float
-        text = "💡",
-        -- Available keys for window options:
-        -- - height     of floating window
-        -- - width      of floating window
-        -- - wrap_at    character to wrap at for computing height
-        -- - max_width  maximal width of floating window
-        -- - max_height maximal height of floating window
-        -- - pad_left   number of columns to pad contents at left
-        -- - pad_right  number of columns to pad contents at right
-        -- - pad_top    number of lines to pad contents at top
-        -- - pad_bottom number of lines to pad contents at bottom
-        -- - offset_x   x-axis offset of the floating window
-        -- - offset_y   y-axis offset of the floating window
-        -- - anchor     corner of float to place at the cursor (NW, NE, SW, SE)
-        -- - winblend   transparency of the window (0-100)
-        win_opts = {},
-    },
-    virtual_text = {
-        enabled = false,
-        -- Text to show at virtual text
-        text = "💡",
-    }
-}

+ 0 - 1
lua/nv-matchup/init.lua

@@ -1 +0,0 @@
-vim.g.matchup_matchparen_offscreen = {}

+ 0 - 4
lua/nv-numb/init.lua

@@ -1,4 +0,0 @@
-require('numb').setup{
-   show_numbers = true, -- Enable 'number' for the window while peeking
-   show_cursorline = true -- Enable 'cursorline' for the window while peeking
-}

+ 0 - 2
lua/nv-nvim-peekup/init.lua

@@ -1,2 +0,0 @@
-vim.g.peekup_open = '""'
-

+ 0 - 74
lua/nv-nvimtree/init.lua

@@ -1,74 +0,0 @@
---[[ " 
---let g:nvim_tree_auto_ignore_ft = 'startify' "empty by default, don't auto open tree on specific filetypes.
-let g:nvim_tree_hide_dotfiles = 1 "0 by default, this option hides files and folders starting with a dot `.`
-let g:nvim_tree_git_hl = 1 "0 by default, will enable file highlight for git attributes (can be used without the icons).
-" let g:nvim_tree_tab_open = 1 "0 by default, will open the tree when entering a new tab and the tree was previously open
-" let g:nvim_tree_width_allow_resize  = 1 "0 by default, will not resize the tree when opening a file
-let g:nvim_tree_show_icons = {
-    \ 'git': 1,
-    \ 'folders': 1,
-    \ 'files': 1,
-    \ }
-
-"If 0, do not show the icons for one of 'git' 'folder' and 'files'
-"1 by default, notice that if 'files' is 1, it will only display
-"if nvim-web-devicons is installed and on your runtimepath ]]
--- vim.g.nvim_tree_ignore = [ '.git', 'node_modules', '.cache' ] "empty by default
-vim.g.nvim_tree_disable_netrw = 0 --"1 by default, disables netrw
--- vim.g.nvim_tree_hijack_netrw = 0 --"1 by default, prevents netrw from automatically opening when opening directories (but lets you keep its other utilities)
-vim.g.nvim_tree_hide_dotfiles = 1 --0 by default, this option hides files and folders starting with a dot `.`
-vim.g.nvim_tree_indent_markers = 1 --"0 by default, this option shows indent markers when folders are open
-vim.g.nvim_tree_follow = 1 --"0 by default, this option allows the cursor to be updated when entering a buffer
--- vim.g.nvim_tree_lsp_diagnostics = 1 --0 by default, will show lsp diagnostics in the tree. See :help nvim_tree_lsp_diagnostics
-vim.g.nvim_tree_auto_close = O.auto_close_tree --0 by default, closes the tree when it's the last window
-vim.g.nvim_tree_auto_ignore_ft = 'startify' --"empty by default, don't auto open tree on specific filetypes.
-local tree_cb = require'nvim-tree.config'.nvim_tree_callback
-vim.g.nvim_tree_bindings = {
-    -- mappings
-    ["<CR>"] = tree_cb("edit"),
-    ["l"] = tree_cb("edit"),
-    ["o"] = tree_cb("edit"),
-    ["<2-LeftMouse>"] = tree_cb("edit"),
-    ["<2-RightMouse>"] = tree_cb("cd"),
-    ["<C-]>"] = tree_cb("cd"),
-    ["v"] = tree_cb("vsplit"),
-    ["s"] = tree_cb("split"),
-    ["<C-t>"] = tree_cb("tabnew"),
-    ["h"] = tree_cb("close_node"),
-    ["<BS>"] = tree_cb("close_node"),
-    ["<S-CR>"] = tree_cb("close_node"),
-    ["<Tab>"] = tree_cb("preview"),
-    ["I"] = tree_cb("toggle_ignored"),
-    ["H"] = tree_cb("toggle_dotfiles"),
-    ["R"] = tree_cb("refresh"),
-    ["a"] = tree_cb("create"),
-    ["d"] = tree_cb("remove"),
-    ["r"] = tree_cb("rename"),
-    ["<C-r>"] = tree_cb("full_rename"),
-    ["x"] = tree_cb("cut"),
-    ["c"] = tree_cb("copy"),
-    ["p"] = tree_cb("paste"),
-    ["[c"] = tree_cb("prev_git_item"),
-    ["]c"] = tree_cb("next_git_item"),
-    ["-"] = tree_cb("dir_up"),
-    ["q"] = tree_cb("close")
-}
-vim.g.nvim_tree_icons = {
-    default = '',
-    symlink = '',
-    git = {
-        unstaged = "",
-        staged = "",
-        unmerged = "",
-        renamed = "➜",
-        untracked = "",
-        -- ignored = "◌"
-    },
-    folder = {
-        default = "",
-        open = "",
-        empty = "",
-        empty_open = "",
-        symlink = ""
-    }
-}

+ 0 - 4
lua/nv-quickscope/init.lua

@@ -1,4 +0,0 @@
--- Trigger a highlight in the appropriate direction when pressing these keys:
--- vim.cmd('let g:qs_highlight_on_keys = [\'f\', \'F\', \'t\', \'T\']')
-vim.g.qs_highlight_on_keys = {'f', 'F', 't', 'T'}
-vim.g.qs_max_chars=150

+ 0 - 24
lua/nv-rnvimr/init.lua

@@ -1,24 +0,0 @@
--- Make Ranger replace netrw and be the file explorer
-vim.g.rnvimr_ex_enable = 1
-vim.g.rnvimr_draw_border = 1
-
--- Make Ranger to be hidden after picking a file
-vim.g.rnvimr_pick_enable = 1
-
--- Make Neovim to wipe the buffers corresponding to the files deleted by Ranger
-vim.g.rnvimr_bw_enable = 1
-
--- vim.cmd('nmap <leader>r :RnvimrToggle<CR>')
-
---[[ let g:rnvimr_ranger_cmd = 'ranger --cmd="set column_ratios 1,1"'
-            " \ --cmd="set draw_borders separators"'
-
-" let g:rnvimr_layout = { 'relative': 'editor',
-"             \ 'width': float2nr(round(0.6 * &columns)),
-"             \ 'height': float2nr(round(0.6 * &lines)),
-"             \ 'col': float2nr(round(0.2 * &columns)),
-"             \ 'row': float2nr(round(0.2 * &lines)),
-"             \ 'style': 'minimal' }
-
-let g:rnvimr_presets = [
-            \ {'width': 0.800, 'height': 0.800}] ]]

+ 0 - 33
lua/nv-startify/init.lua

@@ -1,33 +0,0 @@
-vim.g.startify_custom_header = {
-    '   ███╗   ██╗██╗   ██╗ ██████╗ ██████╗ ██████╗ ███████╗',
-    '   ████╗  ██║██║   ██║██╔════╝██╔═══██╗██╔══██╗██╔════╝',
-    '   ██╔██╗ ██║██║   ██║██║     ██║   ██║██║  ██║█████╗',
-    '   ██║╚██╗██║╚██╗ ██╔╝██║     ██║   ██║██║  ██║██╔══╝',
-    '   ██║ ╚████║ ╚████╔╝ ╚██████╗╚██████╔╝██████╔╝███████╗',
-    '   ╚═╝  ╚═══╝  ╚═══╝   ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝'
-}
-
-vim.g.webdevicons_enable_startify = 1
-vim.g.startify_enable_special = 0
-vim.g.startify_session_dir = '~/.config/nvim/session'
-vim.g.startify_session_autoload = 1
-vim.g.startify_session_delete_buffers = 1
-vim.g.startify_change_to_vcs_root = 1
-vim.g.startify_fortune_use_unicode = 1
-vim.g.startify_session_persistence = 1
-vim.g.startify_session_dir = '~/.config/nvim/session'
-
-vim.api.nvim_exec(
-    'let startify_lists = [ { \'type\': \'files\',     \'header\': [\'   Files\'] }, { \'type\': \'sessions\',  \'header\': [\'   Sessions\'] },    { \'type\': \'bookmarks\', \'header\': [\'   Bookmarks\'] },                                                                   ]',
-    true)
-
-vim.api.nvim_exec(
-    'let startify_bookmarks = [ { \'b\': \'~/Blog\' }, { \'c\': \'~/.config/nvim/lua/config.lua\' }, { \'z\': \'~/.zshrc\' }, { \'r\': \'~/.config/nvim/README.md\' }]',
-    true)
-
-vim.cmd([[
-function! StartifyEntryFormat()
-        return 'WebDevIconsGetFileTypeSymbol(absolute_path) ." ". entry_path'
-endfunction
-]])
-

+ 0 - 0
lua/nv-surround/init.lua


+ 0 - 2
lua/nv-vim-rooter/init.lua

@@ -1,2 +0,0 @@
--- TODO create file
-vim.g.rooter_silent_chdir = 1

+ 77 - 147
lua/plugins.lua

@@ -1,4 +1,3 @@
--- vim.cmd [[packadd packer.nvim]]
 local execute = vim.api.nvim_command
 local fn = vim.fn
 
@@ -9,167 +8,98 @@ if fn.empty(fn.glob(install_path)) > 0 then
     execute 'packadd packer.nvim'
 end
 
-local my = function(file) require(file) end
+--- Check if a file or directory exists in this path
+local function require_plugin(plugin)
+    local plugin_prefix = fn.stdpath('data') .. '/site/pack/packer/opt/'
+
+    local plugin_path = plugin_prefix .. plugin .. '/'
+    --	print('test '..plugin_path)
+    local ok, err, code = os.rename(plugin_path, plugin_path)
+    if not ok then
+        if code == 13 then
+            -- Permission denied, but it exists
+            return true
+        end
+    end
+    --	print(ok, err, code)
+    if ok then vim.cmd('packadd ' .. plugin) end
+    return ok, err, code
+end
 
 vim.cmd 'autocmd BufWritePost plugins.lua PackerCompile' -- Auto compile when there are changes in plugins.lua
 
--- require('packer').init({display = {non_interactive = true}})
-require('packer').init({display = {auto_clean = false}})
-
 return require('packer').startup(function(use)
     -- Packer can manage itself as an optional plugin
     use 'wbthomason/packer.nvim'
 
-    -- Information
-    -- use 'nanotee/nvim-lua-guide'
-
-    -- Quality of life improvements
-    -- use 'norcalli/nvim_utils'
+    -- TODO refactor all of this (for now it works, but yes I know it could be wrapped in a simpler function)
+    use {'neovim/nvim-lspconfig', opt=true}
+    use {'glepnir/lspsaga.nvim', opt=true}
+    use {'onsails/lspkind-nvim', opt=true}
+    use {'kabouzeid/nvim-lspinstall', opt=true}
 
-    -- LSP
-    use 'neovim/nvim-lspconfig'
-    use 'glepnir/lspsaga.nvim'
-    use 'onsails/lspkind-nvim'
-    use 'kosayoda/nvim-lightbulb'
-    use 'mfussenegger/nvim-jdtls'
-    use 'kabouzeid/nvim-lspinstall'
+    -- Tlescope
+    use {'nvim-lua/popup.nvim', opt=true}
+    use {'nvim-lua/plenary.nvim', opt=true}
+    use {'nvim-telescope/telescope.nvim', opt=true}
 
-    -- Debugging
-    use 'mfussenegger/nvim-dap'
+    -- Dbugging
+    use {'mfussenegger/nvim-dap', opt=true}
 
-    -- Autocomplete
-    use 'hrsh7th/nvim-compe'
-    use 'mattn/emmet-vim'
-    use 'hrsh7th/vim-vsnip'
-    use "rafamadriz/friendly-snippets"
-    use 'ChristianChiarulli/html-snippets'
+    -- Atocomplete
+    use {'hrsh7th/nvim-compe', opt=true}
+    use {'hrsh7th/vim-vsnip', opt=true}
+    use {"rafamadriz/friendly-snippets", opt=true}
 
-    -- Treesitter
+    -- Teesitter
     use {'nvim-treesitter/nvim-treesitter', run = ':TSUpdate'}
-    use 'p00f/nvim-ts-rainbow'
-    use {'lukas-reineke/indent-blankline.nvim', branch = 'lua'}
-    use 'nvim-treesitter/playground'
-    use 'JoosepAlviste/nvim-ts-context-commentstring'
-    use 'windwp/nvim-ts-autotag'
+    use {'windwp/nvim-ts-autotag', opt=true}
 
-    -- Icons
-    use 'kyazdani42/nvim-web-devicons'
-    use 'ryanoasis/vim-devicons'
+    -- Eplorer
+    use 'kyazdani42/nvim-tree.lua'
+    -- TODO remove when open on dir is supported by nvimtree
+    use 'kevinhwang91/rnvimr'
 
-    -- Status Line and Bufferline
-    use { 'glepnir/galaxyline.nvim' }
-    -- use { 'glepnir/galaxyline.nvim', config = function() require'nv-galaxyline' end } -- inline fn alternative
-    use 'romgrk/barbar.nvim'
+-- use {'lukas-reineke/indent-blankline.nvim', opt=true, branch = 'lua'}
+    use {'lewis6991/gitsigns.nvim', opt = true}
+    use {'liuchengxu/vim-which-key', opt = true}
+    use {'ChristianChiarulli/dashboard-nvim', opt = true}
+    use {'windwp/nvim-autopairs', opt = true}
+    use {'terrortylor/nvim-comment', opt = true}
+    use {'kevinhwang91/nvim-bqf', opt = true}
 
-    -- Telescope
-    use 'nvim-lua/popup.nvim'
-    use 'nvim-lua/plenary.nvim'
-    use 'nvim-telescope/telescope.nvim'
-    use 'nvim-telescope/telescope-media-files.nvim'
+    -- Color
+    use {'christianchiarulli/nvcode-color-schemes.vim', opt = true}
 
-    -- Explorer
-    use 'kyazdani42/nvim-tree.lua'
+    -- Icons
+    use {'kyazdani42/nvim-web-devicons', opt = true}
 
-    -- Color
-    use 'christianchiarulli/nvcode-color-schemes.vim'
-    use 'norcalli/nvim-colorizer.lua'
-    use 'sheerun/vim-polyglot'
-
-    -- Git
-    -- use 'TimUntersberger/neogit'
-    use {'lewis6991/gitsigns.nvim', requires = {'nvim-lua/plenary.nvim'}}
-    use 'f-person/git-blame.nvim'
-    use 'tpope/vim-fugitive'
-    use 'tpope/vim-rhubarb'
-
-    -- Easily Create Gists
-    use 'mattn/vim-gist'
-    use 'mattn/webapi-vim'
-
-    -- Webdev
-    -- TODO add back when I learn it better 
-    -- use 'gennaro-tedesco/nvim-jqx'
-    -- use 'turbio/bracey.vim'
-
-    -- Php
-    use 'phpactor/phpactor'
-
-    -- Flutter
-    use 'thosakwe/vim-flutter'
-
-    -- Dependency assistent
-    use 'akinsho/dependency-assist.nvim'
-
-    -- Registers
-    -- use 'gennaro-tedesco/nvim-peekup'
-
-    -- Navigation
-    use 'unblevable/quick-scope' -- hop may replace you
-    use 'phaazon/hop.nvim'
-    use 'kevinhwang91/rnvimr' -- telescope may fully replace you
-
-    -- General Plugins
-    use 'liuchengxu/vim-which-key'
-    use 'kevinhwang91/nvim-bqf'
-    use 'airblade/vim-rooter'
-    use 'ChristianChiarulli/dashboard-nvim'
-    use 'metakirby5/codi.vim'
-    use {'iamcco/markdown-preview.nvim', run = 'cd app && npm install'}
-    use 'voldikss/vim-floaterm'
-    use 'terrortylor/nvim-comment'
-    use 'monaqa/dial.nvim'
-    use 'junegunn/goyo.vim'
-    use 'andymass/vim-matchup'
-    use 'MattesGroeger/vim-bookmarks'
-    use 'windwp/nvim-autopairs'
-    use 'mbbill/undotree'
-	use 'nacro90/numb.nvim'
-	use 'turbio/bracey.vim'
-
-    -- Database
-    use 'tpope/vim-dadbod'
-    use 'kristijanhusak/vim-dadbod-ui'
-    use 'kristijanhusak/vim-dadbod-completion'
-
-    -- Documentation Generator
-    use {'kkoomen/vim-doge', run = ':call doge#install()'}
-
-    -- TODO put this back when stable for indent lines
-    -- vim.g.indent_blankline_space_char = ''
-    -- use 'b3nj5m1n/kommentary'
-    -- use {
-    --     'glacambre/firenvim',
-    --     run = function()
-    --         vim.fn['firenvim#install'](1)
-    --     end
-    -- }
-    -- use 'glepnir/dashboard-nvim'
-    -- use 'mhinz/vim-startify'
-    -- use 'cstrap/python-snippets'
-    -- use 'ylcnfrht/vscode-python-snippet-pack'
-    -- use 'norcalli/snippets.nvim'
-    -- use {'akinsho/nvim-bufferline.lua', requires = 'kyazdani42/nvim-web-devicons'}
-    -- use 'SirVer/ultisnips'
-    -- use 'honza/vim-snippets'
-    -- vim.g.UltiSnipsExpandTrigger="<CR>"
-    -- vim.g.UltiSnipsJumpForwardTrigger="<Tab>"
-    -- vim.g.UltiSnipsJumpBackwardTrigger="<S-Tab>"
-    -- use 'blackcauldron7/surround.nvim'
-    -- use 'ChristianChiarulli/java-snippets'
-    -- use 'xabikos/vscode-javascript'
-    -- use 'dsznajder/vscode-es7-javascript-react-snippets'
-    -- use 'golang/vscode-go'
-    -- use 'rust-lang/vscode-rust'
-    -- use 'ChristianChiarulli/python-snippets'
-    -- use 'kshenoy/vim-signature'
-    -- use 'nelstrom/vim-visual-star-search'
-    -- TODO switch back when config support snips
-    -- use 'cohama/lexima.vim'
-    -- use 'bfredl/nvim-miniyank'
-    -- use 'brooth/far.vim'
-    -- use 'liuchengxu/vista.vim'
-    -- use 'psliwka/vim-smoothie'
-    -- use 'nvim-treesitter/nvim-treesitter-refactor'
-    -- use 'nvim-treesitter/playground'
-    -- use 'moll/vim-bbye'
+    -- Status Line and Bufferline
+    use {'glepnir/galaxyline.nvim', opt = true}
+    use {'romgrk/barbar.nvim', opt = true}
+
+    require_plugin('nvim-lspconfig')
+    require_plugin('lspsaga.nvim')
+    require_plugin('lspkind-nvim')
+    require_plugin('nvim-lspinstall')
+    require_plugin('popup.nvim')
+    require_plugin('plenary.nvim')
+    require_plugin('telescope.nvim')
+    require_plugin('nvim-dap')
+    require_plugin('nvim-compe')
+    require_plugin('vim-vsnip')
+    require_plugin('nvim-treesitter')
+    require_plugin('nvim-ts-autotag')
+    require_plugin('nvim-tree.lua')
+    require_plugin('gitsigns.nvim')
+    require_plugin('vim-which-key')
+    require_plugin('dashboard-nvim')
+    require_plugin('nvim-autopairs')
+    require_plugin('nvim-comment')
+    require_plugin('nvim-bqf')
+    require_plugin('nvcode-color-schemes.vim')
+    require_plugin('nvim-web-devicons')
+    require_plugin('galaxyline.nvim')
+    require_plugin('barbar.nvim')
 end)
+

+ 1 - 2
nv-settings.lua → lv-settings.lua

@@ -13,11 +13,10 @@ O.colorscheme = 'lunar'
 O.auto_close_tree = 0
 O.wrap_lines = false
 
+-- if you don't want all the parsers change this to a table of the ones you want
 O.treesitter.ensure_installed = "all"
 O.treesitter.ignore_install = {"haskell"}
 O.treesitter.highlight.enabled = true
-O.treesitter.playground.enabled = true
-O.treesitter.rainbow.enabled = false
 
 
 O.clang.diagnostics.virtual_text = false

+ 0 - 2
utils/init.lua

@@ -1,2 +0,0 @@
-  require('plugins')
-

+ 14 - 14
utils/installer/install.sh

@@ -15,7 +15,7 @@ installnodeubuntu() {
 }
 
 moveoldnvim() {
-	echo "Not installing NVCode"
+	echo "Not installing LunarVim"
 	echo "Please move your ~/.config/nvim folder before installing"
 	exit
 }
@@ -66,13 +66,13 @@ installpacker() {
 }
 
 cloneconfig() {
-	echo "Cloning NVCode configuration"
-	git clone https://github.com/ChristianChiarulli/nvcode.git ~/.config/nvim
-	mv $HOME/.config/nvim/init.lua $HOME/.config/nvim/init.lua.tmp
-	mv $HOME/.config/nvim/utils/init.lua $HOME/.config/nvim/init.lua
-	# nvim -u $HOME/.config/nvim/init.lua --headless --noplugin +PackerInstall +qall
-	rm $HOME/.config/nvim/init.lua
-	mv $HOME/.config/nvim/init.lua.tmp $HOME/.config/nvim/init.lua
+	echo "Cloning LunarVim configuration"
+	git clone https://github.com/ChristianChiarulli/lunarvim.git ~/.config/nvim
+	# mv $HOME/.config/nvim/init.lua $HOME/.config/nvim/init.lua.tmp
+	# mv $HOME/.config/nvim/utils/init.lua $HOME/.config/nvim/init.lua
+	nvim -u $HOME/.config/nvim/init.lua +PackerInstall
+	# rm $HOME/.config/nvim/init.lua
+	# mv $HOME/.config/nvim/init.lua.tmp $HOME/.config/nvim/init.lua
 }
 
 asktoinstallnode() {
@@ -123,7 +123,7 @@ installextrapackages() {
 }
 
 # Welcome
-echo 'Installing NVCode'
+echo 'Installing LunarVim'
 
 # move old nvim directory if it exists
 [ -d "$HOME/.config/nvim" ] && moveoldnvim
@@ -143,17 +143,17 @@ else
 	installpacker
 fi
 
-if [ -a "$HOME/.config/nvcode/init.lua" ]; then
+if [ -a "$HOME/.config/nvim/init.lua" ]; then
 	echo 'nvcode already installed'
 else
 	# clone config down
 	cloneconfig
-	echo 'export PATH=$HOME/.config/nvcode/utils/bin:$PATH' >>~/.zshrc
-	echo 'export PATH=$HOME/.config/nvcode/utils/bin:$PATH' >>~/.bashrc
+	# echo 'export PATH=$HOME/.config/nvim/utils/bin:$PATH' >>~/.zshrc
+	# echo 'export PATH=$HOME/.config/nvcode/utils/bin:$PATH' >>~/.bashrc
 fi
 
 echo "I recommend you also install and activate a font from here: https://github.com/ryanoasis/nerd-fonts"
 
-echo "I also recommend you add 'set preview_images_method ueberzug' to ~/.config/ranger/rc.conf"
+# echo "I also recommend you add 'set preview_images_method ueberzug' to ~/.config/ranger/rc.conf"
 
-echo 'export PATH=/home/$USER/.config/nvcode/utils/bin:$PATH appending to zshrc/bashrc'
+# echo 'export PATH=/home/$USER/.config/nvcode/utils/bin:$PATH appending to zshrc/bashrc'

BIN
utils/media/demo.png


BIN
utils/media/nvcode_logo.png


BIN
utils/media/nvcode_logo.png.old


+ 25 - 29
vimscript/functions.vim

@@ -1,28 +1,28 @@
-command! LspCodeAction lua require 'nv-utils'.code_action()
-command! LspDeclaration lua require 'nv-utils'.declaration()
-command! LspDefinition lua require 'nv-utils'.definition()
-command! LspDocumentSymbol lua require 'nv-utils'.document_symbol()
-command! LspFormatting lua require 'nv-utils'.formatting()
-command! LspFormattingSync lua require 'nv-utils'.formatting_sync()
-command! LspHover lua require 'nv-utils'.hover()
-command! LspImplementation lua require 'nv-utils'.implementation()
-command! LspRangeCodeAction lua require 'nv-utils'.range_code_action()
-command! LspRangeFormatting lua require 'nv-utils'.range_formatting()
-command! LspReferences lua require 'nv-utils'.references()
-command! LspRename lua require 'nv-utils'.rename()
-command! LspTypeDefinition lua require 'nv-utils'.type_definition()
-command! LspWorkspaceSymbol lua require 'nv-utils'.workspace_symbol()
-command! LspGotoNext lua require 'nv-utils'.goto_next()
-command! LspGotoPrev lua require 'nv-utils'.goto_prev()
-command! LspShowLineDiagnostics lua require 'nv-utils'.show_line_diagnostics()
-command! NextHunk lua require 'nv-utils'.next_hunk()
-command! PrevHunk lua require 'nv-utils'.prev_hunk()
-command! StageHunk lua require 'nv-utils'.stage_hunk()
-command! UndoStageHunk lua require 'nv-utils'.undo_stage_hunk()
-command! ResetHunk lua require 'nv-utils'.reset_hunk()
-command! ResetBuffer lua require 'nv-utils'.reset_buffer()
-command! PreviewHunk lua require 'nv-utils'.preview_hunk()
-command! BlameLine lua require 'nv-utils'.blame_line()
+command! LspCodeAction lua require 'lv-utils'.code_action()
+command! LspDeclaration lua require 'lv-utils'.declaration()
+command! LspDefinition lua require 'lv-utils'.definition()
+command! LspDocumentSymbol lua require 'lv-utils'.document_symbol()
+command! LspFormatting lua require 'lv-utils'.formatting()
+command! LspFormattingSync lua require 'lv-utils'.formatting_sync()
+command! LspHover lua require 'lv-utils'.hover()
+command! LspImplementation lua require 'lv-utils'.implementation()
+command! LspRangeCodeAction lua require 'lv-utils'.range_code_action()
+command! LspRangeFormatting lua require 'lv-utils'.range_formatting()
+command! LspReferences lua require 'lv-utils'.references()
+command! LspRename lua require 'lv-utils'.rename()
+command! LspTypeDefinition lua require 'lv-utils'.type_definition()
+command! LspWorkspaceSymbol lua require 'lv-utils'.workspace_symbol()
+command! LspGotoNext lua require 'lv-utils'.goto_next()
+command! LspGotoPrev lua require 'lv-utils'.goto_prev()
+command! LspShowLineDiagnostics lua require 'lv-utils'.show_line_diagnostics()
+command! NextHunk lua require 'lv-utils'.next_hunk()
+command! PrevHunk lua require 'lv-utils'.prev_hunk()
+command! StageHunk lua require 'lv-utils'.stage_hunk()
+command! UndoStageHunk lua require 'lv-utils'.undo_stage_hunk()
+command! ResetHunk lua require 'lv-utils'.reset_hunk()
+command! ResetBuffer lua require 'lv-utils'.reset_buffer()
+command! PreviewHunk lua require 'lv-utils'.preview_hunk()
+command! BlameLine lua require 'lv-utils'.blame_line()
 command! W noa w
 
 " Debugging
@@ -55,10 +55,6 @@ command! DebugGetSession lua require'dap'.session()
 " nnoremap <silent> <leader>dr :lua require'dap'.repl.open()<CR>
 " nnoremap <silent> <leader>dl :lua require'dap'.run_last()<CR>
 
-" TODO find out why this thing follows me everywhere in java
-let blacklist = ['java']
-autocmd CursorHold,CursorHoldI * if index(blacklist, &ft) < 0 | lua require'nvim-lightbulb'.update_lightbulb()
-
 autocmd! User GoyoEnter lua require('gitsigns').toggle_signs()
 autocmd! User GoyoLeave lua require('gitsigns').toggle_signs()
 

+ 5 - 5
vimscript/nv-vscode/init.vim → vimscript/lv-vscode/init.vim

@@ -1,14 +1,14 @@
 " TODO there is a more contemporary version of this file
 " TODO Also some of it is redundant
-packadd quickscope
+" packadd quickscope
 
 luafile ~/.config/nvim/lua/settings.lua
 
-let g:qs_highlight_on_keys = ['f', 'F', 't', 'T']
+" let g:qs_highlight_on_keys = ['f', 'F', 't', 'T']
 
-highlight QuickScopePrimary guifg='#00C7DF' gui=underline ctermfg=155 cterm=underline
-highlight QuickScopeSecondary guifg='#eF5F70' gui=underline ctermfg=81 cterm=underline
-let g:qs_max_chars=150
+" highlight QuickScopePrimary guifg='#00C7DF' gui=underline ctermfg=155 cterm=underline
+" highlight QuickScopeSecondary guifg='#eF5F70' gui=underline ctermfg=81 cterm=underline
+" let g:qs_max_chars=150
 
 "VSCode
 function! s:split(...) abort

+ 0 - 102
vimscript/nv-whichkey/init.vim → vimscript/lv-whichkey/init.vim

@@ -23,60 +23,18 @@ autocmd  FileType which_key set laststatus=0 noshowmode noruler
 
 let g:which_key_map['/'] = 'comment toggle'
 let g:which_key_map[';'] = [ ':Dashboard'                                      , 'home screen' ]
-let g:which_key_map[','] = [ '<Plug>(emmet-expand-abbr)'                       , 'expand tags' ]
-let g:which_key_map['"'] = [ '<Plug>PeekupOpen'                                , 'registers' ]
 let g:which_key_map['?'] = [ ':NvimTreeFindFile'                               , 'find current file' ]
 let g:which_key_map['e'] = [ ':NvimTreeToggle'                                 , 'explorer' ]
 let g:which_key_map['f'] = [ ':Telescope find_files'                           , 'find files' ]
 let g:which_key_map['h'] = [ '<C-W>s'                                          , 'split below']
-let g:which_key_map['M'] = [ ':MarkdownPreviewToggle'                          , 'markdown preview']
 let g:which_key_map['H'] = [ ':let @/ = ""'                                    , 'no highlight' ]
 let g:which_key_map['r'] = [ ':RnvimrToggle'                                   , 'ranger' ]
-let g:which_key_map['*'] = [ ':DogeGenerate'                                   , 'documentation generator' ]
-let g:which_key_map['u'] = [ ':UndotreeToggle'                                 , 'undo tree' ]
 " TODO create entire treesitter section
-let g:which_key_map['T'] = [ ':TSHighlightCapturesUnderCursor'                 , 'treesitter highlight' ]
 let g:which_key_map['v'] = [ '<C-W>v'                                          , 'split right']
 " TODO play nice with status line
-let g:which_key_map['z'] = [ 'Goyo'                                            , 'zen' ]
 
 " Group mappings
 
-" . is for emmet
-let g:which_key_map['.'] = {
-      \ 'name' : '+emmet' ,
-      \ ',' : ['<Plug>(emmet-expand-abbr)'               , 'expand abbr'],
-      \ ';' : ['<plug>(emmet-expand-word)'               , 'expand word'],
-      \ 'u' : ['<plug>(emmet-update-tag)'                , 'update tag'],
-      \ 'd' : ['<plug>(emmet-balance-tag-inward)'        , 'balance tag in'],
-      \ 'D' : ['<plug>(emmet-balance-tag-outward)'       , 'balance tag out'],
-      \ 'n' : ['<plug>(emmet-move-next)'                 , 'move next'],
-      \ 'N' : ['<plug>(emmet-move-prev)'                 , 'move prev'],
-      \ 'i' : ['<plug>(emmet-image-size)'                , 'image size'],
-      \ '/' : ['<plug>(emmet-toggle-comment)'            , 'toggle comment'],
-      \ 'j' : ['<plug>(emmet-split-join-tag)'            , 'split join tag'],
-      \ 'k' : ['<plug>(emmet-remove-tag)'                , 'remove tag'],
-      \ 'a' : ['<plug>(emmet-anchorize-url)'             , 'anchorize url'],
-      \ 'A' : ['<plug>(emmet-anchorize-summary)'         , 'anchorize summary'],
-      \ 'm' : ['<plug>(emmet-merge-lines)'               , 'merge lines'],
-      \ 'c' : ['<plug>(emmet-code-pretty)'               , 'code pretty'],
-      \ }
-
-" a is for actions
-let g:which_key_map.a = {
-      \ 'name' : '+actions' ,
-      \ 'c' : [':ColorizerToggle'        , 'colorizer'],
-      \ 'h' : [':let @/ = ""'            , 'remove search highlight'],
-      \ 'i' : [':IndentBlanklineToggle'  , 'toggle indent lines'],
-      \ 'n' : [':set nonumber!'          , 'line-numbers'],
-      \ 's' : [':s/\%V\(.*\)\%V/"\1"/'   , 'surround'],
-      \ 'r' : [':set norelativenumber!'  , 'relative line nums'],
-      \ 'v' : [':Codi'                   , 'virtual repl on'],
-      \ 'V' : [':Codi!'                  , 'virtual repl off'],
-      \ }
-      " \ 'l' : [':Bracey'                 , 'start live server'],
-      " \ 'L' : [':BraceyStop'             , 'stop live server'],
-
 " b is for buffer
 let g:which_key_map.b = {
       \ 'name' : '+buffer' ,
@@ -99,17 +57,6 @@ let g:which_key_map.d = {
       \ 'r' : ['DebugToggleRepl'               , 'toggle repl'],
       \ 's' : ['DebugStart'                    , 'start'],
       \ }
-      " \ 'O' : ['DebugStepOut'                  , 'next-buffer'],
-      " \ 'S' : ['DebugGetSession '              , 'fzf-buffer'],
-
-" D is for database
-let g:which_key_map.D = {
-      \ 'name' : '+database' ,
-      \ 'u' : ['DBUIToggle '        , 'db ui toggle'],
-      \ 'f' : ['DBUIFindBuffer'     , 'db find buffer'],
-      \ 'r' : ['DBUIRenameBuffer'   , 'db rename buffer'],
-      \ 'l' : ['DBUILastQueryInfo'  , 'db last query'],
-      \ }
 
 " F is for fold
 let g:which_key_map.F = {
@@ -126,15 +73,6 @@ let g:which_key_map.F = {
     \ '6' : [':set foldlevel=6'   , 'level6']
     \ }
 
-" m is for mark
-" I'd rather use regular marks but they never clear
-let g:which_key_map.m = {
-\ 'name': '+mark',
-    \ 't' : [':BookmarkToggle'   , 'toggle'],
-    \ 'j' : [':BookmarkNext'   , 'next mark'],
-    \ 'k' : [':BookmarkPrev'   , 'prev mark']
-    \ }
-
 " s is for search powered by telescope
 let g:which_key_map.s = {
       \ 'name' : '+search' ,
@@ -177,21 +115,6 @@ let g:which_key_map.g = {
       \ 'S' : [':Gstatus'                          , 'status'],
       \ 'u' : [':UndoStageHunk'                    , 'undo stage hunk'],
       \ }
-      " \ 'n' : [':Neogit'                           , 'neogit'],
-
-" G is for gist
-let g:which_key_map.G = {
-      \ 'name' : '+gist' ,
-      \ 'b' : [':Gist -b'                          , 'post gist browser'],
-      \ 'd' : [':Gist -d'                          , 'delete gist'],
-      \ 'e' : [':Gist -e'                          , 'edit gist'],
-      \ 'l' : [':Gist -l'                          , 'list public gists'],
-      \ 's' : [':Gist -ls'                         , 'list starred gists'],
-      \ 'm' : [':Gist -m'                          , 'post gist all buffers'],
-      \ 'p' : [':Gist -P'                          , 'post public gist '],
-      \ 'P' : [':Gist -p'                          , 'post private gist '],
-      \ }
-      " \ 'a' : [':Gist -a'                          , 'post gist anon'],
 
 " l is for language server protocol
 let g:which_key_map.l = {
@@ -213,30 +136,5 @@ let g:which_key_map.l = {
       \ 's' : [':Telescope lsp_document_symbols'     , 'document symbols'],
       \ 'S' : [':Telescope lsp_workspace_symbols'    , 'workspace symbols'],
       \ }
-      " \ 'H' : [':Lspsaga signature_help'             , 'signature_help'],
-      " \ 'o' : [':Vista!!'                            , 'outline'],
-
-" t is for terminal
-let g:which_key_map.t = {
-      \ 'name' : '+terminal' ,
-      \ ';' : [':FloatermNew --wintype=normal --height=6'       , 'terminal'],
-      \ 'f' : [':FloatermNew fzf'                               , 'fzf'],
-      \ 'g' : [':FloatermNew lazygit'                           , 'git'],
-      \ 'd' : [':FloatermNew lazydocker'                        , 'docker'],
-      \ 'n' : [':FloatermNew node'                              , 'node'],
-      \ 'N' : [':FloatermNew nnn'                               , 'nnn'],
-      \ 'p' : [':FloatermNew python'                            , 'python'],
-      \ 'm' : [':FloatermNew lazynpm'                           , 'npm'],
-      \ 't' : [':FloatermToggle'                                , 'toggle'],
-      \ 'y' : [':FloatermNew ytop'                              , 'ytop'],
-      \ 'u' : [':FloatermNew ncdu'                              , 'ncdu'],
-      \ }
-      " \ 'r' : [':FloatermNew ranger'                            , 'ranger'],
-
-" let g:which_key_map.R = {
-"       \ 'name' : '+Find_Replace' ,
-"       \ 'f' : [':Farr --source=vimgrep'    , 'file'],
-"       \ 'p' : [':Farr --source=rgnvim'     , 'project'],
-"       \ }
 
 call which_key#register('<Space>', "g:which_key_map")