typedef TextDocumentFilter
package languageServerProtocol.protocol
import languageServerProtocol.protocol.Protocol
A document filter denotes a document by different properties like
the TextDocument.languageId, the Uri.scheme of
its resource, or a glob-pattern that is applied to the TextDocument.fileName.
Glob patterns can have the following syntax:
- * to match one or more characters in a path segment
- ? to match on one character in a path segment
- ** to match any number of path segments, including none
- {} to group conditions (e.g. **/*.{ts,js} matches all TypeScript and JavaScript files)
- [] to declare a range of characters to match in a path segment (e.g., example.[0-9] to match on example.0, example.1, …)
- [!...] to negate a range of characters to match in a path segment (e.g., example.[!0-9] to match on example.a, example.b, but not example.0)
@sample A language filter that applies to typescript files on disk: { language: 'typescript', scheme: 'file' }
@sample A language filter that applies to all package.json paths: { language: 'json', pattern: '**package.json' }