当前位置: 首页 > 编程日记 > 正文

sublime Text 开发工具

简介描述

Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。,具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括 拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。具有以下优点

  • 体积较小,运行速度快

  • 文本功能强大

  • 支持编译功能且可在控制台看到输出

  • 内嵌python解释器支持插件开发以达到可扩展目的

  • Package Control:ST支持的大量插件可通过其进行管理

常用快捷键

快捷键组合功能说明
Ctrl+Shift+/‘/**/’ 注释已选择内容
Ctrl+/‘//’注释
Shift+Tab去除缩进
Ctrl+Shift+P打开命令面板
Ctrl+Shift+K删除整行
Ctrl+Shift+↑与上行互换
Ctrl+Shift+↓与下行互换
Ctrl+Shift+[折叠代码
Ctrl+Shift+]展开代码
F11全屏模式
Tab缩进 自动完成
Ctrl+G跳转到指定行
Ctrl+L选择整行(按住-继续选择下行)
Ctrl+D选择字符串 (按住-继续选择下个相同的字符串)
Ctrl+U软撤销
Ctrl+T词互换
Ctrl+Shift+D复制当前行
Ctrl+Z撤销
Ctrl+Y恢复撤销
ctrl+h查找替换
ctrl+f查找
ctrl+w关闭当前窗口
ctrl+ Shift + f跨文件编辑

实用扩展功能

Snippets(代码片段)功能

在编写代码时,总会遇到反复使用的代码片段。导致了反复复制粘贴影响效率,利用Sublime Text的snippet功能,就能解决这一问题。即把我们常用的代码分别保存起,然后通过插件的形式来反复调用。

1、创建方法:Tools(工具)- > New Snippet(新代码片段),会看到以下结构

<snippet><content><![CDATA[ 你需要插入的代码片段${1:name} ]]></content><!-- 可选:快捷键,利用Tab自动补全代码的功能 --><tabTrigger>xyzzy</tabTrigger><!-- 可选:使用范围,不填写代表对所有文件有效。附:source.css和test.html分别对应不同文件。 --><scope>source.python</scope><!-- 可选:在snippet菜单中的显示说明(支持中文)。如果不定义,菜单则显示当前文件的文件名。 --><description>My Fancy Snippet</description>
</snippet>

2、参数说明

参数说明
${1:name}表示代码插入后,光标所停留的位置,可同时插入多个。其中:name为自定义参数(可选)
${2}表示代码插入后,按Tab键,光标会根据顺序跳转到相应位置(以此类推)

3、实践案例

<snippet><content><![CDATA[// +-------------------------------------------// | ThinkPHP [ WE CAN DO IT JUST THINK IT ]// +---------------------------------------------// | Copyright (c) 2006-2012 // +--------------------------------------------------// | Author: liu21st <liu21st@gmail.com>// +----------------------------------------------------]]></content><tabTrigger>tp</tabTrigger><description>ThinkPHP...</description><!--<scope>test.php</scope> -->
</snippet>

创建完毕以后,保存在\Packages\User目录下,文件命名为tp,后缀名.sublime-snippet。打开一个html文件,输入cft,再按Tab键,刚才我们所编写的代码段,就插入了进来。

直接在sublime text 编译执行PHP功能

打开“tool” ->“Build System” ->“New Build System…”,自动出现一个默认的配置,直接删掉,替换为以下代码, 保存在默认的目录即可。写完一个php文件,保存后只需要 按下 Ctrl + B,就可以进行调试了

{ "cmd": ["php", "$file"],"file_regex": "php$", "selector": "source.php","path" : "E:\\phpStudy\\php53"    //PHP环境路径
}

自定义代码提示(更新中)

安装常用插件

1、安装Package Control

  • 按Ctrl+调出console ,粘贴安装代码(见扩展阅读)到底部命令行并回车,重启Sublime Text 2,如果在Perferences->package settings中看到package control`这一项,则安装成功。

2、用Package Control安装其他插件

  • 按下Ctrl+Shift+P调出命令面板 输入install 调出 Install Package 选项并回车,然后在列表中选中要安装的插件。

GBK to UTF8

将文件编码从GBK转换成UTF8,快捷键Ctrl+Shift+C

zenCoding

zenCoding是一种快速的html、css编写方式。默认用tab键. 已经更名为Emmet。

JS Format

一个JS代码格式化插件。默认ctrl+alt+f

Git

代码版本管理

ChineseLocalization

汉化插件,支持无缝切换中文、日语、英文,安装完在 帮助-> language 切换

DocBlockr (待续挖掘)

注释模板

CTags

快速定位方法,选中方法,安装完后,先执行ctrl+tctrl+r才会生效,ctrl+shift+鼠标左键(ctrl+t,ctrl+t),跳转至该方法,再按ctrl+shift+鼠标右键(ctrl+t,ctrl+b)会跳转回来。

AndyJS

js代码提示

jquery

jq代码提示

Sublime Tmpl

快速生成文件模板, 比较当前文件与选中的代码、剪切板中代码、另一文件、未保存文件之间的差别。可配置为显示差别在外部比较工具,精确到行,使用:右键标签页,出现FileDiffs Menu或者Diff with Tab…选择对应文件比较即可.默认快捷键,如下:

  • ctrl+alt+h html

  • ctrl+alt+j javascript

  • ctrl+alt+c css

  • ctrl+alt+p php

  • ctrl+alt+r ruby

  • ctrl+alt+shift+p python

  • FileDiffs

AutoFileName

快捷输入文件名,自动完成文件名的输入,如图片选取 使用:输入”/”或”../”即可看到相对于本项目文件夹的其他文件

SubmlimeEnhancements

增强右键功能,并可以设置浏览器快捷键,安装此插件,点击工具栏的preferences > package setting > side bar > Key Building-User,键入以下代码,设置按Ctrl+Shift+C复制文件路径,按F1~F5分别在firefox,chrome,浏览器预览效果,当然你也可以自己定义喜欢的快捷键,最后注意代码中的浏览器路径要以自己电脑里的文件路径为准。配置如下:

[//设置按Ctrl+Shift+C复制文件路径{ "keys": ["ctrl+shift+c"], "command": "copy_path" },//firefox{ "keys": ["f1"], "command": "side_bar_files_open_with","args": {"paths": ["http://localhost/"],"application":"C:\\R\\MozillaFirefox\\firefox.exe","extensions":".*" //匹配任何文件类型}},//chrome   继续配置多个]

SublimeCodeIntel

一个全功能的 Sublime Text 代码自动完成引擎,支持JavaScript, Mason, XBL, XUL, RHTML, SCSS, Python, HTML, Ruby, Python3, XML, Sass, XSLT, Django, HTML5, Perl, CSS, Twig, Less, Smarty, Node.js, Tcl, TemplateToolkit, PHP

相关文章:

【数据结构】双链表的实现(C语言)

双链表中的结点包括3个域&#xff0c;一个是存放数据信息的info域&#xff0c;另两个是指阵域&#xff0c;这里用llink和rlink表示&#xff0c;llink指向它的前驱结点&#xff0c;rlink指向它的后继结点。 双链表要掌握以下基本操作&#xff1a; 1、创建一个空的双链表。 2、…

ShardingSphere-Proxy分库分表以及多租户安装使用

需求&#xff1a;你提供SAAS服务&#xff0c;你有你有2个租户(商户)&#xff0c;各自的数据进各自的库&#xff0c;而你不希望你的微服务java里默认配置多个租户数据源&#xff0c;数据连接池太多&#xff0c;而且后面动态增加也不方便&#xff0c;诸如此类很多问题。 方案&am…

jenkins自动化部署工具

jenkins自动化测试 & 持续集成 知识点&#xff1a; 1。下载地址&#xff1a;jenkins.io download: 转载于:https://www.cnblogs.com/kaixinyufeng/p/10123419.html

android 图片水印处理 文字倾斜处理

方法一&#xff1a; 获取一个textview 从textview中获取bitmap&#xff0c;将bitmap 通过matrix进行角度变换&#xff0c;然后将原图和此bitmap合并&#xff1b; 方法二&#xff1a; 将原图获取bitmap后&#xff0c;得到canvas&#xff0c;将canvas进行角度变换&#xff0c;…

Centos下MySQL安装与配置

一、mysql简介说到数据库&#xff0c;我们大多想到的是关系型数据库&#xff0c;比如mysql、oracle、sqlserver等等&#xff0c;这些数据库软件在windows上安装都非常的方便&#xff0c;在Linux上如果要安装数据库&#xff0c;咱不得不首先推荐的是mysql数据库了&#xff0c;而…

【数据结构】链式栈的实现(C语言)

栈的链式存储称为链式栈&#xff0c;链式栈是一种特殊的单链表&#xff0c;它的插入和删除规定在单链表的同一端进行。链式栈的栈顶指针一般用top表示。&#xff08;个人理解&#xff1a;相当于只对单链表的第一个结点进行操作&#xff09; 链式栈要掌握以下基本操作&#xff1…

opencv python 匹配

opencv python 匹配

DI 依赖注入实现原理

深度理解依赖注入&#xff08;Dependence Injection&#xff09; 前面的话&#xff1a;提到依赖注入&#xff0c;大家都会想到老马那篇经典的文章。其实&#xff0c;本文就是相当于对那篇文章的解读。所以&#xff0c;如果您对原文已经有了非常深刻的理解&#xff0c;完全不需要…

【数据结构】链式队列的实现(C语言)

队列的链式存储称为链式队列。链式队列就是一个特殊的单链表&#xff0c;对于这种特殊的单链表&#xff0c;它的插入和删除操作规定在单链表的不同端进行。链式队列的队首和队尾指针分别用front和rear表示。 链式队列要掌握以下基本操作&#xff1a; 1、建立一个空的链式队列…

离线安装k8s 1.9.0

说明本文参考 https://segmentfault.com/a/1190000012755243。在前 文基础上整理、增加说明&#xff0c;避坑。 踩过的坑&#xff1a; 安装k8s 1.9.0 实践&#xff1a;问题集锦 环境说明 环境信息&#xff08;采用一个master节点两个node节点) 192.168.1.137 tensorflow0 node …

eclipse 和 google拼音输入法冲突问题

eclipse每次当我按ctrl鼠标点击 代码 &#xff0c;本来应该是跳转到相应地方&#xff0c;可是现在每次一点eclipse就关掉。苦经搜索才知道&#xff0c;原来是使用eclipse时同时使用了谷歌拼音的问题&#xff0c;只要不要在点的时候使用谷歌输入法就好了。唉&#xff0c;谷歌拼音…

【腾讯bugly干货分享】微信Android热补丁实践演进之路

为什么80%的码农都做不了架构师&#xff1f;>>> 本文来自于腾讯bugly开发者社区&#xff0c;非经作者同意&#xff0c;请勿转载&#xff0c;原文地址&#xff1a;http://bugly.qq.com/bbs/forum.php?modviewthread&tid1264&extrapage%3D1 继插件化后&…

【ACM】杭电OJ 1001

是一道简单的题目&#xff0c;我只想要说&#xff1a;注意输出格式&#xff01; #include "stdio.h" int main () {int n,sum;while(scanf("%d",&n)1){sum0;for(int i1;i<n;i){sumi;} printf("%d\n\n",sum);}return 0; }

大数据处理也要安全--关于MaxCompute的安全科普

[TOC] 1.企业大数据处理现状 当今社会数据收集手段不断丰富&#xff0c;行业数据大量积累&#xff0c;数据规模已增长到了传统软件行业无法承载的海量数据&#xff08;百GB、TB乃至PB&#xff09;级别。基于此&#xff0c;阿里云推出有了一套快速、完全托管的GB/TB/PB级数据仓库…

自创设计模式-----答题卡模式

该模式是解决触发条件和触发结果的解耦&#xff0c;同时兼顾触发条件资源的可释放性。目的是为了获得触发结果。 /*** */package com.baidu.coolapp.answer;import java.util.Hashtable;import com.baidu.coolapp.composite.IComposite;/*** author liweigao**/public interfac…

The system cannot find the file specified

在家工作&#xff0c;程序在家里的电脑运行时&#xff0c;出现一个异常&#xff0c;还是第一见到&#xff1a; Server Error in / Application. The system cannot find the file specified Description: An unhandled exception occurred during the execution of the current…

【ACM】杭电OJ 1002

题目链接&#xff1a;杭电OJ 1002 表面上看是ab&#xff0c;很简单&#xff0c;其实是大数的相加&#xff0c;所以要考虑的因素有很多&#xff1b;&#xff08;瞬间觉得要是能用Python多好&#xff0c;哈哈哈&#xff09; 还有&#xff01;&#xff01;&#xff01; 要特别注…

Excel VBA 教程

https://www.w3cschool.cn/excelvba/ Excel VBA 编程教程 https://www.yiibai.com/vba VBA教程 http://www.accessoft.com/article-show.asp?id16502 关于VBA的0、""(空字符串)、Null、Empty、与 Nothing 的区别 转载于:https://www.cnblogs.com/onelikeone/p/…

NDK环境搭建

一、Eclipse关联cygwin 1. 工程->右击选择Properties->选择Builders&#xff0c;在Builders中选择New创建一个Program 2. 参数配置 二、Eclipse关联ndk-build&#xff08;自建Builder方法&#xff09; 1. Project->Properties->Builders->New&#xff0c;新建一…

【ACM】杭电OJ 2000

题目链接&#xff1a;杭电OJ 2000 注意使用getchar()&#xff0c;因为“\n”也是一个字符 #include "stdio.h" int main () {char a,b,c,t;while(scanf("%c%c%c",&a,&b,&c)!EOF){getchar();if(a > b){ta;ab;bt;}if(a > c){ta;ac;ct;}/…

bat批处理文件启动Eclipse和ivy本地仓库的配置

一、bat批处理文件启动Eclipse 所需文件&#xff1a; 1、eclipse 2、jre 3、startup-eclipse.bat 确保以上三个文件夹同级 startup-eclipse.bat: set dir%CD% cd %dir%\eclipse eclipse.exe -vm %dir%\jre\bin -vmargs -Xms512M -Xmx1024M -XX:PermSize128M -XX:MaxPermSize256…

helm安装配置

简介 helm是kubernetes的包管理工具&#xff0c;用于简化部署和管理 Kubernetes 应用。用来管理charts——预先配置好的安装包资源。 Helm和charts的主要作用&#xff1a; 应用程序封装版本管理依赖检查便于应用程序分发helm是一个C/S框架的软件&#xff0c;helm相当于一个客户…

ndk-build 参数NDK_APPLICATION_MK问题

被网络传闻和文档无限坑啊&#xff0c;竟然都说的是错的参数名&#xff1a;NDK_APP_APPLICATION_MK是错误的&#xff0c;NDK_APPLICATION_MK才是正确的 I am trying to pass a preprocessor define into my native code using the Android NDK that is dependent on build conf…

【GOF】23中设计模式深析

2019独角兽企业重金招聘Python工程师标准>>> ###对象创建 原型模式、工厂模式、抽象工厂模式、生成器、单例模式###接口适配 适配器模式、桥接、外观模式、迭代器###行为扩展 访问者模式、装饰模式、责任链模式###算法封装 模板方法模式、策略模式、命令模式、###性…

【ACM】杭电OJ 2005

题目链接&#xff1a;杭电OJ 2005 第一次写的时候&#xff1a; #include "stdio.h" int main () {int year,month,day,days,flag;while(scanf("%d/%d/%d",&year,&month,&day)!EOF){if((year%40 && year%100!0)||(year%4000)){flag1;…

详解数组中的reduce方法

前言 这几天面试被问到了数组的方法有哪些&#xff0c;回答得简直一塌糊涂&#xff0c;面试官说reduce的功能很强大&#xff0c;于是想对这个方法进行总结&#xff0c;在红宝书中对这个方法的描述并不算多&#xff0c;我也是参考了其他文章才进行总结的&#xff0c;下面就开始吧…

NDK注意事项

1. ifeq 等命令后面要加空格 2. 换行缩进用tab&#xff0c;不要用多个空格 3. 判断编译目标需要用NDK 变量 TARGET_ARCH_ABI, 包含CPU类型&#xff0c;和ABI标识

mac os x常用快捷键及用法

最近在研究mac os x系统&#xff0c;开始入手&#xff0c;很不习惯&#xff0c;和windows差别很大&#xff0c;毕竟unix内核。使用中总结了一些使用快捷键&#xff08;默认&#xff09;&#xff0c;持续更新&#xff0c;欢迎大家补充。1.撤销&#xff1a;commandz 保存&#x…

【ACM】杭电OJ 2007

题目链接&#xff1a;杭电OJ 2007 本题容易出错的地方在于&#xff1a;要考虑输入的两个数的大小&#xff0c;一定是小的在前&#xff0c;大的在后 #include "stdio.h" int main () {int a,b,sum1,sum2,t;while(scanf("%d%d",&a,&b)!EOF){if(a&g…

iOS FMDB之FMDatabaseQueue(事物与非事物)

事物与非事物 事物是一个并发控制的基本单元&#xff0c;所谓的事务&#xff0c;它是一个操作序列&#xff0c;这些操作要么都执行&#xff0c;要么都不执行&#xff0c;它是一个不可分割的工作单位。 事物与非事物&#xff0c;简单的举例来说就是&#xff0c;事物就是把所有的…