sublime text的snippet介绍,提高编程效率

news/2024/12/28 18:04:27/

在这里插入图片描述

自定义Snippet

Sublime Text 的 Snippet 是一种快捷方式,它允许您使用自定义模板或代码片段更快地编写代码。以下是创建 Snippet 的步骤:

  1. 打开 Sublime Text 编辑器并创建一个新文件。
  2. 菜单栏选择 “Tools” -> “Developer” -> “New Snippet”,或者使用快捷键 Ctrl+Shift+N(Windows/Linux)/Cmd+Shift+N(Mac)
  3. 在弹出的窗口中输入您的代码片段,使用 $ 符号加数字表示需要用户输入的部分,例如:
<snippet><content><![CDATA[
Hello, $1! Welcome to Sublime Text $2.
]]></content><tabTrigger>hello</tabTrigger><scope>source.python</scope>
</snippet>

在这个示例中,$1$2 表示用户需要输入的位置。这个 Snippet 的作用是当您输入 hello 并按下 Tab 键时,就会自动插入 "Hello, [用户输入]! Welcome to Sublime Text [用户输入]." 的代码,并将光标置于第一个需要用户输入的位置。

  1. 保存代码片段,文件扩展名为 .sublime-snippet,并将其保存到 Sublime Text 的 “Packages/User” 文件夹中。要打开 “Packages/User” 文件夹,可以使用菜单栏中的 "Preferences" -> "Browse Packages"
  2. 使用您定义的 Snippet,只需在编辑器中键入相应的触发器,然后按 Tab 键即可插入 Snippet。

<scope> 标签是 Sublime Text Snippet 的一个可选元素,它用于指定代码片段的作用域。作用域是 Sublime Text 的概念,它表示在哪些情况下应该使用特定的代码片段或插件。

source.python 是 Sublime Text 中 Python 语言的默认作用域,它表示只有在编写 Python 代码时才应该使用这个代码片段。如果您在编写其他类型的代码时使用此代码片段,可能会产生意外的结果或不起作用。

Sublime Text 中有许多不同的作用域,每种语言和文件类型都有自己的作用域。例如,HTML 文件的作用域是 text.html,JavaScript 文件的作用域是 source.js。您可以在 Sublime Text 的文档中找到完整的作用域列表。

使用 <scope> 标签指定代码片段的作用域可以确保代码片段只在适当的情况下出现,这可以使代码更加易读和易于维护。

参考DEMO

<snippet><content><![CDATA[
class ${1:ClassName}(${2:object}):def __init__(self, ${3:arg}):${4:super(${1:ClassName}, self).__init__()}self.${3:arg} = ${3:arg}def ${5:method}(self, ${6:arg}):${7:pass}def __str__(self):${8:return f"{self.${3:arg}}"}
]]></content><!-- 触发器:class --><tabTrigger>class</tabTrigger><!-- 作用域:Python --><scope>source.python</scope><!-- 描述 --><description>Python Class Template</description>
</snippet>

这个 Snippet 的触发器是 class,在编辑器中输入 class 并按下 Tab 键时,就会自动生成以下代码:

class ClassName(object):def __init__(self, arg):super(ClassName, self).__init__()self.arg = argdef method(self, arg):passdef __str__(self):return f"{self.arg}"

在这个代码模板中,使用了多个 $ 符号,它们表示用户需要输入的部分。例如,$1 表示用户输入类名,$3 表示用户输入的构造函数参数名称。

此外,这个 Snippet 还包括一些 Python 类的常见方法,例如构造函数和 __str__ 方法。在模板中,这些方法都是可选的,用户可以根据需要添加或删除它们。

这个 Snippet 的一个优点是,它可以自动生成一个基本的 Python 类模板,这可以节省编写代码的时间,并确保代码符合 Python 的最佳实践。


http://www.ppmy.cn/news/46175.html

相关文章

文心一言眼里的SQL世界

目录 一、Java基础教程系列二、先听听文心一言怎么说&#xff1f;三、话不多说&#xff0c;开干。1、要有一个正确的数据库学习路线&#xff0c;做一个细致的MySQL学习规划。2、学习资料推荐 四、MySQL基础知识总结五、MySQL进阶六、Redis和MongoDB需要学吗&#xff1f;七、如何…

[个人笔记] Windows系列常用Shell命令工具集合

Windows - 运维篇 第四章 Windows系列常用Shell命令工具集合 Windows - 运维篇系列文章回顾CMD常用命令集网络相关命令文件管理相关命令系统相关命令其他命令 CMD常用工具集网络监控相关工具系统相关实用工具其他辅助工具 PowerShell常用命令工具集更多命令工具集参考来源 系列…

机器学习 day04(梯度下降算法,学习率,偏导数,执行过程示意图)

1. 梯度下降 我们可以用一种更系统的方法&#xff0c;来找到一组w&#xff0c;b&#xff0c;使成本函数的值最小。这个方法叫梯度下降算法&#xff0c;它可用于最小化任何函数&#xff0c;不仅仅包括线性回归的成本函数&#xff0c;也包括两个以上参数的其他成本函数在线性回…

如何使用ref和reactive你必须要知道的场景和差异

在Vue 3中&#xff0c;ref和reactive是两种不同的数据响应式处理方式。本文将介绍它们的使用场景和差异&#xff0c;并提供相关代码示例。 ref的使用场景 ref通常用于处理简单的数据类型&#xff0c;例如数字、布尔值、字符串等。它可以让我们在模板中直接使用数据&#xff0…

Chrome-mojo The Service Manager Services

https://chromium.googlesource.com/chromium/src//312b6bf/services/service_manager/README.md Chromium Mojo & IPC | 柯幽 概述 Service Manager是一个组件&#xff0c;像 Chromium 这样的大型应用程序可以使用它来支持跨平台、多进程、面向服务、连字符形容词负载的…

论:开发者信仰之“天下IT是一家“(Java .NET篇)

比尔盖茨公认的IT界领军人物&#xff0c;打造了辉煌一时的PC时代。 2008年&#xff0c;史蒂夫鲍尔默接替了盖茨的工作&#xff0c;成为微软公司的总裁。 2013年他与微软做了最后的道别。 2013年以后&#xff0c;我才真正看到了微软的变化。尤其是它的“云优先&#xff0c;移…

LeetCode 2409. 统计共同度过的日子数

原题链接&#xff1a;2409. 统计共同度过的日子数 Alice 和 Bob 计划分别去罗马开会。 给你四个字符串 arriveAlice &#xff0c;leaveAlice &#xff0c;arriveBob 和 leaveBob 。Alice 会在日期 arriveAlice 到 leaveAlice 之间在城市里&#xff08;日期为闭区间&#xff0…

hashCode 如何计算?这一篇就够了!

介绍 hashCode 中文‘散列码’&#xff0c;存在的意义是加快查找速率&#xff0c;可以在常数时间内进行寻址操作。 存在意义 它被定义在 Object 中&#xff0c;而 Object 类是一切类的父类&#xff0c;所以所有的方法都具有这个方法。 Java 中 hashCode 计算方式如下&#x…