* Add "Open Containing Folder" etc to file context menu in Git SCM view
Caption is "Reveal in Finder" on macOS and "Reveal in File Explorer" on Windows.
This resolves#137828
* Use multiple decorators on a method to simplify code
Fixes#149406
Make sure that escaping the leading `[` of a reference link means it is not considered a link
- Picks up new grammar with fixes
- Updates our document link provider to also not consider these as link
* Remove the textDocumentNotebook API proposal
All consumers have now been migrated off of this proposal, so it is safe to remove from our code
* Remove deprecated api usage from test
We currently validate each link in a markdown file individually. This means that if there are multiple links to the same file, we check if that file exists multiple times
With this change, we instead will check that the file exists once and then use this to add diagnostics for all the links to it. This is done by introducing a new `FileLinkMap` which maps file paths to links within that file
Fixes#14912310c8c1c2cc made sure we sync over the authority of in-memory resources over to TS Server. However if a resource does not have an authority, this resulted in a url with `scheme//path` instead of `scheme/authority/path`
TS would then normalize the uri to `scheme/path`, resulting in us considering this a new resource
This fix adds an explicit empty authority that we use in this case instead
This tracks inflight diagnostic computation and tries to cancel them if a new request comes in for the same document (usually because the document has changed or has been closed)
For #146853
Make sure we include the uri authority when serializing and then restoring the file paths we send to TSServer (similarly to how we already handle the uri scheme)
* Add experimental support for reading files in data transfer
Adds a new `DataTransfer.asFile` method which lets you get file objects from a `DataTransfer`. This is currently only hooked up for drop into editors.
A few follow ups:
- Right now the file data is also read eagerly when it is transfered to the extension host. Before shipping this we would make this happen lazily instead
- The drop into editor api does not provide a nice way to do anything with the dropped files.
We should at least support returning a `WorkspaceEdit`. However `WorkspaceEdit` only supports text files, so we would also need to add an API that lets it deal with binary files
* Make `asFile` return a value instead of a promise
`asFile().data()` already returns a promise so `asFile` doesn't also need to be async
* Trying resolving data files transfer lazily
* Cleaning up code for lazy drop
* Remove testing code
* Remove unneeded buffer serialize
* 💄
* use glob on tasks otherwise fallback to default
* add support for test commands also
* try to find one globbed task otherwise fallback to defaults
* - get relativePath (but fallback to absolute if outside of workspace)
- bring back json schema
* Refactor and reduce duplicate code
* remove glob, make isDefault a string or boolean
* update taskConfig
* - rebase
- type updates
- splitPerGroupType should check explicitly for true on isDefault
- hygiene check
* Remove task glob from API
* Task group DTO updates
* Make sure globs run ahead of default task if there's multiple globs matching
* Style and name changes
* More naming and code re-use
* Glob doesn't work when only 1 glob match
Co-authored-by: Alex Ross <alros@microsoft.com>
* Initial work on md link diagnostics
* Adding settings to enable/disable validation
* Add delay for recomputing diagnostics
* 💄
* Split test on diagnostics compute vs management
* Validate on file open
* Remove dianostics on file close
* Allow paths to folders
* Add validation configuration option
By changing output esbuild setting for Markdown preview scripts to iife,
prevents global namespace pollution and reduces possibility of breaking
the preview by contributions from other extensions.