Sublime Text入门使用教程

article/2024/12/25 0:43:00

简介

说到最好用的编辑器,首推Sublime,感觉比notepad++胜出无数倍,支持 Windows 及 Mac 等多平台。类似于 Eclipse,IDEA,有着丰富的插件系统,完全可以满足各种编辑、开发需求。

强烈建议安装或者升级到最新版,体验不要太好。

安装

官网下载最新版,如exe安装文件。安装完是试用版,即没有破解的,破解方法:输入 license,新版本的Sublime一般不易找到可用的 license。

Sublime通过 package control来统一管理安装的插件。新版本的Sublime 3,在激活之后默认就自带package control功能,无需自己安装。实际上要安装 package control功能也是非常简单的:
打开 view-show console,打开一个类似于 terminal 的终端窗口,输入以下内容来安装 package control。

安装完成之后,关闭 sublime,重启。快捷键 Ctrl + shift + p调出插件安装小窗口,点击 install package,输入想要安装的插件,比如 gist,回车即可。

基本功能

Sublime自带代码格式化功能:Edit -> Line -> Reindent。
自带的代码格式化工具不够用,如Json或者xml内容,如果希望看到格式化之后的目录层级一目了然的展示内容,也是可以安装插件的,如indent xml。有些插件并不能在 package control 里面查询到,此时就需要另外一种安装插件的方式,输入插件的地址。

快捷键

Alt +Shift + 2,会变成左右两个窗口,实现多窗口编辑。
Ctrl + shift + t:打开最近关闭的文件,和 Chrome 类似,快捷键是通用的;

多行/点编辑
Ctrl + D:选中一个单词,按此快捷键可以同时选中相同的单词;
Ctrl +Shift + L:先选中多行,再按下快捷键,可使用批量编辑功能,一般适用于类似 excel 或者 csv 这样格式统一的文本;
ctrl + 双击click: 单击想要编辑的每一个地方,都将创建一个光标
ctrl + shift + f 和 alt + enter: 在你的文件查找一个文本,然后将其全部选中
ctrl+l 选中整行,继续操作则继续选择下一行,效果和 shift+↓效果一样。
ctrl+alt+↑或 ctrl+alt+鼠标向上拖动向上添加多行光标,可同时编辑多行。
ctrl+alt+↓或 ctrl+alt+鼠标向下拖动向下添加多行光标,可同时编辑多行。
shift+↑向上选中多行。
shift+↓向下选中多行。

文本比较

工作中,不可避免需要比较两个文本的差异。简单的文本比较:

  1. 在线工具,diffchecker
  2. Sublime插件 compare side by side。

拓展:对于复杂的,涉及到十几个文件,文件夹深至三四层,几百个乃至上千个文件的大型项目的文本比较,最好用的文本比较工具,beyond compare 当之无愧。参考文章beyond compare使用

插件推荐

  1. Package Control
    包管理器,有超过2000多个包,也可以添加 GitHub 仓库包;自动检查版本更新;
  2. Sublime Enhancement
    Sublime Linter includes lots of new features and provides enhancements to the operations on Sidebar of Files and Folders for Sublime, Provides the basics: new file/folder, edit, open/run, reveal, find in selected/parent/project, cut, copy, paste, paste in parent, rename, move, delete, refresh, allows to display “file modified date” and “file size” on statusbar and many more.
  3. Live Reload
    Live Reload is a web browser page reloading plugin for the Sublime Text 3 editor. With this plugin you don’t need to refresh your browser each time you make the changes to the file.
  4. Sublime Linter
    This plugin prevents syntax errors The key here is it can be run in background mode, so that as soon as you do something boneheaded, you will know about it. No save required.
  5. ApplySyntax
    ApplySyntax is a plugin for Sublime Text 2 and 3 that allows you to detect and apply the syntax of files that might not otherwise be detected properly. For example, files with the .rb extension are usually Ruby files, but when they are found in a Rails project, they could be RSpec spec files, Cucumber step files, Ruby on Rails files (controllers, models, etc), or just plain Ruby files.
  6. GIT & GitGutter & GIST:
    GIT,集成 git 插件,GitGutter 显示本地修改内容,类似 git status .效果,有一个指示器显示在行号的旁边,参考 idea 类似功能。GIST 是代码片段管理工具,可以连接到 GitHub gist 账户。
  7. Package Resource Viewer
    PackageResourceViewer lets you view, and edit packages that come from SublimeText easily. You can also extract package, which will copy it to the User folder so you can safely edit it.
  8. JSLint
    JSLint4Java (http://code.google.com/p/jslint4java/) is a java wrapper around the fabulous tool by Douglas Crockford, jslint. It provides a simple interface for detecting potential problems in JavaScript code. This project provide a plugin to add JSLint support for Sublime Text 2.
  9. Clipboard History
    Clipboard History plugin lets you Keep a history of your clipboard items. Let you paste them back in, as needed.
  10. SublimeFileDiffs
    Shows diffs between the current file, or selection(s) in the current file, and clipboard, another file, or unsaved changes. Can be configured to show diffs in an external diff tool.

Alignment
代码对齐,选中要调整的行,然后按 Ctrl+ Alt + A;

indent xml
pretty json
html-js-css prettify

进阶

Sublime安装 plantUML 工具

PlantUML 是一个快速创建UML图形的组件,常用于设计开发 uml 图。因为PlantUML是Java类库,需要具备 JDK 环境;无论是 Mac 还是 Windows 平台,要使用 plantUML 的画图功能,需要先安装graphviz(开源图片渲染库,可将 PlantUML 脚本转换为图片),对于 Mac 平台:brew install graphviz
在Sublime的默认包管理器仓库中,package control 里找不到 plantuml,所以需要自己输入配置源(概念都是互通的,类似于 npm)。
步骤:
快捷键 command + shift + p,输入 add repository 找到 Package Control:Add Repository,在下方出现的输入框中输入 https://github.com/jvantuyl/sublime_diagram_plugin.git, 然后回车等待安装完成,重启即可。
安装完成,对于一个 UML 文本(即包含在 @startuml和@enduml 之间的文本),快捷键 command + m,即可调出graphviz渲染器,完成文本内容的识别和渲染,最后绘图。

注意:不仅仅是有@startuml 和 @enduml就可以生成渲染图,还需要确保换行正确(没有换行信息,则报错:no @Startuml found)。

问题:command + m 快捷键在 Mac 平台默认是最小化的快捷键。
如何更改快捷键映射?
打开 Preferences -> Key Binding - User,添加一个快捷键:
{"keys":["command+d"],"command":"display_diagrams"}
配置成按住 Alt + d 来生成 PlantUML 图片。

Sublime text unable to load diagram plugin

报错信息如图:
在这里插入图片描述
由于我的ST3是安装中D盘下面,可以使用everything搜索sublime_diagram_plugin,找到如下位置D:\Program Files\Sublime_Text3\Data\Packages\sublime_diagram_plugin,找到并打开文本文件Diagram.sublime-settings

{// restart sublime to apply the changes"viewer": "Preview", // Preview, QuickLook, EyeOfGnome, WindowsDefaultViewer"check_on_startup": true,"new_file": false, // generate new file each time"output_format": "png", // valid values: png, svg, txt, utxt, latex"charset": null // Can be "UTF-8" - to support non-latin text in diagram
}

按照示意,将键charset的值null修改为"UTF-8",保存并重启ST3,但是还是相同报错,打开console查看error log:

Loading processor class: <class 'sublime_diagram_plugin.diagram.plantuml.PlantUMLProcessor'>
Detected 'D:\\Program Files\\Sublime_Text3\\Data\\Packages\\sublime_diagram_plugin\\diagram\\plantuml.1.2018.1.jar'
Version Detection:
b'PlantUML version 1.2018.01 (Mon Jan 29 02:08:22 GMT+08:00 2018)\r\n(GPL source distribution)\r\nJava Runtime: Java(TM) SE Runtime Environment\r\nJVM: Java HotSpot(TM) 64-Bit Server VM\r\nJava Version: 1.8.0_65-b17\r\nOperating System: Windows 10\r\nOS Version: 10.0\r\nDefault Encoding: GBK\r\nLanguage: zh\r\nCountry: CN\r\nMachine: johnny-pc\r\nPLANTUML_LIMIT_SIZE: 4096\r\nProcessors: 4\r\nMax Memory: 3,791,650,816\r\nTotal Memory: 257,425,408\r\nFree Memory: 250,394,240\r\nUsed Memory: 7,031,168\r\nThread Active Count: 1\r\n\r\nThe environment variable GRAPHVIZ_DOT has not been set\r\nDot executable is null\r\nError: No dot executable found\r\nError: only sequence diagrams will be generated\r\n'
PlantUML Smoke Check:
b'The environment variable GRAPHVIZ_DOT has not been set\r\nDot executable is null\r\nError: No dot executable found\r\nError: only sequence diagrams will be generated\r\n'
Unable to load processor: <class 'sublime_diagram_plugin.diagram.plantuml.PlantUMLProcessor'>
Traceback (most recent call last):File "D:\Program Files\Sublime_Text3\Data\Packages\sublime_diagram_plugin\diagram\__init__.py", line 45, in setupproc.load()File "D:\Program Files\Sublime_Text3\Data\Packages\sublime_diagram_plugin\diagram\plantuml.py", line 121, in loadself.check_plantuml_functionality()File "D:\Program Files\Sublime_Text3\Data\Packages\sublime_diagram_plugin\diagram\plantuml.py", line 153, in check_plantuml_functionalityraise Exception('PlantUML does not appear functional')
Exception: PlantUML does not appear functional
error: Unable to load diagram plugin, check console for details.
Traceback (most recent call last):File "D:\Program Files\Sublime_Text3\Data\Packages\sublime_diagram_plugin\diagram\__init__.py", line 52, in setupraise Exception('No working processors found!')
Exception: No working processors found!
Traceback (most recent call last):
OSError: [WinError 126] 找不到指定的模块。
Emmet: No need to update PyV8
OSError: [WinError 126] 找不到指定的模块。
warning: mnemonic w not found in menu caption 自动换行(W)
Traceback (most recent call last):File "./python3.3/ctypes/__init__.py", line 431, in LoadLibraryFile "./python3.3/ctypes/__init__.py", line 353, in __init__
OSError: [WinError 126] 找不到指定的模块。

新建环境变量,指定%GRAPHVIZ_HOME%\bin

IDE

可以把Sublime作为一个简单版的IDE来使用

Sublime搭建简单的go IDE

安装插件gosublime。快捷键Ctrl + b 打开一个类似 terminal 的窗口,运行go命令:go build main.go 或者仅仅只是查看结果:go run main.go

Sublime搭建简单的Python IDE

按下Ctrl+b,点击python,即运行;
安装SublimeREPL插件
SublimeREPL支持各种语言解释器,方便我们在编辑器上编写完代码进行调试。
安装pep8或者pyflakes
在cmd命令行中 用pip命令安装:pip install pep8
安装 sublimelinter-pep8 或者 sublimelinter-pyflakes ,对应上面安装的pep8或者pyflakes

Sublime搭建简单Java IDE

Sublime搭建脚本编辑调试开发环境

Sublime搭建前端IDE

JSDoc,DocBlockr,文档注释插件,根据这些注释输出标准化的 API 文档,

JSHint Gutter:JS 语法检查工具,设置lint_on_edit=true,给出错误提示。

问题

中文字体显示异常

问题如下图:
这里写图片描述
解决方法:换字体,程序员的字体各有所爱,个人比较偏好Yahei Consolas Hybrid,显而易见是两种字体的混合体,由微软雅黑的中文字体和 Consolas 的英文字体合成的,Consolas 字体是微软专为程序员开发的一种字体。
设置方法:preference——settings,打开一个json文件,添加k-v键值对:
"font_face":"Yahei Consolas Hybrid"
首先得确保你本机安装这个字体。yahei-consolas下载地址。

参考


http://chatgpt.dhexx.cn/article/Jtq0blfP.shtml

相关文章

Sublime基本使用

Sublime介绍安装和使用 1.1 Sublime介绍 Sublime是一款跨平台、收费的文件编辑器&#xff0c;可以用来编写HTML,CSS,JavaScript,PHP等应用程序。 1.2 Sublime特点 跨平台,支持主流操作系统,包括macOS,Linux(Ubuntu),Windows体积小&#xff0c;速度快扩展性强&#xff0c;支…

运筹系列70:pinv/inv/LU/SVD分解

1. LU分解 LU分解(LU Factorization)可以将一个矩阵分解为一个单位下三角矩阵和一个上三角矩阵的乘积。LU分解非常简单&#xff0c;下图可以直观的看出LU分解的求解方法。 LU分解主要应用在数值分析中&#xff0c;用来解线性方程、求反矩阵或计算行列式&#xff0c;起源于高…

【Python之numpy库】3.np.linalg.pinv和np.linalg.inv 求逆矩阵与伪逆矩阵

inv是求矩阵A的逆矩阵&#xff0c;pinv是求矩阵A的伪逆矩阵 import numpy as npa np.array([[1, 0, 0],[0, 6, 0],[0, 0, 9]]) print(\n, np.linalg.inv(a)) # 求逆矩阵 print(\n, np.linalg.pinv(a)) # 求伪逆矩阵&#xff0c;当本身就可逆的时候&#xff0c;二者结果相同…

chatgpt赋能Python-python_pinv

Python pinv介绍&#xff1a;什么是pinv&#xff1f; 在机器学习和数据挖掘中&#xff0c;经常会处理数据矩阵的逆矩阵问题。然而&#xff0c;在实际操作中&#xff0c;我们常常遇到矩阵不可逆的情况。为此&#xff0c;我们需要使用伪逆矩阵&#xff08;pseudo-inverse matrix…

Numpy中求矩阵的逆与伪逆(numpy.linalg.inv(),numpy.linalg.pinv()函数详解)

numpy中求矩阵的逆与伪逆 numpy中求矩阵的逆&#xff1a;numpy.linalg.inv() numpy中求矩阵的伪逆: numpy.linalg.pinv() numpy中求矩阵的逆&#xff08;numpy.linalg.inv) 使用命令numpy.linalg.inv(Matrix) 功能 Compute the (multiplicative) inverse of a matrix. Give…

「 C++ 技巧」使用Eigen实现伪逆矩阵(pinV)

一、前言 伪逆矩阵(Moore-Penrose pseudoinverse)A定义为AVDUT,其中&#xff0c;U&#xff0c;D和V是矩阵A奇异值分解后得到的矩阵。对角矩阵D的伪逆D是非零元素取倒数之后再转置得到的。 二、执行代码 #include "funset.hpp" #include <math.h> #include <…

通过FPGA实现矩阵的伪逆pinv计算

1.问题描述: 首先对伪逆pinv进行推导,转换为逆inv的过程 2.部分程序: `timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 21:16:50 03/15/2019 // Design Name: // Module Name: inv_matrix // Project Name: // Target Devices: // To…

【C++】pinv()函数原型以及matlab中的pinv() —— 8

一、pinv()原型 函数形式&#xff1a;pinv(J, G, P)&#xff1b; 核心算法&#xff1a; 解释&#xff1a;G是正定矩阵&#xff0c;P是矩阵J的伪逆矩阵。当G为恒定常数时&#xff0c;以下等式成立&#xff1a; 函数原型&#xff1a; template<typename DerivedA, typena…

python之numpy之伪逆numpy.linalg.pinv

文章目录 解释及实现笔记伪逆在最简单的线性回归中的应用 解释及实现 记 X X X的伪逆为 p i n v ( X ) pinv(X) pinv(X)&#xff0c;则有 p i n v ( X ) ( X T X ) − 1 X T pinv(X)(X^TX)^{-1}X^T pinv(X)(XTX)−1XT&#xff0c;容易发现 p i n v ( X ) X I pinv(X)XI pin…

【C++】Eigen介绍与使用 —— 4

一、Eigen介绍 Eigen是可以用来进行线性代数、矩阵、向量操作等运算的C库&#xff0c;它里面包含了很多算法。它的License是MPL2。它支持多平台。Eigen采用源码的方式提供给用户使用&#xff0c;在使用时只需要包含Eigen的头文件即可进行使用。之所以采用这种方式&#xff0c;…

图像增强(1-灰度级变换)—内涵MATLAB源码

起篇三连问&#xff1a; 第一问&#xff1a;何为数字图像的增强&#xff1f; 个人理解&#xff0c;就是通过对图像进行平滑去噪、改变灰度级或者增强边缘&#xff0c;将我们想要的某些图像特征更明显的显现出来。这就是图像的增强&#xff0c;该过程重在对比度的拉伸。 第二问…

(数字图像处理MATLAB+Python)第五章图像增强-第一节:图像增强概述和基于灰度级变换的图像增强

文章目录 一&#xff1a;图像增强概述二&#xff1a;基于灰度级变换的图像增强&#xff08;1&#xff09;线性灰度级变换A&#xff1a;基本线性灰度级变换B&#xff1a;分段线性灰度级变换①&#xff1a;定义②&#xff1a;截取式灰度变换③&#xff1a;窗切片 &#xff08;2&a…

图像处理:灰度(级)和分辨率

1、像素点 ​像素点是最小的图像单元&#xff0c;一张图片由好多的像素点组成。如下图 可以看到上述图片尺寸是500 * 338 的&#xff0c;表示图片是由一个500 * 338的像素点矩阵构成的&#xff0c;这张图片的宽度是500个像素点的长度&#xff0c;高度是338个像素点的长度&…

数字图像处理——灰度级分层

灰度级分层的两种基本形式如下&#xff1a; 一&#xff1a;将感兴趣的范围内的灰度值显示为一个值&#xff0c;而其他灰度值显示为另一个值 二&#xff1a;将感兴趣的范围内的灰度值变亮或变暗&#xff0c;而其他灰度值保持不变 Python实现过程如下&#xff1a; 使用的图像…

灰度级形态学 - 顶帽变换和底帽变换

目录 1. 介绍 2. 代码实现 1. 介绍 顶帽变换和底帽变换就是图像的加减和开闭运算的结合 顶帽变换的公式为&#xff1a;原图 - 原图的开运算 这里结合开运算的几何图形解释来介绍顶帽变换。 因为开运算是结构元从下往上推动的过程&#xff0c;所以会删除图像灰度值相对周围高…

图像处理基础——灰度级形态学

文章目录 简介膨胀 腐蚀腐蚀膨胀 开运算 闭运算一些基本的灰度级形态学算法形态学平滑形态学梯度顶帽变换 底帽变换 灰度级形态学重建 简介 形态学只适用于Region操作 或者是二值化后的图片 需要延伸到灰度形态学才能广泛应用 拓展到灰度级形态学后 结构元的表达形式可以大致分…

灰度图像分辨率变换(灰度级)

目的&#xff1a;&#xff08;1&#xff09;对一帧8bits 128x128的灰度图像处理为1bits和3bits的128x128灰度图像。 &#xff08;2&#xff09;处理为8bits 64x64和32x32的灰度图像。 一、基本原理 一幅图像的x和y坐标及幅度可能都是连续的。为了把它转换为数字形式&#x…

matlab-图形采样及灰度级转换

目录 一、图像采样 1、实验内容 2、采样原理 3、实验程序 4&#xff0e;实验结果与分析 5&#xff0e;思考题 二、图像类型转换 1、实验内容 2&#xff0e;实验原理 3、程序 4&#xff0e;实验结果与分析 5. 思考题 一、图像采样 1、实验内容 试对任意一幅图像分…

灰度级形态学

灰度级形态学 灰度级形态学知识点&#xff1a;1、灰度化和二值化2、灰度图像是几通道图像3、灰度图和二值图的区别&#xff1a;4、像素点灰度形态学梯度 形态学只适用于区域操作 或者是二值化后的图片. 灰度级形态学知识点&#xff1a; 在图像处理中&#xff0c;用RGB三个分量&…

灰度、灰度级、分辨率、像素值相关概念

灰度、灰度级、分辨率、像素值&#xff1b; 2017年09月18日 20:01:04 以梦为马_不负韶华 阅读数&#xff1a;14346 版权声明&#xff1a;版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 https://blog.csdn.net/Strive_0902/article/details/78023…