Visual Studio Code extension for OCaml and relevant tools.
Please report any bugs you encounter.
Type npm config list to view a list of all npm configurations that are active. Type npm config edit to open a text editor with npm configurations. To remove the proxy line ( or simply comment it out ). Save the config file and close it. Type npm config list to confirm that the proxy configuration has been removed. Using npm you can upgrade to the latest stable version of AutoRest: Installing AutoRest Install Node.js (node 10.16.x LTS is a bare minimum, node 12 and 13 have some great performance benfits.).
This is exactly Angular's issue. Current package.json requires fsevent as not optionalDependencies but devDependencies. This may be a problem for non-OSX users. Even if you remove it from package.json npm i still fails because another module has it as a peer dep. If npm-shrinkwrap.json is still there, please remove it or try npm i -f. Npm install pdf-image Ensure you have convert, gs, and pdfinfo (part of poppler) commands. Ubuntu sudo apt-get install imagemagick ghostscript poppler-utils OSX (Yosemite) brew install imagemagick ghostscript poppler Usage Convert single page.
ext install ocamllabs.ocaml-platform
at the command paletteCtrl+Shift+P(Cmd+Shift+P on MacOS)File > Add Folder to Workspace...
)opam install ocaml-lsp-server
Install OCaml for Windows andmake sure the ocaml-env
program is accessible on the PATH (ocaml-env
is inthe usr/local/bin
folder relative to the installation directory).
The new ReScript syntax (res
and resi
files) is not supported, you shoulduse rescript-vscode instead.
ReasonML, as an alternative syntax for OCaml, is supported out-of-the-box, aslong as reason
is installed in your environment.
If you're looking for a way to use OCaml or ReasonML syntax in a ReScriptproject, you'll need to install ocaml-lsp
in your environment. We recommendusing Esy for this:
esy.json
to the project root with following content:This extension provides options in VSCode's configuration settings. You can findthe settings under File > Preferences > Settings
.
Name | Description | Default |
---|---|---|
ocaml.sandbox | Determines where to find the sandbox for a given project | null |
ocaml.dune.autoDetect | Controls whether dune tasks should be automatically detected. | true |
ocaml.trace.server | Controls the logging output of the language server. Valid settings are off , messages , or verbose . | off |
ocaml.useOcamlEnv | Controls whether to use ocaml-env for opam commands from OCaml for Windows. | true |
ocaml.terminal.shell.linux | The path of the shell that the sandbox terminal uses on Linux | null |
ocaml.terminal.shell.osx | The path of the shell that the sandbox terminal uses on macOS | null |
ocaml.terminal.shell.windows | The path of the shell that the sandbox terminal uses on Windows | null |
ocaml.terminal.shellArgs.linux | The command line arguments that the sandbox terminal uses on Linux | null |
ocaml.terminal.shellArgs.osx | The command line arguments that the sandbox terminal uses on macOS | null |
ocaml.terminal.shellArgs.windows | The command line arguments that the sandbox terminal uses on Window | null |
ocaml.repl.path | The path of the REPL that the extension uses | null |
ocaml.repl.args | The REPL arguments that the extension uses | null |
If ocaml.terminal.shell.*
or ocaml.terminal.shellArgs.*
is null
, theconfigured VSCode shell and shell arguments will be used instead.
If ocaml.repl.path
or ocaml.repl.args
is null
, the default REPL is usedinstead. The default REPL used depends on the packages installed in your currentsandbox:
dune build
passes and the current sandbox has utop
installed, the REPLwill be dune utop
dune build
fails and the current sandbox has utop
installed, the REPLwill be utop
ocaml
If a REPL already exists, it will be used instead, so if you installed utop
after openning a REPL, or if you fixed your project compilation, you will needto re-open the REPL to change it.
You can execute it by entering the following command at the command paletteCtrl+P (Cmd+Shift+P onMacOS).
Name | Description | Keyboard Shortcuts | Menu Contents |
---|---|---|---|
ocaml.select-sandbox | Select sandbox for this workspace | ||
ocaml.server.restart | Restart language server | ||
ocaml.open-terminal | Open a terminal (current sandbox) | ||
ocaml.open-terminal-select | Open a terminal (select a sandbox) | ||
ocaml.current-dune-file | Open Dune File (located in the same folder) | ||
ocaml.switch-impl-intf | Switch implementation/interface | Alt+O | |
ocaml.open-repl | Open REPL | ||
ocaml.evaluate-selection | Evaluate Selection | Shift+Enter |