JavaScript / Sublime Text:交换单引号和双引号键

时间:2015-04-16 08:38:32

标签: javascript sublimetext sublimetext3

我是使用Sublime Text的JavaScript程序员。我更喜欢使用双引号来引用单引号。有没有办法或插件我们可以交换单引号和双引号的按键?

请注意我知道插件(如SublimeChangeQuotes)可以在文件或文本选择上执行此操作。但这不是我想要的。

我正在寻找的是:在单键报价的按键上应该产生双引号并且在双重报价的按键上(使用shift键)应该产生单引号。所有这些在我输入我的JavaScript代码时。

JavaScript代码质量工具(如jshint,jscs等)期望字符串被双引号。这就是为什么在JavaScript编码中经常使用双引号的原因。

为什么我需要这个?很简单,只是为了避免在每次需要双引号时按下shift键。

2 个答案:

答案 0 :(得分:3)

可以在没有任何第三方工具的情况下重新映射Windows注册表中的密钥,但更简单,更安全的方法是使用AutoHotKey之类的东西。我用它来重新映射' \'上面的键进入Enter键,因为我从来没有让键盘设计师拿走大的L形Enter键!

要使用它,请安装并运行AutoHotKey。它将为您提供一个默认脚本,您可以通过添加以下行来编辑它:

'::"

"::'

这将交换两个输入。

如果您希望映射只影响单个程序,您可以将脚本放在" if"使用窗口名称或一些其他标识符阻止如下:

IfWinActive("Sublime Text")
{
    '::"

    "::'
}

如果您需要更多帮助,我的语法可能不完美,我会在记忆中运作 - here is a link to the IfWinActive docs

答案 1 :(得分:2)

1)转到"键绑定 - 用户"来自"偏好"

2)添加以下两行,基本上进行交换。

{ "keys": ["\""], "command": "insert_snippet", "args": {"contents": "'$0'"} },
{ "keys": ["'"], "command": "insert_snippet", "args": {"contents": "\"$0\""} }

这些行应放在键绑定文件中看到的数组中。