dotfiles/.config/kak/README.md

2.3 KiB

Daniel's Personal `kakrc`

This is my personal Kakoune configuration. I use autoyadm to keep the upstream repository up-to-date. I'll do my best to document everything, but note that this document may be out-of-date at any given time -- my configuration tends to evolve quickly.

Bindings

I type on the Colemak-DH layout. autoload/colemak.kak rebinds many default keys. If the bindings in kakrc seem strange, that's why.

Plugins

I use kak-bundle to install some external plugins. Many others, I simply copy the upstream code directly into my config. Some plugins I've written myself have been separated into other repositories. Check git.sr.ht/~ficd to find them.

Organization

  • kakrc mainly contains mappings, utility commands, and setup that depends on plugins/modules from autoload being present. (autoload doesn't guarantee any load order).
  • scripts contains scripts written in formats other than Kakoune.
  • autoload contains everything that isn't in kakrc.

Autoload

  • stdlib contains symlinks to the standard RC in /usr/share/kak/rc. The reason I don't symlink then entire directory is to retain control over which files are actually loaded, in case I want to override any.
  • detection contains patched versions of standard RC files.
  • filetype contains custom filetype support.
  • fishr is a module for writing expansions in fish shell.
  • bootstrap.kak installs external dependencies of my configuration. Untested and likely out-of-date.
  • byline.kak is a fork of a plugin adding Helix-like x and X commands.
  • clipboard.kak has wl-clipboard integration.
  • colemak.kak rebinds defaults according to my preferences as a Colemak-DH user.
  • filetype.kak contains some filetype-specific logic like setting up formatters.
  • format.kak is my patch of the standard RC formatter.
  • git-mode.kak has Git-related commands and bindings.
  • grep.kak has some convenience functionality built on standard RC grep module.
  • helix-scroll.kak improves the <c-u> command.
  • hop.kak setup for the hop.kak plugin.
  • hump.kak modified external plugin.
  • insert-mode.kak defines convenience mappings for insert mode.
  • lsp.kak contains my kakoune-lsp configuration with some custom logic and functions.