added basic nvim config - still some keybinding missing
This commit is contained in:
1
.config/nvim/init.lua
Normal file
1
.config/nvim/init.lua
Normal file
@@ -0,0 +1 @@
|
||||
require("kamu")
|
||||
18
.config/nvim/lazy-lock.json
Normal file
18
.config/nvim/lazy-lock.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "cdbf6f41381e5ee4810b4b09284b603d8f18365d" },
|
||||
"catppuccin": { "branch": "main", "commit": "fc537040147f0374a22b88142a20eb6781141f0b" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "41d3b2a9dbf03774a2c92c376d8371dcca9710a9" },
|
||||
"lsp-zero.nvim": { "branch": "v3.x", "commit": "96f29a47fe48254cb3a826f6d7e90a108dae502d" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "45e27ca739c7be6c49e5496d14fcf45a303c3a63" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "ddefe5ab051e7ca6a7b374754f0920c44668b54f" },
|
||||
"mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "5dce1b778b85c717f6614e3f4da45e9f19f54435" },
|
||||
"nvim-highlight-colors": { "branch": "main", "commit": "231547093a788b925b8fc36351ad422701c3a8c8" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "2b361e043810d5587d9af0787f8ce40da92ec5e9" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "53b0bcaadaffb505acff230578b56a86ec1ab38a" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "dfd4fb330f75595813e2a2f83000580a36dd10ff" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "a1e6268779411048a87f767a27380089362a0ce2" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "9ce85b0f7dcfe5358c0be937ad23e456907d410b" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "54930e1abfc94409e1bb9266e752ef8379008592" }
|
||||
}
|
||||
7
.config/nvim/lua/kamu/init.lua
Normal file
7
.config/nvim/lua/kamu/init.lua
Normal file
@@ -0,0 +1,7 @@
|
||||
vim.g.mapleader = ' '
|
||||
|
||||
require("kamu.options")
|
||||
--require("kamu.commands")
|
||||
require("kamu.lazy")
|
||||
require("kamu.keymaps")
|
||||
|
||||
99
.config/nvim/lua/kamu/keymaps.lua
Normal file
99
.config/nvim/lua/kamu/keymaps.lua
Normal file
@@ -0,0 +1,99 @@
|
||||
|
||||
|
||||
-- n, v, i, t = mode names
|
||||
|
||||
local M = {}
|
||||
|
||||
M.general = {
|
||||
i = {
|
||||
-- go to beginning and end
|
||||
["<C-b>"] = { "<ESC>^i", "Beginning of line" },
|
||||
["<C-e>"] = { "<End>", "End of line" },
|
||||
|
||||
-- navigate within insert mode
|
||||
["<C-h>"] = { "<Left>", "Move left" },
|
||||
["<C-l>"] = { "<Right>", "Move right" },
|
||||
["<C-j>"] = { "<Down>", "Move down" },
|
||||
["<C-k>"] = { "<Up>", "Move up" },
|
||||
},
|
||||
|
||||
n = {
|
||||
["<Esc>"] = { ":noh <CR>", "Clear highlights" },
|
||||
-- switch between windows
|
||||
["<C-h>"] = { "<C-w>h", "Window left" },
|
||||
["<C-l>"] = { "<C-w>l", "Window right" },
|
||||
["<C-j>"] = { "<C-w>j", "Window down" },
|
||||
["<C-k>"] = { "<C-w>k", "Window up" },
|
||||
|
||||
-- save
|
||||
["<C-s>"] = { "<cmd> w <CR>", "Save file" },
|
||||
|
||||
-- Copy all
|
||||
["<C-c>"] = { "<cmd> %y+ <CR>", "Copy whole file" },
|
||||
|
||||
-- line numbers
|
||||
["<leader>n"] = { "<cmd> set nu! <CR>", "Toggle line number" },
|
||||
["<leader>rn"] = { "<cmd> set rnu! <CR>", "Toggle relative number" },
|
||||
|
||||
-- Allow moving the cursor through wrapped lines with j, k, <Up> and <Down>
|
||||
-- http://www.reddit.com/r/vim/comments/2k4cbr/problem_with_gj_and_gk/
|
||||
-- empty mode is same as using <cmd> :map
|
||||
-- also don't use g[j|k] when in operator pending mode, so it doesn't alter d, y or c behaviour
|
||||
["j"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', "Move down", opts = { expr = true } },
|
||||
["k"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', "Move up", opts = { expr = true } },
|
||||
["<Up>"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', "Move up", opts = { expr = true } },
|
||||
["<Down>"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', "Move down", opts = { expr = true } },
|
||||
|
||||
-- new buffer
|
||||
["<leader>b"] = { "<cmd> enew <CR>", "New buffer" },
|
||||
["<leader>ch"] = { "<cmd> NvCheatsheet <CR>", "Mapping cheatsheet" },
|
||||
|
||||
["<leader>fm"] = {
|
||||
function()
|
||||
vim.lsp.buf.format { async = true }
|
||||
end,
|
||||
"LSP formatting",
|
||||
},
|
||||
},
|
||||
|
||||
t = {
|
||||
["<C-x>"] = { vim.api.nvim_replace_termcodes("<C-\\><C-N>", true, true, true), "Escape terminal mode" },
|
||||
},
|
||||
|
||||
v = {
|
||||
["<Up>"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', "Move up", opts = { expr = true } },
|
||||
["<Down>"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', "Move down", opts = { expr = true } },
|
||||
["<"] = { "<gv", "Indent line" },
|
||||
[">"] = { ">gv", "Indent line" },
|
||||
},
|
||||
|
||||
x = {
|
||||
["j"] = { 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', "Move down", opts = { expr = true } },
|
||||
["k"] = { 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', "Move up", opts = { expr = true } },
|
||||
-- Don't copy the replaced text after pasting in visual mode
|
||||
-- https://vim.fandom.com/wiki/Replace_a_word_with_yanked_text#Alternative_mapping_for_paste
|
||||
["p"] = { 'p:let @+=@0<CR>:let @"=@0<CR>', "Dont copy replaced text", opts = { silent = true } },
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
M.comment = {
|
||||
plugin = true,
|
||||
|
||||
-- toggle comment in both modes
|
||||
n = {
|
||||
["<leader>/"] = {
|
||||
function()
|
||||
require("Comment.api").toggle.linewise.current()
|
||||
end,
|
||||
"Toggle comment",
|
||||
},
|
||||
},
|
||||
|
||||
v = {
|
||||
["<leader>/"] = {
|
||||
"<ESC><cmd>lua require('Comment.api').toggle.linewise(vim.fn.visualmode())<CR>",
|
||||
"Toggle comment",
|
||||
},
|
||||
},
|
||||
}
|
||||
16
.config/nvim/lua/kamu/lazy.lua
Normal file
16
.config/nvim/lua/kamu/lazy.lua
Normal file
@@ -0,0 +1,16 @@
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not 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)
|
||||
|
||||
local opts = {}
|
||||
|
||||
require("lazy").setup("kamu.plugins", opts)
|
||||
39
.config/nvim/lua/kamu/options.lua
Normal file
39
.config/nvim/lua/kamu/options.lua
Normal file
@@ -0,0 +1,39 @@
|
||||
local options = {
|
||||
autoindent = true,
|
||||
smartindent = true,
|
||||
tabstop = 2,
|
||||
shiftwidth = 2,
|
||||
expandtab = true,
|
||||
|
||||
number = true,
|
||||
relativenumber = true,
|
||||
numberwidth = 4,
|
||||
|
||||
swapfile = false,
|
||||
backup = false,
|
||||
undodir = os.getenv("HOME") .. "/.vim/undodir",
|
||||
undofile = true,
|
||||
|
||||
hlsearch = false,
|
||||
incsearch = true,
|
||||
|
||||
showtabline = 0,
|
||||
|
||||
termguicolors = true,
|
||||
|
||||
signcolumn = "yes",
|
||||
wrap = false,
|
||||
fileencoding = "utf-8",
|
||||
|
||||
scrolloff = 8,
|
||||
mouse = "a",
|
||||
|
||||
updatetime = 50,
|
||||
|
||||
-- guicursor = "a:block"
|
||||
}
|
||||
|
||||
for option, value in pairs(options) do
|
||||
vim.opt[option] = value
|
||||
end
|
||||
|
||||
100
.config/nvim/lua/kamu/plugins/colors.lua
Normal file
100
.config/nvim/lua/kamu/plugins/colors.lua
Normal file
@@ -0,0 +1,100 @@
|
||||
return {
|
||||
"catppuccin/nvim",
|
||||
name = "catppuccin",
|
||||
priority = 1000,
|
||||
config = function()
|
||||
require("catppuccin").setup({
|
||||
flavour = "mocha", -- latte, frappe, macchiato, mocha
|
||||
background = { -- :h background
|
||||
light = "latte",
|
||||
dark = "mocha",
|
||||
},
|
||||
transparent_background = true, -- disables setting the background color.
|
||||
show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
|
||||
term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
|
||||
dim_inactive = {
|
||||
enabled = false, -- dims the background color of inactive window
|
||||
shade = "dark",
|
||||
percentage = 0.15, -- percentage of the shade to apply to the inactive window
|
||||
},
|
||||
no_italic = false, -- Force no italic
|
||||
no_bold = false, -- Force no bold
|
||||
no_underline = false, -- Force no underline
|
||||
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
|
||||
comments = { "italic" }, -- Change the style of comments
|
||||
conditionals = { "italic" },
|
||||
loops = {"italic"},
|
||||
functions = {"italic"},
|
||||
keywords = {"bold"},
|
||||
strings = {},
|
||||
variables = {},
|
||||
numbers = {"italic"},
|
||||
booleans = {"italic"},
|
||||
properties = {},
|
||||
types = {},
|
||||
operators = {},
|
||||
},
|
||||
color_overrides = {
|
||||
all = {
|
||||
text = "#ffffff",
|
||||
},
|
||||
mocha = {
|
||||
base = "#000000",
|
||||
mantle = "#242424",
|
||||
crust = "#474747",
|
||||
blue = "#0f63bd",
|
||||
surface1 = "#011f2a",
|
||||
--blue = "#0ca8fb", --accent color
|
||||
-- rosewater = "#f5e0dc",
|
||||
-- flamingo = "#f2cdcd",
|
||||
-- pink = "#f5c2e7",
|
||||
-- mauve = "#cba6f7",
|
||||
-- red = "#f38ba8",
|
||||
-- maroon = "#eba0ac",
|
||||
-- peach = "#fab387",
|
||||
-- yellow = "#f9e2af",
|
||||
-- green = "#a6e3a1",
|
||||
-- teal = "#94e2d5",
|
||||
-- sky = "#89dceb",
|
||||
-- sapphire = "#74c7ec",
|
||||
-- blue = "#89b4fa",
|
||||
-- lavender = "#b4befe",
|
||||
-- text = "#cdd6f4",
|
||||
-- subtext1 = "#bac2de",
|
||||
-- subtext0 = "#a6adc8",
|
||||
-- overlay2 = "#9399b2",
|
||||
-- overlay1 = "#7f849c",
|
||||
-- overlay0 = "#6c7086",
|
||||
-- surface2 = "#585b70",
|
||||
-- surface1 = "#45475a",
|
||||
-- surface0 = "#313244",
|
||||
-- base = "#1e1e2e",
|
||||
-- mantle = "#181825",
|
||||
-- crust = "#11111b",
|
||||
}
|
||||
},
|
||||
custom_highlights = function(colors)
|
||||
return {
|
||||
Comment = { fg = "#89AEB1" }
|
||||
}
|
||||
end,
|
||||
integrations = {
|
||||
cmp = false,
|
||||
gitsigns = false,
|
||||
nvimtree = false,
|
||||
telescope = {
|
||||
enabled = true,
|
||||
},
|
||||
treesitter = true,
|
||||
notify = false,
|
||||
mini = false,
|
||||
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
|
||||
},
|
||||
})
|
||||
vim.cmd.colorscheme "catppuccin"
|
||||
|
||||
vim.api.nvim_set_hl(0, 'LineNrAbove', { fg='#CACACA', })
|
||||
vim.api.nvim_set_hl(0, 'LineNrBelow', { fg='#CACACA', })
|
||||
vim.api.nvim_set_hl(0, 'LineNr', { fg = "#0ca8fb", bold=true } )
|
||||
end,
|
||||
}
|
||||
8
.config/nvim/lua/kamu/plugins/highlight-colors.lua
Normal file
8
.config/nvim/lua/kamu/plugins/highlight-colors.lua
Normal file
@@ -0,0 +1,8 @@
|
||||
return {
|
||||
'brenoprata10/nvim-highlight-colors',
|
||||
config = function()
|
||||
require('nvim-highlight-colors').setup {
|
||||
render = 'background'
|
||||
}
|
||||
end,
|
||||
}
|
||||
61
.config/nvim/lua/kamu/plugins/lsp.lua
Normal file
61
.config/nvim/lua/kamu/plugins/lsp.lua
Normal file
@@ -0,0 +1,61 @@
|
||||
return {
|
||||
'VonHeikemen/lsp-zero.nvim',
|
||||
branch = 'v3.x',
|
||||
dependencies = {
|
||||
'williamboman/mason.nvim',
|
||||
'williamboman/mason-lspconfig.nvim',
|
||||
'neovim/nvim-lspconfig',
|
||||
'hrsh7th/cmp-nvim-lsp',
|
||||
'hrsh7th/nvim-cmp',
|
||||
'L3MON4D3/LuaSnip'
|
||||
},
|
||||
config = function()
|
||||
local lsp_zero = require('lsp-zero')
|
||||
|
||||
lsp_zero.on_attach(function(client, bufnr)
|
||||
local opts = {buffer = bufnr, remap = false}
|
||||
|
||||
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts)
|
||||
vim.keymap.set("n", "K", function() vim.lsp.buf.hover() end, opts)
|
||||
vim.keymap.set("n", "<leader>vws", function() vim.lsp.buf.workspace_symbol() end, opts)
|
||||
vim.keymap.set("n", "<leader>vd", function() vim.diagnostic.open_float() end, opts)
|
||||
vim.keymap.set("n", "[d", function() vim.diagnostic.goto_next() end, opts)
|
||||
vim.keymap.set("n", "]d", function() vim.diagnostic.goto_prev() end, opts)
|
||||
vim.keymap.set("n", "<leader>vca", function() vim.lsp.buf.code_action() end, opts)
|
||||
vim.keymap.set("n", "<leader>vrr", function() vim.lsp.buf.references() end, opts)
|
||||
vim.keymap.set("n", "<leader>vrn", function() vim.lsp.buf.rename() end, opts)
|
||||
vim.keymap.set("i", "<C-h>", function() vim.lsp.buf.signature_help() end, opts)
|
||||
end)
|
||||
|
||||
require('mason').setup({})
|
||||
require('mason-lspconfig').setup({
|
||||
ensure_installed = {'rust_analyzer'},
|
||||
handlers = {
|
||||
lsp_zero.default_setup,
|
||||
lua_ls = function()
|
||||
local lua_opts = lsp_zero.nvim_lua_ls()
|
||||
require('lspconfig').lua_ls.setup(lua_opts)
|
||||
end,
|
||||
}
|
||||
})
|
||||
|
||||
local cmp = require('cmp')
|
||||
local cmp_select = {behavior = cmp.SelectBehavior.Select}
|
||||
|
||||
cmp.setup({
|
||||
sources = {
|
||||
{name = 'path'},
|
||||
{name = 'nvim_lsp'},
|
||||
{name = 'nvim_lua'},
|
||||
},
|
||||
formatting = lsp_zero.cmp_format(),
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
['<C-p>'] = cmp.mapping.select_prev_item(cmp_select),
|
||||
['<C-n>'] = cmp.mapping.select_next_item(cmp_select),
|
||||
['<C-y>'] = cmp.mapping.confirm({ select = true }),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
}),
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
||||
167
.config/nvim/lua/kamu/plugins/lualine.lua
Normal file
167
.config/nvim/lua/kamu/plugins/lualine.lua
Normal file
@@ -0,0 +1,167 @@
|
||||
local palette = require("catppuccin.palettes.init").get_palette()
|
||||
|
||||
local mode_map = {
|
||||
['n'] = 'NORMAL',
|
||||
['no'] = 'O-PENDING',
|
||||
['nov'] = 'O-PENDING',
|
||||
['noV'] = 'O-PENDING',
|
||||
['no\22'] = 'O-PENDING',
|
||||
['niI'] = 'NORMAL',
|
||||
['niR'] = 'NORMAL',
|
||||
['niV'] = 'NORMAL',
|
||||
['nt'] = 'NORMAL',
|
||||
['ntT'] = 'NORMAL',
|
||||
['v'] = 'VISUAL',
|
||||
['vs'] = 'VISUAL',
|
||||
['V'] = 'V-LINE',
|
||||
['Vs'] = 'V-LINE',
|
||||
['\22'] = 'V-BLOCK',
|
||||
['\22s'] = 'V-BLOCK',
|
||||
['s'] = 'SELECT',
|
||||
['S'] = 'S-LINE',
|
||||
['\19'] = 'S-BLOCK',
|
||||
['i'] = 'INSERT',
|
||||
['ic'] = 'INSERT',
|
||||
['ix'] = 'INSERT',
|
||||
['R'] = 'REPLACE',
|
||||
['Rc'] = 'REPLACE',
|
||||
['Rx'] = 'REPLACE',
|
||||
['Rv'] = 'V-REPLACE',
|
||||
['Rvc'] = 'V-REPLACE',
|
||||
['Rvx'] = 'V-REPLACE',
|
||||
['c'] = 'COMMAND',
|
||||
['cv'] = 'EX',
|
||||
['ce'] = 'EX',
|
||||
['r'] = 'REPLACE',
|
||||
['rm'] = 'MORE',
|
||||
['r?'] = 'CONFIRM',
|
||||
['!'] = 'SHELL',
|
||||
['t'] = 'TERMINAL',
|
||||
}
|
||||
|
||||
local mode2themeMap = {
|
||||
['NORMAL'] = 'normal',
|
||||
['VISUAL'] = 'visual',
|
||||
['V-LINE'] = 'visual',
|
||||
['V-BLOCK'] = 'visual',
|
||||
['INSERT'] = 'insert',
|
||||
['REPLACE'] = 'replace',
|
||||
['COMMAND'] = 'command',
|
||||
['TERMINAL'] = 'terminal',
|
||||
}
|
||||
|
||||
function getModeColor(section, type)
|
||||
local theme = require("catppuccin.utils.lualine")("mocha")
|
||||
local mode = vim.api.nvim_get_mode().mode
|
||||
if mode == nil then
|
||||
return theme['normal'][section][type]
|
||||
end
|
||||
|
||||
local modeColors = theme[mode2themeMap[mode_map[mode]]]
|
||||
if modeColors == nil then modeColors = theme['inactive'] end
|
||||
|
||||
return modeColors[section][type]
|
||||
end
|
||||
|
||||
return {
|
||||
'nvim-lualine/lualine.nvim',
|
||||
dependencies = {'kyazdani42/nvim-web-devicons', opt = true },
|
||||
config = function()
|
||||
require('lualine').setup {
|
||||
options = {
|
||||
theme = 'catppuccin',
|
||||
--fmt = string.lower,
|
||||
icons_enabled = true,
|
||||
component_separators = { left = '', right = ''},
|
||||
section_separators = { left = '', right = ''},
|
||||
disabled_filetypes = {
|
||||
statusline = {},
|
||||
winbar = {},
|
||||
},
|
||||
ignore_focus = {},
|
||||
always_divide_middle = false,
|
||||
globalstatus = false,
|
||||
refresh = {
|
||||
statusline = 1000,
|
||||
tabline = 1000,
|
||||
winbar = 1000,
|
||||
}
|
||||
},
|
||||
sections = {
|
||||
lualine_a = {
|
||||
{
|
||||
'mode',
|
||||
color = function()
|
||||
if vim.fn.mode() == "n" then return { fg = palette.text, gui = "bold" } end
|
||||
return { fg = "#000000", gui = "bold" }
|
||||
end,
|
||||
-- fmt = function(str) return str:sub(1,1) end,
|
||||
}},
|
||||
lualine_b = {
|
||||
{
|
||||
'branch',
|
||||
color = { fg = "#FFF"},
|
||||
icon = {'', color = function() return { fg = getModeColor('a','bg') } end },
|
||||
},
|
||||
{
|
||||
'diff',
|
||||
diff_color = {
|
||||
-- custom color for each section of the component in format
|
||||
-- {fg = '#rrggbb', bg= '#rrggbb', gui='style'}
|
||||
-- or highlight group
|
||||
added = nil, -- {fg = '#rrggbb', bg= '#rrggbb', gui='style'}, -- changes diff's added color
|
||||
modified = { fg = "#FFFFFF" }, -- changes diff's modified color
|
||||
removed = nil, -- changes diff's removed color
|
||||
},
|
||||
},
|
||||
-- 'diagnostics'
|
||||
},
|
||||
lualine_c = {{
|
||||
'filename',
|
||||
on_click = function(nc, mb, mods)
|
||||
local tb = require("telescope.builtin")
|
||||
if mb == "l" then
|
||||
--vim.print(mods)
|
||||
local mod = mods:gsub("%s+", "")
|
||||
if mod == "c" then tb.find_files(); return end
|
||||
if mod == "a" then tb.buffers(); return end
|
||||
end
|
||||
--require("telescope.builtin").find_files()
|
||||
end,
|
||||
}},
|
||||
lualine_x = {
|
||||
-- {
|
||||
-- function()
|
||||
-- return getModeColor('a','bg')
|
||||
-- end
|
||||
-- },
|
||||
'encoding', 'fileformat', 'filetype'},
|
||||
lualine_y = {
|
||||
{
|
||||
'progress',
|
||||
color = { fg = "#FFFFFF"},
|
||||
}
|
||||
},
|
||||
lualine_z = {{
|
||||
'location',
|
||||
color = function(section)
|
||||
if vim.fn.mode() == "n" then return { fg = palette.text } end
|
||||
return { fg = "#000000", }
|
||||
end,
|
||||
}}
|
||||
},
|
||||
inactive_sections = {
|
||||
lualine_a = {},
|
||||
lualine_b = {},
|
||||
lualine_c = {'filename'},
|
||||
lualine_x = {'location'},
|
||||
lualine_y = {},
|
||||
lualine_z = {}
|
||||
},
|
||||
tabline = {},
|
||||
winbar = {},
|
||||
inactive_winbar = {},
|
||||
extensions = {}
|
||||
}
|
||||
end,
|
||||
}
|
||||
13
.config/nvim/lua/kamu/plugins/telescope.lua
Normal file
13
.config/nvim/lua/kamu/plugins/telescope.lua
Normal file
@@ -0,0 +1,13 @@
|
||||
return {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
tag = '0.1.3',
|
||||
dependencies = {'nvim-lua/plenary.nvim'},
|
||||
config = function()
|
||||
require("telescope").setup()
|
||||
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, {})
|
||||
end,
|
||||
}
|
||||
51
.config/nvim/lua/kamu/plugins/tmux.lua
Normal file
51
.config/nvim/lua/kamu/plugins/tmux.lua
Normal file
@@ -0,0 +1,51 @@
|
||||
return {}
|
||||
--return {
|
||||
-- "aserowy/tmux.nvim",
|
||||
-- config = function()
|
||||
-- return require("tmux").setup({
|
||||
-- copy_sync = {
|
||||
-- -- enables copy sync. by default, all registers are synchronized.
|
||||
-- -- to control which registers are synced, see the `sync_*` options.
|
||||
-- enable = true,
|
||||
-- -- ignore specific tmux buffers e.g. buffer0 = true to ignore the
|
||||
-- -- first buffer or named_buffer_name = true to ignore a named tmux
|
||||
-- -- buffer with name named_buffer_name :)
|
||||
-- ignore_buffers = { empty = false },
|
||||
-- -- TMUX >= 3.2: all yanks (and deletes) will get redirected to system
|
||||
-- -- clipboard by tmux
|
||||
-- redirect_to_clipboard = false,
|
||||
-- -- offset controls where register sync starts
|
||||
-- -- e.g. offset 2 lets registers 0 and 1 untouched
|
||||
-- register_offset = 0,
|
||||
-- -- overwrites vim.g.clipboard to redirect * and + to the system
|
||||
-- -- clipboard using tmux. If you sync your system clipboard without tmux,
|
||||
-- -- disable this option!
|
||||
-- sync_clipboard = true,
|
||||
-- -- synchronizes registers *, +, unnamed, and 0 till 9 with tmux buffers.
|
||||
-- sync_registers = true,
|
||||
-- -- syncs deletes with tmux clipboard as well, it is adviced to
|
||||
-- -- do so. Nvim does not allow syncing registers 0 and 1 without
|
||||
-- -- overwriting the unnamed register. Thus, ddp would not be possible.
|
||||
-- sync_deletes = true,
|
||||
-- -- syncs the unnamed register with the first buffer entry from tmux.
|
||||
-- sync_unnamed = true,
|
||||
-- },
|
||||
-- navigation = {
|
||||
-- -- cycles to opposite pane while navigating into the border
|
||||
-- cycle_navigation = true,
|
||||
-- -- enables default keybindings (C-hjkl) for normal mode
|
||||
-- enable_default_keybindings = true,
|
||||
-- -- prevents unzoom tmux when navigating beyond vim border
|
||||
-- persist_zoom = false,
|
||||
-- },
|
||||
-- resize = {
|
||||
-- -- enables default keybindings (A-hjkl) for normal mode
|
||||
-- enable_default_keybindings = true,
|
||||
-- -- sets resize steps for x axis
|
||||
-- resize_step_x = 1,
|
||||
-- -- sets resize steps for y axis
|
||||
-- resize_step_y = 1,
|
||||
-- }
|
||||
-- })
|
||||
-- end
|
||||
--}
|
||||
26
.config/nvim/lua/kamu/plugins/tree.lua
Normal file
26
.config/nvim/lua/kamu/plugins/tree.lua
Normal file
@@ -0,0 +1,26 @@
|
||||
return {
|
||||
'nvim-tree/nvim-tree.lua',
|
||||
config = function()
|
||||
local function my_on_attach(bufnr)
|
||||
local api = require "nvim-tree.api"
|
||||
|
||||
local function opts(desc)
|
||||
return { desc = "nvim-tree: " .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
|
||||
end
|
||||
|
||||
-- default mappings
|
||||
api.config.mappings.default_on_attach(bufnr)
|
||||
|
||||
-- custom mappings
|
||||
vim.keymap.set('n', '<C-t>', api.tree.change_root_to_parent, opts('Up'))
|
||||
vim.keymap.set('n', '?', api.tree.toggle_help, opts('Help'))
|
||||
end
|
||||
|
||||
-- pass to setup along with your other options
|
||||
require("nvim-tree").setup {
|
||||
---
|
||||
on_attach = my_on_attach,
|
||||
---
|
||||
}
|
||||
end
|
||||
}
|
||||
33
.config/nvim/lua/kamu/plugins/treesitter.lua
Normal file
33
.config/nvim/lua/kamu/plugins/treesitter.lua
Normal file
@@ -0,0 +1,33 @@
|
||||
return {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
build = ":TSUpdate",
|
||||
config = function ()
|
||||
local configs = require("nvim-treesitter.configs")
|
||||
configs.setup({
|
||||
ensure_installed = {
|
||||
"c",
|
||||
"cpp",
|
||||
"bash",
|
||||
"lua",
|
||||
"vim",
|
||||
"vimdoc",
|
||||
"json",
|
||||
"python",
|
||||
"yaml",
|
||||
"markdown",
|
||||
"make",
|
||||
"query",
|
||||
"javascript",
|
||||
"dockerfile",
|
||||
"html",
|
||||
"latex",
|
||||
"css",
|
||||
"scss",
|
||||
},
|
||||
sync_install = false,
|
||||
highlight = { enable = true },
|
||||
indent = { enable = true },
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user