The author of the original plugin announced the deprecation of the plugin. However, we've got an approval to move the sources into IdeaVim and continue the development. Original repo: https://github.com/Mishkun/ideavim-sneak Approval: https://twitter.com/ideavim/status/1754512214344478939
12 KiB
IdeaVim Plugins
IdeaVim plugins work like the original Vim plugins. If you want to turn any of them on, you have to enable it via this command in your ~/.ideavimrc
:
Plug '<plugin-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 plugins:
easymotion
Original plugin: vim-easymotion.
Setup:
- Install IdeaVim-EasyMotion and AceJump plugins.
- Add the following command to
~/.ideavimrc
:Plug 'easymotion/vim-easymotion'
Alternative syntax
Plugin 'easymotion/vim-easymotion'
Plug 'https://github.com/easymotion/vim-easymotion'
Plug 'vim-easymotion'
set easymotion
Instructions
All commands with the mappings are supported. See the full list of supported commands.
sneak
By Mikhail Levchenko
Original repository with the plugin: https://github.com/Mishkun/ideavim-sneak
Original plugin: vim-sneak.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'justinmk/vim-sneak'
Instructions
- Type
s
and two chars to start sneaking in forward direction - Type
S
and two chars to start sneaking in backward direction - Type
;
or,
to proceed with sneaking just as if you were usingf
ort
commands
NERDTree
Original plugin: NERDTree.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'preservim/nerdtree'
Alternative syntax
Plugin 'preservim/nerdtree'
Plug 'https://github.com/preservim/nerdtree'
Plug 'nerdtree'
set NERDTree
Instructions
surround
Original plugin: vim-surround.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'tpope/vim-surround'
Alternative syntax
Plugin 'tpope/vim-surround'
Plug 'https://www.vim.org/scripts/script.php?script_id=1697'
Plug 'vim-surround'
set surround
Instructions
https://github.com/tpope/vim-surround/blob/master/doc/surround.txt
multiple-cursors
Original plugin: vim-multiple-cursors.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'terryma/vim-multiple-cursors'
Alternative syntax
Plugin 'terryma/vim-multiple-cursors'
Plug 'https://github.com/terryma/vim-multiple-cursors'
Plug 'vim-multiple-cursors'
set multiple-cursors
Instructions
https://github.com/terryma/vim-multiple-cursors/blob/master/doc/multiple_cursors.txt
commentary
By Daniel Leong
Original plugin: commentary.vim.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'tpope/vim-commentary'
Alternative syntax
Plugin 'tpope/vim-commentary'
Plug 'https://github.com/tpope/vim-commentary'
Plug 'vim-commentary'
Plug 'tcomment_vim'
set commentary
Instructions
https://github.com/tpope/vim-commentary/blob/master/doc/commentary.txt
ReplaceWithRegister
By igrekster
Original plugin: ReplaceWithRegister.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'vim-scripts/ReplaceWithRegister'
Alternative syntax
Plugin '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
Instructions
https://github.com/vim-scripts/ReplaceWithRegister/blob/master/doc/ReplaceWithRegister.txt
argtextobj
Original plugin: argtextobj.vim.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'vim-scripts/argtextobj.vim'
Alternative syntax
Plugin 'vim-scripts/argtextobj.vim'
Plug 'https://github.com/vim-scripts/argtextobj.vim'
Plug 'argtextobj.vim'
Plug 'https://www.vim.org/scripts/script.php?script_id=2699'
set argtextobj
Instructions
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's matchpairs
option), like
let 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.
exchange
By fan-tom
Original plugin: vim-exchange.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'tommcdo/vim-exchange'
Alternative syntax
Plugin 'tommcdo/vim-exchange'
Plug 'https://github.com/tommcdo/vim-exchange'
Plug 'vim-exchange'
set exchange
Instructions
https://github.com/tommcdo/vim-exchange/blob/master/doc/exchange.txt
textobj-entire
By Alexandre Grison
Original plugin: vim-textobj-entire.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'kana/vim-textobj-entire'
Alternative syntax
Plugin 'kana/vim-textobj-entire'
Plug 'vim-textobj-entire'
Plug 'https://www.vim.org/scripts/script.php?script_id=2610'
set textobj-entire
Instructions
https://github.com/kana/vim-textobj-entire/blob/master/doc/textobj-entire.txt
highlightedyank
By KostkaBrukowa
Original plugin: vim-highlightedyank.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'machakann/vim-highlightedyank'
Alternative syntax
Plugin 'machakann/vim-highlightedyank'
Plug 'https://github.com/machakann/vim-highlightedyank'
Plug 'vim-highlightedyank'
set highlightedyank
Instructions
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.
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)"
https://github.com/machakann/vim-highlightedyank/blob/master/doc/highlightedyank.txt
vim-paragraph-motion
Original plugin: vim-paragraph-motion.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'dbakker/vim-paragraph-motion'
Alternative syntax
Plugin 'dbakker/vim-paragraph-motion'
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
Instructions
https://github.com/dbakker/vim-paragraph-motion#vim-paragraph-motion
vim-indent-object
By Shrikant Sharat Kandula
Original plugin: vim-indent-object.
Setup:
- Add the following command to
~/.ideavimrc
:Plug 'michaeljsmith/vim-indent-object'
Alternative syntax
Plugin 'michaeljsmith/vim-indent-object'
Plug 'https://github.com/michaeljsmith/vim-indent-object'
Plug 'vim-indent-object'
set textobj-indent
Instructions
https://github.com/michaeljsmith/vim-indent-object/blob/master/doc/indent-object.txt
matchit.vim
By Martin Yzeiri Original plugin: matchit.vim.
Setup:
- Add the following command to
~/.ideavimrc
:packadd matchit
Alternative syntax
Plug 'vim-matchit'
Plug 'chrisbra/matchit'
set matchit
Instructions
https://github.com/adelarsq/vim-matchit/blob/master/doc/matchit.txt
IdeaVim-Quickscope
Original plugin: quick-scope.
Setup:
- Install IdeaVim-Quickscope plugin.
- Add the following command to
~/.ideavimrc
:set quickscope
Instructions
https://plugins.jetbrains.com/plugin/19417-ideavim-quickscope
Which-Key
Original plugin: vim-which-key.
Setup:
- Install Which-Key plugin.
- Add the following command to
~/.ideavimrc
:set which-key
Instructions
https://github.com/TheBlob42/idea-which-key?tab=readme-ov-file#installation