Hello, Kakoune community
The past year, I have been working on Kakoune Qt: a Qt frontend for Kakoune. This project allows you to run a Qt-based program that looks and behaves like Kakoune running in the terminal.
Here are some additional features:
- Create splits with
:kakqt-split-horizontal
and:kakqt-split-vertical
- Focus splits with
:kakqt-focus <client_name>
- Show and hide clients with
:kakqt-show <client_name>
and:kakqt-hide <client_name>
- Navigate between splits with keybindings
<c-s-h>
,<c-s-j>
,<c-s-k>
and<c-s-l>
Why use Kakoune Qt?
Right now, Kakoune Qt can’t boast of any real advantages over using Kakoune in the terminal with a terminal multiplexer. This project started because I wanted to use splits with Kakoune, but I don’t use a tiling window manager and I’m not a fan of tmux (fight me ). There is still some work left for making Kakoune Qt on par with running Kakoune in the terminal. Notably, you can’t open another terminal application, such as bash, gdb or tig, in a split. I’m planning on adding that later.
However, I think that a GUI for Kakoune has a lot of potential. For example, there have been many attempts of implementing a buffer bar for Kakoune, but I’d argue that none are satisfactory. For a GUI, it would be quite easy to implement a VSCode-like buffer bar. A GUI would also allow for greater customization of Kakoune’s appearance. You could add nice borders, pixel-perfect padding, different font sizes for the code, status bar, menu and so on. Instead of having one status bar for each client, you could configure it to have one big status bar at the bottom of the window. A prompt that looks like VSCode could also be added as a styling option. Many possibilities that I’d like to experiment with in the future!
Kakoune Qt isn’t for everyone, but I’d appreciate if you’d try it out! Please report any bugs or problems you encounter while installing or using it