如何在不禁用自动完成功能的情况下完全禁用 Sublime Text 3 片段功能?让编辑器“帮助”我处理蹩脚的预先输入的代码块只会减慢我的速度。我更希望让我自己输入代码。
删除 Sublime Text 3 片段有点麻烦,因为它们直接存储在包中。但可以通过在
packages
文件夹中添加同名代码片段来覆盖它们。
为了让生活更轻松,Package Control 中有一个名为
PackageResourceViewer
的包。安装它并运行PackageResourceViewer: Extract Package
。然后选择您要禁用的代码片段的语言。所有文件现在都复制到您的 Packages
文件夹(每种语言的子文件夹)。您可以编辑 .sublime-snippet
或 .sublime-completions
文件。如果您只是想禁用该代码片段,请删除其文件的所有内容并保存。空文件被视为没有片段。
我知道这仍然有点麻烦,但这是我知道的唯一方法,直到开发人员添加关闭片段的选项。
此外,它指出值得一提的是,删除所有(由 PackageResourceViewer)生成的文件当然是一个好主意,除了您想要修改的文件之外。否则,如果软件包稍后更新,正如 @Tobia 在他的评论中指出的那样,您将不会收到任何这些文件的更新。
我试图使用上面 Peh 的答案,但发现对于 Go,片段被编码在基于 XML 的 .tmSnippet 文件中。删除部分或全部 XML 会导致每次启动 Sublime 时都会出现烦人的弹出窗口。作为解决方法,我用不常见的字符替换了
tabTrigger
定义。
之前
<key>tabTrigger</key>
<string>for</string>
之后
<key>tabTrigger</key>
<string>ø</string>
这可以防止代码片段显示在自动完成菜单中,除非您实际上使用的是相关的不常见字符。
打开您的设置(例如shift+cmd+p或使用菜单),
添加以下内容:
"auto_complete": false,
"auto_complete_include_snippets": false,
"auto_complete_include_snippets_when_typing": false,
在 ST4 版本 4113 中测试。
在以后的版本中,在左侧默认设置中搜索“snippet”。
在 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
Package Control (Ctrl + Shift + P) -> 禁用Package,然后选择您要查找的包
手动进行。走这条路
C:\Users*user\AppData\Roaming\Sublime Text 3\Packages\User
在这里您将获得片段文件。选择您想要的并编辑或删除您想要的内容。
注意:AppData 在 Windows 中默认处于隐藏状态。因此,您必须从视图中启用(隐藏项目)。这里,*user 可以根据用户名而有所不同。