diff --git a/modules/programs/editors/kakoune/default.nix b/modules/programs/editors/kakoune/default.nix deleted file mode 100644 index c667665..0000000 --- a/modules/programs/editors/kakoune/default.nix +++ /dev/null @@ -1,66 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: let - inherit (config.modules.other.system) username; - cfg = config.modules.system.programs.editors.kakoune; - inherit (lib) mkIf mkEnableOption; -in { - imports = [./mappings.nix]; - options.modules.editors.kakoune.enable = mkEnableOption "kakoune"; - config.home-manager.users.${username}.programs.kakoune = mkIf cfg.enable { - enable = true; - package = pkgs.kakoune-unwrapped; - config = { - autoComplete = ["insert"]; - autoReload = "yes"; - indentWidth = 4; - tabStop = 4; - incrementalSearch = false; - numberLines = { - enable = true; - relative = true; - highlightCursor = true; - separator = "|"; - }; - - scrollOff = { - lines = 4; - columns = 4; - }; - wrapLines = { - enable = true; - indent = true; - word = true; - }; - - ui = { - enableMouse = true; - assistant = "none"; - statusLine = "bottom"; - }; - }; - - plugins = with pkgs.kakounePlugins; [ - active-window-kak - auto-pairs-kak - byline-kak # ope - prelude-kak # dependency of byline - fzf-kak - kakboard - kakoune-buffer-switcher - kakoune-buffers - kakoune-lsp - kakoune-rainbow - kakoune-registers - kakoune-vertical-selection - powerline-kak - quickscope-kak - smarttab-kak - zig-kak - ]; - # extraConfig = ./kakrc; - }; -} diff --git a/modules/programs/editors/kakoune/kak-lsp.toml b/modules/programs/editors/kakoune/kak-lsp.toml deleted file mode 100644 index 51a4a17..0000000 --- a/modules/programs/editors/kakoune/kak-lsp.toml +++ /dev/null @@ -1,18 +0,0 @@ -[language.haskell] -filetypes = ["haskell"] -roots = ["Setup.hs", "stack.yaml", "*.cabal"] -command = "haskell-language-server-wrapper" -args = ["--lsp"] - -[language.rust] -filetypes = ["rust"] -roots = ["Cargo.toml"] -command = "rust-analyzer" -settings_section = "rust-analyzer" -[language.rust.settings.rust-analyzer] -"proMacro.enable" = true - -[language.nix] -filetypes = ["nix"] -roots = ["shell.nix", "default.nix", "home.nix", "flake.nix"] -command = "rnix-lsp" diff --git a/modules/programs/editors/kakoune/kakoune.nix b/modules/programs/editors/kakoune/kakoune.nix deleted file mode 100644 index c00e5d8..0000000 --- a/modules/programs/editors/kakoune/kakoune.nix +++ /dev/null @@ -1,135 +0,0 @@ -{ - config, - lib, - pkgs, - buildGoModule, - ... -}: -with lib; let - cfg = config.modules.programs.kakoune; - username = config.modules.other.system.username; - kakship = pkgs.rustPlatform.buildRustPackage rec { - pname = "kakship"; - version = "0.2.8"; - src = pkgs.fetchFromGitHub { - owner = "mesabloo"; - repo = "kakship"; - rev = "937d904a893daf59f70dc955e60209cd8866a7c3"; - sha256 = "1pk0v0b31bppjzl08qgrjld40pc7rqc257zzgdl4r8zaamqsmkz9"; - }; - cargoLock = { - lockFile = "${src}/Cargo.lock"; - outputHashes = { - "kak-0.1.2" = "sha256-RhtHQkC9yCSJtr/kbC5c9MavbL79acrsiEGXyoAST8U="; - "yew-ansi-0.1.0" = "sha256-dSaEzqiOon+OqCZKQudzLRNP+Iv97kC+XZcTElKNrzs="; - }; - }; - - # patchPhase = '' - # substituteInPlace src/main.rs \ - # --replace '"starship"' "\"${pkgs.starship}/bin/starship\"" - # ''; - - postInstall = '' - # Copy rc files to /share/kak/autoload - mkdir -p $out/share/kak/autoload/plugins/${pname} - cp $src/rc/*.kak $out/share/kak/autoload/plugins/${pname} - ''; - }; - kak-rainbow = pkgs.kakouneUtils.buildKakounePluginFrom2Nix rec { - pname = "kak-rainbow"; - version = "1.0.0"; - src = pkgs.fetchFromGitHub { - owner = "Bodhizafa"; - repo = "kak-rainbow"; - rev = "9c3d0aa62514134ee5cb86e80855d9712c4e8c4b"; - sha256 = "sha256-ryYq4A89wVUsxgvt4YqBPXsTFMDrMJM6BDBEHrWHD1c="; - }; - - postInstall = '' - mkdir -p $out/lib - mv $out/share/kak/autoload/plugins/${pname}/rainbow.kak $out/lib - cat >$out/share/kak/autoload/plugins/${pname}/rainbow.kak <\S[^\h\n,=;*(){}\[\]]\z'" -set-option global lsp_diagnostic_line_error_sign "!" -set-option global lsp_diagnostic_line_warning_sign "?" - -hook global WinSetOption filetype=(rust) %{ - map window user "l" ':enter-user-mode lsp' -docstring "LSP mode" - lsp-enable-window - lsp-auto-hover-insert-mode-disable - set-option window lsp_hover_anchor true - set-face window DiagnosticError default+u - set-face window DiagnosticWarning default+u - set-option window lsp_server_configuration rust.clippy_preference="on" -} - -# hook global WinSetOption filetype=rust %{ -# lsp-enable-window hook window BufWritePre .* lsp-formatting-sync -# hook window -group rust-inlay-hints BufWritePost .* rust-analyzer-inlay-hints -# hook -once -always window WinSetOption filetype=.* %{ -# remove-hooks window rust-inlay-hints -# } -# } - -map global normal ':lsp-definition' - -# --- kakoune-rainbow -hook global ModuleLoaded rainbow %{ - set-option global rainbow_colors rgb:FF3B2F+db rgb:FF9500+db rgb:FFCC02+db rgb:27cd41+db rgb:007AFF+db rgb:AF52DE+db - hook global WinSetOption filetype=(rust|python|c|cpp|scheme|lisp|clojure|javascript|json|kak|haskell|python|latex|nix) %{ - rainbow-enable-window - } -} - -# --- alacritty.kak -hook global ModuleLoaded x11 %{ - alias global terminal kitty-terminal - alias global popup alacritty-terminal-popup -} - -# --- Kakship -hook global ModuleLoaded kakship %{ - kakship-enable -} - -# --- Broot -define-command -override broot-oneoff-select -docstring 'focus broot' %{ - evaluate-commands %sh{ - d="$(dirname "$kak_buffile")" - b="$(basename "$kak_buffile")" - echo echo -debug "$d" - broot_cmd="broot" - if [ -d "$d" ]; then - broot_cmd="$broot_cmd --cmd \":focus $d;:select $b\"" - fi - echo "kks-connect ala-popup sh -c '""kks send edit $broot_cmd""'" - } -} - -define-command ala-popup -params .. -shell-completion -docstring 'alacritty-terminal-popup [arguments]: create a new terminal as an Alacritty window (class: popup, app_id: popup)' %{ - nop %sh{ - setsid alacritty -o window.dimensions.columns=200 window.dimensions.lines=57 --title popup --class 'alacritty-popup' --command "$@" < /dev/null > /dev/null 2>&1 & - } -} - -# --- Map -map global normal ':fzf-modef' -map global normal ':alacritty-popup' - -require-module fzf -set-option global fzf_terminal_command 'ala-popup kak -c %val{session} -e "%arg{@}"' - - -require-module alacritty -require-module rainbow diff --git a/modules/programs/editors/kakoune/mappings.nix b/modules/programs/editors/kakoune/mappings.nix deleted file mode 100644 index 59a0c99..0000000 --- a/modules/programs/editors/kakoune/mappings.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: let - inherit (config.modules.other.system) username; -in { - config.home-manager.users.${username}.programs.kakoune.config.keyMappings = [ - { - mode = "normal"; - key = ""; - effect = ";,"; - docstring = "Press escape to clear highlighted text and collapse cursors"; - } - { - mode = "normal"; - key = ""; - effect = ":comment-line"; - docstring = "Comment a line with !"; - } - { - mode = "normal"; - key = "b"; - effect = ":db"; - docstring = "close current buffer"; - } - - { - mode = "normal"; - key = "n"; - effect = ":bp"; - docstring = "go to next buffer"; - } - { - mode = "normal"; - key = "m"; - effect = ":bn"; - docstring = "go to next buffer"; - } - { - mode = "normal"; - key = " f"; - effect = ":fzf-mode"; - docstring = "open fzf"; - } - ]; -} diff --git a/modules/programs/editors/kakoune/starship.toml b/modules/programs/editors/kakoune/starship.toml deleted file mode 100644 index dfb7573..0000000 --- a/modules/programs/editors/kakoune/starship.toml +++ /dev/null @@ -1,20 +0,0 @@ -# add_newline = false - -format = """ -\$directory -\${custom.separator} -""" - -[directory] -format = '[$path/]($style)' -truncate_length = 2 -truncate_to_repo = false -use_logical_pat = true -style = "fg:cyan" -truncate_symbol = "../" -disabled = false - -[custom.separator] -format = "[ ||| ]($style)" -style = "fg:purple" -disabled = false diff --git a/modules/programs/editors/module.nix b/modules/programs/editors/module.nix index 2d8e694..9dfa839 100644 --- a/modules/programs/editors/module.nix +++ b/modules/programs/editors/module.nix @@ -2,7 +2,6 @@ _: { imports = [ ./emacs/module.nix ./helix/module.nix - ./kakoune ./nvf ]; }