# Help

**URL:** https://discuss.kakoune.com/c/help/11.md

[Latest](https://discuss.kakoune.com/latest.md) · [Categories](https://discuss.kakoune.com/categories.md) · [Tags](https://discuss.kakoune.com/tags.md)

---

## [About the Help category](https://discuss.kakoune.com/t/about-the-help-category/69)

<div class="topic-metadata">

**Author:** [@robertmeta](https://discuss.kakoune.com/u/robertmeta)\
**Replies:** 0

</div>

Need help with something, ask here. If something really useful and broadly applicable comes out of it - I will reorganize it over to recipes. Don’t be shy!

---

## [Kak-lsp completion key](https://discuss.kakoune.com/t/kak-lsp-completion-key/3026)

<div class="topic-metadata">

**Author:** [@arutonee](https://discuss.kakoune.com/u/arutonee)\
**Replies:** 8\
**Last updated:** [October 11, 2026, 10:09am UTC](https://discuss.kakoune.com/t/kak-lsp-completion-key/3026 "2026-10-11T10:09:15Z")

</div>

Hi! I’ve been enjoying Kakoune for the past few days and plan on using it for quite a while longer, but there is one small thing that I cannot seem to find the solution to. I’m using kak-lsp, and some completions expand …

---

## [Nnn integration](https://discuss.kakoune.com/t/nnn-integration/1095)

<div class="topic-metadata">

**Author:** [@parasrah](https://discuss.kakoune.com/u/parasrah)\
**Replies:** 19\
**Last updated:** [August 13, 2026, 3:56pm UTC](https://discuss.kakoune.com/t/nnn-integration/1095 "2026-08-13T15:56:00Z")

</div>

Hi! I’ve been trying to integrate Kakoune with nnn the last little bit, to try to achieve something similar to vim + vim-vinegar + netrw. In other words, I would like to hit - to enter nnn in the parent directory for th…

---

## [How to write an asynchronous plugin?](https://discuss.kakoune.com/t/how-to-write-an-asynchronous-plugin/2955)

<div class="topic-metadata">

**Author:** [@jcomcl](https://discuss.kakoune.com/u/jcomcl)\
**Replies:** 7\
**Last updated:** [August 11, 2026, 7:43pm UTC](https://discuss.kakoune.com/t/how-to-write-an-asynchronous-plugin/2955 "2026-08-11T19:43:38Z")

</div>

I’m attempting to write my first plugin - followname - which tracks files as they get moved or renamed. I’ve done the hard part of making a program which watches for rename events using inotify and outputs the new name t…

---

## [Web Dev config (Vue js)](https://discuss.kakoune.com/t/web-dev-config-vue-js/2959)

<div class="topic-metadata">

**Author:** [@Nikita0x](https://discuss.kakoune.com/u/Nikita0x)\
**Replies:** 5\
**Last updated:** [August 11, 2026, 9:15am UTC](https://discuss.kakoune.com/t/web-dev-config-vue-js/2959 "2026-08-11T09:15:51Z")

</div>

Hello everybody. I am a new user to Kakoune - I was wondering - are there any web developers (preferably working with Vue.js) - that use Kakoune and have full set up already? (Lsp, Highlighting)? I would greatly appreci…

---

## [Getting a client's tty](https://discuss.kakoune.com/t/getting-a-clients-tty/1276)

<div class="topic-metadata">

**Author:** [@useredsa](https://discuss.kakoune.com/u/useredsa)\
**Replies:** 4\
**Last updated:** [July 23, 2026, 11:10pm UTC](https://discuss.kakoune.com/t/getting-a-clients-tty/1276 "2026-07-23T23:10:50Z")

</div>

I want to be able to write escape codes to the terminal to use kitty’s clipboard integration. I could potentially do this using echo -to-file /dev/tty but the problem is that commands are executed in the context of the s…

---

## [Can no longer change terminal assistant?](https://discuss.kakoune.com/t/can-no-longer-change-terminal-assistant/2942)

<div class="topic-metadata">

**Author:** [@aleivk](https://discuss.kakoune.com/u/aleivk)\
**Replies:** 3\
**Last updated:** [July 11, 2026, 12:40am UTC](https://discuss.kakoune.com/t/can-no-longer-change-terminal-assistant/2942 "2026-07-11T00:40:36Z")

</div>

Hi everyone! I finally moved back to Kakoune after a long time (~2 years). I have everything set up the way I want and I’m relearning Kakoune slowly, it’s fun! Albeit I wasn’t able to change the terminal assitant. I reme…

---

## [How do I disable Ctrl-Z suspend?](https://discuss.kakoune.com/t/how-do-i-disable-ctrl-z-suspend/2895)

<div class="topic-metadata">

**Author:** [@jcomcl](https://discuss.kakoune.com/u/jcomcl)\
**Replies:** 3\
**Last updated:** [May 11, 2026, 7:07am UTC](https://discuss.kakoune.com/t/how-do-i-disable-ctrl-z-suspend/2895 "2026-05-11T07:07:59Z")

</div>

I occasionally fat-finger the ctrl-z key which causes kakoune to suspend to the background, it which point I have to kill it because I can’t get it running again without errors. I’ve tried running stty susp undef before …

---

## ["exec -with-hooks" for only specific hook/group](https://discuss.kakoune.com/t/exec-with-hooks-for-only-specific-hook-group/2875)

<div class="topic-metadata">

**Author:** [@kmafeni04](https://discuss.kakoune.com/u/kmafeni04)\
**Replies:** 12\
**Last updated:** [May 6, 2026, 12:05am UTC](https://discuss.kakoune.com/t/exec-with-hooks-for-only-specific-hook-group/2875 "2026-05-06T00:05:42Z")

</div>

I messing around with writing a command to fix the indentation of text using the indent hooks but I only want to use those hooks, not trigger every other, is there a way I could do that? define-command fix-indent -docst…

---

## [Show me your gf (goto-file)](https://discuss.kakoune.com/t/show-me-your-gf-goto-file/2436)

<div class="topic-metadata">

**Author:** [@42xel](https://discuss.kakoune.com/u/42xel)\
**Replies:** 7\
**Last updated:** [April 22, 2026, 10:09pm UTC](https://discuss.kakoune.com/t/show-me-your-gf-goto-file/2436 "2026-04-22T22:09:25Z")

</div>

A gripe I have with the default goto-file command is that it doesn’t understand syntax like file:line:column which is often outputted by debuggers (including kakoune’s !). I’ve looked around and found some promising plu…

---

## [Setup emmet-ls](https://discuss.kakoune.com/t/setup-emmet-ls/2867)

<div class="topic-metadata">

**Author:** [@kmafeni04](https://discuss.kakoune.com/u/kmafeni04)\
**Replies:** 0\
**Last updated:** [April 2, 2026, 2:20pm UTC](https://discuss.kakoune.com/t/setup-emmet-ls/2867 "2026-04-02T14:20:33Z")

</div>

I’ve been trying to get emmet completions working with jsx/tsx files. The tsserver sends completions but I don’t get anything from emmet remove-hooks global lsp-filetype-javascript hook global WinSetOption filetype=(?:j…

---

## [Reduce text shift with git-gutter](https://discuss.kakoune.com/t/reduce-text-shift-with-git-gutter/2863)

<div class="topic-metadata">

**Author:** [@kmafeni04](https://discuss.kakoune.com/u/kmafeni04)\
**Replies:** 2\
**Last updated:** [March 31, 2026, 10:11pm UTC](https://discuss.kakoune.com/t/reduce-text-shift-with-git-gutter/2863 "2026-03-31T22:11:28Z")

</div>

Is there a way to reduce the jumping of text back and forth when updating the git gutter, like just setting a permanent block there when there is no change This is my my currrent setup for the gutters using the git-asyn…

---

## [Problem with kakoune as a pager](https://discuss.kakoune.com/t/problem-with-kakoune-as-a-pager/2841)

<div class="topic-metadata">

**Author:** [@M-Programer](https://discuss.kakoune.com/u/M-Programer)\
**Replies:** 3\
**Last updated:** [February 22, 2026, 12:50pm UTC](https://discuss.kakoune.com/t/problem-with-kakoune-as-a-pager/2841 "2026-02-22T12:50:40Z")

</div>

What makes ansi.kak not much powerful is that there are a ton of ansi code standards that my terminal supports but it doesn’t by default, so rather than giving kakoune a functionality that should be for other tools (the …

---

## [Start subprocess from kakoune](https://discuss.kakoune.com/t/start-subprocess-from-kakoune/1704)

<div class="topic-metadata">

**Author:** [@scr](https://discuss.kakoune.com/u/scr)\
**Replies:** 4\
**Last updated:** [February 15, 2026, 8:45am UTC](https://discuss.kakoune.com/t/start-subprocess-from-kakoune/1704 "2026-02-15T08:45:46Z")

</div>

Hello, In bash I can easily start a new subprocess with something like: start\_cmd & or even (start\_cmd &) But from kakoune I didn’t find a way to do the same inside a %sh{ } block From all what I have tried, either…

---

## [AI 'Prompt Stuffing' for the Kakoune.asciidoc documentation](https://discuss.kakoune.com/t/ai-prompt-stuffing-for-the-kakoune-asciidoc-documentation/2823)

<div class="topic-metadata">

**Author:** [@duncode](https://discuss.kakoune.com/u/duncode)\
**Replies:** 16\
**Last updated:** [February 8, 2026, 6:13am UTC](https://discuss.kakoune.com/t/ai-prompt-stuffing-for-the-kakoune-asciidoc-documentation/2823 "2026-02-08T06:13:24Z")

</div>

Does/Has anyone have any suggestions or improvements on a ‘Prompt’ or ‘Model’ for improving Kakounes’ documentation with the help of an AI? Similar topic 2019: @Screwtapello Rewriting/Reorganising Kakounes Documentatio…

---

## [Change windowing module in a clean way](https://discuss.kakoune.com/t/change-windowing-module-in-a-clean-way/2821)

<div class="topic-metadata">

**Author:** [@M-Programer](https://discuss.kakoune.com/u/M-Programer)\
**Replies:** 9\
**Last updated:** [January 26, 2026, 8:19pm UTC](https://discuss.kakoune.com/t/change-windowing-module-in-a-clean-way/2821 "2026-01-26T20:19:05Z")

</div>

I want to force kakoune to use sway. does that really need to be complicated?! I’m using kitty, and strangley it doesn’t detect both I use a custom kakrc in a different path (thanks to me using nixos) like this: kak -…

---

## [Kakoune as a manpager](https://discuss.kakoune.com/t/kakoune-as-a-manpager/2820)

<div class="topic-metadata">

**Author:** [@M-Programer](https://discuss.kakoune.com/u/M-Programer)\
**Replies:** 1\
**Last updated:** [January 23, 2026, 10:55pm UTC](https://discuss.kakoune.com/t/kakoune-as-a-manpager/2820 "2026-01-23T22:55:45Z")

</div>

I know there’s a default plugin in rc/tools, but I was trying to reverse engineer it to write a small shellscript that acts like a valid MANPAGER. That’s the script man -P cat | col -x -b | kak but of course, man want…

---

## [How to indent a soft wrapped line only for bullet lists in markdown](https://discuss.kakoune.com/t/how-to-indent-a-soft-wrapped-line-only-for-bullet-lists-in-markdown/2814)

<div class="topic-metadata">

**Author:** [@umio](https://discuss.kakoune.com/u/umio)\
**Replies:** 6\
**Last updated:** [January 21, 2026, 1:23am UTC](https://discuss.kakoune.com/t/how-to-indent-a-soft-wrapped-line-only-for-bullet-lists-in-markdown/2814 "2026-01-21T01:23:39Z")

</div>

I want to use Kakoune to write markdown files, but find that the soft wrap around around bullet points makes them harder to read. Current Behavior: List: - example bullet point 1 - example bullet point 2 This is is wh…

---

## [Target window/buffer in client](https://discuss.kakoune.com/t/target-window-buffer-in-client/2812)

<div class="topic-metadata">

**Author:** [@Maxxus](https://discuss.kakoune.com/u/Maxxus)\
**Replies:** 3\
**Last updated:** [January 13, 2026, 7:13pm UTC](https://discuss.kakoune.com/t/target-window-buffer-in-client/2812 "2026-01-13T19:13:04Z")

</div>

I’m integrating some long running asynchronous processes (think ci, linters, style checkers, etc…) and I’ve set them up to send eval -client commands to create highlighters as issues are found. It works as long as I don…

---

## [Questions about inconsistent custom object behavior](https://discuss.kakoune.com/t/questions-about-inconsistent-custom-object-behavior/2788)

<div class="topic-metadata">

**Author:** [@jearbear](https://discuss.kakoune.com/u/jearbear)\
**Replies:** 2\
**Last updated:** [December 7, 2025, 7:25am UTC](https://discuss.kakoune.com/t/questions-about-inconsistent-custom-object-behavior/2788 "2025-12-07T07:25:37Z")

</div>

I have the following custom object defined to allow selecting function calls: map global object f 'c\[\\w\\.\]+\\(,\\)\<ret\>'. However, there are a few gotchas that make it not that pleasant to use. Would love to learn more abo…

---

## [JSON highlighters for keys](https://discuss.kakoune.com/t/json-highlighters-for-keys/758)

<div class="topic-metadata">

**Author:** [@Delapouite](https://discuss.kakoune.com/u/Delapouite)\
**Replies:** 6\
**Last updated:** [November 10, 2025, 7:28am UTC](https://discuss.kakoune.com/t/json-highlighters-for-keys/758 "2025-11-10T07:28:34Z")

</div>

Hi Currently when I edit a JSON file, it looks like this. Almost everything is in yellow (which is my default color for strings): I would love to have a different color for JSON keys (here in pink but it doesn’t mat…

---

## [Eval 'Source' no buffer in context](https://discuss.kakoune.com/t/eval-source-no-buffer-in-context/2760)

<div class="topic-metadata">

**Author:** [@IronKing127](https://discuss.kakoune.com/u/IronKing127)\
**Replies:** 2\
**Last updated:** [October 2, 2025, 1:04am UTC](https://discuss.kakoune.com/t/eval-source-no-buffer-in-context/2760 "2025-10-02T01:04:32Z")

</div>

Hello I suddenly started getting an error which prints /home/\*\*\*\*/.config/kak/kakrc:no buffer in context followed by a /usr/share/kak/kakrc:29:1 eval 163:1 'source' no buffer in context error while parsing kakrc 1:1: …

---

## [Vertical line for suggested max line width](https://discuss.kakoune.com/t/vertical-line-for-suggested-max-line-width/2501)

<div class="topic-metadata">

**Author:** [@vorboyvo](https://discuss.kakoune.com/u/vorboyvo)\
**Replies:** 10\
**Last updated:** [October 1, 2025, 7:54pm UTC](https://discuss.kakoune.com/t/vertical-line-for-suggested-max-line-width/2501 "2025-10-01T19:54:27Z")

</div>

Hi - not sure how to describe this problem super easily, so I haven’t been able to search for a good solution on the internet. On JetBrains IDEs I’ve used in the past, there’s a vertical line that serves as a guideline …

---

## [Is it possible to highlight whole lines with a regex?](https://discuss.kakoune.com/t/is-it-possible-to-highlight-whole-lines-with-a-regex/2762)

<div class="topic-metadata">

**Author:** [@igr](https://discuss.kakoune.com/u/igr)\
**Replies:** 12\
**Last updated:** [October 1, 2025, 12:44am UTC](https://discuss.kakoune.com/t/is-it-possible-to-highlight-whole-lines-with-a-regex/2762 "2025-10-01T00:44:06Z")

</div>

This is what I have:

---

## [Binding complex command](https://discuss.kakoune.com/t/binding-complex-command/2753)

<div class="topic-metadata">

**Author:** [@peperronii](https://discuss.kakoune.com/u/peperronii)\
**Replies:** 5\
**Last updated:** [September 15, 2025, 3:26am UTC](https://discuss.kakoune.com/t/binding-complex-command/2753 "2025-09-15T03:26:08Z")

</div>

So I roughly understands how kakoune’s parsing works and I can get buy raw dogging a command in the kakoune’s command line. Right now, I’m trying to bind this: :try %{exec "%%s(/\\\*.\*\\\*/\\n){11}\<ret\>”} this selects C-mul…

---

## [Selecting whole buffer immediately after a grep command](https://discuss.kakoune.com/t/selecting-whole-buffer-immediately-after-a-grep-command/2750)

<div class="topic-metadata">

**Author:** [@albak](https://discuss.kakoune.com/u/albak)\
**Replies:** 2\
**Last updated:** [September 4, 2025, 10:21pm UTC](https://discuss.kakoune.com/t/selecting-whole-buffer-immediately-after-a-grep-command/2750 "2025-09-04T22:21:53Z")

</div>

Hello fellow mouilleurs I’m trying to create a command that greps a pattern in a buffer, selects the whole grep buffer and applies a few commands (aligns the matched patterns). I am getting an error/inconsistency. My c…

---

## [Refer to begin-of/end-of selection, like BOL/EOL (^/$)](https://discuss.kakoune.com/t/refer-to-begin-of-end-of-selection-like-bol-eol/2740)

<div class="topic-metadata">

**Author:** [@7v0lk0v](https://discuss.kakoune.com/u/7v0lk0v)\
**Replies:** 5\
**Last updated:** [August 19, 2025, 1:37am UTC](https://discuss.kakoune.com/t/refer-to-begin-of-end-of-selection-like-bol-eol/2740 "2025-08-19T01:37:45Z")

</div>

Hi all, aim: to delete leading and trailing whitespace chars in an arbitrary selection - not to be confused with unselecting leading/trailing whitespace which is what the \_ cmd does. I can’t figure out how to do this, …

---

## [Autoindent always uses row above, even when it's empty](https://discuss.kakoune.com/t/autoindent-always-uses-row-above-even-when-its-empty/2318)

<div class="topic-metadata">

**Author:** [@joncol](https://discuss.kakoune.com/u/joncol)\
**Replies:** 1\
**Last updated:** [August 11, 2025, 1:28pm UTC](https://discuss.kakoune.com/t/autoindent-always-uses-row-above-even-when-its-empty/2318 "2025-08-11T13:28:02Z")

</div>

Hi, is there some reasonably easy way to make autoindentation use the previous non-empty line when calculating what indentation to use, instead of always using the previous line? For example: int main() { printf("h…

---

## [Toolsclient and extrernal tools](https://discuss.kakoune.com/t/toolsclient-and-extrernal-tools/2733)

<div class="topic-metadata">

**Author:** [@shinyzero0](https://discuss.kakoune.com/u/shinyzero0)\
**Replies:** 7\
**Last updated:** [August 3, 2025, 6:39am UTC](https://discuss.kakoune.com/t/toolsclient-and-extrernal-tools/2733 "2025-08-03T06:39:56Z")

</div>

We have a toolsclient that allows to have various tools always at hand without much overhead of switching windows and such. Sadly, that works only with kakoune tools, while our philosophy seems to be against reimplementi…

---

## [Catch piping errors not working](https://discuss.kakoune.com/t/catch-piping-errors-not-working/2464)

<div class="topic-metadata">

**Author:** [@7v0lk0v](https://discuss.kakoune.com/u/7v0lk0v)\
**Replies:** 22\
**Last updated:** [July 30, 2025, 4:01pm UTC](https://discuss.kakoune.com/t/catch-piping-errors-not-working/2464 "2025-07-30T16:01:23Z")

</div>

I assume I’m missing something obvious but all I want is to display a message if a pipe fails instead of the error silently being written to \*debug\* buffer - eg. pipe a selection through bla and if it fails (bla doesn’t …

[Next page](https://discuss.kakoune.com/c/help/11.md?page=1)
