Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Project-wide advanced refactoring. #220

Open
pseudohuman92 opened this issue Mar 17, 2021 · 1 comment
Open

[Feature Request] Project-wide advanced refactoring. #220

pseudohuman92 opened this issue Mar 17, 2021 · 1 comment
Labels
Document Manager Cf https://github.com/coq-community/vscoq/projects/1

Comments

@pseudohuman92
Copy link

I would like to see some project-wide advanced refactoring support. I am using IntelliJ for my Java projects and its refactoring mechanism makes everything neater and much more well defined.

Couple of things that can immensely help clearing up codebase:

  • When you change the name of a definition, theorem, tactic etc. it automatically goes thru all project files and changes the places that it is used. It would be even better if it is scope aware. For example if I have

File1.v
Definition foo := something.

File2.v
Definition foo := something else.

If I change File2 foo to bar, it should change only the files that uses File2's foo

  • Shifting H references in a portion of a code / proof by 1 forward/backward

Sometimes, during or after a proof. I add a premise to the theorem or add/remove an extra clause to a definition. This causes most of the sentences in the context to shift by 1. Then I have to go through the proof script and edit every single of them by hand.

  • Finding common proof script portions.

Most of the time, first I finish a proof without creating many lemmas / tactics, then go through the script to identify recurring goals and turn them into lemmas and/or tactics. If extension could identify similar looking proof script portions, That would make it much easier to detect such recurring portions in the proof.

@gares
Copy link
Member

gares commented Mar 17, 2021

I flag this as for the new document manager which will hopefully have support for some code actions

@gares gares added the Document Manager Cf https://github.com/coq-community/vscoq/projects/1 label Mar 17, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Document Manager Cf https://github.com/coq-community/vscoq/projects/1
Projects
None yet
Development

No branches or pull requests

2 participants