您的位置:首页 > 编程语言 > PHP开发

【原创】Sublime Text 3设置吊炸天PHP开发环境

2016-07-08 11:43 225 查看
【原创】Sublime Text 3设置吊炸天PHP开发环境
@heiyeluren@created: 2016/5/31@last modify: 2016/7/8

1. 下载安装Sublime Text 3http://www.sublimetext.com/3

2. 安装Sublime包管理器pci - Package Control    来Subl3安装Package Control很麻烦,现在简单的方法来了
    (1)、简单的安装方法
    使用Ctrl+`快捷键或者通过View->Show Console菜单打开命令行,粘贴如下代码:    import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())

    如果顺利的话,此时就可以在Preferences菜单下看到Package Settings和Package Control两个菜单了。    顺便贴下Sublime Text2 的代码:
    import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation')
    注意:如果安装报错,比如连接远程服务器失败之类的,请设置wbond.net的host,相关host如下:    50.116.33.29        sublime.wbond.net

    (2)、手动安装
    可能由于各种原因,无法使用代码安装,那可以通过以下步骤手动安装Package Control:    1.点击Preferences > Browse Packages菜单    2.进入打开的目录的上层目录,然后再进入Installed Packages/目录    3.下载Package Control.sublime-package并复制到Installed Packages/目录    4.重启Sublime Text。

* 说明:每次唤醒包管理配置都可以使用 Ctrl + Shift + P 方式唤醒命令行,然后输入 pic 缓存 Package Control: install package 组件 *

3. PHP代码语法正确性验证插件 SublimeLinter
(1) Windows环境安装配置好php运行环境(安装PHP执行引擎),或者使用 xampp 等集成环境。我安装的xampp环境,相关PHP.exe路径是:C:\xampp\php\php.exe ,然后设置相关环境变量 PATH ,然后设置该变量最后增加:c:\xampp\php 路径。
(2) 安装 SublimeLinter 和 SublimeLinter-php 组件Ctrl + Shift + P 唤醒后输入:pic,打开包管理文件,然后输入 sublimelinter,选择选装;然后再pic唤醒输入:sublimelinter-php 
安装完插件以后去配置一下插件相关配置,在 Sublime Text 3菜单打开:Preferences -> Package Setting -> SublimeLinter -> Setting User,把如下内容填充进去:
{    "user": {        "debug": false,        "delay": 0.25,        "error_color": "D02000",        "gutter_theme": "Packages/SublimeLinter/gutter-themes/Default/Default.gutter-theme",        "gutter_theme_excludes": [],        "lint_mode": "background",        "linters": {            "annotations": {                "@disable": false,                "args": [],                "errors": [                    "FIXME"                ],                "excludes": [],                "warnings": [                    "NOTE",                    "README",                    "TODO",                    "XXX",                    "@todo"                ]            },            "php": {                "@disable": false,                "args": [],                "excludes": []            },            "summitlinter": {                "@disable": false,                "args": [],                "excludes": [],                "globals": "",                "ignore": "channel",                "limit": null,                "only": ""            }        },        "mark_style": "outline",        "no_column_highlights_line": false,        "passive_warnings": false,        "paths": {            "linux": [],            "osx": [],            "windows": [                "c:\\xampp\\php"            ]        },        "python_paths": {            "linux": [],            "osx": [],            "windows": []        },        "rc_search_limit": 3,        "shell_timeout": 10,        "show_errors_on_save": false,        "show_marks_in_minimap": true,        "sublimelinter": "save-only",        "sublimelinter_executable_map": {            "php": "c:\\xampp\\php\\php.exe"        },        "syntax_map": {            "html (django)": "html",            "html (rails)": "html",            "html 5": "html",            "javascript (babel)": "javascript",            "magicpython": "python",            "php": "php",            "python django": "python",            "pythonimproved": "python"        },        "warning_color": "DDB700",        "wrap_find": true    }}
说明:注意里面的两个php路径必须跟我们实际php脚本引擎路径一致。
(3) 保存配置文件后重启Sublime编辑器,然后编辑任何php代码文件,如果代码语法有错误都会及时提醒啦。

4. 安装自动代码提醒+当前文件内函数定义等跳转插件:SublimeCodeIntel
说明:插件 SublimeCodeIntel 是能够在当前文件内的代码互相跳转,同时支持当前所有项目目录下面代码的自动识别跳转。(跳转是自动的)
Ctrl + P 唤醒 输入 pic 进入包管理工具,输入 SublimeCodeIntel,安装该包管理工具,安装完以后就可以使用了。
说明:(1) 文件内代码跳转在碰到相关要跳转的函数、类等,按 Alt + 鼠标左键 就可以跳转了。
(2) 代码提示把整个相关要编辑的工程目录拖入到Sublime编辑器中,然后就会自动进行相关的代码生成提醒工作,你在整个目录下面做任何代码编辑情况下,都会自动下拉提醒相关代码。

5. 跨文件代码跳转插件:Ctags

Ctags 是一个经典的代码跳转插件,在很多编辑器中都可以使用。
主要步骤:安装ctags程序 -> 对应项目代码生成ctags所以 -> 给sublime安装ctags插件 -> 打开相关生产好ctags索引文件的项目目录导入到sublime -> 进行相关代码跳转
(1) 下载ctag生成程序从 http://ctags.sourceforge.net/ 下载ctags索引生成程序,把ctags.exe放入到环境变量,方便在任何cmd环境下都可以运行ctags索引生成程序

(2) 生成ctags索引
cmd下进入对应的项目代码目录,然后执行:ctags -R -f .tags --fields=+aimSl --language=php或者:ctags -R -f .tags --fields=+aimSl --language-force=php
生成后会发现当前目录下有一个 .tag 文件,就是我们生成好的索引文件。
(3) 在 Sublime Text 中安装插件:Ctags
Ctrl + P 唤醒输入pic进入包管理工具,输入 Ctags ,安装该插件。
(4) 使用相关代码跳转功能
把我们上面生成了 .tag 索引文件的目录整个拖入到Sublime编辑器中,然后打开任意代码文件,在看到调用其他类库函数的地方,按 Ctrl + Shift + 鼠标左键,就可以跳转到相关代码文件,再按 Ctrl + Shift + 鼠标右键,就能够跳转回来源的代码文件,非常方便。

6. 代码实时同步到测试服务器插件:Sftp
一般情况,我们编写完成代码以后,需要上传到调试服务器进行调试,最好每个操作都是实时的,不用单独用scp/ftp/samba等方式拷贝文件到服务器端,比较麻烦,所以需要再编辑器完成后直接把代码上传到服务器的操作。
sftp 插件就能够干这个事儿,会利用 sftp方式利用ssh服务把代码传到服务器。
(1) 安装插件:sftpCtrl + P 唤醒输入pic进入包管理工具,输入 sftp ,安装该插件。
(2) 配置该插件
把相关项目目录拖入到 Sublime 编辑器,然后找到代码路径根节点,右键 选择 SFTP -> Map to Remote...
然后进行相关配置:
{    // The tab key will cycle through the settings when first created    // Visit http://wbond.net/sublime_packages/sftp/settings for help
    // sftp, ftp or ftps    "type": "sftp",
    "save_before_upload": false,    "upload_on_save": true,    "sync_down_on_open": false,    "sync_skip_deletes": false,    "sync_same_age": true,    "confirm_downloads": false,    "confirm_sync": true,    "confirm_overwrite_newer": false,
    "host": "远程SSH服务器地址",    "user": "用户名",    "password": "登陆密码",    "port": "22",
    "remote_path": "远程服务器代码存放目录",    "ignore_regexes": [        "\\.sublime-(project|workspace)", "sftp-config(-alt\\d?)?\\.json",        "sftp-settings\\.json", "/venv/", "\\.svn/", "\\.hg/", "\\.git/",        "\\.bzr", "_darcs", "CVS", "\\.DS_Store", "Thumbs\\.db", "desktop\\.ini"    ],    //"file_permissions": "664",    //"dir_permissions": "775",
    //"extra_list_connections": 0,
    "connect_timeout": 30,    //"keepalive": 120,    //"ftp_passive_mode": true,    //"ftp_obey_passive_host": false,    //"ssh_key_file": "~/.ssh/id_rsa",    //"sftp_flags": ["-F", "/path/to/ssh_config"],
    //"preserve_modification_times": false,    //"remote_time_offset_in_hours": 0,    //"remote_encoding": "utf-8",    //"remote_locale": "C",    //"allow_config_upload": false,}

配置完成后保存配置,重启 Sublime。
(3) 使用该插件第一次使用的时候,需要把所有代码都同步到 远程SSH服务器,选择 Sublime 编辑器左侧需要同步文件夹的根目录,右键,选择 SFTP -> Upload Folder,然后就开始传输了,等传输完成,ssh服务器代码就跟本地一样了。
然后每次修改代码后,再 Ctrl + S 保存的时候,都会自动同步代码到ssh服务器了,完全自动,不需要人工干预。

7. 其他相关好用插件
DocBlockr:自动给函数变量增加注释功能,可以修改配置设置哪些需要那些不需要,一般建议修改配置都是修改 Setting User 级别的配置
Encoding Helpr: 编码助手,再安装完插件后,右下角会显示当前文件的编码,非常方便,特别是识别UTF8、GBK、UTF8 with BOM 等编码非常好用
PHP Code Beautifier:PHP代码美化插件
Compare Side-by-Side:对比两个代码文件的差异
SVN/Git:相关版本管理工具
//...继续添加中

----------------------------------------------------------------------------------黑夜路人,一个关注开源技术、乐于学习、喜欢分享的程序员
博客:http://blog.csdn.net/heiyeshuwu 微博:http://weibo.com/heiyeluren微信:heiyeluren2012 想获取更多IT开源技术相关信息,欢迎关注微信!微信二维码扫描快速关注本号码:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息