moved nixvim to home-manager config, re-added firefox plugins
This commit is contained in:
@@ -8,13 +8,8 @@
|
||||
config,
|
||||
home-manager,
|
||||
...
|
||||
}: let
|
||||
desktop = host == "onagesson";
|
||||
desktop_modules =
|
||||
if desktop
|
||||
then [(import ./gaming)]
|
||||
else [];
|
||||
in {
|
||||
}:
|
||||
{
|
||||
imports =
|
||||
[(import ./btop.nix)]
|
||||
++ [(import ./yazi.nix)]
|
||||
@@ -28,5 +23,5 @@ in {
|
||||
++ [(import ./password-store.nix)]
|
||||
++ [(import ./autojump.nix)]
|
||||
++ [(import ./firefox.nix)]
|
||||
++ desktop_modules;
|
||||
++ [(import ./nixvim)];
|
||||
}
|
||||
|
||||
@@ -83,6 +83,17 @@
|
||||
url = "https://www.nerdfonts.com/cheat-sheet";
|
||||
}
|
||||
];
|
||||
extensions = with config.nur.repos.rycee.firefox-addons; [
|
||||
darkreader
|
||||
adnauseam
|
||||
cookie-autodelete
|
||||
disconnect
|
||||
firefox-color
|
||||
vimium
|
||||
firenvim
|
||||
privacy-badger
|
||||
new-tab-override
|
||||
];
|
||||
extraConfig = ''
|
||||
"browser.startup.homepage" = "${self}/glasshouse-desktop/home/firefox/homepage.html";
|
||||
"browser.active_color" = "#EE0000";
|
||||
|
||||
36
modules/home/programs/nixvim/autocmd.nix
Executable file
36
modules/home/programs/nixvim/autocmd.nix
Executable file
@@ -0,0 +1,36 @@
|
||||
{...}: {
|
||||
programs.nixvim = {
|
||||
autoCmd = [
|
||||
{
|
||||
command = "FloatermNew --wintype=float --name=shadeterm --position=topright --autoclose=0 --silent --cwd=<buffer> --titleposition=left zsh";
|
||||
event = ["VimEnter"];
|
||||
pattern = ["*"];
|
||||
desc = "Create a floating terminal, placed in the top right";
|
||||
}
|
||||
{
|
||||
command = "silent! mkview";
|
||||
event = ["BufWinLeave"];
|
||||
pattern = ["*"];
|
||||
desc = "Save session window settings to be loaded next time the file is opened";
|
||||
}
|
||||
{
|
||||
command = "silent! !aplay ~/sound/sys/cd.wav > /dev/null 2>&1 &";
|
||||
event = ["BufWinLeave"];
|
||||
pattern = ["*"];
|
||||
desc = "Play a neat little sound effect when you close neovim";
|
||||
}
|
||||
{
|
||||
command = "silent! loadview";
|
||||
event = ["BufWinEnter"];
|
||||
pattern = ["*"];
|
||||
desc = "Load previous session window settings for the opened file (folds, cursor pos, etc)";
|
||||
}
|
||||
{
|
||||
command = "setlocal textwidth=135";
|
||||
event = ["BufWinEnter" "BufEnter"];
|
||||
pattern = ["*.md" "*.wiki" "*.txt"];
|
||||
desc = "Set automatic linebreaks in plain text file formats";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
14
modules/home/programs/nixvim/default.nix
Executable file
14
modules/home/programs/nixvim/default.nix
Executable file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
host,
|
||||
self,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./plugins
|
||||
./options.nix
|
||||
./keymaps.nix
|
||||
./autocmd.nix
|
||||
];
|
||||
}
|
||||
46
modules/home/programs/nixvim/keymaps.nix
Executable file
46
modules/home/programs/nixvim/keymaps.nix
Executable file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
keymaps = [
|
||||
{
|
||||
action = "<cmd>lua vim.lsp.buf.format()<CR>";
|
||||
key = "!fmt";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<cmd>lua vim.diagnostic.open_float()<CR>";
|
||||
key = "!df";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<C-W>W";
|
||||
key = "<S-Tab>";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<C-w>w";
|
||||
key = "<Tab>";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<cmd>FloatermToggle shadeterm<CR>";
|
||||
key = "<F2>";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<cmd>NvimTreeToggle<CR>";
|
||||
key = "<F3>";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<cmd>FloatermToggle shadeterm<CR>";
|
||||
key = "<F2>";
|
||||
mode = "t";
|
||||
}
|
||||
{
|
||||
action = "<cmd>COQnow<CR>";
|
||||
key = "!cq";
|
||||
mode = "n";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
63
modules/home/programs/nixvim/options.nix
Executable file
63
modules/home/programs/nixvim/options.nix
Executable file
@@ -0,0 +1,63 @@
|
||||
{
|
||||
config,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
scheme = config.lib.stylix.colors;
|
||||
in
|
||||
{
|
||||
programs.nixvim = {
|
||||
colorschemes.base16 = {
|
||||
enable = true;
|
||||
#colorscheme = {
|
||||
# base00 = "#${scheme.base00}";
|
||||
# base01 = "#${scheme.base01}";
|
||||
# base02 = "#${scheme.base02}";
|
||||
# base03 = "#${scheme.base03}";
|
||||
# base04 = "#${scheme.base04}";
|
||||
# base05 = "#${scheme.base05}";
|
||||
# base06 = "#${scheme.base06}";
|
||||
# base07 = "#${scheme.base07}";
|
||||
# base08 = "#${scheme.base08}";
|
||||
# base09 = "#${scheme.base09}";
|
||||
# base0A = "#${scheme.base0A}";
|
||||
# base0B = "#${scheme.base0B}";
|
||||
# base0C = "#${scheme.base0C}";
|
||||
# base0D = "#${scheme.base0D}";
|
||||
# base0E = "#${scheme.base0E}";
|
||||
# base0F = "#${scheme.base0F}";
|
||||
#};
|
||||
};
|
||||
enable = true;
|
||||
diagnostics.signs = false;
|
||||
extraConfigLua = ''
|
||||
if vim.g.started_by_firenvim == true then
|
||||
vim.o.laststatus = 0
|
||||
end
|
||||
if vim.g.neovide then
|
||||
vim.g.neovide_refresh_rate = 144
|
||||
vim.g.neovide_cursor_vfx_mode = "sonicboom"
|
||||
vim.g.neovide_cursor_animate_in_insert_mode = false
|
||||
end
|
||||
|
||||
vim.opt.number = true
|
||||
vim.opt.relativenumber = true
|
||||
vim.opt.hlsearch = true
|
||||
vim.opt.incsearch = true
|
||||
vim.opt.shiftwidth = 2
|
||||
vim.opt.tabstop = 2
|
||||
vim.opt.termguicolors = true
|
||||
vim.opt.ruler = true
|
||||
vim.opt.scrolloff = 6
|
||||
vim.opt.undofile = true
|
||||
vim.opt.foldmethod = "manual"
|
||||
vim.opt.wrap = true
|
||||
vim.opt.linebreak = true
|
||||
vim.opt.textwidth = 0
|
||||
vim.opt.breakat = " \t!@*-+;:,./?"
|
||||
|
||||
vim.g.mapleader = "!"
|
||||
'';
|
||||
};
|
||||
}
|
||||
8
modules/home/programs/nixvim/plugins/alpha.nix
Executable file
8
modules/home/programs/nixvim/plugins/alpha.nix
Executable file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.alpha = {
|
||||
enable = true;
|
||||
theme = "dashboard";
|
||||
};
|
||||
};
|
||||
}
|
||||
10
modules/home/programs/nixvim/plugins/barbar.nix
Executable file
10
modules/home/programs/nixvim/plugins/barbar.nix
Executable file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.barbar = {
|
||||
enable = false;
|
||||
settings = {
|
||||
auto_hide = 1;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
15
modules/home/programs/nixvim/plugins/cmp.nix
Executable file
15
modules/home/programs/nixvim/plugins/cmp.nix
Executable file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.cmp = {
|
||||
autoEnableSources = true;
|
||||
settings.sources = [
|
||||
{name = "nvim_lsp";}
|
||||
{name = "path";}
|
||||
{name = "buffer";}
|
||||
];
|
||||
};
|
||||
plugins.cmp-nvim-lsp.enable = true;
|
||||
plugins.cmp-nvim-lsp-document-symbol.enable = true;
|
||||
plugins.cmp-nvim-lsp-signature-help.enable = true;
|
||||
};
|
||||
}
|
||||
10
modules/home/programs/nixvim/plugins/coq.nix
Executable file
10
modules/home/programs/nixvim/plugins/coq.nix
Executable file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.coq-nvim = {
|
||||
enable = true;
|
||||
settings = {
|
||||
auto_start = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
18
modules/home/programs/nixvim/plugins/default.nix
Executable file
18
modules/home/programs/nixvim/plugins/default.nix
Executable file
@@ -0,0 +1,18 @@
|
||||
{ host, self, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./alpha.nix
|
||||
./haskell.nix
|
||||
./vim-matchup.nix
|
||||
# ./coq.nix
|
||||
./barbar.nix
|
||||
./cmp.nix
|
||||
./lsp.nix
|
||||
./lualine.nix
|
||||
./plugins.nix
|
||||
./nvim-tree.nix
|
||||
./telescope.nix
|
||||
./extra_plugins.nix
|
||||
];
|
||||
}
|
||||
52
modules/home/programs/nixvim/plugins/extra_plugins.nix
Executable file
52
modules/home/programs/nixvim/plugins/extra_plugins.nix
Executable file
@@ -0,0 +1,52 @@
|
||||
{pkgs, ...}: {
|
||||
programs.nixvim = {
|
||||
extraPlugins = [
|
||||
(pkgs.vimUtils.buildVimPlugin {
|
||||
# vimwiki
|
||||
name = "vimwiki";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "vimwiki";
|
||||
repo = "vimwiki";
|
||||
rev = "705ad1e0dded0e3b7ff5fac78547ab67c9d39bdf";
|
||||
hash = "sha256-Upx29rIPwW/e7Lkmf0PNOpIACnAXIzlkfa6V1p2nYHM=";
|
||||
};
|
||||
})
|
||||
(pkgs.vimUtils.buildVimPlugin {
|
||||
name = "vim-sneak";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "justinmk";
|
||||
repo = "vim-sneak";
|
||||
rev = "c13d0497139b8796ff9c44ddb9bc0dc9770ad2dd";
|
||||
hash = "sha256-ndWhnV0fgCcqCGwVyM07GfmUB3CitBZbOWvZtsB1tBk=";
|
||||
};
|
||||
})
|
||||
(pkgs.vimUtils.buildVimPlugin {
|
||||
name = "vim-slash";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "junegunn";
|
||||
repo = "vim-slash";
|
||||
rev = "31aee09b7ea8893a18fa34f65e63e364fc998444";
|
||||
hash = "sha256-hC590lmKBssLCSKPF9O2cnt6TCJkklzbbhDNhf1ozUU=";
|
||||
};
|
||||
})
|
||||
(pkgs.vimUtils.buildVimPlugin {
|
||||
name = "automkdir.nvim";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "mateuszwieloch";
|
||||
repo = "automkdir.nvim";
|
||||
rev = "beeb2dd76f1c3ac776d901c43217a774f1f045de";
|
||||
hash = "sha256-lKSCZ80b/+OV56858FDK7x/zhcuU/AWuCDe+8NdhziU=";
|
||||
};
|
||||
})
|
||||
#(pkgs.vimUtils.buildVimPlugin {
|
||||
#name = "nvim-ghost.nvim";
|
||||
#src = pkgs.fetchFromGitHub {
|
||||
#owner = "subnut";
|
||||
#repo = "nvim-ghost.nvim";
|
||||
#rev = "67cc8f38c69d271af1c2430ff5099766f3550eb8";
|
||||
#hash = "sha256-XldDgPqVeIfUjaRLVUMp88eHBHLzoVgOmT3gupPs+ao=";
|
||||
#};
|
||||
#})
|
||||
];
|
||||
};
|
||||
}
|
||||
18
modules/home/programs/nixvim/plugins/haskell.nix
Executable file
18
modules/home/programs/nixvim/plugins/haskell.nix
Executable file
@@ -0,0 +1,18 @@
|
||||
{pkgs, ...}: {
|
||||
programs.nixvim = {
|
||||
extraPlugins = [
|
||||
(pkgs.vimUtils.buildVimPlugin {
|
||||
name = "haskell-tools.nvim";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "mrcjkb";
|
||||
repo = "haskell-tools.nvim";
|
||||
rev = "39c4ced6f1bff1abc8d4df5027efd11ac38c6e6c";
|
||||
hash = "sha256-f+M35EwAlHwjJ2Xs2u9FLnyH0FJT22D0LLShDXCbEEs=";
|
||||
};
|
||||
})
|
||||
];
|
||||
plugins = {
|
||||
haskell-scope-highlighting.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
81
modules/home/programs/nixvim/plugins/lsp.nix
Executable file
81
modules/home/programs/nixvim/plugins/lsp.nix
Executable file
@@ -0,0 +1,81 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
cmp-snippy.enable = true;
|
||||
cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
mapping = {
|
||||
__raw = ''
|
||||
cmp.mapping.preset.insert({
|
||||
['<C-o>'] = cmp.mapping.close_docs(),
|
||||
['<C-i>'] = cmp.mapping.open_docs(),
|
||||
['<C-j>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<C-k>'] = cmp.mapping.scroll_docs(4),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<CR>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.confirm()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, -- Added a comma here
|
||||
['<Tab>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, -- Added a comma here
|
||||
['<S-Tab>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end -- No comma needed for the last item
|
||||
})
|
||||
'';
|
||||
};
|
||||
window = {
|
||||
completion.border = "rounded";
|
||||
};
|
||||
};
|
||||
};
|
||||
lsp = {
|
||||
enable = true;
|
||||
servers = {
|
||||
bashls.enable = true;
|
||||
ccls.enable = true;
|
||||
clangd.enable = true;
|
||||
cmake.enable = true;
|
||||
html.enable = true;
|
||||
jsonls.enable = true;
|
||||
lua_ls.enable = true;
|
||||
marksman.enable = true;
|
||||
nixd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
nixd = {
|
||||
nixpkgs.expr = "import <nixpkgs> { }";
|
||||
formatting.command = "nixfmt";
|
||||
};
|
||||
options = {
|
||||
# uses Xenon config because it has every option exposed to it
|
||||
nixos.expr = "(builtins.getFlake \"github:pagedMov/nixos-config\").nixosConfigurations.xenon.options";
|
||||
home.expr = "(builtins.getFlake \"github:pagedMov/nixos-config\").homeConfigurations.xenonHome.options";
|
||||
};
|
||||
};
|
||||
};
|
||||
pyright.enable = true;
|
||||
sqls.enable = true;
|
||||
hls = {
|
||||
enable = true;
|
||||
installGhc = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
44
modules/home/programs/nixvim/plugins/lualine.nix
Executable file
44
modules/home/programs/nixvim/plugins/lualine.nix
Executable file
@@ -0,0 +1,44 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.lualine = {
|
||||
enable = true;
|
||||
settings = {
|
||||
options = {
|
||||
icons_enabled = true;
|
||||
theme = "auto";
|
||||
component_separators = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
section_separators = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
always_divide_middle = true;
|
||||
globalstatus = false;
|
||||
refresh = {
|
||||
statusline = 1000;
|
||||
tabline = 1000;
|
||||
winbar = 1000;
|
||||
};
|
||||
};
|
||||
sections = {
|
||||
lualine_a = ["mode"];
|
||||
lualine_b = ["buffers"];
|
||||
lualine_c = [""];
|
||||
lualine_x = ["searchcount" "fileformat" "filetype"];
|
||||
lualine_y = ["branch" "diff" "diagnostics"];
|
||||
lualine_z = ["location"];
|
||||
};
|
||||
inactive_sections = {
|
||||
lualine_a = [];
|
||||
lualine_b = [];
|
||||
lualine_c = ["filename"];
|
||||
lualine_x = ["location"];
|
||||
lualine_y = [];
|
||||
lualine_z = [];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
88
modules/home/programs/nixvim/plugins/nvim-tree.nix
Executable file
88
modules/home/programs/nixvim/plugins/nvim-tree.nix
Executable file
@@ -0,0 +1,88 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.nvim-tree = {
|
||||
enable = true;
|
||||
hijackUnnamedBufferWhenOpening = false;
|
||||
openOnSetup = false;
|
||||
onAttach = {
|
||||
__raw = ''
|
||||
function(bufnr)
|
||||
local api = require('nvim-tree.api')
|
||||
|
||||
local function opts(desc)
|
||||
return { desc = 'nvim-tree: ' .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
|
||||
end
|
||||
|
||||
-- BEGIN_DEFAULT_ON_ATTACH
|
||||
vim.keymap.set('n', '<C-]>', api.tree.change_root_to_node, opts('CD'))
|
||||
vim.keymap.set('n', '<C-e>', api.node.open.replace_tree_buffer, opts('Open: In Place'))
|
||||
vim.keymap.set('n', '<C-k>', api.node.show_info_popup, opts('Info'))
|
||||
vim.keymap.set('n', '<C-r>', api.fs.rename_sub, opts('Rename: Omit Filename'))
|
||||
vim.keymap.set('n', '<C-t>', api.node.open.tab, opts('Open: New Tab'))
|
||||
vim.keymap.set('n', '<C-v>', api.node.open.vertical, opts('Open: Vertical Split'))
|
||||
vim.keymap.set('n', '<C-x>', api.node.open.horizontal, opts('Open: Horizontal Split'))
|
||||
vim.keymap.set('n', '<BS>', api.node.navigate.parent_close, opts('Close Directory'))
|
||||
vim.keymap.set('n', '<CR>', api.node.open.edit, opts('Open'))
|
||||
vim.keymap.set('n', 'b', api.node.open.preview, opts('Open Preview'))
|
||||
vim.keymap.set('n', '>', api.node.navigate.sibling.next, opts('Next Sibling'))
|
||||
vim.keymap.set('n', '<', api.node.navigate.sibling.prev, opts('Previous Sibling'))
|
||||
vim.keymap.set('n', '.', api.node.run.cmd, opts('Run Command'))
|
||||
vim.keymap.set('n', '-', api.tree.change_root_to_parent, opts('Up'))
|
||||
vim.keymap.set('n', 'a', api.fs.create, opts('Create File Or Directory'))
|
||||
vim.keymap.set('n', 'bd', api.marks.bulk.delete, opts('Delete Bookmarked'))
|
||||
vim.keymap.set('n', 'bt', api.marks.bulk.trash, opts('Trash Bookmarked'))
|
||||
vim.keymap.set('n', 'bmv', api.marks.bulk.move, opts('Move Bookmarked'))
|
||||
vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle Filter: No Buffer'))
|
||||
vim.keymap.set('n', 'c', api.fs.copy.node, opts('Copy'))
|
||||
vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Filter: Git Clean'))
|
||||
vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git'))
|
||||
vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git'))
|
||||
vim.keymap.set('n', 'd', api.fs.remove, opts('Delete'))
|
||||
vim.keymap.set('n', 'D', api.fs.trash, opts('Trash'))
|
||||
vim.keymap.set('n', 'E', api.tree.expand_all, opts('Expand All'))
|
||||
vim.keymap.set('n', 'e', api.fs.rename_basename, opts('Rename: Basename'))
|
||||
vim.keymap.set('n', ']e', api.node.navigate.diagnostics.next, opts('Next Diagnostic'))
|
||||
vim.keymap.set('n', '[e', api.node.navigate.diagnostics.prev, opts('Prev Diagnostic'))
|
||||
vim.keymap.set('n', 'F', api.live_filter.clear, opts('Live Filter: Clear'))
|
||||
vim.keymap.set('n', 'f', api.live_filter.start, opts('Live Filter: Start'))
|
||||
vim.keymap.set('n', 'g?', api.tree.toggle_help, opts('Help'))
|
||||
vim.keymap.set('n', 'gy', api.fs.copy.absolute_path, opts('Copy Absolute Path'))
|
||||
vim.keymap.set('n', 'ge', api.fs.copy.basename, opts('Copy Basename'))
|
||||
vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Filter: Dotfiles'))
|
||||
vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Filter: Git Ignore'))
|
||||
vim.keymap.set('n', 'J', api.node.navigate.sibling.last, opts('Last Sibling'))
|
||||
vim.keymap.set('n', 'K', api.node.navigate.sibling.first, opts('First Sibling'))
|
||||
vim.keymap.set('n', 'L', api.node.open.toggle_group_empty, opts('Toggle Group Empty'))
|
||||
vim.keymap.set('n', 'M', api.tree.toggle_no_bookmark_filter, opts('Toggle Filter: No Bookmark'))
|
||||
vim.keymap.set('n', 'm', api.marks.toggle, opts('Toggle Bookmark'))
|
||||
vim.keymap.set('n', 'o', api.node.open.edit, opts('Open'))
|
||||
vim.keymap.set('n', 'O', api.node.open.no_window_picker, opts('Open: No Window Picker'))
|
||||
vim.keymap.set('n', 'p', api.fs.paste, opts('Paste'))
|
||||
vim.keymap.set('n', 'P', api.node.navigate.parent, opts('Parent Directory'))
|
||||
vim.keymap.set('n', 'q', api.tree.close, opts('Close'))
|
||||
vim.keymap.set('n', 'r', api.fs.rename, opts('Rename'))
|
||||
vim.keymap.set('n', 'R', api.tree.reload, opts('Refresh'))
|
||||
vim.keymap.set('n', 's', api.node.run.system, opts('Run System'))
|
||||
vim.keymap.set('n', 'S', api.tree.search_node, opts('Search'))
|
||||
vim.keymap.set('n', 'u', api.fs.rename_full, opts('Rename: Full Path'))
|
||||
vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Filter: Hidden'))
|
||||
vim.keymap.set('n', 'W', api.tree.collapse_all, opts('Collapse'))
|
||||
vim.keymap.set('n', 'x', api.fs.cut, opts('Cut'))
|
||||
vim.keymap.set('n', 'y', api.fs.copy.filename, opts('Copy Name'))
|
||||
vim.keymap.set('n', 'Y', api.fs.copy.relative_path, opts('Copy Relative Path'))
|
||||
vim.keymap.set('n', '<2-LeftMouse>', api.node.open.edit, opts('Open'))
|
||||
vim.keymap.set('n', '<2-RightMouse>', api.tree.change_root_to_node, opts('CD'))
|
||||
-- END_DEFAULT_ON_ATTACH
|
||||
end
|
||||
'';
|
||||
};
|
||||
view = {
|
||||
side = "right";
|
||||
centralizeSelection = true;
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
width = 40;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
29
modules/home/programs/nixvim/plugins/plugins.nix
Executable file
29
modules/home/programs/nixvim/plugins/plugins.nix
Executable file
@@ -0,0 +1,29 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
dap = {
|
||||
enable = true;
|
||||
extensions.dap-ui.enable = true;
|
||||
};
|
||||
nix.enable = true;
|
||||
neoscroll.enable = true;
|
||||
endwise.enable = true;
|
||||
firenvim.enable = true;
|
||||
floaterm.enable = true;
|
||||
fugitive.enable = true;
|
||||
gitsigns.enable = true;
|
||||
indent-blankline.enable = true;
|
||||
lastplace.enable = true;
|
||||
markdown-preview.enable = true;
|
||||
marks.enable = true;
|
||||
nvim-surround.enable = true;
|
||||
rainbow-delimiters.enable = true;
|
||||
render-markdown.enable = true;
|
||||
rustaceanvim.enable = true;
|
||||
treesitter.enable = true;
|
||||
trim.enable = true;
|
||||
trouble.enable = true;
|
||||
web-devicons.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
14
modules/home/programs/nixvim/plugins/telescope.nix
Executable file
14
modules/home/programs/nixvim/plugins/telescope.nix
Executable file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.telescope = {
|
||||
enable = true;
|
||||
settings = {
|
||||
pickers = {
|
||||
find_files = {
|
||||
hidden = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
23
modules/home/programs/nixvim/plugins/vim-matchup.nix
Executable file
23
modules/home/programs/nixvim/plugins/vim-matchup.nix
Executable file
@@ -0,0 +1,23 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.vim-matchup = {
|
||||
enable = true;
|
||||
enableSurround = true;
|
||||
textObj.enable = true;
|
||||
motion = {
|
||||
enable = true;
|
||||
cursorEnd = true;
|
||||
};
|
||||
matchParen = {
|
||||
hiSurroundAlways = true;
|
||||
offscreen = {
|
||||
method = "popup";
|
||||
};
|
||||
};
|
||||
treesitterIntegration = {
|
||||
enable = true;
|
||||
includeMatchWords = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user