【问题标题】:In VScode, is there a way to go next line per two or three with shortcut?在 VScode 中,有没有办法通过快捷方式每两三行进入下一行?
【发布时间】:2021-08-08 07:03:20
【问题描述】:

我通常使用 ctrl + n/p 转到 VSCode 中的下一行/上一行。但有时让我觉得无聊,因为当我想随便浏览文件时,光标只走一行。那么,有没有办法让光标每几行或其他更快的方式来浏览文件(比如 go到下一个类或方法定义)?

【问题讨论】:

    标签: visual-studio-code vscode-settings


    【解决方案1】:


    V.S. 中的跳线代码




    V.S.代码键盘快捷键


          V.S.代码通过“keybindings.json”配置文件为用户提供了使用移动光标的导航类型命令自定义键盘快捷键的能力。当 "keybindings.json" 文件正确配置后,您可以使用 Keyboard Shortcuts 跳转 n-lines,跳转n-lines,向左跳n-chars,或向右跳n-chars

    • 注意: n 可以等于任何数字”。


    开始


          要在本主题涵盖的样式中导航光标,您需要配置一些自定义的 V.S.代码键绑定(又名键盘快捷键)。如果这不是您之前做过的事情,您无需担心。将快捷方式绑定到独特的按键组合实际上非常简单,而且它也可以是异想天开的。它肯定会提高你的 V.S.代码体验

    要开始创建您的“line-jumping” 键盘快捷键,请按照以下说明操作。如果您在键绑定创建过程中需要任何额外帮助,您可以使用官方 V.S.代码,社区维护,文档作为指南。我已经发布了下面的链接:

    V.S. Code: Keyboard Shortcuts



    1. – 使用 F1 键打开您的“快速输入下拉菜单”

    2. – 在“快速输入菜单”中键入“键盘快捷键”。

    3. – 选择“打开键盘快捷键(JSON)”

    注意:您可以选择两个“键盘快捷键”选项。其中一个选项将读取默认值,而一个 不会 读取默认值。确保选择 DOES NOT 读取默认值的那个。如果您不熟悉键绑定,并且之前从未创建过键绑定,那么该文件应该是完全空的。


    进入 keybindings.json 文件后,将以下“JSON”块添加到文件中

    // "keybindings.json"
    
    {
      {
        "key": "ctrl+1",
        "when": "editorTextFocus",
        "command": "cursorMove",
        "args": {
          "by": "line",
          "to": "down",
          "value": 1
        }
      },
    
      {
        "key": "ctrl+2",
        "when": "editorTextFocus",
        "command": "cursorMove",
        "args": {
          "by": "line",
          "to": "down",
          "value": 5
        }
      },
    
      {
        "key": "ctrl+3",
        "when": "editorTextFocus",
        "command": "cursorMove",
        "args": {
          "by": "line",
          "to": "down",
          "value": 10
        }
      },
    
      {
        "key": "ctrl+shift+1",
        "when": "editorTextFocus",
        "command": "cursorMove",
        "args": {
          "by": "line",
          "to": "up",
          "value": 1
        }
      },
    
      {
        "key": "ctrl+shift+2",
        "when": "editorTextFocus",
        "command": "cursorMove",
        "args": {
          "by": "line",
          "to": "up",
          "value": 5
        }
      },
    
      {
        "key": "ctrl+shift+3",
        "when": "editorTextFocus",
        "command": "cursorMove",
        "args": {
          "by": "line",
          "to": "up",
          "value": 10
        }
      },
    }
    
    
    "以上内容仅用于测试目的,因为键绑定很简单,并且会覆盖默认的 VSCode 键绑定。但是,您必须决定哪些键绑定最适合您;如果您将以上内容添加到“键绑定”中.json" 文件,您将获得以下 键盘快捷键"

    1. 跳下一行      CTRL+1

    2. 向下跳 5 行 CTRL+2

    3. 向下跳 10 行 CTRL+3

    4. 向上跳一行      CTRL+SHIFT+1

    5. 向上跳 5 行 CTRL+SHIFT+2

    6. 向上跳 10 行 CTRL+SHIFT+3



    更多帮助:


    如需进一步帮助,请访问 VSCode 命令页面以查看所有命令的列表,或详细了解cursorMove 命令@:
    ...或者要了解键绑定,请访问包含在开源社区维护的 VSCode 文档集合@的键绑定页面:


    【讨论】:

    • 谢谢!这正是我一直想要的!
    • @マスターヨーダー 太棒了,我花了一个小时来写那篇文章+键绑定,所以我很高兴它成功了。不过,有一个问题要问,您是否介意选择这个作为对您有用的解决方案,以向其他寻找此问题的人展示这是适合您的解决方案。
    【解决方案2】:

    来自扩展 Select By 可以使用moveby.calculation 命令。

    keybindings.json

    {
        "key": "ctrl+i ctrl+5",  // or any other key binding
        "when": "editorTextFocus",
        "command": "moveby.calculation",
        "args": {
          "lineNrEx": "selection.start.line + 5",
          "charNrEx": "selection.start.character"
        }
      }
    

    【讨论】:

    • 我试过了。虽然这个扩展中的一些功能有效(比如这个move to empty line),但是你建议我上面的代码没有用。似乎'selection.start.line'部分不起作用。
    • @マスターヨーダー该命令没有charNrEx属性的默认值,你想要光标在哪里
    【解决方案3】:

    据我所知,目前没有捷径可以跳过没有扩展的多行。但是,ctrl + shift + o(默认情况下)或在搜索查询前加上 @ 前缀(默认情况下为 ctrl + p)可用于浏览文件中的符号,这可能是您要查找的内容。

    【讨论】:

      猜你喜欢
      • 2014-08-03
      • 2020-09-16
      • 2020-11-30
      • 1970-01-01
      • 2022-07-15
      • 2016-01-27
      • 2018-03-05
      • 2021-01-28
      • 2023-04-02
      相关资源
      最近更新 更多