Getting Jedi to look at additional paths for code completion - visual-studio-code

I am trying to get jedi code completion to work with Python stub files within the Spyder IDE 3.3.3 (from Anaconda).
In Visual Studio Code I can add the location of the files by adding to VS Code settings.json
"python.autoComplete.extraPaths": ["StubsDirectory"]
which works, Jedi will provide code completion using the stubs in that directory. However in Spyder there is no extraPaths setting, in Spyder I have to add the stubs to the path with
sys.path.append("StubsDirectory")
This then works for getting code completion but then when running the code instead of just using the stubs for code completion it will try and execute the stubs which don't actually have any implementation.
Is it possible to add some setting in Jedi to look in a certain folder for code completion but only jedi so Python won't try and execute it, very much like Visual Studio Code does.
There are other work-arounds in Spyder like adding it to the path but in unreachable code e.g.
if false:
sys.path.append("StubsDirectory")
which does work but I would like to know if there is a cleaner solution just for jedi to look in a directory.

Related

SuiteScript with Intellisense in VS Code

I have the latest Visual Studio Code.
I have installed the latest SuiteCloud Extension for VS Code.
There is no intellisense.
I have also installed the SuiteNippets extension -- which is ok--but not full intellisense.
I am baffled as to why this is missing. Do I need to import/reference something from NetSuite--despite using their extension already?
How do I enable intellisense in VS Code for SuiteScript?
See my previous answer to a similar question. It's possible to use the Head-in-the-Cloud bundle to create javascript transpiled from TypeScript files. The code completion is good and you have the added benefit of type checking.

Indenting OCaml code in visual studio code

There are several questions here on indenting code in visual studio code (How do you format code in Visual Studio Code (VSCode)?), and on indenting OCaml code (How to indent existing OCaml code), but none of the answers work for indenting OCaml code in visual studio code.
I have installed the OCaml Platform visual studio code extension, vscode-ocaml-format (following https://dev.realworldocaml.org/install.html), ocaml-lsp-server (following https://ocaml.org/learn/tutorials/up_and_running.html) using opam, updated and upgraded everything, used eval $(opam env), but this still does not work. I'm a bit at a loss...
It is very hard to answer such questions as we need more debugging input from your side. On the other hand, it is so hard to get it from vscode so it is better just to walk you through the whole process from the very beginning to see where things might go wrong. I would suggest you follow the process for ease of debugging. After you have everything working you can adapt it to your particular setup.
Create a fresh new folder and put some OCaml file into it, let's name it test.ml and let's put into it the following code,
let test = [
"hello"
]
Now create a fresh local opam switch, by issuing in the same folder as the test.ml file the following command, (note the dot at the end of the command, it is required, it will create a local switch for you)
opam switch create .
Next install the required dependencies.
opam install ocamlformat ocamlformat-rpc ocaml-lsp-server
Create the .ocamlformat file in the same folder as the test.ml file. It will tell ocamlformat that you want to be ocamlformatted and you can use this file to setup your preferences.
Make sure that you have installed ocamlplatform for vscode
Now we are ready for the test. Start vscode and open test.ml. It will ask you to select the sandbox. Select the sandbox that corresponds to the folder where you put test.ml (it should be marked as local and have the same name as the folder name, and there will be the full path to it, so it will be easy for you to find it). The code syntax should be highlighted and there should be no error messages from vscode. Finally, hit Ctrl-Shift-I to re-indent your file, it should transform your code to,
let test = [ "hello" ]

Code-Runner Extension Refuses to Use the Correct Environment

I'm having a bit of trouble getting code-runner to play nice with my conda environments.
Checklist;
The correct python interpreter is selected.
I've explicitly changed the pythonPath and executorMap objects in the settings.json file to the correct environment.
I've tried reinstalling VSCode, Conda and the Code-Runner extension.
I've run a quick script to check which environment is being used and it confirmed that code-runner insists on using the base environment, rather than the one selected, as shown below.
Just to clarify, the code runs perfectly fine, and shows the correct environment selected when I use Ctrl+F5 instead of code-runner (or when I uninstall code-runner and use the normal run feature), but I'd like for it to work with the extension too.
Please help, thanks in advance!

Lua with VS code

I installed the extension sumneko for Lua in VS code. Unfortunately, nothing seems to work like for example Autocompletion and execution. What did I miss?

VS Code - pylint is not running

I have a workspace setup in VS Code where I do python development. I have linting enabled, pylint enabled as the provider, and lint on save enabled, but I continue to see no errors in the Problems panel. When I run pylint via the command line in the virtual environment i see a bunch of issues - so I know pylint works. I am also using black formatting(on save) which works without issue. I have tried using both the default pylint path as well as updating it manually to the exact location and still no results. When I look at the Output panel for python it looks like pylint is never even running (i.e. I see the commands for black running there but nothing for pylint).
My pylint version is 2.4.4 and VS Code version 1.46
Any idea how to get this working?
This is due to a bug in the newer version of python extension see here.
For now you can either wait for the fix to arrive, use jedi language server or install previous version of the extension
Add
"python.linting.enabled" : true
"python.linting.lintOnSave" : true
to your settings.json
Uninstall Python Extension
Reinstall Python Extension
And with that there will will be one more extension of "Python Extension" named - "PYLANCE" don't forget to install that too.
Reload VS Code
DONE !!