mirror of
https://github.com/chylex/IntelliJ-IdeaVim.git
synced 2024-11-14 16:42:46 +01:00
8.9 KiB
8.9 KiB
Emulated Vim Plugins
IdeaVim extensions emulate plugins of the original Vim. In order to use
IdeaVim extensions, you have to enable them via this command in your ~/.ideavimrc
:
Plug '<extension-github-reference>'
If you reuse your existing .vimrc
file using source ~/.vimrc
, IdeaVim can parse and enable plugins that are defined
using vim-plug or vundle.
No additional set commands in ~/.ideavimrc
are required.
If you'd like to disable some plugin that's enabled in .vimrc
, you can use set no<extension-name>
in ~/.ideavimrc
. E.g. set nosurround
.
Available extensions:
easymotion
- Setup:
- Install IdeaVim-EasyMotion and AceJump plugins.
Plug 'easymotion/vim-easymotion'
-
Alternative syntax
Plug 'https://github.com/easymotion/vim-easymotion'
Plug 'vim-easymotion'
set easymotion
- Emulates vim-easymotion
- Commands: All commands with the mappings are supported. See the full list of supported commands.
NERDTree
- Setup:
Plug 'preservim/nerdtree'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/preservim/nerdtree'
Plug 'nerdtree'
set NERDTree
-
- Emulates NERDTree
- Commands: see here
surround
- Setup:
Plug 'tpope/vim-surround'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/tpope/vim-surround'
Plug 'vim-surround'
Plug 'https://www.vim.org/scripts/script.php?script_id=1697'
set surround
-
- Emulates vim-surround
- Commands:
ys
,cs
,ds
,S
multiple-cursors
- Setup:
Plug 'terryma/vim-multiple-cursors'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/terryma/vim-multiple-cursors'
Plug 'vim-multiple-cursors'
set multiple-cursors
-
- Emulates vim-multiple-cursors
- Commands:
<A-n>
,<A-x>
,<A-p>
,g<A-n>
commentary
- Setup:
Plug 'tpope/vim-commentary'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/tpope/vim-commentary'
Plug 'vim-commentary'
Plug 'https://www.vim.org/scripts/script.php?script_id=3695'
Plug 'tomtom/tcomment_vim'
Plug 'tcomment_vim'
Plug 'https://www.vim.org/scripts/script.php?script_id=1173'
set commentary
-
- Emulates commentary.vim
- Commands:
gcc
,gc + motion
,v_gc
- By Daniel Leong
ReplaceWithRegister
- Setup:
Plug 'vim-scripts/ReplaceWithRegister'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/vim-scripts/ReplaceWithRegister'
Plug 'ReplaceWithRegister'
Plug 'https://github.com/inkarkat/vim-ReplaceWithRegister'
Plug 'inkarkat/vim-ReplaceWithRegister'
Plug 'vim-ReplaceWithRegister'
Plug 'https://www.vim.org/scripts/script.php?script_id=2703'
set ReplaceWithRegister
-
- Emulates ReplaceWithRegister
- Commands:
gr
,grr
- By igrekster
argtextobj
- Setup:
Plug 'vim-scripts/argtextobj.vim'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/vim-scripts/argtextobj.vim'
Plug 'argtextobj.vim'
Plug 'https://www.vim.org/scripts/script.php?script_id=2699'
set argtextobj
- By default, only the arguments inside parenthesis are considered. To extend the functionality
to other types of brackets, set
g:argtextobj_pairs
variable to a comma-separated list of colon-separated pairs (same as VIM'smatchpairs
option), likelet g:argtextobj_pairs="(:),{:},<:>"
. The order of pairs matters when handling symbols that can also be operators:func(x << 5, 20) >> 17
. To handle this syntax parenthesis, must come before angle brackets in the list.
- Emulates argtextobj.vim
- Additional text objects:
aa
,ia
exchange
- Setup:
Plug 'tommcdo/vim-exchange'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/tommcdo/vim-exchange'
Plug 'vim-exchange'
set exchange
-
- Emulates vim-exchange
- Commands:
cx
,cxx
,X
,cxc
- By fan-tom
textobj-entire
- Setup:
Plug 'kana/vim-textobj-entire'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/kana/vim-textobj-entire'
Plug 'vim-textobj-entire'
Plug 'https://www.vim.org/scripts/script.php?script_id=2610'
set textobj-entire
-
- Emulates vim-textobj-entire
- Additional text objects:
ae
,ie
- By Alexandre Grison
highlightedyank
- Setup:
Plug 'machakann/vim-highlightedyank'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/machakann/vim-highlightedyank'
Plug 'vim-highlightedyank'
set highlightedyank
- if you want to optimize highlight duration, assign a time in milliseconds:
let g:highlightedyank_highlight_duration = "1000"
A negative number makes the highlight persistent.
let g:highlightedyank_highlight_duration = "-1"
- if you want to change background color of highlight you can provide the rgba of the color you want e.g.
let g:highlightedyank_highlight_color = "rgba(160, 160, 160, 155)"
- Emulates vim-highlightedyank
- By KostkaBrukowa
vim-paragraph-motion
- Setup:
Plug 'dbakker/vim-paragraph-motion'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/dbakker/vim-paragraph-motion'
Plug 'vim-paragraph-motion'
Plug 'https://github.com/vim-scripts/Improved-paragraph-motion'
Plug 'vim-scripts/Improved-paragraph-motion'
Plug 'Improved-paragraph-motion'
set vim-paragraph-motion
-
- Emulates vim-paragraph-motion
vim-indent-object
- Setup:
Plug 'michaeljsmith/vim-indent-object'
-
Alternative vim-plug / vundle syntax
Plug 'https://github.com/michaeljsmith/vim-indent-object'
Plug 'vim-indent-object'
set textobj-indent
-
- Emulates vim-indent-object
- Additional text objects:
ai
,ii
,aI
- By Shrikant Sharat Kandula
matchit.vim
- Setup:
packadd matchit
-
Alternative vim-plug / vundle syntax
Plug 'vim-matchit'
Plug 'chrisbra/matchit'
set matchit
-
- Emulates matchit.vim
- Currently works for HTML/XML and ruby
- By Martin Yzeiri