A self-contained VS Code extension that replaces a curated set of utility extensions with trusted local implementations.
The original copy-to feature remains available as one feature inside Expansion Pack.
| Original extension | Expansion Pack status | What it does |
|---|---|---|
| Bookmarks | Implemented core | Toggle, list, clear, and navigate line bookmarks in the active workspace. |
| Markdown Preview Mermaid Support | Implemented core | Render Mermaid fenced code blocks inside Markdown preview. |
| Better TOML | Implemented core | Add TOML file recognition, syntax highlighting, brackets, comments, and basic diagnostics. |
| npm Intellisense | Implemented core | Suggest packages from workspace package.json inside import and require strings. |
| Bracket Select | Implemented core | Select text inside or including the nearest bracket pair. |
| PostCSS Language Support | Implemented core | Add PostCSS file recognition, syntax highlighting, brackets, comments, and basic diagnostics. |
| Comment Anchors | Implemented core | Highlight and list configured anchor tags such as TODO, FIXME, and ANCHOR. |
| Code Runner | Implemented core | Run the active file in a reusable terminal using a language executor map. |
| Git Tree Compare | Implemented core | Compare the working tree against another git ref in an Explorer tree view. |
| Color Highlight | Implemented core | Highlight visible CSS color literals in the editor. |
| Copy File Name | Implemented core | Copy selected Explorer item names, with or without extensions. |
| Git File History | Implemented core | Browse commit history for the current file and open commit diffs. |
| SQLite Viewer | Implemented core | Inspect SQLite table previews in a read-only webview. |
| YAML | Implemented core | Add YAML file recognition, syntax highlighting, brackets, comments, and basic diagnostics. |
| Copy File Path with Line Number | Implemented core | Copy the active file path with current line and column. |
| Surround | Implemented core | Wrap current selections with parentheses, quotes, brackets, braces, or backticks. |
- Right-click a file or folder in Explorer.
- Select Expansion Pack: Copy to....
- Choose a configured preset or Browse....
Settings:
{
"expansionPack.copyTo.destinationPath": "~/Downloads",
"expansionPack.copyTo.presets": [
{ "label": "Downloads", "path": "~/Downloads" }
]
}Legacy copyTo.destinationPath and copyTo.presets settings are still read as fallbacks.
Use the Command Palette:
- Expansion Pack: Toggle Bookmark
- Expansion Pack: List Bookmarks
- Expansion Pack: Go to Next Bookmark
- Expansion Pack: Go to Previous Bookmark
- Expansion Pack: Clear Bookmarks
Bookmarked lines are highlighted in visible editors and stored in workspace state.
- Open a Markdown file.
- Add a fenced code block with
mermaidas the language. - Run VS Code's built-in Markdown: Open Preview command.
Example:
```mermaid
graph TD
A[Start] --> B[Done]
```Expansion Pack renders the diagram in the Markdown preview using the bundled mermaid package.
{
"expansionPack.markdownMermaid.languages": ["mermaid"]
}Open .toml files or Pipfile.
Expansion Pack provides TOML language recognition, comments, bracket pairing, syntax highlighting, and basic diagnostics for duplicate keys and invalid table headers.
- Open a JavaScript or TypeScript file.
- Type inside an import source, for example
import React from ". - Completion suggestions include dependencies from workspace
package.jsonfiles.
Use the Command Palette or editor context menu:
- Expansion Pack: Select Inside Brackets
- Expansion Pack: Select Including Brackets
Supported bracket pairs are (), [], {}, and <>.
Open .pcss, .postcss, or .css files and choose PostCSS as the language mode when needed.
Expansion Pack provides PostCSS language recognition, block comments, bracket pairing, syntax highlighting for at-rules, variables, custom properties, selectors, values, and basic unmatched-brace diagnostics.
Comment Anchors scans open files and adds informational diagnostics for configured tags.
Use Expansion Pack: List Comment Anchors to jump to anchors in open files.
{
"expansionPack.commentAnchors.tags": [
"ANCHOR",
"TODO",
"FIXME",
"NOTE",
"REVIEW",
"SECTION"
]
}- Open a file.
- Run Expansion Pack: Run Code.
- The file runs in the reusable Expansion Pack Runner terminal.
Default executors:
| VS Code language id | Executor |
|---|---|
javascript, javascriptreact |
node |
typescript, typescriptreact |
npx ts-node |
python |
python3 |
ruby |
ruby |
php |
php |
shellscript |
bash |
Override executors with:
{
"expansionPack.codeRunner.executorMap": {
"typescript": "pnpm exec tsx {file}",
"javascript": "node"
},
"expansionPack.codeRunner.saveBeforeRun": true
}- Open a git workspace.
- Open the Explorer side bar.
- Use the Git Tree Compare view.
- Use the branch icon to change the base ref, or the refresh icon to reload.
- Select a changed file to open it, or use the item context menu to open a diff.
Open a file containing color literals such as #ffcc00, rgb(255, 204, 0), or hsl(48, 100%, 50%).
Expansion Pack highlights matching literals in visible editors automatically.
- Right-click one or more files/folders in Explorer.
- Select Expansion Pack: Copy File Name or Expansion Pack: Copy File Name Without Extension.
- Names are copied to the clipboard, one per line.
- Open a file tracked by git.
- Run Expansion Pack: Open Git File History from the Command Palette, editor context menu, or Explorer context menu.
- Pick a commit.
- Expansion Pack opens a diff for that file at the selected commit.
The command reads up to 50 commits with git log --follow.
- Right-click a
.db,.sqlite, or.sqlite3file. - Select Expansion Pack: Open SQLite Viewer.
- Expansion Pack opens a read-only webview with table previews.
SQLite Viewer uses the local sqlite3 CLI and displays the first 100 rows per user table.
Open .yaml, .yml, .eyaml, or .eyml files.
Expansion Pack provides YAML language recognition, comments, bracket pairing, syntax highlighting, and basic diagnostics for tab indentation and suspicious mapping entries.
- Put the cursor in an editor.
- Run Expansion Pack: Copy File Path with Line Number or Expansion Pack: Copy Relative File Path with Line Number.
- The clipboard receives
path:line:column.
- Select text in an editor.
- Run Expansion Pack: Surround with....
- Choose the wrapper pair.
Direct commands are also available for parentheses and double quotes.
pnpm install
pnpm run lint
pnpm run typecheck
pnpm run build
pnpm run test:smoke
pnpm run verify
pnpm exec vsce packagepnpm run lint uses eslint-config-ts-prefixer and fails on warnings so ESLint stays at zero issues.
pnpm run test:smoke launches VS Code with a temporary fixture workspace and checks the migrated command, language, diagnostic, clipboard, editor-selection, Git, and SQLite paths.
- Extension name:
expansion-pack - Publisher:
laststance - Icon:
images/icon.png - Entry point:
dist/extension.js - Build command:
pnpm run build - Verification command:
pnpm run verify - Package command:
pnpm exec vsce package - Third-party notices:
THIRD_PARTY_NOTICES.md
Expansion Pack is a clean-room behavior recreation. No upstream source code, grammars, bundled assets, or license text from the original extensions has been copied into this repository. Mermaid rendering uses the bundled mermaid npm package; see THIRD_PARTY_NOTICES.md.
| Original extension | Extension ID | Author / owner | Upstream license noted by GitHub API |
|---|---|---|---|
| Bookmarks | alefragnani.bookmarks@14.1.1 |
Alessandro Fragnani / alefragnani |
GPL-3.0 |
| Markdown Preview Mermaid Support | bierner.markdown-mermaid@1.32.1 |
Matt Bierner / mjbvz |
MIT |
| Better TOML | bungcip.better-toml@0.3.2 |
bungcip |
Not asserted by GitHub API |
| npm Intellisense | christian-kohler.npm-intellisense@1.4.5 |
Christian Kohler / ChristianKohler |
MIT |
| Bracket Select | chunsen.bracket-select@2.0.2 |
wangchunsen |
Not asserted by GitHub API |
| PostCSS Language Support | csstools.postcss@1.0.9 |
CSSTools / csstools |
Not asserted by GitHub API |
| Comment Anchors | exodiusstudios.comment-anchors@1.10.4 |
Starlane Studios / StarlaneStudios |
MIT |
| Code Runner | formulahendry.code-runner@0.12.2 |
Jun Han / formulahendry |
MIT |
| Git Tree Compare | letmaik.git-tree-compare@1.20.0 |
Maik Schreiber / letmaik |
MIT |
| Color Highlight | naumovs.color-highlight@2.8.0 |
Sergii Naumov / iamsergii |
GPL-3.0 |
| Copy File Name | ouweiya.copy-file-name@3.0.9 |
ouweiya |
Not asserted by GitHub API |
| Git File History | pomber.git-file-history@1.0.1 |
pomber |
MIT |
| SQLite Viewer | qwtel.sqlite-viewer@25.12.2 |
qwtel |
Not asserted by GitHub API |
| YAML | redhat.vscode-yaml@1.23.0 |
Red Hat / redhat-developer |
MIT |
| Copy File Path with Line Number | snwfdhmp.copy-file-path-with-line-number@0.0.1 |
snwfdhmp |
No upstream repository provided |
| Surround | yatki.vscode-surround@1.5.0 |
yatki |
MIT |
This repository is currently licensed under ISC. Bundled third-party dependencies keep their own licenses as documented in THIRD_PARTY_NOTICES.md.