TM Terminal

Add this URL to your Eclipse Installation to reach this solution's update site.

2024-06 (4.32), 2024-06 (4.33)

2024-03 (4.31)

2023-12 (4.30)

2023-09 (4.29)

2023-06 (4.28)

2023-03 (4.27)

2022-12 (4.26)

2022-09 (4.25), 2022-06 (4.24)

2022-03 (4.23)

2021-12 (4.22)

2021-09 (4.21)

2021-06 (4.20)

2021-03 (4.19)

2020-12 (4.18), 2021-03 (4.19)

2020-09 (4.17)

2020-06 (4.16), 2020-03 (4.15)

2019-12 (4.14), 2019-09 (4.13), 2019-06 (4.12), 2019-03 (4.11), 2018-12 (4.10), 2018-09 (4.9), Photon (4.8), Oxygen (4.7), Neon (4.6), Mars (4.5), Luna (4.4), Kepler (4.3), Juno (4.2, 3.8), 2024-03 (4.31), 2024-06 (4.32), 2024-06 (4.33)

Learn more...
Solution Description

A fully working command-line Terminal inside Eclipse. Just press Ctrl+Alt+T to open a local command prompt (Terminal). That's all - it just works :) Previous sessions are remembered and auto-reconnected on quit and restart. Supports Windows, Linux and Mac. For additional options or remote sessions, use Ctrl+Alt+Shift+T or click the "Terminal" toolbar button. Supports SSH, Telnet or Serial line. Full ANSI cursor control, readline and coloring, Use vi, emacs or similar programs on any remote host. In the Terminal, type Alt+Up to maximize or restore it. Use Alt+Right for quick access to other Eclipse views. Type Ctrl+PgUp/PgDn to switch between multiple Terminal Tabs. See Preferences > Terminal for additional options like registering custom shell environments (like Git Bash, Cygwin, or just custom PATH settings).

Enhancements and Fixes are now listed in the CDT New and Noteworthy document's Terminal section 

Found an issue? - Please report an issue!

Interested in requesting enhancements, or participating? Read the contribution guide.

Brought to you by the Eclipse CDT Committers with help from winpty@github, and many other Community Members.

Additional Details

Eclipse Versions: 2024-06 (4.32), 2024-06 (4.33), 2024-03 (4.31), 2023-12 (4.30), 2023-09 (4.29), 2023-06 (4.28), 2023-03 (4.27), 2022-12 (4.26), 2022-09 (4.25), 2022-06 (4.24), 2022-03 (4.23), 2021-12 (4.22), 2021-09 (4.21), 2021-06 (4.20), 2021-03 (4.19), 2020-12 (4.18), 2020-09 (4.17), 2020-06 (4.16), 2020-03 (4.15), 2019-12 (4.14), 2019-09 (4.13), 2019-06 (4.12), 2019-03 (4.11), 2018-12 (4.10), 2018-09 (4.9), Photon (4.8), Oxygen (4.7), Neon (4.6), Mars (4.5), Luna (4.4), Kepler (4.3), Juno (4.2, 3.8)

Platform Support: Windows, Mac, Linux/GTK

Organization Name: Eclipse Foundation

Development Status: Production/Stable

Date Created: Thursday, May 15, 2014 - 04:49

License: EPL 2.0

Date Updated: Wednesday, June 12, 2024 - 13:54

Submitted by: Martin Oberhuber

Date Ranking Installs Clickthroughs
July 2024 82/645 241 11
June 2024 91/681 367 27
May 2024 82/682 459 34
April 2024 88/687 440 27
March 2024 73/694 597 26
February 2024 93/687 373 34
January 2024 96/691 401 34
December 2023 106/671 330 21
November 2023 92/686 489 22
October 2023 97/673 436 15
September 2023 97/663 434 30
August 2023 99/673 382 16
View Data for all Listings

Unsuccessful Installs

Unsuccessful Installs in the last 7 Days: 3

Download last 500 errors (CSV)

Marketplace Drag to Install Button

By adding the following code below to your website you will be able to add an install button for TM Terminal.

HTML Code:

Markdown Syntax:


Drag to your running Eclipse* workspace. *Requires Eclipse Marketplace Client

Reviews Add new review


Could you add some DTR support when using USB serial connection (CDC profile) ? It is widely used as a COM opening detection method (even if stated as optionnal by the standard), and it does not seem to be implemented for now.

Thank you and great job !

Something has changed between Eclipse 2020-06 and 2020-09 under Windows when simply using the default built-in terminal, which I guess is most likely "cmd.exe". While output wasn't the best in the past already, with Eclipse 2020-09 it's totally unreadable now. Can't attach a screenshot, though. With 2020-06 it was mostly usable and a great help when dealing e.g. with Gradle, but the output of "gradlew" is completely unreadable now.

In reply to by Thorsten Schöning

Hi Thorsten - the Terminal Project did get a bunch of fixes for 2020-09, it was the first "major" release of the terminal in many years. I am sorry that something has regressed for you and I would appreciate some more information so it can be resolved. Can you file a bug… or if not, send me an email with a screenshot and which release of Windows you are using?

I managed to get this working with Cygwin. I didn't use mintty (which caused the shell to open in a new window) but instead executed bash directly.

It is not at all obvious but you can add custom shells by clicking "Add" in the "Show In... Custom Entries" table in the preferences under Terminal/Local Terminal. (Why is this table called "Show in... Custom Entries"? Why not add "Custom Shells" or perhaps "Additional Shells"...)


I used the following config:

Name: Cygwin Terminal
Path: C:\data\applications\cygwin64\bin\bash.exe
Arguments: --login
Icon: C:\data\applications\cygwin64\Cygwin-Terminal.ico

There's one problem: you can't really change the font associated with the Terminal. I've tried going to "Fonts and Colors/Terminal" but that only affects the prompt. Everything thing else is printed out using the very ugly default terminal font.

When I press CTRL-ALT-SHIFT-T it asks me which type of Terminal to run. This is kind of annoying. 99% of the time I want to run the same Terminal I ran before, the Cygwin Terminal.

I wish that I could change the title of the 'Terminal' tabs that appear in the Terminal View. They are all named 'hostname', 'hostname (1)', 'hostname (2)'. I also wish I could rename the Terminal View names themselves. They are always 'Terminal', 'Terminal 1' etc.

I wish that the Terminal I opened in Eclipse could inherit Environment Variables from the Eclipse Workspace. It would be awesome if things like JAVA_HOME and ECLIPSE_HOME could be set.

I wish there was some way to save Terminal "session state." Everytime I open up certain workspaces I cd to the same directories and ssh into the same boxen as the same user. I end up having to recreate my "Terminal Workspace" when Eclipse already has a mechanism to persist the last state of my Workspace.

It's a stretch but I do wish I could change the colors. I don't know why but the Terminal is always Green and Black.  Maybe this is coming from "Command Prompt"?

That said I really like this plugin. I could always run a separate Terminal program but having everything inside Eclipse is very useful especially when I'm running multiple Eclipses, have terminals open to build stuff, deploy stuff, and even open IRC sessions (cygwin irssi FTW), logged in to remote boxes and more.

Works perfectly with Cygwin Terminal with the right setup, e.g.: 
Window->Preferences->Terminal->Local Terminal
Name: Cygwin Terminal
Path: C:\cygwin\bin\mintty.exe
Arguments: -i /Cygwin-Terminal.ico --dir . -
Icon: C:\cygwin\Cygwin-Terminal.ico
(Checked) Translate Backslashes on Paste
[Apply and Close]


When running in macOS High Sierra v. 10.13.4 using Oxygen eclipse.buildId=4.7.3.M20180330-0640 I'm observing the following:

Prompt seems to start with a tab space. First character typed puts what look like a pipe and every following typed character duplicates the previous one with some garbage in between. For example typing "help" looks like this:

$  | h

$  h'he

$  he'el

$  hel'lp

However if I remove focus from the terminal the typed word shows correctly and if I hit <Enter> the command is properly processed so this is just a display issue


Gradle scripts apparently use special characters to e.g. position the cursor. This spoils the output of Gradle scripts in the TM Terminal.

For example:

gradlew compileJava

> Configure project :
configuring root project 'oxlims' with shared config from oxconf.gradle
  0;32;1;0;39;1m-------------> 0% EXECUTING [58s]fig from oxwebconf.gradle
> :compileJava> :compileJava


I use neon3 for embedded development,and i always use serial connect with my board.So i need to download terminator and install,after i installed termintor ,i still couldn't connect with my board,as :i search ,someone said still need install rxtx,and after i install rxtx, i still could not see COM* ???what's wrong maybe??


I am using TM Terminal to run a Terminal inside Eclipse. I use it to launch afl-fuzzer inside Eclipse. Somehow character encoding in the Terminal in Eclipse is different from when I run the process in Linux terminal itself outside Eclipse.

I am not able to add screenshots here, so I created a stack overflow post about this issue 

Please suggest how to fix character encoding in Terminal inside Eclipse.



It appears the serial terminal REQUIRES CR/LF sequences to do a newline.

'\n' Linefeed which is the typical newline for C based systems (Unix and embedded targets) just does a strict linefeed, not a newline.  Is there a way to make the serial terminal respect the behaviour of the target and interpret the line ending sequence according to its requirements?  Ideally one would be able to choose for a session what Newline sequence is being employed by a target.


Hi, I am trying to use zsh as my terminal on mac. that works. Now when I come to eclipse TM terminal, the zsh configuration is not as it is on zsh. Now I do not know how to reset it back to regular default configuration. Anyone has an idea for using the beautiful zsh color themes in Eclipse TM terminal.
This is how i set it up for my mac using wesbos cobalt2 theme available on github . I was hoping this will come to TM Terminal. But not. In terminal there is a preference to use /bin/bash or /bin/zsh. Can I also somehow bring this colorful zsh into TM terminal ?
Thank you

I found a little bit delay of showing the letters when typing in the terminal result in overlapped letters. I love this plugin, please help! I am using Neon1 and Mac.

In reply to by Martin Oberhuber

Hi all, I'm running Scala IDE within Eclipse. I installed a plugin "sbteclipse" through OSX Terminal so that I can manage Scala libraries. When I use command like "$ sbt run " in OSX Terminal, it works fine, but when I use this command in Eclipse Terminal, it tells me "Command not found". How should I solve this problem? Do I need to re-install all the plugins again within TM Terminal?


When typing in the TM terminal, there is a little bit delay for showing the letter result in overlapped letters. I am using Neon1 and Mac, I love this plugin and please help!

Cool and useful plugin!

Anyway i have a question about it. Is there a way to open a TM terminal with environment variables set and command executed (for example running a debug-server)? Is there a way to run this kind of a 'running configuration'? I am trying to add a button for this but I don't where to start searching for the solution.


On Mac OS X the terminal is missing `PATH`s, which are listed in `/etc/paths`. An option to open a login shell would be useful to workaround this, since running `bash -l` works.

The plugin is useful and makes life easier. Thanks!

When restarting Eclipse, the current directory is lost. Any chance that open terminal windows could remember the current directory when closing Eclipse and "cd" to the same directory upon restart?

In reply to by Markus Pscheidt

I'm afraid it is non-trivial listening to an arbitrary remote system to determine what the current directory actually is. Keep in mind that there could be symbolic links, relative paths, or actually a different program running on the remote that doesn't behave like a shell at all.
That said, we would be open to contributions along these lines, please create a bugzilla enhancement request if you're interested.

I switched from netbeans to eclipse because of a serious netbeans bug and this was the missing link which keeps me from switching back!

Btw. the link to the support page is 404

Don't be afraid, i don't need support for it;)

Thanks for this really handy tool.

Thanks for this great plugin.
I successfully installed on Eclipse Neon.
But I down know how to configure it to add "/usr/local/bin/" to $PATH
How can I do it?

Thank you.

In my server view, I have some custom remote servers. I want to add same Terminal feature to it through context menu. Can you please share the core API through which if I provide host,username,password,directory then the API opens the Terminal View for given details.


Hope this isn't a stupid question. I'm using this plugin inside of Nodeclipse/Enide Studio.

The basic commands work in your terminal plugin (cd, ls, etc), but why can't I run commands such as "node app.js" or anything like that?


I've been using the TM Terminal for a while now, and I've been very pleased with it.

Now however, for some reason, I can no longer open new terminal windows. I can see the Terminal View, but when I click on "Open a Terminal" and select "Local Terminal" and Encoding: "UTF-8", and then click on OK... nothing happens. The Terminal View remains gray.

This used to work. I've tried reinstalling it, but no luck. Any help would be appreciated!


Thank you very much for your effort in implementing this great terminal.

Regarding the "auto connecting previous sessions" feature - is it possible to disable it? I would like all sessions to close as soon as I terminate eclipse.

Thank you!