PHP开发时,笔者用过EditPlus3、Nodpad++、Vi、Vim和Netbeans,尝试过PhpStorm、PHP IDE、Atom,但即轻巧又强大的,首推Sublime Text了。

Sublime有一些技巧,用熟了是神器,不熟就是砖头。

以下我们讲讲在PHP开发中常用的Sublime技巧。

1 下载安装

官网:http://www.sublimetext.com/

下载最新版本,然后按提示安装。

Sublime 可以无时间限制评估使用,但是会有Unregister提示,可以购买序列号或网站寻找。

2 安装Package Control

Package Control是Sublime基础的、必备的包管理,以后所有插件都是通过它来安装的。

打开Sublime,点击菜单 View > Show Console(快捷键 Ctrl+`)打开命令控制台,输入下面的内容:

import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; 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)

然后回车,等待一会就可以安装完成了。

更多指导:https://sublime.wbond.net/installation 。

3 安装插件

安装了Package Control后,可以通过菜单 Preferences> Package Control (快捷键 Ctrl+Shift+P) 来打开。

在打开的输入框中输入install ,从提示的待选项中选择 Install Package

等待,然后又会弹出一个输入框。

以 ConvertToUTF8 插件为例,如下图,输入convert,从提示中选择 ,回车,稍等一会就完成安装这个插件了。

作为PHP开发者,一般我会安装下面的插件:

  1. ConvertToUTF8:支持Sublime打开 GBK, BIG5, EUC-KR, EUC-JP, Shift_JIS 等编码文件的插件
  2. Bracket Highlighter:用于匹配括号,引号和html标签。对于很长的代码很有用
  3. SideBar Enhancements:这个插件改进了侧边栏,增加了许多侧边栏的右键功能
  4. sublimelinter + sublimelinter-php:PHP代码语法检测,在写的时候就可以知道是否符合PHP语法,及时修改
  5. SublimeCodeIntel:PHP代码自动补全工具,Sublime自带的补全功能无法满足PHP开发要求,加上这个插件效率就极快了
  6. Xdebug Client:调试插件,可以对PHP代码设置断点、单步、步入、步出、步进等调试,以及查看实时变量值
  7. DocBlockr:可以自动生成PHPDoc风格的注释。
  8. Emmet:快速生成HTML代码段的插件,强大到无与伦比,不知道的请自行google
  9. Themr:主题管理,切换主题的时候,不用自己修改配置文件了,用这个可以方便的切换主题

要删除插件,按Ctrl+Shift+P,输入remove package,选择(或输入再选择)要删除的package,回车。

4 快捷键

熟记一些常用的快捷键可以极大地提高开发效率,下面是Sublime中常用的命令。

(1)Ctrl+Shift+P

打开Package Control,也是Sublime的模糊匹配模式。

除了上面介绍的installremove功能可以在这个输入框找到,插件的禁用disable和启用enable功能也是在这里配置的,更多功能可以预览下拉列表。

(2)Ctrl+P

查找和打开文件。例如要找ThinkPHP.php文件,输入thinkphp,待选项中会列出所有可能的结果,选择即可打开。

(3)Ctrl+R

在当前文件中查找方法(函数),输入check,能找到所有名称带check的方法。

Ctrl+R后,在输入框中会自动有一个@,这就是要匹配方法的意思。它是Ctrl+P后再输入一个@号的快速方式。除此之外,还有一些有用的匹配符号。

Ctrl+G(或Ctrl+P后输入:):定位到行,在冒号后输入58,如:58,会跳转到58行。

Ctrl+P(或Ctrl+P后输入#):查找标识。

(4)Ctrl+Shift+F

在文件中查找功能,也就是在当前打开的项目中查找所有包含指定字符的文件,并列表标出这些文件和所在位置。

双击结果就可以进入相应的文件位置。

Ctrl+F:查找。

Ctrl+H:查找替换。

(5)Esc

以上功能框,用完之后按Esc键就退出。

5 项目管理

Sublime 可以很方便地管理多个项目,将不同目录的文件组织起来成为一个项目,而不用将所有的文件都放到一个根目录下面。

(1)创建项目

把文件夹拖动到Sublime界面,或者选择菜单 Project > Add Folder to Project 就可以创建一个工程了。

之后在侧边栏中将出现刚刚添加的目录,如果还需要添加其他目录,重复这一操作即可。

(2)保存项目

保存项目菜单:Project > Save Project As,选择要保存的目录,点击保存,Sublime Text将自动生成两个文件:

  1. project_name.sumlime-project:包含工程定义,该文件会被记录到版本控制里。
  2. project_name.sublim-workspace:包含了用户的工程数据,例如打开的文件和修改等,该文件不会被记录到版本控制里。

*.sublime-project文件中,你可以定义工程配置。例如,你可以定义多个目录路径,或者哪些目录或文件需要排除在外。例如:

{
"folders":
[
{
"path": "wwwroot",
"folder_exclude_patterns": ["images"]
},
{
"path": "c:\wwwroot\project1\assets",
"name": "Project 1",
"file_exclude_patterns": ["*.php"]
}
],
"settings":
{
"tab_size": 8
}
}
以上*.sublime-project文件中定义了两个目录,而name标签是该目录在Sublime Text的sidebar中显示的名字。通过定义name,你可以将一些长路径或者名字很长的目录以更简洁的名称显示在sidebar中。

6 设置代理

Sublime的插件仓库在国外,有可能在安装插件的时候遇到无法找到的情况,需要设置代理翻墙解决。

点击 Preferences > Package Settings > Package Control > Settings – User,在配置文件中输入加入如下一行内容。

{
"http_proxy": "http://proxy.domain.com:8080",
"https_proxy": "http://proxy.domain.com:8080"
}
保存重启即可。更多可定制配置,可以查看 Preferences > Package Settings > Package Control > Settings – Default。

参考资料:

  1. Sublime Text 3 绝对神器
  2. 神器sublime2配置xdebug调试PHP
  3. 如何优雅地使用Sublime Text
  4. How to change xdebug key binding in Sublime Text?
  5. php语法检测,sublime linter-php
  6. ST3内网安装插件手札
  7. Sublime Text (3) for PHP Developers
  8. [SublimeText] 如何创建工程

PHP使用Sublime Text3技巧的更多相关文章

  1. Sublime Text3之安裝Emmet及使用技巧

    首先准备工作: 如果你的Sublime Text3没有Package Control组件先看一下这里,如果以安装请忽略: 1.按Ctrl+`调出sublime text的console 2.粘贴以下代 ...

  2. sublime text3配置及相关小技巧

    1.下载&安装: 官方地址:http://www.sublimetext.com/,sublime text3又更新了,支持不依赖插件进行侧边栏颜色的更改,同时自带的皮肤颜色也有四种,十分方便 ...

  3. Sublime Text3使用总结

    写在前面的话:平时做项目中在用eclipse和vs,但是对于一些小项目,感觉没有必要搞那么大的一个工具使用,比如写个小微商城,搞个小脚本了什么,所以就一直在用Sublime Text,界面清新简洁,没 ...

  4. 一个前端程序猿的Sublime Text3的自我修养

    来源于:http://guowenfh.github.io/2015/12/26/SublimeText/ 详细设置 && 20+插件 本文章会在本人有插件或者设置更新时,进行不定时更 ...

  5. 【网络资料】如何优雅地使用Sublime Text3

    如何优雅地使用Sublime Text3 Sublime Text:一款具有代码高亮.语法提示.自动完成且反应快速的编辑器软件,不仅具有华丽的界面,还支持插件扩展机制,用她来写代码,绝对是一种享受.相 ...

  6. sublime Text3配置及快捷键、插件推荐总结

    一.基础 1.重要文档: sublime Text3官方文档中文版:http://feliving.github.io/Sublime-Text-3-Documentation/ sublime Te ...

  7. Sublime Text3使用详解

    Sublime Text简介 Sublime Text - 性感的代码编辑器.程序员之必备神器 Sublime Text 是一个代码编辑器,也是HTML和散文先进的文本编辑器.Sublime Text ...

  8. sublime text3 用法

    1. 使用lint进行语法及风格校验 jshint可以统一编码风格. 安装jshint的步骤: 1)ctrl+shift+p打开命令模式--->输入pcip回车--->输入sublimel ...

  9. Sublime Text3 & MinGW & LLVM CLang 安装配置C-C++编译环境

    Sublime Text是一款强大的跨平台代码编辑器,小巧而且丰富实用的功能是Visual Studio不能比拟的,但是编译运行是一个软肋,本文通过在sublime中配置g++编译器实现程序的编译功能 ...

随机推荐

  1. SVN提交的动作解释

    今天更新svn,发现有很多动作,其中字母代表的意思半知半解,就随手记录下来: A:add,新增 C:conflict,冲突 D:delete,删除 M:modify,本地已经修改 G:modify a ...

  2. Srv数据格式

    1.简介 类似msg文件, srv文件是用来描述服务( service数据类型的, service通信的数据格式定义在*.srv中. 它声明了一个服务, 包括请求(request)和响应( reply ...

  3. Spring源码分析(十八)创建bean

    本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 目录 一.创建bean的实例 1. autowireConstructor 2 ...

  4. Linux中kafka部署和集群

    1.下载kafka安装包kafka_2.12-1.1.0. tar -xzvf kafka_2.11-0.8.2.1.tgz #解压 mv kafka_2.11-0.8.2.1 /usr/local/ ...

  5. Delphi XE7调用C++动态库出现乱码问题回顾

    事情源于有个客户需使用我们C++的中间件动态库来跟设备连接通讯,但是传入以及传出的字符串指针格式都不正确(出现乱码或是被截断),估计是字符编码的问题导致.以下是解决问题的过程: 我们C++中间件动态库 ...

  6. Matlab中的“prod”函数

    B = prod(A)将A矩阵不同维的元素的乘积返回到矩阵B. 如果A是向量,prod(A)返回A向量的乘积.如果A是矩阵,prod(A)将A看作列向量,返回每一列元素的乘积并组成一个行向量B.如果A ...

  7. Dotnet Core Cli 解决方案中多个项目的相互引用和第三方库引用

    dotnet add app/app.csproj reference lib/lib.csproj app项目引用lib项目 dotnet add package Newtonsoft.Json 当 ...

  8. angularjs-ui-router-animation

    html <!DOCTYPE html> <html ng-app="APP"> <head> <title></title& ...

  9. 大数据入门第七天——MapReduce详解(一)入门与简单示例

    一.概述 1.map-reduce是什么 Hadoop MapReduce is a software framework for easily writing applications which ...

  10. 20155307 2016-2017-2 《Java程序设计》第9周学习总结

    20155307 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity)即java数据库连接,是一种 ...