extract neovim
This commit is contained in:
parent
be3aecc343
commit
a93abe6f04
13 changed files with 113 additions and 101 deletions
|
|
@ -7,8 +7,6 @@
|
|||
with lib; let
|
||||
editor = config.programs.editor;
|
||||
pkg = editor.package;
|
||||
terminal = config.programs.terminal.package;
|
||||
termcmd = "${terminal}/bin/${terminal.pname}";
|
||||
menu = config.programs.menu.package + config.programs.menu.dmenuCommand;
|
||||
in {
|
||||
options.programs = {
|
||||
|
|
@ -27,67 +25,15 @@ in {
|
|||
programs.vscode = {
|
||||
enable = true;
|
||||
package = editor.package;
|
||||
extensions =
|
||||
if editor.neovim
|
||||
then
|
||||
with pkgs; [
|
||||
vscode-extensions.asvetliakov.vscode-neovim
|
||||
]
|
||||
else [];
|
||||
userSettings =
|
||||
{
|
||||
"keyboard.dispatch" = "keyCode";
|
||||
"terminal.integrated.sendKeybindingsToShell" = true;
|
||||
"aws.telemetry" = false;
|
||||
"gitlens.telemetry.enabled" = false;
|
||||
"redhat.telemetry.enabled" = false;
|
||||
"cSpell.language" = "en,en-GB";
|
||||
}
|
||||
// (
|
||||
if editor.neovim
|
||||
then {
|
||||
"vscode-neovim.neovimExecutablePaths.linux" = "${pkgs.neovim}/bin/nvim";
|
||||
"extensions.experimental.affinity" = {
|
||||
"asvetliakov.vscode-neovim" = 1;
|
||||
};
|
||||
}
|
||||
else {}
|
||||
);
|
||||
};
|
||||
|
||||
programs.neovim = mkIf editor.neovim {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
extraLuaConfig = ''
|
||||
${builtins.readFile ./neovim/config.lua}
|
||||
'';
|
||||
extraPackages = with pkgs; [
|
||||
nodePackages_latest.typescript-language-server
|
||||
vscode-langservers-extracted
|
||||
gopls
|
||||
nil
|
||||
];
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
vim-surround
|
||||
vim-commentary
|
||||
{
|
||||
plugin = telescope-nvim;
|
||||
type = "lua";
|
||||
config = ''
|
||||
local builtin = require('telescope.builtin')
|
||||
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
|
||||
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
|
||||
vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
|
||||
vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})
|
||||
'';
|
||||
}
|
||||
{
|
||||
plugin = nvim-lspconfig;
|
||||
type = "lua";
|
||||
config = builtins.readFile ./neovim/lspconfig.lua;
|
||||
}
|
||||
firenvim
|
||||
];
|
||||
extensions = [];
|
||||
userSettings = {
|
||||
"keyboard.dispatch" = "keyCode";
|
||||
"terminal.integrated.sendKeybindingsToShell" = true;
|
||||
"aws.telemetry" = false;
|
||||
"gitlens.telemetry.enabled" = false;
|
||||
"redhat.telemetry.enabled" = false;
|
||||
"cSpell.language" = "en,en-GB";
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
|
|
@ -99,12 +45,7 @@ in {
|
|||
code_dir=~/Documents/code
|
||||
cd $code_dir
|
||||
repo=$({ ls && echo clone-repo; } | ${menu})
|
||||
case $repo in
|
||||
clone-repo)
|
||||
url=$(wl-paste)
|
||||
${termcmd} -e -- git clone "$url" ;;
|
||||
*) [ -e "$repo" ] && ${pkg}/bin/${pkg.executableName} $repo ;;
|
||||
esac
|
||||
[ -e "$repo" ] && ${pkg}/bin/${pkg.executableName} $repo
|
||||
'';
|
||||
install = false;
|
||||
hotkeys = [{key = "C";}];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue