A lightweight VS Code extension for exploring functions, methods, and classes across your active file or entire workspace.
Browse code structure, inspect function statistics, jump to implementations, compare functions, and copy source code directly from the sidebar.
Features
Active File Mode
Command:
Function Inspector: Active File
Shows symbols from the currently open editor.
Displays:
- Functions
- Methods
- Classes
- Nested symbols (language provider dependent)
Includes:
- Function statistics
- Line counts
- Range information
- Collapse / Expand tree support
Workspace Mode
Command:
Function Inspector: Workspace
Scans supported files across the workspace.
Features:
- File grouping
- File icons (theme dependent)
- Open files directly
- Browse functions by file
- Workspace statistics
Clicking a file node opens the editor.
Sidebar Controls
Refresh button
Performs a hard refresh by click the refresh symbol in the Function Inspector sidebar.
Clears:
- Symbol cache
- Statistics cache
Then rebuilds the tree.
Useful when:
- symbols stop updating
- language servers refresh
- extensions reload
- parser output changes
Collapse All
Use the built-in Collapse All button in the tree view toolbar.
Quickly collapse the entire explorer tree.
Function Actions
Available from function nodes.
Select Function
Opens the source file and selects the full function body.
Copy Function
Copies the full function source to the clipboard.
Compare Functions
Select two functions.
Run:
Function Inspector: Compare Functions
Opens a VS Code diff view comparing both implementations.
Command Palette Commands
Only these commands appear directly in the Command Palette:
| Command |
|---|
| Function Inspector: Active File |
| Function Inspector: Workspace |
| ------------------------------------- |
Other actions are available through the explorer UI.
Language Support
Function Inspector relies on:
vscode.executeDocumentSymbolProvider
Language support depends on installed symbol providers.
Supported File Discovery
.c
.cpp
.cc
.h
.hpp
.cs
.py
.js
.ts
.jsx
.tsx
Required Extensions
JavaScript / TypeScript
Built into VS Code.
No installation required.
Python
Install:
Python (Microsoft)
Recommended:
Pylance (Microsoft)
C / C++
Install:
C/C++ (Microsoft)
C#
Install ONE of:
C# Dev Kit (Microsoft)
or
C# (OmniSharp)
Without these extensions:
- no symbols may appear
- workspace results may be empty
- nested symbols may be missing
Caching
Function Inspector caches:
- document symbols
- calculated statistics
Use Refresh Button to perform a hard reset when results appear stale.
Known Issues
Symbol Availability
Languages expose symbol trees differently.
Examples:
- namespaces
- nested classes
- local functions
- language-specific parser behavior
Results vary by:
- language server
- extension version
- parser implementation
Large Workspaces
Very large workspaces may experience slower scans.
Workspace mode currently searches supported source files and requests symbol information for discovered files.
Performance depends heavily on language provider performance.
Python isort Server Crashes
Some Python setups may display errors like:
isort client: couldn't create connection to server
The isort server crashed 5 times...
This can be caused by the Python environment or formatter extension.
Missing Functions/Classes
Local functions and nested methods depend on the language provider.
Some languages may omit nested symbols.
Release Notes
1.0.0
Initial release.
Features:
- Active file explorer
- Workspace mode
- Refresh Button
- Function stats
- Compare functions
- Copy function source
- Function selection
- File opening
- Tree navigation