jupyterlab-lsp icon indicating copy to clipboard operation
jupyterlab-lsp copied to clipboard

Support for the rename based on the whole project directory

Open YongcaiHuang opened this issue 1 year ago • 2 comments
trafficstars

Elevator Pitch

Any plan for the rename based on the whole project directory including file rename (more like a refactoring feature). It's better to support both .ipynb and .py

Motivation

current rename function works within one file either .ipynb or .py. It's not that convenient when I want to rename a .py module or function/class in this module. Rather, I need to change all related reference.

Design Ideas

current IDE like vscode or pycharm has supported this. for example below video.

https://github.com/jupyter-lsp/jupyterlab-lsp/assets/97007177/4691c4b4-0ee1-4b91-bd5b-10bd9517df60

YongcaiHuang avatar Jun 04 '24 15:06 YongcaiHuang

That would be nice. I often think about it. Technically what is needed is support for workspace-wide edits and some UI. Alternatively it could be achieved by resolving https://github.com/jupyterlab-contrib/search-replace/issues/79 and using that extension.

krassowski avatar Jun 04 '24 17:06 krassowski

Additionally, other refactoring feature is missing, like extract variable or method, etc, and not very convenient when writing a project using jupyterlab. Maybe we can leverage more function in rope.

Also, Thanks for the alternative proposal of using search-replace. it's really great, but it different from refactoring feature (e.g. it cannot handle file rename and extraction, etc). BTW, search-replace cannot be used in jupyterlab-desktop (issue opened here)

YongcaiHuang avatar Oct 04 '24 03:10 YongcaiHuang