Creating a developer cycle within Atom (edit, compile, run, check output)

The fabulous Atom editor lacks one feature out of the box, and that is a developer’s cycle for compiler languages (or similar applications). Compared to Visual Studio Code it’s exactly one thing missing:

Build/compile and run in a console window which is part of the IDE!

Okay, Atom is no IDE! At least not in its basic configuration. But nevertheless I wondered how an editor which is so feature-rich and ingeniously constructed, couldn’t offer such a feature. You may use console windows in one or more of Atom’s panes, but you can’t send any output into these consoles nor can you send commands to them. (Again: At least not out of the box.)

But there’s one package which solves the problem to a high degree: The solution goes by the name

process-palette

Within this package you can easily create your own commands which can be enriched with pre-defined, Atom-integrated variables (several options for file identification and different paths), and you can define a target (or display, if you will) to manage the output. This may look like this:

Atom/process-palette

Atom/process-palette

Above you see three panes: On the left, process-palette’s own output pane, in the middle the editor, on the right, a bash console in its own pane.

Atom/process-palette

Atom/process-palette

Here you see three built-in commands and the g++ command, created by me. It shows how easy it is to build commands exactly to one’s own needs. And down here comes the option which is the most important to me:

Atom/process-palette

Atom/process-palette

There’s the section output, and here you can define the target which will show the output of your command, in this case process-palette’s own output panel.

Still unsolved: You can only use these targets:

Atom/process-palette

Atom/process-palette

Panel is the output panel which is locked to the left hand Atom pane, I couldn’t find a way to place it in the middle pane or the right one. No chance to use another Atom pane with a running bash or something.

Another draw-back: process-palette’s output-panel is read only. You can’t interact with your program, type in arguments or something.

But at least, that’s a nice solution with regard to an effective development cycle: You don’t even have to leave the editor pane, just press CTRL-SHIFT-R (or whatever you have defined) and the compiler builds your executable and runs it within the output panel. That’s it and that’s what I wished for.

PS: But I have found an even better solution, stay tuned, it will be published soon!