Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>MicaNew to Visual Studio Code? Get it now.
Mica

Mica

Mica Development UG

|
63 installs
| (0) | Free
Language support for Mica 4.5 with syntax highlighting, snippets, and editor tooling.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Mica Language Support for Visual Studio Code

Compiler release 4.5 · Language support for Visual Studio Code

VS Code License Mica YouTube

🔗 Homepage · 📥 Download Compiler · 📚 Tutorials · 🎬 YouTube


◈ What This Extension Provides

This extension adds Mica language support to Visual Studio Code: syntax highlighting, code snippets, and editor integration for .mica source files. It targets Mica 4.5 — the first public release of the compiler.


◈ Extension Features

Syntax Highlighting

Full syntax highlighting for Mica 4.5, including:

  • All compilation unit keywords — program, object, library
  • All scalar types — int8, int16, int32, int64, uint8, uint16, uint32, uint64, float32, float64, bool, string, unicode
  • Control flow — if, then, else, for, to, downto, while, do, repeat, until, case, of, leave
  • Declarations — var, type, const, procedure, function, record, packed, array, set, file
  • Import declarations — imp with source identifiers
  • Pointer operators — pointer, address, value, const
  • Boolean and arithmetic operators — and, or, not, mod, odd
  • Type cast — as
  • String literals with escape sequences, UTF-32 wide strings
  • Unicode character literals
  • Line comments (//) and block comments ({ })
  • Integer literals — decimal, hexadecimal (0x...), and binary (0b...)
  • Floating-point literals with optional scientific notation

Code Snippets

Prefix Description
program Complete program template
object Object compilation unit template
library Library compilation unit template
procedure Procedure declaration
function Function declaration
functionconstptr Function with const pointer parameter
impstd Import standard library I/O symbols
impalias Import symbol with alias
typerecord Record type declaration
typepackedrecord Packed record type declaration
typearray Array type declaration
typepackedarray Packed array type declaration
typeenum Enumeration type declaration
typesubrange Subrange type declaration
typeset Set type declaration
typefile File type declaration
if if...then block
ifelse if...then...else block
case case statement with else branch
while while...do loop
repeat repeat...until loop
for Ascending for...to loop
fordownto Descending for...downto loop
begin begin...end block
set Set constructor
in Membership test expression
address address expression
value value dereference expression
cast Explicit type cast with type picker
writeln WriteLn call
readln ReadLn call
comment Line comment
commentblock Block comment

Editor Integration

  • Auto-indentation — block-structured indentation aligned to begin/end pairs
  • Auto-closing pairs — parentheses, brackets, quotes, and begin/end blocks
  • Comment toggling — line and block comment toggle via standard keyboard shortcuts
  • Code folding — fold procedures, functions, and begin/end blocks
  • Breakpoint support — set breakpoints on .mica source lines for GDB-based debugging

◈ Getting Started

  1. Install the extension — from the VS Code Marketplace
  2. Install the compiler — Ubuntu latest AMD64; download and install the .deb package:
    sudo apt install ./mica_latest_amd64.deb
    mica --version
    
  3. Clone the tutorials — working examples with a pre-configured launch.json for debugging:
    git clone https://gitlab.com/mica-lang/mica-tutorials.git
    code mica-tutorials
    
  4. Start coding — type a snippet prefix (e.g. program, for, procedure) in a .mica file and press Tab to expand it.

◈ A Mica 4.5 Program

The following program defines a subrange type for years, a record type for release data, and an array of that record indexed over the subrange. It then populates the table and iterates over it with a for loop — a feature introduced in Mica 4.5.

program MicaReleases;

imp
    WriteLn : std;

type
    Year        = 2023..2026;
    ReleaseInfo = record
        Major    : int32;
        Features : int32;
    end;
    ReleaseTable = array[Year] of ReleaseInfo;

var
    releases : ReleaseTable;
    y        : int32;

begin
    releases[2023].Major    := 1;
    releases[2023].Features := 12;
    releases[2024].Major    := 2;
    releases[2024].Features := 31;
    releases[2025].Major    := 3;
    releases[2025].Features := 47;
    releases[2026].Major    := 4;
    releases[2026].Features := 68;

    WriteLn("Year  Major  Features");
    for y := 2023 to 2026 do
        WriteLn("  %d  v%d     %d", y, releases[y].Major, releases[y].Features);
end.

Type program and press Tab to expand the program template. Type typesubrange, typerecord, typearray, and for to expand the corresponding snippets. The tutorials repository contains thirteen complete examples covering the full 4.5 language surface.


◈ Release Notes

2.4.2 — March 2026

  • Removed issue-reporting links and wording from the published extension metadata and README

2.4.1 — March 2026

  • README correction for the release example: ReleaseTable now uses array[Year] of ReleaseInfo

2.4.0 — March 2026

  • Mica 4.5 support — syntax highlighting and snippets for for/downto, repeat...until, case, and leave
  • New snippets — for, fordownto, repeat, case, functionconstptr, typerecord, typepackedrecord, typearray, typepackedarray, typeenum, typesubrange, typeset, impstd, impalias, set, in, address, value, begin, comment, commentblock
  • Updated description — aligned to compiler release 4.5

2.3.3 — January 2026

  • Hyperlink corrections for Mica compiler release 4 to latest release

2.3.2 — December 2025

  • Hyperlink corrections and wording improvements

2.3.0 — December 2025

  • Repository migrated to GitLab; all links updated

2.2.0 — December 2025

  • Improved README; added YouTube channel and compiler download links

2.1.0 — December 2025

  • New extension icon; snippet improvements and bug fixes

2.0.0 — November 2025

  • Complete rewrite with comprehensive language support: all primitive types, logical operators, type casting, string and Unicode literals, escape sequences, code snippets, smart indentation, and auto-closing pairs

1.0.0 — Initial Release

  • Basic syntax highlighting and language configuration

◈ License

This extension is released under the MIT License. The Mica compiler uses a separate license — see mica-dev.com for details.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft