diff options
author | venomade <venomade@venomade.com> | 2025-02-28 16:55:04 +0000 |
---|---|---|
committer | venomade <venomade@venomade.com> | 2025-02-28 16:55:04 +0000 |
commit | b7b49d1bbe87af893c0a1e84143b1a3277fb9bd4 (patch) | |
tree | 318f348b8519a03856c81e665ebbcbc48265a27c /neovim-colemak/lua | |
parent | 9456ae3aba7550d1a4ed1eedbb7e68f939b41385 (diff) |
Diffstat (limited to 'neovim-colemak/lua')
-rw-r--r-- | neovim-colemak/lua/config/cmp.lua | 30 | ||||
-rw-r--r-- | neovim-colemak/lua/config/colemak.lua | 29 | ||||
-rw-r--r-- | neovim-colemak/lua/config/lazy.lua | 35 | ||||
-rw-r--r-- | neovim-colemak/lua/config/neovide.lua | 13 | ||||
-rw-r--r-- | neovim-colemak/lua/plugins.lua | 32 |
5 files changed, 139 insertions, 0 deletions
diff --git a/neovim-colemak/lua/config/cmp.lua b/neovim-colemak/lua/config/cmp.lua new file mode 100644 index 0000000..13ca020 --- /dev/null +++ b/neovim-colemak/lua/config/cmp.lua @@ -0,0 +1,30 @@ +vim.opt.completeopt={"menu", "menuone", "noselect"} + +local cmp = require'cmp' + +cmp.setup({ + snippet = { + expand = function(args) + require('luasnip').lsp_expand(args.body) -- For `luasnip` users. + -- vim.snippet.expand(args.body) -- For native neovim snippets (Neovim v0.10+) + end, + }, + window = { + -- completion = cmp.config.window.bordered(), + -- documentation = cmp.config.window.bordered(), + }, + mapping = cmp.mapping.preset.insert({ + ['<C-b>'] = cmp.mapping.scroll_docs(-4), + ['<C-f>'] = cmp.mapping.scroll_docs(4), + ['<C-Space>'] = cmp.mapping.complete(), + ['<C-e>'] = cmp.mapping.abort(), + ['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. + }), + sources = cmp.config.sources({ + { name = 'nvim_lsp' }, + { name = 'path' }, + { name = 'luasnip' }, -- For luasnip users. + }, { + { name = 'buffer' }, + }) +}) diff --git a/neovim-colemak/lua/config/colemak.lua b/neovim-colemak/lua/config/colemak.lua new file mode 100644 index 0000000..a3a8d9a --- /dev/null +++ b/neovim-colemak/lua/config/colemak.lua @@ -0,0 +1,29 @@ +local function map(mode, lhs, rhs, opts) + local options = { noremap = true, silent = true } + if opts then + options = vim.tbl_extend("force", options, opts) + end + vim.keymap.set(mode, lhs, rhs, options) +end + +map("", "n", "j") +map("", "e", "k") +map("", "i", "l") +map("", "j", "n") +map("", "k", "e") +map("", "l", "i") +map("", "K", "E") +map("", "N", "J") +map("", "E", "K") -- As in 'Explore' documentation +map("", "L", "I") +map("", "I", "L") +map("", "J", "N") + +map("n", "<c-w>h", "<c-w>h") +map("n", "<c-w>n", "<c-w>j") +map("n", "<c-w>e", "<c-w>k") +map("n", "<C-w>i", "<c-w>l") + +-- Kakoune Holdover +map ("n", "gh", "0") +map ("n", "gi", "$") diff --git a/neovim-colemak/lua/config/lazy.lua b/neovim-colemak/lua/config/lazy.lua new file mode 100644 index 0000000..f5ee74c --- /dev/null +++ b/neovim-colemak/lua/config/lazy.lua @@ -0,0 +1,35 @@ +-- Bootstrap lazy.nvim +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not (vim.uv or vim.loop).fs_stat(lazypath) then + local lazyrepo = "https://github.com/folke/lazy.nvim.git" + local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) + if vim.v.shell_error ~= 0 then + vim.api.nvim_echo({ + { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, + { out, "WarningMsg" }, + { "\nPress any key to exit..." }, + }, true, {}) + vim.fn.getchar() + os.exit(1) + end +end +vim.opt.rtp:prepend(lazypath) + +-- Make sure to setup `mapleader` and `maplocalleader` before +-- loading lazy.nvim so that mappings are correct. +-- This is also a good place to setup other settings (vim.opt) +vim.g.mapleader = " " +vim.g.maplocalleader = "\\" + +-- Setup lazy.nvim +require("lazy").setup({ + spec = { + -- import your plugins + { import = "plugins" }, + }, + -- Configure any other settings here. See the documentation for more details. + -- colorscheme that will be used when installing plugins. + install = { colorscheme = { "habamax" } }, + -- automatically check for plugin updates + checker = { enabled = true }, +}) diff --git a/neovim-colemak/lua/config/neovide.lua b/neovim-colemak/lua/config/neovide.lua new file mode 100644 index 0000000..9f86d98 --- /dev/null +++ b/neovim-colemak/lua/config/neovide.lua @@ -0,0 +1,13 @@ +if vim.g.neovide then + -- Some Code + vim.o.guifont = "InconsolataGo Nerd Font" + + -- Helper function for transparency formatting + local alpha = function() + return string.format("%x", math.floor(255 * vim.g.transparency or 0.8)) + end + -- g:neovide_transparency should be 0 if you want to unify transparency of content and title bar. + vim.g.neovide_transparency = 1.0 + vim.g.transparency = 0.8 + vim.g.neovide_background_color = "#0f1117" .. alpha() +end diff --git a/neovim-colemak/lua/plugins.lua b/neovim-colemak/lua/plugins.lua new file mode 100644 index 0000000..7982b53 --- /dev/null +++ b/neovim-colemak/lua/plugins.lua @@ -0,0 +1,32 @@ +return { + {"rose-pine/neovim", as = "rose-pine"}, + {"brenoprata10/nvim-highlight-colors"}, + {"windwp/nvim-autopairs"}, + {"nvim-treesitter/nvim-treesitter"}, + {"nvim-telescope/telescope.nvim", + dependencies = {"nvim-lua/plenary.nvim"}}, + {"hrsh7th/nvim-cmp"}, + {"hrsh7th/cmp-buffer"}, + {"hrsh7th/cmp-path"}, + {"hrsh7th/cmp-nvim-lsp"}, + {"L3MON4D3/LuaSnip"}, + {"saadparwaiz1/cmp_luasnip"}, + {"ggandor/leap.nvim", + dependencies = {"tpope/vim-repeat"}}, + {"nvim-lualine/lualine.nvim"}, + {"luukvbaal/statuscol.nvim"}, + {"Exafunction/codeium.vim", event = 'BufEnter'}, + {"neovim/nvim-lspconfig", lazy = false, + dependencies = { + { "ms-jpq/coq_nvim", branch = "coq" }, + { "ms-jpq/coq.artifacts", branch = "artifacts" }, + { 'ms-jpq/coq.thirdparty', branch = "3p" } + }, + init = function() + vim.g.coq_settings = { + auto_start = true, -- if you want to start COQ at startup + -- Your COQ settings here + } + end, + } +} |