Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Sharpen (.csx)New to Visual Studio Code? Get it now.
Sharpen (.csx)

Sharpen (.csx)

Sharpen

|
9 installs
| (0) | Free
Syntax highlighting and go-to-definition for Sharpen's .csx files - C#-flavored TypeScript/React source, compiled to real .tsx/.ts by the Sharpen compiler.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Sharpen (.csx)

Syntax highlighting and go-to-definition for .csx files - the C#-flavored source language compiled by Sharpen into real, plain TypeScript/React (.tsx/.ts).

What it highlights

  • Comments (// only - .csx doesn't support block comments)
  • Attributes ([State], [Component], [Store], etc.)
  • Directives (@if, @else, @foreach)
  • Keywords, modifiers, and primitive types
  • Strings, including interpolated ($"...") strings with expression holes
  • JSX markup inside Render()

Go to definition

Jump (F12 / ctrl-click, or right-click → Go to Definition) from a reference to where it's actually declared:

  • A JSX component tag (<CategoryList />) to the file that declares it
  • A store/context/hook/record/enum name, wherever it's referenced across files
  • A nameof(...) reference - clicking either half jumps to the right place, e.g. in nameof(RestaurantStore.LoadCategories), clicking RestaurantStore goes to the store's own file, and clicking LoadCategories goes straight to that specific method on it, not just any same-named member elsewhere
  • A method/field/plain class referenced within the same file

Works across your whole open workspace - folder structure doesn't matter, the same way it doesn't for the compiler's own cross-file resolution.

Learn more

Full language reference: mail4hafij.github.io/sharpen/sharpen.html

Install the compiler itself:

npm install -g @mail4hafij/sharpen

Publishing (maintainer only)

One-time: generate a Personal Access Token from Azure DevOps (your org → User settings → Personal access tokens → organization: "All accessible organizations" → scope: Marketplace: Manage).

cd vscode-extension
node prepare.js
npx @vscode/vsce login mail4hafij
npx @vscode/vsce package --allow-missing-repository
npx @vscode/vsce publish --allow-missing-repository

For any update, bump "version" in package.json first - the Marketplace won't accept the same version twice. After publishing, the new version shows as "Verifying" for a few minutes before it's actually live/searchable - normal, not an error.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft