This is a collection of plugins for the Kakoune editor to make an already great editing experience even better!
I'm currently using these as part of my kakoune setup, but I'm offering them here in case anyone else might find them useful.
You have a few options for installing the plugins depending on whether you use plug.kak, nix package manager or manual loading. You can either use all the plugins at once (kitchen sink) or pick and choose which ones to use (piecemeal).
plug "joefiorini/joeconf-kakoune-plugins"
plug "joefiorini/joeconf-kakoune-plugins" subset %{
plugins/fileutils.kak
plugins/kitty.kak
}
I'm going to assume you're using niv for managing nix package repositories (sources), in large part because I don't know the best way to do so without it 😉.
niv add joeconf-kakoune-plugins -o joefiorini -r joeconf-kakoune-plugins
Now assuming you are installing Kakoune and other plugins somewhere, you can import this package by adding:
let
joeconf-kakoune-plugins = (import path/to/niv/sources).joeconf-kakoune-plugins;
in
...
and then you can include joeconf-kakoune-plugins
in your list of kakoune plugins
In your kakrc
you can just add:
require-module joeconf
Each plugin provides its own module, so look in the source for the correct module name. Assuming you want the fileutils
plugin just add to your kakrc
:
require-module joeconf-fileutils
etc for each plugin you want to load.
- fileutils
A collection of useful commands operating on the current buffer's file
- ifelse
A simple plugin for adding conditionals to your kak scripts without having to deal with awkward shell scripting. Lifted from @andreyorst's dotfiles
- kitty
Adds support for kitty terminal layout direction (horizontal/vertical splits, fat, tall, etc)
- split
Adds Vim like split commands (split-horizontal, split-vertical) to Kakoune (currently just proxying to the corresponding kitty commands, but could be extended to support tmux, etc)
- connect
Adds a couple additional commands that use connect.kak to open programs
- lsp
My kak-lsp configuration
- nixutils
Various utility commands related to working with nix modules
- pathutils
A collection of useful commands operating on the path of the current buffer's file
- usermodes
Mnemonic keyboard mappings that work extremely well with Kakoune's self-documentation; similar to Spacemacs, SpaceVim, vim-which-key, etc.