Ver código fonte

switch to lazy.nvim + remove unused vimscript dirs

Noah Vogt 4 dias atrás
pai
commit
b20a424f8e

+ 0 - 106
dot-config/nvim/general/auto.vim

@@ -1,106 +0,0 @@
-" fix latex commenting
-augroup fixLatexComments
-  autocmd!
-  autocmd FileType plaintex,tex,latex syntax spell toplevel
-augroup END
-" Automatically wrap at 80 characters for Markdown
-" autocmd BufRead,BufNewFile *.md setlocal textwidth=80
-augroup wrapJavaAt100LinesException
-  autocmd!
-  autocmd FileType java set colorcolumn=100
-augroup END
-
-function! MathAndLiquid()
-    "" Define certain regions
-    " Block math. Look for "$$[anything]$$"
-    syn region math start=/\$\$/ end=/\$\$/
-    " inline math. Look for "$[not $][anything]$"
-    syn match math_block '\$[^$].\{-}\$'
-
-    " Liquid single line. Look for "{%[anything]%}"
-    syn match liquid '{%.*%}'
-    " Liquid multiline. Look for "{%[anything]%}[anything]{%[anything]%}"
-    syn region highlight_block start='{% highlight .*%}' end='{%.*%}'
-    " Fenced code blocks, used in GitHub Flavored Markdown (GFM)
-    syn region highlight_block start='```' end='```'
-
-    "" Actually highlight those regions.
-    hi link math Statement
-    hi link liquid Statement
-    hi link highlight_block Function
-    hi link math_block Function
-endfunction
-
-" Call everytime we open a Markdown file
-augroup callMathFunction
-  autocmd!
-  autocmd BufRead,BufNewFile,BufEnter *.md,*.markdown call MathAndLiquid()
-augroup END
-
-" active to autocompile docs on saving
-"autocmd BufWritePost *.ms !compile % | fold -w200
-"autocmd BufWritePost *.tex !compile % | fold -w200
-
-" disable automatic comment
-augroup disableAutoComment
-  autocmd!
-  autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
-augroup END
-
-" clear a TeX build after exiting vim
-augroup texclear
-  autocmd!
-  autocmd VimLeavePre *.tex !texclear "%"
-  autocmd VimLeavePre *.md !texclear "%"
-augroup END
-
-" use python syntax highlighting for .tibasic files
-augroup tibasic
-  autocmd!
-  autocmd BufNewFile,BufRead *.tibasic set filetype=python
-  autocmd BufNewFile,BufRead *.tib set filetype=python
-augroup END
-
-function! FernInitReload() abort
-  augroup FernGroupLocal
-    autocmd! * <buffer>
-    autocmd BufEnter <buffer> silent execute "normal \<Plug>(fern-action-reload)"
-  augroup END
-endfunction
-
-augroup OnEnteringFernWindow
-  autocmd!
-  autocmd FileType fern call FernInitReload()
-augroup END
-
-" enable emmet only for html / css files
-augroup EmmetEnabler
-  autocmd!
-  autocmd FileType html,css EmmetInstall
-augroup END
-
-" colored nerdfont icons on fern + startify buffers
-augroup my-glyph-palette
-  autocmd! *
-  autocmd FileType fern call glyph_palette#apply()
-  autocmd FileType startify call glyph_palette#apply()
-augroup END
-
-" relative line numbers
-augroup numbertoggle
-  autocmd!
-  autocmd BufEnter,FocusGained,InsertLeave * set relativenumber
-  autocmd BufLeave,FocusLost,InsertEnter   * set norelativenumber
-augroup END
-
-" ugly fix fo the vimspector log file
-augroup fixVimSpectorLogFile
-autocmd User VimspectorDebugEnded call system("mv ~/.vimspector.log " . $XDG_CACHE_HOME."/vim/")
-augroup END
-
-" Highlight references on CursorHold
-augroup LspHighlight
-  autocmd!
-  autocmd CursorHold * lua vim.lsp.buf.document_highlight()
-  autocmd CursorMoved * lua vim.lsp.buf.clear_references()
-augroup END

+ 0 - 70
dot-config/nvim/general/basic.vim

@@ -1,70 +0,0 @@
-" set vim paths
-set undodir="~/.cache/vim/undo"
-
-" make :find recursive
-set path+=**
-set wildignore+=*/node_modules/*
-set wildignore+=*/__pycache__/*
-
-" display all files for tab completion
-set wildmenu
-
-" making me comfortable
-set number
-set tabstop=4 softtabstop=4
-set shiftwidth=4
-
-"convert tabs to spaces
-set expandtab
-set nosmartindent
-set nocindent
-set smartcase
-
-" disable swapfiles (mostly to avoid problems)
-set noswapfile
-set nobackup
-
-set spelllang=de_ch,en
-set noshowmode
-
-" set height below statusline
-set cmdheight=1
-
-" faster update time for diagnostic messages (default is 4000)
-set updatetime=300
-
-" always show signcolumns
-set signcolumn=yes
-
-set colorcolumn=80
-
-" horizontal splits will automatically be below
-set splitbelow
-
-" vertical splits will automatically be to the right
-set splitright
-
-" so that I can see `` in markdown files
-set conceallevel=0
-
-" always show tabs
-"set showtabline=2
-
-" don't redraw while executing macros (good performance config)
-set lazyredraw
-
-" ignore case when searching
-set ignorecase
-
-" Show next 3 lines while scrolling.
-if !&scrolloff
-    set scrolloff=3       
-endif
-
-" Show next 5 columns while side-scrolling.
-if !&sidescrolloff
-    set sidescrolloff=5   
-endif
-
-" needed for colorizer plugin
-set termguicolors

+ 2 - 9
dot-config/nvim/init.lua

@@ -1,13 +1,6 @@
 -- Noah's Neovim Configuration (init.lua)
 
 -- 1. Essential Neovim 0.11+ fixes and environment setup
--- Add paths to RTP
-local site = vim.fn.expand("~/.local/share/nvim/site/")
-local ts_runtime = vim.fn.expand("~/.cache/vim/plugged/nvim-treesitter/runtime/")
-
-vim.opt.runtimepath:prepend(site)
-vim.opt.runtimepath:prepend(ts_runtime)
-
 -- Disable built-in LSP mappings
 local builtins = { 'grn', 'gra', 'grr', 'gri', 'grt' }
 for _, k in ipairs(builtins) do
@@ -20,8 +13,8 @@ vim.g.loaded_commentary = 1
 -- 2. Load basic settings
 require('options')
 
--- 3. Load plugins (Vimscript)
-vim.cmd('source $XDG_CONFIG_HOME/nvim/vim-plug/plugins.vim')
+-- 3. Load plugins (lazy.nvim)
+require('plugins')
 
 -- 4. Load Theme (Important for Treesitter highlight groups)
 require('theme')

+ 0 - 185
dot-config/nvim/keys/bindings.vim

@@ -1,185 +0,0 @@
-let mapleader = " "
-
-" move text buffer in visual mode
-vnoremap K :m '<-2<CR>gv=gv
-vnoremap J :m '>+1<CR>gv=gv
-
-" write and quit easier
-nnoremap <Leader>w :w<CR>
-nnoremap <Leader>z :wq<CR>
-nnoremap <Leader>q :qa<CR>
-nnoremap <Leader>e :q<CR>
-
-" windows commands
-nnoremap <leader>pv :wincmd v<bar> :Ex <bar> :vertical resize 30<CR>
-nnoremap <leader>ps :Rg<CR>
-nnoremap <leader>rh :vertical resize +5<CR>
-nnoremap <leader>rl :vertical resize -5<CR>
-
-" general custom commands
-command D filetype detect
-
-" commands for opening and compiling various document types
-command S silent !vshow '%:p'
-command C !compile "%"
-
-" general compile button
-map <F3> :w<CR>:!compile "%" && pkill -HUP mupdf<CR>
-
-" bibtex extra compiler
-map <F2> :w<CR>:!latexmk -pdf "%" && pkill -HUP mupdf<CR>
-
-map <F4> :noh<CR>
-map <F5> :set spell!<CR>
-map <F6> :w<CR>:!glosscompile "%" && pkill -HUP mupdf<CR>
-
-" jumper
-vnoremap <Space><Space> <Esc>/<++><Enter>"_c4l
-map <Space><Space> <Esc>/<++><Enter>"_c4l
-
-"copy from / to clipboard
-vnoremap <leader>y "+y
-vnoremap <leader>Y "+Y
-nmap <leader>p "+p
-nmap <leader>P "+P
-
-" Use `[g` and `]g` to navigate diagnostics
-nnoremap <silent> [g <cmd>lua vim.diagnostic.goto_prev()<CR>
-nnoremap <silent> ]g <cmd>lua vim.diagnostic.goto_next()<CR>
-
-" Use <leader>d to manually open diagnostic popup
-nnoremap <leader>d <cmd>lua vim.diagnostic.open_float()<CR>
-
-" Remap keys for gotos
-nnoremap <silent> gd <cmd>lua vim.lsp.buf.definition()<CR>
-nnoremap <silent> gy <cmd>lua vim.lsp.buf.type_definition()<CR>
-nnoremap <silent> gi <cmd>lua vim.lsp.buf.implementation()<CR>
-nnoremap <silent> gr <cmd>lua vim.lsp.buf.references()<CR>
-
-nnoremap <leader>rn <cmd>lua vim.lsp.buf.rename()<CR>
-
-" LSP code actions (Extract function, organize imports, etc.)
-nnoremap <leader>a <cmd>lua vim.lsp.buf.code_action()<CR>
-xnoremap <leader>a <cmd>lua vim.lsp.buf.code_action()<CR>
-
-" switch (back and forth) to (and from) the last opened file
-nmap <leader>b <c-^><cr>
-
-noremap <silent> <Leader>f :Fern . -drawer -reveal=% -toggle -width=35<CR><C-w>=
-
-function! FernInit() abort
-  nmap <buffer><expr>
-        \ <Plug>(fern-my-open-expand-collapse)
-        \ fern#smart#leaf(
-        \   "\<Plug>(fern-action-open:select)",
-        \   "\<Plug>(fern-action-expand:stay)",
-        \   "\<Plug>(fern-action-collapse)",
-        \ )
-  nmap <buffer> <CR> <Plug>(fern-my-open-expand-collapse)
-  nmap <buffer> <2-LeftMouse> <Plug>(fern-my-open-expand-collapse)
-  nmap <buffer> n <Plug>(fern-action-new-path)
-  nmap <buffer> d <Plug>(fern-action-remove)
-  nmap <buffer> m <Plug>(fern-action-move)
-  nmap <buffer> M <Plug>(fern-action-rename)
-  nmap <buffer> c <Plug>(fern-action-hidden:toggle)
-  nmap <buffer> r <Plug>(fern-action-reload)
-  nmap <buffer> g <Plug>(fern-action-mark:toggle)
-  nmap <buffer> o <Plug>(fern-action-open)
-  nmap <buffer> b <Plug>(fern-action-open:split)
-  nmap <buffer> v <Plug>(fern-action-open:vsplit)
-  nmap <buffer> h <Plug>(fern-action-collapse)
-  nmap <buffer> l <Plug>(fern-action-expand:stay)
-  nmap <silent> <buffer> p     <Plug>(fern-action-preview:toggle)
-  nmap <silent> <buffer> <C-p> <Plug>(fern-action-preview:auto:toggle)
-  nmap <silent> <buffer> <C-d> <Plug>(fern-action-preview:scroll:down:half)
-  nmap <silent> <buffer> <C-u> <Plug>(fern-action-preview:scroll:up:half)
-  nmap <buffer><nowait> < <Plug>(fern-action-leave)
-  nmap <buffer><nowait> > <Plug>(fern-action-enter)
-endfunction
-
-" Use `:Format` to format current buffer
-command! -nargs=0 Format :lua require("conform").format()
-cabbrev Black Format
-
-" Go to tab by number
-noremap <leader>1 1gt
-noremap <leader>2 2gt
-noremap <leader>3 3gt
-noremap <leader>4 4gt
-noremap <leader>5 5gt
-noremap <leader>6 6gt
-noremap <leader>7 7gt
-noremap <leader>8 8gt
-noremap <leader>9 9gt
-noremap <leader>0 :tablast<cr>
-
-" auto center view when walking through searches
-nnoremap n nzzzv
-nnoremap N Nzzzv
-
-" toggle tag bar
-nmap <leader>g :TagbarToggle<CR>
-
-" please write
-cmap w!! w !doas tee %
-
-function! WinMove(key)
-    let t:curwin = winnr()
-    exec "wincmd ".a:key
-    if (t:curwin == winnr())
-        if (match(a:key,'[jk]'))
-            wincmd v
-        else
-            wincmd s
-        endif
-        exec "wincmd ".a:key
-    endif
-endfunction
-
-" smart global buffor / window switching
-nnoremap <silent> <C-h> :call WinMove('h')<CR>
-nnoremap <silent> <C-j> :call WinMove('j')<CR>
-nnoremap <silent> <C-k> :call WinMove('k')<CR>
-nnoremap <silent> <C-l> :call WinMove('l')<CR>
-
-" source vim config
-nnoremap <Leader>sv :source $XDG_CONFIG_HOME/nvim/init.vim<CR>
-
-nnoremap <leader>l :Telescope live_grep<CR>
-nnoremap <leader>t :Telescope git_files<CR>
-nnoremap <leader>z :Telescope find_files<CR>
-nnoremap <C-s> :Telescope grep_string<CR>
-
-" markdown preview mappings
-nmap <leader>mg <Plug>MarkdownPreview
-nmap <leader>ms <Plug>MarkdownPreviewStop
-nmap <leader>mt <Plug>MarkdownPreviewToggle
-
-" correct whitespace
-nnoremap <leader>cw :StripWhitespace<CR>
-
-" move to next / previous trailing whitespace
-nnoremap ]w :NextTrailingWhitespace<CR>
-nnoremap [w :PrevTrailingWhitespace<CR>
-
-" spell jump
-nnoremap ]s ]s
-nnoremap [s [s
-
-nnoremap <leader>da :call vimspector#Launch()<CR>
-nnoremap <leader>dc :call GotoWindow(g:vimspector_session_windows.code)<CR>
-nnoremap <leader>dv :call GotoWindow(g:vimspector_session_windows.variables)<CR>
-nnoremap <leader>dw :call vimspector#ClearBreakpoints()<CR>
-nnoremap <leader>ds :call GotoWindow(g:vimspector_session_windows.stack_trace)<CR>
-nnoremap <leader>do :call GotoWindow(g:vimspector_session_windows.output)<CR>
-nnoremap <leader>di :call AddToWatch()<CR>
-nnoremap <leader>dx :call vimspector#Reset()<CR>
-nnoremap <leader>dX :call vimspector#ClearBreakpoints()<CR>
-nnoremap <S-k> :call vimspector#StepOut()<CR>
-nnoremap <S-l> :call vimspector#StepInto()<CR>
-nnoremap <S-j> :call vimspector#StepOver()<CR>
-nnoremap <leader>d_ :call vimspector#Restart()<CR>
-nnoremap <leader>dn :call vimspector#Continue()<CR>
-nnoremap <leader>drc :call vimspector#RunToCursor()<CR>
-nnoremap <leader>dh :call vimspector#ToggleBreakpoint()<CR>
-nnoremap <leader>de :call vimspector#ToggleConditionalBreakpoint()<CR>

+ 0 - 31
dot-config/nvim/keys/tex-macros.vim

@@ -1,31 +0,0 @@
-" standard macros
-autocmd FileType tex inoremap ;beg <Esc>yypkI\begin{<Esc>A}<Esc>o<Esc>0i<Esc>jI\end{<Esc>A}<CR><Esc>0i<CR><Esc>0i<++><Esc>3ki
-autocmd FileType tex inoremap ;ig \includegraphics[]{<++>}<Esc>6hi
-autocmd FileType tex inoremap ;tw width=\textwidth<Esc>9hi
-autocmd FileType tex inoremap ;th height=\textheight<Esc>10hi
-autocmd FileType tex inoremap ;ni \setlength{\parindent}{0em}<Esc>
-
-" packages
-autocmd FileType tex inoremap ;ger \usepackage[ngerman]{babel}<Esc>
-
-" text formatting macros
-autocmd FileType tex inoremap ;bf \textbf{}<++><Esc>T{i
-autocmd FileType tex inoremap ;it \textit{}<++><Esc>T{i
-autocmd FileType tex inoremap ;tt \texttt{}<++><Esc>T{i
-
-" beamer macros
-autocmd FileType tex inoremap ;fr \begin{frame}<CR>\frametitle{}<CR><++><CR>\end{frame}<Esc>kklli
-
-" book macros
-autocmd FileType tex inoremap ;sw \switchcolumn[]<++><Esc>4hi
-
-" preambule macros
-autocmd FileType tex inoremap ;up \usepackage{}<Esc>i
-autocmd FileType tex inoremap ;hy \hyphenation{}<Esc>i
-
-autocmd FileType tex inoremap ;s1 \section{}<Esc>i
-autocmd FileType tex inoremap ;s2 \subsection{}<Esc>i
-autocmd FileType tex inoremap ;s3 \subsubsection{}<Esc>i
-
-" apacite style
-autocmd FileType tex inoremap ;ap \bibliographystyle{apacite}<CR>\bibliography{}<Esc>i

+ 43 - 0
dot-config/nvim/lazy-lock.json

@@ -0,0 +1,43 @@
+{
+  "LuaSnip": { "branch": "master", "commit": "dae4f5aaa3574bd0c2b9dd20fb9542a02c10471c" },
+  "blink.cmp": { "branch": "main", "commit": "612f4bd2bc29d9e7dc7be1dde960908951bedad1" },
+  "conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" },
+  "ctrlp.vim": { "branch": "master", "commit": "86872f021c4e245e3c583054fda82fb820a2faee" },
+  "emmet-vim": { "branch": "master", "commit": "cc8b1a9f2241e087330195c76651c5f9d9519e2f" },
+  "fern-git-status.vim": { "branch": "master", "commit": "151336335d3b6975153dad77e60049ca7111da8e" },
+  "fern-preview.vim": { "branch": "main", "commit": "74f2c1c45eb48fe9b7e4aa87032f053808944e17" },
+  "fern-renderer-nerdfont.vim": { "branch": "master", "commit": "325629c68eb543229715b68920fbcb92b206beb6" },
+  "fern.vim": { "branch": "main", "commit": "d0b5befc0321126384981d6cf3c1b561014c65a2" },
+  "gitsigns.nvim": { "branch": "main", "commit": "7c4faa3540d0781a28588cafbd4dd187a28ac6e3" },
+  "glyph-palette.vim": { "branch": "master", "commit": "675f0ad64e2c4b823bffc1907d469deefaf6e3bd" },
+  "indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" },
+  "landscape.vim": { "branch": "master", "commit": "dcdd360f98d35d3b2c0bd1ce9f29ee053f906d07" },
+  "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
+  "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
+  "nerdfont.vim": { "branch": "master", "commit": "cc50782ee9580fc70b659cf1ebd55229d94b37ab" },
+  "nvim-colorizer.lua": { "branch": "master", "commit": "ef211089af881bea206c7aa3f2693a81feee7e90" },
+  "nvim-lint": { "branch": "master", "commit": "606b823a57b027502a9ae00978ebf4f5d5158098" },
+  "nvim-lspconfig": { "branch": "master", "commit": "e057806776c8bed91971338d96a78a0f6a313dae" },
+  "nvim-treesitter": { "branch": "main", "commit": "2b50ab5ccbcd9e5708deb351308edd738adbf84c" },
+  "onedark.nvim": { "branch": "master", "commit": "213c23ae45a04797572242568d5d51937181792d" },
+  "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
+  "refactoring.nvim": { "branch": "master", "commit": "6784b54587e6d8a6b9ea199318512170ffb9e418" },
+  "resize.vim": { "branch": "master", "commit": "6d5b5add1a8d5b3d4d98504ff374617bdf7369da" },
+  "tagbar": { "branch": "master", "commit": "7bfffca1f121afb7a9e38747500bf5270e006bb1" },
+  "telescope-media-files.nvim": { "branch": "master", "commit": "0826c7a730bc4d36068f7c85cf4c5b3fd9fb570a" },
+  "telescope.nvim": { "branch": "master", "commit": "5255aa27c422de944791318024167ad5d40aad20" },
+  "vCoolor.vim": { "branch": "master", "commit": "bc19d684af09b1e146cf72176eea1ecded84882c" },
+  "vim-airline": { "branch": "master", "commit": "512456e425409ec58627bd839fbb85d449d8cbc1" },
+  "vim-airline-themes": { "branch": "master", "commit": "77aab8c6cf7179ddb8a05741da7e358a86b2c3ab" },
+  "vim-android": { "branch": "master", "commit": "1445cd5359f0c8597ac34428a8d273427d4ab0fe" },
+  "vim-better-whitespace": { "branch": "master", "commit": "de99b55a6fe8c96a69f9376f16b1d5d627a56e81" },
+  "vim-commentary": { "branch": "master", "commit": "64a654ef4a20db1727938338310209b6a63f60c9" },
+  "vim-cool": { "branch": "master", "commit": "9ea940c0d537e55de0de4c0298c04b976960fb12" },
+  "vim-fugitive": { "branch": "master", "commit": "3b753cf8c6a4dcde6edee8827d464ba9b8c4a6f0" },
+  "vim-sneak": { "branch": "master", "commit": "feea86adcfbf8e6b5e71fdd5f4f5736fd8819fdb" },
+  "vim-startify": { "branch": "master", "commit": "4e089dffdad46f3f5593f34362d530e8fe823dcf" },
+  "vim-startify-renderer-nerdfont": { "branch": "master", "commit": "5ca5012f02a62a1f9daf7b2910cb954fbfc18c34" },
+  "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
+  "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" },
+  "wilder.nvim": { "branch": "master", "commit": "679f348dc90d80ff9ba0e7c470c40a4d038dcecf" }
+}

+ 3 - 0
dot-config/nvim/lua/lsp.lua

@@ -17,6 +17,9 @@ blink.setup({
   sources = {
     default = { 'lsp', 'path', 'buffer', 'snippets' },
   },
+  fuzzy = {
+    implementation = "prefer_rust",
+  },
   signature = { enabled = true }
 })
 

+ 118 - 0
dot-config/nvim/lua/plugins.lua

@@ -0,0 +1,118 @@
+local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
+if not (vim.uv or vim.loop).fs_stat(lazypath) then
+  vim.fn.system({
+    "git",
+    "clone",
+    "--filter=blob:none",
+    "https://github.com/folke/lazy.nvim.git",
+    "--branch=stable", -- latest stable release
+    lazypath,
+  })
+end
+vim.opt.rtp:prepend(lazypath)
+
+require("lazy").setup({
+  -- Colorschemes
+  { 'navarasu/onedark.nvim', priority = 1000 },
+  'itchyny/landscape.vim',
+
+  -- Fuzzy find files
+  'ctrlpvim/ctrlp.vim',
+
+  -- Fern
+  { 
+    'lambdalisue/fern.vim', 
+    branch = 'main',
+    priority = 100, -- Load it early
+  },
+  'lambdalisue/nerdfont.vim',
+  { 
+    'lambdalisue/fern-renderer-nerdfont.vim',
+    dependencies = { 'lambdalisue/fern.vim', 'lambdalisue/nerdfont.vim' }
+  },
+  { 'lambdalisue/fern-git-status.vim', dependencies = { 'lambdalisue/fern.vim' } },
+  { 'lambdalisue/glyph-palette.vim', dependencies = { 'lambdalisue/fern.vim' } },
+  { 'yuki-yano/fern-preview.vim', dependencies = { 'lambdalisue/fern.vim' } },
+
+  -- Airline
+  'vim-airline/vim-airline',
+  'vim-airline/vim-airline-themes',
+
+  -- Git
+  'tpope/vim-fugitive',
+  'lewis6991/gitsigns.nvim',
+
+  -- LSP & Completion
+  'neovim/nvim-lspconfig',
+  'ThePrimeagen/refactoring.nvim',
+  {
+    'Saghen/blink.cmp',
+    build = 'cargo build --release',
+  },
+  'L3MON4D3/LuaSnip',
+
+  -- Formatting & Linting
+  'stevearc/conform.nvim',
+  'mfussenegger/nvim-lint',
+
+  -- Search & Edit utilities
+  'romainl/vim-cool',
+  'tpope/vim-commentary',
+  'preservim/tagbar',
+  'mattn/emmet-vim',
+  'justinmk/vim-sneak',
+  'mhinz/vim-startify',
+  'csch0/vim-startify-renderer-nerdfont',
+  'tpope/vim-surround',
+
+  -- Treesitter
+  { 
+    'nvim-treesitter/nvim-treesitter', 
+    branch = 'main', 
+    build = ':TSUpdate' 
+  },
+
+  -- Indentation
+  'lukas-reineke/indent-blankline.nvim',
+
+  -- Telescope
+  {
+    'nvim-telescope/telescope.nvim',
+    dependencies = { 'nvim-lua/plenary.nvim', 'nvim-telescope/telescope-media-files.nvim' }
+  },
+
+  -- Wilder
+  { 
+    'gelguy/wilder.nvim', 
+    build = ':UpdateRemotePlugins' 
+  },
+
+  -- Markdown Preview
+  {
+    'iamcco/markdown-preview.nvim',
+    cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
+    build = "cd app && npm install",
+    init = function()
+      vim.g.mkdp_filetypes = { "markdown" }
+    end,
+    ft = { "markdown" },
+  },
+
+  -- Which-Key
+  'folke/which-key.nvim',
+
+  -- Whitespace
+  'ntpeters/vim-better-whitespace',
+
+  -- Colorpicker
+  'KabbAmine/vCoolor.vim',
+
+  -- Buffer resizing
+  'ahonn/resize.vim',
+
+  -- Colorizer
+  'NvChad/nvim-colorizer.lua',
+
+  -- Android
+  'hsanson/vim-android'
+})

+ 0 - 28
dot-config/nvim/theme/theme.vim

@@ -1,28 +0,0 @@
-lua << EOF
-require('onedark').setup {
-    style = 'cool', -- 'cool' or 'vibrant' are usually better for TS
-    transparent = false,
-    term_colors = true,
-    -- Remove overrides to use theme defaults
-    code_style = {
-        comments = 'italic',
-    },
-}
-require('onedark').load()
-
--- Force colors for diagnostics and spell check underlines ONLY
-vim.api.nvim_set_hl(0, 'DiagnosticUnderlineError', { undercurl = true, sp = '#ff0000' })
-vim.api.nvim_set_hl(0, 'DiagnosticUnderlineWarn',  { undercurl = true, sp = '#ff8800' })
-vim.api.nvim_set_hl(0, 'SpellBad',   { undercurl = true, sp = '#ffff00' })
-vim.api.nvim_set_hl(0, 'SpellCap',   { undercurl = true, sp = '#ffff00' })
-vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true, sp = '#ffff00' })
-vim.api.nvim_set_hl(0, 'SpellRare',  { undercurl = true, sp = '#ffff00' })
-
--- GitSigns
-vim.api.nvim_set_hl(0, 'GitSignsAdd', { fg = '#98c379', bg = '#2e3f34' })
-vim.api.nvim_set_hl(0, 'GitSignsChange', { fg = '#e5c07b', bg = '#3e3d32' })
-vim.api.nvim_set_hl(0, 'GitSignsDelete', { fg = '#e06c75', bg = '#3f2e2e' })
-EOF
-
-let g:airline_theme='onedark'
-set background=dark

+ 0 - 113
dot-config/nvim/vim-plug/plugins.vim

@@ -1,113 +0,0 @@
-" Run PlugInstall if there are missing plugins
-"autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
-"  \| PlugInstall --sync | source $VIMINIT
-"\| endif
-
-function! UpdateRemotePlugins(...)
-    " Needed to refresh runtime files
-    let &rtp=&rtp
-    UpdateRemotePlugins
-  endfunction
-
-call plug#begin('~/.cache/vim/plugged')
-
-" colorshemes
-Plug 'navarasu/onedark.nvim'
-Plug 'itchyny/landscape.vim'
-
-" fuzzy find files
-Plug 'ctrlpvim/ctrlp.vim'
-
-" faster nerdtree
-Plug 'lambdalisue/fern.vim', {'branch': 'main'}
-" w/ git status integration
-Plug 'lambdalisue/fern-git-status.vim'
-" w/ colored nerdfont icons
-Plug 'lambdalisue/nerdfont.vim'
-Plug 'lambdalisue/fern-renderer-nerdfont.vim'
-Plug 'lambdalisue/glyph-palette.vim'
-" and a floating, scrollable preview window
-Plug 'yuki-yano/fern-preview.vim'
-
-" nice statusline for vim
-Plug 'vim-airline/vim-airline'
-" plus themes
-Plug 'vim-airline/vim-airline-themes'
-
-" some git integration
-Plug 'tpope/vim-fugitive'
-Plug 'lewis6991/gitsigns.nvim'
-
-" native LSP support
-Plug 'neovim/nvim-lspconfig'
-Plug 'ThePrimeagen/refactoring.nvim'
-" modern completion engine
-Plug 'Saghen/blink.cmp'
-" snippet support
-Plug 'L3MON4D3/LuaSnip'
-
-" formatting and linting
-Plug 'stevearc/conform.nvim'
-Plug 'mfussenegger/nvim-lint'
-
-" auto disable search highlighting
-Plug 'romainl/vim-cool'
-
-" easy commenting
-Plug 'tpope/vim-commentary'
-
-" tag bar for easy navigation
-Plug 'preservim/tagbar'
-
-" better html / css handling
-Plug 'mattn/emmet-vim'
-
-" fast search 'n' jump
-Plug 'justinmk/vim-sneak'
-
-" fancy start screen
-Plug 'mhinz/vim-startify'
-" w/ nerdfont icons
-Plug 'csch0/vim-startify-renderer-nerdfont'
-
-" easily change surrounding elements
-Plug 'tpope/vim-surround'
-
-" use treesitter inside nvim
-Plug 'nvim-treesitter/nvim-treesitter', { 'branch': 'main', 'do': ':TSUpdate' }
-
-" adds indentation guides to all lines
-Plug 'lukas-reineke/indent-blankline.nvim'
-
-" highly extensible fuzzy finder
-Plug 'nvim-telescope/telescope.nvim'
-" w/ media preview
-Plug 'nvim-telescope/telescope-media-files.nvim'
-" w/ dependencies
-Plug 'nvim-lua/plenary.nvim'
-
-" a more adventurous wildmenu
-Plug 'gelguy/wilder.nvim', { 'do': function('UpdateRemotePlugins') }
-
-" markdown preview in browser tab and full sync
-Plug 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() }, 'for': ['markdown', 'vim-plug']}
-
-" when you forget which key to press
-Plug 'folke/which-key.nvim'
-
-" general whitespace highlighter + remover
-Plug 'ntpeters/vim-better-whitespace'
-
-" access an external colorpicker directly from neovim
-Plug 'KabbAmine/vCoolor.vim'
-
-" easier buffer resizing
-Plug 'ahonn/resize.vim'
-
-" fast colorizer
-Plug 'NvChad/nvim-colorizer.lua'
-
-" for android dev
-Plug 'hsanson/vim-android'
-
-call plug#end()