36 lines
1.3 KiB
Lua
36 lines
1.3 KiB
Lua
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>to', ':NvimTreeOpen<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)
|