Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# 📢 Announcement — NLP++ Grows Up: A Full IDE in VS Code

**Version 3 turns VS Code into a genuine home for building analyzers with NLP++** —
from your first rule to a compiled analyzer shipped to a customer.

Version 3 began by making analyzers **compiled to native C++**, **built in the cloud** for
every platform, and **available on npm**. It has since gained the full code-intelligence
experience you'd expect from a mainstream language:

- 🧭 **Navigate** — outline, go-to-definition (across passes and into `.kbb` concepts),
find references, rename, and workspace symbol search.
- 🚦 **Diagnostics** — a structural linter plus inline squiggles mapped straight from the
engine's `err.log` to the offending pass or dictionary line.
- ⌨️ **Write faster** — context-aware IntelliSense and function signature help.
- 👀 **Read easier** — code folding, semantic highlighting, and one-click quick fixes for
misspelled function calls.

All of it sits on top of the Version 3 foundation: a lossless NLP++ formatter, an
in-extension help system, a native regression-test runner, and cloud compile by default
(no local C++ toolchain required).

**Read the full summary:** [Version 3 — NLP++ Is Now a First-Class Language in VS
Code](../versions/3.9.0.md)

_See more on the [Help home](../home.md)._
59 changes: 59 additions & 0 deletions Help/markdown/vscode/versions/3.9.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Version 3 — NLP++ Is Now a First-Class Language in VS Code

Version 3 opened by making analyzers **compiled, cloud-built, and available on npm**
(see the [3.0.0 notes](3.0.0.md)). It has since grown into something just as big for
day-to-day work: NLP++ pass files now get the **full code-intelligence experience** you
expect from a mainstream programming language — built specifically around passes, rules,
regions, functions, and the knowledge base.

[← Back to Help home](../home.md)

## 🧭 Navigate your analyzer like code

- **Outline & breadcrumbs** for every pass — jump around regions, rules, and `@DECL`
functions at a glance.
- **Go to Definition** on a rule, function, or KB concept — works *across passes* and
reaches into `.kbb` concept definitions.
- **Find All References** and **occurrence highlighting** across the whole analyzer.
- **Rename Symbol** — safely rename a rule, function, or concept everywhere at once.
- **Workspace Symbol** search (Ctrl+T) — jump to any rule, function, or concept by name.
- **Hover** documentation for built-in functions, keywords, node accessors, and
`@region` markers.

## 🚦 Catch mistakes without leaving the editor

- A **structural linter** flags unbalanced brackets and unterminated comments as you type.
- **Engine errors become inline squiggles** — when you compile or analyze, the analyzer's
`err.log` is parsed and each error is mapped back to the exact pass or dictionary file
and line that caused it, and listed in the Problems panel.

## ⌨️ Write faster

- **Context-aware IntelliSense.** Type `@` for region markers; inside a code region get
built-in functions, keywords, node accessors, and your own `@DECL` functions; inside a
rules region get rule-element modifiers (`opt`, `star`, `plus`, `trig`…), concepts, and
rule names from across the analyzer.
- **Signature help** shows a function's parameters as you fill in arguments, highlighting
the one you're on. Your own functions show their full parameter list.

## 👀 Read code more easily

- **Code folding** for regions (`@RULES`, `@CODE`, `@DECL`…) and individual multi-line
rules — long pass files finally collapse.
- **Semantic highlighting** colors identifiers by *what they are*: built-in function, your
function, KB concept, rule, or node accessor.
- **Quick fixes** for misspelled function calls — a one-click "Replace with…" when a call
closely matches a real function, and quiet otherwise.

## 🧰 And the foundation it builds on

Alongside the language tooling, Version 3 also brought a **lossless NLP++ formatter**
(Format Document / on save), an **in-extension Help system**, a **native regression-test
runner**, **deploy of stand-alone compiled analyzers**, and **cloud compile by default** —
compile with no local C++ toolchain and no configuration.

---

📖 Full write-up: *[NLP++ in VS Code: Everything New in Version
3](https://visualtext.org/)*  •  See also the [3.0.0 notes](3.0.0.md) and
[3.2.0 notes](3.2.0.md).
Loading