change stuff i guess

This commit is contained in:
Јован Ђокић-Шумарац 2024-07-12 11:57:47 +02:00
parent 65128a7629
commit bfd59534b4
7 changed files with 317 additions and 259 deletions

View file

@ -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 -- Setup Lazy.nvim and plugins
require("plugins") require("plugins")
@ -15,8 +26,6 @@ require("plugins")
require("options") require("options")
if vim.g.neovide then if vim.g.neovide then
vim.o.guifont = "FiraCode Nerd Font:h14" vim.o.guifont = "FiraCode Nerd Font:h14"
vim.g.neovide_scale_factor = 1.0 vim.g.neovide_scale_factor = 1.0

View file

@ -1,7 +1 @@
-- vim.opt.termguicolors = true
-- vim.opt.background = "dark"
-- vim.g.onedark_config = { style = 'darker' }
vim.cmd("colorscheme carbonfox") vim.cmd("colorscheme carbonfox")
-- vim.opt.background = "dark" -- set this to dark or light
-- vim.cmd.colorscheme "oxocarbon"

View file

@ -1,3 +1,3 @@
require("options.colors") require("options.colors")
require("options.opts")
require("options.keybind") require("options.keybind")
require("options.opts")

View file

@ -12,10 +12,17 @@ map('n', '<C-space>', '<cmd>Telescope buffers<CR>', options)
-- slef explanitory -- slef explanitory
map("n", "<leader>tw", "<cmd>lua MiniTrailspace.trim()<CR>", options) map("n", "<leader>tw", "<cmd>lua MiniTrailspace.trim()<CR>", options)
vim.keymap.set("n", "<leader>f", function() vim.keymap.set("n", "<leader>fo", function()
require("oil").open() require("oil").open()
end) end)
map("n", "<leader>ff", "<cmd>Telescope find_files<CR>", options)
map("n", "<leader>fs", "<cmd>Telescope current_buffer_fuzzy_find<CR>", options)
map("n", "<leader>gs", "<cmd>Telescope git_status<CR>", options)
map("n", "<leader>gg", "<cmd>Telescope live_grep<CR>", options)
-- remap keys so that they dont skip camelCase -- remap keys so that they dont skip camelCase
map("n", "w", "<Plug>CamelCaseMotion_w", cmd_options) map("n", "w", "<Plug>CamelCaseMotion_w", cmd_options)
map("n", "b", "<Plug>CamelCaseMotion_b", cmd_options) map("n", "b", "<Plug>CamelCaseMotion_b", cmd_options)

View file

@ -1,74 +1,72 @@
local o = vim.opt local o = vim.opt
o.number = true -- enable line number o.number = true -- enable line number
o.relativenumber = true -- enable relative line number o.relativenumber = true -- enable relative line number
o.undofile = true -- persistent undo o.undofile = true -- persistent undo
o.backup = false -- disable backup o.backup = false -- disable backup
o.autowrite = true -- auto write buffer when it's not focused o.autowrite = true -- auto write buffer when it's not focused
o.ignorecase = true -- case insensitive on search.. o.ignorecase = true -- case insensitive on search..
o.list = true -- display listchars o.list = true -- display listchars
o.smartindent = true -- smarter indentation o.smartindent = true -- smarter indentation
o.splitright = true -- split right instead of left o.splitright = true -- split right instead of left
o.splitkeep = "screen" -- stabilize split o.splitkeep = "screen" -- stabilize split
o.startofline = false -- don't go to the start of the line when moving to another file o.startofline = false -- don't go to the start of the line when moving to another file
o.swapfile = false -- disable swapfile o.swapfile = false -- disable swapfile
o.termguicolors = true -- true colours for better experience o.termguicolors = true -- true colours for better experience
o.wrap = false -- don't wrap lines o.wrap = false -- don't wrap lines
o.backupcopy = "yes" -- fix weirdness for stuff that replaces the entire file when hot reloading o.backupcopy = "yes" -- fix weirdness for stuff that replaces the entire file when hot reloading
o.smarttab = false -- make tab behaviour smarter o.smarttab = false
o.tabstop = 4 o.tabstop = 4
o.softtabstop = 2 o.softtabstop = 4
o.shiftwidth = 2 o.shiftwidth = 4
o.compatible = false -- disable compatibility with old vi o.compatible = false -- disable compatibility with old vi
o.showmatch = true -- show matches while searching for text o.showmatch = true -- show matches while searching for text
o.hlsearch = true -- highlight text that has been searched o.hlsearch = true -- highlight text that has been searched
o.incsearch = true -- incramentally search o.incsearch = true -- incramentally search
o.shiftwidth = 4 o.shiftwidth = 4
o.autoindent = true o.autoindent = true
o.wildmode = "longest,list" o.wildmode = "longest,list"
o.mouse = "v" o.mouse = "v"
o.mouse = "a" o.mouse = "a"
o.clipboard = "unnamedplus" -- use system clipboard o.clipboard = "unnamedplus" -- use system clipboard
o.ttyfast = true o.ttyfast = true
o.cursorline = true o.cursorline = true
o.splitbelow = true o.splitbelow = true
o.autochdir = true o.autochdir = true
o.signcolumn="yes:1" o.signcolumn ="yes:1"
o.shell = "/bin/zsh" o.shell = "/bin/zsh"
o.splitright = false o.splitright = false
vim.api.nvim_command("filetype off") -- vim.api.nvim_command("filetype off")
vim.api.nvim_command("let &runtimepath.=',~/.vim/bundle/neoterm'") -- vim.api.nvim_command("let &runtimepath.=',~/.vim/bundle/neoterm'")
vim.api.nvim_command("filetype plugin on") -- vim.api.nvim_command("filetype plugin on")
vim.api.nvim_command("filetype plugin indent on") -- vim.api.nvim_command("filetype plugin indent on")
vim.api.nvim_command("syntax 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 = { local disabled_built_ins = {
"netrw", "netrw",
"netrwPlugin", "netrwPlugin",
"netrwSettings", "netrwSettings",
"netrwFileHandlers", "netrwFileHandlers",
"gzip", "gzip",
"zip", "zip",
"zipPlugin", "zipPlugin",
"tar", "tar",
"tarPlugin", "tarPlugin",
"getscript", "getscript",
"getscriptPlugin", "getscriptPlugin",
"vimball", "vimball",
"vimballPlugin", "vimballPlugin",
"2html_plugin", "2html_plugin",
"logipat", "logipat",
"rrhelper", "rrhelper",
"spellfile_plugin", "spellfile_plugin",
"matchit" "matchit"
} }
for _, plugin in pairs(disabled_built_ins) do for _, plugin in pairs(disabled_built_ins) do
vim.g["loaded_" .. plugin] = 1 vim.g["loaded_" .. plugin] = 1
end end

View file

@ -3,224 +3,274 @@
-- Credit: glepnir -- Credit: glepnir
local lualine = require('lualine') local lualine = require('lualine')
-- Color table for highlights
-- stylua: ignore
local colors = { local colors = {
bg = '#202328', bg = '#202328',
fg = '#bbc2cf', fg = '#bbc2cf',
yellow = '#ECBE7B', yellow = '#ECBE7B',
cyan = '#008080', cyan = '#008080',
darkblue = '#081633', darkblue = '#081633',
green = '#98be65', green = '#98be65',
orange = '#FF8800', orange = '#FF8800',
violet = '#a9a1e1', violet = '#a9a1e1',
magenta = '#c678dd', magenta = '#c678dd',
blue = '#51afef', blue = '#51afef',
red = '#ec5f67', red = '#ec5f67',
} }
local conditions = { local conditions = {
buffer_not_empty = function() buffer_not_empty = function()
return vim.fn.empty(vim.fn.expand('%:t')) ~= 1 return vim.fn.empty(vim.fn.expand('%:t')) ~= 1
end, end,
hide_in_width = function() hide_in_width = function()
return vim.fn.winwidth(0) > 80 return vim.fn.winwidth(0) > 80
end, end,
check_git_workspace = function() check_git_workspace = function()
local filepath = vim.fn.expand('%:p:h') local filepath = vim.fn.expand('%:p:h')
local gitdir = vim.fn.finddir('.git', filepath .. ';') local gitdir = vim.fn.finddir('.git', filepath .. ';')
return gitdir and #gitdir > 0 and #gitdir < #filepath return gitdir and #gitdir > 0 and #gitdir < #filepath
end, end,
} }
-- Config -- Config
local config = { local config = {
options = { options = {
-- Disable sections and component separators component_separators = '',
component_separators = '', section_separators = '',
section_separators = '', theme = {
theme = {
-- We are going to use lualine_c an lualine_x as left and normal = {
-- right section. Both are highlighted by c theme . So we c = {
-- are just setting default looks o statusline fg = colors.fg,
normal = { c = { fg = colors.fg, bg = colors.bg } }, bg = colors.bg
inactive = { c = { fg = colors.fg, bg = colors.bg } }, }
}, },
},
inactive = {
c = {
fg = colors.fg,
bg = colors.bg
}
},
},
},
sections = { sections = {
-- these are to remove the defaults lualine_a = {},
lualine_a = {}, lualine_b = {},
lualine_b = {}, lualine_y = {},
lualine_y = {}, lualine_z = {},
lualine_z = {}, lualine_c = {},
-- These will be filled later lualine_x = {},
lualine_c = {}, },
lualine_x = {}, inactive_sections = {
}, lualine_a = {},
inactive_sections = { lualine_b = {},
-- these are to remove the defaults lualine_y = {},
lualine_a = {}, lualine_z = {},
lualine_b = {}, lualine_c = {},
lualine_y = {}, lualine_x = {},
lualine_z = {}, },
lualine_c = {},
lualine_x = {},
},
} }
-- Inserts a component in lualine_c at left section
local function ins_left(component) local function ins_left(component)
table.insert(config.sections.lualine_c, component) table.insert(config.sections.lualine_c, component)
end end
-- Inserts a component in lualine_x at right section
local function ins_right(component) local function ins_right(component)
table.insert(config.sections.lualine_x, component) table.insert(config.sections.lualine_x, component)
end end
ins_left { ins_left {
function() function()
return '' return ''
end, end,
color = { fg = colors.blue }, -- Sets highlighting of component
padding = { left = 0, right = 1 }, -- We don't need space before this color = { fg = colors.blue },
padding = {
left = 0,
right = 1
},
} }
ins_left { ins_left {
-- mode component function()
function() return ''
return '' --return ''
end, -- local mode_string = {
color = function() -- n = 'Normal',
-- auto change color according to neovims mode -- i = 'Insert',
local mode_color = { -- v = 'Visual',
n = colors.blue, -- V = 'Visual line',
i = colors.red, -- c = 'Change',
v = colors.green, -- no = 'dunno1',
[''] = colors.orange, -- s = 'dunno2',
V = colors.green, -- S = 'dunno3',
c = colors.magenta, -- [''] = 'dunno4',
no = colors.red, -- ic = 'dunno5',
s = colors.orange, -- R = 'dunno6',
S = colors.orange, -- Rv = 'dunno7',
[''] = colors.orange, -- cv = 'dunno8',
ic = colors.yellow, -- ce = 'dunno9',
R = colors.violet, -- r = 'dunno10',
Rv = colors.violet, -- rm = 'dunno11',
cv = colors.red, -- ['r?'] = 'dunno12',
ce = colors.red, -- ['!'] = 'dunno13',
r = colors.cyan, -- t = 'dunno14',
rm = colors.cyan, -- }
['r?'] = colors.cyan, -- return mode_string[vim.fn.mode()]
['!'] = colors.red, --
t = colors.red, end,
} color = function()
return { fg = mode_color[vim.fn.mode()] } local mode_color = {
end, n = colors.blue,
padding = { right = 1 }, 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 { ins_left {
'branch', 'branch',
icon = '', icon = '',
color = { fg = colors.violet, gui = 'bold' },
color = {
fg = colors.violet,
gui = 'bold'
},
} }
ins_left { ins_left {
'diff', 'diff',
-- Is it me or the symbol for modified us really weird
symbols = { added = '', modified = '󰝤 ', removed = '' }, symbols = {
diff_color = { added = '',
added = { fg = colors.green }, modified = '',
modified = { fg = colors.orange }, removed = ''
removed = { fg = colors.red }, },
},
cond = conditions.hide_in_width, diff_color = {
added = { fg = colors.green },
modified = { fg = colors.orange },
removed = { fg = colors.red },
},
cond = conditions.hide_in_width,
} }
ins_left { ins_left {
'diagnostics', 'diagnostics',
sources = { 'nvim_diagnostic' },
symbols = { error = '', warn = '', info = '' }, sources = { 'nvim_diagnostic' },
diagnostics_color = {
color_error = { fg = colors.red }, symbols = {
color_warn = { fg = colors.yellow }, error = '',
color_info = { fg = colors.cyan }, 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 { ins_left {
function() function()
return '%=' return '%='
end, end,
} }
ins_left { ins_left {
'filename', 'filename',
cond = conditions.buffer_not_empty, cond = conditions.buffer_not_empty,
color = { fg = colors.magenta, gui = 'bold' },
color = {
fg = colors.magenta,
gui = 'bold'
},
} }
ins_right { ins_right {
-- filesize component 'filetype',
'filesize', colored = true,
cond = conditions.buffer_not_empty, icon_only = false,
icon = { align = 'right' }
} }
ins_right { ins_right {
'progress', 'progress',
color = {
fg = colors.fg, color = {
gui = 'bold' 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 { ins_right {
'fileformat', 'o:encoding',
fmt = string.upper,
icons_enabled = false, -- I think icons are cool but Eviline doesn't have them. sigh fmt = string.upper,
color = { cond = conditions.hide_in_width,
fg = colors.green,
gui = 'bold' color = {
}, fg = colors.green,
gui = 'bold'
},
} }
ins_right { ins_right {
function() 'fileformat',
return ''
end, fmt = string.upper,
color = { icons_enabled = false,
fg = colors.blue
}, color = {
padding = { fg = colors.green,
left = 1 gui = 'bold'
}, },
}
ins_right {
function()
return ''
end,
color = { fg = colors.blue },
padding = { left = 1 },
} }
-- Now don't forget to initialize lualine
lualine.setup(config) lualine.setup(config)

View file

@ -1,28 +1,28 @@
local wilder = require('wilder') local wilder = require('wilder')
wilder.setup({modes = {':', '/', '?'}})
wilder.setup({
modes = {':', '/', '?'}
})
wilder.set_option('renderer', wilder.renderer_mux({ wilder.set_option('renderer', wilder.renderer_mux({
[':'] = wilder.popupmenu_renderer({ [':'] = wilder.popupmenu_renderer({
highlighter = wilder.basic_highlighter(), highlighter = wilder.basic_highlighter(),
left = {' ', wilder.popupmenu_devicons()}, left = {' ', wilder.popupmenu_devicons()},
right = {' ', wilder.popupmenu_scrollbar()}, right = {' ', wilder.popupmenu_scrollbar()},
}), }),
['/'] = wilder.wildmenu_renderer({ ['/'] = wilder.wildmenu_renderer({
highlighter = wilder.basic_highlighter(), highlighter = wilder.basic_highlighter(),
left = {' ', wilder.popupmenu_devicons()}, left = {' ', wilder.popupmenu_devicons()},
right = {' ', wilder.popupmenu_scrollbar()}, right = {' ', wilder.popupmenu_scrollbar()},
}), }),
})) }))
wilder.set_option('renderer', wilder.popupmenu_renderer({ wilder.set_option('renderer', wilder.popupmenu_renderer({
highlighter = wilder.basic_highlighter(), highlighter = wilder.basic_highlighter(),
left = {' ', wilder.popupmenu_devicons()}, left = {' ', wilder.popupmenu_devicons()},
right = {' ', wilder.popupmenu_scrollbar()}, right = {' ', wilder.popupmenu_scrollbar()},
max_height = '20%', max_height = '20%',
min_width = '100%' min_width = '100%'
})) }))