Compare commits
8 commits
b620c0a997
...
d1e0aa51d0
Author | SHA1 | Date | |
---|---|---|---|
d1e0aa51d0 | |||
821165fea0 | |||
ef15c48f5f | |||
15c9d5c0b0 | |||
45b3e23f75 | |||
d5992d8ad6 | |||
d86261158d | |||
1ccbe82506 |
63 changed files with 152 additions and 155 deletions
|
@ -1 +1 @@
|
||||||
require("fschauen.util.options").set_gitcommit_buffer_options()
|
require("util.options").set_gitcommit_buffer_options()
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
require("fschauen.util.options").set_gitcommit_buffer_options()
|
require("util.options").set_gitcommit_buffer_options()
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
vim.bo.tabstop = 2
|
vim.bo.tabstop = 2
|
||||||
|
|
||||||
local lua = require("fschauen.util.lua")
|
local lua = require("util.lua")
|
||||||
local map = vim.keymap.set
|
local map = vim.keymap.set
|
||||||
local opts = function(desc) return { desc = desc, buffer = true, silent = true } end
|
local opts = function(desc) return { desc = desc, buffer = true, silent = true } end
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
if vim.loader then vim.loader.enable() end
|
if vim.loader then vim.loader.enable() end
|
||||||
|
|
||||||
require("fschauen")
|
require("config")
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
M.setup = function()
|
M.setup = function()
|
||||||
local group = vim.api.nvim_create_augroup("fschauen", { clear = true })
|
local group = vim.api.nvim_create_augroup("custom", { clear = true })
|
||||||
|
|
||||||
vim.api.nvim_create_autocmd("TextYankPost", {
|
vim.api.nvim_create_autocmd("TextYankPost", {
|
||||||
desc = "Briefly highlight yanked text.",
|
desc = "Briefly highlight yanked text.",
|
|
@ -19,7 +19,7 @@ end
|
||||||
---@param bufnr integer|nil: Buffer number (0 for current buffer, nil for all buffers.
|
---@param bufnr integer|nil: Buffer number (0 for current buffer, nil for all buffers.
|
||||||
M.hide = function(bufnr) vim.diagnostic.hide(nil, bufnr or 0) end
|
M.hide = function(bufnr) vim.diagnostic.hide(nil, bufnr or 0) end
|
||||||
|
|
||||||
local icons = require("fschauen.util.icons")
|
local icons = require("util.icons")
|
||||||
|
|
||||||
---Use `Telescope` to set a new diagnostic severity.
|
---Use `Telescope` to set a new diagnostic severity.
|
||||||
M.set_severity = function()
|
M.set_severity = function()
|
|
@ -8,12 +8,12 @@ R = function(module)
|
||||||
return require(module)
|
return require(module)
|
||||||
end
|
end
|
||||||
|
|
||||||
require("fschauen.options").setup()
|
require("config.options").setup()
|
||||||
require("fschauen.keymap").setup()
|
require("config.keymap").setup()
|
||||||
require("fschauen.diagnostic").setup()
|
require("config.diagnostic").setup()
|
||||||
require("fschauen.autocmd").setup()
|
require("config.autocmd").setup()
|
||||||
require("fschauen.filetype").setup()
|
require("config.filetype").setup()
|
||||||
require("fschauen.lazy").setup()
|
require("config.lazy").setup()
|
||||||
|
|
||||||
local colorscheme = vim.env.NVIM_COLORSCHEME or "gruvbox"
|
local colorscheme = vim.env.NVIM_COLORSCHEME or "gruvbox"
|
||||||
vim.cmd("silent! colorscheme " .. colorscheme)
|
vim.cmd("silent! colorscheme " .. colorscheme)
|
|
@ -36,7 +36,7 @@ M.setup = function()
|
||||||
-- disable highlight until next search
|
-- disable highlight until next search
|
||||||
vim.keymap.set("n", "<leader>h", "<cmd>nohlsearch<cr>")
|
vim.keymap.set("n", "<leader>h", "<cmd>nohlsearch<cr>")
|
||||||
|
|
||||||
local window = require("fschauen.util.window")
|
local window = require("util.window")
|
||||||
|
|
||||||
-- window resizing
|
-- window resizing
|
||||||
vim.keymap.set("n", "<s-Up>", window.resize_up(2), { desc = "Resize window upward" })
|
vim.keymap.set("n", "<s-Up>", window.resize_up(2), { desc = "Resize window upward" })
|
||||||
|
@ -79,8 +79,8 @@ M.setup = function()
|
||||||
-- don't loose the original yanked contents when pasting in visual mode
|
-- don't loose the original yanked contents when pasting in visual mode
|
||||||
vim.keymap.set("x", "<leader>p", [["_dP]])
|
vim.keymap.set("x", "<leader>p", [["_dP]])
|
||||||
|
|
||||||
local diagnostic = require("fschauen.diagnostic")
|
local diagnostic = require("config.diagnostic")
|
||||||
local ui = require("fschauen.util.icons").ui
|
local ui = require("util.icons").ui
|
||||||
|
|
||||||
-- navigate diagnostics
|
-- navigate diagnostics
|
||||||
vim.keymap.set("n", "<leader>dd", diagnostic.toggle, { desc = ui.Diagnostic.." [d]iagnostic enable/[d]isable" })
|
vim.keymap.set("n", "<leader>dd", diagnostic.toggle, { desc = ui.Diagnostic.." [d]iagnostic enable/[d]isable" })
|
||||||
|
@ -92,7 +92,7 @@ M.setup = function()
|
||||||
vim.keymap.set("n", "<leader>q", window.toggle_quickfix, { desc = ui.Toggle.." toggle quickfix" })
|
vim.keymap.set("n", "<leader>q", window.toggle_quickfix, { desc = ui.Toggle.." toggle quickfix" })
|
||||||
vim.keymap.set("n", "<localleader>q", window.toggle_loclist, { desc = ui.Toggle.." toggle loclist" })
|
vim.keymap.set("n", "<localleader>q", window.toggle_loclist, { desc = ui.Toggle.." toggle loclist" })
|
||||||
|
|
||||||
local options = require("fschauen.util.options")
|
local options = require("util.options")
|
||||||
|
|
||||||
-- toggle options
|
-- toggle options
|
||||||
vim.keymap.set("n", "<leader>sn", options.toggle_number, { desc = ui.Toggle.." toggle 'number'" })
|
vim.keymap.set("n", "<leader>sn", options.toggle_number, { desc = ui.Toggle.." toggle 'number'" })
|
|
@ -33,7 +33,7 @@ M.setup = function()
|
||||||
end
|
end
|
||||||
|
|
||||||
lazy.setup {
|
lazy.setup {
|
||||||
spec = "fschauen.plugins",
|
spec = "config.plugins",
|
||||||
dev = {
|
dev = {
|
||||||
path = dev_path(),
|
path = dev_path(),
|
||||||
fallback = true,
|
fallback = true,
|
|
@ -7,7 +7,7 @@ return {
|
||||||
{
|
{
|
||||||
"<leader>gb",
|
"<leader>gb",
|
||||||
"<cmd>BlameToggle<cr>",
|
"<cmd>BlameToggle<cr>",
|
||||||
desc = require("fschauen.util.icons").ui.Git .. " [g]it [b]lame (blame.nvim)",
|
desc = require("util.icons").ui.Git .. " [g]it [b]lame (blame.nvim)",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -4,7 +4,7 @@ return {
|
||||||
cmd = "Commentary",
|
cmd = "Commentary",
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Comment
|
local icon = require("util.icons").ui.Comment
|
||||||
return {
|
return {
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
||||||
{ "gc", "<Plug>Commentary", mode = {"n", "x", "o"}, desc = icon.." Comment in/out" },
|
{ "gc", "<Plug>Commentary", mode = {"n", "x", "o"}, desc = icon.." Comment in/out" },
|
|
@ -85,7 +85,7 @@ return {
|
||||||
formatting = {
|
formatting = {
|
||||||
format = require("lspkind").cmp_format {
|
format = require("lspkind").cmp_format {
|
||||||
mode = "symbol_text",
|
mode = "symbol_text",
|
||||||
symbol_map = require("fschauen.util.icons").kind,
|
symbol_map = require("util.icons").kind,
|
||||||
menu = {
|
menu = {
|
||||||
buffer = "buf",
|
buffer = "buf",
|
||||||
nvim_lsp = "LSP",
|
nvim_lsp = "LSP",
|
|
@ -11,7 +11,7 @@ return {
|
||||||
return function() return require("dial.map")[cmd]() .. suffix end
|
return function() return require("dial.map")[cmd]() .. suffix end
|
||||||
end
|
end
|
||||||
|
|
||||||
local icons = require("fschauen.util.icons")
|
local icons = require("util.icons")
|
||||||
local inc, dec = icons.ui.Increment, icons.ui.Decrement
|
local inc, dec = icons.ui.Increment, icons.ui.Decrement
|
||||||
|
|
||||||
return {
|
return {
|
|
@ -1,5 +1,3 @@
|
||||||
local icons = require("fschauen.util.icons")
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"j-hui/fidget.nvim",
|
"j-hui/fidget.nvim",
|
||||||
|
|
||||||
|
@ -9,7 +7,7 @@ return {
|
||||||
|
|
||||||
opts = {
|
opts = {
|
||||||
text = {
|
text = {
|
||||||
done = icons.ui.Checkmark,
|
done = require("util.icons").ui.Checkmark,
|
||||||
spinner = {
|
spinner = {
|
||||||
"▱▱▱▱▱▱▱",
|
"▱▱▱▱▱▱▱",
|
||||||
"▰▱▱▱▱▱▱",
|
"▰▱▱▱▱▱▱",
|
|
@ -32,11 +32,11 @@ return {
|
||||||
},
|
},
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Format
|
local icon = require("util.icons").ui.Format
|
||||||
return {
|
return {
|
||||||
{
|
{
|
||||||
"<leader>F",
|
"<leader>F",
|
||||||
require("fschauen.util.autoformat").toggle,
|
require("util.autoformat").toggle,
|
||||||
desc = icon .. " Toggle auto [F]ormat on write",
|
desc = icon .. " Toggle auto [F]ormat on write",
|
||||||
},
|
},
|
||||||
{
|
{
|
|
@ -4,7 +4,7 @@ return {
|
||||||
cmd = { "G", "Git" },
|
cmd = { "G", "Git" },
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Git
|
local icon = require("util.icons").ui.Git
|
||||||
return {
|
return {
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
||||||
{ "<leader>gS", "<cmd>tab Git<cr>", desc = icon.." [g]it [S]status (fugitive)" },
|
{ "<leader>gS", "<cmd>tab Git<cr>", desc = icon.." [g]it [S]status (fugitive)" },
|
|
@ -4,7 +4,7 @@ return {
|
||||||
cmd = "GitMessenger",
|
cmd = "GitMessenger",
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Git
|
local icon = require("util.icons").ui.Git
|
||||||
return {
|
return {
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
||||||
{ "<leader>gm", "<cmd>GitMessenger<cr>", desc = icon.." [g]it [m]essenger" },
|
{ "<leader>gm", "<cmd>GitMessenger<cr>", desc = icon.." [g]it [m]essenger" },
|
|
@ -26,7 +26,7 @@ return {
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local icon = require("fschauen.util.icons").ui.Git
|
local icon = require("util.icons").ui.Git
|
||||||
return {
|
return {
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
||||||
{ "<leader>gr", open_repo, desc = icon.." open [r]epository in browser" },
|
{ "<leader>gr", open_repo, desc = icon.." open [r]epository in browser" },
|
|
@ -1,4 +1,4 @@
|
||||||
local ui = require("fschauen.util.icons").ui
|
local ui = require("util.icons").ui
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"lukas-reineke/indent-blankline.nvim",
|
"lukas-reineke/indent-blankline.nvim",
|
|
@ -4,10 +4,10 @@ return {
|
||||||
dependencies = "nvim-tree/nvim-web-devicons",
|
dependencies = "nvim-tree/nvim-web-devicons",
|
||||||
|
|
||||||
opts = function()
|
opts = function()
|
||||||
local icons = require("fschauen.util.icons")
|
local icons = require("util.icons")
|
||||||
local dynamic_color = require("fschauen.util.lualine").dynamic_color
|
local colored_when_focused = require("util.lualine").colored_when_focused
|
||||||
local indicator = require("fschauen.util.lualine").indicator
|
local indicator = require("util.lualine").indicator
|
||||||
local window = require("fschauen.util.window")
|
local window = require("util.window")
|
||||||
local orange = "#d65d0e"
|
local orange = "#d65d0e"
|
||||||
|
|
||||||
local is_diagnostics_enabled = function(bufnr)
|
local is_diagnostics_enabled = function(bufnr)
|
||||||
|
@ -20,7 +20,7 @@ return {
|
||||||
|
|
||||||
local autoformat = indicator {
|
local autoformat = indicator {
|
||||||
icon = icons.ui.Format,
|
icon = icons.ui.Format,
|
||||||
cond = require("fschauen.util.autoformat").is_enabled,
|
cond = require("util.autoformat").is_enabled,
|
||||||
}
|
}
|
||||||
local branch = {
|
local branch = {
|
||||||
"branch",
|
"branch",
|
||||||
|
@ -28,7 +28,7 @@ return {
|
||||||
cond = window.is_medium,
|
cond = window.is_medium,
|
||||||
}
|
}
|
||||||
local diagnostics = {
|
local diagnostics = {
|
||||||
dynamic_color("diagnostics"),
|
colored_when_focused("diagnostics"),
|
||||||
cond = is_diagnostics_enabled,
|
cond = is_diagnostics_enabled,
|
||||||
}
|
}
|
||||||
local diag_status = indicator {
|
local diag_status = indicator {
|
||||||
|
@ -39,24 +39,24 @@ return {
|
||||||
"fileformat",
|
"fileformat",
|
||||||
cond = window.is_medium,
|
cond = window.is_medium,
|
||||||
}
|
}
|
||||||
local filename = "fschauen.filename"
|
local filename = "custom.filename"
|
||||||
local filetype = {
|
local filetype = {
|
||||||
dynamic_color("filetype"),
|
colored_when_focused("filetype"),
|
||||||
cond = window.is_medium,
|
cond = window.is_medium,
|
||||||
}
|
}
|
||||||
local mode = "fschauen.mode"
|
local mode = "custom.mode"
|
||||||
local searchcount = "fschauen.searchcount"
|
local searchcount = "custom.searchcount"
|
||||||
local spell = indicator {
|
local spell = indicator {
|
||||||
icon = icons.ui.SpellCheck,
|
icon = icons.ui.SpellCheck,
|
||||||
cond = function() return vim.o.spell end,
|
cond = function() return vim.o.spell end,
|
||||||
}
|
}
|
||||||
local status = {
|
local status = {
|
||||||
dynamic_color("fschauen.status"),
|
colored_when_focused("custom.status"),
|
||||||
color = { fg = orange },
|
color = { fg = orange },
|
||||||
padding = 0,
|
padding = 0,
|
||||||
}
|
}
|
||||||
local whitespace = {
|
local whitespace = {
|
||||||
dynamic_color("fschauen.whitespace"),
|
colored_when_focused("custom.whitespace"),
|
||||||
cond = window.is_wide,
|
cond = window.is_wide,
|
||||||
}
|
}
|
||||||
local wrap = indicator {
|
local wrap = indicator {
|
|
@ -22,10 +22,10 @@ return {
|
||||||
end,
|
end,
|
||||||
|
|
||||||
config = function()
|
config = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Markdown
|
local icon = require("util.icons").ui.Markdown
|
||||||
vim.api.nvim_create_autocmd("FileType", {
|
vim.api.nvim_create_autocmd("FileType", {
|
||||||
desc = "Create key map to toggle markdown preview.",
|
desc = "Create key map to toggle markdown preview.",
|
||||||
group = vim.api.nvim_create_augroup("fschauen.markdown", { clear = true }),
|
group = vim.api.nvim_create_augroup("custom.markdown", { clear = true }),
|
||||||
pattern = "markdown",
|
pattern = "markdown",
|
||||||
callback = function()
|
callback = function()
|
||||||
vim.keymap.set(
|
vim.keymap.set(
|
|
@ -6,7 +6,7 @@ return {
|
||||||
event = { "BufReadPre", "BufNewFile" },
|
event = { "BufReadPre", "BufNewFile" },
|
||||||
|
|
||||||
config = function()
|
config = function()
|
||||||
local icons = require("fschauen.util.icons")
|
local icons = require("util.icons")
|
||||||
|
|
||||||
require("mason").setup {
|
require("mason").setup {
|
||||||
ui = {
|
ui = {
|
|
@ -2,7 +2,7 @@ return {
|
||||||
"danymat/neogen",
|
"danymat/neogen",
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Annotation
|
local icon = require("util.icons").ui.Annotation
|
||||||
return {
|
return {
|
||||||
{
|
{
|
||||||
"<leader>aa",
|
"<leader>aa",
|
|
@ -1,4 +1,4 @@
|
||||||
local ui = require("fschauen.util.icons").ui
|
local ui = require("util.icons").ui
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"NeogitOrg/neogit",
|
"NeogitOrg/neogit",
|
|
@ -1,4 +1,4 @@
|
||||||
local keymap = require("fschauen.plugins.telescope").keymap
|
local keymap = require("config.plugins.telescope").keymap
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"2kabhishek/nerdy.nvim",
|
"2kabhishek/nerdy.nvim",
|
|
@ -6,7 +6,7 @@ return {
|
||||||
{
|
{
|
||||||
"<leader>L",
|
"<leader>L",
|
||||||
function() require("lint").try_lint() end,
|
function() require("lint").try_lint() end,
|
||||||
desc = require("fschauen.util.icons").ui.Lint .. " [L]int file",
|
desc = require("util.icons").ui.Lint .. " [L]int file",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
end,
|
end,
|
|
@ -18,7 +18,7 @@ return {
|
||||||
|
|
||||||
local dismiss_notifications = function() require("notify").dismiss() end
|
local dismiss_notifications = function() require("notify").dismiss() end
|
||||||
|
|
||||||
local keymap = require("fschauen.plugins.telescope").keymap
|
local keymap = require("config.plugins.telescope").keymap
|
||||||
|
|
||||||
return {
|
return {
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
||||||
|
@ -33,7 +33,7 @@ return {
|
||||||
|
|
||||||
config = function()
|
config = function()
|
||||||
local notify = require("notify")
|
local notify = require("notify")
|
||||||
local icons = require("fschauen.util.icons")
|
local icons = require("util.icons")
|
||||||
|
|
||||||
notify.setup {
|
notify.setup {
|
||||||
icons = {
|
icons = {
|
|
@ -22,7 +22,7 @@ local on_attach = function(buffer)
|
||||||
-- stylua: ignore end
|
-- stylua: ignore end
|
||||||
end
|
end
|
||||||
|
|
||||||
local icons = require("fschauen.util.icons")
|
local icons = require("util.icons")
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"nvim-tree/nvim-tree.lua",
|
"nvim-tree/nvim-tree.lua",
|
|
@ -8,7 +8,7 @@ return {
|
||||||
},
|
},
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Web
|
local icon = require("util.icons").ui.Web
|
||||||
return {
|
return {
|
||||||
{
|
{
|
||||||
"<leader>o",
|
"<leader>o",
|
|
@ -17,14 +17,14 @@ return {
|
||||||
local cmdline = [[which plantuml | xargs cat | grep plantuml.jar]]
|
local cmdline = [[which plantuml | xargs cat | grep plantuml.jar]]
|
||||||
local regex = [[\v\s['"]?(\S+/plantuml\.jar)]]
|
local regex = [[\v\s['"]?(\S+/plantuml\.jar)]]
|
||||||
local jar = vim.fn.matchlist(vim.fn.system(cmdline), regex)[2]
|
local jar = vim.fn.matchlist(vim.fn.system(cmdline), regex)[2]
|
||||||
if jar and vim.loop.fs_stat(jar) then
|
if jar and vim.uv.fs_stat(jar) then
|
||||||
vim.g["plantuml_previewer#plantuml_jar_path"] = jar
|
vim.g["plantuml_previewer#plantuml_jar_path"] = jar
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
||||||
config = function()
|
config = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Graph
|
local icon = require("util.icons").ui.Graph
|
||||||
local group = vim.api.nvim_create_augroup("fschauen.plantuml", { clear = true })
|
local group = vim.api.nvim_create_augroup("custom.plantuml", { clear = true })
|
||||||
vim.api.nvim_create_autocmd("FileType", {
|
vim.api.nvim_create_autocmd("FileType", {
|
||||||
desc = "Create key map to toggle plantuml preview.",
|
desc = "Create key map to toggle plantuml preview.",
|
||||||
group = group,
|
group = group,
|
|
@ -1,4 +1,4 @@
|
||||||
local keymap = require("fschauen.plugins.telescope").keymap
|
local keymap = require("config.plugins.telescope").keymap
|
||||||
return {
|
return {
|
||||||
"nvim-telescope/telescope-file-browser.nvim",
|
"nvim-telescope/telescope-file-browser.nvim",
|
||||||
|
|
||||||
|
@ -12,5 +12,5 @@ return {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
config = function() require("telescope").load_extension("file_browser") end,
|
config = function() require("config.plugins.telescope").load_extension("file_browser") end,
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
local ui = require("fschauen.util.icons").ui
|
local ui = require("util.icons").ui
|
||||||
|
|
||||||
local builtin = function(name, opts)
|
local builtin = function(name, opts)
|
||||||
return function(title)
|
return function(title)
|
||||||
|
@ -23,9 +23,10 @@ local pickers = setmetatable({
|
||||||
colorscheme = builtin("colorscheme", { enable_preview = true }),
|
colorscheme = builtin("colorscheme", { enable_preview = true }),
|
||||||
diagnostics = builtin("diagnostics", { bufnr = 0 }),
|
diagnostics = builtin("diagnostics", { bufnr = 0 }),
|
||||||
dotfiles = builtin("find_files", { cwd = "~/.dotfiles", hidden = true }),
|
dotfiles = builtin("find_files", { cwd = "~/.dotfiles", hidden = true }),
|
||||||
|
plugins = builtin("find_files", { cwd = vim.fn.stdpath("data") .. "/lazy" }),
|
||||||
selection = function(title)
|
selection = function(title)
|
||||||
return function()
|
return function()
|
||||||
local text = require("fschauen.util").get_selected_text()
|
local text = require("util").get_selected_text()
|
||||||
return require("telescope.builtin").grep_string {
|
return require("telescope.builtin").grep_string {
|
||||||
prompt_title = string.format(title .. ": %s ", text),
|
prompt_title = string.format(title .. ": %s ", text),
|
||||||
search = text,
|
search = text,
|
||||||
|
@ -57,7 +58,20 @@ local keymap = function(spec)
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
local keys = {
|
return {
|
||||||
|
"nvim-telescope/telescope.nvim",
|
||||||
|
|
||||||
|
dependencies = {
|
||||||
|
"nvim-telescope/telescope-fzf-native.nvim",
|
||||||
|
build = "cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release "
|
||||||
|
.. "&& cmake --build build --config Release "
|
||||||
|
.. "&& cmake --install build --prefix build",
|
||||||
|
},
|
||||||
|
|
||||||
|
cmd = "Telescope",
|
||||||
|
|
||||||
|
keys = vim
|
||||||
|
.iter({
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
||||||
{ "a", pickers.autocommands " Autocommands" , desc = "[a]utocommands" },
|
{ "a", pickers.autocommands " Autocommands" , desc = "[a]utocommands" },
|
||||||
{ "b", pickers.buffers " Buffers" , desc = "[b]uffers" },
|
{ "b", pickers.buffers " Buffers" , desc = "[b]uffers" },
|
||||||
|
@ -81,7 +95,7 @@ local keys = {
|
||||||
{ "m", pickers.all_man_pages " Man pages" , desc = "[m]an pages" },
|
{ "m", pickers.all_man_pages " Man pages" , desc = "[m]an pages" },
|
||||||
--"n" used in vim-notify
|
--"n" used in vim-notify
|
||||||
{ "o", pickers.vim_options " Vim options" , desc = "[o]ptions" },
|
{ "o", pickers.vim_options " Vim options" , desc = "[o]ptions" },
|
||||||
--"p"
|
{ "p", pickers.plugins " Installed Plugins" , desc = "[p]lugins" },
|
||||||
{ "q", pickers.quickfix " Quickfix" , desc = "[q]uickfix" },
|
{ "q", pickers.quickfix " Quickfix" , desc = "[q]uickfix" },
|
||||||
{ "r", pickers.lsp_references " References" , desc = "[r]eferences" },
|
{ "r", pickers.lsp_references " References" , desc = "[r]eferences" },
|
||||||
{ "R", pickers.registers " Registers" , desc = "[R]registers" },
|
{ "R", pickers.registers " Registers" , desc = "[R]registers" },
|
||||||
|
@ -101,22 +115,9 @@ local keys = {
|
||||||
{ "/", pickers.search_history " Search history" , desc = "[/]search history" },
|
{ "/", pickers.search_history " Search history" , desc = "[/]search history" },
|
||||||
{ " ", pickers.resume " Resume" , desc = "Resume " },
|
{ " ", pickers.resume " Resume" , desc = "Resume " },
|
||||||
-- stylua: ignore end
|
-- stylua: ignore end
|
||||||
}
|
})
|
||||||
|
:map(keymap)
|
||||||
return {
|
:totable(),
|
||||||
"nvim-telescope/telescope.nvim",
|
|
||||||
|
|
||||||
dependencies = {
|
|
||||||
"nvim-telescope/telescope-fzf-native.nvim",
|
|
||||||
build = "cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release "
|
|
||||||
.. "&& cmake --build build --config Release "
|
|
||||||
.. "&& cmake --install build --prefix build",
|
|
||||||
},
|
|
||||||
|
|
||||||
cmd = "Telescope",
|
|
||||||
|
|
||||||
---@diagnostic disable-next-line: param-type-mismatch
|
|
||||||
keys = vim.iter(keys):map(keymap):totable(),
|
|
||||||
|
|
||||||
-- Export this function so we can use in other plugins.
|
-- Export this function so we can use in other plugins.
|
||||||
keymap = keymap,
|
keymap = keymap,
|
||||||
|
@ -197,7 +198,7 @@ return {
|
||||||
require("telescope").load_extension("fzf")
|
require("telescope").load_extension("fzf")
|
||||||
vim.api.nvim_create_autocmd("User", {
|
vim.api.nvim_create_autocmd("User", {
|
||||||
desc = "Enable line number in Telescope previewers.",
|
desc = "Enable line number in Telescope previewers.",
|
||||||
group = vim.api.nvim_create_augroup("fschauen.telescope", { clear = true }),
|
group = vim.api.nvim_create_augroup("custom.telescope", { clear = true }),
|
||||||
pattern = "TelescopePreviewerLoaded",
|
pattern = "TelescopePreviewerLoaded",
|
||||||
command = "setlocal number",
|
command = "setlocal number",
|
||||||
})
|
})
|
|
@ -13,14 +13,14 @@ return {
|
||||||
dev = true,
|
dev = true,
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Text
|
local icon = require("util.icons").ui.Text
|
||||||
local description = icon .. " [c]hange text [c]ase"
|
local description = icon .. " [c]hange text [c]ase"
|
||||||
local theme = function() return require("telescope.themes").get_cursor() end
|
local theme = function() return require("telescope.themes").get_cursor() end
|
||||||
|
|
||||||
return {
|
return {
|
||||||
{
|
{
|
||||||
"<leader>cc",
|
"<leader>cc",
|
||||||
function() require("telescope").extensions.textcase.normal_mode(theme()) end,
|
function() require("config.plugins.telescope").extensions.textcase.normal_mode(theme()) end,
|
||||||
mode = "n",
|
mode = "n",
|
||||||
desc = description,
|
desc = description,
|
||||||
},
|
},
|
||||||
|
@ -55,6 +55,6 @@ return {
|
||||||
require("textcase").setup {
|
require("textcase").setup {
|
||||||
default_keymappings_enabled = false,
|
default_keymappings_enabled = false,
|
||||||
}
|
}
|
||||||
require("telescope").load_extension("textcase")
|
require("config.plugins.telescope").load_extension("textcase")
|
||||||
end,
|
end,
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
local keymap = require("fschauen.plugins.telescope").keymap
|
local keymap = require("config.plugins.telescope").keymap
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"folke/todo-comments.nvim",
|
"folke/todo-comments.nvim",
|
||||||
|
@ -15,7 +15,7 @@ return {
|
||||||
},
|
},
|
||||||
|
|
||||||
opts = function()
|
opts = function()
|
||||||
local ui = require("fschauen.util.icons").ui
|
local ui = require("util.icons").ui
|
||||||
return {
|
return {
|
||||||
keywords = {
|
keywords = {
|
||||||
TODO = { icon = ui.Checkbox },
|
TODO = { icon = ui.Checkbox },
|
|
@ -14,7 +14,7 @@ return {
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Tree
|
local icon = require("util.icons").ui.Tree
|
||||||
|
|
||||||
return {
|
return {
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
|
@ -6,7 +6,7 @@ return {
|
||||||
cmd = "Trouble",
|
cmd = "Trouble",
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.TrafficLight
|
local icon = require("util.icons").ui.TrafficLight
|
||||||
local key = function(lhs, rhs, desc) return { lhs, rhs, desc = icon .. " " .. desc } end
|
local key = function(lhs, rhs, desc) return { lhs, rhs, desc = icon .. " " .. desc } end
|
||||||
return {
|
return {
|
||||||
-- stylua: ignore start
|
-- stylua: ignore start
|
|
@ -12,7 +12,7 @@ return {
|
||||||
end,
|
end,
|
||||||
|
|
||||||
keys = function()
|
keys = function()
|
||||||
local icon = require("fschauen.util.icons").ui.Undo
|
local icon = require("util.icons").ui.Undo
|
||||||
return {
|
return {
|
||||||
{ "<leader>u", "<cmd>UndotreeToggle<cr>", desc = icon .. " toggle [u]ndo tree" },
|
{ "<leader>u", "<cmd>UndotreeToggle<cr>", desc = icon .. " toggle [u]ndo tree" },
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
local ui = require("fschauen.util.icons").ui
|
local ui = require("util.icons").ui
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"lukas-reineke/virt-column.nvim",
|
"lukas-reineke/virt-column.nvim",
|
27
config/nvim/lua/config/plugins/whitespace.lua
Normal file
27
config/nvim/lua/config/plugins/whitespace.lua
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
return {
|
||||||
|
"ntpeters/vim-better-whitespace",
|
||||||
|
|
||||||
|
event = { "BufReadPost", "BufNewFile" },
|
||||||
|
|
||||||
|
init = function()
|
||||||
|
vim.g.better_whitespace_filetypes_blacklist = {
|
||||||
|
"diff",
|
||||||
|
"fugitive",
|
||||||
|
"git",
|
||||||
|
"gitcommit",
|
||||||
|
"help",
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
|
||||||
|
keys = function()
|
||||||
|
local icon = require("util.icons").ui.Whitespace
|
||||||
|
return {
|
||||||
|
-- stylua: ignore start
|
||||||
|
{ "]w", "<cmd>NextTrailingWhitespace<cr>", desc = icon.." next whitespace" },
|
||||||
|
{ "[w", "<cmd>PrevTrailingWhitespace<cr>", desc = icon.." previous whitespace" },
|
||||||
|
{ "<leader>w", "<cmd>ToggleWhitespace<cr>", desc = icon.." toggle whitespace" },
|
||||||
|
{ "<leader>W", "<cmd>StripWhitespace<cr>", desc = icon.." strip whitespace" },
|
||||||
|
-- stylua: ignore end
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
}
|
|
@ -1,27 +0,0 @@
|
||||||
return {
|
|
||||||
"ntpeters/vim-better-whitespace",
|
|
||||||
|
|
||||||
event = { "BufReadPost", "BufNewFile" },
|
|
||||||
|
|
||||||
init = function()
|
|
||||||
vim.g.better_whitespace_filetypes_blacklist = {
|
|
||||||
"diff",
|
|
||||||
"fugitive",
|
|
||||||
"git",
|
|
||||||
"gitcommit",
|
|
||||||
"help",
|
|
||||||
}
|
|
||||||
end,
|
|
||||||
|
|
||||||
keys = function()
|
|
||||||
local icon = require("fschauen.util.icons").ui.Whitespace
|
|
||||||
return {
|
|
||||||
-- stylua: ignore start
|
|
||||||
{ "<leader>ww", "<cmd>ToggleWhitespace<cr>", desc = icon.." toggle whitespace" },
|
|
||||||
{ "<leader>wj", "<cmd>NextTrailingWhitespace<cr>", desc = icon.." next whitespace" },
|
|
||||||
{ "<leader>wk", "<cmd>PrevTrailingWhitespace<cr>", desc = icon.." previous whitespace" },
|
|
||||||
{ "<leader>W", "<cmd>StripWhitespace<cr>", desc = icon.." strip whitespace" },
|
|
||||||
-- stylua: ignore end
|
|
||||||
}
|
|
||||||
end,
|
|
||||||
}
|
|
|
@ -23,7 +23,7 @@ function M:update_status(is_focused)
|
||||||
|
|
||||||
local path = vim.fn.expand("%:~:.")
|
local path = vim.fn.expand("%:~:.")
|
||||||
|
|
||||||
local window = require("fschauen.util.window")
|
local window = require("util.window")
|
||||||
if window.is_wide() then
|
if window.is_wide() then
|
||||||
return path
|
return path
|
||||||
elseif window.is_medium() then
|
elseif window.is_medium() then
|
|
@ -23,7 +23,7 @@ M.enable = function()
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
M._augroup = vim.api.nvim_create_augroup("fschauen.autoformat", { clear = true })
|
M._augroup = vim.api.nvim_create_augroup("custom.autoformat", { clear = true })
|
||||||
vim.api.nvim_create_autocmd("BufWritePost", {
|
vim.api.nvim_create_autocmd("BufWritePost", {
|
||||||
desc = "Format files on write.",
|
desc = "Format files on write.",
|
||||||
group = M._augroup,
|
group = M._augroup,
|
|
@ -1,8 +1,5 @@
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
local util = require("fschauen.util")
|
|
||||||
local exists = util.exists
|
|
||||||
|
|
||||||
---Find lua module source.
|
---Find lua module source.
|
||||||
---@param modname string Module name.
|
---@param modname string Module name.
|
||||||
---@return table results List of source files in the runtime path that implement
|
---@return table results List of source files in the runtime path that implement
|
||||||
|
@ -12,6 +9,8 @@ local find_module_sources = function(modname)
|
||||||
local base = "lua/" .. modname:gsub("%.", "/")
|
local base = "lua/" .. modname:gsub("%.", "/")
|
||||||
local candidates = { base .. ".lua", base .. "/init.lua" }
|
local candidates = { base .. ".lua", base .. "/init.lua" }
|
||||||
|
|
||||||
|
local exists = require("util").exists
|
||||||
|
|
||||||
local results = {}
|
local results = {}
|
||||||
for _, directory in ipairs(vim.opt.runtimepath:get()) do
|
for _, directory in ipairs(vim.opt.runtimepath:get()) do
|
||||||
for _, candidate in ipairs(candidates) do
|
for _, candidate in ipairs(candidates) do
|
||||||
|
@ -29,8 +28,7 @@ end
|
||||||
M.execute_lines = function(first, last)
|
M.execute_lines = function(first, last)
|
||||||
first = first or vim.fn.line(".")
|
first = first or vim.fn.line(".")
|
||||||
last = last or first
|
last = last or first
|
||||||
---@diagnostic disable-next-line: param-type-mismatch
|
local code = vim.iter(vim.fn.getline(first, last)):join("\n")
|
||||||
local code = vim.fn.join(vim.fn.getline(first, last), "\n")
|
|
||||||
loadstring(code)()
|
loadstring(code)()
|
||||||
end
|
end
|
||||||
|
|
|
@ -3,7 +3,7 @@ local M = {}
|
||||||
---Make a lualine component that is colored only when focused.
|
---Make a lualine component that is colored only when focused.
|
||||||
---@param base table|string Either a lualine component or a component name.
|
---@param base table|string Either a lualine component or a component name.
|
||||||
---@return table component
|
---@return table component
|
||||||
M.dynamic_color = function(base)
|
M.colored_when_focused = function(base)
|
||||||
local component = {}
|
local component = {}
|
||||||
|
|
||||||
if type(base) == "string" then
|
if type(base) == "string" then
|
||||||
|
@ -19,14 +19,14 @@ M.dynamic_color = function(base)
|
||||||
self,
|
self,
|
||||||
vim.tbl_deep_extend("keep", options or {}, {
|
vim.tbl_deep_extend("keep", options or {}, {
|
||||||
colored = true,
|
colored = true,
|
||||||
dynamic_color = true,
|
colored_when_focused = true,
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
self.saved_highlight = self.options.color_highlight
|
self.saved_highlight = self.options.color_highlight
|
||||||
end
|
end
|
||||||
|
|
||||||
function component:update_status(is_focused)
|
function component:update_status(is_focused)
|
||||||
if self.options.dynamic_color then self.options.colored = is_focused end
|
if self.options.colored_when_focused then self.options.colored = is_focused end
|
||||||
return component.super.update_status(self, is_focused)
|
return component.super.update_status(self, is_focused)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Reference in a new issue