The Terminal+ view inside the Angular IDE is designed to simplify the management and usage of different commandline tools. For those new to modern web development, it can be quite a burden getting the appropriate Node, NPM, and angular-cli versions set up for development. The Terminal+ takes away this hassle by allowing automatic configuration and management of versions.
When working with multiple projects, the Terminal+ view automatically configures the Bash shell used for each project, keeping track of appropriate CLI versions for compatibility. To change the behavior for a project, click the Properties icon in the Terminal view for the desired project and configure the CLI versions as needed .
Modern development requires usage of a number of CLIs, many of which are known to be unreliable on Windows when run from a cmd.exe prompt. To that end, the Terminal+ view will automatically use the appropriate Bash on the system, including downloading Git-Bash on Windows if not already detected on the system.
Bash is then automatically configured for optimal usage for the given project, including setting up project-specific versions of Node, NPM, and angular-cli when appropriate.
Node and NPM Automation
When selected on the project preferences, or as is automatically configured by the New or Import Angular Project wizards, the Terminal+ view can download and cache different versions of Node.
When the shell is created, the Terminal+ validates the current requested version of Node and NPM and will download as needed those versions.
In addition to setting up the NPM and Node versions, the command completion scripts are automatically registered with Bash.
Angular CLI Automation
The angular-cli version is managed by NPM and as such, the Terminal+ view is simply ensuring ‘ng’ is on the path, as well as enabling the command completion scripts.
To change the version of angular-cli, follow the instructions provided by the angular-cli portal.
When working with Git on the system, the Terminal+ view will not only automatically configure the command completion scripts for Bash, but the prompt is automatically configured to show the current branch when in a directory of a Git project. This helps during regular development from the command line.
In addition to the above automation, the Terminal+ view enables resource monitoring such that changes made on the file system are updated real-time back into the workspace simplifying development.