diff --git a/src/main/java/com/maddyhome/idea/vim/action/editor/VimEditorActions.kt b/src/main/java/com/maddyhome/idea/vim/action/editor/VimEditorActions.kt index d824c7059..0dad7f590 100644 --- a/src/main/java/com/maddyhome/idea/vim/action/editor/VimEditorActions.kt +++ b/src/main/java/com/maddyhome/idea/vim/action/editor/VimEditorActions.kt @@ -11,7 +11,6 @@ package com.maddyhome.idea.vim.action.editor import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode import com.intellij.openapi.actionSystem.IdeActions -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.VimEditor import com.maddyhome.idea.vim.api.injector @@ -21,54 +20,33 @@ import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.IdeActionHandler import com.maddyhome.idea.vim.handler.VimActionHandler import com.maddyhome.idea.vim.helper.enumSetOf -import java.awt.event.KeyEvent import java.util.* -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<C-H>", "<BS>"], modes = [Mode.INSERT]) -internal class VimEditorBackSpace : IdeActionHandler(IdeActions.ACTION_EDITOR_BACKSPACE), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_H, KeyEvent.CTRL_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_BACK_SPACE, 0)), - ) +internal class VimEditorBackSpace : IdeActionHandler(IdeActions.ACTION_EDITOR_BACKSPACE) { override val type: Command.Type = Command.Type.DELETE } @CommandOrMotion(keys = ["<Del>"], modes = [Mode.INSERT]) -internal class VimEditorDelete : IdeActionHandler(IdeActions.ACTION_EDITOR_DELETE), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0)), - ) +internal class VimEditorDelete : IdeActionHandler(IdeActions.ACTION_EDITOR_DELETE) { override val type: Command.Type = Command.Type.DELETE override val flags: EnumSet<CommandFlags> = enumSetOf(CommandFlags.FLAG_SAVE_STROKE) } @CommandOrMotion(keys = ["<Down>", "<kDown>"], modes = [Mode.INSERT]) -internal class VimEditorDown : IdeActionHandler(IdeActions.ACTION_EDITOR_MOVE_CARET_DOWN), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, 0)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_DOWN, 0)), - ) +internal class VimEditorDown : IdeActionHandler(IdeActions.ACTION_EDITOR_MOVE_CARET_DOWN) { override val type: Command.Type = Command.Type.MOTION override val flags: EnumSet<CommandFlags> = enumSetOf(CommandFlags.FLAG_CLEAR_STROKES) } @CommandOrMotion(keys = ["<Tab>", "<C-I>"], modes = [Mode.INSERT]) -internal class VimEditorTab : IdeActionHandler(IdeActions.ACTION_EDITOR_TAB), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_I, KeyEvent.CTRL_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, 0)), - ) +internal class VimEditorTab : IdeActionHandler(IdeActions.ACTION_EDITOR_TAB) { override val type: Command.Type = Command.Type.INSERT override val flags: EnumSet<CommandFlags> = enumSetOf(CommandFlags.FLAG_SAVE_STROKE) } @CommandOrMotion(keys = ["<Up>", "<kUp>"], modes = [Mode.INSERT]) -internal class VimEditorUp : IdeActionHandler(IdeActions.ACTION_EDITOR_MOVE_CARET_UP), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_UP, 0)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_UP, 0)), - ) +internal class VimEditorUp : IdeActionHandler(IdeActions.ACTION_EDITOR_MOVE_CARET_UP) { override val type: Command.Type = Command.Type.MOTION override val flags: EnumSet<CommandFlags> = enumSetOf(CommandFlags.FLAG_CLEAR_STROKES) } diff --git a/src/main/java/com/maddyhome/idea/vim/action/ex/ProcessExEntryAction.kt b/src/main/java/com/maddyhome/idea/vim/action/ex/ProcessExEntryAction.kt index 6f4dab3d1..db94c7dc7 100644 --- a/src/main/java/com/maddyhome/idea/vim/action/ex/ProcessExEntryAction.kt +++ b/src/main/java/com/maddyhome/idea/vim/action/ex/ProcessExEntryAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.ex import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode import com.maddyhome.idea.vim.VimPlugin -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.VimEditor import com.maddyhome.idea.vim.command.Command @@ -18,7 +17,6 @@ import com.maddyhome.idea.vim.command.CommandFlags import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.VimActionHandler import java.util.* -import javax.swing.KeyStroke /** * Called by KeyHandler to process the contents of the ex entry panel @@ -26,10 +24,7 @@ import javax.swing.KeyStroke * The mapping for this action means that the ex command is executed as a write action */ @CommandOrMotion(keys = ["<CR>", "<C-M>", "<C-J>"], modes = [Mode.CMD_LINE]) -public class ProcessExEntryAction : VimActionHandler.SingleExecution(), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = - parseKeysSet("<CR>", "<C-M>", 0x0a.toChar().toString(), 0x0d.toChar().toString()) - +public class ProcessExEntryAction : VimActionHandler.SingleExecution() { override val type: Command.Type = Command.Type.OTHER_SELF_SYNCHRONIZED override val flags: EnumSet<CommandFlags> = EnumSet.of(CommandFlags.FLAG_COMPLETE_EX) diff --git a/src/main/java/com/maddyhome/idea/vim/group/KeyGroup.java b/src/main/java/com/maddyhome/idea/vim/group/KeyGroup.java index 6ac292c34..c983ca964 100644 --- a/src/main/java/com/maddyhome/idea/vim/group/KeyGroup.java +++ b/src/main/java/com/maddyhome/idea/vim/group/KeyGroup.java @@ -24,7 +24,6 @@ import com.intellij.openapi.keymap.KeymapManager; import com.intellij.openapi.keymap.ex.KeymapManagerEx; import com.maddyhome.idea.vim.EventFacade; import com.maddyhome.idea.vim.VimPlugin; -import com.maddyhome.idea.vim.action.ComplicatedKeysAction; import com.maddyhome.idea.vim.action.VimShortcutKeyAction; import com.maddyhome.idea.vim.action.change.LazyVimCommand; import com.maddyhome.idea.vim.api.*; diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ComplicatedKeysAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ComplicatedKeysAction.kt deleted file mode 100644 index 897d3fe81..000000000 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/ComplicatedKeysAction.kt +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright 2003-2023 The IdeaVim authors - * - * Use of this source code is governed by an MIT-style - * license that can be found in the LICENSE.txt file or at - * https://opensource.org/licenses/MIT. - */ - -package com.maddyhome.idea.vim.action - -import org.jetbrains.annotations.ApiStatus -import javax.swing.KeyStroke - -@Deprecated("Vim's key notation should be enough for all of the keys") -@ApiStatus.ScheduledForRemoval(inVersion = "2.7.0") -public interface ComplicatedKeysAction { - public val keyStrokesSet: Set<List<KeyStroke>> -} diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/UndoAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/UndoAction.kt index 2f4b49fa7..1169e477b 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/UndoAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/UndoAction.kt @@ -9,23 +9,15 @@ package com.maddyhome.idea.vim.action.change import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.VimEditor import com.maddyhome.idea.vim.api.injector import com.maddyhome.idea.vim.command.Command import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.VimActionHandler -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["u", "<Undo>"], modes = [Mode.NORMAL]) -public class UndoAction : VimActionHandler.SingleExecution(), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - injector.parser.parseKeys("u"), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_UNDO, 0)), - ) - +public class UndoAction : VimActionHandler.SingleExecution() { override val type: Command.Type = Command.Type.OTHER_SELF_SYNCHRONIZED override fun execute( diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertPreviousInsertAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertPreviousInsertAction.kt index 9c411e5f0..07738588f 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertPreviousInsertAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/change/insert/InsertPreviousInsertAction.kt @@ -9,7 +9,6 @@ package com.maddyhome.idea.vim.action.change.insert import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.VimEditor import com.maddyhome.idea.vim.api.injector @@ -17,8 +16,6 @@ import com.maddyhome.idea.vim.command.Argument import com.maddyhome.idea.vim.command.Command import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.ChangeEditorActionHandler -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<C-A>"], modes = [Mode.INSERT]) public class InsertPreviousInsertAction : ChangeEditorActionHandler.SingleExecution() { @@ -35,15 +32,8 @@ public class InsertPreviousInsertAction : ChangeEditorActionHandler.SingleExecut } } -// TODO is C-S-2 needed? -@CommandOrMotion(keys = ["<C-@>", "<C-S-2>"], modes = [Mode.INSERT]) -public class InsertPreviousInsertExitAction : ChangeEditorActionHandler.SingleExecution(), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_2, KeyEvent.CTRL_DOWN_MASK or KeyEvent.SHIFT_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_2, KeyEvent.CTRL_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_AT, KeyEvent.CTRL_DOWN_MASK)), - ) - +@CommandOrMotion(keys = ["<C-@>", "<C-S-2>", "<C-2>"], modes = [Mode.INSERT]) +public class InsertPreviousInsertExitAction : ChangeEditorActionHandler.SingleExecution() { override val type: Command.Type = Command.Type.INSERT override fun execute( diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FilePreviousAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FilePreviousAction.kt index 6a4cbf920..41d60ccd4 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FilePreviousAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/file/FilePreviousAction.kt @@ -8,24 +8,15 @@ package com.maddyhome.idea.vim.action.file import com.intellij.vim.annotations.CommandOrMotion -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.VimEditor import com.maddyhome.idea.vim.api.injector import com.maddyhome.idea.vim.command.Command import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.VimActionHandler -import java.awt.event.KeyEvent -import javax.swing.KeyStroke - -@CommandOrMotion(keys = ["<C-^>"], modes = [com.intellij.vim.annotations.Mode.NORMAL]) -public class FilePreviousAction : VimActionHandler.SingleExecution(), ComplicatedKeysAction { - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_6, KeyEvent.CTRL_DOWN_MASK or KeyEvent.SHIFT_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_CIRCUMFLEX, KeyEvent.CTRL_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_6, KeyEvent.CTRL_DOWN_MASK)), - ) +@CommandOrMotion(keys = ["<C-^>", "<C-S-6>", "<C-6>"], modes = [com.intellij.vim.annotations.Mode.NORMAL]) +public class FilePreviousAction : VimActionHandler.SingleExecution() { override val type: Command.Type = Command.Type.OTHER_READONLY override fun execute( diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowLeftAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowLeftAction.kt index fec02db50..62bff27b6 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowLeftAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowLeftAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.leftright import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -21,16 +20,11 @@ import com.maddyhome.idea.vim.command.MotionType import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.NonShiftedSpecialKeyHandler -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<Left>", "<kLeft>"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) -public class MotionArrowLeftAction : NonShiftedSpecialKeyHandler(), ComplicatedKeysAction { +public class MotionArrowLeftAction : NonShiftedSpecialKeyHandler() { override val motionType: MotionType = MotionType.EXCLUSIVE - override val keyStrokesSet: Set<List<KeyStroke>> = - setOf(injector.parser.parseKeys("<Left>"), listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_LEFT, 0))) - override fun motion( editor: VimEditor, caret: ImmutableVimCaret, diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowRightAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowRightAction.kt index fdd5204c4..4df494026 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowRightAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionArrowRightAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.leftright import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -23,18 +22,11 @@ import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.NonShiftedSpecialKeyHandler import com.maddyhome.idea.vim.helper.isEndAllowed import com.maddyhome.idea.vim.helper.usesVirtualSpace -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<Right>", "<kRight>"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) -public class MotionArrowRightAction : NonShiftedSpecialKeyHandler(), ComplicatedKeysAction { +public class MotionArrowRightAction : NonShiftedSpecialKeyHandler() { override val motionType: MotionType = MotionType.EXCLUSIVE - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - injector.parser.parseKeys("<Right>"), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_RIGHT, 0)), - ) - override fun motion( editor: VimEditor, caret: ImmutableVimCaret, diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLeftAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLeftAction.kt index 853a50f49..3617eec85 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLeftAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionLeftAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.leftright import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -21,8 +20,6 @@ import com.maddyhome.idea.vim.command.MotionType import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.MotionActionHandler -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["h"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) public class MotionLeftAction : MotionActionHandler.ForEachCaret() { @@ -42,14 +39,9 @@ public class MotionLeftAction : MotionActionHandler.ForEachCaret() { } @CommandOrMotion(keys = ["<Left>", "<kLeft>"], modes = [Mode.INSERT]) -public class MotionLeftInsertModeAction : MotionActionHandler.ForEachCaret(), ComplicatedKeysAction { +public class MotionLeftInsertModeAction : MotionActionHandler.ForEachCaret() { override val motionType: MotionType = MotionType.EXCLUSIVE - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, 0)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_LEFT, 0)), - ) - override fun getOffset( editor: VimEditor, caret: ImmutableVimCaret, diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionRightAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionRightAction.kt index 59337bd32..1c143e5e9 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionRightAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/MotionRightAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.leftright import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -23,8 +22,6 @@ import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.MotionActionHandler import com.maddyhome.idea.vim.helper.isEndAllowed import com.maddyhome.idea.vim.helper.usesVirtualSpace -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["l"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) public class MotionRightAction : MotionActionHandler.ForEachCaret() { @@ -45,14 +42,9 @@ public class MotionRightAction : MotionActionHandler.ForEachCaret() { } @CommandOrMotion(keys = ["<Right>", "<kRight>"], modes = [Mode.INSERT]) -public class MotionRightInsertAction : MotionActionHandler.ForEachCaret(), ComplicatedKeysAction { +public class MotionRightInsertAction : MotionActionHandler.ForEachCaret() { override val motionType: MotionType = MotionType.EXCLUSIVE - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, 0)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_RIGHT, 0)), - ) - override fun getOffset( editor: VimEditor, caret: ImmutableVimCaret, diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageDownAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageDownAction.kt index 6f50819c3..013a2feb0 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageDownAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageDownAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.scroll import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.VimEditor import com.maddyhome.idea.vim.api.injector @@ -21,9 +20,7 @@ import com.maddyhome.idea.vim.command.CommandFlags.FLAG_IGNORE_SCROLL_JUMP import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.VimActionHandler import com.maddyhome.idea.vim.helper.enumSetOf -import java.awt.event.KeyEvent import java.util.* -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<C-F>", "<PageDown>"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) public class MotionScrollPageDownAction : VimActionHandler.SingleExecution() { @@ -38,11 +35,7 @@ public class MotionScrollPageDownAction : VimActionHandler.SingleExecution() { } @CommandOrMotion(keys = ["<PageDown>"], modes = [Mode.INSERT]) -public class MotionScrollPageDownInsertModeAction : VimActionHandler.SingleExecution(), ComplicatedKeysAction { - - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_DOWN, 0)), - ) +public class MotionScrollPageDownInsertModeAction : VimActionHandler.SingleExecution() { override val type: Command.Type = Command.Type.OTHER_READONLY diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageUpAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageUpAction.kt index d71d77a2a..21089cbdc 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageUpAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/scroll/MotionScrollPageUpAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.scroll import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.VimEditor import com.maddyhome.idea.vim.api.injector @@ -21,9 +20,7 @@ import com.maddyhome.idea.vim.command.CommandFlags.FLAG_IGNORE_SCROLL_JUMP import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.VimActionHandler import com.maddyhome.idea.vim.helper.enumSetOf -import java.awt.event.KeyEvent import java.util.* -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<C-B>", "<PageUp>"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) public class MotionScrollPageUpAction : VimActionHandler.SingleExecution() { @@ -38,12 +35,7 @@ public class MotionScrollPageUpAction : VimActionHandler.SingleExecution() { } @CommandOrMotion(keys = ["<PageUp>"], modes = [Mode.INSERT]) -public class MotionScrollPageUpInsertModeAction : VimActionHandler.SingleExecution(), ComplicatedKeysAction { - - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_UP, 0)), - ) - +public class MotionScrollPageUpInsertModeAction : VimActionHandler.SingleExecution() { override val type: Command.Type = Command.Type.OTHER_READONLY override val flags: EnumSet<CommandFlags> = enumSetOf(FLAG_IGNORE_SCROLL_JUMP, FLAG_CLEAR_STROKES) diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordLeftAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordLeftAction.kt index f0e03d44d..74656d023 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordLeftAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordLeftAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.text import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -22,9 +21,7 @@ import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.MotionActionHandler import com.maddyhome.idea.vim.helper.enumSetOf -import java.awt.event.KeyEvent import java.util.* -import javax.swing.KeyStroke @CommandOrMotion(keys = ["b"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) public class MotionWordLeftAction : MotionActionHandler.ForEachCaret() { @@ -43,14 +40,9 @@ public class MotionWordLeftAction : MotionActionHandler.ForEachCaret() { } @CommandOrMotion(keys = ["<C-Left>", "<C-kLeft>"], modes = [Mode.INSERT]) -public class MotionWordLeftInsertAction : MotionActionHandler.ForEachCaret(), ComplicatedKeysAction { +public class MotionWordLeftInsertAction : MotionActionHandler.ForEachCaret() { override val motionType: MotionType = MotionType.EXCLUSIVE - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, KeyEvent.CTRL_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_LEFT, KeyEvent.CTRL_DOWN_MASK)), - ) - override val flags: EnumSet<CommandFlags> = enumSetOf(CommandFlags.FLAG_SAVE_STROKE) override fun getOffset( diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordRightAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordRightAction.kt index d1bbe6204..f26f57b26 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordRightAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/text/MotionWordRightAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.text import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -22,13 +21,10 @@ import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.MotionActionHandler import com.maddyhome.idea.vim.helper.enumSetOf -import java.awt.event.KeyEvent import java.util.* -import javax.swing.KeyStroke @CommandOrMotion(keys = ["w"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.OP_PENDING]) public class MotionWordRightAction : MotionActionHandler.ForEachCaret() { - override val motionType: MotionType = MotionType.EXCLUSIVE override fun getOffset( @@ -43,14 +39,8 @@ public class MotionWordRightAction : MotionActionHandler.ForEachCaret() { } @CommandOrMotion(keys = ["<C-Right>", "<C-kRight>"], modes = [Mode.INSERT]) -public class MotionWordRightInsertAction : MotionActionHandler.ForEachCaret(), ComplicatedKeysAction { +public class MotionWordRightInsertAction : MotionActionHandler.ForEachCaret() { override val motionType: MotionType = MotionType.EXCLUSIVE - - override val keyStrokesSet: Set<List<KeyStroke>> = setOf( - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, KeyEvent.CTRL_DOWN_MASK)), - listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_RIGHT, KeyEvent.CTRL_DOWN_MASK)), - ) - override val flags: EnumSet<CommandFlags> = enumSetOf(CommandFlags.FLAG_SAVE_STROKE) override fun getOffset( diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowDownAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowDownAction.kt index 69966fdb9..df74656bf 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowDownAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowDownAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.updown import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -20,17 +19,12 @@ import com.maddyhome.idea.vim.command.MotionType import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.NonShiftedSpecialKeyHandler -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<Down>", "<kDown>"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.SELECT, Mode.OP_PENDING]) -public class MotionArrowDownAction : NonShiftedSpecialKeyHandler(), ComplicatedKeysAction { +public class MotionArrowDownAction : NonShiftedSpecialKeyHandler() { override val motionType: MotionType = MotionType.LINE_WISE override val keepFold: Boolean = true - override val keyStrokesSet: Set<List<KeyStroke>> = - setOf(injector.parser.parseKeys("<Down>"), listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_DOWN, 0))) - override fun motion( editor: VimEditor, caret: ImmutableVimCaret, diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowUpAction.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowUpAction.kt index c0d6051e0..9aea0af05 100644 --- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowUpAction.kt +++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/updown/MotionArrowUpAction.kt @@ -10,7 +10,6 @@ package com.maddyhome.idea.vim.action.motion.updown import com.intellij.vim.annotations.CommandOrMotion import com.intellij.vim.annotations.Mode -import com.maddyhome.idea.vim.action.ComplicatedKeysAction import com.maddyhome.idea.vim.api.ExecutionContext import com.maddyhome.idea.vim.api.ImmutableVimCaret import com.maddyhome.idea.vim.api.VimEditor @@ -20,17 +19,12 @@ import com.maddyhome.idea.vim.command.MotionType import com.maddyhome.idea.vim.command.OperatorArguments import com.maddyhome.idea.vim.handler.Motion import com.maddyhome.idea.vim.handler.NonShiftedSpecialKeyHandler -import java.awt.event.KeyEvent -import javax.swing.KeyStroke @CommandOrMotion(keys = ["<Up>", "<kUp>"], modes = [Mode.NORMAL, Mode.VISUAL, Mode.SELECT, Mode.OP_PENDING]) -public class MotionArrowUpAction : NonShiftedSpecialKeyHandler(), ComplicatedKeysAction { +public class MotionArrowUpAction : NonShiftedSpecialKeyHandler() { override val motionType: MotionType = MotionType.LINE_WISE override val keepFold: Boolean = true - override val keyStrokesSet: Set<List<KeyStroke>> = - setOf(injector.parser.parseKeys("<Up>"), listOf(KeyStroke.getKeyStroke(KeyEvent.VK_KP_UP, 0))) - override fun motion( editor: VimEditor, caret: ImmutableVimCaret,