我很难在Atom编辑器中添加自定义命令。试图在这里搜索,但我认为它适用于以前的版本,但不适用于最新版本(1.34)。由于文档中没有样本。请帮我解决这个问题:
基本上,我想用1键触发“ core:select-all”和“ join-plus:join-csv-单引号”。因此,为了实现这一目标,我看到可以使用调度命令。
我发现的其他一些文章:
How do I write a custom command in Atom?
How to run a command when atom starts
https://blog.atom.io/2018/10/09/automate-repetitive-tasks-with-composed-commands.html
我尝试根据自己的发现实施事情,但是没有一个起作用。我做对了吗?
PS:我一步一步地尝试,所以我发现它甚至都没有在第一步上工作(核心:全选)
我的init.coffee
atom.commands.add 'custom-command',
'custom:command': ->
view = atom.views.getView(atom.workspace.getActiveTextEditor())
atom.commands.dispatch(view, "core:select-all")
我的keymap.cson
'atom-workspace':
'alt-shift-o': 'custom-command'
下面是我的原子屏幕截图,用于确保键绑定设置:
答案 0 :(得分:1)
::add(target, commandName, listener)
添加与选择器关联的一个或多个命令侦听器。
该方法的第一个参数不是目标,而是自定义字符串。以下工作正常:
atom.commands.add "atom-workspace", "custom-command": ->
view = atom.views.getView(atom.workspace.getActiveTextEditor())
atom.commands.dispatch(view, "core:select-all")
atom.commands.dispatch(view, "join-plus:join-csv-single-quote")
在init.coffee
中的更改生效之前,您可能必须重新启动Atom。
还要注意,CoffeeScript是一种对缩进敏感的语言。您发布的代码应该在Atom中创建了一个错误。如果您对JavaScript感到更满意,可以将init.coffee
替换为init.js
,然后将上面的代码转换为js2coffee或decaffeinate。