Atom 编辑器:如何只为特定文件类型定义键绑定?

Atom editor: How to define key binding only for a certain file type?

在Atom编辑器中,是否可以只为特定文件类型定义键绑定(键映射)?

例如这样键绑定仅在编辑 Markdown 文件时有效。

由于您没有提供具体示例,这里是一个虚构的示例:

'atom-text-editor[data-grammar="text md"]':
  'ctrl+shift+x': 'your-package:command'

这是一个真实示例,其中包含对 Markdown 语法文件的有用覆盖。它解决了与消耗 Ctrl+Shift+M 和阻止 Markdown 包显示其预览窗格的 Emmet 包的冲突。此键绑定仅对已识别(或手动设置)为 Markdown 语法的文件有效。

'atom-workspace atom-text-editor[data-grammar="source gfm"]':
  'ctrl-shift-M': 'markdown-preview:toggle'
'atom-workspace atom-text-editor[data-grammar="text md"]':
  'ctrl-shift-M': 'markdown-preview:toggle'

如果您不确定要为语法使用哪些 ID: 转到 Atom 的设置,单击左侧导航栏的 "Packages",搜索您选择的语言,select 它,然后查找语法/范围说明。使用与您相关的那些,用空格替换任何点符号。对于 Markdown 预览包,设置中的语法字符串如下所示。它包含我上面使用的两个相关部分,但采用点符号:

source.gfm, source.litcoffee, text.html.basic, text.md, text.plain, text.plain.null-grammar

要识别正确的键盘值,请使用快捷键 Ctrl+ 激活键绑定解析器。 (Windows) 或 Cmd+。 (Mac) 并按下您想要捕捉的组合键。