Atom - 片段不起作用

时间:2017-06-26 14:34:03

标签: atom-editor

以下是我在snippets.cson文件中编写的两个代码片段:

'.source.python':
  'print statement':
    'prefix': 'pr'
    'body' : 'print "${1:Hello world}"'


'.source.python':
  'Argument variables import':
    'prefix' : 'argv'
    'body' : 'from sys import argv'

第一个不起作用,但第二个起作用。请帮助。

的PS。

当我第一次在我的机器上安装atom时,片段文件是BLANK。我使用的是Ubuntu 16.04。这是正常的吗?

2 个答案:

答案 0 :(得分:4)

我相信你问题的根源是你的范围.source.python被宣告了两次。

首先回答你的第二个问题,不,我第一次打开它时,我的snippets.cson文件不是空白的。相反,它包含以下内容:

# Your snippets
#
# Atom snippets allow you to enter a simple prefix in the editor and hit tab to
# expand the prefix into a larger code block with templated values.
#
# You can create a new snippet in this file by typing "snip" and then hitting
# tab.
#
# An example CoffeeScript snippet to expand log to console.log:
#
# '.source.coffee':
#   'Console log':
#     'prefix': 'log'
#     'body': 'console.log $1'
#
# Each scope (e.g. '.source.coffee' above) can only be declared once.
#
# This file uses CoffeeScript Object Notation (CSON).
# If you are unfamiliar with CSON, you can read more about it in the
# Atom Flight Manual:
# http://flight-manual.atom.io/using-atom/sections/basic-customization/#_cson

(这是在MacOS上)。

请注意它如何指示您每个范围只能声明一次。我认为,如果您将两个片段修改为包含在同一范围内,它们将按预期工作。

snippets.cson更改为以下内容似乎对我有用:

'.source.python':
  'print statement':
    'prefix': 'pr'
    'body' : 'print "${1:Hello world}"'

  'Argument variables import':
    'prefix' : 'argv'
    'body' : 'from sys import argv'

.source.python范围唯一后,我可以从代码段导入菜单中访问这两个代码段。

答案 1 :(得分:0)

Ubuntu 20.10 上的 Atom 1.53.0 x64(“groovy gorilla”):

我不得不在核心包“language-html”(0.53.1)的“设置”中禁用“内置”片段。从那里我复制了前缀的片段,将其粘贴到我自己的本地 snippets.cson 中,并根据我的需要进行了更改。

我还必须重新启动 Atom 才能让编辑器显示我的自定义代码片段以供使用。

原始snippets.cson 在我的情况下也是空白的。没有提示,没有例子。 纯粹的vi感觉:-)