This page lists how tasks performed by popular Vim plugins can be executed by kakoune native commands.
Plugins
- tabular
- vim-exchange
- vim-swap
- vim-highlightedyank
- vim-textobj-entire
- vim-textobj-indent
- NERD Commenter / vim-commentary
- syntastic
- vim-gitgutter
- rainbow
- vim-hexokinase
tabular
https://github.com/godlygeek/tabular
Easily align text.
vim usage
from
one = 1
two = 2
three = 3
four = 4
:Tab/=
to
one = 1
two = 2
three = 3
four = 4
kakoune usage
- select all buffer
%
- select all
=
chars withs=
- confirm selection with
<cr>
- use the align command
&
vim-exchange
https://github.com/tommcdo/vim-exchange
Easy text exchange operator for Vim.
vim usage
cx
On the first use, define the first {motion} to exchange. On the second use, define the second {motion} and perform the exchange.
kakoune usage
Let's say we want to exchange the words bananas and chocolate in the following sentence :
I like bananas but I prefer chocolate
- select the word
bananas
(without the trailing white space, for example by placing the cursor on the letterb
and select until the end of the word using thee
movement) - save this selection to the default mark register (^) with
Z
- select the word
chocolate
- append the previous selection from the default mark register with
<a-z> a
- rotate the selections content with
<a-)>
forward or<a-(>
backward
Note that this approach is not limited to only 2 selections.
vim-swap
https://github.com/machakann/vim-swap
Swap delimited items, like function arguments (foo, bar, quux)
to (quux, foo, bar)
vim usage
new operator are available to do the swapping g<
and g>
kakoune usage
- select inside the parens with
<a-i>(
- split selection pressing
S
, then,
(notice trailing white space) and confirm<cr>
- rotate the selections content with
<a-)>
vim-highlightedyank
https://github.com/machakann/vim-highlightedyank
Make the yanked region apparent!
vim usage
By adding this plugin, every time you yank something, like a text-object, it will briefly flash to visually confirm that you yanked what you intented.
kakoune usage
It is in kakoune's DNA to always highlight the current selections, so there's no surprise. It always matches your expectations.
vim-textobj-entire
https://github.com/kana/vim-textobj-entire
Entire content of buffer.
vim usage
It avoids the ggVG
dance. Let you do things like yie
to yank all buffer.
kakoune usage
Use the builtin %
. To yank all buffer: %y
vim-textobj-indent
https://github.com/kana/vim-textobj-indent
vim usage
Add the i
text object to select a block of lines which are similarly indented to the current line. Example to delete dii
.
kakoune usage
Use the builtin i
text object. Example to delete <a-i>id
NERD Commenter / vim-commentary
https://github.com/scrooloose/nerdcommenter https://github.com/tpope/vim-commentary
vim usage
use the new command gc
followed by a move or a text-object to add comments.
kakoune usage
use the builtin commands comment-block
and comment-line
.
syntastic
https://github.com/vim-syntastic/syntastic
vim usage
syntastic runs an external tool in background to find syntax errors. it then updates the UI to show them
kakoune usage
use the builtin lint commands.
When you provide the correct path to the external tool for a given language (example eslint
for JavaScript files), it will list the errors in a dedicated buffer (similar to location list in vim), add error and warning flags in the gutter and also show inline infoboxes displaying error messages.
vim-gitgutter
https://github.com/airblade/vim-gitgutter
vim usage
vim-gitgutter displays signs like +
(green) or -
(red) near line numbers indicating additions or deletions of code.
kakoune usage
use the builtin git command git show-diff
rainbow
https://github.com/luochen1990/rainbow or https://github.com/p00f/nvim-ts-rainbow
vim usage
This plugin help you read complex codes were composed of a mass of different kinds of parentheses by showing different levels of parentheses in different colors
kakoune usage
There are Kak-rainbow, Kakoune-rainbow or Kak-rainbower plugins.
vim-hexokinase
https://github.com/RRethy/vim-hexokinase
vim usage
The plugin for asynchronously displaying the colours in the file (#rrggbb
, #rgb
, rgb(a)?
functions, hsl(a)?
functions, web colours, custom patterns).
kakoune usage
Try Kakoune-palette or Colorcol plugins. If non satisfied you, check out this discuss.
Bonus time
Kakoune also has many plugins on its own!
Wiki Home Page
Onboarding
Keys
- Normal mode commands
- Avoid the escape key
- Implementing user mode (Leader key)
- Kakoune explain
- Kakoune TV
Editing
User Interface
Integration with OS and other tools
- Languages
- IDE
- Bar
- Kak daemon helper : 1 session per project
- Registers & Clipboard
- macOS tips
- Windows tips
- Fuzzy finders
- JSON-RPC UI
- bc
- Qalculate!
- wc
- Shell Scripting
- Manipulating dates with Chronic
- Integrating Other CLI apps