3

sublime text 3我用 name创建了第一个插件relative

import sublime, sublime_plugin

class ExampleCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        self.view.insert(edit, 0, "Hello, World!")

然后保存到路径

/pathToSublime3/Packages/relative/relative.py

然后尝试在命令窗口中测试它(cntrl + `)

view.run_command('example') 

我希望Hello, World!在当前打开的文件的开头看到,但失败了。我做错了什么?

4

5 回答 5

2

如果你的经历和我一样,你可能已经复制了几个超级基本的插件来尝试找到一个有效的。我认为其他人的失败正在影响 Hello World 之一。对于它的价值,这是我所做的似乎有效的事情。

我在 Win7 上使用ST3,所以它和 ST2 之间的插件开发可能存在差异。

请注意,当我尝试了这些的许多不同排列时,我并不完全知道哪些是真正的修复。但如果这些能让你工作,那么也许你可以开始进行增量更改,看看它什么时候坏了。

  • 将作为我的插件的所有 *.py 文件移动到“Packages”文件夹中。(我读过很多帖子说应该读取“Packages\User”或“Packages\NameOfPlugin”文件夹中的插件文件,但我还没有尝试过。我把它放在“Packages”中以确保找到文件不是问题。)
  • 每次更改后重新启动 Sublime。(文档说您不必这样做,但是如果您的插件中有错误,则自动重新加载功能似乎不起作用。这有点道理。一旦我从所有插件中找出错误,自动重新加载功能开始正常工作。)
  • 我从网上复制的一些简单/教程插件(甚至一些来自 sublimetext.com!)引用/导入了“sublimePlugin”,这在我的 ST3 Win7 实例上出错。显然要导入的正确库是"sublime_plugin"。在基本插件中使用它的两个地方是 1)在导入部分的最顶部,以及 2)在类行中,我将在下面说明...

    # didn't work for me...
    class ExampleCommand(sublimePlugin.TextCommand):
    
    # DID work for me...
    class ExampleCommand(sublime_plugin.TextCommand):
    
于 2015-04-22T17:11:54.583 回答
1

'Ctrl+N' 创建一个新文件,然后再试一次。不要在旧文件中运行它。

于 2013-12-06T07:35:53.600 回答
0

我需要的只是关闭sublime text 3并再次打开它。现在Hello World工作正常

于 2013-10-21T15:50:45.740 回答
0

使用 Ctrl + ` For Sublime Text 2 无法打开控制台,但此示例是在 v2 文档中编写的。

使用该命令会打开一个以 # 开头的弹出窗口,用于打开另一个文件。

控制台通过按 Ctrl + F1 打开。之后,您可以在其中编写该代码,文本将添加到您当前的视图中(实际上是在任何视图中)。

于 2015-04-15T14:22:40.517 回答
0

请务必阅读“在哪里存储插件hello_world.py”,当它只是一个插件时,我犯了创建文件夹(包)的错误。还要记住文档窗口命令文本命令,因为在这种情况下,因为它是一个文本命令,你必须在你希望它放置文本的“视图”中执行它(不能是插件定义文件你创造的。

希望对将来的任何人有所帮助,因为这是我遇到的一些事情

于 2017-05-09T07:52:18.513 回答