如何在 Sublime Text 3 中配置 5 键鼠标
How to configure 5 buttons mouse in Sublime Text 3
我有一个带有 5 个按钮的鼠标,如何配置这些按钮以在 Sublime Text 3 中执行特定任务。就像 button4
执行 Build
和 button5
执行 Build With...
对于 Sublime Text,鼠标操作由所谓的 mousemap
文件(扩展名为 .sublime-mousemap
)配置。您通常可以拥有这些文件的 2 个变体:-
Default.sublime-mousemap
:这将为任何平台定义鼠标操作。
Default ($platform).sublime-mousemap
:这将为特定平台定义鼠标操作,其中 $platform
是 Windows
、[=19] 中的任何 =] 或 OSX
取决于您的操作系统。
您可以使用命令面板中的 View Package File
并搜索 mousemap
.
查看默认的鼠标映射文件
为了定义您自己的鼠标操作(或覆盖任何现有操作),您必须在 User
目录中创建一个名为 Default.sublime-mousemap
的文件(以进入该目录, select Preferences -> Browse Packages ...
从主菜单)独立于平台的覆盖(或 Default ($platform).sublime-mousemap
依赖于平台的覆盖取决于您的 OS)。
完成后,这里是关于鼠标映射文件的一些基本知识(请注意,没有关于鼠标映射文件的官方或社区文档,因此一切都基于实验以及开发人员对此类文件的评价)。
鼠标映射文件中一些键的含义如下:-
button:定义按钮的名称。例如,button1 指的是鼠标左键,而 button2 定义的是鼠标右键。同样,你可以有 button3、button4。 button5 等。我不确定实际存在多少个这样的按钮名称。同样对于滚轮,您有 scroll_up 用于向上滚动运动和 scroll_down 用于相反的行为。
modifiers:这是一个修饰键列表,例如 ctrl、alt等。例如["alt"]
、["ctrl", "alt"]
。定义修改器列表时,应同时按下列出的所有修改器键,然后 pressing/releasing 相应的按钮触发一些操作。
command:这里定义了对应按钮按下后松开时执行的命令。如果此命令接受任何参数,您可以为其设置一个 args 键。
press_command:这定义了相应按钮被按下时要执行的命令。如果这个命令接受任何参数,你可以有一个 press_args 键。
count:你必须按下相应按钮的次数才能触发动作(按动作,我的意思是执行相应的命令/press_command)
NOTE:
You can define both command and press_command if you wanted to.
让我们看一些例子:-
文件名:- User/Default.sublime-mousemap
[
{
"button": "button2",
"modifiers": [],
"press_command": "echo",
"press_args": {
"message": "I am pressed"
},
"command": "echo",
"args": {
"message": "I am released"
},
}
]
这里,右键(button2)绑定了内置的echo命令。如果您现在右键单击,默认行为实际上是打开上下文菜单,但现在我们 覆盖 该行为,现在您可以看到相应的消息 {'message': 'I am pressed'}
或控制台中的 {'message': 'I am released'}
根据您是按下还是按下后松开。
对于您的情况,您可以使用以下内容:-
[
{
"button": "button1", // replace button1 with button4/5 because I don't have that many mouse buttons.
"modifiers": ["alt", "ctrl", "shift"],
"press_command": "undo",
}
]
现在,当您按下 button1(同时按住 alt、ctrl、 shift同时),应该执行undo命令。如果您不想要,可以将 modifiers 设置为空列表。
至于构建,如果您的意思是执行最新的构建系统,请将 undo 替换为 build.
作为临别奖励提示,如果您想禁用任何按钮操作,只需使用命令 noop。
示例:-
[
{
"button": "button1",
"modifiers": [],
"press_command": "noop",
}
]
这将禁用 button1,现在您不能再拖动 select ;-) 所以要小心。
希望这对您有所帮助。
我有一个带有 5 个按钮的鼠标,如何配置这些按钮以在 Sublime Text 3 中执行特定任务。就像 button4
执行 Build
和 button5
执行 Build With...
对于 Sublime Text,鼠标操作由所谓的 mousemap
文件(扩展名为 .sublime-mousemap
)配置。您通常可以拥有这些文件的 2 个变体:-
Default.sublime-mousemap
:这将为任何平台定义鼠标操作。Default ($platform).sublime-mousemap
:这将为特定平台定义鼠标操作,其中$platform
是Windows
、[=19] 中的任何 =] 或OSX
取决于您的操作系统。
您可以使用命令面板中的 View Package File
并搜索 mousemap
.
为了定义您自己的鼠标操作(或覆盖任何现有操作),您必须在 User
目录中创建一个名为 Default.sublime-mousemap
的文件(以进入该目录, select Preferences -> Browse Packages ...
从主菜单)独立于平台的覆盖(或 Default ($platform).sublime-mousemap
依赖于平台的覆盖取决于您的 OS)。
完成后,这里是关于鼠标映射文件的一些基本知识(请注意,没有关于鼠标映射文件的官方或社区文档,因此一切都基于实验以及开发人员对此类文件的评价)。
鼠标映射文件中一些键的含义如下:-
button:定义按钮的名称。例如,button1 指的是鼠标左键,而 button2 定义的是鼠标右键。同样,你可以有 button3、button4。 button5 等。我不确定实际存在多少个这样的按钮名称。同样对于滚轮,您有 scroll_up 用于向上滚动运动和 scroll_down 用于相反的行为。
modifiers:这是一个修饰键列表,例如 ctrl、alt等。例如
["alt"]
、["ctrl", "alt"]
。定义修改器列表时,应同时按下列出的所有修改器键,然后 pressing/releasing 相应的按钮触发一些操作。command:这里定义了对应按钮按下后松开时执行的命令。如果此命令接受任何参数,您可以为其设置一个 args 键。
press_command:这定义了相应按钮被按下时要执行的命令。如果这个命令接受任何参数,你可以有一个 press_args 键。
count:你必须按下相应按钮的次数才能触发动作(按动作,我的意思是执行相应的命令/press_command)
NOTE: You can define both command and press_command if you wanted to.
让我们看一些例子:-
文件名:- User/Default.sublime-mousemap
[
{
"button": "button2",
"modifiers": [],
"press_command": "echo",
"press_args": {
"message": "I am pressed"
},
"command": "echo",
"args": {
"message": "I am released"
},
}
]
这里,右键(button2)绑定了内置的echo命令。如果您现在右键单击,默认行为实际上是打开上下文菜单,但现在我们 覆盖 该行为,现在您可以看到相应的消息 {'message': 'I am pressed'}
或控制台中的 {'message': 'I am released'}
根据您是按下还是按下后松开。
对于您的情况,您可以使用以下内容:-
[
{
"button": "button1", // replace button1 with button4/5 because I don't have that many mouse buttons.
"modifiers": ["alt", "ctrl", "shift"],
"press_command": "undo",
}
]
现在,当您按下 button1(同时按住 alt、ctrl、 shift同时),应该执行undo命令。如果您不想要,可以将 modifiers 设置为空列表。
至于构建,如果您的意思是执行最新的构建系统,请将 undo 替换为 build.
作为临别奖励提示,如果您想禁用任何按钮操作,只需使用命令 noop。
示例:-
[
{
"button": "button1",
"modifiers": [],
"press_command": "noop",
}
]
这将禁用 button1,现在您不能再拖动 select ;-) 所以要小心。
希望这对您有所帮助。