事出有因

是这样的,我觉得Sublime Text 3对CSS和JS的注释太简陋了,于是想自己修改下默认设置,没发现哪里能改,然后发现了Snippets这个神器,历经曲曲折折曲曲后顺利解决了问题。(Snippets官方介绍点我)

Snippets能作甚?

功能:输入定义过的字符串,再摁Tab,字符串会变成与它对应的内容(类似于你用Ctrl+V实现粘贴这个过程)

举栗:我设置了一个字符串name,它对应的内容设为xxxHolic,于是我在Sublime Text 3里想输入xxxHolic时,我可以输入name然后摁Tab来搞定。

比如某段代码你经常使用,那你可以给它想个名字,用Snippets设置下,你就可以直接按名字来快捷输出这段代码。

Snippets怎么上手?

新建: 菜单栏Tools → Developer → New Snippet...

新建的文件会显示如下代码。保存文件的时候后缀名务必为.sublime-snippet

<snippet><content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content><!-- Optional: Set a tabTrigger to define how to trigger the snippet --><!-- <tabTrigger>hello</tabTrigger> --><!-- Optional: Set a scope to limit where the snippet will trigger --><!-- <scope>source.python</scope> -->
</snippet>

1.<content>

CDATA[]中插入你想方便输出的大段内容。

光标默认出现在内容末尾。也可以设置光标初始位置以及占位符。$1表示光标首次出现的位置,$2就表示你摁Tab后光标跳到的位置,依次还可设置$3$4等等。要设置占位符的话,要这样,${1:占位符内容},同理可设置${2:占位符内容}等。$0表示最后光标跳的位置,默认是内容末尾,你也可以修改。

允许有两个或多个$1$2等,这样就有两个或多个光标,你可以在不同的位置同时输入同样的内容。

允许使用已有的变量或者自己新建变量。比如$TM_FILENAME表示当前文件名(带后缀)。(点这里看更多)

高级玩法是Substitutions,用到了正则表达式,看着很高级,我还不会玩,sign...

2.<tabTrigger>

<tabTrigger></tabTrigger>中间插入你为内容设置的字符串就行了。

3.<scope>

<scope></scope>中间填你希望指令生效的文件。text.html指HTML文件,source.css指CSS文件,source.js指JS文件。多个文件的话用逗号分开。

可以不要这项,则所有地方指令都有效。

4.<description>

其实还有<description></description>这项的,可不设置,默认值是你保存的文件名字。当你输入进行触发的字符串的前几个字母后,如果有代码提示,会在右侧显示<description></description>中的内容。

5.举栗举栗

<snippet><content>
<![CDATA[
----------------------------
CONTACT ME
----------------------------
Name: ${1:my name}
Tel: ${2:123456}
WeChat: ${2:123456}
Address: ${4:my address}
----------------------------
]]></content><tabTrigger>con</tabTrigger><description>contact-me</description><scope>text.html,source.js,source.css</scope>
</snippet>

做了个动图来展示哈哈。(图片怎么调大小啊...怎么都没试出来...+_+)

发现了吗,我输入c,就会有代码提示,左边是字符串全名con,右边是描述contact-me,然后我直接按Enter就行了,并不需要输全字符串后按Tab。不过这只在JS文件中有效。因为啊,在HTML中代码提示总要现有<,在CCS中需要先有{。多输入一个符号也无所谓啦,但是每次多输的符号还是要删掉,好麻烦的,还是解决掉好了。

在HTML中开启代码提示

解决方法:菜单栏Preferences→ Settings。在弹出的Preferences.sublime-settings — User 文件中加入下面的代码就好了。

"auto_complete_triggers":
[{"characters": "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.<","selector": "text.html"}
],

而默认的是设置是下面这样的。对比下进行意会,正则我知其然不知其所以然,待填坑。

"auto_complete_triggers": [ {"selector": "text.html", "characters": "<"} ],

在CSS中开启代码提示

去掉CSS只有输入{才能代码提示这个规则麻烦点。因为对HTML的设置对CSS无效-.-,我想了想,肯定是别的啥地方给设了规则。

网上浪啊浪,发现了解决方案。你要修改一个文件,在你安装Sublime Text 3的文件夹里有个Packages,里面有个CSS.sublime-package,这货是个压缩文件,你需要修改里面Completion Rules.tmPreferences这个文件里的<string>.*</string>,把.*去掉就OK了。

然鹅直接在快压里面修改改不了,用快压解压了是可以改,但是我无法再把文件压缩成.sublime-package这种类型的压缩文件。

于是我又继续在网上浪啊浪。

恩,发现装个插件就可以修改了,就是它 → Package​Resource​Viewer。

如果你还没装过插件,你需要先装一个Package Control,用来管理插件的好像,菜单栏Tools→ Command Palette...,输入install,选择Install Package Control,它会自动安装,装好了会弹窗告诉你。如果软件提示你没安装成功,让你去网站手动安装,然后那个网页又怎么都打不开,那可能是你网络问题。我在学校图书馆怎么都装不好,回家就好了。你只是需要换个网络-.-

然后我们安装Package​Resource​Viewer这个插件。还是菜单栏Tools→ Command Palette...,输入install,选择Package Control: Install Package,然后输入packagereso,选择Package​Resource​Viewer,OK,软件页面底部会显示正在安装,静静等它装好。

装好后,还是打开命令行,输入packagere,选择PackageResourceViewer: Open Resource,再选择CSS,再选择Completion Rules.tmPreferences,好了,这个文件打开了,我们把里面的<string>.*</string>注释掉,然后加上<string></string>就好了。(也就是去掉.*)。

这时候在CSS里面你可以直接输入首字母根据代码提示选择Snippets了。

恩,浑身舒畅。

用Completions管理Snippets

噢,还有一个问题,Snippets是一个文件只能写一个,所以如果你需要很多Snippets的话,文件多了管理起来会很麻烦。这时候我们用Completions来解决这个问题。(点我看官方介绍)

直接看我写的一个栗子吧。记住保存文件时后缀名.sublime-completions

{"scope": "source.js","completions":[{ "trigger": "q\tnote", "contents": "//---- ${1} ------" },{ "trigger": "con\tcontact-me", "contents": "----------------------------\nCONTACT ME\n----------------------------\nName: ${1:my name}\nTel: ${2:123456}\nWeChat: ${2:123456}\nAddress: ${4:my address}\n----------------------------\n" },]
}

"completions"里可添加多对"trigger""contents""trigger"\t 之前是触发的字符串,之后是描述;可省略 \t 与描述。

"contents"好像只能把代码写在一行,不能换行,痛苦,不方便排版,还没找到解决办法。有知道怎么整的交流下啊,感激.jpg

用Snippets创建自己喜欢的注释格式相关推荐

  1. html snippets怎么配置,用Snippets创建自己喜欢的注释格式

    事出有因 是这样的,我觉得Sublime Text 3对CSS和JS的注释太简陋了,于是想自己修改下默认设置,没发现哪里能改,然后发现了Snippets这个神器,历经曲曲折折曲曲后顺利解决了问题.(S ...

  2. Python-docx 模块读写 Word 文档基础(一):创建文档、段落格式、字体格式设置方法

    Python-docx 模块读写 Word 文档基础(一):创建文档.段落格式.字体格式设置方法 前言: 1.创建 Word 文档及基础用法: 2.段落格式设置: 3.字体格式设置: 结尾: [Pyt ...

  3. Excel 2007中创建或删除自定义数字格式

    Excel 2007提供了许多内置数字格式,但如果这些格式无法满足您的需要,您可以自定义内置数字格式以便创建自己的数字格式. 创建自定义数字格式 1.打开要创建并存储自定义数字格式的工作簿. 2.在& ...

  4. Eclipse中java文件头注释格式设置

    2019独角兽企业重金招聘Python工程师标准>>> Eclipse中java文件头注释格式设置 Eclipse中java文件头注释格式设置 windows->prefere ...

  5. Git 使用的一些命令以及Git commit 注释格式

    1.Git 快速教程及命令 流程: 取代码 → 每次工作前更新代码到最新版本 → 修改代码 → 提交代码到服务器 取代码及修改全局设置 a. 设置用户名与邮箱 git config –global u ...

  6. 【简报】创建线框结构的PDF格式草图表

    为什么80%的码农都做不了架构师?>>>    日期:2012-9-2  来源:GBin1.com 任何设计师开始设计网站时要做的第一件事就是创建线框图,使用它们可以帮助你创建大家可 ...

  7. 几乎所有的RPG游戏(一种源自《龙与地下城》的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色。本次上机要求编写一个简化的创建游戏角色的程序。

    一:题目分析 1.功能描述 几乎所有的RPG游戏(一种源自<龙与地下城>的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色.本次上机要求编写一个简化的创建游戏角色的程序. 2.游戏 ...

  8. 水晶报表中如何创建自定义的纸张大小格式?

    问题 水晶报表中使用一个自定义的纸张类型格式(使用预先定义的纸张格式显示或者打印一个报表)? 解决方法 要创建一个自定义的纸张格式,来完成你工作中所使用的特殊纸张.在你开始工作之前,你必须确认你的打印 ...

  9. 数据集voc,coco注释格式,详情大全

    文章目录 前言 一.VOC注释格式 二.COCO注释格式 总结 前言 啊啊啊啊啊,不太理解任务 (百脸懵逼) 一.VOC注释格式 整体结构 图片基本信息:例如文件名(folder.filename). ...

最新文章

  1. Windows 系统安装Docker Compose 步骤
  2. C#如何将线程中的代码抛到主线程去执行
  3. 怎么把路由的#号去掉_VLAN应用篇系列:交换机VLAN间路由与传统单臂路由(子接口)方式...
  4. 初中数学知识点总结_初中数学知识点总结大全_经典版_
  5. jsf集成spring_Spring和JSF集成:转换器
  6. android 5.0.1 libdvm.so,Android逆向进阶—— 脱壳的奥义(基ART模式下的dump)
  7. 野生前端的数据结构练习(1)——栈
  8. 微服务升级_SpringCloud Alibaba工作笔记0015---Nacos安装
  9. crash recovery mysql_MySQL · 源码分析 · binlog crash recovery
  10. Windows Server 2008终端服务详解系列3:结合MOSS 2007部署TS Web Access
  11. Android之布局详解
  12. LED背光源具的优势
  13. 使用android studio 连接海马玩模拟器
  14. pingssys-ant design pro基础
  15. 基于JavaGUI的中英文打字训练测试软件设计
  16. 大数据下的密码学技术挑战
  17. ndis协议驱动开发
  18. Unix Domain Socket
  19. python编写程序转换进制_python——进制转换
  20. SpringBoot 扫描其他 Module 下的 Controller

热门文章

  1. java怎么调epass3003_兴业银行U盾下载码是什么
  2. 控制台执行python脚本报错问题:ModuleNotFoundError: No module named ‘xxx‘
  3. gdb: Don‘t know how to run. Try “help target“.
  4. 基于EasyX 的五子棋小游戏。
  5. Nexus 搭建Maven私服(Linux)
  6. linux testdisk使用教程,江湖救急!磁盘数据大救星TestDisk
  7. 继续收藏!轻载料箱类自动化立体库的前世今生
  8. copyfiles options
  9. python科研用哪个软件好_有哪些好的科研工具软件?
  10. 极域卸载就不能安装显示错误码2083