Sublime APICloud 语法提示

用户根据本文档可以学习自定义语法提示文件,存放在官方插件下面即可。

文件名

  1. filename.sublime-snippet

注意事项:

  1. 理论上文件名随意,但是尽量和文件内容的 tabTrigger 保持一致,做到见名知意
  2. 文件格式必须是 sublime-snippet

可以新建自己的文件夹,把自己的提示文件都放在该文件夹下,文件名可以使用自己的前缀,以和官方片段区别开

文件结构

  1. <snippet>
  2. <content><![CDATA[
  3. // 其中存放需要显示的内容
  4. ]]></content>
  5. <tabTrigger>fs-read</tabTrigger>
  6. <scope>source.js</scope>
  7. <description>读取文件</description>
  8. </snippet>

光标位置

  1. ${1:fd}

冒号后面的是该位置的默认输入

光标位置从1开始,每次加1

触发输入

  1. <tabTrigger>fs-read</tabTrigger>

tabTrigger 标签中的内容就是触发该代码片段的指令,格式为: 模块名-方法名

所以使用的时候只要记得当前模块名和方法名,即可补全对应的代码

snippet tabTrigger

注意事项:

  1. ‘$’ 和 ‘.’ 无法触发自动补全
  2. 只能用 ‘-‘ 代替

适用范围

  1. <scope></scope>

sublime支持几十种适用范围,但是在本插件中固定为 source.js

片段描述

  1. <description></description>

在补全的时候会有弹出框,显示在右边的信息就是该代码片段的描述

snippet description

示例

以下演示如何编写一个 fs 模块的 rename 接口的步骤

1. 找到该接口的文档

fs 模块 rename 接口

2. 找到该接口的示例代码

  1. fs.rename({
  2. oldPath: 'fs://a.txt',
  3. newPath: 'fs://b.txt'
  4. },function(ret,err){
  5. var status = ret.status;
  6. if (status) {
  7. api.alert({msg:'重命名文件成功'});
  8. }else {
  9. api.alert({msg:err.msg});
  10. }
  11. });

3. 将示例代码放入语法提示模板的内容区

  1. <snippet>
  2. <content><![CDATA[
  3. fs.rename({
  4. oldPath: 'fs://a.txt',
  5. newPath: 'fs://b.txt'
  6. },function(ret,err){
  7. var status = ret.status;
  8. if (status) {
  9. api.alert({msg:'重命名文件成功'});
  10. }else {
  11. api.alert({msg:err.msg});
  12. }
  13. });
  14. ]]></content>
  15. <tabTrigger></tabTrigger>
  16. <scope>source.js</scope>
  17. <description></description>
  18. </snippet>

4. 替换需要输入的参数为光标提示

  1. <snippet>
  2. <content><![CDATA[
  3. fs.rename({
  4. oldPath: '${1:old_file_path}',
  5. newPath: '${2:new_file_path}'
  6. },function(ret,err){
  7. var status = ret.status;
  8. if (status) {
  9. api.alert({msg:'重命名文件成功'});
  10. }else {
  11. api.alert({msg:err.msg});
  12. }
  13. });
  14. ]]></content>
  15. <tabTrigger></tabTrigger>
  16. <scope>source.js</scope>
  17. <description></description>
  18. </snippet>

5. 输入触发代码

<tabTrigger></tabTrigger> 中输入 fs-rename

  1. <snippet>
  2. <content><![CDATA[
  3. fs.rename({
  4. oldPath: '${1:old_file_path}',
  5. newPath: '${2:new_file_path}'
  6. },function(ret,err){
  7. var status = ret.status;
  8. if (status) {
  9. api.alert({msg:'重命名文件成功'});
  10. }else {
  11. api.alert({msg:err.msg});
  12. }
  13. });
  14. ]]></content>
  15. <tabTrigger>fs-rename</tabTrigger>
  16. <scope>source.js</scope>
  17. <description></description>
  18. </snippet>

6. 输入描述信息

<description></description> 中输入 重命名

  1. <snippet>
  2. <content><![CDATA[
  3. fs.rename({
  4. oldPath: '${1:old_file_path}',
  5. newPath: '${2:new_file_path}'
  6. },function(ret,err){
  7. var status = ret.status;
  8. if (status) {
  9. api.alert({msg:'重命名文件成功'});
  10. }else {
  11. api.alert({msg:err.msg});
  12. }
  13. });
  14. ]]></content>
  15. <tabTrigger>fs-rename</tabTrigger>
  16. <scope>source.js</scope>
  17. <description>重命名</description>
  18. </snippet>

7. 保存文件

保存文件名为 fs-rename.sublime-snippet 存放位置为 Windows %AppData%\Roaming\Sublime Text 3\Packages 文件夹下就行,最好是在其中新建自己的文件夹存放,便于管理。