VS Code:在 VS Code 中换行时,如何按显示行移动光标?

VS Code:在 VS Code 中换行时,如何按显示行移动光标?

使用模拟运行 VS Code VSCodeVim。配置中启用了换行和相对编号:

"editor.wordWrap": "on",
"editor.lineNumbers":"relative"

当换行时,编辑器中显示的行不会编号。是否可以配置 VS Code 以允许直接导航到显示行?

答案1

VSCodeVim 可以像 Vim 一样通过显示行进行导航,使用gkgj。你可以像这样重新映射jk

"vim.normalModeKeyBindingsNonRecursive": [
    {
        "before": ["j"],
        "after": ["g", "j"]
    },
    {
        "before": ["k"],
        "after": ["g", "k"]
    }
]

答案2

如果你启用了自动换行功能,并希望在使用 、 或 时光标进入每一行换行jkVS Code 的 keybindings.json 设置文件中进行以下设置(例如安德鲁的回答还有其他选择但速度很慢):

{
  "key": "up",
  "command": "cursorUp",
  "when": "editorTextFocus && vim.active && !inDebugRepl && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
},
{
  "key": "down",
  "command": "cursorDown",
  "when": "editorTextFocus && vim.active && !inDebugRepl && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
},
{
  "key": "k",
  "command": "cursorUp",
  "when": "editorTextFocus && vim.active && !inDebugRepl && vim.mode == 'Normal' && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
},
{
  "key": "j",
  "command": "cursorDown",
  "when": "editorTextFocus && vim.active && !inDebugRepl && vim.mode == 'Normal' && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
}

参考:VSCodeVim 自述文件(后我的文档 PR

相关内容