Git Product home page Git Product logo

Comments (11)

Timmmm avatar Timmmm commented on August 25, 2024 1

Finally got around to retrying this - haven't got incremental code changes to work yet (waiting to see what comes of brendanzab/codespan#249), but Go To Definition works perfectly, thanks!

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

Thanks for the kind words and feedback! Have you thought of using codespan and codespan-lsp, by any chance? The latter crate in particular should handle most of the conversions you describe, and it's what I personally use in my own LSP projects, including incremental text updates. With that said, I'm open to potentially "baking in" this sort of functionality into the project as an optional addition.

As for textDocument/typeDefinition, I suppose that API addition will have to come in the next few releases. πŸ˜„

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

Both textDocument/definition and textDocument/typeDefinition are on the list in #10. Hopefully I can knock them out over the next several days. If you would like to submit a pull request yourself, of course, that would also be most welcome.

from tower-lsp.

Timmmm avatar Timmmm commented on August 25, 2024

Thanks for the links to codespan - didn't know about that. Since I wrote this I also discovered that rust-analyzer has its LSP stuff as a generic crate. Here's an example. However they don't provide a nice trait like you do, so I'd definitely rather use this if it were complete.

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

@Timmmm I've just merged in pull request #76, which implements goto declaration, goto definition, and goto type definition support. I hope to have a new release out on Crates.io fairly soon! Feel free to depend directly on the master branch in the meantime, if your project allows it and you're eager to begin iterating. ☺️

from tower-lsp.

Timmmm avatar Timmmm commented on August 25, 2024

Ah cool, thanks! I'll give it a go.

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

@Timmmm Please alert me to any glaring issues come up before the next release! I'll do my best to get in some quick fixes before publishing to Crates.io, if deemed necessary.

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

@Timmmm Version 0.6.0 has just been published to Crates.io with support for goto declaration, goto definition, and goto type definition.

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

We are currently depending on an old version of lsp-types (0.68 vs. 0.70, at the time of writing) because codespan-lsp hasn't been updated to support the latest version of lsp-types (see brendanzab/codespan#163). Once this is updated, I think we can update our lsp-types dependency to the latest version and close this issue as invalid.

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

Closed by #105, which gives us access to the latest lsp-types and therefore compatibility with the latest codespan-lsp.

from tower-lsp.

ebkalderon avatar ebkalderon commented on August 25, 2024

@Timmmm That's fantastic news! Glad it works for you. πŸ€— I'm still waiting to see what the future of codespan will actually be, given that @brendanzab has been refactoring the repo quite a bit. I'm sure some solution for your needs will still exist though.

from tower-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.