feat: add post-configuration functions for enhanced functionality

This commit is contained in:
2024-11-03 00:59:50 -04:00
parent e3b92f4714
commit a211c67e03
2 changed files with 65 additions and 60 deletions
+56 -60
View File
@@ -9,69 +9,69 @@
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ KEYS ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ KEYS ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- Set the mapleader variable to the space key -- Set the mapleader variable to the space key
vim.g.mapleader = " " ---@type string Options: <leader> vim.g.mapleader = " " ---@type string Options: <leader>
-- Set the maplocalleader variable to the space key -- Set the maplocalleader variable to the space key
vim.g.maplocalleader = "\\" ---@type string Options: <localleader> vim.g.maplocalleader = "\\" ---@type string Options: <localleader>
-- Set the timeout length for key combinations -- Set the timeout length for key combinations
vim.g.timeoutlen = 1000 ---@type integer Options: <ms> vim.g.timeoutlen = 1000 ---@type integer Options: <ms>
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ LSP ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ LSP ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- We don't need perl -- We don't need perl
vim.g.loaded_perl_provider = 0 ---@type integer Options: <0|1> vim.g.loaded_perl_provider = 0 ---@type integer Options: <0|1>
-- or ruby -- or ruby
vim.g.loaded_ruby_provider = 0 ---@type integer Options: <0|1> vim.g.loaded_ruby_provider = 0 ---@type integer Options: <0|1>
-- Prefer basedpyright for python -- Prefer basedpyright for python
vim.g.lazyvim_python_lsp = "pyright" ---@type string Options: [python lsp] vim.g.lazyvim_python_lsp = "pyright" ---@type string Options: [python lsp]
-- Open all folds by default -- Open all folds by default
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━ FORMAT AND SAVE ━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━ FORMAT AND SAVE ━━━━━━━━━━━━━━━━━━━━━━━━━━━
vim.opt.foldlevel = 99 ---@type integer Options: <0-99> vim.opt.foldlevel = 99 ---@type integer Options: <0-99>
-- Auto-format -- Auto-format
vim.g.autoformat = true ---@type boolean Options: <true|false> vim.g.autoformat = true ---@type boolean Options: <true|false>
-- Auto-save -- Auto-save
vim.g.autosave = true ---@type boolean Options: <true|false> vim.g.autosave = true ---@type boolean Options: <true|false>
-- Enable encouraging feedback -- Enable encouraging feedback
vim.g.encourage_me = true ---@type boolean Options: <true|false> vim.g.encourage_me = true ---@type boolean Options: <true|false>
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ MISCELLANEOUS ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ MISCELLANEOUS ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- Use WakaTime for code stats -- Use WakaTime for code stats
vim.g.usewakatime = true ---@type boolean Options: <true|false> vim.g.usewakatime = true ---@type boolean Options: <true|false>
-- Allow music controls and stats -- Allow music controls and stats
vim.g.usemusic = false ---@type boolean Options: <true|false> vim.g.usemusic = false ---@type boolean Options: <true|false>
-- Allow discord presence -- Allow discord presence
vim.g.usediscord = false ---@type boolean Options: <true|false> vim.g.usediscord = false ---@type boolean Options: <true|false>
-- Enable HardTime on startup -- Enable HardTime on startup
vim.g.usehardtime = false ---@type boolean Options: <true|false> vim.g.usehardtime = false ---@type boolean Options: <true|false>
-- Enable Image plugin on compatible terminals -- Enable Image plugin on compatible terminals
vim.g.useimage = true ---@type boolean Options: <true|false> vim.g.useimage = true ---@type boolean Options: <true|false>
-- Enable LazyGit plugin -- Enable LazyGit plugin
vim.g.uselazygit = true ---@type boolean Options: <true|false> vim.g.uselazygit = true ---@type boolean Options: <true|false>
-- Ignore missing lazy.nvim plugin manager -- Ignore missing lazy.nvim plugin manager
vim.g.ignore_no_lazy = false ---@type boolean Options: <true|false> vim.g.ignore_no_lazy = false ---@type boolean Options: <true|false>
-- Enable codesnap for code screenshots -- Enable codesnap for code screenshots
vim.g.codesnap = true ---@type boolean Options: <true|false> vim.g.codesnap = true ---@type boolean Options: <true|false>
-- Enable Auto-hiding cursorline -- Enable Auto-hiding cursorline
vim.g.auto_cursorline = false ---@type boolean Options: <true|false> vim.g.auto_cursorline = false ---@type boolean Options: <true|false>
-- Enable Smart Scrolloff -- Enable Smart Scrolloff
vim.g.smart_scrolloff = false ---@type boolean Options: <true|false> vim.g.smart_scrolloff = false ---@type boolean Options: <true|false>
-- Enable Dead Column -- Enable Dead Column
vim.g.dead_column = false ---@type boolean Options: <true|false> vim.g.dead_column = false ---@type boolean Options: <true|false>
-- Animate blinky cursor -- Animate blinky cursor
vim.g.blinky = true ---@type boolean Options: <true|false> vim.g.blinky = true ---@type boolean Options: <true|false>
-- Use experimental cmp performance fork -- Use experimental cmp performance fork
vim.g.cmp_performance_enabled = true ---@type boolean Options: <true|false> vim.g.cmp_performance_enabled = true ---@type boolean Options: <true|false>
-- Use dev mode for rootiest plugins -- Use dev mode for rootiest plugins
vim.g.rootiest_dev = false ---@type boolean Options: <true|false> vim.g.rootiest_dev = false ---@type boolean Options: <true|false>
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ PICKER ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ PICKER ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- Select default picker -- Select default picker
vim.g.lazyvim_picker = "fzf" ---@type string Options: [picker] vim.g.lazyvim_picker = "fzf" ---@type string Options: [picker]
-- ╭───────────────────────────╮  auto -- ╭───────────────────────────╮  auto
-- │ │  telescope -- │ │  telescope
-- │ Pickers: │  fzf -- │ Pickers: │  fzf
@@ -81,14 +81,14 @@ vim.g.lazyvim_picker = "fzf" ---@type string Options: [picker]
-- ╰───────────────────────────╯ -- ╰───────────────────────────╯
-- Use the Telescope plugin -- Use the Telescope plugin
vim.g.use_telescope = true ---@type boolean Options: <true|false> vim.g.use_telescope = true ---@type boolean Options: <true|false>
-- Use the Fzf plugin -- Use the Fzf plugin
vim.g.use_fzf_lua = true ---@type boolean Options: <true|false> vim.g.use_fzf_lua = true ---@type boolean Options: <true|false>
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ AI TOOL ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ AI TOOL ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- Configure the AI completion provider -- Configure the AI completion provider
vim.g.aitool = "neocodeium" ---@type string Options: [ai tool] vim.g.aitool = "neocodeium" ---@type string Options: [ai tool]
-- ╭───────────────────────────╮  neocodeium -- ╭───────────────────────────╮  neocodeium
-- │ │  codeium -- │ │  codeium
-- │ AI Tools: │  copilot -- │ AI Tools: │  copilot
@@ -97,15 +97,15 @@ vim.g.aitool = "neocodeium" ---@type string Options: [ai tool]
-- │ │  ollama -- │ │  ollama
-- ╰───────────────────────────╯  none -- ╰───────────────────────────╯  none
-- Enable ChatGPT plugin for AI chat -- Enable ChatGPT plugin for AI chat
vim.g.usechatgpt = false ---@type boolean Options: <true|false> vim.g.usechatgpt = false ---@type boolean Options: <true|false>
-- Enable Avante plugin for AI chat -- Enable Avante plugin for AI chat
vim.g.useavante = true ---@type boolean Options: <true|false> vim.g.useavante = true ---@type boolean Options: <true|false>
-- Enable GP plugin for AI chat -- Enable GP plugin for AI chat
vim.g.usegpai = false ---@type boolean Options: <true|false> vim.g.usegpai = false ---@type boolean Options: <true|false>
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ STATUS COLUMN ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━ STATUS COLUMN ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
vim.g.statuscolumn = "native" ---@type string Options: [statuscolumn] vim.g.statuscolumn = "native" ---@type string Options: [statuscolumn]
-- ╭───────────────────────────╮  barsNlines -- ╭───────────────────────────╮  barsNlines
-- │ │  native -- │ │  native
-- │ Status Columns: │ -- │ Status Columns: │
@@ -116,7 +116,7 @@ vim.g.statuscolumn = "native" ---@type string Options: [statuscolumn]
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ BUFFER LINE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ BUFFER LINE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
vim.g.tabline = "none" ---@type string Options: [tabline] vim.g.tabline = "none" ---@type string Options: [tabline]
-- ╭───────────────────────────╮  bufferline -- ╭───────────────────────────╮  bufferline
-- │ │  barsNlines -- │ │  barsNlines
-- │ Tab Lines: │  none -- │ Tab Lines: │  none
@@ -127,7 +127,7 @@ vim.g.tabline = "none" ---@type string Options: [tabline]
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ DASHBOARD ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ DASHBOARD ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
vim.g.dashboard = "alpha" ---@type string Options: [dashboard] vim.g.dashboard = "alpha" ---@type string Options: [dashboard]
-- ╭───────────────────────────╮  alpha -- ╭───────────────────────────╮  alpha
-- │ │  nvim-dashboard -- │ │  nvim-dashboard
-- │ Dashboards: │  none -- │ Dashboards: │  none
@@ -137,13 +137,13 @@ vim.g.dashboard = "alpha" ---@type string Options: [dashboard]
-- ╰───────────────────────────╯ -- ╰───────────────────────────╯
-- Dashboard logo file -- Dashboard logo file
vim.g.dash_logo = "neovim.txt" ---@type string Options: [dash logo] vim.g.dash_logo = "neovim.txt" ---@type string Options: [dash logo]
-- Dashboard header color -- Dashboard header color
vim.g.DashboardHeaderColor = "#88fc9a"---@type string Options: [hex color] vim.g.DashboardHeaderColor = "#88fc9a" ---@type string Options: [hex color]
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ STATUS LINE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ STATUS LINE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
vim.g.statusline = "lualine" ---@type string Options: [statusline] vim.g.statusline = "lualine" ---@type string Options: [statusline]
-- ╭───────────────────────────╮  lualine -- ╭───────────────────────────╮  lualine
-- │ │  heirline -- │ │  heirline
-- │ Status Lines: │  barsNlines -- │ Status Lines: │  barsNlines
@@ -153,13 +153,13 @@ vim.g.statusline = "lualine" ---@type string Options: [statusline]
-- ╰───────────────────────────╯ -- ╰───────────────────────────╯
-- Click git components on statusline to open LazyGit -- Click git components on statusline to open LazyGit
vim.g.statusline_clickable_git = false ---@type boolean Options: <true|false> vim.g.statusline_clickable_git = false ---@type boolean Options: <true|false>
-- Show wakatime stats on statusline -- Show wakatime stats on statusline
vim.g.stats_wakatime = true ---@type boolean Options: <true|false> vim.g.stats_wakatime = true ---@type boolean Options: <true|false>
-- Show music stats on statusline -- Show music stats on statusline
vim.g.stats_music = true ---@type boolean Options: <true|false> vim.g.stats_music = true ---@type boolean Options: <true|false>
-- Ignored player sources for music stats -- Ignored player sources for music stats
vim.g.stats_ignored_players = { ---@type string[] Options: [ignored players] vim.g.stats_ignored_players = { ---@type string[] Options: [ignored players]
"chromium", "chromium",
"firefox", "firefox",
"kdeconnect", "kdeconnect",
@@ -171,11 +171,13 @@ vim.g.stats_ignored_players = { ---@type string[] Options: [ignored playe
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ COLOR ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ COLOR ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- Background color -- Background color
vim.o.background = "dark" ---@type string Options: <dark|light> vim.o.background = "dark" ---@type string Options: <dark|light>
-- Disable Transparency -- Disable Transparency
vim.g.disable_transparency = true ---@type boolean Options: <true|false> vim.g.disable_transparency = true ---@type boolean Options: <true|false>
-- Auto Dark-mode
vim.g.autodarkmode = true ---@type boolean Options: <true|false>
-- Set colorcolumn -- Set colorcolumn
--vim.opt.colorcolumn = "120" ---@type string|table Options: [column] --vim.opt.colorcolumn = "120" ---@type string|table Options: [column]
-- ━━━━━━━━━━━━━━━━━━━━━━━━━ TABS AND INDENTATION ━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━ TABS AND INDENTATION ━━━━━━━━━━━━━━━━━━━━━━━━
@@ -187,11 +189,11 @@ vim.g.disable_transparency = true ---@type boolean Options: <true|false>
-- See: data.types.ibl.char for a list of available characters -- See: data.types.ibl.char for a list of available characters
-- This option can provide multi-character cycling configurations -- This option can provide multi-character cycling configurations
-- Tab characters -- Tab characters
vim.g.tab_char_name = "none" ---@type string Options: [tab char] vim.g.tab_char_name = "none" ---@type string Options: [tab char]
-- Indent characters -- Indent characters
vim.g.indent_char_name = "none" ---@type string Options: [indent char] vim.g.indent_char_name = "none" ---@type string Options: [indent char]
-- Scope characters -- Scope characters
vim.g.scope_char_name = "scope" ---@type string Options: [scope char] vim.g.scope_char_name = "scope" ---@type string Options: [scope char]
-- ──────────────── [2] Choose a specific character ──────────────── -- ──────────────── [2] Choose a specific character ────────────────
-- Define a character to be used in the whitespace to represent tabs/indents -- Define a character to be used in the whitespace to represent tabs/indents
@@ -199,24 +201,18 @@ vim.g.scope_char_name = "scope" ---@type string Options: [scope char]
-- Multi-character cycling configurations are not possible with this option -- Multi-character cycling configurations are not possible with this option
-- Multi-character strings are not possible with any of the options -- Multi-character strings are not possible with any of the options
-- Tab character -- Tab character
vim.g.tab_char = " " ---@type string Options: [tab char] vim.g.tab_char = " " ---@type string Options: [tab char]
-- -- Indent character -- -- Indent character
vim.g.indent_char = " " ---@type string Options: [indent char] vim.g.indent_char = " " ---@type string Options: [indent char]
-- Scope character -- Scope character
vim.g.scope_char = "" ---@type string Options: [scope char] vim.g.scope_char = "" ---@type string Options: [scope char]
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Completion ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Completion ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- Cmp Window Border -- Cmp Window Border
vim.g.completion_borders = "rounded" ---@type string Options: [round|sharp|flat] vim.g.completion_borders = "rounded" ---@type string Options: [round|sharp|flat]
-- ━━━━━━━━━━━━━━━━━━━━━━━━ Post-Config Functions ━━━━━━━━━━━━━━━━━━━━━━━━
-- Setup blinky cursor
require("utils.blinky").setup(vim.g.blinky)
-- Setup nvim-remote
if vim.fn.executable("nvr") == 1 then
vim.env.GIT_EDITOR = "nvr -cc split --remote-wait +'set bufhidden=wipe'"
end
-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-- Execute post-opts functions
require("config.postopts")
+9
View File
@@ -0,0 +1,9 @@
-- ━━━━━━━━━━━━━━━━━━━━━━━━ Post-Config Functions ━━━━━━━━━━━━━━━━━━━━━━━━
-- Setup blinky cursor
require("utils.blinky").setup(vim.g.blinky)
-- Setup nvim-remote
if vim.fn.executable("nvr") == 1 then
vim.env.GIT_EDITOR = "nvr -cc split --remote-wait +'set bufhidden=wipe'"
end