A VS Code extension that enhances the built-in references view with the following improvements:
Excludes current reference: The reference at your current cursor position is filtered out, showing only other references
Ungrouped display: References are displayed in a flat, ungrouped list for easier scanning
Uses built-in view: Works with VS Code's native references view, no custom UI
Features
🔍 Smart filtering: Automatically excludes the reference at your current cursor position
📋 Ungrouped view: All references are shown in a single, easy-to-scan list
⚡ Native integration: Uses VS Code's built-in references view
🎯 Seamless experience: Works with existing keyboard shortcuts and commands
Usage
Keyboard Shortcut
Shift+F12: Show References (uses the default shortcut with enhanced filtering)
Command Palette
Open Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
Type "References: Find All References"
Select the command
Context Menu
Right-click on any symbol
Select "Find All References" from the context menu
How It Works
Reference Detection: Uses VS Code's built-in reference provider to find all references to the symbol at your cursor
Current Position Filtering: Automatically excludes the reference at your current cursor position
Native Display: Shows references in VS Code's built-in references view with improved filtering
Quick Navigation: Click any reference to jump directly to that location
Installation
From Source
Clone this repository
Run npm install to install dependencies
Run npm run compile to build the extension
Press F5 to open a new Extension Development Host window
Test the extension in the new window
Package Installation
Build the extension: npm run compile
Package the extension: vsce package
Install the generated .vsix file in VS Code
Publishing
This repository is configured to build on every push and publish on tagged releases via GitHub Actions.
Required Secrets
VSCE_PAT: Personal Access Token for Visual Studio Code Marketplace
Add these in your repository settings under Settings → Secrets and variables → Actions → New repository secret.
Release Flow
Ensure package.json has the correct version and publisher.
Create a semver tag like v0.0.2 and push it:
git tag v0.0.2
git push origin v0.0.2
The Release workflow will:
Build and package the extension
Publish to VS Code Marketplace
Attach the .vsix to the GitHub Release
Local Packaging/Publishing
# Package
npm run package
# Publish to VS Code Marketplace (requires VSCE_PAT login)
npm run publish:vscode
# Publish to VS Code Marketplace (requires VSCE_PAT login)
npm run publish:vscode
Requirements
VS Code 1.74.0 or higher
TypeScript 4.9.4 or higher
Development
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Watch for changes
npm run watch
# Package extension
vsce package