Skip to content

Intellisense Engine : Tag parser vs Default, Default is more flexible  #3416

Closed as not planned

Description

@JeFrRe

Issue Type: Feature Request

The list of completions in Default mode is greater than for the Tag Parser case

For instance, in my code, when I type "vssava"

With Default (msvc), I get back
"IsVSSAvailable" (.*VSSAva.*)
"VssACLineVoltageIndex" (VSSA.*v.*a.*)

With Tag Parser, I get back
"VssACLineVoltageIndex" (VSSA.*v.*a.*)

With Tag parser, if I start my completion search with an I, I then get the result i'm looking for (IsVSSAvailable).

It would seem that the tag parser needs the first character of completion match to be the first character in the completion list. While the Default one is more flexible (first char could be anywhere).

So, could the Tag Parser behaviour be adapted to match the Default (msvc) case?

Extension version: 0.22.1
VS Code version: Code 1.33.0 (0dd516dd412d42323fc3464531b1c715d51c4c1a, 2019-04-04T15:14:46.685Z)
OS version: Windows_NT ia32 10.0.17134

Activity

  1. added
    fixedCheck the Milestone for the release in which the fix is or will be available.
    and removed
    fixedCheck the Milestone for the release in which the fix is or will be available.
    on Apr 10, 2019
  2. added
    help wantedCan be fixed in the public (open source) repo.
    and removed
    help wantedCan be fixed in the public (open source) repo.
    on Apr 11, 2019
  3. sean-mcmanus commented on Apr 11, 2019

    @sean-mcmanus
    Contributor

    It turns out that the fuzzy matching is bad for performance with our database query so we're not planning to fix this in the near future.

  4. JeFrRe commented on Apr 12, 2019

    @JeFrRe
    Author
  5. sean-mcmanus commented on Apr 12, 2019

    @sean-mcmanus
    Contributor

    Yes, using wild cards in our query of the database would require a linear search through all the symbols instead of a constant/log time lookup, which is a large performance hit when there are lots of symbols (in the entire workspace). We do have an in memory symbol search mechanism that we could potentially query instead of the database that would be faster, but that is a large task that we don't have time to work on currently.

    It is not recommended for users to use the Tag Parser due to it's inherant limitations (Visual Studio doesn't allow users to use that mode at all) -- our goal is to make the IntelliSense engine more reliable.

  6. bobbrow commented on Sep 20, 2024

    @bobbrow
    Contributor

    At this point we don't intend to go back and make this change to the Tag Parser implementation, so I will close this issue.

  7. locked and limited conversation to collaborators on Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions