【问题标题】:Sublime: How can I jump n lines with the keyboard arrows?Sublime:如何用键盘箭头跳 n 行?
【发布时间】:2018-03-04 07:50:01
【问题描述】:

当我不得不用箭头逐行遍历文本文件时,我感到非常乏味,但我觉得 PageDown/PageUp 让我失去了原来的位置。

有没有一种方法可以让我使用简单的快捷方式(如 ctrl+箭头向下/向上)简单地跳转 n 行?我认为 5 行非常适合我。

【问题讨论】:

  • 刚刚解决了这个问题。我在随机组合热键时发现 ctrl+alt+arrowLeft/Right 解决了这个问题。
  • 错误...没有解决。那不是我的计划

标签: text editor sublimetext3 text-editor


【解决方案1】:

内置的移动命令允许您以多种方式移动,但一次只能移动一次(例如,上一行、左一字、下一页等)。

正如 Ben 在他的回答中提到的,解决此问题的一种方法是创建宏来进行您想要的动作,绑定键以运行宏,然后您就可以开始了。

另一种选择是使用一个简单的插件,例如以下(最初来自this forum post),您可以通过从菜单中选择Tools > Developer > New Plugin...,用此代码替换存根代码,然后保存为默认值来使用它位置类似于move_amount.py:

import sublime
import sublime_plugin

class MoveAmountCommand(sublime_plugin.TextCommand):
    def run(self, edit, amount=1, **kwargs):
        for _ in range(amount):
            self.view.run_command("move", args=kwargs)

这将创建一个名为 move_amount 的命令,该命令包装了内部 move 命令,并提供了一个额外的参数 amount 来指示执行移动操作的次数。如果您要制作一些这样的绑定,这会很方便,因为它减少了您必须制作的宏的数量并且更容易自定义它们。

有了它,您可以使用以下键绑定,根据需要修改数量:

{
    "keys": ["ctrl+up"], "command": "move_amount",
    "args": {"by": "lines", "amount": 5, "forward": false}
},
{
    "keys": ["ctrl+down"], "command": "move_amount",
    "args": {"by": "lines", "amount": 5, "forward": true}
},

请注意,这些键已绑定到 scroll_lines 命令,该命令会滚动视口但不保留插入符号,因此如果您也使用该功能,您可能需要选择不同的绑定。

【讨论】:

  • 不错,更干净。今天在全新安装时使用了它。
【解决方案2】:

据我所知,没有真正的键盘快捷键可以让您将移动线命令与移动量结合起来。

相反,您可以录制和保存两个不同的宏。一个向上移动 5 行,另一个向下移动 5 行 - (开始录制宏,然后按向上或向下箭头 x 次。停止录制,然后保存。)。

然后您可以创建一个绑定以从您的首选项文件中调用它们:

[
    { "keys": ["shift+alt+up"], "command": "run_macro_file", "args": {"file": "res://Packages/User/up-five-lines.sublime-macro"} },
    { "keys": ["shift+alt+down"], "command": "run_macro_file", "args": {"file": "res://Packages/User/down-five-lines.sublime-macro"} }

]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-02
    • 2011-12-20
    • 1970-01-01
    • 1970-01-01
    • 2016-10-14
    • 2012-04-07
    • 2017-11-13
    • 1970-01-01
    相关资源
    最近更新 更多