Running in VSCode using jupyter
JCzz opened this issue · 7 comments
Hi
Will it be possible to tun this in VSCode, using the following:
https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter
It says "A Visual Studio Code extension that provides basic notebook support for language kernels that are supported in Jupyter Notebooks today" so yes, in theory it may work.
I think nobody tried gophernotes with it yet, so you're welcome to post here the results of any attempt you may want to do.
I keep getting
The 'go' kernel is not available. Please pick another suitable kernel instead, or install that kernel.
When inside VS-Code (no issues in JupyterLab though). Any chance anyone else has run into this issue?
I tried adding it into trusted kernal's with
"jupyter.kernels.trusted": ["~/Library/Jupyter/kernels/gophernotes"]
But still no luck.
NVM looks like running a JupyterLab server via the terminal and then connecting to it works. Probably some kind of a config thing I am missing in VSCode.
To add to @Igorgro, for me it is working great. Except:
- There is no syntax highlighting.
- The VSCode Go to Definition functionality does not work (Among others functionality.)
I'd been the entire day trying to find a way to do it. It's not a Kernel issue, go-kernel has the same issue.
The main problem is in the VSCode LSP protocol itself, it sends a path to the server to analyze. On the vscode-python they created a hack in the extension to concat a file before sending it the language server.
I don't think it's worth it to create something like it for Go, that's why in trying jupyter now.
Following up on my previous comment:
- The hack is the only way to work with notebooks on most of the languages servers currently. And both VSCode and Jupyter use it in Python.
- LSP added support for notebook at version 3.17(latest). This mean that it could be possible to remove the hack.
- Both gopls and vscode-go are mantained by Google, and notebook support is not a priority.
Maybe it would be possible to use this to create a middleware to handle notebooks.