如何禁用 Sublime Text 3 中的片段?

问题描述 投票:0回答:7

如何在不禁用自动完成功能的情况下完全禁用 Sublime Text 3 片段功能?让编辑器“帮助”我处理蹩脚的预先输入的代码块只会减慢我的速度。我更希望让我自己输入代码。

sublimetext sublimetext3
7个回答
59
投票

删除 Sublime Text 3 片段有点麻烦,因为它们直接存储在包中。但可以通过在

packages
文件夹中添加同名代码片段来覆盖它们。

为了让生活更轻松,Package Control 中有一个名为

PackageResourceViewer
的包。安装它并运行
PackageResourceViewer: Extract Package
。然后选择您要禁用的代码片段的语言。所有文件现在都复制到您的
Packages
文件夹(每种语言的子文件夹)。您可以编辑
.sublime-snippet
.sublime-completions
文件。如果您只是想禁用该代码片段,请删除其文件的所有内容并保存。空文件被视为没有片段。

我知道这仍然有点麻烦,但这是我知道的唯一方法,直到开发人员添加关闭片段的选项。

此外,它指出值得一提的是,删除所有(由 PackageResourceViewer)生成的文件当然是一个好主意,除了您想要修改的文件之外。否则,如果软件包稍后更新,正如 @Tobia 在他的评论中指出的那样,您将不会收到任何这些文件的更新。


5
投票

我试图使用上面 Peh 的答案,但发现对于 Go,片段被编码在基于 XML 的 .tmSnippet 文件中。删除部分或全部 XML 会导致每次启动 Sublime 时都会出现烦人的弹出窗口。作为解决方法,我用不常见的字符替换了

tabTrigger
定义。

之前


<key>tabTrigger</key>
<string>for</string>

之后


<key>tabTrigger</key>
<string>ø</string>

这可以防止代码片段显示在自动完成菜单中,除非您实际上使用的是相关的不常见字符。


3
投票

打开您的设置(例如shift+cmd+p或使用菜单),

添加以下内容:

    "auto_complete": false,
    "auto_complete_include_snippets": false,
    "auto_complete_include_snippets_when_typing": false,

在 ST4 版本 4113 中测试。

在以后的版本中,在左侧默认设置中搜索“snippet”。


1
投票

在 Sublime Text 设置中,你可以在第 446 行找到它

// A list of wildcard patterns specifying which snippet files to ignore.
// For example, to ignore all the default C++ snippets, set this to
// ["C++/*"]
"ignored_snippets": [],

我正在使用 Sublime Text Build 4113


0
投票

有一个名为“Snippet Destroyer”的软件包1。尝试使用它。


0
投票

Package Control (Ctrl + Shift + P) -> 禁用Package,然后选择您要查找的包


-1
投票

手动进行。走这条路

C:\Users*user\AppData\Roaming\Sublime Text 3\Packages\User

在这里您将获得片段文件。选择您想要的并编辑或删除您想要的内容。

注意:AppData 在 Windows 中默认处于隐藏状态。因此,您必须从视图中启用(隐藏项目)。这里,*user 可以根据用户名而有所不同。

© www.soinside.com 2019 - 2024. All rights reserved.