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

news2024/11/6 3:01:01

在这里插入图片描述

自定义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 = arg

    def method(self, arg):
        pass

    def __str__(self):
        return f"{self.arg}"

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/437672.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python里面单双下划线的区别

区别&#xff1a; xx:公有变量&#xff0c;所有对象都可以访问&#xff1b; xxx:双下划线代表着是系统定义的名字。 __xxx&#xff1a;双前置下划线&#xff0c;避免与子类中的属性命名冲突&#xff0c;无法在外部直接访问。代表着类中的私有变量名。 _xxx&#xff1a;单前置…

【Maven 入门】第一章、Maven概述

一、什么是Maven&#xff1f; Maven是一款基于Java平台的强大构建工具&#xff0c;可用于管理和构建项目。它提供了一种易于使用的建立项目的方法&#xff0c;使开发者可以更快速、更高效地构建软件。 Maven的功能包括依赖管理、构建、发布、文档生成、测试在内的整个项目生命…

nodejs项目的轻量级数据持久化方案,node-json-db,直接使用json文件保存,查询数据。

前言 作为一名前端开发&#xff0c;我们做网站时&#xff0c;难免会遇到需要保存数据的场景&#xff0c;比如做一个小官网&#xff0c;没有注册&#xff0c;没有登陆&#xff0c;只有一个给我们提建议&#xff0c;如下面的&#xff0c; 网站上只有一处需要填写数据。 场景 …

RK3399平台开发系列讲解(PCI/PCI-E)PCIE相关配置说明

🚀返回专栏总目录 文章目录 一、DTS 配置二、menuconfig 配置三、cmdline 配置沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 本篇将介绍在使用 RK3399 平台 PCIE 时候的配置。 一、DTS 配置 ep-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>; 此项是设置 PCIe…

3自由度并联绘图机器人实现写字功能

1. 功能说明 本文示例将实现R305样机3自由度并联绘图机器人写字的功能。 2. 电子硬件 在这个示例中&#xff0c;采用了以下硬件&#xff0c;请大家参考&#xff1a; 主控板 Basra主控板&#xff08;兼容Arduino Uno&#xff09; 扩展板Bigfish2.1扩展板电池7.4V锂电池 3. 功能…

Jenkins集成SonarQube实现代码质量检查

文章目录 一、前提配置1.1 安装及配置SonarQube Scanner插件1.2 配置SonarQube servers 二、非流水线集成SonarQube1.1 配置非流水线任务 三、流水线集成SonarQube 一、前提配置 1.1 安装及配置SonarQube Scanner插件 (1) 点击【系统管理】>【插件管理】>【可选插件】搜…

Netty核心模块、核心组件理解

文章目录 一、入门案例二、Bootstrap、ServerBootstrap三、Future 、ChannelFuture四、Channel五、Selector六、ChannelHandler 及其实现类七、Pipeline 和 ChannelPipeline八、ChannelHandlerContext九、ChannelOption十、EventLoopGroup 和其实现类十一、Unpooled类与ByteBuf…

Vue3技术5之watchEffect函数、Vue3生命周期、自定义hook函数

Vue3技术5 watchEffect函数Demo.vue总结 Vue3生命周期Vue3生命周期测试App.vueDemo.vue 组合式API使用生命周期钩子Demo.vue 总结&#xff1a; 自定义hook函数获取鼠标的x,yDemo.vue 使用hook方式文件目录hooks/usePoint.jsApp.vueDemo.vueTest.vue watchEffect函数 Demo.vue …

MicroPython ESP8266 GPIO引脚使用详解

MicroPython ESP8266 GPIO引脚使用 &#x1f4cc;相关篇《【MicroPython esp8266】固件烧写教程》 ✨本案例基于Thonny平台开发。✨ &#x1f4dc;固件版本信息&#xff1a;MicroPython v1.19.1 on 2022-06-18; ESP module with ESP8266 &#x1f516;ESP8266可用管脚有&…

计算机组成原理——第六章总线(上)

误逐世间乐&#xff0c;颇穷理乱情 文章目录 前言6.1.1 总线概述6.1.2 总线的性能指标6.2 总线仲裁(408不考) 前言 本章在概述部分我们会首先介绍一下总线的基本概念&#xff0c;介绍一下总线的分类以及经典结构&#xff0c;介绍一些性能指标来评价总线的性能如何&#xff0c;…

电子招标采购系统源码—企业战略布局下的采购

​ 智慧寻源 多策略、多场景寻源&#xff0c;多种看板让寻源过程全程可监控&#xff0c;根据不同采购场景&#xff0c;采取不同寻源策略&#xff0c; 实现采购寻源线上化管控&#xff1b;同时支持公域和私域寻源。 询价比价 全程线上询比价&#xff0c;信息公开透明&#xff0…

通过单线程/线程池/分治算法三种方式实现1亿个数字的累加

一、任务类型 我们在做项目的时候&#xff0c;都需要考虑当前的项目或者某一个功能主要的核心是什么&#xff1f;是CPU密集计算型&#xff0c;还是IO密集型任务。我们调整线程池中的线程数量的最主要的目的是为了充分并合理地使用 CPU 和内存等资源&#xff0c;从而最大限度地…

AIGC潮水中,重新理解低代码

如果将一句话生成应用形容成L4级的“无人驾驶”&#xff0c;伙伴云的「AI搭建」则更像L2级的“辅助驾驶”。 作者|斗斗 出品|产业家 2023年&#xff0c;AIGC下的低代码赛道“暗流涌动”。 “对于「AI搭建」的搭建效果&#xff0c;尤其是在场景覆盖的广度上&#xff0c;连…

正式开赛|2023年“桂林银行杯”数据建模大赛暨全国大学生数学建模竞赛广西赛区热身赛

为学习贯彻党的二十大工作报告中关于加快发展数字经济、促进数字经济和实体经济深度融合的重要指示&#xff0c;不断推进数字化转型与金融科技创新&#xff0c;桂林银行联合全国大学生数学建模竞赛广西赛区组委会、广西应用数学中心&#xff08;广西大学&#xff09;共同主办20…

如何选择CDN厂商

如果您的在线业务面临着流量和访客数量的增加&#xff0c;如果您想提高网站速度和用户体验&#xff0c;选择合适的CDN提供商是朝着正确方向迈出的一步&#xff0c;那么如何来选择最合适的CDN厂商呢&#xff0c;火伞云小编今天为您解答&#xff1a; 一、测试潜在的CDN提供商 对…

centos7.6非默认端口的ssh免密登录(centos7.6指定端口的ssh免密登录)

非默认端口号&#xff08;以6622端口号示例&#xff09;的免密登录 1.1. 修改/etc/ssh/sshd_config Port 6622 1.2. 重启sshd服务 service sshd restart 1.3. 创建用户ds(可选&#xff0c;这里以ds用户做免密为示例) adduser ds&#xff1b; 1.4. 查看ds用户(可选) id ds; …

HBase高手之路6—HBase高可用

文章目录 HBase的高可用一、HBase高可用简介二、搭建HBase的高可用1.在HBase的conf文件夹中创建一个backup-masters的文件2.修改backup-masters&#xff0c;添加作为备份master的节点信息3.分发backup-masters文件到其他的服务器4.重新启动HBase5.查看web ui 三、测试高可用1.尝…

辉煌优配|黄金价格创近两年半新高!2只黄金股一季度预增

黄金板块早盘走强。 4月14日早盘&#xff0c;黄金板块团体走高&#xff0c;次新股四川黄金开盘半小时内拉升至涨停&#xff0c;封单资金到达7279.78万元&#xff0c;中润资源、晓程科技涨幅居前&#xff0c;分别为8.96%、8.48% 消息面上来看&#xff0c;近期全球黄金期货价格节…

Matlab进阶绘图第17期—气泡热图

气泡热图是一种特殊的热图&#xff08;Heatmap&#xff09;。 与传统热图相比&#xff0c;气泡热图利用不同颜色、不同大小的圆形表示数据的大小&#xff0c;可以更加直观地对矩阵数据进行可视化表达。 本文使用自制的bubbleheatmap小工具进行气泡热图的绘制&#xff0c;先来…

AttributeError: ‘LTP‘ object has no attribute ‘init_dict‘解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…