diff options
| author | m0ntagur <leander@leander-scherer.de> | 2023-11-27 18:43:12 +0100 |
|---|---|---|
| committer | m0ntagur <leander@leander-scherer.de> | 2023-11-27 18:43:12 +0100 |
| commit | 7b97cef3473ea0897c9c9027a4e9777843c0e50f (patch) | |
| tree | 5cbd7bb25a9b2260aad67124426b2ff6c750b845 /.config/nvim | |
| parent | 62e3ad0e675ff818dc5a85ef8926b15f6ba92c5a (diff) | |
Diffstat (limited to '.config/nvim')
| -rw-r--r-- | .config/nvim/colors/lushwal.vim | 218 | ||||
| -rw-r--r-- | .config/nvim/init.lua | 17 | ||||
| -rw-r--r-- | .config/nvim/lazy-lock.json | 23 | ||||
| -rw-r--r-- | .config/nvim/lua/autocmds.lua | 0 | ||||
| -rw-r--r-- | .config/nvim/lua/keymaps.lua | 0 | ||||
| -rw-r--r-- | .config/nvim/lua/options.lua | 43 | ||||
| -rw-r--r-- | .config/nvim/lua/plugins.lua | 326 |
7 files changed, 627 insertions, 0 deletions
diff --git a/.config/nvim/colors/lushwal.vim b/.config/nvim/colors/lushwal.vim new file mode 100644 index 0000000..c24d7cf --- /dev/null +++ b/.config/nvim/colors/lushwal.vim @@ -0,0 +1,218 @@ +set background=dark +if exists('g:colors_name') +hi clear +if exists('syntax_on') +syntax reset +endif +endif +let g:colors_name = 'lushwal' +highlight Normal guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight! link User Normal +highlight Bold guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=bold +highlight Boolean guifg=#5C7845 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Character guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight ColorColumn guifg=#879297 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Comment guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=italic +highlight Conceal guifg=#798386 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight! link Whitespace Conceal +highlight Conditional guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Constant guifg=#5C7845 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Cursor guifg=#0F1413 guibg=#ACB9BE guisp=NONE blend=NONE gui=NONE +highlight CursorColumn guifg=#879297 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight CursorLine guifg=#798386 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight CursorLineNr guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight Debug guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Define guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Delimiter guifg=#697156 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight DiagnosticError guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight DiagnosticHint guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight DiagnosticInfo guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight DiagnosticUnderlineError guifg=#596751 guibg=NONE guisp=#596751 blend=NONE gui=underline +highlight DiagnosticUnderlineHint guifg=#96A35C guibg=NONE guisp=#96A35C blend=NONE gui=underline +highlight DiagnosticUnderlineInfo guifg=#6A9051 guibg=NONE guisp=#6A9051 blend=NONE gui=underline +highlight DiagnosticUnderlineWarn guifg=#608B37 guibg=NONE guisp=#608B37 blend=NONE gui=underline +highlight DiagnosticWarn guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight DiffAdd guifg=#A56155 guibg=#798386 guisp=NONE blend=NONE gui=bold +highlight! link DiffAdded DiffAdd +highlight DiffChange guifg=#9AA7AC guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight DiffDelete guifg=#596751 guibg=#798386 guisp=NONE blend=NONE gui=bold +highlight! link DiffRemoved DiffDelete +highlight! link diffRemoved DiffDelete +highlight DiffFile guifg=#596751 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight DiffLine guifg=#6A9051 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight DiffNewFile guifg=#A56155 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight DiffText guifg=#6A9051 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight Directory guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight EndOfBuffer guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight Error guifg=#596751 guibg=#ACB9BE guisp=NONE blend=NONE gui=NONE +highlight ErrorMsg guifg=#596751 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight Exception guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Float guifg=#5C7845 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight FoldColumn guifg=#6A9051 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight Folded guifg=#ACB9BE guibg=#798386 guisp=NONE blend=NONE gui=italic +highlight Function guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Identifier guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight IncSearch guifg=#798386 guibg=#5C7845 guisp=NONE blend=NONE gui=NONE +highlight Include guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Italic guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=italic +highlight Keyword guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Label guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight LineNr guifg=#9AA7AC guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight Macro guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MatchParen guifg=#ACB9BE guibg=#9AA7AC guisp=NONE blend=NONE gui=NONE +highlight MiniCompletionActiveParameter guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MiniCursorword guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=underline +highlight! link MiniCursorwordCurrent MiniCursorword +highlight MiniIndentscopePrefix guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=nocombine +highlight MiniIndentscopeSymbol guifg=#798386 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight MiniJump guifg=#6A9051 guibg=NONE guisp=#9AA7AC blend=NONE gui=underline +highlight MiniJump2dSpot guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=undercurl +highlight MiniStarterCurrent guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MiniStarterFooter guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=bold +highlight MiniStarterHeader guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=bold +highlight MiniStarterInactive guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=italic +highlight MiniStarterItem guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight MiniStarterItemBullet guifg=#697156 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MiniStarterItemPrefix guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MiniStarterQuery guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MiniStarterSection guifg=#697156 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineDevinfo guifg=#ACB9BE guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineFileinfo guifg=#ACB9BE guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineFilename guifg=#608B37 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineInactive guifg=#879297 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineModeCommand guifg=#0F1413 guibg=#96A35C guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineModeInsert guifg=#0F1413 guibg=#6A9051 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineModeNormal guifg=#0F1413 guibg=#A56155 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineModeOther guifg=#0F1413 guibg=#9AC6B8 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineModeReplace guifg=#0F1413 guibg=#596751 guisp=NONE blend=NONE gui=NONE +highlight MiniStatuslineModeVisual guifg=#0F1413 guibg=#5C7845 guisp=NONE blend=NONE gui=NONE +highlight MiniSurround guifg=#798386 guibg=#5C7845 guisp=NONE blend=NONE gui=NONE +highlight MiniTablineCurrent guifg=#9AA7AC guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniTablineFill guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MiniTablineHidden guifg=#A56155 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniTablineModifiedCurrent guifg=#ACB9BE guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniTablineModifiedHidden guifg=#879297 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniTablineModifiedVisible guifg=#ACB9BE guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniTablineVisible guifg=#9AA7AC guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight MiniTestEmphasis guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=bold +highlight MiniTestFail guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=bold +highlight MiniTestPass guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=bold +highlight MiniTrailspace guifg=#596751 guibg=#ACB9BE guisp=NONE blend=NONE gui=NONE +highlight ModeMsg guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight MoreMsg guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight NonText guifg=#9AA7AC guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Number guifg=#5C7845 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Operator guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight PMenu guifg=#ACB9BE guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight PMenuSel guifg=#ACB9BE guibg=#6A9051 guisp=NONE blend=NONE gui=NONE +highlight PmenuSbar guifg=#879297 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight PmenuThumb guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight PreProc guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Question guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Repeat guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Search guifg=#9AA7AC guibg=#608B37 guisp=NONE blend=NONE gui=NONE +highlight! link MiniTablineTabpagesection Search +highlight SignColumn guifg=#879297 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight Special guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight SpecialChar guifg=#697156 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight SpecialKey guifg=#9AA7AC guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight SpellBad guifg=#596751 guibg=NONE guisp=#596751 blend=NONE gui=underline +highlight SpellCap guifg=#608B37 guibg=NONE guisp=#608B37 blend=NONE gui=underline +highlight SpellLocal guifg=#96A35C guibg=NONE guisp=#96A35C blend=NONE gui=underline +highlight SpellRare guifg=#9AC6B8 guibg=NONE guisp=#9AC6B8 blend=NONE gui=underline +highlight Statement guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight StatusLine guifg=#ACB9BE guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight StatusLineNC guifg=#879297 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight StatusLineTerm guifg=#A56155 guibg=#A56155 guisp=NONE blend=NONE gui=NONE +highlight StatusLineTermNC guifg=#608B37 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight StorageClass guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight String guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Structure guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight TabLine guifg=#9AA7AC guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight TabLineFill guifg=#9AA7AC guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight TabLineSel guifg=#A56155 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight Tag guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Title guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=bold +highlight Todo guifg=#608B37 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight TooLong guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Type guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Typedef guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight Underlined guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight VertSplit guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight! link WinSeparator VertSplit +highlight Visual guifg=#0F1413 guibg=#879297 guisp=NONE blend=NONE gui=NONE +highlight VisualNOS guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight WarningMsg guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight WildMenu guifg=#ACB9BE guibg=#6A9051 guisp=NONE blend=NONE gui=NONE +highlight WinBar guifg=#ACB9BE guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight WinBarNC guifg=#879297 guibg=#0F1413 guisp=NONE blend=NONE gui=NONE +highlight gitCommitOverflow guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight gitCommitSummary guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight helpCommand guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight helpExample guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @attribute guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @boolean guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @character guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @character.special guifg=#697156 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @comment guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=italic +highlight @conditional guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @constant guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @constant.builtin guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @constant.macro guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @constructor guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @debug guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @define guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @exception guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @field guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @float guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @function guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @function.builtin guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @function.macro guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @include guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @keyword guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @keyword.function guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @keyword.operator guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @label guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @method guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @namespace guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @none guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @number guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @operator guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @parameter guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @preproc guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @property guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @punctuation.bracket guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @punctuation.delimiter guifg=#ACB9BE guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @punctuation.special guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=bold +highlight @repeat guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @storageclass guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @string guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @string.escape guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @string.regex guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @string.special guifg=#697156 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @symbol guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @tag guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @tag.attribute guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @tag.delimiter guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.bold guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=bold +highlight @text.danger guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.diff.add guifg=#A56155 guibg=#798386 guisp=NONE blend=NONE gui=bold +highlight @text.diff.delete guifg=#596751 guibg=#798386 guisp=NONE blend=NONE gui=bold +highlight @text.emphasis guifg=#9AC6B8 guibg=NONE guisp=NONE blend=NONE gui=italic +highlight @text.environment guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.environment.name guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.literal guifg=#A56155 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.math guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.note guifg=#96A35C guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.reference guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @text.strike guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=strikethrough +highlight @text.title guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=bold +highlight @text.todo guifg=#608B37 guibg=#798386 guisp=NONE blend=NONE gui=NONE +highlight @text.underline guifg=NONE guibg=NONE guisp=NONE blend=NONE gui=underline +highlight @text.uri guifg=NONE guibg=#798386 guisp=NONE blend=NONE gui=underline +highlight @type guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @type.builtin guifg=#6A9051 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @type.definition guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @variable guifg=#608B37 guibg=NONE guisp=NONE blend=NONE gui=NONE +highlight @variable.builtin guifg=#596751 guibg=NONE guisp=NONE blend=NONE gui=NONE diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua new file mode 100644 index 0000000..716cc1c --- /dev/null +++ b/.config/nvim/init.lua @@ -0,0 +1,17 @@ +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not 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('autocmds') +require('keymaps') +require('options') +require('plugins') diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json new file mode 100644 index 0000000..088bc33 --- /dev/null +++ b/.config/nvim/lazy-lock.json @@ -0,0 +1,23 @@ +{ + "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, + "LuaSnip": { "branch": "master", "commit": "0df29db3543837f8b41597f2640397c5ec792b7b" }, + "alpha-nvim": { "branch": "main", "commit": "234822140b265ec4ba3203e3e0be0e0bb826dff5" }, + "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, + "cmp-cmdline": { "branch": "main", "commit": "8ee981b4a91f536f52add291594e89fb6645e451" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" }, + "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, + "coal.nvim": { "branch": "main", "commit": "2a1aaad91fbe795a913fc4b402c82b961cf5aa31" }, + "indent-blankline.nvim": { "branch": "master", "commit": "9301e434dd41154ffe5c3d5b8a5c9acd075ebeff" }, + "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "e7b64c11035aa924f87385b72145e0ccf68a7e0a" }, + "mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" }, + "nvim-autopairs": { "branch": "master", "commit": "f6c71641f6f183427a651c0ce4ba3fb89404fa9e" }, + "nvim-cmp": { "branch": "main", "commit": "5dce1b778b85c717f6614e3f4da45e9f19f54435" }, + "nvim-lspconfig": { "branch": "master", "commit": "e49b1e90c1781ce372013de3fa93a91ea29fc34a" }, + "nvim-tree.lua": { "branch": "master", "commit": "40b9b887d090d5da89a84689b4ca0304a9649f62" }, + "nvim-treesitter": { "branch": "master", "commit": "9c4fc86b67c1d68141cef57846d24cbee9b74fb0" }, + "nvim-web-devicons": { "branch": "master", "commit": "3af745113ea537f58c4b1573b64a429fefad9e07" }, + "plenary.nvim": { "branch": "master", "commit": "50012918b2fc8357b87cff2a7f7f0446e47da174" }, + "staline.nvim": { "branch": "main", "commit": "280c966df73a840d79d5fa0bda08fab50aba05c6" }, + "telescope.nvim": { "branch": "master", "commit": "74ce793a60759e3db0d265174f137fb627430355" } +}
\ No newline at end of file diff --git a/.config/nvim/lua/autocmds.lua b/.config/nvim/lua/autocmds.lua new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/.config/nvim/lua/autocmds.lua diff --git a/.config/nvim/lua/keymaps.lua b/.config/nvim/lua/keymaps.lua new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/.config/nvim/lua/keymaps.lua diff --git a/.config/nvim/lua/options.lua b/.config/nvim/lua/options.lua new file mode 100644 index 0000000..5b431d9 --- /dev/null +++ b/.config/nvim/lua/options.lua @@ -0,0 +1,43 @@ +local options = { + list = false, + backup = false, -- creates a backup file + clipboard = "unnamedplus", -- allows neovim to access the system clipboard + conceallevel = 0, -- so that `` is visible in markdown files + fileencoding = "utf-8", -- the encoding written to a file + hidden = true, -- required to keep multiple buffers and open multiple buffers + hlsearch = true, -- highlight all matches on previous search pattern + ignorecase = true, -- ignore case in search patterns + mouse = "a", -- allow the mouse to be used in neovim + laststatus = 3, + showmode = false, -- we don't need to see things like -- INSERT -- anymore + smartcase = true, -- smart case + smartindent = true, -- make indenting smarter again + splitbelow = true, -- force all horizontal splits to go below current window ↕️ + splitright = true, -- force all vertical splits to go to the right of current window ↔️ + swapfile = false, -- creates a swapfile + termguicolors = true, -- set term gui colors (most terminals support this) + timeoutlen = 100, -- time to wait for a mapped sequence to complete (in milliseconds) + undofile = true, -- enable persistent undo + updatetime = 300, -- faster completion (4000ms default) ⚡ + writebackup = false, -- if a file is being edited by another program, it is not allowed to be edited + expandtab = false, -- use tabs instead of spaces ␣ + pumheight = 10, + cmdheight = 2, + shiftwidth = 2, -- the number of spaces inserted for each indentation + tabstop = 2, -- insert 2 spaces for a tab ⇥ + cursorline = false, -- highlight the current line (disabled for now) + number = false, -- set numbered lines + relativenumber = false, -- set relative numbered lines + numberwidth = 4, -- set number column width to 2 (default 4) + wrap = false, -- display lines as one long lines +} + +vim.opt.shortmess:append 'c' + +for k, v in pairs(options) do + vim.opt[k] = v +end + +vim.wo.list = false + +vim.cmd 'set whichwrap+=<,>,[,],h,l' diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua new file mode 100644 index 0000000..b67c007 --- /dev/null +++ b/.config/nvim/lua/plugins.lua @@ -0,0 +1,326 @@ +require('lazy').setup({ + { + 'cranberry-clockworks/coal.nvim', + lazy = false, + priority = 1000, + config = function() + vim.cmd.colorscheme('coal') + vim.cmd('highlight Normal guibg=NONE ctermbg=NONE') + vim.cmd('highlight LineNr guifg=NONE guibg=NONE ctermfg=NONE ctermbg=NONE') + vim.cmd('highlight NormalNC guibg=NONE ctermbg=NONE') + vim.cmd('highlight CursorLine guibg=NONE ctermbg=NONE') + -- completion menu transparent + vim.cmd('highlight Pmenu guibg=NONE ctermbg=NONE') + vim.cmd('highlight PmenuSel guibg=NONE ctermbg=NONE') + -- vertical lines transparent + vim.cmd('highlight WinSeparator guibg=None ctermbg=None') + vim.cmd('highlight VertSplit guibg=NONE ctermbg=NONE') + + vim.cmd('highlight SignColumn guibg=NONE ctermbg=None') + end + }, + -- + { + 'jesseleite/nvim-noirbuddy', + enabled = false, + lazy = false, + priority = 1000, + dependencies = { 'tjdevries/colorbuddy.nvim' }, + config = function() + require('noirbuddy').setup({ + preset = 'minimal', + }) + vim.cmd('colorscheme noirbuddy') + -- nvim transparent + vim.cmd('highlight Normal guibg=NONE ctermbg=NONE') + vim.cmd('highlight LineNr guifg=NONE guibg=NONE ctermfg=NONE ctermbg=NONE') + vim.cmd('highlight NormalNC guibg=NONE ctermbg=NONE') + vim.cmd('highlight CursorLine guibg=NONE ctermbg=NONE') + -- completion menu transparent + vim.cmd('highlight Pmenu guibg=NONE ctermbg=NONE') + vim.cmd('highlight PmenuSel guibg=NONE ctermbg=NONE') + -- vertical lines transparent + vim.cmd('highlight VertSplit guibg=NONE ctermbg=NONE') + end + }, + -- Portable package manager to install and manage LSP servers, DAP servers, linters, and formatters. + { + 'williamboman/mason.nvim', + dependencies = { 'williamboman/mason-lspconfig.nvim' }, + config = function() + require('mason').setup() + require('mason-lspconfig').setup({ + automatic_installation = true, + }) + end + }, + -- A completion engine plugin for neovim written in Lua. + { + 'hrsh7th/nvim-cmp', + lazy = false, + dependencies = { + { + 'neovim/nvim-lspconfig', + config = function() + local signs = { + Error = " ", + Warn= " ", + Hint = " ", + Info= " " + } + for type, icon in pairs(signs) do + local hl = "DiagnosticSign" .. type + vim.fn.sign_define(hl, {text = icon, texthl = hl, numhl = hl}) + end + + local lsp = require('lspconfig') + local capabilities = require('cmp_nvim_lsp').default_capabilities() + lsp.pyright.setup{ + capabilities = capabilities, + settings = { + update_in_insert = true, + } + } + lsp.lua_ls.setup { + capabilities = capabilities, + settings = { + Lua = { + diagnostics = { + -- Get the language server to recognize the 'vim' global + globals = { 'vim' }, + }, + workspace = { + -- make the server aware of the neovim runtime files + libary = vim.api.nvim_get_runtime_file('', true) + }, + telemetry = { + -- do not send telemetry data containing a randomized but unique identifier + enable = false, + } + } + } + } + end + }, + 'hrsh7th/cmp-nvim-lsp', + 'hrsh7th/cmp-buffer', + 'hrsh7th/cmp-path', + 'hrsh7th/cmp-cmdline', + 'L3MON4D3/LuaSnip', + }, + config = function() + local has_words_before = function() + unpack = unpack or table.unpack + local line, col = unpack(vim.api.nvim_win_get_cursor(0)) + return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil + end + + local cmp = require('cmp') + local luasnip = require("luasnip") + cmp.setup( { + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end + }, + mapping = { + ['<C-d>'] = cmp.mapping.scroll_docs(-4), + ['<C-f>'] = cmp.mapping.scroll_docs(4), + ['<C-Space>'] = cmp.mapping.complete(), + ['<C-e>'] = cmp.mapping.close(), + ['<CR>'] = cmp.mapping.confirm { + behavior = cmp.ConfirmBehavior.Insert, + select = true, + }, + ["<Tab>"] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + -- You could replace the expand_or_jumpable() calls with expand_or_locally_jumpable() + -- this way you will only jump inside the snippet region + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + elseif has_words_before() then + cmp.complete() + else + fallback() + end + end, { "i", "s" }), + ["<S-Tab>"] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_prev_item() + elseif luasnip.jumpable(-1) then + luasnip.jump(-1) + else + fallback() + end + end, { "i", "s" }), + }, + sources = cmp.config.sources({ + { name = 'nvim_lsp' }, + { name = 'luasnip' }, + { name = 'buffer' }, + { name = 'nvim_lua' }, + { name = 'path' }, + }), + }) + end + }, + -- A super powerful autopair plugin for Neovim that supports multiple characters. + { + 'windwp/nvim-autopairs', + config = function() + require("nvim-autopairs").setup() + -- inserts `(` after selecting a function or method item + require('cmp').event:on('confirm_done', require('nvim-autopairs.completion.cmp').on_confirm_done()) + end + }, + -- Adds indentation guides to all lines. + { + 'lukas-reineke/indent-blankline.nvim', + main = "ibl", + opt = { + filetypes = { + "help", + "terminal", + "alpha", + "lazy", + "NvimTree" + } + } + }, + -- + { + 'nvim-treesitter/nvim-treesitter', + build = ':TSUpdate', + config = function() + require('nvim-treesitter.configs').setup({ + auto_install = true, + ensure_installed = { 'c', 'lua', 'vim'}, + highlight = { + enable = true, + use_languagetree = true + }, + indent = { enable=true }, + }) + end + }, + -- A File Explorer for Neovim written in Lua + { + 'nvim-tree/nvim-tree.lua', + config = function () + -- disable netrw (inbuild file explorer) + require('nvim-tree').setup({ + view = { + width = 20, + side = 'left', + }, + disable_netrw = true, + hijack_cursor = true, + update_cwd = true, + hijack_directories = { + auto_open = true, + }, + renderer = { + root_folder_label = false, + indent_markers = { + enable = true, + icons = { + corner = "└ ", + edge = "│ ", + none = " ", + } + } + } + }) + end + }, + -- + { + 'nvim-telescope/telescope.nvim', + dependencies = { + 'nvim-lua/plenary.nvim' + }, + config = function() + require('telescope').setup({ + defaults = { + mapping = { + } + }, + pickers = { + }, + extensions = { + } + }) + vim.api.nvim_set_keymap('n', '<C-s>', ':Telescope current_buffer_fuzzy_find<CR>', { noremap = true, silent = true }) + end + }, + -- + { + 'numToStr/Comment.nvim', + config = function() + require('Comment').setup({}) + end + }, + -- Customize start up screen + { + 'goolord/alpha-nvim', + event = 'VimEnter', + dependencies = { 'nvim-tree/nvim-web-devicons' }, + config = function () + local mew = { + '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⠞⢳⠀⠀⠀⠀⠀', + '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡔⠋⠀⢰⠎⠀⠀⠀⠀⠀', + '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⢆⣤⡞⠃⠀⠀⠀⠀⠀⠀', + '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⢠⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀', + '⠀⠀⠀⠀⢀⣀⣾⢳⠀⠀⠀⠀⢸⢠⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀', + '⣀⡤⠴⠊⠉⠀⠀⠈⠳⡀⠀⠀⠘⢎⠢⣀⣀⣀⠀⠀⠀⠀⠀⠀⠀', + '⠳⣄⠀⠀⡠⡤⡀⠀⠘⣇⡀⠀⠀⠀⠉⠓⠒⠺⠭⢵⣦⡀⠀⠀⠀', + '⠀⢹⡆⠀⢷⡇⠁⠀⠀⣸⠇⠀⠀⠀⠀⠀⢠⢤⠀⠀⠘⢷⣆⡀⠀', + '⠀⠀⠘⠒⢤⡄⠖⢾⣭⣤⣄⠀⡔⢢⠀⡀⠎⣸⠀⠀⠀⠀⠹⣿⡀', + '⠀⠀⢀⡤⠜⠃⠀⠀⠘⠛⣿⢸⠀⡼⢠⠃⣤⡟⠀⠀⠀⠀⠀⣿⡇', + '⠀⠀⠸⠶⠖⢏⠀⠀⢀⡤⠤⠇⣴⠏⡾⢱⡏⠁⠀⠀⠀⠀⢠⣿⠃', + '⠀⠀⠀⠀⠀⠈⣇⡀⠿⠀⠀⠀⡽⣰⢶⡼⠇⠀⠀⠀⠀⣠⣿⠟⠀', + '⠀⠀⠀⠀⠀⠀⠈⠳⢤⣀⡶⠤⣷⣅⡀⠀⠀⠀⣀⡠⢔⠕⠁⠀⠀', + '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠫⠿⠿⠿⠛⠋⠁⠀⠀⠀⠀', + '', + } + local alpha = require('alpha') + local dashboard = require('alpha.themes.dashboard') + dashboard.section.header.val = mew + dashboard.section.buttons.val = { + dashboard.button('f', ' Find Files', ':Telescope find_files <CR>'), + dashboard.button('r', ' Recent Files', ':Telescope oldfiles <CR>'), + dashboard.button('u', ' Update Plugins', ':Lazy update <CR>'), + dashboard.button('q', ' Quit Neovim', ':q! <CR>'), + } + dashboard.section.buttons.opts.spacing = 1 + dashboard.section.footer.val = 'Never knows best' + dashboard.opts.opts.noautocmd = true + alpha.setup(dashboard.opts) + end + }, + -- + { + 'tamton-aquib/staline.nvim', + dependencies = { 'nvim-tree/nvim-web-devicons' }, + config = function () + require "staline".setup { + sections = { + left = { ' ' }, + mid = {'lsp'}, + right = { 'line_column' } + }, + lsp_symbols = { Error=" ", Info=" ", Warn=" ", Hint="" }, + defaults = { + true_colors = true, + line_column = ' ☰ %l/%L %c', + branch_symbol = " ", + exclude_fts = { 'NvimTree', 'Alpha' }, + }, + } + -- remove background color + vim.cmd('highlight Statusline guibg=none') + vim.cmd('highlight StatuslineNC guibg=none') + end + }, +}) |
