foreshadow / atom-python-run

A simple atom package. Press one key to run your python code in atom.
https://atom.io/packages/atom-python-run
MIT License
44 stars 32 forks source link

(request)Use patformio terminal #75

Open francescoboc opened 6 years ago

francescoboc commented 6 years ago

Hi, thanks for this great package! It is so convenient. I just have a question: is it possible to use the Platformio terminal instead o opening an external terminal?

Thanks

ghost commented 6 years ago

I actually used Platformio before stumbling upon this project. I loved it; aside from all the bugs at the time. I actually stopped using it because I didn't want to get involved in another project and it didn't always behave. This seems like a pretty cool idea looking at it from a different perspective now. It also seems to run smoother than before too.

I don't actually have any time to dig in to it. If you're interested, maybe you could look in to it and see if you can get it to work. I suppose we could always add another option; although, it is getting a bit unweildy at this point (feature creep).

I would say if you did do it, to leave the default function as it is (opens the systems shell) so that it behaves the way current users expect. If the option is a switch, you could check it off, and then it would switch to using Platformio as a Terminal window instead.

I'm going to leave this one up to @foreshadow.

ghost commented 6 years ago

@foreshadow I've been thinking I can take care of the linux end of things and you can take care of windows end so we can split the work. i'm willing to build around anything you come up with. fix it up along the way. we can make it experimental for now and leave it on it's own branch.

ghost commented 6 years ago

@paul7Junior -- issue #80

run in the same terminal

Hi,

Is it the normal behavior of the package to open a new terminal each time one's press f5.

Or is there a way to keep the same terminal for all the runs?

I tried to open a terminal in interactive mode but each time I compile the code, it open another terminal.

Thank you, Junior

@xovertheyearsx -- merged issues

Yes. That's normal.

No, there is no way to change this behavior; you could always take a peek under the hood and tinker with the code to make it work.

To be honest, multiple instances has become an annoyance for me. Issue #75 seems to be a promising fix to this. There just isn't any active development towards that solution right now.

Note that this would be mainly experimental and would create a dependency for this project.

For now, every time F5 or F6 is executed, a new instance will always be created.

It's finally stable (a few strange bugs aside) and I'm sure most users are accustomed to the way this package currently works.

Creating a new branch will introduce new bugs and issues which can be troublesome... hence the idea to create an experimental branch (until it's stable; bugs and issues will happen regardless).

You can always help out. We could use it!

Issue #80 has been merged with issue #75.

Comments

NOTE: This is mainly an experimental idea for now.

I feel that PlatformIO and PlatformIO-IDE-Terminal may be viable alternative solutions. I have tested it and it seems to be slightly buggy on Linux and doesn't seem to really be Windows friendly.

It's also mostly in coffeescript :cry: Which at the time I have zero desire to sift through. It's also just an annoyance to transpile between them (even with tools like gulp and the like).

Perhaps, some time this summer, I'll attempt to create a working prototype for Linux in a separate branch.

I don't think I'll be taking a crack at Windows seeing as my Windows rig is set up for gaming and not dev work; Also, I currently don't have access to Mac OS X and spend most of my time using Linux as my main setup. It'll also cut my work load in half.

I will keep Windows and Mac OS X compatibility in mind and the main goal will be to keep that functionality from breaking.

Any assistance is welcome. Feel free to fork and share your code! Make sure to create a new branch first before pushing it back up to the repo.