dotfiles/.config/kak
2025-07-16 22:15:10 -04:00
..
autoload AutoYADM commit: 2025-07-16 22:15:10 2025-07-16 22:15:10 -04:00
colors AutoYADM commit: 2025-06-17 20:47:57 2025-06-17 20:47:57 -04:00
scripts AutoYADM commit: 2025-07-07 14:18:37 2025-07-07 14:18:37 -04:00
.gitignore AutoYADM commit: 2025-05-23 14:18:15 2025-05-23 14:18:16 -04:00
.ignore AutoYADM commit: 2025-05-24 22:00:07 2025-05-24 22:00:07 -04:00
.kakignore AutoYADM commit: 2025-05-25 17:02:35 2025-05-25 17:02:36 -04:00
extra.kak AutoYADM commit: 2025-07-08 18:28:01 2025-07-08 18:28:01 -04:00
kakrc AutoYADM commit: 2025-07-13 22:35:44 2025-07-13 22:35:44 -04:00
ltex-dict.txt AutoYADM commit: 2025-06-14 04:33:37 2025-06-14 04:33:37 -04:00
ltex-dictionary.txt AutoYADM commit: 2025-06-24 19:14:06 2025-06-24 19:14:06 -04:00
README.md AutoYADM commit: 2025-06-15 17:07:59 2025-06-15 17:07:59 -04:00

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.

Self-Written

  • List of self-written plugins I use. Will be updated later.

External

  • List of external plugins I use. Will be updated later.

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.
  • man.kak is a patched version of standard RC man module.
  • notes.kak is a copy of an external plugin.
  • paragraph.kak provides a user mode for paragraph-related actions.
  • picker.kak is a simple file picker.
  • plugins.kak has setup for all plugins I install with kak-bundle.
  • proj.kak implements a command for starting a documentation client and project-specific .kakrc.local configurations.
  • sh.kak provides a convenience command for running shell commands from the prompt.
  • spell.kak implements convenience mappings and hooks built on standard RC spell module.
  • surround.kak implements Helix-like surrounding actions.
  • swiper.kak is an external plugin.
  • title-bar.kak is a symlink to my plugin.
  • tree-sitter.kak fixes tree-sitter highlighting for kakoune-lsp *hover* buffers.
  • ui-mode.kak provides a user mode for toggling various UI elements.
  • yazi.kak provides yazi integration.