diff --git a/README.md b/README.md index 99a7f53..393618a 100644 --- a/README.md +++ b/README.md @@ -40,9 +40,11 @@ I recommend to disable VS Code's built-in PHP IntelliSense by setting `php.sugge ### Column-accurate error reporting ![Error reporting demo](images/publishDiagnostics.png) -### Format code +### Code style linting Please use a dedicated extension like [PHP CodeSniffer](https://marketplace.visualstudio.com/items?itemName=ikappas.phpcs). +### Format code +Please use a dedicated extension like [PHP CS Fixer](https://marketplace.visualstudio.com/items?itemName=junstyle.php-cs-fixer). ## Todo - Rename @@ -54,7 +56,7 @@ Clone whole repository and in root directory execute: ```bash composer install npm install -npm run compile +npm run build code . ``` The last command will open the folder in VS Code. Hit `F5` to launch an Extension Development Host with the extension. diff --git a/composer.json b/composer.json index 0e0660b..55ee04e 100644 --- a/composer.json +++ b/composer.json @@ -2,7 +2,7 @@ "minimum-stability": "dev", "prefer-stable": true, "require": { - "felixfbecker/language-server": "v5.3.7" + "felixfbecker/language-server": "v5.4.0" }, "scripts": { "parse-stubs": "LanguageServer\\ComposerScripts::parseStubs", diff --git a/composer.lock b/composer.lock index 9cad1ce..8049b81 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "content-hash": "80898332fb242b9c923adfeb741b3c0c", + "content-hash": "384d25adb13c4fee0e9cbbd7196b7c75", "packages": [ { "name": "composer/ca-bundle", @@ -265,6 +265,50 @@ ], "time": "2017-04-03T19:08:52+00:00" }, + { + "name": "composer/xdebug-handler", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/composer/xdebug-handler.git", + "reference": "c919dc6c62e221fc6406f861ea13433c0aa24f08" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/c919dc6c62e221fc6406f861ea13433c0aa24f08", + "reference": "c919dc6c62e221fc6406f861ea13433c0aa24f08", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0", + "psr/log": "^1.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Composer\\XdebugHandler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "John Stevenson", + "email": "john-stevenson@blueyonder.co.uk" + } + ], + "description": "Restarts a process without xdebug.", + "keywords": [ + "Xdebug", + "performance" + ], + "time": "2018-04-11T15:42:36+00:00" + }, { "name": "felixfbecker/advanced-json-rpc", "version": "v3.0.1", @@ -308,26 +352,27 @@ }, { "name": "felixfbecker/language-server", - "version": "v5.3.7", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/felixfbecker/php-language-server.git", - "reference": "e10896f90554c2f95b052c09fbc3685e84fb9a60" + "reference": "02b7d2fdb6ec81badef53668d3693412bd00b748" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/felixfbecker/php-language-server/zipball/e10896f90554c2f95b052c09fbc3685e84fb9a60", - "reference": "e10896f90554c2f95b052c09fbc3685e84fb9a60", + "url": "https://api.github.com/repos/felixfbecker/php-language-server/zipball/02b7d2fdb6ec81badef53668d3693412bd00b748", + "reference": "02b7d2fdb6ec81badef53668d3693412bd00b748", "shasum": "" }, "require": { - "composer/composer": "^1.3", + "composer/xdebug-handler": "^1.0", "felixfbecker/advanced-json-rpc": "^3.0.0", "jetbrains/phpstorm-stubs": "dev-master", "microsoft/tolerant-php-parser": "0.0.*", "netresearch/jsonmapper": "^1.0", "php": "^7.0", "phpdocumentor/reflection-docblock": "^4.0.0", + "psr/log": "^1.0", "sabre/event": "^5.0", "sabre/uri": "^2.0", "webmozart/glob": "^4.1", @@ -374,7 +419,7 @@ "studio", "visual" ], - "time": "2018-02-28T19:21:04+00:00" + "time": "2018-03-11T20:50:12+00:00" }, { "name": "jetbrains/phpstorm-stubs", @@ -477,16 +522,16 @@ }, { "name": "microsoft/tolerant-php-parser", - "version": "v0.0.9", + "version": "v0.0.10", "source": { "type": "git", "url": "https://github.com/Microsoft/tolerant-php-parser.git", - "reference": "59351ce2a6b32c6cafc667dc20a48da36f38a482" + "reference": "694b1538bb73fdcf1b8ea8e20f5acd03aae594e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Microsoft/tolerant-php-parser/zipball/59351ce2a6b32c6cafc667dc20a48da36f38a482", - "reference": "59351ce2a6b32c6cafc667dc20a48da36f38a482", + "url": "https://api.github.com/repos/Microsoft/tolerant-php-parser/zipball/694b1538bb73fdcf1b8ea8e20f5acd03aae594e9", + "reference": "694b1538bb73fdcf1b8ea8e20f5acd03aae594e9", "shasum": "" }, "require": { @@ -514,7 +559,7 @@ } ], "description": "Tolerant PHP-to-AST parser designed for IDE usage scenarios", - "time": "2018-02-14T18:39:41+00:00" + "time": "2018-03-18T03:12:58+00:00" }, { "name": "netresearch/jsonmapper", @@ -759,16 +804,16 @@ }, { "name": "sabre/event", - "version": "5.0.2", + "version": "5.0.3", "source": { "type": "git", "url": "https://github.com/sabre-io/event.git", - "reference": "3cb619803d5e3e38ed7c309250da5589676aedc8" + "reference": "f5cf802d240df1257866d8813282b98aee3bc548" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sabre-io/event/zipball/3cb619803d5e3e38ed7c309250da5589676aedc8", - "reference": "3cb619803d5e3e38ed7c309250da5589676aedc8", + "url": "https://api.github.com/repos/sabre-io/event/zipball/f5cf802d240df1257866d8813282b98aee3bc548", + "reference": "f5cf802d240df1257866d8813282b98aee3bc548", "shasum": "" }, "require": { @@ -815,7 +860,7 @@ "reactor", "signal" ], - "time": "2017-06-10T09:11:18+00:00" + "time": "2018-03-05T13:55:47+00:00" }, { "name": "sabre/uri", diff --git a/src/extension.ts b/src/extension.ts index 0e1e01e..fc9b83f 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -93,7 +93,10 @@ export async function activate(context: vscode.ExtensionContext): Promise // Options to control the language client const clientOptions: LanguageClientOptions = { // Register the server for php documents - documentSelector: ['php'], + documentSelector: [ + { scheme: 'file', language: 'php' }, + { scheme: 'untitled', language: 'php' } + ], uriConverters: { // VS Code by default %-encodes even the colon after the drive letter // NodeJS handles it much better