aboutsummaryrefslogtreecommitdiff
path: root/nvim/lua/config
diff options
context:
space:
mode:
Diffstat (limited to 'nvim/lua/config')
-rw-r--r--nvim/lua/config/globals.lua2
-rw-r--r--nvim/lua/config/init.lua3
-rw-r--r--nvim/lua/config/keymaps.lua36
-rw-r--r--nvim/lua/config/lazy.lua46
-rw-r--r--nvim/lua/config/options.lua39
5 files changed, 126 insertions, 0 deletions
diff --git a/nvim/lua/config/globals.lua b/nvim/lua/config/globals.lua
new file mode 100644
index 0000000..6ef2cd8
--- /dev/null
+++ b/nvim/lua/config/globals.lua
@@ -0,0 +1,2 @@
+vim.g.mapleader = " "
+vim.g.maplocalleader = " "
diff --git a/nvim/lua/config/init.lua b/nvim/lua/config/init.lua
new file mode 100644
index 0000000..03722bd
--- /dev/null
+++ b/nvim/lua/config/init.lua
@@ -0,0 +1,3 @@
+require("config.lazy")
+require("config.keymaps")
+require("config.options")
diff --git a/nvim/lua/config/keymaps.lua b/nvim/lua/config/keymaps.lua
new file mode 100644
index 0000000..f6d97c9
--- /dev/null
+++ b/nvim/lua/config/keymaps.lua
@@ -0,0 +1,36 @@
+-- define common options
+local keymap = vim.keymap
+local opts = {
+ noremap = true, -- non-recursive
+ silent = true, -- do not show message
+}
+
+-- Pane Navigation
+keymap.set("n", "<C-h>", "<C-w>h", opts)
+keymap.set("n", "<C-j>", "<C-w>j", opts)
+keymap.set("n", "<C-k>", "<C-w>k", opts)
+keymap.set("n", "<C-l>", "<C-w>l", opts)
+
+-- Window Resize
+keymap.set("n", "<C-Up>", ":resize -2<Enter>", opts)
+keymap.set("n", "<C-Down>", ":resize +2<Enter>", opts)
+keymap.set("n", "<C-Left>", ":vertical resize -2<Enter>", opts)
+keymap.set("n", "<C-Right>", ":vertical resize +2<Enter>", opts)
+
+-- Window Managment
+keymap.set("n", "<Space>sv", ":vsplit<Enter>", opts)
+keymap.set("n", "<Space>sh", ":split<Enter>", opts)
+
+-- Indending
+keymap.set("v", "<", "<gv")
+keymap.set("v", ">", ">gv")
+
+-- Comments
+vim.api.nvim_set_keymap("n", "<C-c>", "gcc", { noremap = false })
+vim.api.nvim_set_keymap("v", "<C-c>", "gcc<Esc>", { noremap = false })
+
+-- Buffer kill
+keymap.set("n", "<C-q>", ":bdelete!<Enter>", opts)
+
+-- Working
+keymap.set("n", "<C-s>", ":w<Enter>", opts)
diff --git a/nvim/lua/config/lazy.lua b/nvim/lua/config/lazy.lua
new file mode 100644
index 0000000..7dcfac6
--- /dev/null
+++ b/nvim/lua/config/lazy.lua
@@ -0,0 +1,46 @@
+-- bootstrap lazy
+local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
+if not (vim.uv or vim.loop).fs_stat(lazypath) then
+ vim.fn.system({
+ "git",
+ "clone",
+ "--filter=blob:none",
+ "https://github.com/folke/lazy.nvim.git",
+ "--branch=stable", -- latest stable release
+ lazypath,
+ })
+end
+vim.opt.rtp:prepend(lazypath)
+
+require("config.globals")
+
+local opts = {
+ defaults = {
+ lazy = true,
+ },
+ rtp = {
+ disabled_plugins = {
+ "gzip",
+ "matchit",
+ "matchparen",
+ "netrw",
+ "netrwPlugin",
+ "tarPlugin",
+ "tohtml",
+ "tutor",
+ "zipPlugin",
+ }
+ },
+ change_detection = {
+ notify = false,
+ },
+ ui = {
+ border = "rounded",
+ backdrop = 100,
+ },
+ checker = {
+ enabled = true,
+ }
+}
+
+require("lazy").setup("plugins", opts)
diff --git a/nvim/lua/config/options.lua b/nvim/lua/config/options.lua
new file mode 100644
index 0000000..1629194
--- /dev/null
+++ b/nvim/lua/config/options.lua
@@ -0,0 +1,39 @@
+local opt = vim.opt
+
+-- Indent
+opt.softtabstop = 2
+opt.shiftwidth = 2
+opt.expandtab = true
+opt.smartindent = true
+opt.wrap = false
+
+-- Appearance
+opt.number = true
+opt.cursorline = true
+opt.termguicolors = true
+opt.showmode = true
+opt.colorcolumn = "100"
+opt.signcolumn = "yes"
+opt.cmdheight = 1
+opt.scrolloff = 10
+opt.completeopt = "menuone,noinsert,noselect"
+
+-- Search
+opt.incsearch = true
+opt.hlsearch = false
+opt.ignorecase = true
+opt.smartcase = true
+
+-- Behaviuor
+opt.hidden = true
+opt.errorbells = false
+opt.swapfile = false
+opt.backup = false
+opt.backspace = "indent,eol,start"
+opt.splitright = true
+opt.splitbelow = true
+opt.autochdir = false
+opt.mouse = "a"
+opt.clipboard = "unnamedplus"
+opt.modifiable = true
+opt.encoding = "UTF-8"