But I've found with jupyter that it's most productive for me to just use jupyterlab in the browser, it has lots of features and for the visualizations that I do I need a good viewer. So vim doesn't work, and executing in ipython is like the console, not the notebook interface anyway.
I recommend using jupytext too, and then you can keep .py files as the canonical notebook files in your repo and code history.