如何优雅地使用 Sublime Text 3

html-css039

如何优雅地使用 Sublime Text 3,第1张

Sublime Text:一款具有代码高亮、语法提示、自动完成且反应快速的编辑器软件,不仅具有华丽的界面,还支持插件扩展机制,用她来写代码,绝对是一种享受。相比于难于上手的Vim,浮肿沉重的Eclipse,VS,即便体积轻巧迅速启动的Editplus、Notepad++,在SublimeText面前大略显失色,无疑这款性感无比的编辑器是Coding和Writing最佳的选择,没有之一。

原文首链,请移步这里如何优雅地使用Sublime Text最后更新于2015.12.15晚 (不能为简书文章添加目录?,额,折腾不出来,醉了),但目录结构还是可以有的:

如何优雅地使用Sublime Text 之 目录结构

Sublime Text 2和3的对比

Sublime Text 3安装插件

Sublime Text 3插件推荐

定制属于自己的快捷键

Sublime不可不知的实用技巧

定制属于自己的个性化主题

Sublime锦上添花些许设置

写在一路更来的结语

Sublime Text 2和3的对比

相比于2,Sublime Text 3就秒启动一项,就压倒性地胜利了。因此在之后的叙述中都以Sublime Text 3为主角。并且3一直在不断的完善更新,具体的差异可参看Sublime Blog.简单的说:

ST3支持在项目目录里面寻找变量

提供了对标签页更好地支持(更多的命令和快捷键)

加快了程序运行的速度

更新了API,使用Python3.3

强烈推荐朋友们使用3! 唯快不破,不解释。

Sublime Text 3安装插件

Sublime Text的强大就是她拥有强大的课可扩展性。您可根据自己的需要安装不同的插件;这使得她变的无比强大的同时又不失轻便。

插件安装方式一:直接安装:

安装Sublime text 3插件很方便,可以直接下载安装包解压缩到Packages目录(菜单->preferences->packages)。

插件安装方式二:使用Package Control组件安装:

按Ctrl+`调出console(注:安装有QQ输入法的这个快捷键会有冲突的,输入法属性设置-输入法管理-取消热键切换至QQ拼音)粘贴以下代码到底部命令行并回车:

import urllib.request,ospf = 'Package Control.sublime-package'ipp = sublime.installed_packages_path()urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) )open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())

重启Sublime Text 3。如果在Perferences->package settings中看到package control这一项,则安装成功。按下Ctrl+Shift+P调出命令面板输入install 调出 Install Package 选项并回车,然后在列表中选中要安装的插件。

PS:国内使用SublimeText3,经常可能遇到无法安装可用插件问题,可remove掉Package Control重新安装下;如遇到连Package Control也无法安装,则可以在别处拷贝一份关于Package Control的文件-(Package Control.sublime-package)存放于Installed Packages目录之下即可。

Sublime Text 3插件推荐

无插件,不神器!根据自己的需要定制属于自己的强大插件集;作为在移动端旧游之后,又Web端新游的自己,墙裂推荐以下这么几款插件:

MarkDown Editing

SublimeText不仅仅是能够查看和编辑 Markdown 文件,但它会视它们为格式很糟糕的纯文本。这个插件通过适当的颜色高亮和其它功能来更好地完成这些任务。关于如何在SublimeText下高效些东西可参见文章:sublime text 2(3)下的Markdown写作 抑或是前段时间写下的追寻高效工作的一路折腾二

SideBarFolders

打开的文件夹都太多了? 来用这个来管理文件夹,世界原来也可以这么美好。

SideBarFolders

Sublime Terminal

这个插件可以让你在Sublime中直接使用终端打开你的项目文件夹,并支持使用快捷键。

ColorPicker

通常,如果你想使用一个颜色选择器则可能打开 Photoshop 或 GIMP。而在 Sublime Text 中,你可以使用内置的颜色选择器。安装完成后,只要按下Ctrl / Cmd + Shift + C 快捷键。

SublimeREPL

这可能是对程序员很有用的插件。SublimeREPL 允许你在 Sublime Text 中运行各种语言(NodeJS , Python,Ruby, Scala 和 Haskell 等等)。

Ctags插件

有童鞋抱怨Sublime Text不能支持函数的跳转(比如像Eclipse那样,按住Control点击该方法或者对象,即可跳转到定义的地方; Alt+←即可回到原处)。其实Sublime Text也可以借助插件实现之(当然,有些情况下:Can not find defination)毕竟这个也是借助正则来匹配完成的。因此这个也就要求代码很规范。这个插件相对来讲会有些麻烦,具体的可以参见:Sublime Text ctags 的配置.

SublimeLinter插件

SublimeLinter 是前端编码利器——Sublime Text 的一款插件,用于高亮提示用户编写的代码中存在的不规范和错误的写法,支持 JavaScript、CSS、HTML、Java、PHP、Python、Ruby 等十多种开发语言。这篇文章介绍如何在 Windows 中配置 SublimeLinter 进行 JS &CSS 校验。

比如写例如像lua这样的弱语言脚本代码,有这个可以规避掉很多不该有的低级错误吧?当然这也需要你SublimeLinter安装完毕之后再安装一个SublimeLinter-lua即可。具体的使用可以参见:借助 SublimeLinter 编写高质量的 JavaScript &CSS 代码

SideBarEnhancements插件

SideBarEnhancements是一款很实用的右键菜单增强插件;在安装该插件前,在Sublime Text左侧FOLDERS栏中点击右键,只有寥寥几个简单的功能;安装了就相当于给其丰了大胸一般。

更强大的是,该插件还能让我们自定义快捷键呼出某个浏览器以预览页面!这样就不用到项目目录下寻找和拖动到特定浏览器中预览了。

安装此插件后,点击菜单栏的preferences->package setting->side bar->Key Building-User,键入以下代码:

[

{ "keys": ["ctrl+shift+c"], "command": "copy_path" },

//chrome

{ "keys": ["f2"], "command": "side_bar_files_open_with",

"args": {

"paths": [],

"application": "C:\\Users\\jeffj\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe",

"extensions":".*"

}

}

]

这里设置按Ctrl+Shift+C复制文件路径,按F2即可在Chrome浏览器预览效果(如果需要的话,也可以根据自己的需要为Firefox,Safari,IE,Opera等加上),当然你也可以自己定义喜欢的快捷键,最后注意代码中的浏览器路径要以自己电脑里的文件路径为准。

HTML-CSS-JS Prettify

一款集成了格式化(美化)html、css、js三种文件类型的插件,即便html,js写在PHP文件之内。插件依赖于nodejs,因此需要事先安装nodejs,然后才可以正常运行。插件安装完成后,快捷键ctrl+shift+H完成当前文件的美化操作。插件对html、css文件的美化不是非常满意,但还可以,后面将说明如何修改css美化脚本。本人用起来超级爽的,鉴于篇幅,就不赘述,可以参见这篇介绍。

CSScomb CSS属性排序:

有时候看看自己写的CSS文件,会不会觉得属性很乱查找不易维护难?CSScomb可以按照一定的CSS属性排序规则,将杂乱无章的CSS属性进行重新排序。选中要排序的CSS代码,按Ctrl+Shift+C,即可对CSS属性重新排序了,代码从此简洁有序易维护,如果不款选代码则插件将排序文件中所有的CSS属性。当然,可以自己自定义CSS属性排序规则,打开插件目录里的CSScomb.sublime-settings文件,更改里面的CSS属性顺序就行了。因为这个插件使用PHP写的,要使他工作需要在环境变量中添加PHP的路径,具体请看github上的说明。

SublimeTmpl 快速生成文件模板

一直都很奇怪为什么sublime text 3没有新建文件模板的功能,像html头部的DTD声明每次都要复制粘贴。用SublimeTmpl这款插件终于可以解脱了,SublimeTmpl能新建html、css、javascript、php、python、ruby六种类型的文件模板,所有的文件模板都在插件目录的templates文件夹里,可以自定义编辑文件模板。

SublimeTmpl默认的快捷键:

ctrl+alt+h html

ctrl+alt+j javascript

ctrl+alt+c css

ctrl+alt+p php

ctrl+alt+r ruby

ctrl+alt+shift+p python

如果想要新建其他类型的文件模板的话,先自定义文件模板方在templates文件夹里,再分别打开Default (Windows).sublime-keymap、Default.sublime-commands、Main.sublime-menu、SublimeTmpl.sublime-settings这四个文件照着里面的格式自定义想要新建的类型,这里就详细介绍了,请各位自己折腾哈~

Javascript-API-Completions:

支持Javascript、JQuery、Twitter Bootstrap框架、HTML5标签属性提示的插件,是少数支持sublime text 3的后缀提示的插件,HTML5标签提示sublime text3自带,不过JQuery提示还是很有用处的,也可设置要提示的语言。

看此文章

http://www.jianshu.com/p/3cb5c6f2421c

工具类

方便操作对象,数组等的工具库

underscore.js

lo-dash 与underscore.js的api基本一致。与underscore比其优势是,效率高;可自定义构建

Sugar 在原生对象上增加一些工具方法

functional.js 提够了一些Curry的支持

Watch.js 监视对象或属性的变化

bacon.js 函数式编程,cool

streamjs 用流的方式来对数组,对象进行系列操作

异步流程控制

eventproxy 朴灵出品

Arbiter.js 详细

发布订阅

q Promise风格的

Async.js

mock

Mock.js 生成随机数据和mock Ajax 请求

jquery-mockjax mock ajax请求

时间库

moment

datejs

浏览器探测

Bowser 探测具体浏览器和版本

ua-parser-js 探测具体浏览器和版本,操作系统,设备类型等

调试

console-polyfill 能放心的使用 console.log()之类的console方法

log 让控制台输出的log有样式

Konsole.js 在页面的一个元素里输出log信息 详细

uri.js uri操作

cookie 增删改cookie的工具库

director 前端路由库 详细

BigDecimal.js 提高精度的数字操作

JSDoc 根据javascript文件中注释的信息,生成API文档 详细

hotkeys 键盘事件的封装

MD5 用 MD5 的方式加密文件的库

浏览器增强类

让一些旧浏览器变牛逼的库

Selectivizr 让IE 6-8一些的css3选择器

ieBetter 让ie6-8有高级浏览器的特性

ExplorerCanvas 让IE8-的浏览器支持canvas

CSS3 Pie 让IE6-9支持border-radious,box-shadow,linear-gradient。 可以使用.htc文件(注意Mine type)或.js文件。在用Pie.js时,box-radious的元素有背景色时,不显示背景色。。。

formFive 让旧的浏览器支持HTML5表单的一些特性,如 placeholder,autofocus

https://github.com/anselmh/object-fit 让浏览器支持object-fit这css规则

HTML5 Cross Browser Polyfills 一堆Polyfills

flexibility 让旧的 IE 也支持 Flexbox

选择器增强

Lining.js 让浏览器实现类似::nth-line(), ::nth-last-line()的效果

未归类

prefixfree 用了它,写css时,就不需要加浏览器的前缀了

表单类

jquery-file-upload 上传文件组件 详细

zTree 文件树形视图控件

Treed 树编辑器。感觉展示的感觉很像思维导图

FileAPI 对文件选择框内的文件的一些处理

表单验证

.Validate 详细

jQuery-Validation-Engine

表单元素美化

uniform 提供对下拉框,单,复选框,按钮等表单元素的美化

select2 多选下拉框

selectivity 和unfirom比较类似

DropKick 下拉框,单,多选。外观比uniform好

switchery ios7风格的开关组件

nouislider 用滚动条来设置/控制(音量等)

range.css 美化input[type=range]元素的外观

图片类

holderjs 生成占位图片

lazyload

imagesLoaded 选取的图片都加载好后执行调回

CSSgram 用CSS3的Filter实现Instagram滤镜的库

图标类

Icon Font汇总

SVG做的图标

svgicons

iconic

HYBICON 带交互效果。如 hover, click

HTML字符实体图标

http://www.amp-what.com/

transformicons 图标点击时,会有一些变换效果。如,加号变成叉号

css3patterns css3 做的可平铺纹理。浏览器兼容性不好。

浏览图片

fancybox 弹出查看图片,视屏等等 demo

yoxview 弹出查看图片,图片尺寸缩放很自然

图片墙

wookmark

UI 框架

WeUI 由微信官方设计团队为微信 Web 开发量身设计。

Framework7

UI 组件类

拖拽

dragula 支持Draggable,Dropable和Sortable。感觉比jqueryUI的轻量级,好用的样子

angular-dragula dragular 官方的 angular 版本

数据可视化(图表)

Echarts 百度出品

highcharts 功能强大。是收费的。

Plottable.JS 基于D3的一个图表库

flot 文档不给力

chartJs 中文文档 demo很漂亮,很清晰。比较轻量级。

ichartJs 中国的一个家伙搞的,感觉还不错。

时间选取组件

foundation-datepicker

DatePicker 一个简单的日历 详细

full calendar 支持脱放的方式来改变待办事宜的时间

Simple Events Calendar 外观很喜欢。收费 5$

jQuery ui datepicker 经典,不是很好看

pickadate 轻量级,手机友好的,漂亮。但貌似只能在弹出层中显示,而没有下拉这种方式显示。

zebra-datepicker 可配置性很强。但貌似只能在弹出在右上方。。。

bootstrap-datepicker bootstrap风格。

dateRangePicker 选取时间段。bootstrap风格。该组件依赖Twitter Bootstrap, Moment.js和jQuery.

自定义滚动条

perfect scrollbar 轻量级的滚动条。外观与mac上chrome的滚动条一样。

iscroll 在移动设备上用不错

加载(Loding)效果

CSS Spinners CSS做的

Loaders.css CSS做的

表格组件

jsGrid Data Grid。 详细

backgrid 基于Backbone.js的DataGrid

excellentexport 把表格的内容生成excel。兼容 Firefox, Chrome, IE6+

datatables 表格可交互(对内容进行排序,删除等)

handsontable 生成Excel外观的数据

JSpreadsheets 表格数据的组件库

选取颜色

Spectrum

分享到SNS

JiaThis 生成分享代码。

编辑器

ace 代码编辑器,可以用来做demo演示

ckeditor

ueditor 百度做的

tinymce 对html内容进行实时的编辑

summernote 在移动设备上用不错

通知组件

notie.js

HTML5播放器

jwplayer 被大量网站使用

html5media 简单的h5player,轻量级

jplayer 功能强太,可换肤

展示

Impress.js 各种旋转,和奇特的体验

fullPage 全屏显示。用滚轮来翻页 详细

zepto.fullpage 专注于移动端的fullPage.js,依赖Zepto

pagePiling 和fullPage类似

turn.js 做一本书,带漂亮的翻页的效果

幻灯

slidesjs 挺好用的,只是那幻灯导航的CSS都要自己写,呵呵 详细

iSlider 无任何插件依赖的手机平台javascript滑动组件 详细

bgstretcher 全屏幻灯,会随着页面大小的变化而变化。

Swiper 开源、免费、强大的移动端触摸滑动插件 Swiper中文网

coin-slider 兼容IE6。蛮好的~。不过其切换方式是一块块的。不能配置切换方式。。。

wowslider 幻灯切换时各种很炫的效果。收费。

cycle2 普通的幻灯,竟然不支持垂直滚动。。。

jcarousel 普通的幻灯,不兼容IE6

reveal 3d滚动。做ppt相当不错

nodePPT 国人做的,做ppt也相当不错。有些方面比 reveal做的还好。但生成导出的html有些问题

roundabout 3d切换,看的后面图片的边

弹出框

Magnific-Popup 兼容PC,Mobile。还不错,有5k+的star

layer 国人开发的,兼容ie6+。不喜欢其调用方式。

动画效果

mixitup 用漂亮的动画效果来完成排序和筛选

jQuery.Marquee 跑马灯效果

quickflip 卡片翻转效果

卡片翻转效果2 兼容性可以。写的比较简单:1,只支持x方向翻转 2,类名都是规定好的 3,只能被调用一次。 需要改写一下。我的改进版见这里

TheaterJS 模拟两个人在屏幕上对话

midnight.js 文字颜色随着背景变,屌炸了

color-animation jquery的颜色渐变动画插件。jquery的动画不支持颜色值的变化。改库提供了这个支持。

transit 对元素进行css的变换

tagcanvas 3D标签云效果 详细

iconate 图片切换动画

Snap.js 左/右侧导航的出现效果

CSS shake 抖动动画

ClickSpark.js 点击后的一些酷炫的效果

视觉差插件

scrollorama 比较简单

superscrollorama 能做的效果更多,但要用第三方Tween的库,使用起来比较复杂。

scrolldeck

flash

swfobj 能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。它使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。此外,它能够避免您的HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。 详细

抽奖

wScratchPad 刮刮卡刮奖效果

jqueryrotate 旋转插件。可以用来做转盘抽奖效果

用户体验增强类

Intro.js 用来介绍网站的功能很不错。也可以做新手引导。

blockUI Lolding组件。

simple-hint 提示信息。用css做的。兼容性IE 9+。

dotdotdot 文字溢出时,添加在文字末尾加省略号

jQuery-menu-aim 二级菜单的切换如Amazon主页上一样迅速

AnythingZoomer 放大镜功能

美化/高亮语法代码

google-code-prettify

DlHighlight 仅支持JavaScript、CSS、XML、HTML 这4语法高亮

please 按要求随机舒服的颜色

Awesomplete 输入的智能提示,自动补全

proTip 提示。感觉比 Bootstrap 的 tip 好

Hammerjs 手势库。封装了 Swipe, Tap, Pinch, Pan等手势

动画

velocity 提高Jquery动画的性能。以及颜色动画之类的新特性。

SVG

Snap.svg 操作 SVG 的 JS 库。号称 SVG 的 jQuery。demo

walkway 以动画的方式,渐渐地画出 SVG 的路径。

测试

Mocha

Chai

Should

Snoion

DeviceMock.js mock 设备。

其他类

ZeroClipboard 将内容复制到剪切板兼容主流浏览器的解决方案 详细

html2canvas html转化成canvas,可以用来做截图。详细

Ink 响应式html邮件框架

性能测试

抓取,解析RSS内容(不能跨域,所以后台要做代理,所谓的解析Rss其实就是解析xml)

jFeed

jRss 简单版的jFeed

scriptcam 与摄像头交互

cylon.js 机器人框架,支持35个平台

Masonry 一个瀑布流框架

devices.css 移动设备边框的外观。做原型的时候用不错。

Bootstrap相关类

Bootbox.js 对bootstrap的弹出框做的一些封装

免费皮肤

AdminLTE

JS Plugins仓库

jQuery Cards 高质量的 jQuery 插件网站

jster

node modules

npmrank Sort npm packages by page rank

YOU MIGHT NOT NEED JQUERY PLUGINS 不依赖 jQuery 的 js 插件。

awesome-nodejs

Libraries.io 各种语言的库

OniUI 去哪儿网做的一套基于Avalon的框架

常用的移动端框架

zepto.js

语法与jquery几乎一样,会jquery基本会zepto~

最新版本已经更新到1.16

iscroll.js

解决页面不支持弹性滚动,不支持fixed引起的问题~

实现下拉刷新,滑屏,缩放等功能~

最新版本已经更新到5.0

underscore.js

笔者没用过,不过听说好用,推荐给大家~

该库提供了一整套函数式编程的实用功能,但是没有扩展任何JavaScript内置对象。

最新版本已经更新到1.8.2

滑屏框架

适合上下滑屏、左右滑屏等滑屏切换页面的效果

slip.js

iSlider.js

fullpage.js

swiper.js

flex布局

flex布局目前可使用在移动中,并非所有的语法都全兼容,效果良好~

1.flavr—超级漂亮的jQuery扁平弹出对话框     

2.轻量级触摸响应滑块插件JQuery lightSlider      

3.带37种3D动画特效的跨浏览器CSS3动画框架       

4.jquery整屏滚动插件Scrollify        

5.jquery旋转木马插件SLICK         

6.jquery文字动画插件LetterFX          

7.jquery文本翻转插件Wodry.js       

8.jquery通知插件toastr       

9.jQuery滚动执行动画插件FadeThis      

10.jquery表单验证插件Bootstrap Validator       

11.jCountdown倒计时插件jQuery           

12.iCheck不一样的checkbok         

13.Owl Carousel强大的响应式jQuery焦点图轮播插件   

14.magic-带64种动画效果的CSS3动画库     

15.jQuery实时搜索插件-HideSeek       

16.bootstrap modal对话框             

17.一款模拟CSS3动画的js插件-move.js              

18.可替代CSS3 transition和transform的jQuery插件          

19.基于bootstrap的jQuery多功能模态对话框插件

20.带CSS3过渡效果的js模态窗口插件        

21.支持移动触摸设备的简洁js幻灯片插件

22.jQuery轻量级响应式扁平风格tabs选项卡插件

23.jQuery轻量级响应式Tooltip插件

24.jQuery简单且功能强大的图片剪裁插件

25.带CSS3动画过渡效果的jQuery模态窗口插件

26.中国省市区地址三级联动jQuery插件

27.移动端优先且支持jQuery和Zepto的模态对话框插件

28.jQuery简单实用的tooltip插件

29.带CSS3过渡动画效果的jQuery Tabs选项卡插件

30.x0popup-纯js弹出对话框插件

31.WOW.js-元素在页面滚动时展示CSS3动画JS插件

32.Windows8样式的消息提示框jQuery插件

33.jQuery星级评分插件

34.fsBanner-实用的网站响应式Banner手风琴插件

35.draggabilly-功能强大的拖动拖拽元素插件

36.验证插件vali.js

37.响应式jQuery图片放大镜插件magnificent.js

38.可快速生成各种阴影效果的jQuery插件

39.基于jquery的非常逼真的全屏下雪效果

40.纯文本Loading加载指示器特效