Sublime怎么修改快捷键_Sublime如何自定义键位绑定【教程】

酷浩吖_4851

酷浩吖_4851

2026-04-08

695人浏览

原创

sublime快捷键失效主因是user.sublime-keymap格式错误、command名不准确或context配置不当;须用命令面板或控制台日志获取真实command,严格遵循json语法和上下文规则。

sublime怎么修改快捷键_sublime如何自定义键位绑定【教程】

Sublime 的快捷键改不了,是因为你没写对 User.sublime-keymap 文件——不是功能缺失,是格式、命令名、上下文三处任一出错,它就静默失效。

怎么找到真实可用的 command 名

别猜、别搜旧教程、别信插件 README 里写的“推荐快捷键”。Sublime 不校验 command 字段,写错就当没这回事,按了没反应。

  • 最稳方法:按 Ctrl+Shift+P 打开命令面板,输入功能关键词(如“delete line”),看到的完整条目就是真实 command 值,比如 run_macro_file
  • 更准方法:按 Ctrl+` 打开控制台,输入 sublime.log_commands(True),然后手动点一次菜单里的目标操作(如“Edit → Line → Delete Line”),控制台会输出类似 command: run_macro_file {"file": "res://Packages/Default/Delete Line.sublime-macro"}
  • 插件命令(如格式化)必须查当前插件文档或实测:js_format 已基本被 eslint_fix、black 或 autopep8 替代,填错名等于白配

User.sublime-keymap 文件怎么写才不报错

右下角弹红条?90% 是 JSON 格式崩了。这个文件对语法极其敏感,一个中文引号、多一个逗号、少一个方括号,整条规则都失效。

Giiso写作机器人
Giiso写作机器人

一款面向中文内容生产的AI写作工具,可辅助完成新闻资讯、文章和营销等多类型文本创作,提高日常内容编辑效率。

下载
  • 文件必须是合法 JSON 数组:以 [ 开头、] 结尾,哪怕只加一条规则也要包进去
  • 每条规则是对象,至少含 "keys" 和 "command" 两个字段,例如:{ "keys": ["ctrl+alt+l"], "command": "eslint_fix" }
  • 多条规则之间用英文逗号分隔,末尾不能有逗号
  • 所有标点必须是英文半角,引号必须是英文双引号,keys 里的键名要小写、用短横线连接("ctrl+shift+k" ✅,不是 "Ctrl+Shift+K" ❌)

怎么让快捷键只在特定场景生效

想让 Tab 只在非注释行补全,或让 Ctrl+D 在无选区时复制整行、有选区时仍选词?靠 context 字段。

  • context 是个数组,里面每个对象是“且”关系,全部满足才触发
  • 常见判断项:"selection_empty"(是否无选区)、"selector"(当前语法类型,如 "source.python")、"preceding_text"(光标前文本)
  • 屏蔽注释行示例:{"key": "preceding_text", "operator": "not_regex_contains", "operand": "^\s*//|^\s*#"}
  • 想实现“或”逻辑?不行,得拆成两条独立规则,分别写不同 context

带参数的命令怎么传 args

很多命令没 args 就根本不干活,比如打开命令面板、跳转函数列表、运行宏——args 必须是字典,嵌套在命令对象里,不能平级写。

  • 错误写法:{ "keys": ["ctrl+p"], "command": "show_overlay", "overlay": "goto", "text": "@" }(overlay 平级了)
  • 正确写法:{ "keys": ["ctrl+p"], "command": "show_overlay", "args": { "overlay": "goto", "text": "@" } }
  • 原生“删除整行”不是 delete_line,而是 run_macro_file + args.file 路径,漏掉 args 就没反应
  • 鼠标快捷键(如右键菜单、双击)必须另建 Default.sublime-mousemap,不在同一个文件里管

真正容易被忽略的不是语法细节,而是 context 的边界条件——比如 "setting.is_widget" 漏判,就会在命令面板里误触;又比如 preceding_text 正则没写 ^ 锚定开头,可能匹配到中间注释。这些地方不实测,光看文档永远调不对。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

2135

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

3262

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

1096

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

3739

7

go语言goto的用法
go语言goto的用法

本专题整合了go语言goto的用法,阅读专题下面的文章了解更多详细内容。

2025.09.05

2777

5

数据库Delete用法
数据库Delete用法

数据库Delete用法:1、删除单条记录;2、删除多条记录;3、删除所有记录;4、删除特定条件的记录。更多关于数据库Delete的内容,大家可以访问下面的文章。

2023.11.13

3011

4

drop和delete的区别
drop和delete的区别

drop和delete的区别:1、功能与用途;2、操作对象;3、可逆性;4、空间释放;5、执行速度与效率;6、与其他命令的交互;7、影响的持久性;8、语法和执行;9、触发器与约束;10、事务处理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.12.29

925

3

default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.12.07

357

5

c语言编程软件有哪些
c语言编程软件有哪些

c语言编程软件有GCC、Clang、Microsoft Visual Studio、Eclipse、NetBeans、Dev-C++、Code::Blocks、KDevelop、Sublime Text和Atom。更多关于c语言编程软件的问题详情请看本专题的文章。php中文网欢迎大家前来学习。

2023.11.02

8459

18

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程