Skip to content
Martin Schenck edited this page May 2, 2020 · 5 revisions

Use kakoune as an IDE

As a convention, many commands respect the toolsclient, docsclient and jumpclient options. These string options store the name of the client to use. toolsclient will be used for :make and :grep commands, when an entry is selected in them, they will try to open the file in the jumpclient client. The :man and :doc commands will display their content in the docsclient.

If neither of those options are defined, it will fallback on the current client.

Here's a small snippet you can trigger to launch multiple clients and bind them to the right options:

def ide %{
    rename-client main
    set global jumpclient main

    new rename-client tools
    set global toolsclient tools

    new rename-client docs
    set global docsclient docs
}

Then it's up to tmux or your window manager (dwm, i3, xmonad…) to fit them correctly on your monitor.

Read local kakrc file

It can at times be useful to override / extend your configuration based on the local directory, this can be done easily by just adding the following to your kakrc file

# Source a local project kak config if it exists
# Make sure it is set as a kak filetype
hook global BufCreate (.*/)?(\.kakrc\.local) %{
    set-option buffer filetype kak
}
try %{ source .kakrc.local }

and then adding a .kakrc.local file to the place you launch kakoune from for a given project.

Buffer list

The Bar page explains how to add extra status bars.

Clone this wiki locally