├── README.md
├── env
└── idt.md
└── tools
├── TotalTerminal.md
├── chrome-extension.md
├── img
├── nvm
│ ├── Thumbs.db
│ ├── git_install.png
│ ├── gitbash.png
│ ├── nvmw_1.png
│ ├── nvmw_2.png
│ ├── nvmw_3.jpg
│ ├── nvmw_4.png
│ └── nvmw_5.png
└── terminal
│ ├── 1.jpg
│ ├── 2.jpg
│ ├── 3.jpg
│ ├── 4.jpg
│ ├── 5.jpg
│ ├── 6.jpg
│ ├── 7.jpg
│ └── 8.png
├── npm.md
├── nrm.md
├── nvm.md
├── oh-my-zsh.md
└── sublimetext3.md
/README.md:
--------------------------------------------------------------------------------
1 | # Lagou-FE TEAM Tips
2 |
3 | ## IDE
4 | * [Total Terminal](./tools/TotalTerminal.md)(可根据自己习惯选择安装)
5 | * [oh-my-zsh](./tools/oh-my-zsh.md)
6 | * [nvm](./tools/nvm.md)
7 | * [npm](./tools/npm.md)
8 | * [nrm](./tools/nrm.md)
9 | * [Sublime Text 3](./tools/sublimetext3.md)
10 | * [VS Code](https://code.visualstudio.com/)
11 | * [Chrome Extension](./tools/chrome-extension.md)
12 |
13 | ## 构建工具
14 | * [idt](./env/idt.md) (已停止维护,可跳过)
15 | * [normae](https://github.com/Lagou-Frontend/normae)
16 | * [webpack](https://doc.webpack-china.org/)
17 |
18 | ## 技术
19 | * [less](http://less.bootcss.com)
20 | * [jQuery](http://www.w3school.com.cn/jquery/)
21 | * [amd](https://github.com/amdjs/amdjs-api/wiki/AMD)
22 | * [esl](https://github.com/ecomfe/esl)
23 | * [velocity](http://www.cnblogs.com/codingsilence/archive/2011/03/29/2146580.html)
24 | * [artTemplate](https://github.com/aui/artTemplate)
25 | * [vue](https://cn.vuejs.org/v2/guide/)
26 | * [bower](http://bower.io/)
27 | * [node](https://nodejs.org/zh-cn/)
28 | * [npm](https://www.npmjs.com/)
29 | * [fis3](http://fis.baidu.com/fis3/docs/beginning/intro.html)
30 | * [gulp](http://www.gulpjs.com.cn/)
31 |
--------------------------------------------------------------------------------
/env/idt.md:
--------------------------------------------------------------------------------
1 | #IDT
2 | 拉勾网前端集成开发环境
3 |
4 |
5 | * `npm install idt@1.1.16 -g` 需要注意版本号,只能安装1.1.16版本. 高版本会有兼容问题
6 |
7 | * `idt install` 安装依赖
8 |
9 | * `idt install` 再次运行将提示 `you have installed 'grunt' & 'edp'.`,可验证是否安装完成
10 |
11 | * 新安装的idt会自动install最新版本的edp,build时候不会引入依赖的common目录下的组件文件,需要手动更新如下版本:
12 |
13 | > edp@1.0.1 /usr/local/lib/node_modules/edp
14 |
15 | > Builtin Commands:
16 |
17 | > edp-config (1.0.2)
18 |
19 | > edp-core (1.0.28)
20 |
21 | > edp-build (1.0.14)
22 |
23 | * `idt ws start` 启动服务
24 |
25 | * `idt build` 发布资源
26 |
27 | * 详细请参考:[idt README](https://github.com/Lagou-Frontend/idt)
28 |
29 | ### [回导航页](../README.md)
30 |
--------------------------------------------------------------------------------
/tools/TotalTerminal.md:
--------------------------------------------------------------------------------
1 | # TotalTerminal安装及配置
2 |
3 | ## 安装
4 |
5 | * 下载 `http://downloads-2.binaryage.com/TotalTerminal-1.5.4.dmg`
6 | * 安装过程
7 |
8 | 选择pkg文件进行安装
9 |
10 | 
11 |
12 | 点击继续
13 |
14 | 
15 |
16 | 点击安装
17 |
18 | 
19 |
20 | 输入密码
21 |
22 | 
23 |
24 | 安装完成
25 |
26 | 
27 |
28 | 设置自动更新
29 |
30 | 
31 |
32 | ## 配置
33 |
34 | 1. `CMD + ,` 进入设置界面
35 | 2. 通用标签下 修改文件新建窗口为Homebrew(这个仅仅是个人爱好问题)
36 | 3. 描述文件标签下 将Homebrew设置为默认
37 | 4. 对文本的字体及光标等样式进行个性化设置
38 | 5. shell小标签下 设置当shell退出时 关闭窗口
39 | 6. TotalTerminal标签下 点选 如下配置
40 |
41 | 
42 | 
43 |
44 | ## 快捷键
45 |
46 | `Control + ~` 唤醒命令行
47 |
48 | ### [回导航页](../README.md)
49 |
--------------------------------------------------------------------------------
/tools/chrome-extension.md:
--------------------------------------------------------------------------------
1 | # Chrome Extension
2 |
3 | ## 前端开发相关
4 |
5 | ### [FEHelper](https://chrome.google.com/webstore/detail/web%E5%89%8D%E7%AB%AF%E5%8A%A9%E6%89%8Bfehelper/pkgccpejnmalmdinmhkkfafefagiiiad?hl=zh-CN)
6 | 提供代码美化,代码压缩,JSON接口自动格式化查看,字符串编解码,图片Base64编码,二维码生成器,Tracker(Javascript嗅探器),时间(戳)转换工具,正则表达式工具,页面取色工具,编码规范检测,页面性能检测等多项功能。
7 |
8 | ### [Postman - REST Client shortcut](https://chrome.google.com/webstore/detail/postman-rest-client-short/mkhojklkhkdaghjjfdnphfphiaiohkef)
9 | 用来模拟包括get/post/put/delete等各种http请求的扩展,可用来非常方便的测试API接口,并且支持将请求分组记录在Collection中保存以及导入导出。
10 |
11 | ### [Postman](https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop)
12 | 是Postman - REST Client shortcut的WebApp版本,界面更好看,但是需要注册账号,而且据我测试不能像扩展版本一样和浏览器共享cookie。
13 |
14 | ### [Dimensions](https://chrome.google.com/webstore/detail/dimensions/baocaagndhipibgklemoalmkljaimfdj)
15 | 用来测量元素尺寸边距的扩展,我就不说我以前是用QQ截图来量的了...
16 |
17 | ### [JavaScript Errors Notifier](https://chrome.google.com/webstore/detail/javascript-errors-notifie/jafmfknfnkoekkdocjiaipcnmkklaajd)
18 | 页面脚本报错时,这个扩展会在浏览器地址栏右侧给出红色感叹号的提示,这样不用打开console也能知道页面脚本报错了。
19 |
20 | ### [Octotree](https://chrome.google.com/webstore/detail/octotree/bkhaagjahfmjljalopjnoealnfndnagc?hl=zh-CN)
21 | 这个扩展可以将Github上的项目结构按照树形展示出来,并且可以很方便的进行跳转预览以及下载。
22 |
23 | ### [BuiltWith Technology Profiler](https://chrome.google.com/webstore/detail/builtwith-technology-prof/dapjbgnjinbpoindlpdmhochffioedbn)
24 | 这个扩展用来查看页面应用的相关技术,包括后端技术,服务器,前端框架/库等信息。
25 |
26 | ### [Axure RP Extension for Chrome](https://chrome.google.com/webstore/detail/axure-rp-extension-for-ch/dogkpdfcklifaemcdfbildhcofnopogp)
27 | 支持Chrome中查看原型文件的扩展。
28 |
29 | ## 日常使用相关
30 |
31 | ### [One Tab](https://chrome.google.com/webstore/detail/onetab/chphlpgkkbolifaimnlloiipkdnihall)
32 | 由于Chrome浏览器每一个Tab对应一个进程,非常占用内存,这个插件可以让所有Tab都通过一个进程打开,大大降低了Chrome的内存占用情况,本人乞丐版macbookpro表示看到这个扩展感动的想哭。
33 |
34 | ### [Ad Block](https://chrome.google.com/webstore/detail/adblock/gighmmpiobklfepjocnamgkkbiglidom)
35 | 屏蔽广告的扩展,不多说了。
36 |
37 | ### [Infinity](https://chrome.google.com/webstore/detail/infinity-new-tab/dbfmnekepjoapopniengjbcpnbljalfg)
38 | 非常漂亮的新标签页扩展,可以自定义标签页图标,背景图,还提供了天气、待办事项等小功能。
39 |
40 | ### [Vimium](https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb)
41 | 这个插件可以模拟*nux中vim编辑器操作方式来操作Chrome,通过它可以完全脱离鼠标触控板来浏览页面,用来装那么一下是极好的,对于非vimer掌握需要花费点功夫。
42 |
--------------------------------------------------------------------------------
/tools/img/nvm/Thumbs.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/Thumbs.db
--------------------------------------------------------------------------------
/tools/img/nvm/git_install.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/git_install.png
--------------------------------------------------------------------------------
/tools/img/nvm/gitbash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/gitbash.png
--------------------------------------------------------------------------------
/tools/img/nvm/nvmw_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/nvmw_1.png
--------------------------------------------------------------------------------
/tools/img/nvm/nvmw_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/nvmw_2.png
--------------------------------------------------------------------------------
/tools/img/nvm/nvmw_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/nvmw_3.jpg
--------------------------------------------------------------------------------
/tools/img/nvm/nvmw_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/nvmw_4.png
--------------------------------------------------------------------------------
/tools/img/nvm/nvmw_5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/nvm/nvmw_5.png
--------------------------------------------------------------------------------
/tools/img/terminal/1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/1.jpg
--------------------------------------------------------------------------------
/tools/img/terminal/2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/2.jpg
--------------------------------------------------------------------------------
/tools/img/terminal/3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/3.jpg
--------------------------------------------------------------------------------
/tools/img/terminal/4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/4.jpg
--------------------------------------------------------------------------------
/tools/img/terminal/5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/5.jpg
--------------------------------------------------------------------------------
/tools/img/terminal/6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/6.jpg
--------------------------------------------------------------------------------
/tools/img/terminal/7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/7.jpg
--------------------------------------------------------------------------------
/tools/img/terminal/8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lagou-Frontend/tips/af574bbcd096eed4bbfd8eebe40d5fdf2ad17759/tools/img/terminal/8.png
--------------------------------------------------------------------------------
/tools/npm.md:
--------------------------------------------------------------------------------
1 | # npm(node package manager - node包管理工具)
2 |
3 | 安装node时会自动安装npm,可以在[npm官网](https://www.npmjs.com/)上学习用法,查找node模块以及查看模块相关信息。
4 |
5 | ## 常用命令
6 |
7 | 以gulp为例:
8 |
9 | * `npm init` 创建package.json文件,如果此时node_modules下已经存在模块,文件创建成功后会自动把模块添加到devDependencies属性中
10 | * `npm install gulp` 安装模块
11 | * `npm install gulp --save` 安装模块并将依赖关系添加到dependencies属性中
12 | * `npm install gulp --save-dev` 安装模块并将依赖关系添加到devDependencies属性中
13 | * `npm install gulp@3.9.0` 安装指定版本模块
14 | * `npm install gulp -g` 全局安装模块,可以在shell中直接使用gulp命令
15 | * `npm uninstall gulp` 卸载模块
16 | * `npm update gulp` 更新模块
17 | * `npm dedup` 去除重复依赖,让node_modules下的依赖关系扁平化,只会操作package.json文件中dependencies属性声明的依赖,在使用browserify构建时,非常有用
18 | * `npm root` 查看包安装路径,即node_modules目录,添加参数`-g`可以参看全局包安装路径
19 | * `npm view gulp` 查看模块的相关信息
20 | * `npm adduser` 在npm上注册后,使用该命令登陆
21 | * `npm publish` 发布模块,不允许和已发布的模块同名,每次发布,package.json中的版本号必须更新
22 | * `npm unpublish` 删除已发布的模块
23 | * `npm link gulp` 将本地安装或者开发的模块link到全局,像全局安装的模块一样在任意处执行命令
24 | * `npm unlink gulp` 取消本地模块的全局link
25 | * `npm run test` 可直接在模块的根目录执行package.json文件中scripts属性所声明的命令的别名
26 |
27 | ## 前端包管理
28 |
29 | > npm is for all javascript.
30 |
31 | 通过browserify可以让npm成为类似bower/duo/spm3的前端包管理工具,browserify是可以让按照CommonJS规范书写的JS模块在浏览器端正常使用的预编译工具。
32 |
33 | * 全局安装browserify
34 |
35 | ```
36 | npm install browserify -g
37 | ```
38 | * 将main.js及其所有依赖打包压缩成bundle.js
39 |
40 | ```
41 | browserify main.js > bundle.js
42 | ```
43 | * 在打包压缩过程中在bundle.js内嵌source map,方便调试
44 |
45 | ```
46 | browserify main.js > bundle.js --debug
47 | ```
48 | * source map外置,需要额外安装exorcist模块,会在bundle.js同级目录下生成bundle.js.map
49 |
50 | ```
51 | npm install exorcist -g
52 | browserify main.js --debug | exorcist bundle.js.map > bundle.js
53 | ```
54 | * 实时编译,watchify是基于browserify封装的解决方案,基本支持了browserify的所有功能
55 |
56 | ```
57 | npm install watchify -g
58 | watchify main.js -o bundle.js
59 | ```
60 | * 按需打包,如将jQuery等基础库/框架打成一个包,其他js模块打成一个包
61 |
62 | ```
63 | npm install jquery
64 | browserify --reuqire jquery > vendor.js
65 | browserify main.js --exclude jquery > bundle.js
66 | ```
67 | * 对于不支持commonjs规范的模块可以通过[browserify-shim](https://github.com/thlorenz/browserify-shim)来处理,以jquery.colorbox.js为例
68 | * 安装browserify-shim
69 |
70 | ```
71 | npm install browserify-shim --save-dev
72 | ```
73 |
74 | * package.json中添加如下配置
75 |
76 | ```json
77 | "browser": {
78 | "jquery.colorbox": "./js/jquery.colorbox.js"
79 | },
80 | "browserify": {
81 | "transform": [ "browserify-shim" ]
82 | },
83 | "browserify-shim": {
84 | "jquery.colorbox": { "depends": [ "jquery:jQuery" ] }
85 | },
86 | ```
87 |
88 | * js中如下使用
89 |
90 | ```javascript
91 | var $ = require('jquery');
92 | require('jquery.colorbox');
93 | ```
94 | * browserify也提供了API,可以方便的在gulp中使用,具体可以查看[Gulp Recipes](https://github.com/gulpjs/gulp/tree/master/docs/recipes),另外有一份正在翻译中的[browserify handbook](https://github.com/magicdawn/browserify-handbook),也可以帮助大家尽快了解browserify
95 |
96 |
--------------------------------------------------------------------------------
/tools/nrm.md:
--------------------------------------------------------------------------------
1 | # nrm(npm registry manager - npm源管理工具)
2 |
3 | ## 安装及使用
4 |
5 | * `npm install nrm -g`
6 | * `nrm ls`
7 | * `nrm test`
8 | * `nrm use ***` 选择网速最快的
9 |
10 |
11 | ### [回导航页](../README.md)
--------------------------------------------------------------------------------
/tools/nvm.md:
--------------------------------------------------------------------------------
1 | # nvm(node version manager - node版本管理工具)
2 |
3 | 通过该工具可以在同一台计算机上安装node的多个版本,并可以方便地在不同版本切换,可单独安装,也可通过npm安装,这里以单独安装为例。
4 |
5 | ## Mac
6 |
7 | * 安装nvm
8 |
9 | ```
10 | curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
11 | ```
12 | * 添加全局命令,在 `~/.zshrc`中,添加 `source ~/.nvm/nvm.sh`
13 |
14 | ```
15 | vi ~/.zshrc
16 | ```
17 | * 安装node
18 |
19 | ```
20 | nvm install v4.8.4
21 | nvm install v0.12.7
22 | ```
23 | * 测试node是否安装成功
24 |
25 | ```
26 | node -v
27 | ```
28 | * 设置nvm默认node版本
29 |
30 | ```
31 | nvm alias default 4.8.4
32 | nvm alias stable default
33 | ```
34 | * 查看node安装路径
35 |
36 | ```
37 | which node
38 | ```
39 |
40 | ## Windows
41 |
42 | windows中可以通过安装nvmw或者nvm for Windows来完成同样的功能。
43 |
44 | ### nvmw
45 | * 安装[git for windows](https://github.com/git-for-windows/git/releases/tag/v2.5.3.windows.1),如果想在cmd中也使用git命令,请在如下图所示的安装选择中选择第二个:
46 | 
47 | * 其中的git bash不只为git提供了命令行工具,也提供了*nix系统里shell脚本所包含的命令,如ls,rm等。
48 | 
49 | * 获取环境变量"%HOMEDRIVE%和%HOMEPATH%,cmd中 执行`set`:
50 | 
51 | * 安装nvmw,cmd执行:
52 | `git clone git://github.com/hakobera/nvmw.git "%HOMEDRIVE%%HOMEPATH%\.nvmw"`
53 | 
54 | * 配置Path环境变量,使nvmw成为全局命令,试过github上说的通过命令行来添加Path环境变量,但是cmd窗口关闭后,就失效,改而通过控制面板设置:
55 | 
56 | 
57 | * 查看相关命令 `nvmw -h`
58 |
59 | 
60 | * 通过以上方法安装的nvmw无法在git bash中使用,无论是在~/.bashrc中添加source还是在Path中添加环境变量,暂时没有找到方法解决。
61 | * node/io/npm源指向问题请参考相关[README](https://github.com/hakobera/nvmw#mirror-nodejsiojsnpm-dist)
62 |
63 | ### nvm for Windows
64 | * nvm for Windows提供了[安装程序](https://github.com/coreybutler/nvm-windows/releases),可以直接安装,省去配置环境变量的麻烦步骤
65 | * 安装成功后,在cmd中执行`nvm install 0.12.7`和`nvm use 0.12.7`来安装node
66 | * 以上命令在git bash中执行无效,但是cmd安装好node后,就可以在git bash中使用node/npm相关命令了
67 |
68 | ### [回导航页](../README.md)
69 |
--------------------------------------------------------------------------------
/tools/oh-my-zsh.md:
--------------------------------------------------------------------------------
1 | # oh-my-zsh
2 |
3 | ## 安装及配置
4 | * 终端执行`curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh`安装oh-my-zsh
5 | * mac默认的shell是bash,需要执行`chsh -s /bin/zsh`切换至zsh,输入密码,命令执行成功后,重启终端
6 | * 此时中端的命令提示符,已由用户名修改为`~`,或者在终端执行`echo $SHELL`,输出应该为`/bin/zsh`
7 | * 配置文件路径为:`~/.zshrc`
8 |
9 | ## Why we use zsh?
10 |
11 | * [oh-my-zsh介绍](http://zhuanlan.zhihu.com/mactalk/19556676)
12 | * [autojump介绍](https://linux.cn/article-3401-1.html)
13 |
14 | ### [回导航页](../README.md)
15 |
--------------------------------------------------------------------------------
/tools/sublimetext3.md:
--------------------------------------------------------------------------------
1 | # Sublime Text 3
2 |
3 | ## 安装
4 |
5 | 进入[下载地址](http://www.sublimetext.com/3)选择相应版本下载,正常安装即可。
6 |
7 |
8 | ## 配置
9 | `Sublime Text` -> `Preferences` -> `Settings - User`,推荐一些配置:
10 |
11 | * `"translate_tabs_to_spaces": true` 开启自动将Tab替换为空格
12 | * `"trim_trailing_white_space_on_save": true` 开启自动删除行末空格
13 | * `"ensure_newline_at_eof_on_save": true` 开启保存文件时在文件末尾保留一个空行
14 | * `"save_on_focus_lost": true` 开启文件失去焦点立即保存
15 | * `"font_size": 18` 设置字体大小,默认10
16 | * `"highlight_line": true` 开启光标所在行高亮
17 | * `"bold_folder_labels": true` 开启侧边栏文件夹名显示加粗
18 |
19 | ## 插件
20 | 可以到[官网](https://packagecontrol.io/)查找自己喜欢的插件,下面推荐一下插件,欢迎大家编辑补充
21 |
22 | * Package Control
23 | sublime包安装工具,安装方式:
24 | * `view` -> `show console`
25 | * 输入下方命令:
26 | ```
27 | import urllib.request,os; pf = 'PackageControl.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())
28 | ```
29 | * 等待安装完成即可
30 |
31 | * All Autocomplete
32 | 扩展了sublime只在当前文件进行搜索匹配的自动补全提示,会在所有打开的文件中搜索匹配自动补全提示
33 |
34 | * AutoFileName
35 | 自动补全提示文件名字
36 |
37 | * Babel
38 | es6语法高亮插件,具体设置参考[这里](https://github.com/babel/babel-sublime),可配合[Oceanic Next Color Scheme](https://github.com/voronianski/oceanic-next-color-scheme)主题。
39 |
40 | * Bufferscroll
41 | 保存折叠行
42 |
43 | * Clipboard Manager
44 | 可以查看剪贴板历史纪录,`Sublime Text` -> `Preferences` -> `Key Bindings - User`,添加以下配置
45 |
46 | ```json
47 | { "keys": ["super+c"], "command": "clipboard_manager_copy" },
48 | { "keys": ["super+x"], "command": "clipboard_manager_cut" },
49 | { "keys": ["super+v"], "command": "paste_and_indent" },
50 | { "keys": ["super+shift+v"], "command": "clipboard_manager_choose_and_paste" }
51 | ```
52 | 查看剪贴板历史纪录快捷键:`cmd` + `shift` + `v`
53 |
54 | * CSS3
55 | 更好的CSS3语法高亮支持。
56 |
57 | * CSScomb
58 | 格式化css样式;选中css样式右键选中csscomb即可,还能在usersetting中自定义css格式化规则!
59 |
60 | * compare side-by-side
61 | 文件对比,打开要对比的文件,在title处单击右键选择对比即可
62 |
63 | * DocBlockr
64 | 像java等语言的块注释,使用方法,`/**`Tab就ok
65 |
66 | * EditorConfig
67 | 跨编辑器代码静态风格配置sublime插件,配置说明请参考[这里](http://editorconfig.org/)。
68 |
69 | * Emmet
70 | Sublime Zen Coding插件,建议安装,可以用来快速编写html/css,[具体用法](http://www.w3cplus.com/tools/emmet-cheat-sheet.html)。
71 |
72 | * javascript completion
73 | javascript api自动补全插件,它相比SublimeCodeIntel的优势是
74 | 1. 轻量,只是用来补全javascript api
75 | 2. 支持es5语法
76 | 3. 有参数提示
77 | 4. 自动纠错
78 |
79 | * JavaScript & NodeJS Snippets
80 | js代码片段,快捷输入请参考[这里](https://packagecontrol.io/packages/JavaScript%20%26%20NodeJS%20Snippets)。
81 |
82 | * HTML-CSS-JS Prettify
83 | HTML/css/js/json格式化,快捷键:`cmd` + `shift` + `h`
84 |
85 | * LESS
86 | less文件代码高亮显示
87 |
88 | * Markdown Extend
89 | markdown文件高亮扩展,文件中的代码块也会相应高亮。
90 |
91 | * Markdown Preview
92 | markdown文件预览查看,编辑略卡,快捷键`cmd` + `shift` + `p`调用命令行窗口后,输入preview查找相关命令
93 |
94 | * Nodejs
95 | Nodejs API 自动补全
96 |
97 | * SideBarEnhancements
98 | 侧边栏增强工具,建议安装,为侧边栏右键菜单增加剪贴,复制,粘贴,浏览器中打开等选项
99 |
100 | * SublimeLinter
101 | Sublime代码检查工具。
102 |
103 | * SublimeLinter-eslint
104 | SublimeLinter的ESLint插件,javascript代码质量检查工具对比可以参考[这里](http://efe.baidu.com/blog/js-lints/),如何使用这个插件可以参考[这里](http://jonathancreamer.com/setup-eslint-with-es6-in-sublime-text/?utm_source=tuicool&utm_medium=referral),ESLint的Rules可以查阅[官网](http://eslint.org/docs/rules/)。
105 |
106 | * SublimeTmpl
107 | Sublime新建文件模板插件,支持快捷键新建,修改内置模板,增加自定义模版,具体可以参考[这里](http://www.fantxi.com/blog/archives/sublime-template-engine-sublimetmpl/)。
108 |
109 | * Terminal
110 | 终端快捷启动插件,快捷键:`cmd` + `shift` + `t`,会在终端直接cd到当前文件的父文件夹
111 |
112 | ## 主题
113 | 可以到[colorsublime](http://www.colorsublime.com/)里查找自己喜欢的主题。下面推荐一些有特色的主题:
114 |
115 | * [Oceanic Next Color Scheme](https://github.com/voronianski/oceanic-next-color-scheme)
116 | 支持es6/react语法高亮,需要先安装[babel-sublime](https://github.com/babel/babel-sublime)语法高亮插件。
117 |
118 | * [Material Theme for Sublime Text 3](https://github.com/equinusocio/material-theme)
119 | Google Material风格主题,同时支持Oceanic Next Color Scheme color theme,不同文件类型会有相应的精美icon。
120 |
121 | * [Spacegray](https://github.com/kkga/spacegray)
122 | 简约扁平配色看起来很舒服的主题。
123 |
124 | ## 在sublime中运行js
125 | 我们可以在浏览器的console里运行js,也可以在node的REPL里运行js,但是都不是很方便,其实在sublime里也是可以直接运行js的,能够很方便的帮助我们测试javascript api以及验证正则。
126 | 下面介绍三种在sublime里运行js的方法
127 |
128 | #### JSC
129 | JSC为Mac内置的javascript控制台程序。
130 |
131 | 1. Tools > Build System > New Build System
132 | 2. 在打开的文件中添加如下代码
133 |
134 | ``` javascript
135 | {
136 | "cmd": ["/System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc", "$file"],
137 | "selector": "source.js"
138 | }
139 | ```
140 | 3. 保存为`JSC.sublime-build`
141 | 4. Tools > Build System,选择刚才创建的`JSC`
142 | 5. 打开js文件,`cmd` + `b`
143 | 
145 |
146 | 注意用`debug()`替换`console.log()`,可支持到es5。
147 |
148 | #### Node
149 | 首先确保已安装node
150 |
151 | 1. Tools > Build System > New Build System
152 | 2. 在打开的文件中添加如下代码
153 |
154 | ``` javascript
155 | {
156 | "path": "/Users/wangjinliang/.nvm/versions/node/v4.2.3/bin",
157 | "working_dir": "${project_path:${folder}}",
158 | "selector": "source.js",
159 | "encoding": "utf-8",
160 | "shell": true,
161 | "windows": {
162 | "cmd": ["taskkill /f /im node.exe >nul 2>nul & node $file"]
163 | },
164 | "osx": {
165 | "cmd": ["killall node >/dev/null 2>&1; node $file"]
166 | },
167 | "linux": {
168 | "cmd": ["killall node >/dev/null 2>&1; node $file"]
169 | }
170 | }
171 | ```
172 | 3. 通过`which node`获取node的安装目录,添加到对应的path属性上
173 | 4. 保存为`node.sublime-build`
174 | 5. Tools > Build System,选择刚才创建的`node`
175 | 6. 打开js文件,`cmd` + `b`
176 |
177 | 对es6的支持情况视node版本而定。
178 |
179 | #### Babal 5.x
180 | 首先确保已安装node,
181 |
182 | 1. `npm install babel@5.x -g`全局安装babel命令行模块
183 | 2. Tools > Build System > New Build System
184 | 3. 在打开的文件中添加如下代码
185 |
186 | ``` javascript
187 | {
188 | "path": "/Users/wangjinliang/.nvm/versions/node/v4.2.3/bin",
189 | "working_dir": "${project_path:${folder}}",
190 | "selector": "source.js",
191 | "encoding": "utf-8",
192 | "shell": true,
193 | "windows": {
194 | "cmd": ["taskkill /f /im node.exe >nul 2>nul & babel-node $file"]
195 | },
196 | "osx": {
197 | "cmd": ["killall node >/dev/null 2>&1; babel-node $file"]
198 | },
199 | "linux": {
200 | "cmd": ["killall node >/dev/null 2>&1; babel-node $file"]
201 | }
202 | }
203 | ```
204 | 4. 通过`which node`获取node的安装目录,添加到对应的path属性上
205 | 5. 保存为`babel.sublime-build`
206 | 6. Tools > Build System,选择刚才创建的`babel`
207 | 7. 打开js文件,`cmd` + `b`
208 |
209 | 全面支持es6,以及部分es7,相比第二种直接通过node运行略慢
210 |
211 | #### Babal 6.x
212 | 与bable5.x有一些区别,请参考[这里](http://fedvic.com/2015/12/24/es6InSublime/)。
213 |
214 | ### [回导航页](../README.md)
215 |
--------------------------------------------------------------------------------