Using FakeVim Mode
In the FakeVim mode, you can run the main editor in a manner similar to the Vim editor. To run the editor in the FakeVim mode, select Edit > Advanced > Use Vim-style Editing or press Alt+V,Alt+V.
Supported Modes and Commands
In the FakeVim mode, most keystrokes in the main editor will be intercepted and interpreted in a way that resembles Vim. Most of the supported commands can be followed by a motion command or executed in visual mode, or they work with registers or can be prefixed with a number of repetitions.
The following sections describe the commands emulated in the supported modes and how they diverge from Vim in functionality:
- Normal
- Visual
- Command line (:)
- Insert and replace
For more information on using Vim, see Documentation on the Vim web site.
Normal and Visual Modes
- Basic movement, such as h/j/k/l,<C-U>,<C-D>,<C-F>,<C-B>,gg,G,0,^,$
- Word movement, such as w,e,b
- Inner/a movement, such as ciw,3daw, ya{
- fand- tmovement
- [ and \c ]movement
- { and } paragraph movement
- Delete/change/yank/paste with register
- Undo and redo
- <C-A>and- <C-X>increase or decrease a number in decimal, octal, or hexadecimal format (for example- 128<C-A>on or before- "0x0ff"changes it to- "0x17f")
- .repeats the last change
- /search,- ?search,- *,- #,- n,- N- most of regular expression syntax is used in Vim except that- \<and- \>are the same as- \bin QRegExp
- @and- q(macro recording and execution) special keys are saved as- <S-Left>
- Marks
- gvgoes to last visual selection; can differ if text is edited around it
- Indentation using =,<<,>>, with movement, count, and in visual mode
- to upper/lower, such as ~,gU,gu
- i,- a,- o,- I,- A, and- Oenter insert mode
- Scroll window, such as zt,zb,zz
- Wrap line movement, such as gj,gk,g0,g^,g$
Command Line Mode
- :map,- :unmap,- :inoremap, and so on
- :sourceprovides very basic line-by-line sourcing of vimrc files
- :substitutesubstitutes an expression in a range
- :'<,'>!cmdfilters through an external command (for example, sorts the lines in a file with- :%!sort)
- :<range>sor[t][!]
- :.!cmdinserts the standard output of an external command
- :read
- :yank,- :delete,- :change
- :move,- :join
- :20goes to an address
- :history
- :registers,- :display
- :nohlsearch
- :undo,- :redo
- :normal
- :<,- :>
Insert Mode
- <C-O>executes a single command and returns to insert mode
- <C-V>inserts a raw character
- <insert>toggles replace mode
Options
Use :set ... to set the following options:
- autoindent
- clipboard
- backspace
- expandtab
- hlsearch
- ignorecase
- incsearch
- indent
- iskeyword
- scrolloff
- shiftwidth
- showcmd
- smartcase
- smartindent
- smarttab
- startofline
- tabstop
- tildeop
- wrapscan
Vimrc Example
" highlight matched set hlsearch " case insensitive search set ignorecase set smartcase " search while typing set incsearch " wrap-around when searching set wrapscan " show pressed keys in lower right corner set showcmd " tab -> spaces set expandtab set tabstop=4 set shiftwidth=4 " keep a 5 line buffer for the cursor from top/bottom of window set scrolloff=5 " X11 clipboard set clipboard=unnamed " use ~ with movement set tildeop " mappings nnoremap ; : inoremap jj <Esc> " clear highlighted search term on space noremap <silent> <Space> :nohls<CR> " reselect visual block after indent vnoremap < <gv vnoremap > >gv " MOVE LINE/BLOCK nnoremap <C-S-J> :m+<CR>== nnoremap <C-S-K> :m-2<CR>== inoremap <C-S-J> <Esc>:m+<CR>==gi inoremap <C-S-K> <Esc>:m-2<CR>==gi vnoremap <C-S-J> :m'>+<CR>gv=gv vnoremap <C-S-K> :m-2<CR>gv=gv
Mapping FakeVim Commands
To map commands entered on the FakeVim command line to actions of the Qt Creator core, select Tools > Options > FakeVim > Ex Command Mapping.
To map user commands to keyboard shortcuts, select Tools > Options > FakeVim > User Command Mapping. The user command mapped to the shortcut is executed by FakeVim as if you were typing it (as when replaying a macro).
Specifying FakeVim Options
To make changes to the Vim-style settings, select Tools > Options > FakeVim > General.

To preselect the indentation settings specified for the text editor, select Copy Text Editor Settings. To preselect the Qt coding style, select Set Qt Style. To preselect a simple indentation style, select Set Plain Style. You can then change any of the preselected settings.
To use a Vim-style color scheme, select Tools > Options > Text Editor > Fonts & Color. In the Color Scheme list, select Vim (dark).
Quitting FakeVim Mode
To quit the FakeVim mode, unselect Tools > Options > FakeVim > Use FakeVim or press Alt+V,Alt+V.
You can temporarily escape FakeVim mode to access the normal Qt Creator keyboard shortcuts like Ctrl-R for Run by pressing , first.