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

2023-10-14 10:40

本文主要是介绍【原创】Sublime Text 3设置吊炸天PHP开发环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


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

@heiyeluren
@created: 2016/5/31
@last modify: 2016/7/8


1. 下载安装Sublime Text 3
http://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) 安装插件:sftp
Ctrl + 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开源技术相关信息,欢迎关注微信!

微信二维码扫描快速关注本号码:




这篇关于【原创】Sublime Text 3设置吊炸天PHP开发环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/209978

相关文章

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

C#TextBox设置提示文本方式(SetHintText)

《C#TextBox设置提示文本方式(SetHintText)》:本文主要介绍C#TextBox设置提示文本方式(SetHintText),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录C#TextBox设置提示文本效果展示核心代码总结C#TextBox设置提示文本效果展示核心代

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

Pyserial设置缓冲区大小失败的问题解决

《Pyserial设置缓冲区大小失败的问题解决》本文主要介绍了Pyserial设置缓冲区大小失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录问题描述原因分析解决方案问题描述使用set_buffer_size()设置缓冲区大小后,buf

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA