Vem Cheat Sheet - Full (AZERTY)

keymap-box

/static/img/cheat-sheets/azerty-full.png

actions-box

Legend

/static/img/cheat-sheets/leyend.png
And additional actions with:
Space <key>

Changing Modes

i

Insert mode (before cursor)

o

Insert mode (after cursor)

Ctrl-o

Normal mode

:

Command line

Esc same as Ctrl-o

Movements

movements-box

Basic Movements

h

Left

j

Down

k

Up

l

Right

Larger Movements

H

Previous word

J

Next paragraph (next blank line)

K

Previous paragraph (previous blank line)

L

Next word

Inserting after Moving

Ctrl-h

Insert at the start of current line (first non-whitespace character)

Ctrl-j

Insert in a new line below current one

Ctrl-k

Insert in a new line above current one

Ctrl-l

Insert at the end of current line

Line Movements

,

Beginning of current line (first non-whitespace character)

;

End of current line

0

First column in current line

You can also use ^ and $ instead of , and ..

Page Movements

U

Page up

M

Page down

Document Movements

q

Top of the file

w

Bottom of the file

:<number> jump to the given line number

Jumping between Ends

%

Jump to matching parenthesis, bracket or HTML/XML tag

*

Jump between ends of current selection or last selected text

+

Jump between ends of last pasted or inserted text

End of Next Word

.

Jump to end of next word

Jump History

R

Go to previous location in jump history

Ctrl-]

Go to next location in jump history

Jumps within Window

" u

Jump to first line in window

" .

Jump to middle line in window

" m

Jump to last line in window

Jumps within Identifiers

<

Jump to previous camel case or underscore separated word

>

Jump to next camel case or underscore separated word

Editing

editing-box

Undoing and Redoing

a

Undo

A

Redo

Deleting

c

Delete current line or selection

I

Delete left character (backspace)

O

Delete right character (delete)

Changing

f

Change current word

F

Change from cursor to the end of line

Ctrl-f

Change the content between the closest surrounding matching pair ({[<"''">]})

Space f

Change camel case or underscore separated word

Changing means deleting and starting insert mode

Replacing

r <char>

Replace character under cursor, or all characters if there's an active selection, by <char>

Space r

Replace mode (characters below the cursor get overwritten when typing)

Commenting

v

Comment/Uncomment current line or selection (line comment markers)

V

Comment line or selection (bock comment markers)

Adding White-Space

Tab

Indent line or selection

S-Tab

Un-indent line or selection

y

Add blank line above current one

n

Add blank line below current one

(

Add space before cursor

)

Add space after cursor

Enter

Enter a newline (also in normal mode)

Formatting

|

Format line or selection. (Eg. reformat line lenght)

&

Join next line to current one or all lines in selection

=

Format code

Ctrl-u

Toggle case of character under cursor or all characters in selection

s <char>

Surround current selection with a matching pair (({[<"''">]})). If <char> is one of ({[< a space is left between the matching pair and the selected text, for '">]}) no space is left

Adding and Subtracting

Q

Add 1 to number under cursor

W

Subtract 1 number under cursor

Substituting

:%s/<pattern>/<text>/icg

Replace all occurrences of <pattern> with <text>

The last characters are optional flags:

i

ignore case

c

confirm every substitution interactively

g

replace all occurrences in each line

<text> can contain \1, \2, ... to refer to the regex groups of pattern

Substitution Ranges

:%s/.../.../ Perform substitution across the whole file

:<n>,<m>s/.../.../ Perform substitution in the range from line number <n> to <m>

:'<,'>s/.../.../ Perform substitution in current selection. This prefix will be automatically pre-populated in the command line once you visually create the selection and then type :

Copying, Cutting, Deleting and Pasting

clipboard-box

Selections

G

Start selection (repeated, it changes the selection mode: characterwise, blockwise, linewise)

Space

Deselect

Space Space

Reselect last active selection

Important: a horizontal movement after G sets a characterwise selection and a vertical movement, a linewise one.

Quick Selections

g

Select word (if pressed twice, select all text between white-space)

Ctrl-g

Select the content between the closest surrounding matching pair ({[<"''">]})

More Quick Selections

Space a

Select all

Space p

Select paragraph

Space P

Select last pasted text

Space g

Select camel case or underscore separated word

Space G

Select inner line (not including leading and trailing white-space)

Selecting Text Objects

G i <obj>

Inner selection of <obj>

G o <obj>

Outer selection of <obj>

Outer selections include surrounding white-space, quotes or parenthesis/brackets while Inner ones don't.

See next cards for the possible values of <obj>.

Text Objects I

l

Line

s

Sentence

p

Paragraph

To use with G i and G o.

Text Objects II

(

Text between parenthesis

{

Text between curly brackets

[

Text between square brackets

<

Text between angle brackets

t

Text between HTML/XML tags

'

Text between single quotes

"

Text between double quotes

To use with G i and G o.

Copying, Cutting and Deleting

e

Copy line or selection

d

Cut line or selection

c

Delete line or selection

Ctrl-d

Like d but start insert mode afterwards

Secondary Clipboard

E

Copy line or selection into secondary clipboard

D

Cut line or selection into secondary clipboard

Pasting

p

Paste

P

Paste secondary clipboard

Advanced Pasting I

Ctlr-p h

Paste before cursor

Ctlr-p j

Paste below current line

Ctlr-p k

Paste above current line

Ctlr-p l

Paste after cursor (same as p)

Advanced Pasting II

Ctlr-p ,

Paste at line beginning

Ctlr-p ;

Paste at line end

Ctrl-p Tab

Paste below current line using its same indentation level

Files

files-box

New File

Ctrl-t

New file

Ctrl-w Ctrl-]

New file in vertical window

Ctrl-w Ctrl-_

New file in horizontal window

Ctrl-w Ctrl-^

New file in new tabpage

You can also use Ctrl-6 instead of Ctrl-^ (which can be difficult to type in some keyboards).

Opening Files

Z

Open file

space w

Fuzzy finder

space W

Most recently used

space _

Open filename under cursor

:e <path> open file using the command line

Saving Files

s

Save

space s

Save all

:saveas <path> save as...

Closing Files

x

Close (and quit if last one)

Ctrl-x

Close but keep window layout

space x

Close all and quit

Switching between open files

z

Switch between open files

t

Next open file

T

Previous open file

#

Last visited file (alternate file)

{

Move current file to the left in tabline

}

Move current file to the right in tabline

File Browser

filebrowser-box

File Browser: Opening and Closing

Z

Open file browser

x

Close file browser

File Browser: Basic Actions

h

Go to parent directory

j

Cursor down

k

Cursor up

l or Enter

Open file or enter directory

File Browser: Opening Files

Ctrl-]

Open file in vertical window

Ctrl-_

Open file in horizontal window

Ctrl-^

Open file in new tabpage

Ctrl-t

Create new file

You can also use Ctrl-6 instead of Ctrl-^ (which can be difficult to type in some keyboards).

File Browser: Multi-Open

G

Start selection. Use movement keys to create your selection and open all selected files by using any of the file opening actions.

Fuzzy Finder

fuzzyfinder-box

File Browser: Opening and Closing

z

Switch between open files

Space z

Find files

Space Z

Find most recently used files

Ctrl-o

Close fuzzy finder

Shift-Tab

Cycle between open file, file and mru searches

Ctrl-Tab

Cycle between open file, file and mru searches (opposite direction)

Fuzzy Finder: Movements

Ctrl-h

Move cursor left

Ctrl-j

Move up in the list of matching files

Ctrl-k

Move down in the list of matching files

Ctrl-l

Move cursor right

Ctrl-a

Jump to beginning of command line

Ctrl-e

Jump to end of command line

Fuzzy Finder: Open File

Enter

Open file

Ctrl-]

Open file in vertical window

Ctrl-_

Open file in horizontal window

Ctrl-^

Open file in new tabpage

Ctrl-t

Create new file (type the path first)

You can also use Ctrl-6 instead of Ctrl-^ (which can be difficult to type in some keyboards).

Fuzzy Finder: Multi-Open

Ctrl-g

Mark file to open

Ctrl-w

Open marked files

You can also use Ctrl-], Ctrl-_ or Ctrl-^ to open the files in vertical windows, horizontal windows or new tabpages.

Fuzzy Finder: Options

Tab

Autocomplete

Ctrl-f

Toggle search by just filename

Ctrl-r

Refresh list

Insert Mode

insertmode-box

Insert Mode: Movements

Ctrl-h

Move cursor left

Ctrl-j

Move cursor down

Ctrl-k

Move cursor up

Ctrl-l

Move cursor right

Insert Mode: More Movements

Ctrl-a

Jump to beginning of current line

Ctrl-e

Jump to end of current line

Insert Mode: Autocomplete

Tab

Autocomplete

Shift-Tab

Autocomplete (opposite direction)

Tab autocompletes after text and inserts a tab or spaces (depending on your configuration) at the beginning of the line or after white-space. Use Ctrl-] to insert tab or spaces independently of the context.

Insert Mode: Adding Text

Ctrl-d

Insert Unicode character (digraph)

Ctrl-y

Clone character above the cursor

Ctrl-n

Clone character below the cursor

Ctrl-]

Insert tab (for cases where Tab autocompletes)

Insert Mode: Paste Mode

Ctrl-^

Toggle paste mode

You can also use Ctrl-6 instead of Ctrl-^ (which can be difficult to type in some keyboards).

Command Line

commandline-box

Command Line: Movements

Ctrl-h

Move cursor left

Ctrl-l

Move cursor right

Ctrl-a

Jump to beginning of command line

Ctrl-e

Jump to end of command line

Command Line: History

Ctrl-j

Next command in command-line history

Ctrl-k

Previous command in command-line history.

When browsing the command line history, if you already typed the start of a command, it will try to find a match

Command Line: Pasting

Ctrl-p

Paste clipboard contents

Command Line: Autocomplete

Tab

Autocomplete

Shift-Tab

Autocomplete (opposite direction)

Tools

tools-box

Searching

/ or -

Search forward (after cursor)

?

Search backwards (before cursor)

u

Find previous

m

Find next

_

Search word under cursor forward

Ctrl-_

Search word under cursor backwards

Ctrl-r

Reset search highlighting

Macros

@ s

Record macro s

@ x

Record macro x

@ @

Stop recording

S

Play macro s

X

Play macro x

Marks

! <letter>

Set mark.

` <letter>

Go to mark <letter>

If <letter> is lowercase the mark is local to the current file. If it is uppercase, the mark is valid across files.

'<letter> jumps to the same line as the mark (although not necessarily the same column).

Folds: Basic Actions

b f

Create fold out of visual selection

b a

Toggle fold open/closed

b d

Delete fold

b i

Toggle folding on/off

Folds: Level

b R

Open all folds

b M

Close all folds

b r

Open one more folding level

b m

Close one more folding level

Tags

Space o

Jump to tag

Space i

Jump back from tag

Scrolling

Ctrl-a

Scroll upward

Ctrl-q

Scroll downward

Space u

Scroll window to put current line at the top

Space c

Scroll window to put current line at the center

Space m

Scroll window to put current line at the bottom

Ctrl-q will not work if you're running Vem in a terminal with control flow enabled. Use Ctrl-e if that is your case.

Spelling

Space y

Previous misspelled word

Space n

Next misspelled word

Space ?

Suggest spellings for misspelled word under the cursor

Space +

Add word under cursor to user's dictionary

Space -

Remove word under cursor from user's dictionary

Quickfix/Location Window

Y

Previous quickfix result

N

Next quickfix result

Ctrl-y

Previous location window result

Ctrl-n

Next location window result

Windows and Tabpages

windows-box

Creating Windows

Ctrl-w h

New window left

Ctrl-w j

New window down

Ctrl-w k

New window up

Ctrl-w l

New window right

Creating Windows and files

Ctrl-w Ctrl-]

New file in vertical window

Ctrl-w Ctrl-_

New file in horizontal window

Jumping between Windows

Space h

Jump to window to the left

Space j

Jump to window below

Space k

Jump to window above

Space l

Jump to window to the right

Closing Windows

x

Close file (if not shown in another window) and window

Ctrl-x

Close file but keep window

Ctrl-w x

Close window but keep file

Window Shortcuts

Ctrl-w Ctrl-w

Jump to previous window

Ctrl-w Space

Close all windows but current one

Moving Windows

Ctrl-w r

Rotate window upwards

Ctrl-w R

Rotate window downwards

Ctrl-w u

Move window to top

Ctrl-w m

Move window to bottom

Ctrl-w ,

Move window to far left

Ctrl-w ;

Move window to far right

Resizing Windows

Ctrl-w +

Increase window height

Ctrl-w -

Decrease window height

Ctrl-w >

Increase window width

Ctrl-w <

Decrease window width

Tabpages

Ctrl-w Ctrl-^

New tabpage

<number>

Go to tabpage <number>

:tabclose closes current tabpage. A tabpage can be closed by closing all its windows too

You can also use Ctrl-6 instead of Ctrl-^ (which can be difficult to type in some keyboards).

Other

other-box

Suspending

Ctrl-z

Suspend process

Only in terminal and normal mode.

Vim Compatibility

b

Same as Vim z

B

Same as Vim g

[

Same as Vim [

]

Same as Vim ]