是什么
微软出的重新定义编码的一款免费开源跨平台的文本编辑器,媲美IDE。
优势
我用过很多文本编辑器 比如notepad、editplus、atom、bracket、sublime等。
比前两个界面好,扩展多。
比atom性能好,人家作者是算法大师。
比bracket扩展性强,比只限于前端。
比sublime来说我觉得最主要是易用性、扩展性上(开源)。
下载
https://code.visualstudio.com/
注意选择版本。
安装
和正常文本编辑器一样安装,值得注意的是最好安装在C盘,因为我发现我安装在其他盘,重装系统后,每次打开编辑器更新 他都给我C盘安装一遍,然后再打开 又提示更新。
如何做php开发使用
确保本地环境变量里有php
vscode最初是开发前端node 那一套的,其他语言的支持比较后,所以我一直没使用。直到最近更新频繁,我重装了系统,就想体验体验到底能不能用于php项目开发 替代我的sublime,才发现基本上可以了,除了一些小问题。
对于php语言的支持,它是language server方式支持的。建议环境变量里有php 以后跑server、终端也方便。
国际化
装好了就是本地语言
package control center?
自带ext 扩展管理
欢迎界面
我觉得vscode 比st 良心的第一个就是欢迎界面。一目了然,信息量足啊。不像st那个空空的主界面。
使用php
安装php extension pack
咱们点击欢迎界面->自定义->PHP
然后vscode 就默默给我们装一个php集合扩展:php extension pack
包含了 php debug 和 PHP IntelliSense
配置php执行文件
装好之后,你打开一个php文件。如果你没配环境变量他会提示你php language server 无法启动之类的。
你需要配置一个 “php.executablePath" 指向你的php执行文件。就像下面:
"php.executablePath": "D:/wamp64/bin/php/php7.0.10/php.exe",
vscode的配置项做的比sublime好的地方是。双栏打开,点击左侧配置值会自动复制到右侧:
太tm 人性化了。这才是我们想要的配置。
而我们sublime怎么做 打开默认配置,打开用户配置,在默认配置里搜索到匹配配置,复制到用户配置。效率太低了。
而且除了软件配置外 还有插件配置。给你一个插件列表。
插件配置是开发者开放的。往往用户配置里没有一项,默认配置里很多项。甚至很多隐藏配置在readme 和github上。
总结配置的体验就可以发现 vscode做的是工程软件,sublime是极客软件,新手不友好。
我觉得好的软件就是Don’t make me think, Don’t make me wrong 。
安装 php 相关扩展
我们先看扩展管理界面
点击“扩展”图标 出现的,在这里你就可以直接输入关键字 搜索扩展。
默认点击进来显示的已安装扩展。
自带的 不需要手动安装 。
参照我以前写的那个sublime培训 密码: 6jyy:逐一查找 安装吧
最终发现只需要以下几个插件就可以足够php开发了:
CodeRunner, 非常方便的代码执行软件,支持多种语言。
Composer 现在php包管理工具
要配置执行路径
"composer.executablePath": "C:/ProgramData/ComposerSetup/bin/composer.bat",
php debug
比sublime界面好看多了
PHP DocBlocker
写注释的人都知道SonarLint
代码质量管理工具,需要Java 支持JavaScript、php 就是报错有点严格。
这个强烈建议装一下:
有了它你可以获得错误提示和优化建议,甚至可以提示未定义的变量,其他文本编辑器可做不到。
安装增强插件
advance new file
高级新建文件Alignment
代码 “=” 对齐插件和st的像但是 必须选中区域对齐,不能自动识别一大段=号的,有时候还对不齐All Autocomplete
自动完成插件Apache conf
apache 语法高亮插件AutoFileName
路径补全插件Change Case
用于转换命名方式,如驼峰转下划线Chinese Translation
中文繁体转换 支持香港 、台湾等。Clipboard History
剪切板管理软件,方便找多次复制里的内容Close tag
闭合最后的标签Docker
以后可能会用上吧expand-selection-to-scope
扩大所选范围File Utils
文件操作插件(重命名、移动、删除等)Generic Remote Debugger
远程调试插件,看起来很牛逼的样子,可以调试线上项目Markdown All in one
markdown一篮子Markdown Preview Enhanced
markdown 预览增强 支持公式 导出啥的Markdown Theme Kit
markdown编辑时文件主题markdownlint
markdown语法错误检测NGINX syntax
Nginx服务器配置语法支持paste p_w_picpath to qiniu
粘贴截屏图片直接上传七牛Path Autocomplete
路径补全工具Python
蟒蛇支持Settings Sync
配置同步插件,说实话我是被这个插件吸引过来的,我st重装系统后,忘了备份好多东西没了。
这个可以同步到github上的Sublime Commands
支持一些sublime的命令 如分割成多行,合并单行等Sublime Text Keymap
支持sublime的键盘设置习惯(不是完全支持)Sublime Text Extension Pack
包括了Sublime Text Keymap 、Expand Selection To Scope、Close HTML / XML Tag、Sublime Commands 几个插件Tranpose
交换光标插件 一般是两个
安装编码插件
vscode中文支持良好不需要插件
前端
Color Highlight
css 颜色高亮Color Picker
拾色器ESLint
前端报错检测Image Preview
图片预览,直接显示在css 当前行前面jQuery Code Snippets
写jquery的都想要
编码
Codelf
命名变量搜索插件Live Server
直接在浏览器里同步预览项目Live Server Preview
在侧栏列同步预览项目Local History
本地文件历史Log File Highlighter
日志文件高亮Partial Diff
选择文本进行可视化比较Typewriter Noises
打字机效果,倍爽VS Code database
vscode 中管理数据库
项目管理
EditorConfig
项目风格统一神器Gist Extension
代码片段管理Git Project Manager
git项目管理器,可以搜索本地git项目Project Manager
项目管理工具
保存项目后就可以来回切换了。
sftp
sftp管理TortoiseSVN
没有svn 插件,不高兴WakaTime
程序员编程时间管理插件 能精确统计一周内每个项目花了多少时间,跨编辑器跨IDE,大神必备哦。
一些问题
自动完成不支持try catch补全
已报issue
符号链接 ctrl+r不起作用
去键盘快捷方式里 干掉其他占用ctrl+r的命令
保留至:
默认会是打开最近浏览文件,我才不稀罕
打开文件夹是切换当前工作空间
我也不知道怎么配 但是我知道先新开一个窗口就好啦
终端
vscode另外一个优于sublime的功能就是终端,ctrl+~ 打开
我用他多开 多执行cli 就相当于多进程了。
我的配置
我的是基于win的,关键处打码,嘿嘿:
// 将设置放入此文件中以覆盖默认设置{ "php.executablePath": "D:/wamp64/bin/php/php7.0.10/php.exe", "php.validate.executablePath": "D:/wamp64/bin/php/php7.0.10/php.exe", "php.validate.run": "onType", "window.zoomLevel": 1, "window.restoreWindows": "one", "window.openFoldersInNewWindow": "off", "files.autoSave": "off", "window.openFilesInNewWindow": "on", "composer.executablePath": "C:/ProgramData/ComposerSetup/bin/composer.bat", "extensions.ignoreRecommendations": false, "sonarlint.ls.javaHome": "C:/Program Files/Java/jre1.8.0_141", "sync.gist": "XXXXXXXXXXXXXXXXXXXXXXXXXX", "sync.lastUpload": "2017-07-23T13:32:53.762Z", "sync.autoDownload": false, "sync.autoUpload": false, "sync.lastDownload": "", "sync.forceDownload": false, "sync.anonymousGist": false, "sync.host": "", "sync.pathPrefix": "", "sync.quietSync": false, "sync.askGistName": false, "gist.oauth_token": "XXXXXXXXXXXXXXXXXXXXXX", "local-history.path": "", "search.useIgnoreFilesByDefault": true, "projectManager.svn.ignoredFolders": [ "node_modules", "out", "typings", "test", ".history" ], "projectManager.git.ignoredFolders": [ "node_modules", "out", "typings", "test", ".history" ], "search.exclude": { "**/node_modules": true, "**/bower_components": true, ".history": true }, "php.suggest.basic":false}
后记:
基本使用和sublime差不多,php主要用到语法报错、自动完成、快速切换文件,查看当前类的所有方法符号链接,切换定义等,还能行内看定义和使用了多少个地方。
查看定义:
跳转定义:
查看所有引用:
格式化代码
欢迎给我提供建议。