mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 08:43:00 +00:00
feat(nvim): More leader mappings and text objects
This commit is contained in:
parent
aeec1ce5c7
commit
073c60f07d
17 changed files with 264 additions and 130 deletions
|
|
@ -1,5 +1,7 @@
|
|||
return {
|
||||
{ "catppuccin/nvim", name = "catppuccin" },
|
||||
{ "olimorris/onedarkpro.nvim" },
|
||||
{ "rebelot/kanagawa.nvim" },
|
||||
{ "RRethy/vim-illuminate" },
|
||||
{
|
||||
"nvim-lualine/lualine.nvim",
|
||||
|
|
|
|||
|
|
@ -3,4 +3,47 @@ return {
|
|||
{ import = "plugins.mod.nvim-tree" },
|
||||
{ import = "plugins.mod.telescope" },
|
||||
{ import = "plugins.mod.projects" },
|
||||
{
|
||||
"lewis6991/hover.nvim",
|
||||
config = function()
|
||||
require("hover").setup({
|
||||
init = function()
|
||||
-- Require providers
|
||||
require("hover.providers.lsp")
|
||||
-- require('hover.providers.gh')
|
||||
-- require('hover.providers.gh_user')
|
||||
-- require('hover.providers.jira')
|
||||
-- require('hover.providers.dap')
|
||||
-- require('hover.providers.fold_preview')
|
||||
-- require('hover.providers.diagnostic')
|
||||
-- require('hover.providers.man')
|
||||
-- require('hover.providers.dictionary')
|
||||
end,
|
||||
preview_opts = {
|
||||
border = "single",
|
||||
},
|
||||
-- Whether the contents of a currently open hover window should be moved
|
||||
-- to a :h preview-window when pressing the hover keymap.
|
||||
preview_window = false,
|
||||
title = true,
|
||||
mouse_providers = {
|
||||
"LSP",
|
||||
},
|
||||
mouse_delay = 1000,
|
||||
})
|
||||
|
||||
-- Setup keymaps
|
||||
vim.keymap.set("n", "gE", require("hover").hover_select, { desc = "hover.nvim (select)" })
|
||||
vim.keymap.set("n", "<C-p>", function()
|
||||
require("hover").hover_switch("previous")
|
||||
end, { desc = "hover.nvim (previous source)" })
|
||||
vim.keymap.set("n", "<C-n>", function()
|
||||
require("hover").hover_switch("next")
|
||||
end, { desc = "hover.nvim (next source)" })
|
||||
|
||||
-- Mouse support
|
||||
vim.keymap.set("n", "<MouseMove>", require("hover").hover_mouse, { desc = "hover.nvim (mouse)" })
|
||||
vim.o.mousemoveevent = true
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -61,4 +61,6 @@ return {
|
|||
-- })
|
||||
end,
|
||||
},
|
||||
{ import = "plugins.mod.conform-nvim" },
|
||||
{ "nvim-treesitter/nvim-treesitter-context" },
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,14 @@
|
|||
return {
|
||||
{ "wakatime/vim-wakatime", lazy = false },
|
||||
{ "voldikss/vim-floaterm" },
|
||||
{ "CRAG666/betterTerm.nvim", opts = {
|
||||
position = "bot",
|
||||
size = 15,
|
||||
} },
|
||||
{ "CRAG666/code_runner.nvim", config = true },
|
||||
{ import = "plugins.mod.obsidian-nvim" },
|
||||
{
|
||||
|
||||
"folke/which-key.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
|
|
|
|||
38
tools/nvim/lua/plugins/mod/conform-nvim.lua
Normal file
38
tools/nvim/lua/plugins/mod/conform-nvim.lua
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
return {
|
||||
"stevearc/conform.nvim",
|
||||
event = { "BufWritePre" },
|
||||
cmd = { "ConformInfo" },
|
||||
-- This will provide type hinting with LuaLS
|
||||
---@module "conform"
|
||||
---@type conform.setupOpts
|
||||
opts = {
|
||||
-- Define your formatters
|
||||
formatters_by_ft = {
|
||||
lua = { "stylua" },
|
||||
python = { "isort", "black" },
|
||||
javascript = { "prettierd", "prettier", stop_after_first = true },
|
||||
},
|
||||
-- Set default options
|
||||
default_format_opts = {
|
||||
lsp_format = "fallback",
|
||||
},
|
||||
-- Set up format-on-save
|
||||
format_on_save = function(bufnr)
|
||||
-- Disable with a global or buffer-local variable
|
||||
if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
|
||||
return
|
||||
end
|
||||
return { timeout_ms = 500, lsp_format = "fallback" }
|
||||
end,
|
||||
-- Customize formatters
|
||||
formatters = {
|
||||
shfmt = {
|
||||
prepend_args = { "-i", "2" },
|
||||
},
|
||||
},
|
||||
},
|
||||
init = function()
|
||||
-- If you want the formatexpr, here is the place to set it
|
||||
vim.o.formatexpr = "v:lua.require'conform'.formatexpr()"
|
||||
end,
|
||||
}
|
||||
|
|
@ -31,6 +31,22 @@ return {
|
|||
on_attach = my_on_attach,
|
||||
sync_root_with_cwd = true,
|
||||
respect_buf_cwd = true,
|
||||
disable_netrw = true,
|
||||
renderer = {
|
||||
icons = {
|
||||
glyphs = {
|
||||
git = { -- https://github.com/nvim-neo-tree/neo-tree.nvim/blob/main/doc/neo-tree.txt#L1077C1-L1077C29
|
||||
unmerged = "",
|
||||
renamed = "➜",
|
||||
deleted = "",
|
||||
untracked = "",
|
||||
ignored = "",
|
||||
unstaged = "",
|
||||
staged = "",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,17 @@ return {
|
|||
config = function()
|
||||
require("telescope").setup({
|
||||
defaults = {
|
||||
prompt_prefix = " ",
|
||||
selection_caret = " ",
|
||||
entry_prefix = " ",
|
||||
layout_config = { -- https://github.com/NvChad/NvChad/blob/v2.5/lua/nvchad/configs/telescope.lua
|
||||
horizontal = {
|
||||
prompt_position = "top",
|
||||
preview_width = 0.55,
|
||||
},
|
||||
width = 0.87,
|
||||
height = 0.80,
|
||||
},
|
||||
mappings = {
|
||||
n = {
|
||||
["n"] = "move_selection_next",
|
||||
|
|
@ -11,6 +22,7 @@ return {
|
|||
["r"] = "preview_scrolling_down",
|
||||
["a"] = "preview_scrolling_left",
|
||||
["s"] = "preview_scrolling_right",
|
||||
["q"] = require("telescope.actions").close,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue