http://bbs.it-home.org/thread-46291-1-1.html

摘要(Abstract)

更新记录

  • 更正打开控制台的快捷键为Ctrl + `
  • 更正全局替换的快捷键为Ctrl + Alt + Enter

前言(Prologue)

编辑器的选择(Editor Choices)

  • 跨平台:Vim和Sublime Text均为跨平台编辑器(在Linux、OS X和Windows下均可使用)。作为一个程序员,切换系统是常有的事情,为了减少重复学习,使用一个跨平台的编辑器是很有必要的。
  • 可扩展:Vim和Sublime Text都是可扩展的(Extensible),并包含大量实用插件,我们可以通过安装自己领域的插件来成倍提高工作效率。
  • 互补:Vim和Sublime Text分别是命令行环境(CLI)和图形界面环境(GUI)下的最佳选择,同时使用两者会大大提高工作效率。

我是一名非常典型的程序员:平时工作主要在Linux环境下使用Java和Python,偶尔会用HTML+CSS+JavaScript编写网页;业余时会在Windows环境编写一些C#程序(包括控制台程序(Console Application)和移动应用(Mobile App),也会玩一些非主流语言(比如Haskell,ML和Ruby等)以拓展见识。

本文风格(Writing Style)

受益于K&R C的写作风格,我倾向于以实际案例来讲解Sublime Text的功能,所以本文中的例子均源于我在实际开发时遇到的问题。

编辑器(Editor) vs 集成开发环境(Integrated Development Environment,下文简称IDE)

  • 编辑器面向无语义的纯文本,不涉及领域逻辑,因此速度快体积小,适合编写单独的配置文件和动态语言脚本(Shell、Python和Ruby等)。
  • IDE面向有语义的代码,会涉及到大量领域逻辑,因此速度偏慢体积庞大,适合编写静态语言项目(Java、C++和C#等)。

前言到此结束,下面进入正题。

安装(Installation)

注意在安装时勾选Add to explorer context menu,这样在右键单击文件时就可以直接使用Sublime Text打开。

添加Sublime Text到环境变量

Win + R运行sysdm.cpl打开“系统属性”。

然后在“高级”选项卡里选择“环境变量”,编辑“Path”,增加Sublime Text的安装目录(例如D:\Program Files\Sublime Text 3)。

接下来你就可以在命令行里面利用subl命令直接使用Sublime Text了:

1
2
3
[/code]
subl file    :: 使用Sublime Text打开file文件
subl folder  :: 使用Sublime Text打开folder文件夹
subl .       :: 使用Sublime Text当前文件夹[/code]

前文提到Sublime Text支持大量插件,如何找到并管理这些插件就成了一个问题,Package Control正是为了解决这个问题而出现的,利用它我们可以很方便的浏览、安装和卸载Sublime Text中的插件。

  • 使用Ctrl + `打开Sublime Text控制台。
  • 将下面的代码粘贴到控制台里:
1
[/code]
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://sublime.wbond.net/' + 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)[/code]
  • 等待Package Control安装完成。之后使用

Ctrl + Shift + P

  • 打开命令板,输入

PC

  • 应出现Package Control:

成功安装Package Control之后,我们就可以方便的安装使用Sublime Text的各种插件:

购买(Purchase)

Sublime Text是一个收费闭源软件,这在一定程度上成为了我支持Sublime Text的理由(我心中的软件靠谱程度:免费开源 << 免费闭源 < 收费开源 < 收费闭源):在这里购买。

(UNREGISTERED)。(在高频操作下,一般20分钟提示一次,个人认为算是很厚道了)

也许不少人会觉着Sublime Text 70刀的价格太贵,但相比它的功能和带来的效率提升,70刀真的不值一提,如果你不方便使用Paypal付款可以邮件联系我,你支付宝给我打款然后我帮你付款,价格按当日汇率折算(450元左右)。

概览(Tour)

Sublime Text的界面如下:

  • 标签(Tab):无需介绍。
  • 编辑区(Editing Area):无需介绍。
  • 侧栏(Side Bar):包含当前打开的文件以及文件夹视图。
  • 缩略图(Minimap):如其名。
  • 命令板(Command Palette):Sublime Text的操作中心,它使得我们基本可以脱离鼠标和菜单栏进行操作。
  • 控制台(Console):使用Ctrl + `调出,它既是一个标准的Python REPL,也可以直接对Sublime Text进行配置。
  • 状态栏(Status Bar):显示当前行号、当前语言和Tab格式等信息。

与其他GUI环境下的编辑器不同,Sublime Text并没有一个专门的配置界面,与之相反,Sublime Text使用JSON配置文件,例如:

1
2
3
4
[/code]
{
  "font_size": 12,
  "highlight_line": true,
}[/code]

JSON配置文件的引入简化了Sublime Text的界面,但也使得配置变的复杂,一般我会到这里查看可用的Sublime Text配置。

编辑(Editing)

基本编辑(Basic Editing)

↑↓←→就是↑↓←→,不是KJHL,(没错我就是在吐槽Vim,尼玛设成WSAD也比这个强啊),粘贴剪切复制均和系统一致。

Ctrl + Enter在当前行下面新增一行然后跳至该行;Ctrl + Shift + Enter在当前行上面增加一行并跳至该行。

Ctrl + ←/→进行逐词移动,相应的,Ctrl + Shift + ←/→进行逐词选择。

Ctrl + ↑/↓移动当前显示区域,Ctrl + Shift + ↑/↓移动当前行。

选择(Selecting)

Ctrl + D选择当前光标所在的词并高亮该词所有出现的位置,再次Ctrl + D选择该词出现的下一个位置,在多重选词的过程中,使用Ctrl + K进行跳过,使用Ctrl + U进行回退,使用Esc退出多重编辑。

Ctrl + Shift + L可以将当前选中区域打散,然后进行同时编辑:

有打散自然就有合并,Ctrl + J可以把当前选中区域合并为一行:

查找&替换(Finding&Replacing)

快速查找、标准查找和多文件查找三种类型。

快速查找&替换

Shift + ←/→或Ctrl + D选中关键字,然后F3跳到其下一个出现位置,Shift + F3跳到其上一个出现位置,此外还可以用Alt + F3选中其出现的所有位置(之后可以进行多重编辑,也就是快速替换)。

标准查找&替换

Ctrl + F调出搜索框进行搜索:

以及使用Ctrl + H进行替换:

关键字查找&替换

Enter跳至关键字当前光标的下一个位置,Shift + Enter跳至上一个位置,Alt + Enter选中其出现的所有位置(同样的,接下来可以进行快速替换)。

Alt + C切换大小写敏感(Case-sensitive)模式,Alt + W切换整字匹配(Whole matching)模式,除此之外Sublime Text还支持在选中范围内搜索(Search in selection),这个功能没有对应的快捷键,但可以通过以下配置项自动开启。

1
[/code]
"auto_find_in_selection": true[/code]

Ctrl + H进行标准替换,输入替换内容后,使用Ctrl + Shift + H替换当前关键字,Ctrl + Alt + Enter替换所有匹配关键字。

正则表达式查找&替换

Alt + R切换正则匹配模式的开启/关闭。Sublime Text的使用Boost里的Perl正则表达式风格。

多文件搜索&替换

Ctrl + Shift + F开启多文件搜索&替换(注意此快捷键和搜狗输入法的简繁切换快捷键有冲突):

多文件搜索&替换默认在当前打开的文件和文件夹进行搜索/替换,我们也可以指定文件/文件夹进行搜索/替换。

Sublime Text提供了强大的跳转功能使得我们可以在不同的文件/方法/函数中无缝切换。就我的使用经验而言,目前还没有哪一款编辑器可以在这个方面超越Sublime Text。

Ctrl + P会列出当前打开的文件(或者是当前文件夹的文件),输入文件名然后Enter跳转至该文件。

EIS、EclipStupid都可以匹配EclipseIsStupid.java

跳转到符号

Ctrl + R会列出当前文件中的符号(例如类名和函数名,但无法深入到变量名),输入符号名称Enter即可以跳转到该处。此外,还可以使用F12快速跳转到当前光标所在符号的定义处(Jump to Definition)。

比较有意思的是,对于Markdown,Ctrl + R会列出其大纲,非常实用。

跳转到某行

Ctrl + G然后输入行号以跳转到指定行:

组合跳转

Ctrl + P匹配到文件后,我们可以进行后续输入以跳转到更精确的位置:

@

  • 符号跳转:输入

@symbol

  • 跳转到

symbol

  • 符号所在的位置
  • # 关键字跳转:输入#keyword跳转到keyword所在的位置
  • : 行号跳转:输入:12跳转到文件的第12行。

所以Sublime Text把Ctrl + P称之为“Go To Anything”,这个功能如此好用,以至于我认为没有其它编辑器能够超越它。

从Sublime Text的初版(1.0)到现在(3.0 3065),中文输入法(包括日文输入法)都有一个问题:输入框不跟随。

目前官方还没有修复这个bug,解决方法是安装IMESupport插件,之后重启Sublime Text问题就解决了。

文件夹(Folders)

File下Open Folder

你会发现右边多了一个侧栏,这个侧栏列出了当前打开的文件和文件夹的文件,使用Ctrl + K, Ctrl + B显示或隐藏侧栏,使用Ctrl + P快速跳转到文件夹里的文件。

窗口&标签(Windows & Tabs)

窗口(Window)

Ctrl + Shift + N创建一个新窗口(该快捷键再次和搜狗输入法快捷键冲突,个人建议禁用所有搜狗输入法快捷键)。

Ctrl + W关闭该窗口。

使用Ctrl + N在当前窗口创建一个新标签,Ctrl + W关闭当前标签,Ctrl + Shift + T恢复刚刚关闭的标签。

Alt + Shift + 2进行左右分屏,Alt + Shift + 8进行上下分屏,Alt + Shift + 5进行上下左右分屏(即分为四屏)。

分屏之后,使用Ctrl + 数字键跳转到指定屏,使用Ctrl + Shift + 数字键将当前屏移动到指定屏。例如,Ctrl + 1会跳转到1屏,而Ctrl + Shift + 2会将当前屏移动到2屏。

Sublime Text有两种全屏模式:普通全屏和无干扰全屏。

F11切换普通全屏:

Shift + F11切换无干扰全屏:

风格(Styles)

Notepad++默认界面

Sublime Text默认界面

所以在用过Sublime Text之后,我立刻就卸掉了Notepad++。

Monokai Bright,这两者的搭配已经很不错了,不过我们还可以做得更好:接下来我将会展示如何通过设置偏好项和添加自定义风格/主题使得Sublime Text更加Stylish。

下面是我个人使用的设置项。

1
2
3
4
5
6 7 8 9 [/code] 
// 设置Sans-serif(无衬线)等宽字体,以便阅读
"font_face": "YaHei Consolas Hybrid",
"font_size": 12,
// 使光标闪动更加柔和
"caret_style": "phase", // 高亮当前行 "highlight_line": true, // 高亮有修改的标签 "highlight_modified_tabs": true,[/code]

Sublime Text有大量第三方主题:[https://sublime.wbond.net/browse/labels/theme],这里我给出几个个人感觉不错的主题:

colorsublime包含了大量Sublime Text配色方案,并支持在线预览,配色方案的安装教程在这里,恕不赘述。

1
2
[/code]
"theme": "Nexus.sublime-theme",
"color_scheme": "Packages/Theme - Flatland/Flatland Dark.tmTheme",[/code]

编码(Coding)

良好实践(Good Practices)

1
2
3
4
5
6 7 8 9 10 11 12 [/code] 
// 设置tab的大小为2
"tab_size": 2,
// 使用空格代替tab
"translate_tabs_to_spaces": true,
// 添加行宽标尺 "rulers": [80, 100], // 显示空白字符 "draw_white_space": "all", // 保存时自动去除行末空白 "trim_trailing_white_space_on_save": true, // 保存时自动增加文件末尾换行 "ensure_newline_at_eof_on_save": true,[/code]

Sublime Text支持代码段(Code Snippet),输入代码段名称后Tab即可生成代码段。

你可以通过Package Control安装第三方代码段,也可以自己创建代码段,参考这里。

Sublime Text基本的手动格式化操作包括:Ctrl + [向左缩进,Ctrl + ]向右缩进,此外Ctrl + Shift + V可以以当前缩进粘贴代码(非常实用)。

  • HTMLBeautify:格式化HTML。
  • AutoPEP8:格式化Python代码。
  • Alignment:进行智能对齐。

Sublime Text 支持一定的自动完成,按Tab自动补全。

括号(Brackets)

Ctrl + M可以快速的在起始括号和结尾括号间切换,Ctrl + Shift + M则可以快速选择括号间的内容,对于缩进型语言(例如Python)则可以使用Ctrl + Shift + J

此外,我使用BracketHighlighter插件以高亮显示配对括号以及当前光标所在区域,效果如下:

命令行(Command Line)

其它(Miscellaneous)

下面是一些可能有用但我很少用到的功能:

  • 宏(Macro):Sublime Text支持录制宏,但我在实际工作中并未发现宏有多大用处。
  • 其它平台(Other Platforms):本文只介绍了Windows平台上Sublime Text的使用,不过Linux和OS X上Sublime Text的使用方式和Windows差别不大,只是在快捷键上有所差异,请参考Windows/Linux快捷键和OS X快捷键。
  • 项目(Projects):Sublime Text支持简单的项目管理,但我一般只用到文件夹。
  • Vim模式(Vintage):Sublime Text自带Vim模式。
  • 构建(Build):通过配置,Sublime Text可以进行源码构建。
  • 调试(Debug):通过安装插件,Sublime Text可以对代码进行调试。

快捷键列表(Shortcuts Cheatsheet)

通用(General)

↑↓←→

  • :上下左右移动光标,注意不是不是

KJHL

  • Alt:调出菜单
  • Ctrl + Shift + P:调出命令板(Command Palette)
  • Ctrl + `:调出控制台
  • Ctrl + Enter:在当前行下面新增一行然后跳至该行
  • Ctrl + Shift + Enter:在当前行上面增加一行并跳至该行
  • Ctrl + ←/→:进行逐词移动
  • Ctrl + Shift + ←/→进行逐词选择
  • Ctrl + ↑/↓移动当前显示区域
  • Ctrl + Shift + ↑/↓移动当前行
  • Ctrl + D:选择当前光标所在的词并高亮该词所有出现的位置,再次Ctrl + D选择该词出现的下一个位置,在多重选词的过程中,使用Ctrl + K进行跳过,使用Ctrl + U进行回退,使用Esc退出多重编辑
  • Ctrl + Shift + L:将当前选中区域打散
  • Ctrl + J:把当前选中区域合并为一行
  • Ctrl + M:在起始括号和结尾括号间切换
  • Ctrl + Shift + M:快速选择括号间的内容
  • Ctrl + Shift + J:快速选择同缩进的内容
  • Ctrl + Shift + Space:快速选择当前作用域(Scope)的内容

查找&替换(Finding&Replacing)

F3

  • :跳至当前关键字下一个位置
  • Shift + F3:跳到当前关键字上一个位置
  • Alt + F3:选中当前关键字出现的所有位置
  • Ctrl + F/H:进行标准查找/替换,之后:
    • Alt + C:切换大小写敏感(Case-sensitive)模式
    • Alt + W:切换整字匹配(Whole matching)模式
    • Alt + R:切换正则匹配(Regex matching)模式
    • Ctrl + Shift + H:替换当前关键字
    • Ctrl + Alt + Enter:替换所有关键字匹配
  • Ctrl + Shift + F:多文件搜索&替换
  • Ctrl + P:跳转到指定文件,输入文件名后可以:

    • @ 符号跳转:输入@symbol跳转到symbol符号所在的位置
    • # 关键字跳转:输入#keyword跳转到keyword所在的位置
    • : 行号跳转:输入:12跳转到文件的第12行。
  • Ctrl + R:跳转到指定符号
  • Ctrl + G:跳转到指定行号
  • Ctrl + Shift + N:创建一个新窗口
  • Ctrl + N:在当前窗口创建一个新标签
  • Ctrl + W:关闭当前标签,当窗口内没有标签时会关闭该窗口
  • Ctrl + Shift + T:恢复刚刚关闭的标签
  • F11:切换普通全屏
  • Shift + F11:切换无干扰全屏
  • Alt + Shift + 2:进行左右分屏
  • Alt + Shift + 8:进行上下分屏
  • Alt + Shift + 5:进行上下左右分屏
  • 分屏之后,使用Ctrl + 数字键跳转到指定屏,使用Ctrl + Shift + 数字键将当前屏移动到指定屏

延伸阅读(Further Reading)

  • Mastering Sublime Text:我读过的唯一一本关于Sublime Text的书籍,书中介绍的插件很实用,但对编辑技巧介绍不全。
  • Instant Sublime Text Starter:另外一本关于Sublime Text的书,我没有读过。
  • 官方文档:http://www.sublimetext.com/docs/3/
  • 官方论坛:http://www.sublimetext.com/forum/
  • Stack Overflow的Sublime Text频道:
    • http://stackoverflow.com/questions/tagged/sublimetext
    • http://stackoverflow.com/questions/tagged/sublimetext2
    • http://stackoverflow.com/questions/tagged/sublimetext3
  • 非官方文档:http://sublime-text-unofficial-documentation.readthedocs.org/ 甚至比官方文档还要全面!
  • Package Control:https://sublime.wbond.net/ 大量的Sublime Text插件和主题。
  • Getting Started with SublimeText:https://www.youtube.com/watch?v=04gKiTiRlq8
  • Sublime Text Pefect Workflow:https://www.youtube.com/watch?v=bpEp0ePIOEM&list=PLuwqxbvf3olpLsnFvo06gbrkcEB5o7K0g

转载于:https://www.cnblogs.com/Areas/p/5687715.html

[工具] Sublime Text 使用指南相关推荐

  1. sublime text全程指南【转载】

    前言(Prologue) Sublime Text是一款跨平台代码编辑器(Code Editor),从最初的Sublime Text 1.0,到现在的Sublime Text 3.0,Sublime ...

  2. 神级代码编辑器 Sublime Text 全程指南

    转载来自[http://mdsa.51cto.com/art/201507/484183_all.htm#topx] 摘要(Abstract) 本文系统全面的介绍了Sublime Text,旨在成为最 ...

  3. Sublime Text 全程指南

    为什么80%的码农都做不了架构师?>>>    安装(Installation) Sublime Text 官方网站 提供了Sublime Text各系统各版本的下载,目前Subli ...

  4. 前端使用工具sublime text 3下载

    在前端编程中,编写工具是少不了的.在学校的时候,老师刚带你入门的时候,教我们的是dw,因为里面有很多插件,直接拖拉也可以实现简单的界面, 但是,在你真正编写一个项目时,会发现dw太冗余了,很多的程序员 ...

  5. 工具-Sublime Text:便捷设置 小三角

    记录,解决一个使用Sublime Text的小困扰. 使用Sublime Text插件Pretty Json很棒,终于不用复制粘贴到网页看json了.但是左边的小三角想要一直保持显示.Sublime ...

  6. Sublime Text 全程图文指引

    From(Sublime Text 全程指南):http://zh.lucida.me/blog/sublime-text-complete-guide From(Sublime Text 3 全程详 ...

  7. Sublime Text 2 VS Vim

    说说我的开发工具Sublime Text 2和对Vim的研究 设置Sublime为VIM模式 Sublime Text 2 入门及技巧 sublime text2 使用技巧心得总结 转载于:https ...

  8. Sublime text 入门学习资源篇及其基本使用方法

    Sublime text 学习资源篇 史上最性感的编辑器-sublimetext,插件, 学习资源 官网 http://www.sublimetext.com/ 插件 https://packagec ...

  9. Ubuntu安装配置06|安装配置文本编辑器Sublime Text

    在 Linux系统中直接使用命令行vim命令进行文本编辑往往没有那么顺手,这里推荐一款丝滑好用的文本编辑工具Sublime Text,能极大地提高工作效率.具体安装配置方法如下: 下载安装文件 下载L ...

  10. 【工具使用篇】Sublime Text 3 全程详细图文使用教程

    一. 前言 使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知.最初也是不知道从何下手,满世界地查找资料,但能查阅到的资料,苦于它们的零碎.片面,不够系统 ...

最新文章

  1. spark编程基础--2.3面向对象编程基础
  2. zabbix mysql 8g优化_Zabbix分区优化
  3. 支持向量机 (SVM)分类器原理分析与基本应用
  4. Active Record 数据验证
  5. Springboot+多线程+等待获取执行结果
  6. ubuntu14安装火狐浏览器(firefox)中国版
  7. STM8L 低功耗模式说明
  8. 【设计模式从青铜到王者】第八篇:创建型模式之建造者模式(BuilderPattern)
  9. 分段函数的期望和方差_2020考研数学一大纲
  10. Android视频教程基础篇(现场版)_张凌华老师主讲
  11. 如何在windows 10或11下制作外接便携式可移植启动盘(以安装最新的ubuntu 22.04为例)
  12. PyInstaller 打包单文件 exe 注意事项
  13. Swoole入门指南:PHP7安装Swoole详细教程(一) 1
  14. ARM裸机开发篇3:ARM汇编语言程序设计
  15. html5 2019新年祝福页面,2019新年创意祝福语 绝对让你的心意顺利送达
  16. matlab中omg什么意思,英文聊天中omg,jk,lol,Lmao是什么意思
  17. AppStore打开后空白的解决办法
  18. Oracle 手工锁表
  19. 两个数组合并成一个数组
  20. ios8.1.2耗电情况严重的解决方法

热门文章

  1. java输出日期_java输出日期时间
  2. VTK(二)---相机外参矩阵Tcw转VTK相机,构建VR虚拟相机
  3. php面向对象代码_PHP 面向对象实现代码
  4. PageRank算法简单实现
  5. TensorFlow1.1搭建自编码网络
  6. 阿里云云计算 42 CDN中的常用名词
  7. 机器学习- 吴恩达Andrew Ng Week10 知识总结 Large scale machine learning
  8. 极客大学架构师训练营 网络通信协议 非阻塞网络I/O NIO 数据库架构原理 第16课 听课总结
  9. Operation和OperationQueue详解
  10. 中山大学计算机学院官网万海,中山大学