feat: add kickstart nixcats
This commit is contained in:
9
old/config/default.nix
Normal file
9
old/config/default.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{ pkgs }:
|
||||
pkgs.stdenv.mkDerivation {
|
||||
name = "nvim-config";
|
||||
src = ./src;
|
||||
installPhase = ''
|
||||
mkdir -p $out/
|
||||
cp -r . $out/
|
||||
'';
|
||||
}
|
||||
1
old/config/src/lazygit/config.yml
Symbolic link
1
old/config/src/lazygit/config.yml
Symbolic link
@@ -0,0 +1 @@
|
||||
/tmp/lazyvim-lazygit/config.yml
|
||||
1
old/config/src/lazygit/state.yml
Symbolic link
1
old/config/src/lazygit/state.yml
Symbolic link
@@ -0,0 +1 @@
|
||||
/tmp/lazyvim-lazygit/state.yml
|
||||
15
old/config/src/nvim/.neoconf.json
Normal file
15
old/config/src/nvim/.neoconf.json
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"neodev": {
|
||||
"library": {
|
||||
"enabled": true,
|
||||
"plugins": true
|
||||
}
|
||||
},
|
||||
"neoconf": {
|
||||
"plugins": {
|
||||
"lua_ls": {
|
||||
"enabled": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
8
old/config/src/nvim/init.lua
Normal file
8
old/config/src/nvim/init.lua
Normal file
@@ -0,0 +1,8 @@
|
||||
-- Configure symlinks needed by LazyVim
|
||||
vim.fn.system({ "mkdir", "-p", os.getenv("HOME") .. "/.config/lazyvim/nvim" })
|
||||
vim.fn.system({ "mkdir", "-p", os.getenv("HOME") .. "/.config/lazyvim/lazygit" })
|
||||
vim.fn.system({ "ln", "-sfT", os.getenv("HOME") .. "/.config/lazyvim/nvim", "/tmp/lazyvim-nvim" })
|
||||
vim.fn.system({ "ln", "-sfT", os.getenv("HOME") .. "/.config/lazyvim/lazygit", "/tmp/lazyvim-lazygit" })
|
||||
|
||||
-- Load lazyvim
|
||||
require("config.lazy")
|
||||
1
old/config/src/nvim/lazy-lock.json
Symbolic link
1
old/config/src/nvim/lazy-lock.json
Symbolic link
@@ -0,0 +1 @@
|
||||
/tmp/lazyvim-nvim/lazy-lock.json
|
||||
1
old/config/src/nvim/lazyvim.json
Symbolic link
1
old/config/src/nvim/lazyvim.json
Symbolic link
@@ -0,0 +1 @@
|
||||
/tmp/lazyvim-nvim/lazyvim.json
|
||||
3
old/config/src/nvim/lua/config/autocmds.lua
Normal file
3
old/config/src/nvim/lua/config/autocmds.lua
Normal file
@@ -0,0 +1,3 @@
|
||||
-- Autocmds are automatically loaded on the VeryLazy event
|
||||
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
||||
-- Add any additional autocmds here
|
||||
3
old/config/src/nvim/lua/config/keymaps.lua
Normal file
3
old/config/src/nvim/lua/config/keymaps.lua
Normal file
@@ -0,0 +1,3 @@
|
||||
-- Keymaps are automatically loaded on the VeryLazy event
|
||||
-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua
|
||||
-- Add any additional keymaps here
|
||||
60
old/config/src/nvim/lua/config/lazy.lua
Normal file
60
old/config/src/nvim/lua/config/lazy.lua
Normal file
@@ -0,0 +1,60 @@
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not vim.loop.fs_stat(lazypath) then
|
||||
-- bootstrap lazy.nvim
|
||||
-- stylua: ignore
|
||||
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable",
|
||||
lazypath })
|
||||
end
|
||||
vim.opt.rtp:prepend(vim.env.LAZY or lazypath)
|
||||
|
||||
require("lazy").setup({
|
||||
spec = {
|
||||
-- add LazyVim and import its plugins
|
||||
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
|
||||
-- Blink currently not supported by all extras 2024-11-19 11:08
|
||||
-- { import = "lazyvim.plugins.extras.coding.blink" },
|
||||
{ import = "lazyvim.plugins.extras.editor.illuminate" },
|
||||
{ import = "lazyvim.plugins.extras.editor.outline" },
|
||||
{ import = "lazyvim.plugins.extras.editor.telescope" },
|
||||
{ import = "lazyvim.plugins.extras.formatting.prettier" },
|
||||
{ import = "lazyvim.plugins.extras.lang.ansible" },
|
||||
{ import = "lazyvim.plugins.extras.lang.docker" },
|
||||
{ import = "lazyvim.plugins.extras.lang.git" },
|
||||
{ import = "lazyvim.plugins.extras.lang.go" },
|
||||
{ import = "lazyvim.plugins.extras.lang.helm" },
|
||||
{ import = "lazyvim.plugins.extras.lang.java" },
|
||||
{ import = "lazyvim.plugins.extras.lang.json" },
|
||||
{ import = "lazyvim.plugins.extras.lang.markdown" },
|
||||
{ import = "lazyvim.plugins.extras.lang.nix" },
|
||||
{ import = "lazyvim.plugins.extras.lang.python" },
|
||||
{ import = "lazyvim.plugins.extras.lang.rust" },
|
||||
{ import = "lazyvim.plugins.extras.lang.scala" },
|
||||
{ import = "lazyvim.plugins.extras.lang.sql" },
|
||||
{ import = "lazyvim.plugins.extras.lang.terraform" },
|
||||
{ import = "lazyvim.plugins.extras.lang.toml" },
|
||||
{ import = "lazyvim.plugins.extras.lang.typescript" },
|
||||
{ import = "lazyvim.plugins.extras.lang.yaml" },
|
||||
{ import = "lazyvim.plugins.extras.ui.mini-animate" },
|
||||
{ import = "lazyvim.plugins.extras.ui.mini-indentscope" },
|
||||
{ import = "lazyvim.plugins.extras.ui.treesitter-context" },
|
||||
{ import = "plugins.catppuccin" },
|
||||
{ import = "plugins.lang.shell" },
|
||||
{ import = "plugins.misc.tmux-navigator" },
|
||||
},
|
||||
defaults = {
|
||||
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
|
||||
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
|
||||
lazy = false,
|
||||
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
|
||||
-- have outdated releases, which may break your Neovim install.
|
||||
version = nil, -- always use the latest git commit
|
||||
-- version = "*", -- try installing the latest stable version for plugins that support semver
|
||||
},
|
||||
install = { colorscheme = { "catppuccin-macchiato" } },
|
||||
checker = { enabled = true, frequency = 60 * 60 * 24 }, -- automatically check for plugin updates once per day
|
||||
performance = {
|
||||
cache = {
|
||||
enabled = true,
|
||||
},
|
||||
},
|
||||
})
|
||||
7
old/config/src/nvim/lua/config/options.lua
Normal file
7
old/config/src/nvim/lua/config/options.lua
Normal file
@@ -0,0 +1,7 @@
|
||||
-- Options are automatically loaded before lazy.nvim startup
|
||||
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
|
||||
-- Add any additional options here
|
||||
vim.g.mapleader = ","
|
||||
|
||||
vim.opt.number = true
|
||||
vim.opt.relativenumber = false
|
||||
62
old/config/src/nvim/lua/plugins/catppuccin.lua
Normal file
62
old/config/src/nvim/lua/plugins/catppuccin.lua
Normal file
@@ -0,0 +1,62 @@
|
||||
return {
|
||||
"catppuccin/nvim",
|
||||
lazy = true,
|
||||
name = "catppuccin",
|
||||
opts = {
|
||||
flavour = "macchiato",
|
||||
transparent_background = false,
|
||||
integrations = {
|
||||
aerial = true,
|
||||
alpha = true,
|
||||
cmp = true,
|
||||
dashboard = true,
|
||||
flash = true,
|
||||
grug_far = true,
|
||||
gitsigns = true,
|
||||
headlines = true,
|
||||
illuminate = true,
|
||||
indent_blankline = { enabled = true },
|
||||
leap = true,
|
||||
lsp_trouble = true,
|
||||
mason = true,
|
||||
markdown = true,
|
||||
mini = true,
|
||||
native_lsp = {
|
||||
enabled = true,
|
||||
underlines = {
|
||||
errors = { "undercurl" },
|
||||
hints = { "undercurl" },
|
||||
warnings = { "undercurl" },
|
||||
information = { "undercurl" },
|
||||
},
|
||||
},
|
||||
navic = { enabled = true, custom_bg = "lualine" },
|
||||
neotest = true,
|
||||
neotree = true,
|
||||
noice = true,
|
||||
notify = true,
|
||||
semantic_tokens = true,
|
||||
telescope = true,
|
||||
treesitter = true,
|
||||
treesitter_context = true,
|
||||
which_key = true,
|
||||
},
|
||||
},
|
||||
specs = {
|
||||
{
|
||||
"akinsho/bufferline.nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
if (vim.g.colors_name or ""):find("catppuccin") then
|
||||
opts.highlights = require("catppuccin.groups.integrations.bufferline").get()
|
||||
end
|
||||
end,
|
||||
},
|
||||
},
|
||||
{
|
||||
"LazyVim/LazyVim",
|
||||
opts = {
|
||||
colorscheme = "catppuccin-macchiato",
|
||||
},
|
||||
},
|
||||
}
|
||||
41
old/config/src/nvim/lua/plugins/lang/nix.lua
Normal file
41
old/config/src/nvim/lua/plugins/lang/nix.lua
Normal file
@@ -0,0 +1,41 @@
|
||||
return {
|
||||
{
|
||||
"stevearc/conform.nvim",
|
||||
optional = true,
|
||||
opts = {
|
||||
formatters_by_ft = {
|
||||
["nix"] = { "alejandra" },
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"neovim/nvim-lspconfig",
|
||||
opts = {
|
||||
servers = {
|
||||
nixd = {},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
opts = function(_, opts)
|
||||
if type(opts.ensure_installed) == "table" then
|
||||
vim.list_extend(opts.ensure_installed, {
|
||||
"nix",
|
||||
})
|
||||
end
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvimtools/none-ls.nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
local null_ls = require("null-ls")
|
||||
opts.sources = vim.list_extend(opts.sources or {}, {
|
||||
null_ls.builtins.code_actions.statix,
|
||||
null_ls.builtins.diagnostics.statix,
|
||||
null_ls.builtins.formatting.alejandra,
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
47
old/config/src/nvim/lua/plugins/lang/shell.lua
Normal file
47
old/config/src/nvim/lua/plugins/lang/shell.lua
Normal file
@@ -0,0 +1,47 @@
|
||||
return {
|
||||
{
|
||||
"williamboman/mason.nvim",
|
||||
opts = function(_, opts)
|
||||
opts.ensure_installed = opts.ensure_installed or {}
|
||||
vim.list_extend(opts.ensure_installed, {
|
||||
"shfmt",
|
||||
"shellcheck",
|
||||
"bash-language-server",
|
||||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
"stevearc/conform.nvim",
|
||||
event = { "BufWritePre" },
|
||||
cmd = { "ConformInfo" },
|
||||
opts = {
|
||||
formatters_by_ft = {
|
||||
["sh"] = { "shfmt" },
|
||||
["command"] = { "shfmt" },
|
||||
},
|
||||
formatters = {
|
||||
shfmt = {
|
||||
prepend_args = { "-i", "2", "-ci" },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"neovim/nvim-lspconfig",
|
||||
opts = {
|
||||
servers = {
|
||||
bashls = {},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
opts = function(_, opts)
|
||||
if type(opts.ensure_installed) == "table" then
|
||||
vim.list_extend(opts.ensure_installed, {
|
||||
"bash",
|
||||
})
|
||||
end
|
||||
end,
|
||||
},
|
||||
}
|
||||
9
old/config/src/nvim/lua/plugins/misc/bigfile.lua
Normal file
9
old/config/src/nvim/lua/plugins/misc/bigfile.lua
Normal file
@@ -0,0 +1,9 @@
|
||||
return {
|
||||
-- Disable certain features if file is big
|
||||
{
|
||||
"LunarVim/bigfile.nvim",
|
||||
opts = {
|
||||
filesize = 0.5,
|
||||
},
|
||||
},
|
||||
}
|
||||
17
old/config/src/nvim/lua/plugins/misc/tmux-navigator.lua
Normal file
17
old/config/src/nvim/lua/plugins/misc/tmux-navigator.lua
Normal file
@@ -0,0 +1,17 @@
|
||||
return {
|
||||
"christoomey/vim-tmux-navigator",
|
||||
cmd = {
|
||||
"TmuxNavigateLeft",
|
||||
"TmuxNavigateDown",
|
||||
"TmuxNavigateUp",
|
||||
"TmuxNavigateRight",
|
||||
"TmuxNavigatePrevious",
|
||||
},
|
||||
keys = {
|
||||
{ "<c-h>", "<cmd><C-U>TmuxNavigateLeft<cr>" },
|
||||
{ "<c-j>", "<cmd><C-U>TmuxNavigateDown<cr>" },
|
||||
{ "<c-k>", "<cmd><C-U>TmuxNavigateUp<cr>" },
|
||||
{ "<c-l>", "<cmd><C-U>TmuxNavigateRight<cr>" },
|
||||
{ "<c-\\>", "<cmd><C-U>TmuxNavigatePrevious<cr>" },
|
||||
},
|
||||
}
|
||||
31
old/config/src/nvim/lua/plugins/telescope.lua
Normal file
31
old/config/src/nvim/lua/plugins/telescope.lua
Normal file
@@ -0,0 +1,31 @@
|
||||
return {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
dependencies = {
|
||||
"nvim-telescope/telescope-fzf-native.nvim",
|
||||
build = "make",
|
||||
config = function()
|
||||
require("telescope").load_extension("fzf")
|
||||
end,
|
||||
},
|
||||
opts = {
|
||||
defaults = {
|
||||
file_ignore_patterns = {
|
||||
".git/",
|
||||
"^node_modules/",
|
||||
".cache",
|
||||
},
|
||||
},
|
||||
pickers = {
|
||||
live_grep = {
|
||||
additional_args = { "-L" },
|
||||
},
|
||||
grep_string = {
|
||||
additional_args = { "-L" },
|
||||
},
|
||||
find_files = {
|
||||
hidden = true,
|
||||
follow = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
10
old/config/src/nvim/lua/plugins/tokyonight.lua
Normal file
10
old/config/src/nvim/lua/plugins/tokyonight.lua
Normal file
@@ -0,0 +1,10 @@
|
||||
return {
|
||||
"folke/tokyonight.nvim",
|
||||
opts = {
|
||||
transparent = true,
|
||||
styles = {
|
||||
sidebars = "transparent",
|
||||
floats = "transparent",
|
||||
},
|
||||
},
|
||||
}
|
||||
6
old/config/src/nvim/lua/plugins/ui/colorizer.lua
Normal file
6
old/config/src/nvim/lua/plugins/ui/colorizer.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
"chrisbra/Colorizer",
|
||||
keys = {
|
||||
{ "<leader>uR", "<cmd>ColorToggle<cr>", desc = "Toggle Colorizer" },
|
||||
},
|
||||
}
|
||||
6
old/config/src/nvim/lua/plugins/undotree.lua
Normal file
6
old/config/src/nvim/lua/plugins/undotree.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
"mbbill/undotree",
|
||||
keys = {
|
||||
{ "<leader>u", "<cmd> UndotreeToggle <CR>", desc = "Toggle undotree", mode = { "n" } },
|
||||
},
|
||||
}
|
||||
3
old/config/src/nvim/stylua.toml
Normal file
3
old/config/src/nvim/stylua.toml
Normal file
@@ -0,0 +1,3 @@
|
||||
indent_type = "Spaces"
|
||||
indent_width = 2
|
||||
column_width = 120
|
||||
Reference in New Issue
Block a user