Skip to content

Commit 2b94cb9

Browse files
ww-mwclaude
andcommitted
Improve README for the Marketplace listing; bump to 1.2.8
Add a benefit-led "Why Simulink Data Explorer?" hook, a "Jump-to-Reference Navigation" section highlighting cross-file link navigation, regroup the feature list under scannable subheadings, and add a Questions & Answers section. Docs only. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 6ec44ed commit 2b94cb9

3 files changed

Lines changed: 52 additions & 3 deletions

File tree

README.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,36 @@ It adds a native experience for Simulink file types — a **Simulink Data Explor
66

77
![Simulink Data Explorer in action: the relationship-tree sidebar and the table editor browsing a model, data dictionary, and MAT-file](media/screenshots/demo.gif)
88

9+
## Why Simulink Data Explorer?
10+
11+
- **Read Simulink files without MATLAB or Simulink** — inspect `.slx`, `.sldd`, `.mat`, and `.prj` files anywhere VS Code runs, including on machines and CI agents with no MATLAB install.
12+
- **See how your project fits together** — a relationship tree maps every model, dictionary, and MAT-file and how they reference each other, with at-a-glance health badges for cycles, orphans, and missing references.
13+
- **Click through references like hyperlinks** — jump from a model to the models, dictionaries, and MAT-files it depends on in one click (see below).
14+
- **Edit textual data dictionaries in place** — change values, add elements, and cut/copy/paste entries in a spreadsheet-style table, with native undo/redo and save.
15+
16+
## Jump-to-Reference Navigation
17+
18+
Open a model and its **Model References** and **External Data** appear as links. Click one and the referenced file — a submodel (`.slx`), a linked data dictionary (`.sldd`), or a MAT-file (`.mat`) — opens right away, resolved from your workspace. It's how you'd expect cross-file navigation to work in an editor: follow the dependency chain without hunting through folders.
19+
920
## Features
1021

22+
### Navigate & understand your models
23+
1124
- **Relationship tree** — a dedicated activity-bar view that scans the workspace and renders how files relate: models referencing other models, models linked to data dictionaries (`.sldd`) and MAT-files (`.mat`), and dictionaries referencing other dictionaries. Entries expand lazily as you drill in.
25+
- **Jump-to-reference links** — a model's Model References and External Data render as clickable links; selecting one opens the referenced model, dictionary, or MAT-file, resolved from your workspace.
1226
- **Project & folder grouping** — the tree groups top-level entries by MATLAB Project (`.prj`) or by containing folder, so files with the same name in different folders stay distinct. References resolve within a group first.
1327
- **Health decorations** — tree rows are badged for at-a-glance status: circular references, orphaned dictionaries/MAT-files (nothing links to them), unsaved modifications, and unresolved (missing) references.
28+
29+
### Browse & edit file contents
30+
1431
- **Table editor** — open a model, dictionary, MAT-file, or project in a spreadsheet-style, tree-structured table. Sections are always shown (e.g. a dictionary's Design Data, Architectural Data, Configurations, Other Data), even when empty.
1532
- **Editing for textual `.sldd`** — edit a textual (JSON) data dictionary directly in the table: change entry values and names, add child elements, and cut/copy/paste/delete entries via the right-click context menu. Edits write back to the JSON file, so **undo/redo, the dirty indicator, and save are all native** and stay in sync with the built-in text view. Binary `.sldd`, `.slx`, `.mat`, and `.prj` open read-only.
1633
- **Live two-way sync** — because a textual `.sldd` is backed by its JSON text document, edits in the table and edits in the JSON text editor update each other instantly, and there is a single shared undo history across both views.
1734
- **Properties panel** — a selection-following webview that shows the full properties of the entry selected in the table. It lives in its own view container and can be docked in the secondary sidebar.
1835
- **Search** — filter entries by name using the table's built-in filter bar as you type.
36+
37+
### Fits your editor
38+
1939
- **Dual view for textual `.sldd`** — because a textual `.sldd` is JSON, you can switch to Visual Studio Code's built-in JSON text editor at any time via **Reopen Editor With…**.
2040
- **Theme-aware** — every pane follows your active Visual Studio Code color theme (light, dark, or high-contrast).
2141

@@ -64,6 +84,35 @@ No MATLAB&reg; or Simulink installation is required to view or edit files — Si
6484
- Reference resolution matches files by name (basename), preferring the referrer's own project or folder. Two `.prj` files in the same directory are not supported.
6585
- `.m` files are not scanned, so a project whose members are only `.m` files appears as an empty group.
6686

87+
## Questions & Answers
88+
89+
**Do I need MATLAB or Simulink installed?**
90+
No. Simulink Data Explorer reads (and, for textual `.sldd`, writes) the files directly, so it works anywhere VS Code runs — including machines and CI agents with no MATLAB or Simulink installation.
91+
92+
**Which file types can I open?**
93+
`.slx` (Simulink models), `.sldd` (data dictionaries), `.mat` (MAT-files), and `.prj` (MATLAB Projects). Textual (JSON) `.sldd` files are editable; the rest open read-only.
94+
95+
**Can I edit files, or is this view-only?**
96+
You can edit **textual (JSON) `.sldd`** dictionaries directly in the table — values, names, child elements, and cut/copy/paste/delete — with native undo/redo and save. Binary `.sldd`, `.slx`, `.mat`, and `.prj` are read-only.
97+
98+
**A reference link doesn't open anything — why?**
99+
Links resolve by file name against your open workspace. Make sure the referenced file is inside the folder or workspace you have open in VS Code; a reference to a file that isn't present shows as unresolved (and is badged in the relationship tree).
100+
101+
**How are references matched across folders?**
102+
By basename, preferring the referrer's own MATLAB Project or containing folder first. If two files share a name in different folders, the one in the referrer's group wins.
103+
104+
**Why did my large `.sldd` open read-only, or as plain text?**
105+
Above **50 MB**, a textual `.sldd` opens as a **read-only** table (VS Code cannot mirror a document that large for editing). Above **512 MB**, it opens in VS Code's built-in **text editor** instead of a table.
106+
107+
**Does editing in the table stay in sync with the JSON text editor?**
108+
Yes. A textual `.sldd` is backed by its JSON document, so table edits and text-editor edits update each other instantly and share one undo history. You can switch views anytime via **Reopen Editor With…**.
109+
110+
**Is my theme respected?**
111+
Yes — every pane follows your active VS Code color theme (light, dark, or high-contrast).
112+
113+
**How do I report a bug or request a feature?**
114+
Please open an issue on the [GitHub repository](https://github.com/mathworks/data-explorer-vscode). If the extension is useful to you, a rating or review on the Marketplace helps others find it.
115+
67116
## License
68117

69118
Distributed under the BSD 3-Clause License. See [LICENSE](LICENSE) for details.

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "simulink-data-explorer",
33
"displayName": "Simulink Data Explorer",
44
"description": "Explore Simulink models, data dictionaries, MAT-files, and projects as interactive tables and relationship trees.",
5-
"version": "1.2.7",
5+
"version": "1.2.8",
66
"publisher": "mathworks",
77
"icon": "media/icon.png",
88
"private": true,

0 commit comments

Comments
 (0)