Type @ in an untitled document (new unsaved buffer, e.g. from Ctrl+N) or a Markdown document to insert a workspace file path.
@ triggers only at line start or after whitespace, so e-mail addresses do not trigger it.
Text typed after @ fuzzy-filters on the workspace-relative path, like Ctrl+P.
Accepting inserts the relative path after @, e.g. @internal/app/main.go.
Folders are listed too and inserted with a trailing /, e.g. @internal/app/.
Files hidden by files.exclude or search.exclude are not listed. At most 20000 files are listed.
atPath.alwaysInclude overrides those excludes: a list of workspace-relative folders, files or globs that are listed anyway, e.g. ["node_modules/my-lib", "dist", "**/generated"].
Ctrl+Space right after an @path reopens the list.
Development
extension.js - VS Code glue: completion provider for untitled and Markdown documents.
mention.js - pure logic: finding the @ mention before the cursor, building the exclude glob.
mention.test.js - unit tests for mention.js.
install.ps1 - links this folder into ~/.vscode/extensions for local development, then run Developer: Reload Window.