このページでは

FakeVimモードとコマンド

FakeVim モードでは、メインエディタでのキー入力のほとんどは Vim に似た方法でインターセプトされ、解釈されます。サポートされているコマンドのほとんどは、モーションコマンドの後に続けたり、ビジュアルモードで実行したり、レジスタと連動させたり、繰り返し回数を先頭につけたりすることができます。

以下のセクションでは、サポートされているモードでエミュレートされるコマンドと、それらがどのように Vim と機能が異なるかを説明します:

  • ノーマル
  • ビジュアル
  • コマンドライン (:)
  • 挿入と置換

Vim の使い方の詳細については、Vim ウェブサイトのDocumentationを参照してください。

通常モードとビジュアルモード

  • h/j/k/l,<C-U>,<C-D>,<C-F>,<C-B>,gg,G,0,^ のような基本的な動き、$
  • w,e のような単語の動き、b
  • ciw3daw 、ya{などのインナー/aの動き。
  • f およびt の動き
  • [ and \c ] 移動
  • {段落移動
  • レジスタによる削除・変更・ヤンク・貼り付け
  • 元に戻す、やり直し
  • <C-A> および<C-X> 10進数、8進数、または16進数形式で数値を増減(例えば128<C-A> の上、または"0x0ff" の前は"0x17f" に変更)。
  • . 最後の変更を繰り返す
  • /search ?search, , , , - と が QRegExp の と同じであることを除いて、正規表現の構文のほとんどは Vim で使用されます。* # n N \< \> \b
  • @q (マクロの記録と実行) の特殊キーが<S-Left>
  • マーク
  • gv 最後に視覚的に選択された箇所に移動する。
  • =,<<,>> を使ったインデント。
  • を上/下へ~,gUgu
  • i a, , , , 挿入モードに入る。o I A O
  • zt,zb のようなスクロールウィンドウ、zz
  • gj,gk,g0,g^ のような折り返し線の移動、g$

コマンドラインモード

  • :map :unmap, など。:inoremap
  • :source ソース vimrc ファイルを一行ずつ
  • :substitute 範囲内の式を置換する
  • :'<,'>!cmd 外部コマンドをフィルタリングする(例えば、:%!sort でファイル内の行をソートする)。
  • :<range>sor[t][!]
  • :.!cmd 外部コマンドの標準出力を挿入
  • :read
  • :yank :delete:change
  • :move,:join
  • :20 アドレスに移動する。
  • :history
  • :registers,:display
  • :nohlsearch
  • :undo,:redo
  • :normal
  • :<,:>
  • set formatoptions=Vim ドキュメントの:h fo-table を参照してください。現在サポートされている文字fo-j

挿入モード

  • <C-O> 1つのコマンドを実行し、挿入モードに戻ります。
  • <C-V> 生の文字を挿入します
  • <insert> 置換モードを切り替えます。

オプション

:set ... を使用して、次の表に示すオプションを設定します:

長い名前短い名前引数
autoindentai
backspacebsindent eolstart
blinkingcursorbc
clipboardcb
expandtabet
hlsearchhls
ignorecaseic
incsearchis
iskeywordisk以下の文字の組み合わせ:@ 48-57,_,192-255,a-zA-Z
relativenumberrnu
scrolloffso
shiftwidthsw
showcmdsc
smartcasescs
smartindentsi
smarttabsta
startoflinesol
tabstopts
tildeoptop
usecoresearchucs
wrapscanws

Vimrc の例

" 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

Edit like in VimおよびFakeVimも参照してください

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.