Create integrated terminal in C# (Mono) application

62 views Asked by At

I'm working on a project where I would like to add an integrated terminal just like modern IDE's have (cross-platform Windows/Linux/MacOS). I have tested most of the basics by simply using a System.Diagnostics.Process. I can run commands and use I/O redirection to interact with it. For example: I can run bash on ubuntu and call commands.

But where I'm getting stuck with my experiments is implementing something like nano or vi(m). How exactly would that work? How do I send commands to the nano like Ctrl+x to exit? Also, when VIM is started in JetBrains Rider I also get these help indicators for the shortcuts etc. I suppose that's custom made.

Can I get this done with just c# or should I resort to native (c/c++) as the API? And how would that work exactly? I just need some API to interact with and I'll render the output in my c# application.

Thanks in advance,

Ruben

0

There are 0 answers