Initial commit for astronvim v4 configuration
This commit is contained in:
89
lua/custom/plugins/astrocore.lua
Normal file
89
lua/custom/plugins/astrocore.lua
Normal file
@ -0,0 +1,89 @@
|
||||
-- AstroCore provides a central place to modify mappings, vim options, autocommands, and more!
|
||||
-- Configuration documentation can be found with `:h astrocore`
|
||||
-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`)
|
||||
-- as this provides autocomplete and documentation while editing
|
||||
|
||||
---@type LazySpec
|
||||
return {
|
||||
"AstroNvim/astrocore",
|
||||
---@type AstroCoreOpts
|
||||
opts = {
|
||||
-- vim options can be configured here
|
||||
options = {
|
||||
opt = {
|
||||
-- cmdheight = 1, -- Always show command line
|
||||
scrolloff = 0, -- Set scroll offset to zero so that zt and zb work as expected
|
||||
-- number = true, -- sets vim.opt.number
|
||||
relativenumber = false, -- sets vim.opt.relativenumber
|
||||
-- signcolumn = "auto", -- sets vim.opt.signcolumn to auto
|
||||
-- foldcolumn = "auto", -- sets vim.opt.foldcolumn to auto
|
||||
-- spell = false, -- sets vim.opt.spell
|
||||
spelllang = "fr", -- Set spell language to french
|
||||
-- wrap = false, -- sets vim.opt.wrap
|
||||
},
|
||||
},
|
||||
-- Mappings can be configured through AstroCore as well.
|
||||
-- NOTE: keycodes follow the casing in the vimdocs. For example, `<Leader>` must be capitalized
|
||||
mappings = {
|
||||
-- Normal mode
|
||||
n = {
|
||||
-- ["<Leader>bb"] = { "<cmd>tabnew<cr>", desc = "New tab" },
|
||||
-- ["<Leader>bc"] = { "<cmd>BufferLinePickClose<cr>", desc = "Pick to close" },
|
||||
-- ["<Leader>bj"] = { "<cmd>BufferLinePick<cr>", desc = "Pick to jump" },
|
||||
-- ["<Leader>bt"] = { "<cmd>BufferLineSortByTabs<cr>", desc = "Sort by tabs" },
|
||||
|
||||
-- Easy buffer navigation
|
||||
["<tab>"] = { "<cmd>bnext<cr>", desc = "Switch to next buffer" },
|
||||
["<S-tab>"] = { "<cmd>bprevious<cr>", desc = "Switch to previous buffer" },
|
||||
|
||||
-- quick save
|
||||
-- ["<C-s>"] = { ":w!<cr>", desc = "Save File" }, -- change description but the same command
|
||||
|
||||
-- My telescope keybindings
|
||||
["<Leader>gf"] = { "<cmd>Telescope git_files<cr>", desc = "Find git files with Telescope" },
|
||||
["<Leader>fq"] = { "<cmd>Telescope quickfix<cr>", desc = "Find quickfixes with Telescope" },
|
||||
["<Leader>fs"] = { "<cmd>Telescope spell_suggest<cr>", desc = "Find spell suggestions with Telescope" },
|
||||
["<Leader>fp"] = { "<cmd>Telescope projects<cr>", desc = "Find projetcs with Telescope" },
|
||||
|
||||
-- My personal keybindings
|
||||
["<Leader>²"] = { name = "Personal" },
|
||||
["<Leader>²t"] = { name = "Terminals" },
|
||||
["<Leader>²tt"] = { "<cmd>TermSelect<cr>", desc = "Select a terminal" },
|
||||
["<Leader>²tg"] = { "<cmd>terminal tig<cr>", desc = "Open tig in a new tab" },
|
||||
|
||||
["<Leader>²n"] = { name = "Neotree" },
|
||||
["<Leader>²nb"] = { "<cmd>Neotree toggle buffers left<cr>", desc = "Open Neotree Buffers" },
|
||||
["<Leader>²ng"] = { "<cmd>Neotree toggle git_status left<cr>", desc = "Open Neotree Git status" },
|
||||
|
||||
-- ["<F1>"] = { "<cmd>Telescope help_tags<cr>", desc = "Find help with Telescope" },
|
||||
["<F2>"] = { "<cmd>Neotree toggle<cr>", desc = "File Explorer" }, -- F26 corresponds to <Ctrl+F2> on my keyboard
|
||||
["<F3>"] = { function() require("astrocore").toggle_term_cmd "lazygit" end, desc = "Lazygit terminal" }, -- F27 corresponds to <Ctrl+F3> on my keyboard
|
||||
["<F4>"] = { function() require("astrocore").toggle_term_cmd "tig" end, desc = "Tig terminal" }, -- F28 corresponds to <Ctrl+F4> on my keyboard
|
||||
},
|
||||
|
||||
-- Insert mode
|
||||
i = {
|
||||
["<F2>"] = { "<cmd>Neotree toggle<cr>", desc = "File Explorer" }, -- F26 corresponds to <Ctrl+F2> on my keyboard
|
||||
["<F3>"] = { function() require("astrocore").toggle_term_cmd "lazygit" end, desc = "Lazygit terminal" }, -- F27 corresponds to <Ctrl+F3> on my keyboard
|
||||
["<F4>"] = { function() require("astrocore").toggle_term_cmd "tig" end, desc = "Tig terminal" }, -- F28 corresponds to <Ctrl+F4> on my keyboard
|
||||
},
|
||||
|
||||
-- Terminal mode
|
||||
t = {
|
||||
-- setting a mapping to false will disable it
|
||||
-- ["<esc>"] = false,
|
||||
-- Switch to normal mode in terminal mode
|
||||
["<Esc><Esc><Esc>"] = { "<C-\\><C-n>" },
|
||||
-- Clear Ctrl+l so that we can use it to clear the terminal
|
||||
["<C-l>"] = false,
|
||||
["<C-h>"] = false,
|
||||
-- Clear Ctrl-J and Ctrl-K so that we can use them to navigate the terminal (for lazygit)
|
||||
["<C-j>"] = false,
|
||||
["<C-k>"] = false,
|
||||
-- My terms
|
||||
["<F3>"] = { function() require("astrocore").toggle_term_cmd "lazygit" end, desc = "Lazygit terminal" }, -- F27 corresponds to <Ctrl+F3> on my keyboard
|
||||
["<F4>"] = { function() require("astrocore").toggle_term_cmd "tig" end, desc = "Tig terminal" }, -- F28 corresponds to <Ctrl+F4> on my keyboard
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
14
lua/custom/plugins/astroui.lua
Normal file
14
lua/custom/plugins/astroui.lua
Normal file
@ -0,0 +1,14 @@
|
||||
-- AstroCore provides a central place to modify mappings, vim options, autocommands, and more!
|
||||
-- Configuration documentation can be found with `:h astrocore`
|
||||
-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`)
|
||||
-- as this provides autocomplete and documentation while editing
|
||||
|
||||
---@type LazySpec
|
||||
return {
|
||||
"AstroNvim/astroui",
|
||||
---@type AstroUIOpts
|
||||
opts = {
|
||||
-- change colorscheme
|
||||
colorscheme = "github_dark",
|
||||
},
|
||||
}
|
8
lua/custom/plugins/colorschemes.lua
Normal file
8
lua/custom/plugins/colorschemes.lua
Normal file
@ -0,0 +1,8 @@
|
||||
return {
|
||||
-- { "jacoborus/tender.vim", lazy = false },
|
||||
-- { "altercation/vim-colors-solarized", lazy = false },
|
||||
-- { "bluz71/vim-moonfly-colors", lazy = false },
|
||||
-- { "ray-x/aurora", lazy = false },
|
||||
-- { "rmehri01/onenord.nvim" },
|
||||
{ "joshdick/onedark.vim" },
|
||||
}
|
27
lua/custom/plugins/neo-tree.lua
Normal file
27
lua/custom/plugins/neo-tree.lua
Normal file
@ -0,0 +1,27 @@
|
||||
return {
|
||||
{
|
||||
"nvim-neo-tree/neo-tree.nvim",
|
||||
opts = {
|
||||
window = {
|
||||
width = 50,
|
||||
mappings = {
|
||||
["<space>"] = false, -- disable space until we figure out which-key disabling
|
||||
[">"] = "next_source",
|
||||
["<"] = "prev_source",
|
||||
},
|
||||
},
|
||||
event_handlers = {
|
||||
{
|
||||
event = "file_opened",
|
||||
handler = function(file_path)
|
||||
-- auto close
|
||||
-- vimc.cmd("Neotree close")
|
||||
-- OR
|
||||
require("neo-tree.command").execute({ action = "close" })
|
||||
end
|
||||
},
|
||||
},
|
||||
close_if_last_window = true,
|
||||
},
|
||||
}
|
||||
}
|
4
lua/custom/plugins/others.lua
Normal file
4
lua/custom/plugins/others.lua
Normal file
@ -0,0 +1,4 @@
|
||||
return {
|
||||
-- direnv
|
||||
{ "direnv/direnv.vim", lazy = false },
|
||||
}
|
13
lua/custom/plugins/telescope.lua
Normal file
13
lua/custom/plugins/telescope.lua
Normal file
@ -0,0 +1,13 @@
|
||||
return {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
dependencies = {
|
||||
"nvim-telescope/telescope-file-browser.nvim",
|
||||
"da-moon/telescope-toggleterm.nvim",
|
||||
},
|
||||
config = function(...)
|
||||
require "plugins.configs.telescope"(...)
|
||||
local telescope = require "telescope"
|
||||
telescope.load_extension "file_browser"
|
||||
telescope.load_extension "toggleterm"
|
||||
end,
|
||||
}
|
Reference in New Issue
Block a user