From bfd59534b4646ec77fb3ee6141134e200bfe2660 Mon Sep 17 00:00:00 2001 From: Jovan Djokic-Sumarac Date: Fri, 12 Jul 2024 11:57:47 +0200 Subject: [PATCH] change stuff i guess --- init.lua | 27 ++- lua/options/colors.lua | 6 - lua/options/init.lua | 2 +- lua/options/keybind.lua | 9 +- lua/options/opts.lua | 124 +++++++------- lua/plugins/lualine.lua | 372 +++++++++++++++++++++++----------------- lua/plugins/wilder.lua | 36 ++-- 7 files changed, 317 insertions(+), 259 deletions(-) diff --git a/init.lua b/init.lua index 9f38aed..c3eb692 100755 --- a/init.lua +++ b/init.lua @@ -1,12 +1,23 @@ +-- _.gd8888888bp._ +-- ████████╗██████╗ ██╗██╗ ██╗██╗ ██╗ .g88888888888888888p. +-- ╚══██╔══╝██╔══██╗██║╚██╗██╔╝╚██╗ ██╔╝ .d8888P"" ""Y8888b. +-- ██║ ██████╔╝██║ ╚███╔╝ ╚████╔╝ "Y8P" "Y8P' +-- ██║ ██╔══██╗██║ ██╔██╗ ╚██╔╝ `. ,' +-- ██║ ██║ ██║██║██╔╝ ██╗ ██║ \ .-. / +-- ╚═╝ ╚═╝ ╚═╝╚═╝╚═╝ ╚═╝ ╚═╝ \ (___) / +-- .------------------._______________________:__________j +-- / | | |`-.,_ +-- \###################|######################|###########|,-'` +-- `------------------' : ___ l +-- / ( ) \ +-- / `-' \ +-- ,' `. +-- Listen up, you motherfuckers, .d8b. .d8b. +-- Those Ivy League dopes, they wanna "Y8888p.. ,.d8888P" +-- mock us. Tell 'em all this is war. "Y88888888888888888P" +-- And not fighting a war is for suckers. ""YY8888888PP"" --- ████████╗██████╗ ██╗██╗ ██╗██╗ ██╗ --- ╚══██╔══╝██╔══██╗██║╚██╗██╔╝╚██╗ ██╔╝ --- ██║ ██████╔╝██║ ╚███╔╝ ╚████╔╝ --- ██║ ██╔══██╗██║ ██╔██╗ ╚██╔╝ --- ██║ ██║ ██║██║██╔╝ ██╗ ██║ --- ╚═╝ ╚═╝ ╚═╝╚═╝╚═╝ ╚═╝ ╚═╝ - -- Setup Lazy.nvim and plugins require("plugins") @@ -15,8 +26,6 @@ require("plugins") require("options") - - if vim.g.neovide then vim.o.guifont = "FiraCode Nerd Font:h14" vim.g.neovide_scale_factor = 1.0 diff --git a/lua/options/colors.lua b/lua/options/colors.lua index ff6dee8..57a0c86 100755 --- a/lua/options/colors.lua +++ b/lua/options/colors.lua @@ -1,7 +1 @@ --- vim.opt.termguicolors = true --- vim.opt.background = "dark" - --- vim.g.onedark_config = { style = 'darker' } vim.cmd("colorscheme carbonfox") --- vim.opt.background = "dark" -- set this to dark or light --- vim.cmd.colorscheme "oxocarbon" diff --git a/lua/options/init.lua b/lua/options/init.lua index cf26c53..53edfe7 100755 --- a/lua/options/init.lua +++ b/lua/options/init.lua @@ -1,3 +1,3 @@ require("options.colors") -require("options.opts") require("options.keybind") +require("options.opts") diff --git a/lua/options/keybind.lua b/lua/options/keybind.lua index 541f89b..39d8a48 100755 --- a/lua/options/keybind.lua +++ b/lua/options/keybind.lua @@ -12,10 +12,17 @@ map('n', '', 'Telescope buffers', options) -- slef explanitory map("n", "tw", "lua MiniTrailspace.trim()", options) -vim.keymap.set("n", "f", function() +vim.keymap.set("n", "fo", function() require("oil").open() end) + +map("n", "ff", "Telescope find_files", options) +map("n", "fs", "Telescope current_buffer_fuzzy_find", options) +map("n", "gs", "Telescope git_status", options) +map("n", "gg", "Telescope live_grep", options) + + -- remap keys so that they dont skip camelCase map("n", "w", "CamelCaseMotion_w", cmd_options) map("n", "b", "CamelCaseMotion_b", cmd_options) diff --git a/lua/options/opts.lua b/lua/options/opts.lua index 08c0c69..1355a35 100755 --- a/lua/options/opts.lua +++ b/lua/options/opts.lua @@ -1,74 +1,72 @@ local o = vim.opt -o.number = true -- enable line number -o.relativenumber = true -- enable relative line number -o.undofile = true -- persistent undo -o.backup = false -- disable backup -o.autowrite = true -- auto write buffer when it's not focused -o.ignorecase = true -- case insensitive on search.. -o.list = true -- display listchars -o.smartindent = true -- smarter indentation -o.splitright = true -- split right instead of left -o.splitkeep = "screen" -- stabilize split -o.startofline = false -- don't go to the start of the line when moving to another file -o.swapfile = false -- disable swapfile -o.termguicolors = true -- true colours for better experience -o.wrap = false -- don't wrap lines -o.backupcopy = "yes" -- fix weirdness for stuff that replaces the entire file when hot reloading +o.number = true -- enable line number +o.relativenumber = true -- enable relative line number +o.undofile = true -- persistent undo +o.backup = false -- disable backup +o.autowrite = true -- auto write buffer when it's not focused +o.ignorecase = true -- case insensitive on search.. +o.list = true -- display listchars +o.smartindent = true -- smarter indentation +o.splitright = true -- split right instead of left +o.splitkeep = "screen" -- stabilize split +o.startofline = false -- don't go to the start of the line when moving to another file +o.swapfile = false -- disable swapfile +o.termguicolors = true -- true colours for better experience +o.wrap = false -- don't wrap lines +o.backupcopy = "yes" -- fix weirdness for stuff that replaces the entire file when hot reloading -o.smarttab = false -- make tab behaviour smarter -o.tabstop = 4 -o.softtabstop = 2 -o.shiftwidth = 2 +o.smarttab = false +o.tabstop = 4 +o.softtabstop = 4 +o.shiftwidth = 4 -o.compatible = false -- disable compatibility with old vi -o.showmatch = true -- show matches while searching for text -o.hlsearch = true -- highlight text that has been searched -o.incsearch = true -- incramentally search -o.shiftwidth = 4 -o.autoindent = true -o.wildmode = "longest,list" -o.mouse = "v" -o.mouse = "a" -o.clipboard = "unnamedplus" -- use system clipboard -o.ttyfast = true -o.cursorline = true -o.splitbelow = true -o.autochdir = true -o.signcolumn="yes:1" -o.shell = "/bin/zsh" -o.splitright = false +o.compatible = false -- disable compatibility with old vi +o.showmatch = true -- show matches while searching for text +o.hlsearch = true -- highlight text that has been searched +o.incsearch = true -- incramentally search +o.shiftwidth = 4 +o.autoindent = true +o.wildmode = "longest,list" +o.mouse = "v" +o.mouse = "a" +o.clipboard = "unnamedplus" -- use system clipboard +o.ttyfast = true +o.cursorline = true +o.splitbelow = true +o.autochdir = true +o.signcolumn ="yes:1" +o.shell = "/bin/zsh" +o.splitright = false -vim.api.nvim_command("filetype off") -vim.api.nvim_command("let &runtimepath.=',~/.vim/bundle/neoterm'") -vim.api.nvim_command("filetype plugin on") -vim.api.nvim_command("filetype plugin indent on") -vim.api.nvim_command("syntax on") +-- vim.api.nvim_command("filetype off") +-- vim.api.nvim_command("let &runtimepath.=',~/.vim/bundle/neoterm'") +-- vim.api.nvim_command("filetype plugin on") +-- vim.api.nvim_command("filetype plugin indent on") +-- vim.api.nvim_command("syntax on") - - --- disable builtin plugins as they are not needed +-- disable builtin plugins as they are not needed local disabled_built_ins = { - "netrw", - "netrwPlugin", - "netrwSettings", - "netrwFileHandlers", - "gzip", - "zip", - "zipPlugin", - "tar", - "tarPlugin", - "getscript", - "getscriptPlugin", - "vimball", - "vimballPlugin", - "2html_plugin", - "logipat", - "rrhelper", - "spellfile_plugin", - "matchit" + "netrw", + "netrwPlugin", + "netrwSettings", + "netrwFileHandlers", + "gzip", + "zip", + "zipPlugin", + "tar", + "tarPlugin", + "getscript", + "getscriptPlugin", + "vimball", + "vimballPlugin", + "2html_plugin", + "logipat", + "rrhelper", + "spellfile_plugin", + "matchit" } for _, plugin in pairs(disabled_built_ins) do - vim.g["loaded_" .. plugin] = 1 + vim.g["loaded_" .. plugin] = 1 end diff --git a/lua/plugins/lualine.lua b/lua/plugins/lualine.lua index 333f548..f36f783 100755 --- a/lua/plugins/lualine.lua +++ b/lua/plugins/lualine.lua @@ -3,224 +3,274 @@ -- Credit: glepnir local lualine = require('lualine') --- Color table for highlights --- stylua: ignore local colors = { - bg = '#202328', - fg = '#bbc2cf', - yellow = '#ECBE7B', - cyan = '#008080', - darkblue = '#081633', - green = '#98be65', - orange = '#FF8800', - violet = '#a9a1e1', - magenta = '#c678dd', - blue = '#51afef', - red = '#ec5f67', + bg = '#202328', + fg = '#bbc2cf', + yellow = '#ECBE7B', + cyan = '#008080', + darkblue = '#081633', + green = '#98be65', + orange = '#FF8800', + violet = '#a9a1e1', + magenta = '#c678dd', + blue = '#51afef', + red = '#ec5f67', } + local conditions = { - buffer_not_empty = function() - return vim.fn.empty(vim.fn.expand('%:t')) ~= 1 - end, - hide_in_width = function() - return vim.fn.winwidth(0) > 80 - end, - check_git_workspace = function() - local filepath = vim.fn.expand('%:p:h') - local gitdir = vim.fn.finddir('.git', filepath .. ';') - return gitdir and #gitdir > 0 and #gitdir < #filepath - end, + buffer_not_empty = function() + return vim.fn.empty(vim.fn.expand('%:t')) ~= 1 + end, + hide_in_width = function() + return vim.fn.winwidth(0) > 80 + end, + check_git_workspace = function() + local filepath = vim.fn.expand('%:p:h') + local gitdir = vim.fn.finddir('.git', filepath .. ';') + return gitdir and #gitdir > 0 and #gitdir < #filepath + end, } -- Config local config = { - options = { - -- Disable sections and component separators - component_separators = '', - section_separators = '', - theme = { - -- We are going to use lualine_c an lualine_x as left and - -- right section. Both are highlighted by c theme . So we - -- are just setting default looks o statusline - normal = { c = { fg = colors.fg, bg = colors.bg } }, - inactive = { c = { fg = colors.fg, bg = colors.bg } }, - }, - }, + options = { + component_separators = '', + section_separators = '', + theme = { + + normal = { + c = { + fg = colors.fg, + bg = colors.bg + } + }, + + inactive = { + c = { + fg = colors.fg, + bg = colors.bg + } + }, + + }, + }, - sections = { - -- these are to remove the defaults - lualine_a = {}, - lualine_b = {}, - lualine_y = {}, - lualine_z = {}, - -- These will be filled later - lualine_c = {}, - lualine_x = {}, - }, - inactive_sections = { - -- these are to remove the defaults - lualine_a = {}, - lualine_b = {}, - lualine_y = {}, - lualine_z = {}, - lualine_c = {}, - lualine_x = {}, - }, + sections = { + lualine_a = {}, + lualine_b = {}, + lualine_y = {}, + lualine_z = {}, + lualine_c = {}, + lualine_x = {}, + }, + inactive_sections = { + lualine_a = {}, + lualine_b = {}, + lualine_y = {}, + lualine_z = {}, + lualine_c = {}, + lualine_x = {}, + }, } --- Inserts a component in lualine_c at left section local function ins_left(component) - table.insert(config.sections.lualine_c, component) + table.insert(config.sections.lualine_c, component) end --- Inserts a component in lualine_x at right section local function ins_right(component) - table.insert(config.sections.lualine_x, component) + table.insert(config.sections.lualine_x, component) end ins_left { - function() - return '▊' - end, - color = { fg = colors.blue }, -- Sets highlighting of component - padding = { left = 0, right = 1 }, -- We don't need space before this + function() + return '▊' + end, + + color = { fg = colors.blue }, + + padding = { + left = 0, + right = 1 + }, } ins_left { - -- mode component - function() - return '' - end, - color = function() - -- auto change color according to neovims mode - local mode_color = { - n = colors.blue, - i = colors.red, - v = colors.green, - [''] = colors.orange, - V = colors.green, - c = colors.magenta, - no = colors.red, - s = colors.orange, - S = colors.orange, - [''] = colors.orange, - ic = colors.yellow, - R = colors.violet, - Rv = colors.violet, - cv = colors.red, - ce = colors.red, - r = colors.cyan, - rm = colors.cyan, - ['r?'] = colors.cyan, - ['!'] = colors.red, - t = colors.red, - } - return { fg = mode_color[vim.fn.mode()] } - end, - padding = { right = 1 }, + function() + return '' + --return '' + -- local mode_string = { + -- n = 'Normal', + -- i = 'Insert', + -- v = 'Visual', + -- V = 'Visual line', + -- c = 'Change', + -- no = 'dunno1', + -- s = 'dunno2', + -- S = 'dunno3', + -- [''] = 'dunno4', + -- ic = 'dunno5', + -- R = 'dunno6', + -- Rv = 'dunno7', + -- cv = 'dunno8', + -- ce = 'dunno9', + -- r = 'dunno10', + -- rm = 'dunno11', + -- ['r?'] = 'dunno12', + -- ['!'] = 'dunno13', + -- t = 'dunno14', + -- } + -- return mode_string[vim.fn.mode()] + -- + end, + color = function() + local mode_color = { + n = colors.blue, + i = colors.red, + v = colors.green, + [''] = colors.orange, + V = colors.green, + c = colors.magenta, + no = colors.red, + s = colors.orange, + S = colors.orange, + [''] = colors.orange, + ic = colors.yellow, + R = colors.violet, + Rv = colors.violet, + cv = colors.red, + ce = colors.red, + r = colors.cyan, + rm = colors.cyan, + ['r?'] = colors.cyan, + ['!'] = colors.red, + t = colors.red, + } + return { fg = mode_color[vim.fn.mode()] } + end, + padding = { right = 1 }, } ins_left { - 'branch', - icon = '', - color = { fg = colors.violet, gui = 'bold' }, + 'branch', + icon = '', + + color = { + fg = colors.violet, + gui = 'bold' + }, } ins_left { - 'diff', - -- Is it me or the symbol for modified us really weird - symbols = { added = ' ', modified = '󰝤 ', removed = ' ' }, - diff_color = { - added = { fg = colors.green }, - modified = { fg = colors.orange }, - removed = { fg = colors.red }, - }, - cond = conditions.hide_in_width, + 'diff', + + symbols = { + added = ' ', + modified = ' ', + removed = ' ' + }, + + diff_color = { + added = { fg = colors.green }, + modified = { fg = colors.orange }, + removed = { fg = colors.red }, + }, + + cond = conditions.hide_in_width, } ins_left { - 'diagnostics', - sources = { 'nvim_diagnostic' }, - symbols = { error = ' ', warn = ' ', info = ' ' }, - diagnostics_color = { - color_error = { fg = colors.red }, - color_warn = { fg = colors.yellow }, - color_info = { fg = colors.cyan }, - }, + 'diagnostics', + + sources = { 'nvim_diagnostic' }, + + symbols = { + error = ' ', + warn = ' ', + info = ' ' + }, + + diagnostics_color = { + color_error = { fg = colors.red }, + color_warn = { fg = colors.yellow }, + color_info = { fg = colors.cyan }, + }, } --- Insert mid section. You can make any number of sections in neovim :) --- for lualine it's any number greater then 2 ins_left { - function() - return '%=' - end, + function() + return '%=' + end, } - ins_left { - 'filename', - cond = conditions.buffer_not_empty, - color = { fg = colors.magenta, gui = 'bold' }, + 'filename', + cond = conditions.buffer_not_empty, + + color = { + fg = colors.magenta, + gui = 'bold' + }, } - - ins_right { - -- filesize component - 'filesize', - cond = conditions.buffer_not_empty, + 'filetype', + colored = true, + icon_only = false, + icon = { align = 'right' } } ins_right { - 'progress', - color = { - fg = colors.fg, - gui = 'bold' - } + 'progress', + + color = { + fg = colors.fg, + gui = 'bold' + } } - - --- Add components to right sections -ins_right { - 'o:encoding', -- option component same as &encoding in viml - fmt = string.upper, -- I'm not sure why it's upper case either ;) - cond = conditions.hide_in_width, - color = { fg = colors.green, gui = 'bold' }, -} - ins_right { - 'fileformat', - fmt = string.upper, - icons_enabled = false, -- I think icons are cool but Eviline doesn't have them. sigh - color = { - fg = colors.green, - gui = 'bold' - }, + 'o:encoding', + + fmt = string.upper, + cond = conditions.hide_in_width, + + color = { + fg = colors.green, + gui = 'bold' + }, } + ins_right { - function() - return '▊' - end, - color = { - fg = colors.blue - }, - padding = { - left = 1 - }, + 'fileformat', + + fmt = string.upper, + icons_enabled = false, + + color = { + fg = colors.green, + gui = 'bold' + }, +} + + +ins_right { + function() + return '▊' + end, + + color = { fg = colors.blue }, + padding = { left = 1 }, } --- Now don't forget to initialize lualine lualine.setup(config) diff --git a/lua/plugins/wilder.lua b/lua/plugins/wilder.lua index b906f61..5c7e58b 100755 --- a/lua/plugins/wilder.lua +++ b/lua/plugins/wilder.lua @@ -1,28 +1,28 @@ local wilder = require('wilder') -wilder.setup({modes = {':', '/', '?'}}) - +wilder.setup({ + modes = {':', '/', '?'} +}) wilder.set_option('renderer', wilder.renderer_mux({ - [':'] = wilder.popupmenu_renderer({ - highlighter = wilder.basic_highlighter(), - left = {' ', wilder.popupmenu_devicons()}, - right = {' ', wilder.popupmenu_scrollbar()}, - }), - ['/'] = wilder.wildmenu_renderer({ - highlighter = wilder.basic_highlighter(), - left = {' ', wilder.popupmenu_devicons()}, - right = {' ', wilder.popupmenu_scrollbar()}, - }), + [':'] = wilder.popupmenu_renderer({ + highlighter = wilder.basic_highlighter(), + left = {' ', wilder.popupmenu_devicons()}, + right = {' ', wilder.popupmenu_scrollbar()}, + }), + ['/'] = wilder.wildmenu_renderer({ + highlighter = wilder.basic_highlighter(), + left = {' ', wilder.popupmenu_devicons()}, + right = {' ', wilder.popupmenu_scrollbar()}, + }), })) - wilder.set_option('renderer', wilder.popupmenu_renderer({ - highlighter = wilder.basic_highlighter(), - left = {' ', wilder.popupmenu_devicons()}, - right = {' ', wilder.popupmenu_scrollbar()}, - max_height = '20%', - min_width = '100%' + highlighter = wilder.basic_highlighter(), + left = {' ', wilder.popupmenu_devicons()}, + right = {' ', wilder.popupmenu_scrollbar()}, + max_height = '20%', + min_width = '100%' }))