Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>NoShift.jsNew to Visual Studio Code? Get it now.
NoShift.js

NoShift.js

otoneko1102

|
19 installs
| (0) | Free
Syntax highlighting + auto-complete for NoShift.js (.nsjs) files
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

license

NoShift.js - VS Code Extension

English | 日本語

Syntax highlighting, auto-complete, and file icons for .nsjs files

Typing shifted symbols (!, ", (, ), {, } …) is tiring.
NoShift.js replaces every shift-required symbol with a ^-prefixed sequence, so you can write JavaScript using only unshifted keys.
.nsjs files compile directly to plain JavaScript via the nsc CLI.

[!Important]
⚠ Breaking Changes (v0.10.0): Syntax changes in NoShift.js v0.15.0 — ^3 is now #, ^6 is now Capitalize, ^\ is now _. New keyword aliases: or, and, @or, @and.


Features

Syntax Highlighting

Full syntax highlighting for .nsjs files.

  • Keywords: const, let, function, class, if, for, return, etc.
  • NoShift sequences: ^2, ^[, ^- and other symbol sequences colored as operators/punctuation
  • String literals: ^2...^2 (double-quote), ^7...^7 (single-quote), ^@...^@ (template literal)
  • Template expressions: Code inside ^4^[...^] highlighted as nested expressions
  • Built-in objects: console, Math, Promise, Array, etc.
  • Comments: // line comments and /^: ^:/ block comments

File Icon

.nsjs files display a dedicated file icon (↓js).

  • Shown in tabs and Explorer for VS Code 1.79+
  • When vscode-icons is installed: .nsjs, nsjsconfig.json, and nsjslinter.json icon associations are configured automatically on activation

Auto-Complete

Typing ^[ automatically inserts the matching ^] and places the cursor between them.

Input:  ^[
Result: ^[|^]   (| = cursor position)

Code Snippets

Prefix Inserted
^[ ^[${1}^]

Diagnostics

Real-time syntax error detection as you type. Errors appear as red squiggly underlines in the editor and in the Problems panel.

  • Unclosed string literals (^2, ^7, ^@)
  • Unclosed block comments (/^: ... ^:/)
  • Unclosed template expressions (^4^[...^])
  • Unknown ^ sequences
  • Lone ^ or ^6 at end of file

Requirements

  • VS Code 1.70.0 or later
  • (Optional) vscode-icons - integrates file icons with the vscode-icons theme

Language Support

This symbol mapping is based on the NoShift.js developer's keyboard (JIS layout).

Developer's Keyboard

Feature Details
Extension .nsjs
Language ID noshift
Line comment //
Block comment /^: ^:/
Bracket pairs ^[ / ^], ^8 / ^9, [ / ]
Auto-close ^2, ^7, ^@, ^[, ^8

Ecosystem / Links

  • noshift.js (npm) — The Core Compiler CLI
  • @noshift.js/lint (npm) — The Official Linter
  • prettier-plugin-noshift.js (npm) — The Official Prettier Plugin
  • VS Code Extension — Editor Support (Syntax Highlighting, Snippets)
  • Website & Playground
  • Repository

License

MIT © otoneko.

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