summaryrefslogtreecommitdiff
path: root/neovim/.config/nvim/lua/settings.lua
diff options
context:
space:
mode:
Diffstat (limited to 'neovim/.config/nvim/lua/settings.lua')
-rw-r--r--neovim/.config/nvim/lua/settings.lua46
1 files changed, 38 insertions, 8 deletions
diff --git a/neovim/.config/nvim/lua/settings.lua b/neovim/.config/nvim/lua/settings.lua
index 4d3c601..590164d 100644
--- a/neovim/.config/nvim/lua/settings.lua
+++ b/neovim/.config/nvim/lua/settings.lua
@@ -1,7 +1,7 @@
-- General settings
vim.g.loaded_python_provider = 1
-vim.g.python3_host_prog = '/Users/michael/.pyenv/shims/python3'
+vim.g.python3_host_prog = '/opt/homebrew/bin/python3'
vim.g.loaded_perl_provider = 0
vim.g.loaded_ruby_provider = 0
@@ -25,7 +25,7 @@ vim.opt.linebreak = true
vim.opt.showbreak = '↪ '
vim.opt.breakindent = true
vim.opt.termguicolors = true
-vim.cmd[[
+vim.cmd [[
syntax on
filetype on
filetype plugin on
@@ -39,10 +39,29 @@ vim.opt.shortmess:append 'c'
vim.opt.signcolumn = 'yes'
vim.opt.laststatus = 3
+if vim.g.neovide then
+ vim.g.neovide_input_macos_option_key_is_meta = 'only_left'
+end
+
+if vim.g.neovide then
+ vim.keymap.set('n', '<D-s>', ':w<CR>') -- Save
+ vim.keymap.set('v', '<D-c>', '"+y') -- Copy
+ vim.keymap.set('n', '<D-v>', '"+P') -- Paste normal mode
+ vim.keymap.set('v', '<D-v>', '"+P') -- Paste visual mode
+ vim.keymap.set('c', '<D-v>', '<C-R>+') -- Paste command mode
+ vim.keymap.set('i', '<D-v>', '<ESC>l"+Pli') -- Paste insert mode
+end
+
+-- Allow clipboard copy paste in neovim
+vim.api.nvim_set_keymap('', '<D-v>', '+p<CR>', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('!', '<D-v>', '<C-R>+', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('t', '<D-v>', '<C-R>+', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('v', '<D-v>', '<C-R>+', { noremap = true, silent = true })
+
-- Autocommands
local indent_rules_augroup = vim.api.nvim_create_augroup('Indents', {})
-vim.api.nvim_create_autocmd( { 'FileType' }, {
+vim.api.nvim_create_autocmd({ 'FileType' }, {
pattern = { 'make', 'sh', 'zsh' },
group = indent_rules_augroup,
callback = function()
@@ -52,7 +71,7 @@ vim.api.nvim_create_autocmd( { 'FileType' }, {
vim.opt_local.expandtab = false
end
})
-vim.api.nvim_create_autocmd( { 'FileType' }, {
+vim.api.nvim_create_autocmd({ 'FileType' }, {
pattern = { 'go' },
group = indent_rules_augroup,
callback = function()
@@ -62,7 +81,7 @@ vim.api.nvim_create_autocmd( { 'FileType' }, {
vim.opt_local.expandtab = false
end
})
-vim.api.nvim_create_autocmd( { 'FileType' }, {
+vim.api.nvim_create_autocmd({ 'FileType' }, {
pattern = { 'javascript', 'lua' },
group = indent_rules_augroup,
callback = function()
@@ -73,7 +92,7 @@ vim.api.nvim_create_autocmd( { 'FileType' }, {
})
local wrap_rules_augroup = vim.api.nvim_create_augroup('Wrap', {})
-vim.api.nvim_create_autocmd( { 'FileType' }, {
+vim.api.nvim_create_autocmd({ 'FileType' }, {
pattern = { 'markdown', 'rst', 'text' },
group = wrap_rules_augroup,
callback = function()
@@ -82,7 +101,7 @@ vim.api.nvim_create_autocmd( { 'FileType' }, {
})
local terminal_rules_augroup = vim.api.nvim_create_augroup('Terminal', {})
-vim.api.nvim_create_autocmd( { 'TermOpen' }, {
+vim.api.nvim_create_autocmd({ 'TermOpen' }, {
pattern = { '*' },
group = terminal_rules_augroup,
callback = function()
@@ -98,7 +117,7 @@ vim.api.nvim_create_autocmd( { 'TermOpen' }, {
})
-- Terminal
-vim.cmd[[
+vim.cmd [[
tnoremap <Esc> <C-\><C-n>
tnoremap <A-h> <C-\><C-N><C-w>h
tnoremap <A-j> <C-\><C-N><C-w>j
@@ -144,4 +163,15 @@ if vim.fn.has('gui_running') == 1 then
vim.keymap.set('n', '<S-D-}>', '<cmd>tabn<CR>', { noremap = true, silent = true })
vim.keymap.set('v', '<S-D-}>', '<cmd>tabn<CR>', { noremap = true, silent = true })
vim.keymap.set('i', '<S-D-}>', '<Esc><cmd>tabn<CR>', { noremap = true, silent = true })
+ vim.keymap.set('n', '<M-S-{>', '<cmd>tabp<CR>', { noremap = true, silent = true })
+ vim.keymap.set('v', '<M-S-{>', '<cmd>tabp<CR>', { noremap = true, silent = true })
+ vim.keymap.set('i', '<M-S-{>', '<Esc><cmd>tabp<CR>', { noremap = true, silent = true })
+ vim.keymap.set('n', '<M-S-}>', '<cmd>tabn<CR>', { noremap = true, silent = true })
+ vim.keymap.set('v', '<M-S-}>', '<cmd>tabn<CR>', { noremap = true, silent = true })
+ vim.keymap.set('i', '<M-S-}>', '<Esc><cmd>tabn<CR>', { noremap = true, silent = true })
end
+
+vim.diagnostic.config({
+ underline = { severity = vim.diagnostic.severity.ERROR },
+ virtual_text = false,
+})