Skip to content

Commit ea6f2b4

Browse files
committed
feat: Bloated config to hack away at
1 parent 3e7690c commit ea6f2b4

File tree

3 files changed

+248
-32
lines changed

3 files changed

+248
-32
lines changed

init.lua

Lines changed: 180 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ vim.g.mapleader = ' '
9191
vim.g.maplocalleader = ' '
9292

9393
-- Set to true if you have a Nerd Font installed and selected in the terminal
94-
vim.g.have_nerd_font = false
94+
vim.g.have_nerd_font = true
9595

9696
-- [[ Setting options ]]
9797
-- See `:help vim.opt`
@@ -616,18 +616,45 @@ require('lazy').setup({
616616
-- - settings (table): Override the default settings passed when initializing the server.
617617
-- For example, to see the options for `lua_ls`, you could go to: https://luals.github.io/wiki/settings/
618618
local servers = {
619-
-- clangd = {},
620-
-- gopls = {},
621-
-- pyright = {},
622-
-- rust_analyzer = {},
623-
-- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs
619+
-- See `:help lspconfig-all` for a list of all the pre-configured LSPs.
620+
ansiblels = {},
621+
arduino_language_server = {},
622+
awk_ls = {},
623+
bashls = {},
624+
clangd = {},
625+
codeqlls = {},
626+
cssls = {},
627+
docker_compose_language_service = {},
628+
dockerls = {},
629+
eslint = {},
630+
golangci_lint_ls = {},
631+
gradle_ls = {},
632+
graphql = {},
633+
groovyls = {},
634+
helm_ls = {},
635+
html = {},
636+
java_language_server = {},
637+
jinja_lsp = {},
638+
jqls = {},
639+
jsonls = {},
640+
kotlin_language_server = {},
641+
powershell_es = {},
642+
pyright = {},
643+
ruff = {},
644+
rust_analyzer = {},
645+
sqlls = {},
646+
taplo = {},
647+
terraformls = {},
648+
vale_ls = {},
649+
vimls = {},
650+
yamlls = {},
651+
zls = {},
624652
--
625653
-- Some languages (like typescript) have entire language plugins that can be useful:
626654
-- https://github.com/pmizio/typescript-tools.nvim
627655
--
628656
-- But for many setups, the LSP (`ts_ls`) will work just fine
629-
-- ts_ls = {},
630-
--
657+
ts_ls = {},
631658

632659
lua_ls = {
633660
-- cmd = { ... },
@@ -638,8 +665,12 @@ require('lazy').setup({
638665
completion = {
639666
callSnippet = 'Replace',
640667
},
668+
telemetry = { enable = false },
669+
diagnostics = {
670+
disable = { 'missing-fields' }
671+
},
672+
-- workspace = { checkThirdParty = false },
641673
-- You can toggle below to ignore Lua_LS's noisy `missing-fields` warnings
642-
-- diagnostics = { disable = { 'missing-fields' } },
643674
},
644675
},
645676
},
@@ -712,16 +743,35 @@ require('lazy').setup({
712743
}
713744
end,
714745
formatters_by_ft = {
746+
bash = { 'shfmt' },
747+
go = { 'gofmt', 'goimports', 'gotests' },
748+
hcl = { 'tofu_fmt' },
715749
lua = { 'stylua' },
750+
markdown = { 'markdownlint' },
751+
python = { 'ruff_format', 'ruff_fix' },
752+
rust = { 'rustfmt', lsp_format = 'fallback' },
753+
sh = { 'shfmt' },
754+
terraform = { 'tofu_fmt' },
755+
tofu = { 'tofu_fmt' },
756+
xml = { 'xmlformatter' },
757+
zsh = { 'shfmt' },
716758
-- Conform can also run multiple formatters sequentially
717759
-- python = { "isort", "black" },
718760
--
719761
-- You can use 'stop_after_first' to run the first available formatter from the list
720-
-- javascript = { "prettierd", "prettier", stop_after_first = true },
762+
javascript = { "prettierd" }, -- "prettier", stop_after_first = true },
763+
typescript = { 'prettierd' }, -- 'prettier', stop_after_first = true },
764+
markdown = { 'prettierd' }, -- 'prettier', stop_after_first = true },
765+
json = { 'prettierd' }, -- 'prettier', stop_after_first = true },
766+
yaml = { 'prettierd', 'yamlfmt' }, -- 'prettier', stop_after_first = true },
767+
},
768+
format_on_save = {
769+
lsp_fallback = true,
770+
async = true,
771+
timeout_ms = 1000,
721772
},
722773
},
723774
},
724-
725775
{ -- Autocompletion
726776
'hrsh7th/nvim-cmp',
727777
event = 'InsertEnter',
@@ -837,28 +887,59 @@ require('lazy').setup({
837887
}
838888
end,
839889
},
840-
841890
{ -- You can easily change to a different colorscheme.
842891
-- Change the name of the colorscheme plugin below, and then
843892
-- change the command in the config to whatever the name of that colorscheme is.
844893
--
845894
-- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`.
846-
'folke/tokyonight.nvim',
895+
-- 'folke/tokyonight.nvim',
896+
-- 'joshdick/onedark.vim', -- GOAT.
897+
'olimorris/onedarkpro.nvim', -- New hotness?
898+
-- 'KeitaNakamura/neodark.vim',
847899
priority = 1000, -- Make sure to load this before all the other start plugins.
848900
init = function()
849901
-- Load the colorscheme here.
850902
-- Like many other themes, this one has different styles, and you could load
851903
-- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'.
852-
vim.cmd.colorscheme 'tokyonight-night'
904+
-- vim.cmd.colorscheme 'tokyonight-night'
905+
-- vim.cmd.colorscheme 'onedark' -- Valid for both onedark.nvim and onedarkpro.nvim themes.
906+
vim.cmd.colorscheme 'onedark_vivid' -- Valid for onedarkpro.nvim.
907+
-- vim.cmd.colorscheme 'neodark'
853908

854909
-- You can configure highlights by doing something like:
855910
vim.cmd.hi 'Comment gui=none'
856911
end,
857912
},
858-
913+
{
914+
-- "A light and configurable statusline/tabline plugin for Vim"
915+
-- 'itchyny/lightline.vim',
916+
-- "Lean & mean status/tabline for vim that's light as air."
917+
-- 'vim-airline/vim-airline',
918+
-- Uncomment to enable lightline.vim and vim-airline themes compatible with 'joshdick/onedark.vim'.
919+
-- vim.g.lightline.colorscheme 'onedark',
920+
-- vim.g.airline_theme 'onedark',
921+
-- Set lualine as statusline. `:help lualine.txt`
922+
'nvim-lualine/lualine.nvim',
923+
opts = {
924+
options = {
925+
icons_enabled = true,
926+
theme = 'onedark_vivid',
927+
component_separators = '|',
928+
section_separators = '',
929+
},
930+
},
931+
},
932+
-- Recommended for improved syntax highlighting with 'joshdick/onedark.vim'.
933+
-- Incompatible with 'tpope/vim-sleuth'.
934+
-- 2747: Vim(let):E741: Value is locked: g:loaded_sleuth
935+
-- {
936+
-- 'sheerun/vim-polyglot',
937+
-- },
859938
-- Highlight todo, notes, etc in comments
860939
{ 'folke/todo-comments.nvim', event = 'VimEnter', dependencies = { 'nvim-lua/plenary.nvim' }, opts = { signs = false } },
861-
940+
{ -- GitHub Copilot. `:Copilot setup`
941+
'github/copilot.vim'
942+
},
862943
{ -- Collection of various small independent plugins/modules
863944
'echasnovski/mini.nvim',
864945
config = function()
@@ -880,29 +961,104 @@ require('lazy').setup({
880961
-- Simple and easy statusline.
881962
-- You could remove this setup call if you don't like it,
882963
-- and try some other statusline plugin
883-
local statusline = require 'mini.statusline'
964+
-- local statusline = require 'mini.statusline'
884965
-- set use_icons to true if you have a Nerd Font
885-
statusline.setup { use_icons = vim.g.have_nerd_font }
966+
-- statusline.setup { use_icons = vim.g.have_nerd_font }
886967

887968
-- You can configure sections in the statusline by overriding their
888969
-- default behavior. For example, here we set the section for
889970
-- cursor location to LINE:COLUMN
890971
---@diagnostic disable-next-line: duplicate-set-field
891-
statusline.section_location = function()
892-
return '%2l:%-2v'
893-
end
972+
-- statusline.section_location = function()
973+
-- return '%2l:%-2v'
974+
-- end
894975

895976
-- ... and there is more!
896977
-- Check out: https://github.com/echasnovski/mini.nvim
897978
end,
898979
},
899980
{ -- Highlight, edit, and navigate code
900981
'nvim-treesitter/nvim-treesitter',
982+
dependencies = {
983+
'nvim-treesitter/nvim-treesitter-textobjects',
984+
},
901985
build = ':TSUpdate',
902986
main = 'nvim-treesitter.configs', -- Sets main module to use for opts
903987
-- [[ Configure Treesitter ]] See `:help nvim-treesitter`
904988
opts = {
905-
ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc' },
989+
ensure_installed = {
990+
-- Gotta sort and reassign these.
991+
-- This variable can only handle base languages.
992+
'arduino',
993+
-- 'arduino_language_server',
994+
'awk',
995+
-- 'awk-language-server',
996+
'bash',
997+
-- 'bash-language-server', 'shellcheck', 'shfmt', 'shellharden',
998+
'c',
999+
'cmake',
1000+
-- 'clangd', 'cmakelint', 'cmake-language-server', 'checkmake',
1001+
'csv',
1002+
'diff',
1003+
'dockerfile',
1004+
'fish',
1005+
'git_config', 'git_rebase', 'gitattributes', 'gitignore',
1006+
-- 'gh', 'actionlint',
1007+
'go', 'gomod', 'gosum', 'gotmpl',
1008+
-- 'gopls', 'gotests',
1009+
'gpg',
1010+
'graphql',
1011+
'groovy',
1012+
-- 'hadolint',
1013+
'hcl',
1014+
-- 'hclfmt',
1015+
'html',
1016+
'java',
1017+
'javascript',
1018+
-- 'jinja-lsp',
1019+
'jq', 'json', 'json5',
1020+
-- 'json-lsp', 'jsonld-lsp', 'jsonlint', 'jq-lsp',
1021+
'kotlin',
1022+
-- 'kotlin-language-server', 'ktfmt', 'ktlint',
1023+
'lua',
1024+
-- 'lua-language-server', 'luadoc',
1025+
'markdown',
1026+
-- 'markdownlint', 'markdownlint-cli2',
1027+
-- 'matlab',
1028+
-- 'mermaid', -- Experimental.
1029+
'passwd',
1030+
-- 'perl',
1031+
'powershell',
1032+
-- 'powershell-editor-services',
1033+
-- 'prolog',
1034+
'python',
1035+
-- 'pylint', 'requirements', 'ruff', 'ruff-lsp',
1036+
'query',
1037+
'regex',
1038+
'rust',
1039+
-- 'rust-analyzer',
1040+
-- 'semgrep',
1041+
-- 'snyk',
1042+
-- 'snyk-ls',
1043+
'sql',
1044+
-- 'sqlls', 'sqlfluff', 'sqlfmt',
1045+
'ssh_config',
1046+
'terraform',
1047+
-- 'terraform-ls', 'tflint',
1048+
'tmux',
1049+
-- 'trivy',
1050+
'typescript',
1051+
-- 'typescript-language-server',
1052+
-- 'vale',
1053+
'vim', 'vimdoc',
1054+
-- 'vim-language-server',
1055+
'xml',
1056+
-- 'xmlformatter',
1057+
'yaml',
1058+
-- 'yamlfmt', 'yamllint', 'yamlfix',
1059+
'zig',
1060+
-- 'zls',
1061+
},
9061062
-- Autoinstall languages that are not installed
9071063
auto_install = true,
9081064
highlight = {
@@ -933,10 +1089,10 @@ require('lazy').setup({
9331089
--
9341090
-- require 'kickstart.plugins.debug',
9351091
-- require 'kickstart.plugins.indent_line',
936-
-- require 'kickstart.plugins.lint',
1092+
require 'kickstart.plugins.lint',
9371093
-- require 'kickstart.plugins.autopairs',
9381094
-- require 'kickstart.plugins.neo-tree',
939-
-- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps
1095+
require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps
9401096

9411097
-- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
9421098
-- This is the easiest way to modularize your config.

lua/kickstart/plugins/debug.lua

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,13 @@ return {
9494
-- online, please don't ask me how to install them :)
9595
ensure_installed = {
9696
-- Update this to ensure that you have the debuggers for the langs you want
97-
'delve',
97+
'bash-debug-adapter',
98+
-- 'cpptools',
99+
'debugpy',
100+
-- 'delve',
101+
-- 'java-debug-adapter',
102+
-- 'js-debug-adapter',
103+
-- 'kotlin-debug-adapter',
98104
},
99105
}
100106

0 commit comments

Comments
 (0)