Run commands in a (new) terminal?

I would like to have the ability to run some commands in a new terminal. For example, when building or testing, it’s useful to be able to see the output, and in some cases interact with it.

Nova already has a fairly functional terminal widget.

So what I’d like to be able to do is arrange to run my Process attached to a newly created terminal widget. The simplest API I’d propose for this is to add a new property to the options, say “terminal”, that if true creates a new terminal and runs the command in it.

The terminal should persist until the user closes it. (Some commands might be short-lived.). Also, the environment variables and especially $TERM should be set appropriately.

4 Likes

Still no way to do this?

I’d like to add a command to my extension which quickly opens a REPL. Is there no way to open a new terminal and execute a command?

1 Like

Not currently, no. This would require first having support for launching terminals with specific commands to run as described, but just by the user in general, which has somewhat fragile considerations around launch argument handling as well as different shells (we have regular users using bash, zsh, fish, and others). Then there’s the matter of exposing it to the
Extension API. I want to do this and have made some headways, but it’ll take some work.

2 Likes

Any update on this Logan? I’m working on a couple of Extensions that could really do with this

I unfortunately don’t have any news to share. This is still on my list, though. There’s just a lot to do around it to make it work reliably and I haven’t been able to get to it.

2 Likes

Posting to subscribe to this thread, and throw my two cents in as well. :slight_smile: I had a recent brief affair with VSCode, but I’m trying to come back to the Nova I know and love. I like Nova’s Task functionality a lot better than VSCode’s, and for some tasks the simple, disposable ‘report’ format is perfect. But I do miss having some tasks running in more durable terminals.