Bringing Better Classic ASP Support to VS Code in 2026
Classic ASP may be old, but legacy applications still need to be maintained. When working with these applications, the editor should help with more than syntax highlighting.
I started building Classic ASP Language Support because I wanted a more complete development experience in VS Code. What began as an extension for a legacy language has grown into a project covering formatting, IntelliSense, navigation, diagnostics and several other language features.
In this article, I'll explain the problems I wanted to solve, some of the challenges of supporting VBScript alongside HTML and JavaScript, and what I've learned from building and maintaining the extension.
Why Classic ASP is difficult to support
A single .asp file can contain several different languages. The editor has to understand where server-side VBScript begins and ends, how it interacts with HTML, and how embedded JavaScript, CSS and SQL should be handled.
Simply highlighting keywords is not enough when you also want useful completion, navigation and diagnostics.
Building a better development experience
I'll walk through some of the features I've implemented, including:
- Formatting mixed-language ASP files.
- IntelliSense and context-aware completions.
- Navigating definitions across
#includefiles. - Renaming symbols and finding references.
- Detecting common VBScript and markup mistakes.
The challenges behind the features
The interesting part isn't just adding commands to an editor. It's making different language features cooperate without interfering with each other, while keeping the extension responsive on large files.
I'll share examples of the edge cases I've encountered and the lessons I've learned from improving the implementation.
What's next
Classic ASP is a legacy technology, but that doesn't mean maintaining it should be unnecessarily difficult.
I'm continuing to improve the extension and would welcome feedback from developers who work with real Classic ASP applications.
Try it: Classic ASP Language Support on the VS Code Marketplace
Source code: GitHub repository

Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments. Some comments have been hidden by the post's author - find out more