1
0
Fork 0
mirror of https://github.com/pnx/dotfiles synced 2026-06-17 03:30:01 +02:00

update nvim config

This commit is contained in:
Henrik Hautakoski 2024-03-06 18:32:18 +01:00
parent e3f9d23175
commit 1e68462bc1
21 changed files with 350 additions and 99 deletions

View file

@ -1,12 +1,8 @@
--
-- Filetype settings
--
local autocmd = vim.api.nvim_create_autocmd
local augroup = vim.api.nvim_create_augroup
local set = vim.opt
-- Default softtab (4)
set.tabstop = 4
set.softtabstop = 4
set.shiftwidth = 4
set.autoindent = true
augroup('indent', { clear = true })
@ -30,3 +26,9 @@ autocmd('Filetype', {
pattern = { 'c', 'cpp' },
command = 'setlocal ts=8 sts=0 sw=8 noexpandtab'
})
-- Fix autocomment plugins to use line comments for php.
autocmd('Filetype', {
pattern = 'php',
command = 'setlocal commentstring=//\\%s'
})

52
nvim/lua/config/icons.lua Normal file
View file

@ -0,0 +1,52 @@
return {
prompt = '',
current = ' ',
selected = '',
close = '',
pinned = '',
diff = {
added = '',
modified = '',
removed = '',
},
filetree = {
basic = {
folder_closed = "",
folder_open = "",
folder_empty = "󰜌",
},
git = {
-- Change type
added = "",
modified = "",
deleted = "",
renamed = "󰁕",
-- Status type
untracked = "",
ignored = "",
unstaged = "",
staged = "",
conflict = "",
},
},
diff_gutter = {
add = '',
change = '',
delete = '',
untracked = '+'
},
diagnostics = {
error = '',
warn = '',
info = '',
hint = ''
},
test = {
ok = '',
failed = '',
running = '',
skipped = '',
watch = '',
unknown = '',
}
}

View file

@ -1,3 +1,3 @@
require("config.settings")
require("config.mappings")
require("config.indent")
require("config.filetype")

View file

@ -1,21 +1,49 @@
--
-- Keymaps! Alot of stuff "borrowed" from thePrimeagen
--
local map = vim.keymap.set
local cmd = vim.cmd
vim.g.mapleader = " "
-- Undo/Redo in insert mode
map("i", "<C-z>", cmd.undo)
map("i", "<C-y>", cmd.redo)
-- Make half page jumps stay in the center of screen
map("n", "<C-u>", "<C-u>zz", { silent = true, desc = "jump half a page up" })
map("n", "<C-d>", "<C-d>zz", { silent = true, desc = "jump half a page down" })
map("n", "<S-PageUp>", "<C-u>zz", { silent = true, desc = "jump half a page up" })
map("n", "<S-PageDown>", "<C-d>zz", { silent = true, desc = "jump half a page down" })
-- Make jump to next search item stay in the center of screen.
map("n", "n", "nzzzv", { silent = true, desc = "jump to next search match" })
map("n", "N", "Nzzzv", { silent = true, desc = "jump to previous search match" })
-- Ctrl+s saves the current buffer in normal/insert mode.
map("n", "<C-s>", cmd.w)
map("i", "<C-s>", cmd.w)
map({"n", "i"}, "<C-s>", cmd.w, { desc = "save current buffer" })
-- Move Text
map("n", "<S-a>", ":m+1<CR>")
map("n", "<S-d>", ":m-2<CR>")
-- Move text
map("n", "<S-a>", ":m -2<CR>v=", { silent = true, desc = "move current line one line up" })
map("n", "<S-d>", ":m +1<CR>v=", { silent = true, desc = "move current line one line down" })
map("v", "<S-a>", ":m '<-2<CR>gv=gv", { silent = true, desc = "move current selection one line up" })
map("v", "<S-d>", ":m '>+1<CR>gv=gv", { silent = true, desc = "move current selection one line down" })
-- copy/paste
map("x", "<leader>p", [["_dP]], { silent = true, desc = "Paste over selected text without losing content in \"-register" })
map({"n", "v"}, "<leader>y", [["+y]], { desc = "Yank to system clipboard register" })
-- File operations
map("n", "<leader>fx", "<cmd>!chmod +x %<CR>", { silent = true, desc = "Set execute flag on current file" })
-- buffers
map("n", "<leader>bn", cmd.bn, { silent = true, desc = "Move to next buffer"})
map("n", "<leader>bb", cmd.bp, { silent = true, desc = "Move to previous buffer"})
map("n", "<leader>bd", cmd.bd, { silent = true, desc = "Close current buffer"})
-- Indent
map('n', "<Tab>", "v=")
map('x', "<Tab>", "=", { desc = "auto indent selection" })
map("i", "<S-Tab>", "<C-d>", { desc = "delete indent" })
-- Make Shift-Tab undo indent.
map("i", "<S-Tab>", "<C-d>")
-- Crazy search+replace
map("n", "<leader>rw", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]], {
desc = "search+replace word under cursor"
})
map("n", "Q", "<nop>")

View file

@ -1,25 +1,35 @@
--
local set = vim.opt
-- General Settings
--
vim.opt.showmode = false -- disable mode in the command line, because i use lualine
set.termguicolors = true
set.updatetime = 50
set.showmode = false -- disable mode in the command line, because i use lualine
--
-- Editor settings
--
vim.opt.scrolloff=20
set.hlsearch = false
set.incsearch = true
set.laststatus = 3
set.scrolloff=20
--vim.opt.sidescrolloff = 8
vim.opt.cursorline = true
set.cursorline = true
-- line numbers
vim.opt.number = true
vim.opt.relativenumber = true
vim.opt.numberwidth = 5
vim.opt.statuscolumn = '%=%{v:relnum?v:relnum:v:lnum} %s '
set.number = true
set.relativenumber = true
set.numberwidth = 5
set.statuscolumn = '%=%{v:relnum?v:relnum:v:lnum} %s '
-- indent
vim.opt.smartindent = true
set.tabstop = 4
set.softtabstop = 4
set.shiftwidth = 4
set.autoindent = true
set.smartindent = true
-- Filetypes
vim.filetype.add({

View file

@ -1,8 +1,13 @@
return {
{ '<leader>sf', '<cmd>Telescope find_files<cr>', desc = 'Search files' },
{ '<leader>sa', '<cmd>Telescope live_grep<cr>', desc = 'Search in files' },
{ '<leader>sg', '<cmd>Telescope git_files<cr>', desc = 'Search Git files' },
{ '<leader>sw', '<cmd>Telescope grep_string<cr>', desc = 'Search Word' },
{ '<leader>sw', '<cmd>Telescope grep_string<cr>', desc = 'Search for word under cursor' },
-- LSP
--{ 'gd', '<cmd>Telescope lsp_definitions<cr>', desc = 'Goto definition' },
{ '<leader>sr', '<cmd>Telescope lsp_references<cr>', desc = 'Search Reference' },
{ '<leader>ss', '<cmd>Telescope lsp_document_symbols<cr>', desc = 'Search document symbols' },
{ '<leader>sr', '<cmd>Telescope lsp_references<cr>', desc = 'Search Reference' },
{ '<leader>sr', '<cmd>Telescope lsp_references<cr>', desc = 'Search Reference' },
{ 'gd', '<cmd>Telescope lsp_definitions<cr>', desc = 'Goto definition' },
}