pylon icon indicating copy to clipboard operation
pylon copied to clipboard

I recall the original cloude9 supporting multiuser edit

Open Kreijstal opened this issue 1 year ago • 6 comments

Has this been removed out? I just joined with 2 browsers, firefox and edge. I do not see they're synchronized.

Kreijstal avatar Dec 23 '24 18:12 Kreijstal

Nothing has been removed, not deliberately at least :). But I think the synchronous editing function you are referring to was something that got implemented in Cloud9 version 3.x - a version, which was not released under a permissive open source license. Pylon IDE uses the 2.x branch of Cloud9 as the basis.

Currently, if you save in one version window, you should get a notification on the other browser stating that the contents on the server has changed, allowing you to reload the changes.

As Ace editor has matured and the version has been upgraded, it wouldn't be much work to actually display multiple cursors on the editing canvas and allow online synchronisation as the buffer gets an update. Having said that, I don't believe I would be able to get around implementing that any time soon, but all pull requests are welcome :)

Happy Holidays and Cheers! 🍻 🎄

exsilium avatar Dec 24 '24 11:12 exsilium

I would honestly love this. I've evaluated this editor for exactly that use-case, but alas, with single-user, it's not very useful for me.

Shouldn't be too hard to add it via yjs in theory, but I'm not familiar with Ace, nor this editor's internals.

darkuranium avatar Jan 09 '25 13:01 darkuranium

I would honestly love this. I've evaluated this editor for exactly that use-case, but alas, with single-user, it's not very useful for me.

Shouldn't be too hard to add it via yjs in theory, but I'm not familiar with Ace, nor this editor's internals.

yjs?

Kreijstal avatar Jan 09 '25 20:01 Kreijstal

https://github.com/yjs/yjs

darkuranium avatar Jan 09 '25 20:01 darkuranium

https://github.com/yjs/yjs

Wow crazy

Kreijstal avatar Jan 09 '25 20:01 Kreijstal

Exactly, Yjs sounds like a perfect fit for this - it is a powerful and widely used framework. At some point example Ace bindings were published, I didn't get time to dig further into it but shouldn't be much work to get it running if motivation is there. It's been a while but the binding repo I saw was this: https://github.com/ffd8/y-ace

exsilium avatar Jan 10 '25 08:01 exsilium