Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Goto Symbols+New to Visual Studio Code? Get it now.
Goto Symbols+

Goto Symbols+

tettekete

|
43 installs
| (0) | Free
Simplifies VS Code's 'Go to Symbol in Editor…' by displaying a curated, indented list of functions, methods, and structures (including JSON/YAML) for quick, clear navigation.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

English / 日本語

Table of Contents:

  • Overview
    • Motivation
    • Key Differences from Go To Method
  • Features
    • Supported Languages and File Types
    • Available Commands
      • Goto Symbols+: list functions
      • Goto Symbols+: list structures
    • How to Set Shortcuts
  • Description of Configuration Items
    • Indentation
      • Sample display
    • Indent String
    • Prefix String
    • Show Symbol Kind
    • Makefile: Show Dependencies As Label
  • Requirements - Compatible Language Support Extensions
    • Language Support Extensions Used for Verification

Overview

This extension serves as an alternative to the standard VSCode Go to Symbol in Editor..., providing a function and method list display that aids preview and navigation.

DEMO

In addition to programming languages, it supports tag structure display in HTML, as well as gron-like views for JSON and YAML.

Motivation

The standard Go to Symbol in Editor... in VSCode displays many unnecessary symbols. The goal was to provide a simple yet useful symbol list, similar to Sublime Text’s Goto Symbol....

A similar major extension, Go To Method, exists but is limited to programming languages.

This extension is designed to offer a "reasonably useful" symbol list across various file types, similar to the functionality found in Sublime Text.

Key Differences from Go To Method

  • Displays relationships such as class-method structures and nested functions using indentation or a tree format
  • Fixes an issue where some symbol providers, such as in C#, return symbols in a different order from their appearance in the code
  • Supports markdown and HTML
  • Provides gron-like views for JSON and YAML

Features

Supported Languages and File Types

The following languages and file types have been tested and confirmed to work:

  • C/C++
  • C#
  • Docker Compose files
  • Dockerfile
  • Go
  • HTML
  • INI files
  • JavaScript
  • JSON
  • Makefile
  • Markdown
  • Perl
  • PHP
  • Python
  • Ruby
  • Rust
  • ShellScript
  • TypeScript
  • YAML

For languages and file types not listed above, the extension will still provide a general symbol list if the appropriate language support extension is installed. If the language support extension provides a symbol provider that returns functions and methods, they will be listed under "Functions & Methods"; otherwise, they will be listed under "Structures".

Available Commands

Goto Symbols+: list functions

For explicitly supported languages and file formats, a customized list is displayed.

For example:

  • Programming languages show a list of classes, methods, and functions.
  • JSON displays a gron-like list.
  • Dockerfiles enumerate both instructions and their arguments for easier filtering.

Command ID: tettekete.list-functions

Goto Symbols+: list structures

This command enumerates all symbols, similar to VSCode’s standard "Go to Symbol in Editor..." but with improved readability using the configured "Indentation" settings.

For example, if you do not want a gron-like display for JSON, executing this command allows you to view its structure with indentation instead.

Command ID: tettekete.list-structures

How to Set Shortcuts

  1. Open "Preferences" > "Keyboard Shortcuts" (Win: ctrl + k,ctrl + s / Mac: cmd + k, cmd + s)
  2. Search for and select the desired command:
    • tettekete.list-functions or Goto Symbols+: list functions
    • tettekete.list-structures or Goto Symbols+: list structures
  3. Set a keybinding.

Description of Configuration Items

Indentation

Specifies the indentation method for nested symbol lists.

  • None: No indentation
  • Use indent string: Uses the string set in Indent String for indentation
  • Tree view: Expresses the tree structure with lines

The default is Use indent string.

Sample display

None

Use indent string(The default is two spaces)

Tree view

Indent String

This is the string used for indentation when Use indent string is selected in the Indentation setting.

The default is two spaces.

Prefix String

You can specify a prefix string to be added to symbol names.

The default is an empty string.

Show Symbol Kind

In function/method display mode, this option determines whether to show the symbol type returned by the symbol provider as a description.

The default is false.

Makefile: Show Dependencies As Label

This option determines whether to display target dependencies as labels when the file type is Makefile.

If enabled, dependencies are shown alongside their targets. While this may reduce target visibility, it allows dependencies to be included in text-based filtering.

If disabled, dependencies are displayed as descriptions, making targets easier to read but excluding dependencies from filtering.

The default is true, meaning dependencies are displayed as labels.

Requirements - Compatible Language Support Extensions

For languages not natively supported by VSCode, you need to install the corresponding language support extension.

If running Go > Go to Symbol in Editor... does not return any symbols, a language support extension is required.

Language Support Extensions Used for Verification

The following language support extensions were used during testing:

C/C++

  • “C/C++ - Visual Studio Marketplace”

C#

  • “C# - Visual Studio Marketplace”

Dockerfile

  • “Docker - Visual Studio Marketplace”

Go

  • “Go - Visual Studio Marketplace”

INI

  • “Ini for VSCode - Visual Studio Marketplace”

    Note: The provided Range is inaccurate, causing one section’s range to include the next section.

Java

  • “Language Support for Java(TM) by Red Hat - Visual Studio Marketplace”

Makefile

  • “Makefile Outliner - Visual Studio Marketplace”

Perl

  • “Perl Navigator - Visual Studio Marketplace”

PHP

  • “PHP Intelephense - Visual Studio Marketplace”

Python

  • “Python - Visual Studio Marketplace”

Ruby

  • “Ruby Solargraph - Visual Studio Marketplace”

Rust

  • “rust-analyzer - Visual Studio Marketplace”

YAML

  • “YAML - Visual Studio Marketplace”

ShellScript

  • “Bash IDE - Visual Studio Marketplace”
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft