零、sublime的优势

  1. 容易上手
  2. 支持多点编辑
  3. 包管理:Package Control
  4. 速度快
  5. 深度可订制,配置文件放github上 sublime-config
  6. 快速文件切换 cmd + p 输入文件名
  7. cmd + shift + p 打开命令面板
  8. 启用vim模式
  9. 学的是习惯技巧,sublime死了,技巧习惯可配置到其他编辑器
  10. 社区活跃

一、安装

以下操作均是在Mac环境下操作的。

1.1 下载安装

Mac下的安装,官网:http://www.sublimetext.com

brew cask install sublime-text

1.2 打开sublime

图形界面打开

按cmd + space快捷键,再输入sublime

命令行打开

# 输入subl即可,好多安装方式都会创建sublime的链接并加入到/usr/local/bin目录下
subl # 如果没有这个命令可以手动创建软链
ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl

说明

不购买,会经常弹出提示框 买个license,help-->enter license

1.3 简单使用

配置的备份与恢复

  1. 打开sublime subl
  2. 打开一个目录,打开
  3. 显示左侧目录树面板:side bar
    1. 打开命令面板:cmd + shfit + p ,输入side bar
    2. 命令快捷键:cmd + k,cmd + b
  4. 放大/减小字体:cmd + +/cmd + -

二、快捷键

2.1 常用快捷键

打开新的tab cmd + n
切换tab ctrl + tab
下一行合并到当前行 cmd + j
左/右缩进 cmd + ]/cmd + [
选择当前行 cmd + l
复制 cmd + c
粘贴 cmd + v
撤销 cmd + z
加/取消注释 cmd + /
当前行之后/前开辟一行 cmd + enter/shift + cmd + enter
块选择,进入多点编辑模式 option + 选中文本
移动粒度 right以字符为单位 alt + right以单词为单位 cmd + left/right移动到行首/尾 up/down可以上下左右移动
切换语法验证类型 cmd + shift + p 输入css ,选中Syntax:css
打开左侧目录树面板 cmd + k,cmd + b
选中光标所在位置单词,持续按则会选中下一个相同的单词 cmd + d

2.2 命令绑定到快捷键

打工命令面板(cmd + shift + p),输入key bindings,选择Key Bindings - User,输入如下内容

[
{ "keys": ["shift+tab"], "command": "reindent", "args": {"single_line": false} },
]

2.3 工作台查看命令日志

打开工作台 ctrl + `,输入 sublime.log_commands(True)

这样所有的执行记录都会在工作台上输出

三、自定制

3.1 找到sublime的配置目录

Sublime Text -> Preferences -> Browse Packages...

# 下面是具体的目录,类似于vim的.vim目录   pwd
/Users/snddfhv/Library/Application Support/Sublime Text 3/Packages/User # 该目录下有如下配置
# 快捷键绑定的配置
-rw-r--r-- 1 x staff 144B 5 10 23:26 Default (OSX).sublime-keymap
# sublime的基本配置
-rw-r--r-- 1 x staff 509B 5 10 23:35 Preferences.sublime-settings
# 扩展包的安装信息
-rw-r--r-- 1 x staff 160B 5 10 23:15 Package Control.sublime-settings

3.2 快捷键绑定配置文件

Default (OSX).sublime-keymap

[
{ "keys": ["shift+tab"], "command": "reindent", "args": {"single_line": true} },
{ "keys": ["alt+space"], "command": "auto_complete" },
]

3.3 基本配置文件

Preferences.sublime-settings

{
"color_scheme": "Packages/Color Scheme - Default/Monokai.sublime-color-scheme",
"auto_complete": true,
"auto_complete_commit_on_tab": true,
"file_exclude_patterns":
[
".DS_Store",
"*.sublime-workspace",
"*.scssc"
],
"folder_exclude_patterns":
[
".git",
"log",
"tmp/cache",
".vagrant"
],
"font_size": 16,
"ignored_packages":
[
"Vintage"
],
"line_padding_bottom": 1,
"line_padding_top": 1,
"tab_size": 2,
"theme": "Adaptive.sublime-theme",
"translate_tabs_to_spaces": true
}

其他配置说明

"line_numbers": false,      //是否显示行号
"gutter": false, //是否显示边列
"draw_centered": true, //是否居中显示
"wrap_width": 80, //换行宽度(单位:字符)
"word_wrap": true, //是否自动换行
"scroll_past_end": true //滚动能否超过结尾

3.4 配置信息备份github

https://gitee.com/yysue/sublime-config

四、安装扩展包

4.1 安装Package Control

https://packagecontrol.io/installation

上这个网站上复制一段安装脚本

打开工作台(Ctrl+`),粘贴安装脚本

可能会重启

4.2 安装扩展

安装步骤:

打开命令面板(cmd+shift+p),输入install package回车,

等待加载插件列表,输入要安装的插件名,回车

4.2.1 AdvancedNewFile

新建文件:alt+cmd+n

4.2.2 Git

先打开命令模板,再输入git 命令

在填写commit结束时,按cmd + w结束填写

4.2.3 SyncedSideBar

当前编辑的文件在左侧目录树中同步选中

4.3 扩展包的安装配置文件

Package Control.sublime-settings

{
"in_process_packages":
[
],
"installed_packages":
[
"AdvancedNewFile",
"Git",
"RailsCasts Colour Scheme",
"SyncedSideBar",
"VimModelines"
]
}

五、快速查找文件与字符串

5.1 打开一个文件

cmd + p,输入READ,回车

输入cont@aaa 方法名

输入cont:199 行号

输入cont#aa 查找字符串

5.2 查找与替换

本文件中查找:cmd + f 查找替换:cmd + alt + f

目录中查找:cmd + shift + f 下一个/上一个匹配项f4/shift + f4

跳回到上一次操作位置:ctrl + -/ctrl + shift + -

六、代码补齐

6.1 Emmet插件

安装Emmet插件,没有安装就有了?

帮助文档 https://docs.emmet.io/cheat-sheet/ https://docs.emmet.io/actions/

6.1.1 常用操作

p20 tab
m-0-auto tab
.nav tab
#nav tab
.sidebar>.nav tab
ul.nav>li*5 tab

6.1.2 wrap with abbreviation功能

选中单词,打开命令面板,输入wrap,.sidebar>.nav

6.1.3 删除标签

选中单词,打开命令面板,输入remove,回车,cmd + ',断续删除

https://codepen.io/ 在线编辑,也支持类似功能

6.2 Snippet 代码片段

tools -> Developer -> New Snippet

6.2.1 配置说明

  1. 内容 content
  2. 光标停顿位置${1:默认值} tab可在位置间切换
  3. 触发词 tabTrigger
  4. 对哪些文件有效 scope text.html.markdown
  5. 保存成jekyll-header.sublime-snippet 后缀必须是.sublime-snippet
  6. 自动保存到User目录下

Snippet的配置文件:jekyll-header.sublime-snippet

<snippet>
<content><![CDATA[
---
layout: default
title: ${1:标题}
--- ${2}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>top</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<scope>text.html.markdown</scope>
</snippet>

查看文件的scope

alt + cmd + p

6.3 Completions files 补全文件

参考:http://docs.sublimetext.info/en/latest/reference/completions.html

丰富的补全文件:https://www.sublimecodeintel.com/SublimeCodeIntel

保存文件名为all.sublime-completions

{
// completions 的设置有时候会失灵 ( Mac Yosemite + sublime3 )不行就改成 snippet 吧,那个还是一直都很好用
"scope": "text.html.markdown",
"completions":
[
{ “trigger”: "hhh", "contents": "{% highlight ${1:ruby} %\n${2}\n{% endhighlight %}}"},
{ "trigger": "l", "contents": "[${1}](${2})${3}" },
{ "trigger": "media", "contents": "![](http://media.happycasts.net/pic/${1}.png)" }
],
// "scope": "source.css",
// "completions":
// [
// { "trigger": "xxx", "contents": "xxx" },
// ]
}

6.4 tab补齐规则

设置语法 ,打开命令面板,输入 Set Synatx html

6.4.1 触发词 + tab

Setting - Default中有如下默认配置:

"tab_completion": true,

意思是打开一个文件,敲一个触发词,然后敲 tab 是能补全成一个片段的。

tab补全功能会在下面4个地方找触发词,参考这里

1. Snippets
2. API-injected completions via on_query_completions()
通过 API on_query_completions() 设置的内容,这个咱们暂时不管
3. Completions files
专门的自动补全文件,也就是 xxx.sublime-completions
4. Words in the buffer
当前文件中已经敲过的词

上面4个地方找到的触发词可能出现在补全列表上,如何触发补全列表呢?

6.4.2 触发词前缀 + alt + space

默认是ctrl + space,这与系统中切换中英文输入法冲突,改为alt + space

在keymap - User中添加如下配置:

 { "keys": ["alt+space"], "command": "auto_complete" },se

6.5 自动补全

Setting - Default中有如下默认配置:

"auto_complete": true,

功能是输入了触发词,那么不用敲 tab ,就可以显示可能的触发词了(补全列表),默认只要敲 Enter或Tab 就可以补全了。

但是,自动补全的不是在每种文件类型中都会被触发的,Settings Default 中是这样设置的

// Controls what scopes auto complete will be triggered in
"auto_complete_selector": "source - comment, meta.tag - punctuation.definition.tag.begin", // Additional situations to trigger auto complete
"auto_complete_triggers": [ {"selector": "text.html", "characters": "<"} ],

有一个问题,自动补全生效的时候,回车就不能用来换行了,怎么解决?

在setting - User中添加如下配置,默认是false:

"auto_complete_commit_on_tab": true,

这样就可以敲 tab 来补全,而 Enter 现在就可以用来输入换行了。

七、批处理任务

测试、编译、执行

http://sublime-text-unofficial-documentation.readthedocs.io/en/latest/reference/build_systems.html

7.1 chrome打开html文件

Tools -> Build System -> New Build System -> ...

保存文件名为bowse.sublime-build

{
"cmd": ["/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", "$file"],
"selector": "text.html"
}

build Tools/Build System

cmd + b

7.2 build 我的 jekyll 页面

这是参考文章的一个demo:http://happypeter.github.io/happysublime/10_build.html

八、启用vim模式

打开命令面板,输入Settings,找到基本配置文件:Preferences.sublime-settings,加入以下配置(默认情况下,会有这一项Vintage):

"ignored_packages":[],

参考

sublime速查手册的更多相关文章

  1. 《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册

    <zw版·Halcon-delphi系列原创教程> zw版-Halcon常用函数Top100中文速查手册 Halcon函数库非常庞大,v11版有1900多个算子(函数). 这个Top版,对 ...

  2. 25个有用的和方便的 WordPress 速查手册

    如果你是 WordPress 开发人员,下载一些方便的 WordPress 备忘单可以在你需要的时候快速查找.下面这个列表,我们已经列出了25个有用的和方便的 WordPress 速查手册,赶紧收藏吧 ...

  3. R之data.table速查手册

    R语言data.table速查手册 介绍 R中的data.table包提供了一个data.frame的高级版本,让你的程序做数据整型的运算速度大大的增加.data.table已经在金融,基因工程学等领 ...

  4. 25个有用和方便的 WordPress 速查手册

    如果你是一个 WordPress 编码器或开发人员,下载一些方便的 WordPress 备忘单寻找你的工作然后你在正确的地方.我们已经列出了25个有用的和方便的 WordPress 速查手册.Word ...

  5. 几个较好的SQL速查手册网址

    微软 SQL server 数据库开发手册 数据库设计 Transact-SQL 速查手册 数据库设计 MySQL 中文参考手册速查 结构化查询语言 SQL 学习手册速查 转自:http://www. ...

  6. web 开发:CSS3 常用属性——速查手册!

    web 开发:CSS3 常用属性——速查手册! CSS3 简介:http://www.runoob.com/css3/css3-intro.html 1.目录 http://caniuse.com/ ...

  7. Markdown速查手册

    之前一直使用简书做笔记,沉浸式的写作环境很棒.然而不知什么时候起,氛围愈发浮躁,软文鸡汤泛滥,离"简"字越来越远. 相比更加喜欢沉稳低调.内涵取胜的博客园.于是乎搬家! 搬家就要丢 ...

  8. Pandas速查手册中文版

    本文翻译自文章: Pandas Cheat Sheet - Python for Data Science ,同时添加了部分注解. 对于数据科学家,无论是数据分析还是数据挖掘来说,Pandas是一个非 ...

  9. SSM 项目从搭建爬坑到 CentOS 服务器部署 - 速查手册

    SSM 项目从搭建爬坑到 CentOS 服务器部署 - 速查手册 提示: (1)CSDN 博客左边有操作工具条上有文章目录 (2)SSM 指 Spring,Spring MVC,MyBatis Mav ...

随机推荐

  1. Linux内核, 编译一个自己的内核

      本文,我们将一步一步地介绍如何从源代码编译和安装一个Linux内核.需要注意的是本指导基于Ubuntu 20.04版本编译安装,其它发行版可能会有差异. 在前面文章中我们反复提到过Linux内核, ...

  2. C++ | 再探智能指针(shared_ptr 与 weak_ptr)

    上篇博客我们模拟实现了 auto_ptr 智能指针,可我们说 auto_ptr 是一种有缺陷的智能指针,并且在C++11中就已经被摈弃掉了.那么本章我们就来探索 boost库和C++11中的智能指针以 ...

  3. Socket.io+Notification实现浏览器消息推送

    前言 socket.io: 包含对websocket的封装,可实现服务端和客户端之前的通信.详情见官网(虽然是英文文档,但还是通俗易懂).Notification: Html5新特性,用于浏览器的桌面 ...

  4. Android Studio 异常以及解决方案

    1. Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVER ...

  5. java中什么叫覆盖Override?请给实例

    5.覆盖(Override) 马克-to-win:方法的覆盖(Override)是指子类重写从父类继承来的一个同名方法(参数.返回值也同). 例1.5.1-- class AAAMark_to_win ...

  6. java中如何打印规定图案? 举例说明

    9.4 print out the following pattern(打印图案). * *** ***** ******* ***** *** * 提示: 1)本题上面的图案和下面的图案是一样的.所 ...

  7. Java Web项目与Java项目的区别

    一.以下是我对Java Web项目和Java项目这两者的理解以及区别: 1.Java Web项目是基于Java EE类的:而Java项目是基于Java应用程序的. 2.Java Web项目是网页的编码 ...

  8. css3属性之filter初探

    filter属性是css不常用的一个属性,但是用好了可以给网页增色不少!ps: IE不支持此属性: img { -webkit-filter: grayscale(100%); /* Chrome, ...

  9. Unable to negotiate with xx.xxx.xxxx port 22: no matching host key type found. Their offer: ssh-rsa(解决的两种方式)

    异常问题: 下班之前升级了一下Git的版本,结果第二天过来拉取远程最新代码的时候就提示了下面的异常问题: Unable to negotiate with xx.xxx.xxxx port 22: n ...

  10. 文档——STM32F10中文参考手册

    ST官方免费的资料.进入官方,第一个就是. 大家不用在CSDN付费下载了!!!!. (https://www.stmcu.org.cn/document/list/index/category-158 ...