Learning Sublime Text (系统学习ST)
编辑、整理 By Xujiajun (相关视频整理 http://www.xitongxue.com/course/2)
前言
如何编辑本文?请点击这里
如何fork本文?点击右上角”Fork” 按钮.
如何发pull Requests 作出贡献? [请点击这里] (https://github.com/xujiajun/Learning-Sublime-Text/pulls)
目录导航
- 1、Why Sublime Text?
- 2、Sublime Text 安装以及简介
- 3、主题
- 4、常用命令
- 5、命令行工具
- 6、自定义配置
- 7、Package Control安装以及管理
- 8、插件安装以及使用
- 9、定制代码片段
1、Why Sublime Text?
0、高效(启动快、快键键强大)
1、扩展性强(插件丰富)
2、主题丰富
3、支持多屏、多变量操作
4、跨平台
5、不注册亦可免费使用( 有米的童靴可以支持下原作者 USD $70 )
6、支持自定义
更多介绍,请观看视频:http://www.xitongxue.com/course/2/learn#lesson/29
2、Sublime Text 安装以及简介
Sublime Text 2 下载地址:[http://www.sublimetext.com/2]
Sublime Text 3 下载地址:[http://www.sublimetext.com/3] [推荐]
更多介绍,请参看: http://www.xitongxue.com/course/2/learn#lesson/27
3、主题
安装Colorsublime-Plugin来扩展主题
0、打开ST的命令面板 ctl+shift+p (Windows/Linux) or ⇧+⌘+p (OSX)
1、选择Colorsublime: Install Theme
2、用箭头键来浏览各个主题、你可以实时看到切换的主题变化!
4、常用命令
Win/Ubuntu | Mac | 注解 |
---|---|---|
Ctrl+Shift+P: | Cmd+Shift+p | 打开命令面板 |
Ctrl+P: | Cmd+P | 搜索项目中的文件 |
Ctrl+G: | Ctrl+g | 跳转到第几行 |
Ctrl+W: | Cmd+w | 关闭当前打开文件 |
Ctrl+Shift+W: | Cmd+Shift+w | 关闭所有打开文件 |
Ctrl+Shift+V: | Cmd+Shift+v | 粘贴并格式化 |
Ctrl+D: | Cmd+d | 选择单词,重复可增加选择下一个相同的单词 |
Ctrl+L: | Cmd+l | 选择行,重复可依次增加选择下一行 |
Ctrl+Shift+L: | Cmd+Shift+l | 选择多行 |
Ctrl+Shift+Enter: | Cmd+Shift+Enter | 在当前行前插入新行 |
Ctrl+F: | Cmd+f | 查找内容 |
Ctrl+Shift+F: | Cmd+Shift+f | 查找并替换 |
Ctrl+H: | Cmd+H | 替换 |
Ctrl+R: | Cmd+r | 前往 method |
Ctrl+N: | Cmd+N | 新建窗口 |
Ctrl+K+B: | Cmd+K+B | 开关侧栏 |
Ctrl+/: | Cmd+/ | 注释当前行 |
Alt+Shift+数字: | Cmd+option+num | 分屏显示 |
Alt+数字: | Cmd+num | 切换打开第N个文件 |
Ctrl+Shift+上下键 | Cmd+control+上下键 | 可替换行 |
5、命令行工具
sudo ln -s “/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl” /usr/bin/subl
用法
运行 subl --help
Usage: subl [arguments] [files] 编辑指定的文件edit the given files
or: subl [arguments] [directories] 打开指定的目录
or: subl [arguments] - 编辑stdin
Arguments:
--project <project>: 载入指定的project
--command <command>: 运行指定的命令
-n or --new-window: 打开一个新的窗口
-a or --add: 添加文件夹到当前窗口
-w or --wait: 返回前等待文件关闭
-b or --background: 不激活该应用程序
-s or --stay: 文件关闭后保持应用程序激活状态
-h or --help: 显示帮助并退出
-v or --version: 显示版本信息并退出
如果从标准输入—wait是隐式的。 使用—stay当文件关闭是不切换到后台控制台(只与是否有等待的文件有关)。
文件名可以通过加:line或者:line:column后缀来指定打开的定位。
6、自定义配置
{
"color_scheme": "Packages/Colorsublime - Themes/Monokai.tmTheme",
"create_window_at_startup": false,
"font_size": 15,
"highlight_line": true,
"highlight_modified_tabs": true,
"ignored_packages":
[
"Vintage",
"Markdown"
],
"show_debug": true,
"show_encoding": true,
"show_full_path": true,
"translate_tabs_to_spaces": true
}
PS:分享下我的配置
7、Package Control安装以及使用
mac下opt+` 或者 菜单栏选择View > Show Console
ST3:
import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
ST2:
import urllib2,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')
8、插件安装以及使用
0、shift + cmd + p 打开命令面板
1、输入 “Package Control: Install Package” 命令或者install 关键词找到 “Package Control: Install Package”
2、输入安装插件的简写或全拼,找到后回车安装
9、定制代码片段
在编写代码的时候,有遇到反复使用的代码片段,这时候就需要复制、黏贴,大大影响效率。我们利用Sublime Text的snippet功能,就能很好的解决这一问题.
如何创建?Tools > New Snippet
会出现如下:
<snippet>
<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<!-- <tabTrigger>hello</tabTrigger> -->
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<!-- <scope>source.python</scope> -->
</snippet>
看不懂?ok我们看下例子
创建我的第一个Snippet:
<snippet>
<content><![CDATA[ 你需要插入的代码片段${1:name} ]]></content>
<!-- 可选:快捷键,利用Tab自动补全代码的功能,这里你输入superu即可触发 -->
<tabTrigger>superu</tabTrigger>
<!-- 可选:使用范围,不填写代表对所有文件有效。 -->
<scope>source.python</scope>
<!-- 可选:在snippet菜单中的显示说明(支持中文)。如果不定义,菜单则显示当前文件的文件名。 -->
<description>My first Snippet</description>
</snippet>
${1:name}表示代码插入后,光标所停留的位置,可同时插入多个。其中:name为自定义参数(可选)。
${2}表示代码插入后,按Tab键,光标会根据顺序跳转到相应位置(以此类推)。