mirror of
https://github.com/chylex/IntelliJ-IdeaVim.git
synced 2025-08-17 16:31:45 +02:00
Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f3b4726b34 | ||
![]() |
30d7c6edf1 | ||
![]() |
f33f73d2f5 | ||
![]() |
b595dfd443 | ||
![]() |
a3e15b5c76 | ||
![]() |
31d85c0221 | ||
![]() |
124bd55e18 | ||
![]() |
bb9b5b5bde |
13
CHANGES.md
13
CHANGES.md
@@ -16,6 +16,19 @@ It is important to distinguish EAP from traditional pre-release software.
|
||||
Please note that the quality of EAP versions may at times be way below even
|
||||
usual beta standards.
|
||||
|
||||
To Be Released
|
||||
--------------
|
||||
|
||||
0.47, 2016-10-19
|
||||
----------------
|
||||
|
||||
A bugfix release.
|
||||
|
||||
Bug fixes:
|
||||
|
||||
* VIM-1098 Don't start visual selection when mouse click was actually drag over single character
|
||||
* VIM-1190 Fixed exception "Write access is allowed from write-safe contexts only"
|
||||
|
||||
|
||||
0.46, 2016-07-07
|
||||
----------------
|
||||
|
19
build.gradle
19
build.gradle
@@ -1,7 +1,19 @@
|
||||
plugins {
|
||||
id "org.jetbrains.intellij" version "0.0.39"
|
||||
buildscript {
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven {
|
||||
url "https://oss.sonatype.org/content/repositories/snapshots/"
|
||||
}
|
||||
maven {
|
||||
url 'http://dl.bintray.com/jetbrains/intellij-plugin-service'
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath "org.jetbrains.intellij.plugins:gradle-intellij-plugin:0.2.0-SNAPSHOT"
|
||||
}
|
||||
}
|
||||
|
||||
apply plugin: 'org.jetbrains.intellij'
|
||||
apply plugin: 'java'
|
||||
|
||||
sourceCompatibility = javaVersion
|
||||
@@ -26,8 +38,7 @@ intellij {
|
||||
downloadSources Boolean.valueOf(downloadIdeaSources)
|
||||
|
||||
publish {
|
||||
pluginId '164'
|
||||
channel publishChannel
|
||||
channels publishChannels
|
||||
username publishUsername
|
||||
password publishPassword
|
||||
}
|
||||
|
@@ -1,7 +1,7 @@
|
||||
ideaVersion IC-15.0.2
|
||||
ideaVersion IC-15.0.5
|
||||
downloadIdeaSources true
|
||||
version SNAPSHOT
|
||||
javaVersion 1.6
|
||||
publishUsername username
|
||||
publishPassword password
|
||||
publishChannel eap
|
||||
publishChannels eap
|
||||
|
@@ -2,6 +2,10 @@
|
||||
<name>IdeaVim</name>
|
||||
<id>IdeaVIM</id>
|
||||
<change-notes><![CDATA[
|
||||
<p>0.47:</p>
|
||||
<ul>
|
||||
<li>Various bug fixes</li>
|
||||
</ul>
|
||||
<p>0.46:</p>
|
||||
<ul>
|
||||
<li>Support for <code>incsearch</code> option for showing search results while typing</li>
|
||||
@@ -32,28 +36,6 @@
|
||||
<li>Support comments in <code>%</code> brace matching</li>
|
||||
<li>Various bug fixes</li>
|
||||
</ul>
|
||||
<p>0.39:</p>
|
||||
<ul>
|
||||
<li>Various bug fixes</li>
|
||||
</ul>
|
||||
<p>0.38:</p>
|
||||
<ul>
|
||||
<li>Support for <code>:action</code> and <code>:actionlist</code> for executing arbitrary IDE actions</li>
|
||||
<li>Support for <code>number</code> and <code>relativenumber</code> options</li>
|
||||
<li>Support for <code>clipboard=unnamed</code> option</li>
|
||||
<li>Various bug fixes</li>
|
||||
</ul>
|
||||
<p>0.37:</p>
|
||||
<ul>
|
||||
<li>Various bug fixes</li>
|
||||
</ul>
|
||||
<p>0.36:</p>
|
||||
<ul>
|
||||
<li>Window commands from the <code><C-W></code> family</li>
|
||||
<li>Support for <code>:split</code>/<code>:vsplit</code> commands</li>
|
||||
<li>Fixed visual block selection mode</li>
|
||||
<li>Various bug fixes</li>
|
||||
</ul>
|
||||
<p>See also the complete <a href="https://github.com/JetBrains/ideavim/blob/master/CHANGES.md">changelog</a>.</p>
|
||||
]]></change-notes>
|
||||
<description><![CDATA[
|
||||
|
@@ -21,6 +21,7 @@ package com.maddyhome.idea.vim;
|
||||
import com.intellij.codeInsight.lookup.Lookup;
|
||||
import com.intellij.codeInsight.lookup.LookupManager;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedActionHandler;
|
||||
@@ -50,7 +51,7 @@ public class VimTypedActionHandler implements TypedActionHandler {
|
||||
public void execute(@NotNull final Editor editor, final char charTyped, @NotNull final DataContext context) {
|
||||
if (isEnabled(editor)) {
|
||||
// Run key handler outside of the key typed command for creating our own undoable commands
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
|
@@ -24,6 +24,7 @@ import com.intellij.notification.Notification;
|
||||
import com.intellij.notification.NotificationListener;
|
||||
import com.intellij.notification.NotificationType;
|
||||
import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.keymap.KeymapUtil;
|
||||
@@ -99,7 +100,7 @@ public class VimShortcutKeyAction extends AnAction implements DumbAware {
|
||||
}
|
||||
// Should we use InjectedLanguageUtil.getTopLevelEditor(editor) here, as we did in former EditorKeyHandler?
|
||||
// Run key handler later to restore input events sequence due to VimTypedActionHandler
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
|
@@ -19,6 +19,7 @@
|
||||
package com.maddyhome.idea.vim.ex.handler;
|
||||
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.maddyhome.idea.vim.KeyHandler;
|
||||
import com.maddyhome.idea.vim.VimPlugin;
|
||||
@@ -29,8 +30,6 @@ import com.maddyhome.idea.vim.ex.ExException;
|
||||
import com.maddyhome.idea.vim.helper.EditorDataContext;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
public class EditFileHandler extends CommandHandler {
|
||||
public EditFileHandler() {
|
||||
super(new CommandName[]{
|
||||
@@ -56,7 +55,7 @@ public class EditFileHandler extends CommandHandler {
|
||||
}
|
||||
|
||||
// Don't open a choose file dialog under a write action
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
KeyHandler.executeAction("OpenFile", new EditorDataContext(editor));
|
||||
|
@@ -19,6 +19,7 @@
|
||||
package com.maddyhome.idea.vim.ex.handler;
|
||||
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.maddyhome.idea.vim.KeyHandler;
|
||||
import com.maddyhome.idea.vim.VimPlugin;
|
||||
@@ -27,8 +28,6 @@ import com.maddyhome.idea.vim.ex.ExCommand;
|
||||
import com.maddyhome.idea.vim.ex.ExException;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@@ -48,7 +47,7 @@ public class FindClassHandler extends CommandHandler {
|
||||
return res;
|
||||
}
|
||||
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
KeyHandler.executeAction("GotoClass", context);
|
||||
}
|
||||
|
@@ -19,6 +19,7 @@
|
||||
package com.maddyhome.idea.vim.ex.handler;
|
||||
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.maddyhome.idea.vim.KeyHandler;
|
||||
import com.maddyhome.idea.vim.VimPlugin;
|
||||
@@ -27,8 +28,6 @@ import com.maddyhome.idea.vim.ex.ExCommand;
|
||||
import com.maddyhome.idea.vim.ex.ExException;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@@ -48,7 +47,7 @@ public class FindFileHandler extends CommandHandler {
|
||||
return res;
|
||||
}
|
||||
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
KeyHandler.executeAction("GotoFile", context);
|
||||
}
|
||||
|
@@ -19,6 +19,7 @@
|
||||
package com.maddyhome.idea.vim.ex.handler;
|
||||
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.maddyhome.idea.vim.KeyHandler;
|
||||
import com.maddyhome.idea.vim.ex.CommandHandler;
|
||||
@@ -26,8 +27,6 @@ import com.maddyhome.idea.vim.ex.ExCommand;
|
||||
import com.maddyhome.idea.vim.ex.ExException;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@@ -38,7 +37,7 @@ public class FindSymbolHandler extends CommandHandler {
|
||||
|
||||
public boolean execute(@NotNull Editor editor, @NotNull final DataContext context, @NotNull ExCommand cmd) throws ExException {
|
||||
// TODO: Check the command argument and jump to a specific symbol
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
KeyHandler.executeAction("GotoSymbol", context);
|
||||
}
|
||||
|
@@ -19,6 +19,7 @@
|
||||
package com.maddyhome.idea.vim.group;
|
||||
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.command.CommandProcessor;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
@@ -127,7 +128,7 @@ public class MacroGroup {
|
||||
}
|
||||
};
|
||||
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
CommandProcessor.getInstance().executeCommand(project, run, "Vim Macro Playback", keys.get(pos));
|
||||
}
|
||||
@@ -137,7 +138,7 @@ public class MacroGroup {
|
||||
public void postKey(@NotNull KeyStroke stroke, @NotNull Editor editor) {
|
||||
final Component component = SwingUtilities.getAncestorOfClass(Window.class, editor.getComponent());
|
||||
final KeyEvent event = createKeyEvent(stroke, component);
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("posting " + event);
|
||||
|
@@ -149,14 +149,11 @@ public class MotionGroup {
|
||||
ExOutputModel.getInstance(editor).clear();
|
||||
|
||||
CommandState.SubMode visualMode = CommandState.SubMode.NONE;
|
||||
switch (event.getClickCount() % 3) {
|
||||
case 1: // Single click or quad click
|
||||
visualMode = CommandState.SubMode.NONE;
|
||||
break;
|
||||
case 2: // Double click
|
||||
switch (event.getClickCount()) {
|
||||
case 2:
|
||||
visualMode = CommandState.SubMode.VISUAL_CHARACTER;
|
||||
break;
|
||||
case 0: // Triple click
|
||||
case 3:
|
||||
visualMode = CommandState.SubMode.VISUAL_LINE;
|
||||
// Pop state of being in Visual Char mode
|
||||
if (CommandState.getInstance(editor).getMode() == CommandState.Mode.VISUAL) {
|
||||
@@ -247,6 +244,7 @@ public class MotionGroup {
|
||||
|
||||
int start = editor.getSelectionModel().getSelectionStart();
|
||||
int end = editor.getSelectionModel().getSelectionEnd();
|
||||
if (start == end) return;
|
||||
|
||||
if (mode == CommandState.SubMode.VISUAL_LINE) {
|
||||
end--;
|
||||
|
@@ -18,6 +18,7 @@
|
||||
|
||||
package com.maddyhome.idea.vim.ui;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.ui.components.JBScrollPane;
|
||||
@@ -262,7 +263,7 @@ public class ExOutputPanel extends JPanel {
|
||||
}
|
||||
|
||||
private void close(@Nullable final KeyEvent e) {
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
ApplicationManager.getApplication().invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
deactivate(true);
|
||||
|
||||
|
Reference in New Issue
Block a user