coc and keymap

This commit is contained in:
Young Xu 2023-02-04 12:10:29 +08:00
parent e6e5791ba2
commit 4e394d4138
Signed by: xuthus5
GPG Key ID: A23CF9620CBB55F9
5 changed files with 50 additions and 6 deletions

10
coc-settings.json Normal file
View File

@ -0,0 +1,10 @@
{
"languageserver": {
"go": {
"command": "gopls",
"rootPatterns": ["go.mod"],
"trace.server": "verbose",
"filetypes": ["go"]
}
}
}

View File

@ -68,3 +68,8 @@ vim.o.showtabline = 2
vim.o.showmode = false
-- 配置剪切板
vim.opt.clipboard = "unnamedplus"
-- Some servers have issues with backup files, see #649
vim.opt.backup = false
vim.opt.writebackup = false

View File

@ -2,9 +2,34 @@ vim.g.mapleader = " "
vim.g.maplocalleader = " "
local map = vim.api.nvim_set_keymap
local keyset = vim.keymap.set
local coc_opt = {noremap = true, silent = true, expr = true, replace_keycodes = false}
local opt = {noremap = true, silent = true}
-- Autocomplete
function _G.check_back_space()
local col = vim.fn.col('.') - 1
return col == 0 or vim.fn.getline('.'):sub(col, col):match('%s') ~= nil
end
-- 开启目录树
map('n', '<leader>o', ':NvimTreeOpen<CR>', opt)
map('n', '<leader>to', ':NvimTreeOpen<CR>', opt)
-- 关闭目录树
map('n', '<leader>c', ':NvimTreeClose<CR>', opt)
map('n', '<leader>tc', ':NvimTreeClose<CR>', opt)
-- 开启coc补全
keyset("i", "<TAB>", 'coc#pum#visible() ? coc#pum#next(1) : v:lua.check_back_space() ? "<TAB>" : coc#refresh()', coc_opt)
keyset("i", "<S-TAB>", [[coc#pum#visible() ? coc#pum#prev(1) : "\<C-h>"]], coc_opt)
-- 搜索
local builtin = require('telescope.builtin')
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})
-- 窗口切换
map('n', '<leader>1', ':BufferLineGoToBuffer 1<CR>', opt)
map('n', '<leader>2', ':BufferLineGoToBuffer 2<CR>', opt)
map('n', '<leader>3', ':BufferLineGoToBuffer 3<CR>', opt)
map('n', '<leader>4', ':BufferLineGoToBuffer 4<CR>', opt)
map('n', '<leader>5', ':BufferLineGoToBuffer 5<CR>', opt)

View File

@ -7,6 +7,7 @@ require('impatient')
require("toggleterm").setup()
require('gitsigns').setup()
require('telescope').setup()
require("nvim-dap-virtual-text").setup()
vim.o.background = "dark" -- or "light" for light mode
vim.cmd([[colorscheme gruvbox]])

View File

@ -27,10 +27,13 @@ return require('packer').startup(function()
use {'akinsho/bufferline.nvim', tag = "v3.*", requires = 'nvim-tree/nvim-web-devicons'}
-- golang ide
use 'ray-x/go.nvim'
use 'ray-x/guihua.lua' -- recommended if need floating window support
use 'neovim/nvim-lspconfig'
use 'nvim-treesitter/nvim-treesitter'
-- 当前工作目录
use 'ray-x/guihua.lua' -- recommended if need floating window support
use 'neovim/nvim-lspconfig'
use 'nvim-treesitter/nvim-treesitter'
use 'mfussenegger/nvim-dap'
use 'theHamsta/nvim-dap-virtual-text'
use { "rcarriga/nvim-dap-ui", requires = {"mfussenegger/nvim-dap"} }
-- 当前工作目录
use {
"ahmedkhalf/project.nvim",
config = function()