# Need help moving around

**URL:** <https://discuss.kakoune.com/t/need-help-moving-around/635>\
**Category:** Help\
**Tags:** movement\
**Created:** [June 26, 2019, 10:00am UTC](https://discuss.kakoune.com/t/need-help-moving-around/635 "2019-06-26T10:00:01Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jazevec](https://discuss.kakoune.com/letter_avatar_proxy/v4/letter/j/ea666f/32.png) [@jazevec](https://discuss.kakoune.com/u/jazevec)\
**Post date:** [June 26, 2019, 10:00am UTC](https://discuss.kakoune.com/t/need-help-moving-around/635/1 "2019-06-26T10:00:01Z")

</div>

I’m learning Rust and an extra editor (after neovim) for fun. Compared to neovim, I have some trouble moving around.

I usually refer to the “normal mode commands” page:

> **[Normal mode commands](https://github.com/mawww/kakoune/wiki/Normal-mode-commands)**
>
> mawww's experiment for a better code editor. Contribute to mawww/kakoune development by creating an account on GitHub.

In neovim, I use `{` and `}` to jump across paragraphs, which means empty lines in practice. Most people including myself use empty lines to separate classes, methods, functions etc. Vim also has motions like `]]`, `]M` for end of method etc. I know both editors have “select a object you’re inside of” (`alt-a` and `alt-i` in kak) but I would like some more, like jump to next `{` object, next `[` object, etc. Vim has a plugin for this (i haven’t tried yet).

In vim, I can press `o` in visual mode to jump to the opposite corner of the visual selection. What are the kakoune equivalents? How do I conveniently move screen with a large selection(s)? I can use v-key, but that’s not flexible for me - either a line or by pages. My code is not structured by pages.

---

<div class="post-metadata">

**Author:** ![andreyorst](https://discuss.kakoune.com/user_avatar/discuss.kakoune.com/andreyorst/32/29_2.png) [@andreyorst](https://discuss.kakoune.com/u/andreyorst)\
**Post date:** [June 26, 2019, 10:06am UTC](https://discuss.kakoune.com/t/need-help-moving-around/635/2 "2019-06-26T10:06:11Z")

</div>

> [@jazevec](#):
>
> In vim, I can press `o` in visual mode to jump to the opposite corner of the visual selection. What are the kakoune equivalents?

alt+;

> [@jazevec](#):
>
> In neovim, I use `{` and `}` to jump across paragraphs, which means empty lines in practice

]p - move one paragraph forward  
[p - move one paragraph backwards

---

<div class="post-metadata">

**Author:** ![robertmeta](https://discuss.kakoune.com/user_avatar/discuss.kakoune.com/robertmeta/32/833_2.png) [@robertmeta](https://discuss.kakoune.com/u/robertmeta)\
**Post date:** [June 26, 2019, 1:46pm UTC](https://discuss.kakoune.com/t/need-help-moving-around/635/3 "2019-06-26T13:46:03Z")

</div>

> [@jazevec](#):
>
> n vim, I can press `o` in visual mode to jump to the opposite corner of the visual selection. What are the kakoune equivalents? How do I conveniently move screen with a large selection(s)? I can use v-key, but that’s not flexible for me - either a line or by pages. My code is not structured by pages.

I feel your pain a lot on this, using ]p [p feels very “bad” to me, so I have tried various things to fix it.

---

<div class="post-metadata">

**Author:** ![jazevec](https://discuss.kakoune.com/letter_avatar_proxy/v4/letter/j/ea666f/32.png) [@jazevec](https://discuss.kakoune.com/u/jazevec)\
**Post date:** [June 26, 2019, 9:45pm UTC](https://discuss.kakoune.com/t/need-help-moving-around/635/4 "2019-06-26T21:45:54Z")

</div>

I’m surprised `[p`, `]p` even work. The dialog box says it’s for **surrounding** object begin/end. How is next paragraph surrounding the current one?

Bonus points for keys being consistent between `]p`, alt-i p, and alt-a p (same letter p, or x, always stands for the same thing).

However I think making the keys ][ select to next **surrounding** object begin/end is a waste of key. Just drop the “surrounding”. For surrounding there are already 2 other keys. How often do you need half a brace/text object, and ONLY if it’s a surrounding one?

Even then the old Street Fighter / Mortal Kombat wisdom remains. It’s easier/faster to press a combination of keys which your fingers can roll over than press the same/nearly the same key repeatedly. ]p is placed very inconveniently. You press it with weakest fingers of your right palm if it rests on the home row. }{ in vim is not consistent with a few other things, but I can spread the load across 2 palms.

In similar vein, I hate having to press alt-shift-w repeatedly to select several words for deleting. Here, I think vim’s approach… wins. vww(w)wwd is much easier on my fingers, and I can press it in the time it takes my left palm’s fingers to align on alt-shift-w. t, f (find in line) can’t always be used.

---

<div class="post-metadata">

**Author:** ![Screwtapello](https://discuss.kakoune.com/user_avatar/discuss.kakoune.com/screwtapello/32/12_2.png) [@Screwtapello](https://discuss.kakoune.com/u/Screwtapello)\
**Post date:** [June 27, 2019, 3:11am UTC](https://discuss.kakoune.com/t/need-help-moving-around/635/5 "2019-06-27T03:11:47Z")

</div>

“surrounding” in this case means “surrounding the cursor”. If you’re in the middle of a paragraph and you hit `]p`, the cursor moves to the end of the paragraph it’s in. It’s a bit weird for paragraphs specifically, since they can’t be nested, but the “surrounding” label is more relevant to `()`, `[]`, `{}`, `<>` pairs. As you saw, the same options are available for movement, `<a-i>`, and `<a-a>`, which is convenient but means not all options are equally useful in all contexts.

As for selecting multiple words, if you’re using `w` in Vim, you can just use `w` in Kakoune. Kakoune’s `<a-w>` is Vim’s `W`, which can be faster in a punctuation-heavy context, but “to select several words for deleting” sounds like prose, so the speed advantage of `<a-w>` is probably cancelled out by the disadvantage of pressing Alt.
