Skip to content

Commit db084b0

Browse files
authored
Merge pull request #331 from mathworks/dklilley/release/1.3.12
MATLAB extension for VS Code - v1.3.12
2 parents fcf2398 + 7378a08 commit db084b0

71 files changed

Lines changed: 9619 additions & 647 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.eslintrc.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,5 +45,17 @@
4545
"node_modules",
4646
"**/*.d.ts",
4747
"webpack.config.js"
48+
],
49+
"overrides": [
50+
{
51+
"files": ["src/test/workspacebrowser/**/*.ts"],
52+
"rules": {
53+
// Chai assertions (expect(x).to.be.true) are property accesses that
54+
// trigger no-unused-expressions. This is a known Chai/ESLint conflict.
55+
"@typescript-eslint/no-unused-expressions": "off",
56+
// Mock stubs and disposables use empty function bodies as intentional no-ops.
57+
"@typescript-eslint/no-empty-function": "off"
58+
}
59+
}
4860
]
4961
}

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [1.3.12] - 2026-06-15
11+
12+
### Added
13+
- Interactively inspect the MATLAB workspace in the MATLAB view with support for renaming, sorting, and deleting variables (Addresses [mathworks/MATLAB-extension-for-vscode#100](https://github.com/mathworks/MATLAB-extension-for-vscode/issues/100))
14+
- Improved formatting of warnings in output
15+
- Support for the diary command (Addresses [mathworks/MATLAB-extension-for-vscode#186](https://github.com/mathworks/MATLAB-extension-for-vscode/issues/186))
16+
- Support for word-based navigation and editing keyboard shortcuts in the MATLAB Terminal, including Ctrl+Left/Right to move by word, Ctrl+Shift+Left/Right to select by word, and Ctrl+Backspace/Delete to delete words (Addresses [mathworks/MATLAB-extension-for-vscode#249](https://github.com/mathworks/MATLAB-extension-for-vscode/issues/249))
17+
1018
## [1.3.11] - 2026-05-08
1119

1220
### Added

README.md

Lines changed: 59 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,18 @@ You can use this extension with or without MATLAB installed on your system. Howe
55

66
**Note:** This extension no longer supports MATLAB R2021a. To use advanced features or run MATLAB code, you must have MATLAB R2021b or later installed.
77

8+
## Table of Contents
9+
1. [Installation](#installation)
10+
2. [Get Started](#get-started)
11+
3. [Run and Debug MATLAB Code](#run-and-debug-matlab-code)
12+
4. [View MATLAB Workspace Contents](#view-matlab-workspace-content)
13+
5. [Work with MATLAB Projects](#work-with-matlab-projects)
14+
6. [Run MATLAB In Jupyter Notebooks](#run-matlab-in-jupyter-notebooks)
15+
7. [Configuration](#configuration)
16+
8. [Troubleshooting](#troubleshooting)
17+
9. [Contact Us](#contact-us)
18+
10. [Release Notes](#release-notes)
19+
820
## Installation
921
You can install the extension from within Visual Studio Code or download it from [Visual Studio Code Marketplace](https://marketplace.visualstudio.com/items?itemName=MathWorks.language-matlab). After installing the extension, you might need to configure it to make full use of all the features. For more information, see the [Configuration](#configuration) section.
1022

@@ -47,6 +59,22 @@ There are some limitations to running and debugging MATLAB code in Visual Studio
4759
* When using the **dbstop** and **dbclear** functions to set and clear breakpoints, the breakpoints are added to file but are not shown in Visual Studio Code.
4860
* Variable values changed in the MATLAB terminal when Visual Studio Code is paused do not update in the **Run and Debug** view until the next time Visual Studio Code pauses.
4961

62+
## View MATLAB Workspace Content
63+
If you have MATLAB R2023a or later installed on your system, you can interactively inspect the MATLAB workspace by opening the MATLAB view in Visual Studio Code. In the Workspace section of the MATLAB view, you can interactively manage variables in the MATLAB workspace while you run and debug MATLAB code. To access the MATLAB view, select the MATLAB icon in the Activity Bar on the left side of the Visual Studio Code window, which opens the view in the Side Bar.
64+
65+
In the Workspace section of the MATLAB view, you can:
66+
* View the name, value, size, and class of each variable in the MATLAB workspace.
67+
* Interactively rename, delete, and sort variables in the MATLAB workspace.
68+
69+
**Tip:** To access the MATLAB Workspace while debugging, drag the MATLAB icon from the Activity bar into the Run and Debug view. This adds the Workspace section of the MATLAB view to the Run and Debug view.
70+
71+
![MATLAB Workspace Screenshot](public/Workspace.png)
72+
73+
### Limitations
74+
* Interactively editing workspace variables in the Workspace section of the MATLAB view is limited to inline edits. Editing complex data types such as matrices, cells, and structs is not supported.
75+
* Multi-row selection is not supported.
76+
* Refreshing the workspace is not supported.
77+
5078
## Work with MATLAB Projects
5179
If you have MATLAB R2021b or later installed on your system, you can work with MATLAB Projects directly in Visual Studio Code. You can create new projects, open existing projects, and close the current project.
5280

@@ -62,11 +90,16 @@ You also can use this extension along with the Jupyter Extension for Visual Stud
6290
## Configuration
6391
To configure the extension, go to the extension settings and select from the available options.
6492

65-
### MATLAB Default Editor Setting
93+
### MATLAB Settings
94+
#### MATLAB Default Editor Setting
6695
By default, the extension uses the editor specified in the MATLAB Editor/Debugger settings to open files with the MATLAB `edit` and `open` commands. To make Visual Studio Code the default editor for these commands, set the `MATLAB.defaultEditor` setting to `true`. To revert to using the editor specified in the MATLAB Editor/Debugger settings, set `MATLAB.defaultEditor` to `false`.
6796
**Note:** Certain file types always open in MATLAB by default — for example, live scripts saved in the binary Live Code file format (.mlx) and MATLAB app files (.mlapp).
6897

69-
### MATLAB Install Path Setting
98+
#### MATLAB Index Workspace Setting
99+
By default, the extension indexes all the MATLAB code files (`.m`) in your current Visual Studio Code workspace. Indexing allows the extension to find and navigate between your MATLAB code files.
100+
You can disable indexing to improve the performance of the extension. To disable indexing, set the `MATLAB.indexWorkspace` setting to `false`. Disabling indexing can cause features such as code navigation not to function as expected.
101+
102+
#### MATLAB Install Path Setting
70103
If you have MATLAB installed on your system, the extension automatically checks the system path for the location of the MATLAB executable. If the MATLAB executable is not on the system path, you may need to manually set the `MATLAB.installPath` setting to the full path of your MATLAB installation. For example, `C:\Program Files\MATLAB\R2022b` (Windows®), `/Applications/MATLAB_R2022b.app` (macOS), or `/usr/local/MATLAB/R2022b` (Linux®).
71104

72105
You can determine the full path of your MATLAB installation by using the `matlabroot` command in MATLAB.
@@ -81,40 +114,48 @@ In the extension settings, set the `MATLAB.installPath` setting to the value ret
81114

82115
![MATLAB Install Path Setting](public/InstallPathSetting.png)
83116

84-
### MATLAB Automatically Start Debugger Setting
85-
By default, the extension does not automatically start the Visual Studio Code debugger when MATLAB reaches a breakpoint. To enable automatically starting the Visual Studio Code debugger, set the `MATLAB.startDebuggerAutomatically` setting to `true`. When starting the Visual Studio Debugger is disabled, MATLAB still stops at breakpoints, and you can debug your code in the MATLAB terminal using the MATLAB debugging functions.
86-
87-
### MATLAB Index Workspace Setting
88-
By default, the extension indexes all the MATLAB code files (`.m`) in your current workspace. Indexing allows the extension to find and navigate between your MATLAB code files.
89-
You can disable indexing to improve the performance of the extension. To disable indexing, set the `MATLAB.indexWorkspace` setting to `false`. Disabling indexing can cause features such as code navigation not to function as expected.
90-
91-
### MATLAB Connection Timing Setting
117+
#### MATLAB Connection Timing Setting
92118
By default, the extension starts MATLAB in the background when you open a MATLAB code file in Visual Studio Code. To control when the extension starts MATLAB, set the `MATLAB.matlabConnectionTiming` setting to one of these values:
93119
* `onStart` (default) — Start MATLAB as soon as a MATLAB code file is opened.
94120
* `onDemand` — Start MATLAB only when needed for a given action.
95121
* `never` — Never start MATLAB.
96122
Note: Some functionality is available only with MATLAB running in the background.
97123

98-
### MATLAB Max File Size for Analysis Setting
124+
#### MATLAB Max File Size for Analysis Setting
99125
By default, the extension analyzes all files, regardless of their size, for features such as linting, code navigation, and symbol renaming. To limit the maximum number of characters a file can contain, set the `MATLAB.maxFileSizeForAnalysis` setting. For example, to limit the number of characters to 50,000, set the `MATLAB.maxFileSizeForAnalysis` setting to `50000`. If a file contains more than the maximum number of characters, features such as linting, code navigation, and symbol renaming are disabled for that file. To remove the limit and analyze all files regardless of their size, set the `MATLAB.maxFileSizeForAnalysis` setting to `0`.
100126

101-
### MATLAB Show Feature Not Available Error Setting
127+
#### MATLAB Prewarm Graphics Setting
128+
By default, MATLAB services are started early to improve the first-time performance of MATLAB figure rendering. To disable this behavior, set the `MATLAB.prewarmGraphics` setting to `false`.
129+
This setting is supported with MATLAB R2025a and later. For earlier releases, this setting is ignored.
130+
131+
#### MATLAB Show Feature Not Available Error Setting
102132
By default, the extension displays an error when a feature requires MATLAB and MATLAB is unable to start. To not display an error, set the `MATLAB.showFeatureNotAvailableError` setting to `false`.
103133

104-
### MATLAB Sign In Setting
134+
#### MATLAB Sign In Setting
105135
By default, the extension assumes that the MATLAB installation specified in the Install Path setting is activated.
106136

107137
To enable browser-based sign in to your MathWorks account using the Online License Manager or a Network License Manager, set the `MATLAB.signIn` setting to true. When this setting is enabled, the extension prompts you to sign in when it starts MATLAB.
108138

109-
### MATLAB Telemetry Setting
139+
#### MATLAB Start Debugger Automatically Setting
140+
By default, the extension does not automatically start the Visual Studio Code debugger when MATLAB reaches a breakpoint. To enable automatically starting the Visual Studio Code debugger, set the `MATLAB.startDebuggerAutomatically` setting to `true`. When starting the Visual Studio Debugger is disabled, MATLAB still stops at breakpoints, and you can debug your code in the MATLAB terminal using the MATLAB debugging functions.
141+
142+
#### MATLAB Telemetry Setting
110143
You can help improve the extension by sending user experience information to MathWorks®. By default, the extension sends user experience information to MathWorks. To disable sending information, set the `MATLAB.telemetry` setting to `false`.
111144

112145
For more information, see the [MathWorks Privacy Policy](https://www.mathworks.com/company/aboutus/policies_statements.html).
113146

114-
### MATLAB Prewarm Graphics Setting
115-
By default, MATLAB services are started early to improve the first-time performance of MATLAB figure rendering. To disable this behavior, set the `MATLAB.prewarmGraphics` setting to `false`.
116-
This setting is supported with MATLAB R2025a and later. For earlier releases, this setting is ignored.
147+
### MATLAB Workspace Settings
148+
#### MATLAB Maximum Workspace Variables Setting
149+
By default, the extension displays up to 500 variables in the Workspace section of the MATLAB view. Limiting the number of displayed variables can improve performance, especially when working with large workspaces. If the MATLAB workspace contains more variables than the specified limit, the extension displays the first variables in the sorted list, up to the configured maximum.
117150

151+
To control how many variables to display, set the `MATLAB.maximumWorkspaceVariables` setting. For example, set the `MATLAB.maximumWorkspaceVariables` setting to `100` to display up to 100 variables.
152+
153+
#### MATLAB Workspace Sort Method Setting
154+
By default, variables in the Workspace section of the MATLAB view are sorted alphanumerically.
155+
To change the sort method, set the `MATLAB.workspaceSortMethod` setting to one of these values:
156+
157+
* `Natural (default)` — Compare numbers within names by numeric value. **Example**: [var1, var2, var10]
158+
* `Lexicographic` — Compare names character by character. **Example**: [var1, var10, var2].
118159

119160
## Troubleshooting
120161
If the MATLAB install path is not properly configured, you get an error when you try to use certain advanced features, such as document formatting and code navigation.
@@ -126,35 +167,4 @@ We encourage all feedback. If you encounter a technical issue or have an enhance
126167

127168
## Release Notes
128169

129-
For a complete list of changes, see the [CHANGELOG](CHANGELOG.md).
130-
131-
### 1.3.0
132-
Release date: 2024-12-18
133-
134-
Added:
135-
* Debugging support
136-
* Support for inserting code snippets shipped with MATLAB (requires MATLAB R2025a or later)
137-
* Support for opening additional MATLAB file types (e.g. `.slx`, `.fig`) from the Visual Studio Code context menu (Community contribution from @Gusmano-2-OSU)
138-
139-
Fixed:
140-
* Syntax highlighting improvements (Community contribution from @apozharski)
141-
142-
### 1.2.0
143-
Release date: 2024-03-05
144-
145-
Added:
146-
* Code execution support
147-
148-
### 1.1.0
149-
Release date: 2023-06-05
150-
151-
Added:
152-
* Document symbol and outline support
153-
154-
Fixed:
155-
* Code folding no longer matches `end` when used in strings, comments, and to denote the end of a matrix
156-
157-
### 1.0.0
158-
Release date: 2023-04-26
159-
160-
* Initial release.
170+
For a complete list of changes, see the [Change Log](CHANGELOG.md).

0 commit comments

Comments
 (0)