working nvf!
This commit is contained in:
parent
5548480371
commit
2a80c2bac1
53 changed files with 330 additions and 172 deletions
|
@ -81,7 +81,7 @@
|
||||||
helix.enable = true;
|
helix.enable = true;
|
||||||
kakoune.enable = true;
|
kakoune.enable = true;
|
||||||
nixvim.enable = false; # broken at the moment
|
nixvim.enable = false; # broken at the moment
|
||||||
# neovim.enable = true;
|
neovim.enable = true;
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
pipewire.enable = true;
|
pipewire.enable = true;
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
inputs,
|
config,
|
||||||
lib,
|
lib,
|
||||||
|
inputs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) filter map toString elem;
|
inherit (builtins) filter map toString elem;
|
||||||
|
@ -10,7 +11,7 @@
|
||||||
|
|
||||||
mkNeovimModule = {
|
mkNeovimModule = {
|
||||||
path,
|
path,
|
||||||
ingoredPaths ? [./nvf.nix],
|
ingoredPaths ? [./nvf.nix ./plugins/sources/default.nix],
|
||||||
}:
|
}:
|
||||||
filter (hasSuffix ".nix") (
|
filter (hasSuffix ".nix") (
|
||||||
map toString (
|
map toString (
|
||||||
|
@ -20,9 +21,9 @@
|
||||||
|
|
||||||
nvf = inputs.neovim-flake;
|
nvf = inputs.neovim-flake;
|
||||||
in {
|
in {
|
||||||
imports = concatLists [
|
imports = concatLists [
|
||||||
# neovim-flake home-manager module
|
# neovim-flake home-manager module
|
||||||
[nvf.homeManagerModules.default]
|
[nvf.nixosModules.default]
|
||||||
|
|
||||||
# construct this entore directory as a module
|
# construct this entore directory as a module
|
||||||
# which means all default.nix files will be imported automtically
|
# which means all default.nix files will be imported automtically
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
-- luacheck: ignore
|
-- luacheck: ignore
|
||||||
local float_options = {
|
local float_options = {
|
||||||
border = 'single',
|
border = 'single',
|
||||||
max_width = math.ceil(vim.api.nvim_win_get_width(0) * 0.6),
|
max_width = math.ceil(vim.api.nvim_win_get_width(0) * 0.6),
|
||||||
max_height = math.ceil(vim.api.nvim_win_get_height(0) * 0.8),
|
max_height = math.ceil(vim.api.nvim_win_get_height(0) * 0.8),
|
||||||
}
|
}
|
||||||
|
|
||||||
vim.lsp.handlers['textDocument/publishDiagnostics'] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
|
vim.lsp.handlers['textDocument/publishDiagnostics'] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
|
||||||
virtual_text = true,
|
virtual_text = true,
|
||||||
signs = false,
|
signs = false,
|
||||||
underline = true,
|
underline = true,
|
||||||
update_in_insert = false,
|
update_in_insert = false,
|
||||||
severity_sort = true,
|
severity_sort = true,
|
||||||
})
|
})
|
||||||
|
|
||||||
vim.lsp.handlers['textDocument/show_line_diagnostics'] = vim.lsp.with(vim.lsp.handlers.hover, float_options)
|
vim.lsp.handlers['textDocument/show_line_diagnostics'] = vim.lsp.with(vim.lsp.handlers.hover, float_options)
|
||||||
|
@ -18,17 +18,17 @@ vim.lsp.handlers['textDocument/show_line_diagnostics'] = vim.lsp.with(vim.lsp.ha
|
||||||
-- Prevent show notification
|
-- Prevent show notification
|
||||||
-- <https://github.com/neovim/neovim/issues/20457#issuecomment-1266782345>
|
-- <https://github.com/neovim/neovim/issues/20457#issuecomment-1266782345>
|
||||||
vim.lsp.handlers['textDocument/hover'] = function(_, result, ctx, config)
|
vim.lsp.handlers['textDocument/hover'] = function(_, result, ctx, config)
|
||||||
config = config or float_options
|
config = config or float_options
|
||||||
config.focus_id = ctx.method
|
config.focus_id = ctx.method
|
||||||
if not result then
|
if not result then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local markdown_lines = vim.lsp.util.convert_input_to_markdown_lines(result.contents)
|
local markdown_lines = vim.lsp.util.convert_input_to_markdown_lines(result.contents)
|
||||||
markdown_lines = vim.lsp.util.trim_empty_lines(markdown_lines)
|
markdown_lines = vim.lsp.util.trim_empty_lines(markdown_lines)
|
||||||
if vim.tbl_isempty(markdown_lines) then
|
if vim.tbl_isempty(markdown_lines) then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
return vim.lsp.util.open_floating_preview(markdown_lines, 'markdown', config)
|
return vim.lsp.util.open_floating_preview(markdown_lines, 'markdown', config)
|
||||||
end
|
end
|
||||||
|
|
||||||
vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(vim.lsp.handlers.signature_help, float_options)
|
vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(vim.lsp.handlers.signature_help, float_options)
|
||||||
|
|
|
@ -1,14 +1,88 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
self,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
inherit (pkgs.vimPlugins) friendly-snippets aerial-nvim nvim-surround undotree mkdir-nvim ssr-nvim direnv-vim legendary-nvim;
|
inherit (pkgs.vimPlugins) friendly-snippets aerial-nvim nvim-surround undotree mkdir-nvim ssr-nvim direnv-vim legendary-nvim;
|
||||||
pluginSources = import ./sources {inherit self pkgs;};
|
inherit (pkgs) fetchFromGitHub;
|
||||||
|
inherit (pkgs.vimUtils) buildVimPlugin;
|
||||||
|
|
||||||
|
pluginSources = {
|
||||||
|
|
||||||
|
smart-splits = buildVimPlugin {
|
||||||
|
name = "smart-splits";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "mrjones2014";
|
||||||
|
repo = "smart-splits.nvim";
|
||||||
|
rev = "95833675cd92538bf9cded1d2d58d1fc271c5428";
|
||||||
|
hash = "sha256-TsEzHalLTLp9USV0aGRadAObViC/OpIJeuEJ95lJUL8=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
regexplainer = buildVimPlugin {
|
||||||
|
name = "nvim-regexplainer";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "bennypowers";
|
||||||
|
repo = "nvim-regexplainer";
|
||||||
|
rev = "4250c8f3c1307876384e70eeedde5149249e154f";
|
||||||
|
hash = "sha256-15DLbKtOgUPq4DcF71jFYu31faDn52k3P1x47GL3+b0=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
specs-nvim = buildVimPlugin {
|
||||||
|
name = "specs.nvim";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "notashelf";
|
||||||
|
repo = "specs.nvim";
|
||||||
|
rev = "0792aaebf8cbac0c8545c43ad648b98deb83af42";
|
||||||
|
hash = "sha256-doHE/3bRuC8lyYxMk927JmwLfiy7aR22+i+BNefEGJ4=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
deferred-clipboard = buildVimPlugin {
|
||||||
|
name = "deferred-clipboard";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "EtiamNullam";
|
||||||
|
repo = "deferred-clipboard.nvim";
|
||||||
|
rev = "810a29d166eaa41afc220cc7cd85eeaa3c43b37f";
|
||||||
|
hash = "sha256-nanNQEtpjv0YKEkkrPmq/5FPxq+Yj/19cs0Gf7YgKjU=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
/*
|
||||||
|
data-viewer-nvim = buildVimPlugin {
|
||||||
|
name = "data-viewer.nvim";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "VidocqH";
|
||||||
|
repo = "data-viewer.nvim";
|
||||||
|
rev = "40ddf37bb7ab6c04ff9e820812d1539afe691668";
|
||||||
|
hash = "sha256-D5hvLhsYski11H9qiDDL2zlZMtYmbpHgpewiWR6C7rE=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
vim-nftables = buildVimPlugin {
|
||||||
|
name = "vim-nftables";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "awisse";
|
||||||
|
repo = "vim-nftables";
|
||||||
|
rev = "bc29309080b4c7e1888ffb1a830846be16e5b8e7";
|
||||||
|
hash = "sha256-L1x3Hv95t/DBBrLtPBKrqaTbIPor/NhVuEHVIYo/OaA=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
neotab-nvim = buildVimPlugin {
|
||||||
|
name = "neotab.nvim";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "kawre";
|
||||||
|
repo = "neotab.nvim";
|
||||||
|
rev = "6c6107dddaa051504e433608f59eca606138269b";
|
||||||
|
hash = "sha256-bSFKbjj8fJHdfBzYoQ9l3NU0GAYfdfCbESKbwdbLNSw=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
in {
|
in {
|
||||||
home-manager.users.${username}.programs.neovim-flake.settings.vim.extraPlugins = {
|
programs.neovim-flake.settings.vim.extraPlugins = {
|
||||||
# plugins that are pulled from nixpkgs
|
# plugins that are pulled from nixpkgs
|
||||||
direnv = {package = direnv-vim;};
|
direnv = {package = direnv-vim;};
|
||||||
friendly-snippets = {package = friendly-snippets;};
|
friendly-snippets = {package = friendly-snippets;};
|
||||||
|
@ -46,7 +120,7 @@ in {
|
||||||
# plugins that are built from their sources
|
# plugins that are built from their sources
|
||||||
regexplainer = {package = pluginSources.regexplainer;};
|
regexplainer = {package = pluginSources.regexplainer;};
|
||||||
vim-nftables = {package = pluginSources.vim-nftables;};
|
vim-nftables = {package = pluginSources.vim-nftables;};
|
||||||
|
/*
|
||||||
data-view = {
|
data-view = {
|
||||||
package = pluginSources.data-viewer-nvim;
|
package = pluginSources.data-viewer-nvim;
|
||||||
setup = ''
|
setup = ''
|
||||||
|
@ -63,16 +137,7 @@ in {
|
||||||
vim.api.nvim_set_keymap('n', '<leader>dvc', ':DataViewerClose<CR>', {noremap = true})
|
vim.api.nvim_set_keymap('n', '<leader>dvc', ':DataViewerClose<CR>', {noremap = true})
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
*/
|
||||||
slides-nvim = {
|
|
||||||
package = pluginSources.slides-nvim;
|
|
||||||
setup = "require('slides').setup {}";
|
|
||||||
};
|
|
||||||
|
|
||||||
hmts = {
|
|
||||||
package = pluginSources.hmts;
|
|
||||||
after = ["treesitter"];
|
|
||||||
};
|
|
||||||
|
|
||||||
smart-splits = {
|
smart-splits = {
|
||||||
package = pluginSources.smart-splits;
|
package = pluginSources.smart-splits;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
assistant.copilot = {
|
assistant.copilot = {
|
||||||
enable = true;
|
enable = true;
|
||||||
cmp.enable = true;
|
cmp.enable = true;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
autocomplete = {
|
autocomplete = {
|
||||||
enable = true;
|
enable = true;
|
||||||
type = "nvim-cmp";
|
type = "nvim-cmp";
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
autopairs.enable = true;
|
autopairs.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
binds = {
|
binds = {
|
||||||
whichKey.enable = true;
|
whichKey.enable = true;
|
||||||
cheatsheet.enable = false;
|
cheatsheet.enable = false;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
comments.comment-nvim.enable = true;
|
comments.comment-nvim.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
dashboard = {
|
dashboard = {
|
||||||
alpha.enable = true;
|
alpha.enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
debugger.nvim-dap = {
|
debugger.nvim-dap = {
|
||||||
enable = true;
|
enable = true;
|
||||||
ui.enable = true;
|
ui.enable = true;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
filetree = {
|
filetree = {
|
||||||
nvimTree = {
|
nvimTree = {
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
gestures.gesture-nvim.enable = false;
|
gestures.gesture-nvim.enable = false;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
git = {
|
git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.users.${username}.programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
languages = {
|
languages = {
|
||||||
enableLSP = true;
|
enableLSP = true;
|
||||||
enableFormat = true;
|
enableFormat = true;
|
||||||
|
@ -28,17 +28,6 @@ in {
|
||||||
elixir.enable = false;
|
elixir.enable = false;
|
||||||
svelte.enable = false;
|
svelte.enable = false;
|
||||||
sql.enable = false;
|
sql.enable = false;
|
||||||
java = let
|
|
||||||
jdtlsCache = "${config.xdg.cacheHome}/jdtls";
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
lsp.package = [
|
|
||||||
"${lib.getExe pkgs.jdt-language-server}"
|
|
||||||
"-configuration ${jdtlsCache}/config"
|
|
||||||
"-data ${jdtlsCache}/workspace"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
lua = {
|
lua = {
|
||||||
enable = true;
|
enable = true;
|
||||||
lsp.neodev.enable = true;
|
lsp.neodev.enable = true;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
lsp = {
|
lsp = {
|
||||||
formatOnSave = true;
|
formatOnSave = true;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
minimap = {
|
minimap = {
|
||||||
# cool for vanity but practically useless on small screens
|
# cool for vanity but practically useless on small screens
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
notes = {
|
notes = {
|
||||||
todo-comments.enable = true;
|
todo-comments.enable = true;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
notify = {
|
notify = {
|
||||||
nvim-notify.enable = true;
|
nvim-notify.enable = true;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
presence.neocord.enable = false;
|
presence.neocord.enable = false;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
projects = {
|
projects = {
|
||||||
project-nvim = {
|
project-nvim = {
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
session.nvim-session-manager = {
|
session.nvim-session-manager = {
|
||||||
enable = false;
|
enable = false;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
statusline = {
|
statusline = {
|
||||||
lualine = {
|
lualine = {
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
tabline = {
|
tabline = {
|
||||||
nvimBufferline.enable = true;
|
nvimBufferline.enable = true;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
telescope.enable = true;
|
telescope.enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
terminal = {
|
terminal = {
|
||||||
toggleterm = {
|
toggleterm = {
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
theme = {
|
theme = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
treesitter = {
|
treesitter = {
|
||||||
fold = true;
|
fold = true;
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
ui = {
|
ui = {
|
||||||
noice.enable = true;
|
noice.enable = true;
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
utility = {
|
utility = {
|
||||||
ccc.enable = true;
|
ccc.enable = true;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{config, ...}: let
|
{config, ...}: let
|
||||||
inherit (config.modules.other.system) username;
|
inherit (config.modules.other.system) username;
|
||||||
in {
|
in {
|
||||||
home-manager.${username}.
|
|
||||||
programs.neovim-flake.settings.vim = {
|
programs.neovim-flake.settings.vim = {
|
||||||
visuals = {
|
visuals = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -1,85 +0,0 @@
|
||||||
{
|
|
||||||
self,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
inherit (self) pins;
|
|
||||||
inherit (pkgs) fetchFromGitHub;
|
|
||||||
inherit (pkgs.vimUtils) buildVimPlugin;
|
|
||||||
|
|
||||||
sources = {
|
|
||||||
hmts = buildVimPlugin {
|
|
||||||
name = "hmts.nvim";
|
|
||||||
src = pins."hmts.nvim";
|
|
||||||
};
|
|
||||||
|
|
||||||
smart-splits = buildVimPlugin {
|
|
||||||
name = "smart-splits";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "mrjones2014";
|
|
||||||
repo = "smart-splits.nvim";
|
|
||||||
rev = "95833675cd92538bf9cded1d2d58d1fc271c5428";
|
|
||||||
hash = "";
|
|
||||||
};
|
|
||||||
|
|
||||||
regexplainer = buildVimPlugin {
|
|
||||||
name = "nvim-regexplainer";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "bennypowers";
|
|
||||||
repo = "nvim-regexplainer";
|
|
||||||
rev = "4250c8f3c1307876384e70eeedde5149249e154f";
|
|
||||||
hash = "sha256-15DLbKtOgUPq4DcF71jFYu31faDn52k3P1x47GL3+b0=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
specs-nvim = buildVimPlugin {
|
|
||||||
name = "specs.nvim";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "notashelf";
|
|
||||||
repo = "specs.nvim";
|
|
||||||
rev = "0792aaebf8cbac0c8545c43ad648b98deb83af42";
|
|
||||||
hash = "sha256-doHE/3bRuC8lyYxMk927JmwLfiy7aR22+i+BNefEGJ4=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
deferred-clipboard = buildVimPlugin {
|
|
||||||
name = "deferred-clipboard";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "EtiamNullam";
|
|
||||||
repo = "deferred-clipboard.nvim";
|
|
||||||
rev = "810a29d166eaa41afc220cc7cd85eeaa3c43b37f";
|
|
||||||
hash = "sha256-nanNQEtpjv0YKEkkrPmq/5FPxq+Yj/19cs0Gf7YgKjU=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
data-viewer-nvim = buildVimPlugin {
|
|
||||||
name = "data-viewer.nvim";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "VidocqH";
|
|
||||||
repo = "data-viewer.nvim";
|
|
||||||
rev = "40ddf37bb7ab6c04ff9e820812d1539afe691668";
|
|
||||||
hash = "sha256-D5hvLhsYski11H9qiDDL2zlZMtYmbpHgpewiWR6C7rE=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
vim-nftables = buildVimPlugin {
|
|
||||||
name = "vim-nftables";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "awisse";
|
|
||||||
repo = "vim-nftables";
|
|
||||||
rev = "bc29309080b4c7e1888ffb1a830846be16e5b8e7";
|
|
||||||
hash = "sha256-L1x3Hv95t/DBBrLtPBKrqaTbIPor/NhVuEHVIYo/OaA=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
neotab-nvim = buildVimPlugin {
|
|
||||||
name = "neotab.nvim";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "kawre";
|
|
||||||
repo = "neotab.nvim";
|
|
||||||
rev = "6c6107dddaa051504e433608f59eca606138269b";
|
|
||||||
hash = "sha256-bSFKbjj8fJHdfBzYoQ9l3NU0GAYfdfCbESKbwdbLNSw=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
in
|
|
||||||
sources
|
|
8
modules/editors/nvf/runtime/after/ftdetect/gitconfig.lua
Normal file
8
modules/editors/nvf/runtime/after/ftdetect/gitconfig.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.api.nvim_create_autocmd({ 'BufNewFile', 'BufRead' }, {
|
||||||
|
pattern = 'gitconfig*,.gitconfig*',
|
||||||
|
callback = function()
|
||||||
|
vim.bo.filetype = 'gitconfig'
|
||||||
|
end,
|
||||||
|
once = false,
|
||||||
|
})
|
8
modules/editors/nvf/runtime/after/ftdetect/graphql.lua
Normal file
8
modules/editors/nvf/runtime/after/ftdetect/graphql.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.api.nvim_create_autocmd({ 'BufNewFile', 'BufRead' }, {
|
||||||
|
pattern = '*.graphql,*.graphqls,*.gql',
|
||||||
|
callback = function()
|
||||||
|
vim.bo.filetype = 'graphql'
|
||||||
|
end,
|
||||||
|
once = false,
|
||||||
|
})
|
4
modules/editors/nvf/runtime/after/ftplugin/envrc.lua
Normal file
4
modules/editors/nvf/runtime/after/ftplugin/envrc.lua
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.filetype.add({
|
||||||
|
filename = { ['.envrc'] = 'bash' },
|
||||||
|
})
|
2
modules/editors/nvf/runtime/after/ftplugin/gitcommit.lua
Normal file
2
modules/editors/nvf/runtime/after/ftplugin/gitcommit.lua
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.opt_local.textwidth = 80
|
5
modules/editors/nvf/runtime/after/ftplugin/go.lua
Normal file
5
modules/editors/nvf/runtime/after/ftplugin/go.lua
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.opt_local.tabstop = 4
|
||||||
|
vim.opt_local.shiftwidth = 0
|
||||||
|
vim.opt_local.expandtab = false
|
||||||
|
vim.opt_local.list = false
|
14
modules/editors/nvf/runtime/after/ftplugin/json.lua
Normal file
14
modules/editors/nvf/runtime/after/ftplugin/json.lua
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
vim.keymap.set('n', '<leader>jf', '<cmd>%!jq<cr>', { noremap = true, silent = true, desc = 'Format with jq' })
|
||||||
|
vim.keymap.set('n', '<leader>jm', '<cmd>%!jq -c<cr>', { noremap = true, silent = true, desc = 'Minify with jq' })
|
||||||
|
|
||||||
|
-- add comma to the end of the line on new line
|
||||||
|
vim.keymap.set('n', 'o', function()
|
||||||
|
local line = vim.api.nvim_get_current_line()
|
||||||
|
|
||||||
|
local should_add_comma = string.find(line, '[^,{[]$')
|
||||||
|
if should_add_comma then
|
||||||
|
return 'A,<cr>'
|
||||||
|
else
|
||||||
|
return 'o'
|
||||||
|
end
|
||||||
|
end, { buffer = true, expr = true })
|
13
modules/editors/nvf/runtime/after/ftplugin/man.lua
Normal file
13
modules/editors/nvf/runtime/after/ftplugin/man.lua
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
local opts = { noremap = true, silent = true, buffer = 0 }
|
||||||
|
local wincmd = vim.b.pager and 'q' or 'c'
|
||||||
|
vim.keymap.set('n', 'q', '<cmd>lclose<CR><C-W>' .. wincmd, opts)
|
||||||
|
vim.keymap.set('n', '<Leader>o', function()
|
||||||
|
-- TODO: can this be done in a floating window?
|
||||||
|
require('man').show_toc()
|
||||||
|
end, opts)
|
||||||
|
|
||||||
|
vim.b.undo_ftplugin = (vim.b.undo_ftplugin or '')
|
||||||
|
.. (vim.b.undo_ftplugin ~= nil and ' | ' or '')
|
||||||
|
.. 'sil! nunmap <buffer> <Leader>o'
|
||||||
|
.. ' | sil! nunmap <buffer> q'
|
30
modules/editors/nvf/runtime/after/ftplugin/markdown.lua
Normal file
30
modules/editors/nvf/runtime/after/ftplugin/markdown.lua
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.opt_local.textwidth = 80
|
||||||
|
|
||||||
|
local CR = vim.api.nvim_replace_termcodes('<cr>', true, true, true)
|
||||||
|
local function toggle_checkbox()
|
||||||
|
local cursor = vim.api.nvim_win_get_cursor(0)
|
||||||
|
local lineno = cursor[1]
|
||||||
|
local line = vim.api.nvim_buf_get_lines(0, lineno - 1, lineno, false)[1] or ''
|
||||||
|
if string.find(line, '%[ %]') then
|
||||||
|
line = line:gsub('%[ %]', '%[x%]')
|
||||||
|
else
|
||||||
|
line = line:gsub('%[x%]', '%[ %]')
|
||||||
|
end
|
||||||
|
vim.api.nvim_buf_set_lines(0, lineno - 1, lineno, false, { line })
|
||||||
|
vim.api.nvim_win_set_cursor(0, cursor)
|
||||||
|
pcall(vim.fn['repeat#set'], ':ToggleCheckbox' .. CR)
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_create_user_command(
|
||||||
|
'ToggleCheckbox',
|
||||||
|
toggle_checkbox,
|
||||||
|
vim.tbl_extend('force', { desc = 'toggle checkboxes' }, {})
|
||||||
|
)
|
||||||
|
|
||||||
|
vim.keymap.set('n', '<leader>op', toggle_checkbox, {
|
||||||
|
noremap = true,
|
||||||
|
silent = true,
|
||||||
|
desc = 'Toggle checkbox',
|
||||||
|
buffer = 0,
|
||||||
|
})
|
2
modules/editors/nvf/runtime/after/ftplugin/qf.lua
Normal file
2
modules/editors/nvf/runtime/after/ftplugin/qf.lua
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.wo.wrap = true
|
2
modules/editors/nvf/runtime/after/ftplugin/xml.lua
Normal file
2
modules/editors/nvf/runtime/after/ftplugin/xml.lua
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
-- luacheck: ignore
|
||||||
|
vim.opt_local.shiftwidth = 2
|
30
modules/editors/nvf/runtime/after/queries/go/injections.scm
Normal file
30
modules/editors/nvf/runtime/after/queries/go/injections.scm
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
; extends
|
||||||
|
|
||||||
|
; inject sql into any const string with word query in the name
|
||||||
|
; e.g. const query = `SELECT * FROM users WHERE name = 'John'`;
|
||||||
|
(const_spec
|
||||||
|
name: (identifier) @_name (#match? @_name "[Qq]uery")
|
||||||
|
value: (expression_list
|
||||||
|
(raw_string_literal) @injection.content)
|
||||||
|
(#offset! @injection.content 0 1 0 -1)
|
||||||
|
(#set! injection.language "sql"))
|
||||||
|
|
||||||
|
; inject sql in single line strings
|
||||||
|
(call_expression
|
||||||
|
(selector_expression
|
||||||
|
field: (field_identifier) @_field (#any-of? @_field "GetContext" "Get" "ExecContext" "Exec" "SelectContext" "Select" "In" "Rebind"))
|
||||||
|
(argument_list
|
||||||
|
(raw_string_literal) @injection.content)
|
||||||
|
(#offset! @injection.content 0 1 0 -1)
|
||||||
|
(#set! injection.language "sql")
|
||||||
|
)
|
||||||
|
|
||||||
|
; inject sql in multi line strings
|
||||||
|
(call_expression
|
||||||
|
(selector_expression
|
||||||
|
field: (field_identifier) @_field (#any-of? @_field "GetContext" "Get" "ExecContext" "Exec" "SelectContext" "Select" "In" "Rebind"))
|
||||||
|
(argument_list
|
||||||
|
(interpreted_string_literal) @injection.content)
|
||||||
|
(#offset! @injection.content 0 1 0 -1)
|
||||||
|
(#set! injection.language "sql")
|
||||||
|
)
|
|
@ -0,0 +1,2 @@
|
||||||
|
;; extends
|
||||||
|
(( jsx_text ) @injection.content (#set! injection.language "markdown") )
|
|
@ -0,0 +1,5 @@
|
||||||
|
;extends
|
||||||
|
|
||||||
|
(fenced_code_block (code_fence_content) @class.inner) @class.outer
|
||||||
|
|
||||||
|
(paragraph) @function.outer @function.inner
|
|
@ -0,0 +1,12 @@
|
||||||
|
;extends
|
||||||
|
|
||||||
|
[
|
||||||
|
(shortcut_link)
|
||||||
|
] @nospell
|
||||||
|
|
||||||
|
(strikethrough
|
||||||
|
(emphasis_delimiter)
|
||||||
|
(strikethrough
|
||||||
|
(emphasis_delimiter)
|
||||||
|
(emphasis_delimiter))
|
||||||
|
(emphasis_delimiter))@markup.doublestrikethrough
|
|
@ -0,0 +1,9 @@
|
||||||
|
((jsx_section)
|
||||||
|
@injection.content
|
||||||
|
(#set! injection.language "tsx")
|
||||||
|
(#set! injection.include-children))
|
||||||
|
|
||||||
|
((markdown_section)
|
||||||
|
@injection.content
|
||||||
|
(#set! injection.language "markdown")
|
||||||
|
(#set! injection.combined))
|
|
@ -0,0 +1,14 @@
|
||||||
|
;extends
|
||||||
|
(macro_invocation
|
||||||
|
(scoped_identifier
|
||||||
|
path: (identifier) @path (#eq? @path "sqlx")
|
||||||
|
name: (identifier) @name (#match? @name "^query.*")
|
||||||
|
)
|
||||||
|
|
||||||
|
(token_tree
|
||||||
|
(raw_string_literal) @injection.content
|
||||||
|
(#set! injection.language "sql")
|
||||||
|
(#set! injection.include-children)
|
||||||
|
)
|
||||||
|
(#offset! @injection.content 0 3 0 -2)
|
||||||
|
)
|
|
@ -0,0 +1,5 @@
|
||||||
|
;; extends
|
||||||
|
((ident) @constant
|
||||||
|
(#eq? @constant "lambda")
|
||||||
|
(#set! conceal "λ")
|
||||||
|
)
|
42
modules/editors/nvf/runtime/spell/en.utf-8.add
Normal file
42
modules/editors/nvf/runtime/spell/en.utf-8.add
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
contrib
|
||||||
|
Contrib
|
||||||
|
gitignore
|
||||||
|
dotfiles
|
||||||
|
nyx
|
||||||
|
notashelf
|
||||||
|
utils
|
||||||
|
neovim
|
||||||
|
glab
|
||||||
|
gh
|
||||||
|
ripgrep
|
||||||
|
wip
|
||||||
|
thoughtbot
|
||||||
|
kubectl
|
||||||
|
CoC
|
||||||
|
config
|
||||||
|
Capybara
|
||||||
|
mailserver
|
||||||
|
Mailserver
|
||||||
|
anyrun
|
||||||
|
ags
|
||||||
|
spicetify
|
||||||
|
Spicetify
|
||||||
|
firefox
|
||||||
|
Firefox
|
||||||
|
Hyprland
|
||||||
|
Hyprwm
|
||||||
|
Xorg
|
||||||
|
X11
|
||||||
|
devShell
|
||||||
|
devshell
|
||||||
|
nixos
|
||||||
|
NixOS
|
||||||
|
nixpkgs
|
||||||
|
Nixpkgs
|
||||||
|
filetree
|
||||||
|
sourcetree
|
||||||
|
url
|
||||||
|
uri
|
||||||
|
|
||||||
|
|
||||||
|
|
BIN
modules/editors/nvf/runtime/spell/en.utf-8.add.spl
Normal file
BIN
modules/editors/nvf/runtime/spell/en.utf-8.add.spl
Normal file
Binary file not shown.
|
@ -1,19 +1,19 @@
|
||||||
# Credity to raf aka Notashelf, link to his repo is in the README.md
|
# Credits to raf aka Notashelf, link to his repo is in the README.md
|
||||||
{
|
{
|
||||||
inputs,
|
|
||||||
config,
|
config,
|
||||||
pkgs,
|
|
||||||
lib,
|
lib,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) filter map toString path isPath throw;
|
inherit (builtins) filter map toString path isPath throw;
|
||||||
inherit (lib.filesystem) listFilesRecursive;
|
inherit (lib.filesystem) listFilesRecursive;
|
||||||
inherit (lib.strings) hasSuffix fileContents;
|
inherit (lib.strings) hasSuffix fileContents;
|
||||||
inherit (lib.attrsets) genAttrs;
|
inherit (lib.attrsets) genAttrs;
|
||||||
inherit (config.modues.other.system) username;
|
inherit (lib) mkIf mkEnableOption;
|
||||||
|
|
||||||
|
cfg = config.modules.editors.neovim;
|
||||||
nvf = inputs.neovim-flake;
|
nvf = inputs.neovim-flake;
|
||||||
inherit (inputs) neovim-nightly-overlay;
|
|
||||||
inherit (nvf.lib.nvim.dag) entryBefore entryAnywhere;
|
inherit (nvf.lib.nvim.dag) entryBefore entryAnywhere;
|
||||||
|
|
||||||
mkRuntimeDir = name: let
|
mkRuntimeDir = name: let
|
||||||
|
@ -24,7 +24,8 @@
|
||||||
path = toString finalPath;
|
path = toString finalPath;
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
home-manager.users.${username} = {
|
options.modules.editors.neovim.enable = mkEnableOption "neovim";
|
||||||
|
config = mkIf cfg.enable {
|
||||||
programs.neovim-flake = {
|
programs.neovim-flake = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
|
@ -36,8 +37,7 @@ in {
|
||||||
# use neovim-unwrapped from nixpkgs
|
# use neovim-unwrapped from nixpkgs
|
||||||
# alternatively, neovim-nightly from the neovim-nightly overlay
|
# alternatively, neovim-nightly from the neovim-nightly overlay
|
||||||
# via inputs.neovim-nightly.packages.${pkgs.stdenv.system}.neovim
|
# via inputs.neovim-nightly.packages.${pkgs.stdenv.system}.neovim
|
||||||
# package = pkgs.neovim-unwrapped;
|
package = pkgs.neovim-unwrapped;
|
||||||
package = neovim-nightly-overlay;
|
|
||||||
|
|
||||||
viAlias = true;
|
viAlias = true;
|
||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
|
@ -50,7 +50,8 @@ in {
|
||||||
useSystemClipboard = true;
|
useSystemClipboard = true;
|
||||||
spellcheck = {
|
spellcheck = {
|
||||||
enable = true;
|
enable = true;
|
||||||
languages = ["en" "de"];
|
# TODO add de
|
||||||
|
languages = ["en"];
|
||||||
};
|
};
|
||||||
|
|
||||||
enableLuaLoader = true;
|
enableLuaLoader = true;
|
||||||
|
@ -81,7 +82,7 @@ in {
|
||||||
# directory, so we do not need to use require
|
# directory, so we do not need to use require
|
||||||
luaConfigRC = let
|
luaConfigRC = let
|
||||||
# get the name of each lua file in the lua directory, where setting files reside
|
# get the name of each lua file in the lua directory, where setting files reside
|
||||||
# and import tham recursively
|
# and import them recursively
|
||||||
configPaths = filter (hasSuffix ".lua") (map toString (listFilesRecursive ./lua));
|
configPaths = filter (hasSuffix ".lua") (map toString (listFilesRecursive ./lua));
|
||||||
|
|
||||||
# generates a key-value pair that looks roughly as follows:
|
# generates a key-value pair that looks roughly as follows:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue