AirCode with external editor

Hi all,
A quick video showing a bridge between AirCode and flat files on a desktop. This still very experimental.

i get ‘this video is private’

@piinthesky - Sorry, it’s fixed

@toffer This is looking very good!

@toffer looks great! Can’t wait to play with the finished product.

@Luatee @Briarfox mhh, that just look, AirCode is a restrictive environment, locked http requests is a pain :frowning: and the code eval has some strange behaviors. Sure the possibility to switch from one project to another or it’s dependency is handy, and I’ve found a way to create new tab an maybe upload files. Now, I don’t know if it is sufficient to follow the development (but it’s fun to play with :p), and if it is, I’m shared between made a ‘hub’ (as in the video) or a dedicated ST2 plugin. Also, xCodea is far more robust for handling large projects and does fine eval and error handling. Thoughts are welcome, and if someone want to try it as is to get an idea, tell me.

Very nice! Can’t wait to try it out.

@toffer I’m very sorry to pull up a 3 year old discussion, but HOW do you download and upload files from codea? I want to use this method with VIM.

I had a quick look at AirCode source and it seems to do somethimg with json. but I still don’t think that Codea has a request/response interface for json packets.

Maybe someone could point me into the right direction or give some hint…

EDIT: Just for reference if someone needs it too: Seems like someone did it already. Have to dig through that code now.

@se24vad - It’s been a while since I’ve experimented with AirCode. If I remember well, for downloading a project :

  • request the project URL
  • extract buffer names by reading the URL inside the tabs elements
  • request the buffers one by one and extract the code
    For updating a buffer, post a JSON { contents: 'lua_code', file: 'buffer_name' } to the URL : aircode_host/projects/project_name/__update

If you’re interested, short after this experiment, I’ve made a small bridge in Nodejs. Here is the repository :

thank you @toffer will try that one out!