This commit is contained in:
Young Xu 2023-02-14 21:13:11 +08:00
parent dc614392b8
commit 5d7b301bc4
Signed by: xuthus5
GPG Key ID: A23CF9620CBB55F9
5 changed files with 59 additions and 22 deletions

View File

@ -25,6 +25,10 @@ require("plugins.renamer")
require("plugins.gitsigns")
-- 终端管理
require("plugins.terminal")
-- 错误列表
require("plugins.trouble")
-- 代码大纲
require('plugins.aerial')
-- LSP管理
require("plugins.mason")
require("lsp.init")

View File

@ -2,36 +2,50 @@ vim.g.mapleader = " "
vim.g.maplocalleader = " "
local map = vim.api.nvim_set_keymap
local noreopt = {noremap = true, silent = true }
local noreopt = { noremap = true, silent = true }
-- 快所退出
map("n", "q", ":wq<CR>", noreopt)
map("n", "qn", ":q!<CR>", noreopt)
map("i", "jk", "<ESC>", noreopt)
-- git 管理
map('n', '<leader>lg', ':LazyGit<CR>', noreopt)
map("n", "<leader>lg", ":LazyGit<CR>", noreopt)
-- 开关文件树
map('n', '<leader>t', ':NvimTreeToggle<CR>', noreopt)
map("n", "<leader>t", ":NvimTreeToggle<CR>", noreopt)
-- 文件页切换
map('n', '<leader>ll', ':BufferLineCyclePrev<CR>', noreopt)
map('n', '<leader>rr', ':BufferLineCycleNext<CR>', noreopt)
map("n", "<leader>ll", ":BufferLineCyclePrev<CR>", noreopt)
map("n", "<leader>rr", ":BufferLineCycleNext<CR>", noreopt)
-- 模糊搜索
map('n', '<leader>ff', '<Cmd>Telescope find_files<CR>', noreopt)
map('n', '<leader>fg', '<Cmd>Telescope live_grep<CR>', noreopt)
map("n", "<leader>ff", "<Cmd>Telescope find_files<CR>", noreopt)
map("n", "<leader>fg", "<Cmd>Telescope live_grep<CR>", noreopt)
-- 重命名
vim.keymap.set({'i','n','v'}, '<F6>', '<cmd>lua require("renamer").rename()<cr>')
vim.keymap.set({ "i", "n", "v" }, "<F6>", '<cmd>lua require("renamer").rename()<cr>')
-- 终端管理
map('n', '<leader>te', '<Cmd>ToggleTerm<CR>', noreopt)
map("n", "<leader>te", "<Cmd>ToggleTerm<CR>", noreopt)
function _G.set_terminal_keymaps()
local opts = {buffer = 0}
vim.keymap.set('t', '<esc>', [[<C-\><C-n>]], opts)
vim.keymap.set('t', 'jk', [[<C-\><C-n>]], opts)
vim.keymap.set('t', '<C-h>', [[<Cmd>wincmd h<CR>]], opts)
vim.keymap.set('t', '<C-j>', [[<Cmd>wincmd j<CR>]], opts)
vim.keymap.set('t', '<C-k>', [[<Cmd>wincmd k<CR>]], opts)
vim.keymap.set('t', '<C-l>', [[<Cmd>wincmd l<CR>]], opts)
local opts = { buffer = 0 }
vim.keymap.set("t", "<esc>", [[<C-\><C-n>]], opts)
vim.keymap.set("t", "jk", [[<C-\><C-n>]], opts)
vim.keymap.set("t", "<C-h>", [[<Cmd>wincmd h<CR>]], opts)
vim.keymap.set("t", "<C-j>", [[<Cmd>wincmd j<CR>]], opts)
vim.keymap.set("t", "<C-k>", [[<Cmd>wincmd k<CR>]], opts)
vim.keymap.set("t", "<C-l>", [[<Cmd>wincmd l<CR>]], opts)
end
function _G.set_terminal_keymaps_insert()
vim.keymap.set('n', '<C-h>', [[<Cmd>wincmd h<CR>]], opts)
vim.keymap.set('n', '<C-j>', [[<Cmd>wincmd j<CR>]], opts)
vim.keymap.set('n', '<C-k>', [[<Cmd>wincmd k<CR>]], opts)
vim.keymap.set('n', '<C-l>', [[<Cmd>wincmd l<CR>]], opts)
local opts = { buffer = 0 }
vim.keymap.set("n", "<C-h>", [[<Cmd>wincmd h<CR>]], opts)
vim.keymap.set("n", "<C-j>", [[<Cmd>wincmd j<CR>]], opts)
vim.keymap.set("n", "<C-k>", [[<Cmd>wincmd k<CR>]], opts)
vim.keymap.set("n", "<C-l>", [[<Cmd>wincmd l<CR>]], opts)
end
vim.cmd('autocmd! TermOpen term://* lua set_terminal_keymaps()')
vim.cmd('lua set_terminal_keymaps_insert()')
vim.cmd("autocmd! TermOpen term://* lua set_terminal_keymaps()")
vim.cmd("lua set_terminal_keymaps_insert()")
-- 错误列表UI
map("n", "<leader>xx", "<cmd>TroubleToggle<cr>", { silent = true, noremap = true })
map("n", "<leader>xw", "<cmd>TroubleToggle workspace_diagnostics<cr>", { silent = true, noremap = true })
map("n", "<leader>xd", "<cmd>TroubleToggle document_diagnostics<cr>", { silent = true, noremap = true })
map("n", "<leader>xl", "<cmd>TroubleToggle loclist<cr>", { silent = true, noremap = true })
map("n", "<leader>xq", "<cmd>TroubleToggle quickfix<cr>", { silent = true, noremap = true })
map("n", "gR", "<cmd>TroubleToggle lsp_references<cr>", { silent = true, noremap = true })

11
lua/plugins/aerial.lua Normal file
View File

@ -0,0 +1,11 @@
require('aerial').setup({
-- optionally use on_attach to set keymaps when aerial has attached to a buffer
on_attach = function(bufnr)
-- Jump forwards/backwards with '{' and '}'
vim.keymap.set('n', '{', '<cmd>AerialPrev<CR>', {buffer = bufnr})
vim.keymap.set('n', '}', '<cmd>AerialNext<CR>', {buffer = bufnr})
end
})
-- You probably also want to set a keymap to toggle aerial
vim.keymap.set('n', '<leader>a', '<cmd>AerialToggle!<CR>')

View File

@ -101,5 +101,12 @@ return require("packer").startup(function(use)
"hrsh7th/cmp-vsnip",
"hrsh7th/vim-vsnip",
})
-- 代码大纲
use({ "stevearc/aerial.nvim" })
-- 错误列表
use({
"folke/trouble.nvim",
requires = "nvim-tree/nvim-web-devicons",
})
vim.opt.completeopt = { "menu", "menuone", "noselect" }
end)

1
lua/plugins/trouble.lua Normal file
View File

@ -0,0 +1 @@
require("trouble").setup()