mirror of
https://github.com/chylex/IntelliJ-IdeaVim.git
synced 2025-05-05 09:34:03 +02:00
Update docs of IdeaVim
This commit is contained in:
parent
68ae03ef85
commit
1326e8470a
@ -26,40 +26,40 @@ You can start by:
|
||||
- Picking relatively simple tasks that are tagged with
|
||||
[#patch_welcome](https://youtrack.jetbrains.com/issues/VIM?q=%23patch_welcome%20%23Unresolved%20sort%20by:%20votes%20)
|
||||
in the issue tracker.
|
||||
- Read about `@VimBehaviorDiffers` annotation and fix corresponding functionality.
|
||||
- Read about the `@VimBehaviorDiffers` annotation and fix the corresponding functionality.
|
||||
|
||||
|
||||
### Development Environment
|
||||
|
||||
1. Fork IdeaVim on GitHub and clone the repository on your local machine.
|
||||
|
||||
2. Import the project from existing sources in IntelliJ IDEA 2018.1 or newer (Community or
|
||||
Ultimate) using "File | New | Project from Existing Sources..." or "Import
|
||||
Project" from the start window.
|
||||
2. Import the project from the existing sources in IntelliJ IDEA 2018.1 or newer (Community or
|
||||
Ultimate), by selecting "File | New | Project from Existing Sources..." or selecting "Import
|
||||
Project" from the Welcome screen.
|
||||
|
||||
* In the project wizard select "Import project from external model | Gradle"
|
||||
* In the project wizard, select "Import project from external model | Gradle".
|
||||
|
||||
* Select your Java 8+ JDK as the Gradle JVM, leave other parameters unchanged
|
||||
* Select your Java 8+ JDK as the Gradle JVM; leave other parameters unchanged.
|
||||
|
||||
3. Run your IdeaVim plugin within IntelliJ via a Gradle task
|
||||
3. Run your IdeaVim plugin within IntelliJ via a Gradle task:
|
||||
|
||||
* Select "View | Tool Windows | Gradle" tool window
|
||||
* Select the "View | Tool Windows | Gradle" tool window.
|
||||
|
||||
* Launch "ideavim | intellij | runIde" from the tool window
|
||||
* Launch "ideavim | intellij | runIde" from the tool window.
|
||||
|
||||
4. Run IdeaVim tests via a Gradle task
|
||||
4. Run IdeaVim tests via a Gradle task:
|
||||
|
||||
* Select "View | Tool Windows | Gradle" tool window
|
||||
* Select the "View | Tool Windows | Gradle" tool window.
|
||||
|
||||
* Launch "ideavim | verification | test" from the tool window
|
||||
* Launch "ideavim | verification | test" from the tool window.
|
||||
|
||||
5. Build the plugin distribution by running `./gradlew clean buildPlugin` in the
|
||||
terminal in your project root.
|
||||
|
||||
* The resulting distribution file is build/distributions/IdeaVim-VERSION.zip
|
||||
* The resulting distribution file will be located at build/distributions/IdeaVim-VERSION.zip
|
||||
|
||||
* You can install this file using "Settings | Plugins | Install plugin
|
||||
from disk"
|
||||
* You can install this file by selecting "Settings | Plugins | Install plugin
|
||||
from disk...".
|
||||
|
||||
### Copyright
|
||||
|
||||
@ -67,7 +67,7 @@ in the issue tracker.
|
||||
Name: Copyright scope
|
||||
Pattern: `file[IdeaVIM.main]:com//*||file[IdeaVIM.test]:*/`
|
||||
|
||||
2. Go to `Preferences | Editor | Copyright | Copyright Profiles`, press "+" button.
|
||||
2. Go to `Preferences | Editor | Copyright | Copyright Profiles` and click the "+" button.
|
||||
Name: IdeaVim
|
||||
Text:
|
||||
|
||||
@ -87,20 +87,20 @@ in the issue tracker.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
3. Go to `Preferences | Editor | Copyright`, press "+" button.
|
||||
3. Go to `Preferences | Editor | Copyright`, click the "+" button.
|
||||
Scope: Copyright scope
|
||||
Copyright: IdeaVim
|
||||
|
||||
### Testing
|
||||
|
||||
1. Read about `@VimBehaviorDiffers` annotation.
|
||||
1. Read about the `@VimBehaviorDiffers` annotation.
|
||||
|
||||
2. Please avoid senseless text like "dhjkwaldjwa", "asdasdasd",
|
||||
"123 123 123 123", etc. Try to select a text that you can simply
|
||||
read and find out what is wrong if the test fails.
|
||||
For example, take a few lines from your favorite poem, or take
|
||||
"123 123 123 123", etc. Try to choose an example text that is easy to
|
||||
read and understand what is wrong if the test fails.
|
||||
For example, take a few lines from your favorite poem, or use
|
||||
"Vladimir Nabokov – A Discovery" if you don't have one.
|
||||
|
||||
3. Test your functionality properly.
|
||||
Especially check whether your command works with:
|
||||
line start, line end, file start, file end, empty line, multiple carets, dollar motion.
|
||||
line start, line end, file start, file end, empty line, multiple carets, dollar motion, etc.
|
34
README.md
34
README.md
@ -22,7 +22,7 @@ IdeaVim
|
||||
</div>
|
||||
|
||||
|
||||
IdeaVim is a Vim emulation plugin for IDEs based on the IntelliJ platform.
|
||||
IdeaVim is a Vim emulation plugin for IDEs based on the IntelliJ Platform.
|
||||
IdeaVim can be used with IntelliJ IDEA, PyCharm, CLion, PhpStorm, WebStorm,
|
||||
RubyMine, AppCode, DataGrip, GoLand, Rider, Cursive, and Android Studio.
|
||||
|
||||
@ -48,12 +48,12 @@ shortcuts.
|
||||
|
||||
Keyboard shortcut conflicts between the Vim emulation and the IDE can be
|
||||
resolved via "File | Settings | Editor | Vim Emulation", "File | Settings |
|
||||
Keymap" on Linux & Windows, and by "Preferences | Editor | Vim Emulation",
|
||||
"Preferences | Keymap" on macOS. They can also be resolved by key mapping
|
||||
Keymap" on Linux & Windows, and via "Preferences | Editor | Vim Emulation",
|
||||
"Preferences | Keymap" on macOS. They can also be resolved by key-mapping
|
||||
commands in your ~/.ideavimrc file.
|
||||
|
||||
|
||||
Get an Early Access
|
||||
Get Early Access
|
||||
-------------------
|
||||
|
||||
Would you like to try new features and fixes? Join the Early Access Program and
|
||||
@ -64,7 +64,7 @@ Add [https://plugins.jetbrains.com/plugins/eap/ideavim](https://plugins.jetbrain
|
||||
|
||||
See [the changelog](CHANGES.md) for the list of hot unreleased features.
|
||||
|
||||
It is important to distinguish EAP from traditional pre-release software.
|
||||
It is important to distinguish EAP builds from traditional pre-release software.
|
||||
Please note that the quality of EAP versions may at times be way below even
|
||||
usual beta standards.
|
||||
|
||||
@ -104,7 +104,7 @@ Emulated Vim plugins:
|
||||
Not supported (yet):
|
||||
|
||||
* Jump lists
|
||||
* Various less used commands
|
||||
* Various less-used commands
|
||||
|
||||
See also:
|
||||
|
||||
@ -118,16 +118,16 @@ Files
|
||||
* ~/.ideavimrc
|
||||
* Your IdeaVim-specific Vim initialization commands
|
||||
|
||||
You can read your ~/.vimrc file from ~/.ideavimrc using this command:
|
||||
You can read your ~/.vimrc file from ~/.ideavimrc with this command:
|
||||
|
||||
source ~/.vimrc
|
||||
|
||||
Note, that IdeaVim currently parses ~/.ideavimrc file via simple pattern matching,
|
||||
see [VIM-669](http://youtrack.jetbrains.com/issue/VIM-669) for proper parsing
|
||||
Note, that IdeaVim currently parses ~/.ideavimrc file via simple pattern matching.
|
||||
See [VIM-669](http://youtrack.jetbrains.com/issue/VIM-669) for proper parsing
|
||||
of VimL files.
|
||||
|
||||
Also note that if you have overridden the `user.home` JVM option, this
|
||||
will affect where IdeaVim looks for your .ideavimrc file. For example, if you
|
||||
will affect where IdeaVim looks for your .ideavimrc file. For example, if you
|
||||
have `-Duser.home=/my/alternate/home` then IdeaVim will source
|
||||
`/my/alternate/home/.ideavimrc` instead of `~/.ideavimrc`.
|
||||
|
||||
@ -158,7 +158,7 @@ Changes to the IDE
|
||||
|
||||
### Undo/Redo
|
||||
|
||||
The IdeaVim plugin uses the undo/redo functionality of the IntelliJ platform,
|
||||
The IdeaVim plugin uses the undo/redo functionality of the IntelliJ Platform,
|
||||
so the behavior of the `u` and `<C-R>` commands may differ from the original
|
||||
Vim. Vim compatibility of undo/redo may be improved in future releases.
|
||||
|
||||
@ -166,11 +166,11 @@ See also [unresolved undo issues](http://youtrack.jetbrains.com/issues/VIM?q=%23
|
||||
|
||||
### Escape
|
||||
|
||||
Using `<Esc>` in dialog windows remains problematic. For most dialog windows
|
||||
the Vim emulator is put into the insert mode with `<Esc>` not working. You
|
||||
should use `<C-c>` or `<C-[>` instead. In some dialog windows the normal mode is
|
||||
on by default. The usage of the Vim emulator in dialog windows is an area for
|
||||
improvements.
|
||||
Using `<Esc>` in dialog windows remains problematic. For most dialog windows,
|
||||
the Vim emulator is put into insert mode with `<Esc>` not working. You
|
||||
should use `<C-c>` or `<C-[>` instead. In some dialog windows, the normal mode is
|
||||
switched by default. The usage of the Vim emulator in dialog windows is an area for
|
||||
improvement.
|
||||
|
||||
See also [unresolved escape issues](http://youtrack.jetbrains.com/issues/VIM?q=%23Unresolved+Help+topic%3A+i_Esc).
|
||||
|
||||
@ -204,4 +204,4 @@ for a list of authors and contributors.
|
||||
License
|
||||
-------
|
||||
|
||||
IdeaVim is licensed under the terms of the GNU Public license version 2.
|
||||
IdeaVim is licensed under the terms of the GNU Public License version 2.
|
||||
|
@ -1,7 +1,7 @@
|
||||
List of Supported Set Commands
|
||||
==============================
|
||||
|
||||
The following `:set` commands can appear in `~/.ideavimrc` or set manually in the command mode:
|
||||
The following `:set` commands can appear in `~/.ideavimrc` or be set manually in the command mode:
|
||||
|
||||
'clipboard' 'cb' clipboard options
|
||||
Standard clipboard options plus
|
||||
@ -10,9 +10,9 @@ The following `:set` commands can appear in `~/.ideavimrc` or set manually in th
|
||||
enable native idea paste action for put operations
|
||||
|
||||
'digraph' 'dg' enable the entering of digraphs in Insert mode
|
||||
'gdefault' 'gd' the ":substitute" flag 'g' is default on
|
||||
'gdefault' 'gd' the ":substitute" flag 'g' is by default
|
||||
'history' 'hi' number of command-lines that are remembered
|
||||
'hlsearch' 'hls' highlight matches with last search pattern
|
||||
'hlsearch' 'hls' highlight matches with the last search pattern
|
||||
|
||||
`ideamarks` `ideamarks` Boolean (default true) - IdeaVim ONLY [To Be Released]
|
||||
|
||||
@ -49,44 +49,44 @@ The following `:set` commands can appear in `~/.ideavimrc` or set manually in th
|
||||
|
||||
`lookupactions` `lookupactions` String (default "VimLookupUp,VimLookupDown") - IdeaVim Only [To Be Released]
|
||||
|
||||
By default all actions are handled by IDE if lookup is active.
|
||||
This list of comma separated words enable defined vim actions for active lookup.
|
||||
By default all actions are handled by the IDE if lookup is active.
|
||||
This list of comma-separated words enables defined vim actions for active lookup.
|
||||
|
||||
'relativenumber' 'rnu' show the line number relative to the line with
|
||||
the cursor
|
||||
'scroll' 'scr' lines to scroll with CTRL-U and CTRL-D
|
||||
'scrolljump' 'sj' minimum number of lines to scroll
|
||||
'scrolloff' 'so' minimum nr. of lines above and below cursor
|
||||
'scrolloff' 'so' minimum number of lines above and below the cursor
|
||||
'selection' 'sel' what type of selection to use
|
||||
|
||||
`selectmode` `slm` String (default "template") [To Be Released]
|
||||
|
||||
This is a comma separated list of words, which specifies when to start
|
||||
This is a comma-separated list of words, which specify when to start
|
||||
Select mode instead of Visual mode, when a selection is started.
|
||||
Possible values:
|
||||
mouse when using the mouse
|
||||
key when using shifted special[1] keys
|
||||
cmd when using "v", "V" or <C-V>
|
||||
template when template starting - IdeaVim ONLY
|
||||
cmd when using "v", "V", or <C-V>
|
||||
template when starting atemplate - IdeaVim ONLY
|
||||
refactoring when refactoring without - IdeaVim ONLY
|
||||
template performed
|
||||
a template is performed
|
||||
|
||||
'showmode' 'smd' message on status line to show current mode
|
||||
'showmode' 'smd' message on the status line to show current mode
|
||||
|
||||
`ideajoin` `ideajoin` Boolean (default false) - IdeaVim ONLY [To Be Released]
|
||||
|
||||
If true, join command will be performed via IDE
|
||||
See ideajoin-examples.md
|
||||
|
||||
'sidescroll' 'ss' minimum number of columns to scroll horizontal
|
||||
'sidescrolloff' 'siso' min. nr. of columns to left and right of cursor
|
||||
'smartcase' 'scs' no ignore case when pattern has uppercase
|
||||
'sidescroll' 'ss' minimum number of columns to scroll horizontally
|
||||
'sidescrolloff' 'siso' min. number of columns to left and right of cursor
|
||||
'smartcase' 'scs' no ignore case when pattern is uppercase
|
||||
'timeout' 'to' use timeout for mapped key sequences
|
||||
'timeoutlen' 'tm' time that is waited for a mapped key sequence
|
||||
'timeoutlen' 'tm' timeout duration for a mapped key sequence
|
||||
'undolevels' 'ul' maximum number of changes that can be undone
|
||||
'viminfo' 'vi' information to remember after restart
|
||||
'visualbell' 'vb' use visual bell instead of beeping
|
||||
'wrapscan' 'ws' searches wrap around the end of the file
|
||||
'wrapscan' 'ws' searches wrap around the end of file
|
||||
|
||||
----------
|
||||
[1] - cursor keys, <End>, <Home>, <PageUp> and <PageDown>
|
Loading…
Reference in New Issue
Block a user