Coder Social home page Coder Social logo

Comments (5)

marcoroth avatar marcoroth commented on June 18, 2024

Thanks for reporting this, @Gert-JanPeeters!

I wonder if VSCode would still accept it with the file:// scheme, so we could use the same code for both.

Looking at this line here, I'm wondering why I opted for stripping it 🤔

this.project = new Project(this.settings.projectPath.replace("file://", ""))

from stimulus-lsp.

Gert-JanPeeters avatar Gert-JanPeeters commented on June 18, 2024

I went searching a bit and found a similar issue:

NomicFoundation/hardhat-vscode#355

I think that VSCode can deal with both but Neovim is forcing LSPs to use an URI with a scheme. Not really sure which scheme it has to be used but I am guessing file://.

from stimulus-lsp.

marcoroth avatar marcoroth commented on June 18, 2024

I guess in that case we should be able to use always use file:// then 👍🏼

from stimulus-lsp.

Gert-JanPeeters avatar Gert-JanPeeters commented on June 18, 2024

I have investigated a bit further.

I tried changing this line:

this.project = new Project(this.settings.projectPath.replace("file://", ""))

to

this.project = new Project(this.settings.projectPath) 

But then things break. For example, stimulus-lsp cannot find the controllers anymore.

However, if I change:

const locations = controllers.map((controller) => Location.create(controller.path, Range.create(0, 0, 0, 0)))

to:

const locations = controllers.map((controller) => Location.create(`file://${controller.path}`, Range.create(0, 0, 0, 0))) 

The Goto definition works in neovim. However, I don't think we should make the change here.

If I am correct then it is stimulus-parser that provides the paths to the locations? Maybe I should make an issue / pull request there to send the controller.path with the right scheme?

from stimulus-lsp.

marcoroth avatar marcoroth commented on June 18, 2024

Thanks for investigating!

I think we should rather do it here in the repo, since this is more LSP specific. The Stimulus Parser could be used outside of an LSP context, which is why I think it doesn't really make sense to use the file:// scheme in the stimulus-parser project.

from stimulus-lsp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.