【问题标题】:Can I emulate arrow key in sublimetext3?我可以在 sublime text 3 中模拟箭头键吗?
【发布时间】:2014-03-14 17:43:09
【问题描述】:

简而言之: 每当我在 sublime text 3 中按 [command-v] 时,我都想输入 [左箭头]、[右箭头]、[command-v] 序列。

长度:我在使用 IME 和粘贴崇高文本 (OSX) 时遇到问题。如果你不会使用亚洲语言,你可能听不懂我在说什么,但让我试试吧。

我是韩国人。我的语言有“각”和“가”之类的字母。你注意到区别了吗?前一个字母的底部有额外的“ㄱ”。

要输入这些字母,请按 'ㄱ' -> 'ㅏ' -> 'ㄱ' 输入前面,然后按 'ㄱ' -> 'ㅏ' 输入后面。再次,你注意到不同了吗?

要完成字母'각',你应该先写字母'가',然后输入额外的'ㄱ'。但是,这次你想要 '가',所以输入 'ㄱ' -> 'ㅏ' 并完成了字母 '가',但是 sublime(或 OSX IME)不知道你是否完成了,或应等待附加的ㄱ完成字母'각'。所以它等待下一个类型来决定开始新的字母,或者完成类似'각'的东西。我的问题从这里开始。

你完成了这封信并想要粘贴一些东西,所以按 [command-v],但 sublime 正在等待附加组件并且没有完成这封信。它只是删除字母“가”。为了解决这个问题,我输入了类似 [space] 或 [arrow key] 的内容,以确保 sublime 完成了这封信。这很烦人。

所以,我想自动化烦人的药水。每当我在 sublime text 3 中按 [command-v] 时,我可以输入 [左箭头]、[右箭头]、[command-v] 序列吗?我认为 [space]、[backspace]、[command-v] 或任何组合都可以。

任何帮助都将受到高度赞赏

【问题讨论】:

  • 如果您想知道,在粘贴内容方面,Windows IME 比 OSX 更好。每当您按下 [Ctrl-v] 时,Windows 都会完成这封信,因此这个问题永远不会发生。但是,Windows 中的 sublime 有一个更大、更丑陋的问题,无法解决:(

标签: sublimetext3 ime


【解决方案1】:

我认为解决您的困境的方法可能是创建一个宏。为此,请查看Tools -> Record Macro,您还会注意到它是由Ctrl + Q 触发的。激活它后,执行您希望调用的组合键。在这种情况下,序列:

  • Left Arrow
  • Right Arrow
  • Ctrl + V

现在回到Tools -> Stop Recording Macro。现在,它还不会被显式保存 - 您的宏现在已放置在缓冲区中,您可以使用 Tools -> Playback Macro 播放它。要保存它以供继续使用,请使用Tools -> Save Macro... 并将其保存在某个位置(最常见的是.../Packages/User,尽管您绝不需要将其保存在此处)。

作为参考,你的宏应该看起来像这样:

[
    {
        "args":
        {
            "by": "characters",
            "forward": false
        },
        "command": "move"
    },
    {
        "args":
        {
            "by": "characters",
            "forward": true
        },
        "command": "move"
    },
    {
        "args": null,
        "command": "paste"
    }
]

该文本是完全按照我的步骤生成的,并记录了适合您情况的宏。

为了使用这个宏,我们需要做更多的修改。

查看Preferences -> Key Bindings - User。这将打开一个相当废弃的文本文件(假设您还没有触及它),您可以在其中指定自己的键盘映射。这些将覆盖默认设置(位于Preferences -> Key Bindings - Default,如果您想查看这些设置)。

所以在这个“用户”键绑定文件中,我们需要指定普通的Ctrl + V 将被我们的自定义宏覆盖。一个空的“用户”键绑定文件将如下所示:

[

]

没有太多可以推断的。这里所需的语法相当清晰,但在没有先验知识的情况下很难猜测。在这些括号之间添加此条目,如下所示:

[
    {
        "keys": ["ctrl+v"], "command": "run_macro_file", "args": {"file": "path/to/your/<macro_name>.sublime-macro"}
    }
]

保存该文件,您应该一切顺利。你可能需要重启 Sublime 才能生效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-02
    • 1970-01-01
    • 2013-03-07
    • 1970-01-01
    • 2021-11-30
    相关资源
    最近更新 更多