如何使后退/前进历史导航不关心 VS Code 交互式窗口中的光标位置?

问题描述 投票:0回答:1

在 VS Code 中使用 Python 交互式窗口时,我发现以下行为令人恼火:

当在底部的字段中输入命令时(其中显示“在此处输入‘python’代码并按 Enter 运行),这些命令将添加到某种历史记录中。使用 Cursor-Up 和 Cursor-Down 我可以返回来回浏览我在会话中键入的命令。但是,更改方向需要按两次按键,因为第一次按键只会将光标带到行的末尾或开头。这通常发生在搜索以前键入的命令并快速搜索时按过多次光标向上键就可以超过它们,然后必须按光标向下两次才能到达该命令。这可以更改吗?

python visual-studio-code keyboard-shortcuts
1个回答
0
投票

VS Code 中交互式窗口中历史导航的默认绑定如下:

{
  "key": "up",
  "command": "interactive.history.previous",
  "when": "!suggestWidgetVisible && activeEditor == 'workbench.editor.interactive' && interactiveInputCursorAtBoundary != 'bottom' && interactiveInputCursorAtBoundary != 'none'"
},
{
  "key": "down",
  "command": "interactive.history.next",
  "when": "!suggestWidgetVisible && activeEditor == 'workbench.editor.interactive' && interactiveInputCursorAtBoundary != 'none' && interactiveInputCursorAtBoundary != 'top'"
},

注意 when 子句中使用

interactiveInputCursorAtBoundary
上下文键的部分。如果您想要不关心光标位置的绑定,只需定义这些绑定的副本,以排除 when 子句的那些部分。 IE。将以下内容放入您的用户 keybindings.json 文件中,您可以通过在
命令面板
中运行 Preferences: Open Keyboard Shortcuts (JSON) 打开该文件:

{
  "key": "up",
  "command": "interactive.history.previous",
  "when": "!suggestWidgetVisible && activeEditor == 'workbench.editor.interactive'"
},
{
  "key": "down",
  "command": "interactive.history.next",
  "when": "!suggestWidgetVisible && activeEditor == 'workbench.editor.interactive'"
},
© www.soinside.com 2019 - 2024. All rights reserved.