mirror of
https://github.com/chylex/IntelliJ-IdeaVim.git
synced 2026-06-15 01:16:32 +02:00
Compare commits
26 Commits
customized
...
898f37796e
| Author | SHA1 | Date | |
|---|---|---|---|
|
898f37796e
|
|||
|
69abc60e9a
|
|||
|
6aca28e8b2
|
|||
|
5fe6f44515
|
|||
|
8ef7a16a80
|
|||
|
aec753ba5d
|
|||
|
c261b7e74d
|
|||
|
01027e2f7c
|
|||
|
0fec45bce7
|
|||
|
43e962515e
|
|||
|
10e43fe8f9
|
|||
|
13e5af970b
|
|||
|
92954b913d
|
|||
|
9da511dfe8
|
|||
|
fbe9d1c6ef
|
|||
|
aee84e2700
|
|||
|
ad9d493fc7
|
|||
|
484b135e83
|
|||
|
0d284d443d
|
|||
|
22aeb5b963
|
|||
|
83f883e874
|
|||
|
791ea56407
|
|||
|
0a09c1e1c3
|
|||
|
8a793d6cac
|
|||
|
00d3315a4e
|
|||
|
c2826e4a11
|
@@ -303,6 +303,11 @@ tasks {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
buildPlugin {
|
||||||
|
dependsOn(sourcesJar)
|
||||||
|
from(sourcesJar) { into("lib/src") }
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
java {
|
java {
|
||||||
@@ -375,7 +380,13 @@ intellijPlatform {
|
|||||||
)
|
)
|
||||||
|
|
||||||
ideaVersion {
|
ideaVersion {
|
||||||
sinceBuild.set("253")
|
// Let the Gradle plugin set the since-build version. It defaults to the version of the IDE we're building against
|
||||||
|
// specified as two components, `{branch}.{build}` (e.g., "241.15989"). There is no third component specified.
|
||||||
|
// The until-build version defaults to `{branch}.*`, but we want to support _all_ future versions, so we set it
|
||||||
|
// with a null provider (the provider is important).
|
||||||
|
// By letting the Gradle plugin handle this, the Plugin DevKit IntelliJ plugin cannot help us with the "Usage of
|
||||||
|
// IntelliJ API not available in older IDEs" inspection. However, since our since-build is the version we compile
|
||||||
|
// against, we can never get an API that's newer - it would be an unresolved symbol.
|
||||||
untilBuild.set(provider { null })
|
untilBuild.set(provider { null })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ ideaVersion=2026.1
|
|||||||
# Values for type: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#intellij-extension-type
|
# Values for type: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#intellij-extension-type
|
||||||
ideaType=IU
|
ideaType=IU
|
||||||
instrumentPluginCode=true
|
instrumentPluginCode=true
|
||||||
version=chylex-54
|
version=chylex-53
|
||||||
javaVersion=21
|
javaVersion=21
|
||||||
remoteRobotVersion=0.11.23
|
remoteRobotVersion=0.11.23
|
||||||
antlrVersion=4.10.1
|
antlrVersion=4.10.1
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ import com.maddyhome.idea.vim.group.NotificationService
|
|||||||
import com.maddyhome.idea.vim.group.visual.IdeaSelectionControl
|
import com.maddyhome.idea.vim.group.visual.IdeaSelectionControl
|
||||||
import com.maddyhome.idea.vim.helper.exitSelectMode
|
import com.maddyhome.idea.vim.helper.exitSelectMode
|
||||||
import com.maddyhome.idea.vim.helper.exitVisualMode
|
import com.maddyhome.idea.vim.helper.exitVisualMode
|
||||||
|
import com.maddyhome.idea.vim.helper.hasVisualSelection
|
||||||
import com.maddyhome.idea.vim.helper.isIdeaVimDisabledHere
|
import com.maddyhome.idea.vim.helper.isIdeaVimDisabledHere
|
||||||
import com.maddyhome.idea.vim.newapi.globalIjOptions
|
import com.maddyhome.idea.vim.newapi.globalIjOptions
|
||||||
import com.maddyhome.idea.vim.newapi.initInjector
|
import com.maddyhome.idea.vim.newapi.initInjector
|
||||||
@@ -332,6 +333,23 @@ internal object IdeaSpecifics {
|
|||||||
vimEditor.exitMode()
|
vimEditor.exitMode()
|
||||||
vimEditor.mode = Mode.NORMAL()
|
vimEditor.mode = Mode.NORMAL()
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
// IdeaSelectionControl will not be called if we're moving to a new variable with no change in selection.
|
||||||
|
// And if we're moving to the end of the template, the change in selection will reset us to Normal because
|
||||||
|
// IdeaSelectionControl will be called when the template is no longer active.
|
||||||
|
if ((!editor.selectionModel.hasSelection() && !vimEditor.mode.hasVisualSelection) || newIndex == -1) {
|
||||||
|
if (vimEditor.isIdeaRefactorModeSelect) {
|
||||||
|
if (vimEditor.mode !is Mode.INSERT) {
|
||||||
|
vimEditor.exitMode()
|
||||||
|
injector.application.runReadAction {
|
||||||
|
val context = injector.executionContextManager.getEditorExecutionContext(editor.vim)
|
||||||
|
VimPlugin.getChange().insertBeforeCaret(editor.vim, context)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
vimEditor.mode = Mode.NORMAL()
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,5 +20,5 @@ import com.maddyhome.idea.vim.vimscript.model.functions.BuiltinFunctionHandler
|
|||||||
@VimscriptFunction(name = "pumvisible")
|
@VimscriptFunction(name = "pumvisible")
|
||||||
internal class PopupMenuVisibleFunctionHandler : BuiltinFunctionHandler<VimInt>() {
|
internal class PopupMenuVisibleFunctionHandler : BuiltinFunctionHandler<VimInt>() {
|
||||||
override fun doFunction(arguments: Arguments, editor: VimEditor, context: ExecutionContext, vimContext: VimLContext) =
|
override fun doFunction(arguments: Arguments, editor: VimEditor, context: ExecutionContext, vimContext: VimLContext) =
|
||||||
(CompletionService.getCompletionService().currentCompletion != null).asVimInt()
|
(CompletionService.getCompletionService().currentCompletion == null).asVimInt()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user