atom / atom-languageclient

Language Server Protocol support for Atom (the basis of Atom-IDE)
https://ide.atom.io/
MIT License
388 stars 78 forks source link

Add support for rename refactors #270

Closed lexi-lambda closed 5 years ago

lexi-lambda commented 5 years ago

This pull request implements rename refactoring support via textDocument/rename, resolving #13. It is compatible with the protocol expected by the most recent release of atom-ide-ui, which is 0.13.0. Here’s a demonstration using the ide-haskell-hie backend:

(It’s not the fastest backend in the world, but it gets the job done eventually.)

Awkwardly, this implementation doesn’t work with the latest version of atom-ide-ui in the archived source code, since it was changed just after the final release to use a slightly different protocol. I don’t think that’s a big deal, though, since it’s always possible to bump the service version if those changes ever make it into something released.

Aerijo commented 5 years ago

Works for me on the last atom-ide-ui release. Do you know if the service has a specification anywhere? Especially as you mention they were working on a revised version.

lexi-lambda commented 5 years ago

Do you know if the service has a specification anywhere?

I have no idea, but if it does, I don’t know about it.