christianchiarulli 5 năm trước cách đây
mục cha
commit
2cd8c6a21c
53 tập tin đã thay đổi với 331 bổ sung và 712 xóa
  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")