Snippet 是一款代码片段收集工具,经过一天三夜的开发终于上线了。

由于使用原生 JS 开发,效果利用 CSS3 实现,所以如果想有一个好的视觉体验,请使用 Chrome/FireFox 预览(后续会持续优化)。

基本功能

代码片段收集工具?你说的是 gist 么?这东西有用?昨天我在社交平台发上线预告的时候,有几个朋友提出来疑问。二话不多说,先去看线上效果

本应用使用 Jekyll 构建,托管在 github 上,提供了如下基本功能:

  • Snippet 按照文件夹储存分类呈现
  • 整合在一起之后,单页面预览所有 Snippet
  • 提供了快捷的搜索功能
  • 每个 Snippet 对应 github 直接编辑的地址
  • 提供了一个添加 Snippet 的快捷入口
  • Snippet 的语法就是 markdown ,当然也可以跟写博客似的写 snipet,嵌入 demo,嵌入说明等。

所以只要有 github 权限,可以直接编辑代码,立即生效。

使用说明

一个小东西,硬生生开发了十几个小时。我对很多小细节扣的比较多,虽然自己不是设计出身,但是要求自己设计出来的东西能看、好看,所以常常走简约路线,复杂的设计搞不定。为了体验更好一些,我在页面上添加了几个小功能:

1. 添加 snippet

进入页面之后,你可能看清楚了,左上角位置有个不是很明显的加号,点进去就会跑到 github 页面,由于是我的仓库,只有我能够直接编辑,其他人如果想添加代码段,需要 fork 过去之后,提交 PR,后续我会开发一个工具,方便其他人直接提交代码。

新建文件夹十分方便,输入 /foldName 然后回车,github 就会自动建立一个文件夹,当然,如果文件夹存在,就会是进入文件夹。

2. 搜索 snippet

当我做完之后,发现找到一个自己收藏的 snippet 可真难,于是很自然的开发了一个搜索工具,搜索的范围是所有 snippet 的 title 名称,如果匹配到了就展示出来(当然,需要你点击 Enter 按钮)。

3. 编辑 snippet

这个快捷入口直达该 snippet 的编辑地址,可以线上编辑,commit 之后立即生效。

这也是我为什么不使用 hexo 本地构建而使用 Jekyll 让 github 自动构建的目的(hexo 写插件用的语言是 nodejs,而 jekyll 是 ruby,所以各有利弊,本博客使用的就是 hexo 构建)。如果你喜欢这个 snippet ,可以点击编辑按钮左侧的小红心,哈哈~

后续开发

整个应用的开发,相对还是比较仓促的,存在比较多大的问题,所以后续有空也会不断优化它,直到我和大家用的都爽~ 那么,后续需要做的事情有:

  • 响应式预览页面
  • 收集 snippet 的工具
  • 补充更多类型 snippet,提升完整度
  • github 访问较慢,托管到 gitcafe 或者 coding

好了,如果大家喜欢这个应用,就去 github 上 start/fork 并且提交你的 snippet 吧!!

贡献代码

如果你想贡献代码,可以执行如下操作:

git clone https://github.com/{YOUR_GITHUB_NAME}/snippets.git
cd snippets
git chechout -b gh-pages
cd snippets
# 选择你想提交的文件类型,比如 html
cd html
touch {YOUR_CONTRIBUTE_FILE_NAME}.snippet

可以使用 markdown 语法。其中,{YOUR_CONTRIBUTE_FILE_NAME}.snippet 的格式为:

---
title: {NAME}
--- {CONTENT}
  • 提交代码
git add --all
git commit -m "add file html/{YOUR_CONTRIBUTE_FILE_NAME}.snippet"
git push origin gh-pages
  • 然后在你的 PR 页面提交一个 PR 到 barretlee/snippets 的仓库

本文转自我的个人博客:http://www.barretlee.com/blog/2015/09/29/new-application-snippet/

新应用上线 Snippet的更多相关文章

  1. 【网站】i新媒上线了!

    [New]i新媒上线了! i新媒,是新媒体人常用和必备的工具导航,我们整合了自媒体平台.行业资讯.运营营销.学习创业等常用的网站,让新媒体人更快地获取有用的知识. 访问链接:https://ixm.h ...

  2. 【HUAWEI Mate30】抽奖啦!华为IoT新福利上线!

    华为云OceanConnect IoT云服务包括应用管理.设备管理.系统管理等能力,实现统一安全的网络接入.各种终端的灵活适配.海量数据的采集分析,从而实现新价值的创造. 华为云OceanConnec ...

  3. SEO经验-如何做到新站上线半个月谷歌收录3万

    一个网站在做搜索引擎优化的时候,首先考虑的肯定是百度,这个是毋庸置疑的,毕竟百度占领者差不多七成的搜索市场份额. 第二考虑的是360搜索,这个也是毋庸置疑的,因为360搜索占领者差不多两成的搜索市场份 ...

  4. SPSSAU新功能上线:高级公式、综合得分一键计算!

    一直关注我们的朋友们一定会发现,近期SPSSAU增添了很多新功能. 我们精挑细选出6个最常使用的功能,介绍给大家,看看这些新功能你有没有解锁成功呢? 01 一键删除无效样本 “无效样本”功能中,添加了 ...

  5. LightningChart JS 3.0 新功能上线

    在这次的LC JS更新中,首次将极坐标图引入图表库. 这种全新的图表类型可以通过API轻松地进行样式设置.极坐标可以用作独立图表或在仪表板中使用. 另外,用于 XY图表的对数轴也添加到了这次的更新,L ...

  6. 新站上线啦,Html5Think,H5优秀资源的收集、学习、分享和交流

    最近闲来做了个H5资源站,刚刚有点资源,可以访问交流下. 栏目: H5网站模板 H5动画特效 H5资源工具 H5学习资料 致力于H5的学习,通过各个H5优秀案例的学习,逐步完善自己的H5体系,有朝一日 ...

  7. 恶意软件/BOT/C2隐蔽上线方式研究

    catalogue . 传统木马上线方式 . 新型木马上线方式 . QQ昵称上线 . QQ空间资料上线 . 第三方域名上线 . UDP/TCP二阶段混合上线 . Gmail CNC . NetBot两 ...

  8. 社区商业试玩O2O:良渚文化村新街坊牵手阿里巴巴

    在电商时代,越来越多的人选择便捷的网上购物,使得实体商业受到了不小的冲击,各种大型的购物中心.购物广场已经不再那么人气十足,因此一些特色商业街区.社区商业频频出现,也不乏一些新玩儿法. 阿里巴巴(专题 ...

  9. 重大新闻:借贷宝不用绑卡了,借贷宝APP推出肖像识别新功能!

    动动手指,20元人民币立即到手:http://www.cnblogs.com/mfryf/p/4754384.html 滴滴打车烧钱十几个亿,狂送打车券,很多人天天免费坐车! 去年年初百度钱包注册奖励 ...

随机推荐

  1. Be Better:遇见更好的自己-2016年记

    其实并不能找到好的词语来形容过去的一年,感觉就如此平淡的过了!没有了毕业的稚气,看事情淡了,少了一丝浮躁,多了一分认真.2016也许就是那句话-多读书,多看报,少吃零食多睡觉,而我更愿意说--Be B ...

  2. .NET Core中间件的注册和管道的构建(1)---- 注册和构建原理

    .NET Core中间件的注册和管道的构建(1)---- 注册和构建原理 0x00 问题的产生 管道是.NET Core中非常关键的一个概念,很多重要的组件都以中间件的形式存在,包括权限管理.会话管理 ...

  3. 从Membership 到 .NET4.5 之 ASP.NET Identity

    我们前面已经讨论过了如何在一个网站中集成最基本的Membership功能,然后深入学习了Membership的架构设计.正所谓从实践从来,到实践从去,在我们把Membership的结构吃透之后,我们要 ...

  4. .Net多线程编程—System.Threading.Tasks.Parallel

    System.Threading.Tasks.Parallel类提供了Parallel.Invoke,Parallel.For,Parallel.ForEach这三个静态方法. 1 Parallel. ...

  5. spark处理大规模语料库统计词汇

    最近迷上了spark,写一个专门处理语料库生成词库的项目拿来练练手, github地址:https://github.com/LiuRoy/spark_splitter.代码实现参考wordmaker ...

  6. Yeoman 官网教学案例:使用 Yeoman 构建 WebApp

    STEP 1:设置开发环境 与yeoman的所有交互都是通过命令行.Mac系统使用terminal.app,Linux系统使用shell,windows系统可以使用cmder/PowerShell/c ...

  7. 从零开始编写自己的C#框架(28)——建模、架构与框架

    文章写到这里,我一直在犹豫是继续写针对中小型框架的设计还是写些框架设计上的进阶方面的内容?对于中小型系统来说,只要将前面的内容进行一下细化,写上二三十章具体开发上的细节,来说明这个通用框架怎么开发的就 ...

  8. IE8/9 JQuery.Ajax 上传文件无效

    IE8/9 JQuery.Ajax 上传文件有两个限制: 使用 JQuery.Ajax 无法上传文件(因为无法使用 FormData,FormData 是 HTML5 的一个特性,IE8/9 不支持) ...

  9. spring源码分析之context

    重点类: 1.ApplicationContext是核心接口,它为一个应用提供了环境配置.当应用在运行时ApplicationContext是只读的,但你可以在该接口的实现中来支持reload功能. ...

  10. OEL上使用yum install oracle-validated 简化主机配置工作

    环境:OEL 5.7 + Oracle 10.2.0.5 RAC 如果你正在用OEL(Oracle Enterprise Linux)系统部署Oracle,那么可以使用yum安装oracle-vali ...