dotfiles.nix/home/kakoune.nix

69 lines
1.4 KiB
Nix

{ pkgs, ... }: {
home.packages = [ pkgs.kak-lsp ];
programs.kakoune = {
enable = true;
config = {
autoReload = "yes";
colorScheme = "tokyonight";
keyMappings = [
{
key = "<c-a-p>";
effect = ": fzf-mode<ret>";
mode = "normal";
docstring = "Open fzf-mode with ctrl-alt-p";
}
{
key = "<c-p>";
effect = ": fzf-mode<ret>f<ret>";
mode = "normal";
docstring = "Open fzf-mode file dialog with ctrl-p";
}
];
hooks = [
{
name = "WinSetOption";
option = "filetype=(haskell)";
commands = ''
lsp-enable-window
'';
}
];
numberLines.enable = true;
numberLines.highlightCursor = true;
numberLines.relative = true;
scrollOff.columns = 4;
scrollOff.lines = 2;
showMatching = true;
ui.enableMouse = true;
};
extraConfig = ''
eval %sh{${pkgs.kak-lsp}/bin/kak-lsp --kakoune -s $kak_session}
powerline-start
'';
plugins = with pkgs.kakounePlugins; [
active-window-kak
auto-pairs-kak
fzf-kak
kak-lsp
kakboard
kakoune-state-save
kakoune-vertical-selection
powerline-kak
pkgs.tokyonight-kak
# needs luar
# pkgs.luar
# tabs-kak
];
};
}