1. 参考文档
关于本文的参考文档:
2. Snippetslab主要功能
Snippetslab 不是一款传统意义上的代码编辑器,它的设计从头到尾都透着一股浓浓的为碎片化而生的味道。它所面向的不是连续的编辑一个完整程序的情景,而是将一个程序组件一个个拆分出来编写的情景。
在这种情景下,你可以非常碎片化的编写程序,并且可以快速的将代码调用到各个其他的程序上。而Snippetslab做的就是将这些代码收集在一起,让你可以快速搜索并调用,将一个个小的程序片段快速的组合。
SnippetsLab 的终极目的就是将你容易遗忘在电脑角落中的各种代码片段收集在一起,构建成你个人的巨大的代码片段库。随着你编写与收集的代码片段越来越多,你的私人片段代码库也就积累的越来越多,你的可用代码也就越来越多,结合它的快速搜索和资料库结构,将能够极大的帮助你的程序构建(虽说网上的代码库肯定更大,但用自己整理的代码不是更方便容易吗)。
同时,SnippetsLab 支持 iCloud,这意味着你可以在多台设备上快速同步。
3. Snippetslab主要界面
我们平时所用的代码编辑器都是直接显示一个单纯的编辑界面,最后都是保存在我们所选择的目录下。而 Snippetslab 则是使用了类似 Ulysses 的三段结构:
- 左侧:文件夹目录(包括文件夹、智能组、标签)
- 中间:当前文件夹下的文件目录
- 右边:文件内容界面,标准的编辑器界面,支持语言高亮。
Snippetslab左侧的文件夹目录查看分为两种模式:
- 文件夹与智能组:文件夹可以包含子文件夹
- 标签
我感觉标签与文件夹共存的这种设计很方便。
3.1. Snippetslab的Snippets
与Fragment
特殊结构
在 Ulysses 式架构之外,Snippetslab 还加入了一个新的管理层级 —Fragment
,即是在一个文档(即代码片段Snippets
)里再加入低一层级的标签分页(即Fragment
),如下图所示:
更多详细的操作,参见:Snippets and Fragments
3.1.1. 新引入的Fragment
有什么用呢?
在Snippetslab官方的文档中说了这几个用处:
- A class header and its implementation
- Some HTML code and its JavaScript/CSS counterparts
- Different solutions to one problem【针对一个问题的不同解决方案】
我个人而言,觉得【针对一个问题的不同解决方案】最有用。
3.2. Snippetslab的代码注释
同时 Snippetslab 考虑到了代码备注的需求,支持在代码文件中添加 Notes 并以置顶形式备注悬浮在编辑窗口上方。
默认情况下,如果当前片段没有注释,则注释字段是隐藏的。要添加注释,请单击【圆圈里面有个加号】按钮,然后选择添加注释。
4. Snippetslab强大的菜单栏助手【Assistant】
Snippetslab 的野心不仅在于做一个普通的代码管理器,它的目标是要成为你写程序时的第二大脑,于是它在菜单栏常驻了一个强大的菜单栏助手,如下图的锥形烧杯图标。
点开Snippetslab 的菜单栏助手的锥形烧杯图标,我们可以发现它是分成两个部分的,分别是作为搜索管理的 搜索 和编写收集新代码的 新建。
4.1. Assistant的搜索功能
激活SnippetsLab Assistant后,您可以立即开始键入内容以搜索所有片段。默认的搜索范围是所有片段,但是还可以指定具体的搜索规则。
如果要更改搜索规则,请单击搜索栏左侧的放大镜按钮,然后从下拉菜单中进行选择。
搜索到结果以后,可以进行下列操作:
实现的效果 | 操作的方式 |
---|---|
复制到剪贴板 | 单击它或按 Enter键 |
在主窗口中开启 | 按住Option键单击它或按 Option-Enter |
快速浏览 | 双击它或按→(要关闭快速外观弹出框,请按←) |
当您单击摘要或按时执行的操作Enter称为主要操作,它应该是最常用的操作。要自定义主要操作,请选择【SnippetsLab】 > 【首选项】 -> 【菜单栏助手】,然后从“首选操作”下拉菜单中选择一个项目。
SnippetsLab_2.png4.2. 过滤Assistant搜索的结果
4.2.1. 遇到的问题:
对于搜索操作:默认情况下,SnippetsLab将显示所有包含关键字的代码段,无论它们可能使用哪种语言,文件夹或标签。
但是,很多时候包含关键字的代码片段太多了,如果可以对搜索结果进行过滤,就能更加快速准确地找到所需的内容。
例如,您可以在特定的文件夹或某些特定的标签中找到具有特定语言的代码片段。
4.2.1. 添加过滤器的方法
SnippetsLab提供了三种类型的过滤器:文件夹,标签和语言。
- 单个过滤器
在搜索查询中添加in:
以打开过滤器菜单,您可以在其中选择特定的文件夹,标签或语言。这是一种方便的方式,可以完全根据需要获取结果。 - 多个过滤器
您可以添加多个in:
条件来进一步缩小结果范围。例如,过滤掉:仅使用“CSS”语言;同时在“Frontend Dev”文件夹中。如果存在多个过滤器,则仅满足所有过滤器要求的摘要将包含在搜索结果中。
4.3. 使用Assistant新建代码片段
这个比较简单,参见下图就行了:
SnippetsLab_3.png
5. Snippetslab特色功能
5.1 支持大量的语法高亮
从支持的语言不断扩展的列表中进行选择,当前版本提供420多种语言。
可以参考:What languages are supported?
5.2. 设置默认语言
每次创建新代码段时都必须选择语言吗?
SnippetsLab知道并解决了这个问题。
SnippetsLab可以为每个文件夹选择一种默认语言,并且在该文件夹中创建的摘要将自动使用该语言。默认值为“纯文本”。
要更改默认语言,请右键单击文件夹,然后在“默认语法高亮”子菜单中选择一种语言。注意:该菜单中仅显示活动语言。
5.2 支持MarkDown
从SnippetsLab 1.5开始,您可以显示MarkDown代码段的呈现HTML文档。
使用MarkDown的前提条件
要使用MarkDown功能,必须先将代码段的语言设置为“MarkDown”。为此,请单击位于编辑器面板左下方的语言选择器,然后从下拉列表中选择“MarkDown”。
更多参考:Markdown Snippets
5.3 支持很多中主题
SnippetsLab包含13个精心制作的主题。选择您熟悉的配色方案。
网友评论