Popups (+
) are used for fzf
commands.
Example
+ :fzf
If your terminal does not have popups, you can add a fallback to the underlying terminal.
Example – X11 configuration:
hook global ModuleLoaded x11 %{
alias global popup x11-terminal
}
Example – tmux configuration:
hook global ModuleLoaded tmux %{
alias global popup tmux-terminal-vertical
}
Example – kitty configuration:
hook global ModuleLoaded kitty %{
alias global popup kitty-terminal-tab # or kitty-terminal
}
The >
or connect-terminal
command runs its arguments (by default your shell) inside a connected terminal,
while $
or connect-shell
simply runs its arguments in a connected environment.
Some programs must be run inside a terminal, while others spawn their own graphical window.
Use >
for the first type and $
for the second.
The &
or connect-detach
command detaches (closes) the current client
(leaving you in a terminal if you launched Kakoune there) and
creates a file named connect.sh
that you can execute with sh
to start a shell connected to that client’s server.
Notes
- The file is automatically erased after being sourced.
- Kakoune refuses to quit if you try to detach the last client and you didn’t start it in daemon mode.
kak-shell
is a program to start an interactive shell (or a program) connected to a session, in the same way nix-shell does.
Initially, it displays the list of active sessions and asks you to choose one.
Illustration
$ kak-shell
Kakoune sessions:
1 kanto
2 johto
+ create new session
Kakoune session: 1█
@kanto $ :a█
If you enter a number i, it will try to connect to the i-th entry. Otherwise, it will interpret the entry as a session name and connect to it. If the session does not exists, the session will be started in daemon mode.
Apart from running a connected shell, you can use kak-shell
to run commands in the context of the session.
For example, you can run kak-shell kanto lazygit
to run lazygit connected to the kanto
session.
The term module is used for small program integrations for Kakoune (which are implemented as Kakoune’s modules).
The term command is used for small binaries that can be used by a connected application.
The : is the key used to access the prompt menu inside Kakoune.
Because the commands usually resemble Kakoune commands,
prepending them with : is a good way to reuse our muscle memory,
and it makes it very simple to differentiate them from traditional commands
(think of pwd
vs. :pwd
).