navigation

Ionide-VSCode

GitHub link: https://github.com/ionide/Ionide-vscode-fsharp License: MIT

Ionide is a Visual Studio Code package suite for cross platform F# development.

Overview

Ionide for VSCode is set of 3 plugins avaliable in VSCode marketplace.

  • Ionide-fsharp - provides F# specific features including advanced editor features (autocomplete, go-to definition, tooltips, rename, various refactorings and quick fix suggestions), integration with .NET project system, project explorer for project file visualization and manipulation, integration with MsBuild for building and running applications, debugger integration and more.
  • Ionide-Paket - provides integration with Paket - package dependency manager for .NET with support for NuGet packages and GitHub repositories.
  • Ionide-FAKE - FAKE (F# Make) is popular F# tool and DSL for build orchestration.

List of features

F# IDE

  • Syntax highlighting
  • Error highlighting
  • Autocomplete
  • Tooltips
  • Quick Info Toolbar
  • Usages highlighting
  • F# Interactive (REPL) panel
  • Go-to declaration
  • Finding symbols in file
  • Go-to any symbol in solution
  • Rename
  • Find usages
  • Peek View declaration
  • CodeLens feature showing type signatures
  • CodeOutline tree view
  • Listing all errors in workspace
  • Building using msbuild / xbuild
  • Integration with .NET
  • Project explorer tree view
  • Debugging
  • Record stub generation
  • Union pattern case generation
  • Integration with F# Interactive

F# Project management

  • Possibility to create new empty solutions or projects based on .NET SDK Templates
  • Adding, removing, ordering files in project
  • Adding and removing project references

Paket integration

  • Paket initialization
  • Adding, installing, updating packages from solution or current project (allows the choice of package version)
  • Removing packages from solution or current project
  • Converting from NuGet, simplify dependency graph, turning on auto-restore for solution.
  • Listing outdated packages

FAKE integration

  • Running any build target defined in FAKE build script
  • Running default FAKE target

MSBuild integration

  • Build/Clean/Rebuild the current project
  • Build/Clean/Rebuild any project in the current workspace

And much more...