一. 概述

Snippets 是一种在代码中快捷插入代码块的方式。
Snippet 是一个编程用语,指的是源代码、机器码、文本中可重复使用的小区块。通常它们是有正式定义的执行单位,以纳入更大的编程模块。

二. Snippets 管理工具

Snippets,SnippetsLab

三. Atom 中的 Snippets

不同的编辑器,制定 Snippets 的方式有所不同。下面介绍如何在 Atom 中使用 Snippets 。

Atom 中自定义的 Snippets 存放在Atom > Snippets菜单下的snippets.cson文件下,下面来介绍如何创建 Snippets。

文档类型

在 Atom 中创建 Snippets 的首要问题,便是确定 Snippets 的文档类型,文档类型需要书写正确,否则 Snippets 将不生效。
对于 Atom 来说,查找正确的文档类型,可以到 language 中查找。比如.md文档类型,可以在 Atom 中语言类型language-gfm下的文件夹granmmars中文件 gfm.cson 中找到scopeNamesource.gfm

结构说明

Atom 中 Snippets 基本结构定义。

'.source.js':                                    #文档类型,同类覆盖,scopeName 前加 "."'console.log':                               #snippet名称,同名覆盖'prefix': 'log'                          #trigger标记'body': 'console.log(${1:"crash"});$2'   #内容主题,$-光标次序,{}-预设值

Atom 中 Snippets 定义代码块。

'.source.js':                                    'console.log':                              'prefix': 'log'                                                   'body': """                              ${1:methodName}: function (${2:attribute}) {$3}${4:,}  """   

上诉代码为了节省 Snippets 行数,也可以这样写:

'.source.js':                                    'console.log':                              'prefix': 'log'                                                   'body': '${1:methodName}: function (${2:attribute}) {\n\t$3\n}${4:,}'

个人觉得 Atom 将用户自定义的 Snippets 放置在同一个文件中管理,不太合适。
Atom 本身定义了一部分 Snippets ,可以在 文件夹 snippets 中查看,如:语言类型language-gfm,文件夹snippets中文件 gfm.cson
一般使用$0跳出至代码块尾。
同名 Snippets 将被后定义的 Snippet 覆盖。

自定义 Snippets 整理

Markdown
'.source.gfm':
# Markdown 注释'doc':'prefix':'doc''body':"""<!--@Description : ${1:description}@Author      : ${2:name} (${3:email})@Update      : ${4:author} (${6:date})-->$0"""
# Markdown 标题'h3':'prefix':'h3''body':'###$1\n\n$0''h4':'prefix':'h4''body':'####$1\n\n$0''h5':'prefix':'h5''body':'#####$1\n\n$0''h6':'prefix':'h6''body':'######$1\n\n$0'
# Markdown 文本'bold text':'prefix': 'b''body': '**$1**$0''italic text':'prefix': 'i''body': '*$1*$0'
# Markdown 代码'code':'prefix':'cd''body':'\n```\n$1\n```\n$2\n\n$0'
# Markdown 图片'image':'prefix': 'img''body': '![$1]($2)\n\n$0'
# Markdown 链接'link':'prefix':'l''body':'[${1:text}](${2:http://link.com})$0'
# Markdown 参考式'reference':'prefix': 'ref''body': '[${1:id}]: ${2:url}${3: "${4:title}"}$0''reference image':'prefix': 'rimg''body': '![$1][$2]$0''reference link':'prefix': 'rl''body': '[$1][$2]$0'
# Markdown 任务'todo':'prefix': 't''body': '- [$1 ] $0'
# Markdown 表格'table':'prefix': 'tb''body': """| ${1:Header One    } | ${2:Header Two    } || :------------- | :------------- || ${3:Item One      } | ${4:Item Two      } |$0"""

转载于:https://www.cnblogs.com/ciimoo/articles/6291123.html

Snippets 使用相关推荐

  1. 用Eclipse的snippets功能实现代码重用

    snippets功能实现代码重用 Snippets 代码片段是Eclipse的一个插件. 很多时候可以通过这个功能,重复使用常用的代码片段,加快开发效率. 创建一个代码段的步骤: 在Eclipse的e ...

  2. Xcode可重用代码块code snippets

    一. 关于code snippets 通过Xcode的重用代码块(code snippets)可快速输入预设好的常用代码模板,如通过键入 hystrong 系统会直接替代为 @property(non ...

  3. 用chrome的snippets片段功能创建页面js外挂程序,从控制台创建js小脚本

    用chrome的snippets片段功能创建页面js外挂程序,从控制台创建js小脚本 Chrome的snippets是小脚本,还可以创作并在Chrome DevTools的来源面板中执行. 可以访问和 ...

  4. 20 Very Useful Java Code Snippets

    2019独角兽企业重金招聘Python工程师标准>>> Following are few very useful Java code snippets for Java devel ...

  5. SpaceVim snippets C配置

    SpaceVim snippets C配置 2020年vim的C/C++配置 - 简书 # A valid snippet should starts with: # # snippet trigge ...

  6. 关于VS2005中的Code Snippets Manager的问题及解决

    Code Snippets Manager是VS2005专门用来管理代码块智能感知的工具. 然而,使用它并没有预想中的那么顺利,特别是在做过多次目录添加和删除之后,可能出现添加在列表中的目录无法在智能 ...

  7. Code Snippets

    在编写代码中,默认下按Ctrl+K,X 两下Tab键   ctor  constructor 在C:\Program Files\Microsoft Visual Studio 8\VC#\Snipp ...

  8. Linux下VSCode的安装和使用(VScode C/C++配置 CMake的使用)(GCC、GDB)(各类插件 Snippets、Code Runner、Include Autocomplete)

    文章目录 Linux下安装vscode VScode安装插件 编码与调试配置(转到bilibili教程 - 共24课) Linux下安装vscode vscode貌似也能通过apt-get 方法安装, ...

  9. snippets vscode 配置_VSCode 利用 Snippets 设置超实用的代码块

    一.起步 1.如何设置 Windows系统: 文件 > 首选项 > 用户代码片段 Mac系统: Code > 首选项 > 用户片段 2. 选择已有代码片段或创建代码片段(可以对 ...

  10. VTK:Snippets之WriteImage

    VTK:Snippets之WriteImage VTK:Snippets之WriteImage 描述 声明部分 定义部分 用法 VTK:Snippets之WriteImage 描述 给定文件名,渲染窗 ...

最新文章

  1. 写了一个 SSO 单点登录的代码示例给胖友!
  2. 01 java 编程基础
  3. 值得收藏的时间复杂度速查表:数据结构操作、排序算法、图操作、堆操作
  4. VMware安装CentOS之二——最小化安装CentOS
  5. C++为什么空格无法输出_OOP 面向对象编程:由 C 到 C++
  6. 鱼不长肢蛇不长脚,多多益善更烦恼?人猴嵌合肥胖有救,生活还要压力要小!...
  7. RecyclerView(三)实现聊天窗口样式(Android 5.0 新特性)
  8. 这道小学六年级的数学题,恕我直言没几个人会做
  9. 学了python的感悟_初学python之感悟
  10. android俄罗斯方块开发代码,基于Android的俄罗斯方块开发(附源码)
  11. C# 根据模板 导出 Excel 图表 (NPOI组件)
  12. Spring教程动画文字版2
  13. java表白我爱你代码_微信翻译代码我爱你怎么写 微信翻译表白代码大全
  14. 计算机位数怎么看win10,查看Windows10系统是32位还是64位的三种方法
  15. PLC(可编程逻辑控制器)
  16. matlab里peaks,MATLAB中peaks函數的用法
  17. 针对ABCmouse的Xadmin管理端使用探究手册
  18. Uni-app开发App和插件以后如何开通广告盈利:uni-AD
  19. k8s自定义controller三部曲之二:自动生成代码
  20. 用户画像在阅文的探索与实践

热门文章

  1. wps里ppt怎么换另一个的模板_从没想过,这个基础的PPT数据图表,原来还是排版神器!...
  2. 轻院2218: 小明的数字游戏( 给你n个数字,把这n个数字拼接起来,最大能拼出的数字是多少?)
  3. 517.Super Washing Machines
  4. 运营技巧|要如何提升用户留存率?
  5. android studio导入arr文件
  6. 肖维勒准则matlab_莱因达 ( PauTa)准则、格拉布斯 ( Grubbs)准则、肖维纳 (Chauvenet)准则 三者的区别...
  7. 音频特效生成与算法 3
  8. oppo系统更新服务器,系统升级,这些OPPO用户有福了!
  9. 定时器node-schedule使用
  10. 【CNC——第9.1篇】使用Setup引导程序整定步进电机(开环步进电机整定方式之1)