Giter Club home page Giter Club logo

Comments (8)

JustinGrote avatar JustinGrote commented on August 23, 2024 2

As I recall there are several edge cases this doesn't handle, so we were going to need to surface an opt-in to warn users about the potential perils of using this feature. @andyleejordan can elaborate, but I recommend continued discussion happen on the PR or issue and not on this dupe.

from vscode-powershell.

JustinGrote avatar JustinGrote commented on August 23, 2024 1

Dupe of #261

In short, this is very difficult because PowerShell is not a statically typed or scoped language. We hope to explore a limited scope of rename but it would need to be known it will be opt-in with shortcomings with a warning. See more detail on that issue.

from vscode-powershell.

silverqx avatar silverqx commented on August 23, 2024 1

Practically, you don't have to do anything, everything is done inside LSP, it looks like all you need to do is consume and implement these APIs and interfaces to provide rename functionality for this extension. What means you don't have to code the renaming feature from the ground up.

from vscode-powershell.

JustinGrote avatar JustinGrote commented on August 23, 2024 1

"Practically, you don't have to do anything, everything is done inside LSP"

And who do you think writes the LSP? 😁
https://github.com/PowerShell/PowerShellEditorServices

There is no rename functionality implemented in the LSP (PSES) as of yet. That's the primary first task that must occur before it can be wired up in the frontend extension. Issues for PSES are usually first tracked here as it's where most people first look, but the two are developed mostly in tandem (VSCode being the "primary" consumer of PSES, but there's other editors too (neovim, atom, etc.)

from vscode-powershell.

silverqx avatar silverqx commented on August 23, 2024

I saw #261, at least renaming a local variable inside functions or inside the closest scope shouldn't be a problem, vscode API provides registerRenameProvider a little described here (this page also contains other info about renaming, search: "rename") and in deep described here and here.

Have you tried these APIs? They are supposed exactly for this purpose. You can use these APIs since this extension uses LSP.

from vscode-powershell.

silverqx avatar silverqx commented on August 23, 2024

What means you don't have to code the renaming feature from the ground up.

It looks like that is the exact opposite of what I wrote. 😎🙃 You will have to code everything yourself. I have found PowerShell/PowerShellEditorServices#2152 and also #4950, it looks like one year of hard work, what is the state of this PR, will be merged soon or it's still in the early stages?

from vscode-powershell.

silverqx avatar silverqx commented on August 23, 2024

Code quality looks good with a lot of tests.

from vscode-powershell.

silverqx avatar silverqx commented on August 23, 2024

Ok, I'm going to sleep because I'm in half suspend mode already, writing with one eye already closed, thx for replies, I will dream about renaming in pwsh 😅

from vscode-powershell.

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.