# Preconfigured kakoune editor. { # Feature flags clipboard ? false, typescript ? false, haskell ? false, clojure ? false, python ? false, rust ? false, nix ? true, # Allow extra plugins to be defined # outside of the package extraPlugins ? [], # Plugins kak-crosshairs, # Color theme theme, # Build context pkgs, lib }: let kakrc = (import ./kakrc.nix { inherit clipboard typescript haskell clojure python rust nix theme pkgs lib; }); colors = (import ./colors.nix { inherit theme pkgs lib; }); kak-lsp = (import ./kak-lsp.nix { inherit typescript haskell clojure python rust nix pkgs lib; }); in (pkgs.kakoune.override { plugins = [ # Configuration kak-lsp colors kakrc # Plugins kak-crosshairs ] ++ extraPlugins; })