Update plugins

main
Buddy Sandidge 5 days ago
parent 233dba0dfe
commit edc517757b

@ -1,154 +1,10 @@
# Nushell Config File source ($nu.default-config-dir | path join 'themes.nu')
#
# version = "0.100.0"
# For more information on defining custom themes, see
# https://www.nushell.sh/book/coloring_and_theming.html
# And here is the theme collection
# https://github.com/nushell/nu_scripts/tree/main/themes
let dark_theme = {
# color for nushell primitives
separator: white
# no fg, no bg, attr none effectively turns this off
leading_trailing_space_bg: { attr: n }
header: green_bold
empty: blue
# Closures can be used to choose colors for specific values.
# The value (in this case, a bool) is piped into the closure.
# eg) {|| if $in { 'light_cyan' } else { 'light_gray' } }
bool: light_cyan
int: white
filesize: cyan
duration: white
date: purple
range: white
float: white
string: white
nothing: white
binary: white
cell-path: white
row_index: green_bold
record: white
list: white
block: white
hints: dark_gray
search_result: { bg: red fg: white }
shape_and: purple_bold
shape_binary: purple_bold
shape_block: blue_bold
shape_bool: light_cyan
shape_closure: green_bold
shape_custom: green
shape_datetime: cyan_bold
shape_directory: cyan
shape_external: cyan
shape_externalarg: green_bold
shape_external_resolved: light_yellow_bold
shape_filepath: cyan
shape_flag: blue_bold
shape_float: purple_bold
# shapes are used to change the cli syntax highlighting
shape_garbage: { fg: white bg: red attr: b }
shape_glob_interpolation: cyan_bold
shape_globpattern: cyan_bold
shape_int: purple_bold
shape_internalcall: cyan_bold
shape_keyword: cyan_bold
shape_list: cyan_bold
shape_literal: blue
shape_match_pattern: green
shape_matching_brackets: { attr: u }
shape_nothing: light_cyan
shape_operator: yellow
shape_or: purple_bold
shape_pipe: purple_bold
shape_range: yellow_bold
shape_record: cyan_bold
shape_redirection: purple_bold
shape_signature: green_bold
shape_string: green
shape_string_interpolation: cyan_bold
shape_table: blue_bold
shape_variable: purple
shape_vardecl: purple
shape_raw_string: light_purple
}
let light_theme = {
# color for nushell primitives
separator: dark_gray
# no fg, no bg, attr none effectively turns this off
leading_trailing_space_bg: { attr: n }
header: green_bold
empty: blue
# Closures can be used to choose colors for specific values.
# The value (in this case, a bool) is piped into the closure.
# eg) {|| if $in { 'dark_cyan' } else { 'dark_gray' } }
bool: dark_cyan
int: dark_gray
filesize: cyan_bold
duration: dark_gray
date: purple
range: dark_gray
float: dark_gray
string: dark_gray
nothing: dark_gray
binary: dark_gray
cell-path: dark_gray
row_index: green_bold
record: dark_gray
list: dark_gray
block: dark_gray
hints: dark_gray
search_result: { fg: white bg: red }
shape_and: purple_bold
shape_binary: purple_bold
shape_block: blue_bold
shape_bool: light_cyan
shape_closure: green_bold
shape_custom: green
shape_datetime: cyan_bold
shape_directory: cyan
shape_external: cyan
shape_externalarg: green_bold
shape_external_resolved: light_purple_bold
shape_filepath: cyan
shape_flag: blue_bold
shape_float: purple_bold
# shapes are used to change the cli syntax highlighting
shape_garbage: { fg: white bg: red attr: b }
shape_glob_interpolation: cyan_bold
shape_globpattern: cyan_bold
shape_int: purple_bold
shape_internalcall: cyan_bold
shape_keyword: cyan_bold
shape_list: cyan_bold
shape_literal: blue
shape_match_pattern: green
shape_matching_brackets: { attr: u }
shape_nothing: light_cyan
shape_operator: yellow
shape_or: purple_bold
shape_pipe: purple_bold
shape_range: yellow_bold
shape_record: cyan_bold
shape_redirection: purple_bold
shape_signature: green_bold
shape_string: green
shape_string_interpolation: cyan_bold
shape_table: blue_bold
shape_variable: purple
shape_vardecl: purple
shape_raw_string: light_purple
}
# External completer example # External completer example
# let carapace_completer = {|spans| # let carapace_completer = {|spans|
# carapace $spans.0 nushell ...$spans | from json # carapace $spans.0 nushell ...$spans | from json
# } # }
# The default config record. This is where much of your global configuration
# is setup.
$env.config = { $env.config = {
# true or false to enable or disable the welcome banner at startup # true or false to enable or disable the welcome banner at startup
show_banner: false show_banner: false
@ -176,6 +32,13 @@ $env.config = {
show_empty: true show_empty: true
# a left right padding of each column in a table # a left right padding of each column in a table
padding: { left: 1, right: 1 } padding: { left: 1, right: 1 }
# show header text on separator/border line
header_on_separator: false
# render footer in parent table if child is big enough
# (extended table option)
footer_inheritance: false
# limit data rows from top and bottom after reaching a set point
# abbreviated_row_count: 10
trim: { trim: {
# wrapping or truncating # wrapping or truncating
methodology: wrapping methodology: wrapping
@ -184,13 +47,6 @@ $env.config = {
# A suffix used by the 'truncating' methodology # A suffix used by the 'truncating' methodology
truncating_suffix: "…" truncating_suffix: "…"
} }
# show header text on separator/border line
header_on_separator: false
# render footer in parent table if child is big enough
# (extended table option)
footer_inheritance: false
# limit data rows from top and bottom after reaching a set point
# abbreviated_row_count: 10
} }
# "fancy" or "plain" for screen reader-friendly error messages # "fancy" or "plain" for screen reader-friendly error messages
@ -259,6 +115,9 @@ $env.config = {
# "smart" (alphabetical for prefix matching, fuzzy score for # "smart" (alphabetical for prefix matching, fuzzy score for
# fuzzy matching) or "alphabetical" # fuzzy matching) or "alphabetical"
sort: "smart" sort: "smart"
# set this to true to enable file/path/directory completions
# using LS_COLORS
use_ls_colors: true
external: { external: {
# set to false to prevent nushell looking into $env.PATH to find # set to false to prevent nushell looking into $env.PATH to find
# more suggestions, `false` recommended for WSL users as this look # more suggestions, `false` recommended for WSL users as this look
@ -270,9 +129,6 @@ $env.config = {
# check 'carapace_completer' above as an example # check 'carapace_completer' above as an example
completer: null completer: null
} }
# set this to true to enable file/path/directory completions
# using LS_COLORS
use_ls_colors: true
} }
filesize: { filesize: {
@ -299,7 +155,7 @@ $env.config = {
#color_config: $dark_theme #color_config: $dark_theme
# if you want a more interesting theme, you can replace the empty record # if you want a more interesting theme, you can replace the empty record
# with `$dark_theme`, `$light_theme` or another custom record # with `$dark_theme`, `$light_theme` or another custom record
color_config: $light_theme color_config: $dark_theme
# always, never, number_of_rows, auto # always, never, number_of_rows, auto
footer_mode: 25 footer_mode: 25
# the precision for displaying floats in tables # the precision for displaying floats in tables

@ -1,4 +1,12 @@
local function config() local M = { 'hrsh7th/nvim-cmp' }
M.name = 'cmp'
M.dependencies = {
'saadparwaiz1/cmp_luasnip',
'hrsh7th/cmp-nvim-lsp',
}
function M.config()
local cmp = require 'cmp' local cmp = require 'cmp'
local luasnip = require 'luasnip' local luasnip = require 'luasnip'
@ -51,12 +59,4 @@ local function config()
} }
end end
return { return M
'hrsh7th/nvim-cmp',
name = 'cmp',
config = config,
dependencies = {
'saadparwaiz1/cmp_luasnip',
'hrsh7th/cmp-nvim-lsp',
},
}

@ -1,8 +1,18 @@
return { -- https://github.com/tpope/vim-surround
'tpope/vim-surround', -- surround.vim: Delete/change/add parentheses/quotes/XML-tags/much more with ease
tag = 'v2.2', local M = { 'tpope/vim-surround' }
dependencies = {
{ 'tpope/vim-sleuth', tag = 'v2.0' }, M.tag = 'v2.2'
{ 'numToStr/Comment.nvim', opts = {}, lazy = false }, M.dependencies = {
}, -- https://github.com/tpope/vim-sleuth
-- sleuth.vim: Heuristically set buffer options
{ 'tpope/vim-sleuth', tag = 'v2.0' },
-- https://github.com/numToStr/Comment.nvim
-- 🧠 💪 // Smart and powerful comment plugin for neovim.
-- Supports treesitter, dot repeat, left-right/up-down motions, hooks, and more
{ 'numToStr/Comment.nvim', opts = {}, lazy = false },
} }
return M

@ -1,16 +1,21 @@
local function config() -- https://github.com/ray-x/go.nvim
require("go").setup() -- A modern go neovim plugin based on treesitter, nvim-lsp and dap debugger.
end local M = { 'ray-x/go.nvim' }
M.name = 'go'
M.event = { 'CmdlineEnter' }
M.ft = { 'go', 'gomod' }
M.dependencies = {
-- https://github.com/ray-x/guihua.lua
-- Guihua: A Lua Gui and util library for nvim plugins
'ray-x/guihua.lua',
return { 'lspconfig',
'ray-x/go.nvim', 'treesitter',
name = 'go',
config = config,
event = { 'CmdlineEnter' },
ft = { 'go', 'gomod' },
dependencies = {
'ray-x/guihua.lua',
'lspconfig',
'treesitter',
},
} }
function M.config()
require("go").setup()
end
return M

@ -1,5 +1,17 @@
# chezmoi:template:left-delimiter=--{{ # chezmoi:template:left-delimiter=--{{
--{{- /* vim: set filetype=lua: */ -}} --{{- /* vim: set filetype=lua: */ -}}
local M = { 'neovim/nvim-lspconfig' }
M.name = 'lspconfig'
M.tag = 'v1.0.0'
M.dependencies = {
{ 'j-hui/fidget.nvim', tag = 'legacy', opts = {} },
{ 'folke/trouble.nvim', tag = 'v3.6.0' },
{ 'folke/lazydev.nvim', tag = 'v1.9.0', ft = "lua", opts = {} },
}
local function format_buffer(_) local function format_buffer(_)
vim.lsp.buf.format() vim.lsp.buf.format()
end end
@ -11,7 +23,7 @@ local function on_attach(_, buffer)
}) })
end end
local function config() function M.config()
local lspconfig = require('lspconfig') local lspconfig = require('lspconfig')
local capabilities = require('cmp_nvim_lsp').default_capabilities( local capabilities = require('cmp_nvim_lsp').default_capabilities(
@ -25,6 +37,14 @@ local function config()
settings = {}, settings = {},
} }
--{{- end }} --{{- end }}
--
--{{ if lookPath "buf" -}}
lspconfig.buf_ls.setup {
capabilities = capabilities,
on_attach = on_attach,
settings = {},
}
--{{- end }}
--{{ if lookPath "go" -}} --{{ if lookPath "go" -}}
lspconfig.gopls.setup { lspconfig.gopls.setup {
@ -91,14 +111,4 @@ local function config()
--{{- end }} --{{- end }}
end end
return { return M
'neovim/nvim-lspconfig',
name = 'lspconfig',
tag = 'v1.0.0',
config = config,
dependencies = {
{ 'j-hui/fidget.nvim', tag = 'legacy', opts = {} },
{ 'folke/trouble.nvim', tag = 'v3.6.0' },
{ 'folke/lazydev.nvim', tag = 'v1.9.0', ft = "lua", opts = {} },
},
}

@ -1,13 +1,15 @@
local function config() -- https://github.com/L3MON4D3/LuaSnip
-- Snippet Engine for Neovim written in Lua.
local M = { 'L3MON4D3/LuaSnip' }
M.tag = 'v2.3.0'
M.dependencies = {}
function M.config()
local luasnip = require 'luasnip' local luasnip = require 'luasnip'
luasnip.setup() luasnip.setup()
luasnip.config.setup({}) luasnip.config.setup({})
require("luasnip.loaders.from_snipmate").lazy_load() require("luasnip.loaders.from_snipmate").lazy_load()
end end
return { return M
'L3MON4D3/LuaSnip',
config = config,
tag = 'v2.3.0',
dependencies = {},
}

@ -1,30 +1,21 @@
-- Telescope live_grep in git root local lib = require('core.lib')
-- Function to find the git root directory based on the current buffer's path local M = { 'nvim-telescope/telescope.nvim' }
local function find_git_root()
-- Use the current buffer's path as the starting point for the git search
local current_file = vim.api.nvim_buf_get_name(0)
local current_dir
local cwd = vim.fn.getcwd()
-- If the buffer is not associated with a file, return nil
if current_file == '' then
current_dir = cwd
else
-- Extract the directory from the current file's path
current_dir = vim.fn.fnamemodify(current_file, ':h')
end
-- Find the Git root directory from the current file's path M.branch = '0.1.x'
local git_root = vim.fn.systemlist('git -C ' .. vim.fn.escape(current_dir, ' ') .. ' rev-parse --show-toplevel')[1] M.event = 'VimEnter'
if vim.v.shell_error ~= 0 then M.dependencies = {
print('Not a git repository. Searching on current working directory') 'nvim-lua/plenary.nvim',
return cwd {
end 'nvim-telescope/telescope-fzf-native.nvim',
return git_root build = 'make',
end },
'nvim-telescope/telescope-ui-select.nvim',
'nvim-tree/nvim-web-devicons',
}
-- Custom live_grep function to search in git root -- Custom live_grep function to search in git root
local function live_grep_git_root() local function live_grep_git_root()
local git_root = find_git_root() local git_root = lib.find_git_root()
if git_root then if git_root then
require('telescope.builtin').live_grep({ require('telescope.builtin').live_grep({
search_dirs = { git_root }, search_dirs = { git_root },
@ -34,7 +25,7 @@ end
vim.api.nvim_create_user_command('LiveGrepGitRoot', live_grep_git_root, {}) vim.api.nvim_create_user_command('LiveGrepGitRoot', live_grep_git_root, {})
local function config() function M.config()
-- See `:help telescope` and `:help telescope.setup()` -- See `:help telescope` and `:help telescope.setup()`
local telescope = require('telescope') local telescope = require('telescope')
local builtin = require('telescope.builtin') local builtin = require('telescope.builtin')
@ -63,7 +54,7 @@ local function config()
pcall(telescope.load_extension, 'fzf') pcall(telescope.load_extension, 'fzf')
pcall(telescope.load_extension, 'ui-select') pcall(telescope.load_extension, 'ui-select')
local function fuzzy_find () local function fuzzy_find()
-- You can pass additional configuration to telescope to change theme, -- You can pass additional configuration to telescope to change theme,
-- layout, etc. -- layout, etc.
builtin.current_buffer_fuzzy_find(themes.get_dropdown({ builtin.current_buffer_fuzzy_find(themes.get_dropdown({
@ -88,23 +79,4 @@ local function config()
vim.keymap.set('n', '<leader>gf', builtin.git_files, { desc = 'Search [G]it [F]iles' }) vim.keymap.set('n', '<leader>gf', builtin.git_files, { desc = 'Search [G]it [F]iles' })
end end
local function is_make_installed() return M
return vim.fn.executable('make') == 1
end
return {
'nvim-telescope/telescope.nvim',
branch = '0.1.x',
config = config,
event = 'VimEnter',
dependencies = {
'nvim-lua/plenary.nvim',
{
'nvim-telescope/telescope-fzf-native.nvim',
cond = is_make_installed,
build = 'make',
},
'nvim-telescope/telescope-ui-select.nvim',
'nvim-tree/nvim-web-devicons',
},
}

@ -1,25 +1,27 @@
local function config() -- https://github.com/morhetz/gruvbox
vim.cmd.colorscheme 'gruvbox' local M = { 'morhetz/gruvbox' }
end
return { M.priority = 1000
'morhetz/gruvbox', M.dependencies = {
priority = 1000, -- https://github.com/nvim-lualine/lualine.nvim
config = config, 'nvim-lualine/lualine.nvim',
dependencies = { opts = {
'nvim-lualine/lualine.nvim', options = {
opts = { theme = 'gruvbox',
options = { },
theme = 'gruvbox', sections = {
}, lualine_a = { 'mode' },
sections = { lualine_b = { 'diagnostics' },
lualine_a = { 'mode' }, lualine_c = { { 'filename', path = 3 } },
lualine_b = { 'diagnostics' }, lualine_x = { 'encoding', 'fileformat', 'filetype' },
lualine_c = { { 'filename', path = 3 } }, lualine_y = { 'progress' },
lualine_x = { 'encoding', 'fileformat', 'filetype' }, lualine_z = { 'location' }
lualine_y = { 'progress' },
lualine_z = { 'location' }
},
}, },
}, },
} }
function M.config()
vim.cmd.colorscheme 'gruvbox'
end
return M

@ -2,7 +2,30 @@ vim.g.loaded_netrw = 1
vim.g.loaded_netrwPlugin = 1 vim.g.loaded_netrwPlugin = 1
vim.opt.termguicolors = true vim.opt.termguicolors = true
local function handle_closed(window) local M = { 'nvim-tree/nvim-tree.lua' }
M.tag = 'nvim-tree-v1.9.0'
M.keys = {
{ '<leader>nt', ':NvimTreeToggle<CR>', desc = 'toggle nvim tree' }
}
M.dependencies = {
-- https://github.com/nvim-tree/nvim-web-devicons
'nvim-tree/nvim-web-devicons', opts = {}
}
function M.config()
require('nvim-tree').setup()
vim.api.nvim_create_autocmd('WinClosed', {
nested = true,
callback = function()
M.handle_closed(tonumber(vim.fn.expand('<amatch>')))
end,
})
end
function M.handle_closed(window)
local tab = vim.api.nvim_win_get_tabpage(window) local tab = vim.api.nvim_win_get_tabpage(window)
local buffer = vim.api.nvim_win_get_buf(window) local buffer = vim.api.nvim_win_get_buf(window)
local info = vim.fn.getbufinfo(buffer)[1] local info = vim.fn.getbufinfo(buffer)[1]
@ -37,24 +60,4 @@ local function handle_closed(window)
end end
end end
local function config() return M
require('nvim-tree').setup()
vim.api.nvim_create_autocmd('WinClosed', {
nested = true,
callback = function()
local window = tonumber(vim.fn.expand('<amatch>'))
handle_closed(window)
end,
})
end
return {
'nvim-tree/nvim-tree.lua',
config = config,
keys = {
{ '<leader>nt', ':NvimTreeToggle<CR>', desc = 'toggle nvim tree' }
},
dependencies = {
'nvim-tree/nvim-web-devicons', opts = {}
},
}

@ -1,4 +1,21 @@
local treesitter_config_setup = { local M = {'nvim-treesitter/nvim-treesitter' }
M.name = 'treesitter'
M.build = ':TSUpdate'
M.dependencies = {
'nvim-treesitter/nvim-treesitter-textobjects'
}
function M.config ()
vim.defer_fn(M.treesitter_configs, 0)
end
function M.treesitter_configs()
require 'nvim-treesitter.configs'
.setup(M.treesitter_config_setup)
end
M.treesitter_config_setup = {
-- Add languages to be installed here that you want installed for treesitter -- Add languages to be installed here that you want installed for treesitter
ensure_installed = { ensure_installed = {
'bash', 'c', 'cpp', 'go', 'lua', 'python', 'rust', 'bash', 'c', 'cpp', 'go', 'lua', 'python', 'rust',
@ -74,22 +91,4 @@ local treesitter_config_setup = {
}, },
} }
local function treesitter_configs() return M
require 'nvim-treesitter.configs'
.setup(treesitter_config_setup)
end
local function config()
vim.defer_fn(treesitter_configs, 0)
end
return {
-- Highlight, edit, and navigate code
'nvim-treesitter/nvim-treesitter',
name = 'treesitter',
config = config,
build = ':TSUpdate',
dependencies = {
'nvim-treesitter/nvim-treesitter-textobjects',
},
}

Loading…
Cancel
Save