Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | Prevent auto-update of dev extension | Aleksey Kladov | 2020-02-14 | 1 | -1/+2 | |
|/ | ||||||
* | vscode: replaced unwrapNotNil() with ! as per @matklad | Veetaha | 2020-02-09 | 1 | -1/+0 | |
| | ||||||
* | vscode: amended config to use binary from globalStoragePath, added ui for ↵ | Veetaha | 2020-02-08 | 1 | -2/+4 | |
| | | | | downloading | |||||
* | added fetchLatestArtifactMetadata() and downloadFile() functions | Veetaha | 2020-02-08 | 1 | -1/+5 | |
| | ||||||
* | vscode: eliminate floating promises and insane amount of resource handle leaks | Veetaha | 2020-02-05 | 1 | -1/+1 | |
| | ||||||
* | vscode: Only handle enter if the suggest widget is hidden. | Gregoire Geis | 2020-02-03 | 1 | -1/+1 | |
| | ||||||
* | Remove enableEnhancedTyping and type overriding infrastructure. | Gregoire Geis | 2020-02-03 | 1 | -5/+0 | |
| | ||||||
* | Change default enhanced typing behavior from using type to using keybindings. | Gregoire Geis | 2020-02-03 | 1 | -1/+6 | |
| | ||||||
* | Add regular onEnter command, allowing onEnter to be called without ↵ | Gregoire Geis | 2020-02-03 | 1 | -0/+5 | |
| | | | | overriding the type command. | |||||
* | Remove unnecessary flags | Aleksey Kladov | 2020-02-03 | 1 | -2/+2 | |
| | ||||||
* | Remove rollup-typescript | Aleksey Kladov | 2020-02-03 | 1 | -2/+1 | |
| | | | | It seems like just calling typescript directly is simpler and more reliable? | |||||
* | Update some rollup packages | Aleksey Kladov | 2020-02-03 | 1 | -3/+3 | |
| | ||||||
* | Use simple prng instead of a dependency | Aleksey Kladov | 2020-02-03 | 1 | -2/+0 | |
| | | | | closes #2999 | |||||
* | Remove recent improvements to the build script | Aleksey Kladov | 2020-02-03 | 1 | -4/+4 | |
| | | | | | | | | tslib as a dev dependency and commonjs modules are definitely *wrong* in the ideal world, **but** in the real world that's the only combination that works. See https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/Problems.20with.20TypeScript.20build | |||||
* | vscode: dropped npm-check-updates script | Veetaha | 2020-02-02 | 1 | -4/+1 | |
| | ||||||
* | vscode: updated rollup typescript so it typechecks the bundle | Veetaha | 2020-02-02 | 1 | -2/+5 | |
| | ||||||
* | Merge #2979 | bors[bot] | 2020-02-02 | 1 | -2/+2 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2979: vscode: now we are actually using tslib r=matklad a=Veetaha We had an incorrect setup where `tslib` was in `devDependencies`. FYI: tslib is a runtime dependency, it contains functions that are used by transpiled JavaScript in order not to inline them in each file. For example: ```ts // foo.ts (source code) import * as foo from "foo"; // --------------------------- // foo.js (compiled output) "use strict"; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const foo = __importStar(require("foo")); ``` As you see, `tsc` generated that `__importStar` helper function in compiled output. And it generates it per each file if you don't enable `"importHelpers": true`. Now with `importHelpers` enabled we get the following picture: ```ts // foo.ts (source code) import * as foo from "foo"; // --------------------------- // foo.js (compiled output) "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const foo = tslib_1.__importStar(require("foo")); ``` It saves some bundle size, but I am not entirely sure wheter we want that. Discussions are welcome! Co-authored-by: Veetaha <[email protected]> | |||||
| * | vscode: moved tslib to runtime dependencies and added \"importHelpers\": true | Veetaha | 2020-02-01 | 1 | -2/+2 | |
| | | ||||||
* | | fix repo link in package.json | Veetaha | 2020-02-02 | 1 | -1/+2 | |
|/ | ||||||
* | :arrow_up: node | Aleksey Kladov | 2020-01-28 | 1 | -6/+6 | |
| | ||||||
* | vscode-languageclient 6.1.0 | kjeremy | 2020-01-27 | 1 | -1/+1 | |
| | | | | Adds support for proposed semantic highlighting extension | |||||
* | vscode-languageclient 6.0.1 | Jeremy Kolb | 2020-01-21 | 1 | -1/+1 | |
| | ||||||
* | Merge #2843 | bors[bot] | 2020-01-15 | 1 | -1/+1 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | 2843: Add inlay parameter name hints for call expr r=matklad a=imtsuki This patch adds Intellij-like parameter name hints for literal values in function calls. <img width="624" alt="Screenshot" src="https://user-images.githubusercontent.com/8423594/72366533-68d7f800-3735-11ea-9279-cf193ca8ca2f.png"> Signed-off-by: imtsuki <[email protected]> Co-authored-by: imtsuki <[email protected]> | |||||
| * | Add inlay parameter name hints for function calls | imtsuki | 2020-01-14 | 1 | -1/+1 | |
| | | | | | | | | Signed-off-by: imtsuki <[email protected]> | |||||
* | | Language Server Protocol 3.15 is now stable | kjeremy | 2020-01-14 | 1 | -1/+1 | |
| | | | | | | | | Update the client | |||||
* | | vscode-languageclient 6.0.0-next.10 | kjeremy | 2020-01-13 | 1 | -1/+1 | |
|/ | ||||||
* | Rename VS Code extension to rust-analyzer | Aleksey Kladov | 2020-01-13 | 1 | -3/+4 | |
| | ||||||
* | Fix lruCapacity config setting type | Marco Groppo | 2020-01-11 | 1 | -1/+4 | |
| | ||||||
* | Add semicolons | Aleksey Kladov | 2019-12-31 | 1 | -1/+2 | |
| | ||||||
* | Fix color name | Aleksey Kladov | 2019-12-31 | 1 | -1/+1 | |
| | ||||||
* | Drop obsolete color configurations | Aleksey Kladov | 2019-12-31 | 1 | -288/+1 | |
| | ||||||
* | Add tsfmt | Aleksey Kladov | 2019-12-30 | 1 | -1/+3 | |
| | ||||||
* | Remove prettier | Aleksey Kladov | 2019-12-30 | 1 | -8/+1 | |
| | ||||||
* | Run prettier on all files | Aleksey Kladov | 2019-12-30 | 1 | -1/+1 | |
| | ||||||
* | Add prettier | Aleksey Kladov | 2019-12-30 | 1 | -6/+13 | |
| | ||||||
* | Rename extension.ts -> main.ts | Aleksey Kladov | 2019-12-30 | 1 | -1/+1 | |
| | ||||||
* | Add rollup | Aleksey Kladov | 2019-12-30 | 1 | -7/+12 | |
| | ||||||
* | Minimize TypeScript build | Aleksey Kladov | 2019-12-30 | 1 | -35/+8 | |
| | ||||||
* | Merge #2061 | bors[bot] | 2019-12-29 | 1 | -1/+64 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2061: Theme loading and "editor.tokenColorCustomizations" support. r=matklad a=seivan Fixes: [Issue#1294](https://github.com/rust-analyzer/rust-analyzer/issues/1294#issuecomment-497450325) TODO: - [x] Load themes - [x] Load existing `ralsp`-prefixed overrides from `"workbench.colorCustomizations"`. - [x] Load overrides from `"editor.tokenColorCustomizations.textMateRules"`. - [x] Use RA tags to load `vscode.DecorationRenderOptions` (colors) from theme & overrides. - [x] Map RA tags to common TextMate scopes before loading colors. - [x] Add default scope mappings in extension. - [x] Cache mappings between settings updates. - [x] Add scope mapping configuration manifest in `package.json` - [x] Load configurable scope mappings from settings. - [x] Load JSON Scheme for text mate scope rules in settings. - [x] Update [Readme](https://github.com/seivan/rust-analyzer/blob/feature/themes/docs/user/README.md#settings). Borrowed the theme loading (`scopes.ts`) from `Tree Sitter` with some modifications to reading `"editor.tokenColorCustomizations"` for merging with loaded themes and had to remove the async portions to be able to load it from settings updates. ~Just a PoC and an idea I toyed around with a lot of room for improvement.~ For starters, certain keywords aren't part of the standard TextMate grammar, so it still reads colors from the `ralsp` prefixed values in `"workbench.colorCustomizations"`. But I think there's more value making the extension work with existing themes by maping some of the decoration tags to existing key or keys. <img width="453" alt="Screenshot 2019-11-09 at 17 43 18" src="https://user-images.githubusercontent.com/55424/68531968-71b4e380-0318-11ea-924e-cdbb8d5eae06.png"> <img width="780" alt="Screenshot 2019-11-09 at 17 41 45" src="https://user-images.githubusercontent.com/55424/68531950-4b8f4380-0318-11ea-8f85-24a84efaf23b.png"> <img width="468" alt="Screenshot 2019-11-09 at 17 40 29" src="https://user-images.githubusercontent.com/55424/68531952-51852480-0318-11ea-800a-6ae9215f5368.png"> These will merge with the default ones coming with the extension, so you don't have to implement all of them and works well with overrides defined in settings. ```jsonc "editor.tokenColorCustomizations": { "textMateRules": [ { "scope": "keyword", "settings": { "fontStyle": "bold", } }, ] }, ``` Edit: The idea is to work with 90% of the themes out there by working within existing scopes available that are generally styled. It's not to say I want to erase the custom Rust scopes - those should still remain and eventually worked into a custom grammar bundle for Rust specific themes that target those, I just want to make it work with generic themes offered on the market place for now. A custom grammar bundle and themes for Rust specific scopes is out of... scope for this PR. We'll make another round to tackle those issues. Current fallbacks implemented ```typescript [ 'comment', [ 'comment', 'comment.block', 'comment.line', 'comment.block.documentation' ] ], ['string', ['string']], ['keyword', ['keyword']], ['keyword.control', ['keyword.control', 'keyword', 'keyword.other']], [ 'keyword.unsafe', ['storage.modifier', 'keyword.other', 'keyword.control', 'keyword'] ], ['function', ['entity.name.function']], ['parameter', ['variable.parameter']], ['constant', ['constant', 'variable']], ['type', ['entity.name.type']], ['builtin', ['variable.language', 'support.type', 'support.type']], ['text', ['string', 'string.quoted', 'string.regexp']], ['attribute', ['keyword']], ['literal', ['string', 'string.quoted', 'string.regexp']], ['macro', ['support.other']], ['variable', ['variable']], ['variable.mut', ['variable', 'storage.modifier']], [ 'field', [ 'variable.object.property', 'meta.field.declaration', 'meta.definition.property', 'variable.other' ] ], ['module', ['entity.name.section', 'entity.other']] ``` Co-authored-by: Seivan Heidari <[email protected]> | |||||
| * | Merge branch 'master' into feature/themes | Seivan Heidari | 2019-12-23 | 1 | -16/+125 | |
| |\ | ||||||
| * \ | Merge branch 'master' of https://github.com/rust-analyzer/rust-analyzer into ↵ | Seivan Heidari | 2019-11-20 | 1 | -0/+5 | |
| |\ \ | | | | | | | | | | | | | feature/themes | |||||
| * | | | Readding jsonc parser because of ↵ | Seivan Heidari | 2019-11-18 | 1 | -1/+2 | |
| | | | | | | | | | | | | | | | | https://github.com/rust-analyzer/rust-analyzer/pull/2061\#discussion_r344783715 | |||||
| * | | | Vscode wasn't running the linter automatically so ran `npm run fix` - wonder ↵ | Seivan Heidari | 2019-11-09 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | if it's related to `tslint` being deprecated. | |||||
| * | | | * Adding scope mapping configuration manifest in `package.json` | Seivan Heidari | 2019-11-04 | 1 | -1/+63 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Loading configurable scope mappings from settings. * Updating Readme with `rust-analyzer.scopeMappings`. `rust-analyzer.scopeMappings` -- a scheme backed JSON object to tweak Rust Analyzer scopes to TextMate scopes. ```jsonc { //Will autocomplete keys to available RA scopes. "keyword.unsafe": ["keyword", "keyword.control"], //Values are string | TextMateScope | [string | TextMateScope] "comments": "comment.block" } ``` | |||||
* | | | | Keep VSCode config mostly backwards compatible | Emil Lauridsen | 2019-12-25 | 1 | -20/+14 | |
| | | | | ||||||
* | | | | Configuration plumbing for cargo watcher | Emil Lauridsen | 2019-12-25 | 1 | -30/+10 | |
| | | | | ||||||
* | | | | Remove cargo-watch from vscode extension. | Emil Lauridsen | 2019-12-25 | 1 | -11/+1 | |
| |_|/ |/| | | | | | | | | Still keeps tests around for reference when porting them to rust | |||||
* | | | Update to latest packages | kjeremy | 2019-12-20 | 1 | -8/+8 | |
| | | | ||||||
* | | | Merge #2583 | bors[bot] | 2019-12-17 | 1 | -1/+2 | |
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2583: Use prettier settings in ts-lint r=matklad a=edwin0cheng This PR add `tslint-plugin-prettier` extension in ts-lint, which "runs prettier rules as tslint rules." and remove `quotemark` from ts-lint and let prettier to handle it. And also fix #2515 Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | | | use pretter settings in ts-lint | Edwin Cheng | 2019-12-17 | 1 | -1/+2 | |
| | | | |