dotfiles/.config/nvim/init.lua
2024-02-25 19:17:35 +01:00

66 lines
2.0 KiB
Lua
Executable File

vim.g.mapleader = " "
vim.o.relativenumber = true
vim.o.number = true
vim.o.tabstop = 4
vim.o.softtabstop = 4
vim.o.shiftwidth = 4
vim.o.expandtab = true
vim.o.smartindent = true
-- Sync clipboard between OS and Neovim.
-- See `:help 'clipboard'`
vim.o.clipboard = 'unnamedplus'
-- Save undo history
vim.o.undofile = true
--vim.keymap.set({"n", "v", "i"}, "<leader><leader>", "<Esc>", {noremap = true})
--ignore case if pattern doesn't contain upper case
vim.o.ignorecase = true
vim.o.smartcase = true
--number of line to show around the cursor
vim.o.scrolloff = 8
--
vim.keymap.set("n", "<leader>pv", vim.cmd.Ex)
--clear hightlight
vim.keymap.set("n", "<leader>h", ":noh<CR>", {noremap=true})
--move line shortcut
vim.keymap.set("n", "<M-j>", ":m +1<CR>==", {noremap = true})
vim.keymap.set("n", "<M-k>", ":m -2<CR>==", {noremap = true})
vim.keymap.set("v", "<M-j>", ":m '>+1<CR>gv=gv", {noremap = true})
vim.keymap.set("v", "<M-k>", ":m '<-2<CR>gv=gv", {noremap = true})
vim.keymap.set("n", "<C-d>", "<C-d>zz", {noremap = true})
vim.keymap.set("n", "<C-u>", "<C-u>zz", {noremap = true})
vim.keymap.set("x", "<leader>p", "\"_dP")
vim.keymap.set("n", "<leader>y", "\"+y")
vim.keymap.set("v", "<leader>y", "\"+y")
--surrounding
vim.keymap.set("v", '<leader>s(', "xi()<Esc>P", {noremap = true})
vim.keymap.set("v", '<leader>s)', "xi()<Esc>P", {noremap = true})
vim.keymap.set("v", '<leader>s{', "xi{}<Esc>P", {noremap = true})
vim.keymap.set("v", '<leader>s}', "xi{}<Esc>P", {noremap = true})
vim.keymap.set("v", '<leader>s[', "xi[]<Esc>P", {noremap = true})
vim.keymap.set("v", '<leader>s]', "xi[]<Esc>P", {noremap = true})
vim.keymap.set("v", '<leader>s"', 'xi""<Esc>P', {noremap = true})
vim.keymap.set("v", "<leader>s'", "xi''<Esc>P", {noremap = true})
--tab buffer
vim.keymap.set("n", "<leader>fn", ":bnext<CR>", {noremap = true})
vim.keymap.set("n", "<leader>fp", ":bprev<CR>", {noremap = true})
-- wrap toggle
vim.keymap.set("n", "<leader>w", function() vim.o.wrap = not vim.o.wrap end, {noremap = true})
require('packer-plugins')
require('telescope')