Open chadrik opened 4 years ago
Actually you can already do this in some sense. There is a hidden (or rather just not advertised as official) hot key Ctrl+Shift+Y that will launch a script at ./mypy/mypy-suggest
(hardcoded) and pass it current file name and current line number and then reloads the doc. You can write a short script that essentially pipes dmypy suggest
to pyannontate -w
that will apply the suggestion in-place.
But yeah, making it on right click and more automated would be great.
Actually you can already do this in some sense. There is a hidden (or rather just not advertised as official) hot key Ctrl+Shift+Y that will launch a script at ./mypy/mypy-suggest (hardcoded) and pass it current file name and current line number and then reloads the doc.
I see. I tried this out and it failed with this error:
/bin/bash ./mypy/mypy-suggest: no such file or directory
I started pycharm from a shell where dmypy suggest -h
works, and the mypy console in pycharm works correctly as well. Perhaps what's hardwired is not dmypy suggest
?
On a related note, I've been playing around with dmypy suggest
and it doesn't seem to take the current scope into consideration when generating annotations.
I get something like this:
dmypy suggest mymodule.myfunc
() -> mymodule:Dict[str, mymodule.Dict[str, module.MyClass]]
When I expect something like this:
dmypy suggest mymodule.myfunc
() -> Dict[str, Dict[str, MyClass]]
The annotations produced by dmypy suggest
won't work without being fixed up. Is this by design, or a bug, or user error?
Perhaps what's hardwired is not
dmypy suggest
?
Of course it isn't, please read carefully the sentence you quoted.
Is this by design, or a bug, or user error?
I think this is by design. We have been using this extensively internally for long time, and it worked well for pyannotate
.
Would be great to make use of
dmypy suggest
to add annotations to existing code.