emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] colorg: Weekly status


From: François Pinard
Subject: [O] colorg: Weekly status
Date: Mon, 04 Feb 2013 02:29:56 -0500

Hi to all Org friends!

Here is my weekly status message on colorg development.  colorg is a
tool for real-time collaborative editing of Org files.  Interesting
progress has been made this weekend, but no cake yet!  Sigh... :-)

There is an Emacs module and a Python server.  The Emacs client has much
advanced and is ready for testing, and almost ready for use (!), a few
bugs surely remain.  The client now correctly demultiplexes what servers
send, which merely means that an Emacs user may simultaneously associate
many buffers to that many shared resources, usually all taken from one,
but maybe more than one colorg server, and all goes nicely in parallel.

I removed some optimization code from the Emacs client and pushed the
equivalent in the Python server.  The idea was then to shorten packets
transmitted from the client to the server, the idea is now to keep the
client as simple as possible.

Clash resolution in the server, when different users work in the same
vicinity, remains a difficult issue, and is still not finished.  Without
a server which takes dependable decisions in all cases, colorg is
unusable in practice.  While I have a rather clear idea about how to
proceed, the programming is still fairly tedious.  It will likely have
to wait until next weekend, sorry.



Before leaving, I'd like to document my usual testing recipe, in case
someone would be adventurous enough to repeat it.  Once colorg installed
as per https://github.com/pinard/colorg/wiki/Usage, and having identical
files test1.org and test2.org ready, in a terminal window I do:

emacs test1.org & emacs test2.org & env/bin/colorg-server -d

This opens two Emacs windows besides the terminal window.  That terminal
window displays a trace of the on-going communication (because of "-d").
My own keybinding for colorg-mode is "C-c e ."  In one of the Emacs
(let's say the one for test1.org), I type:

C-c e . RET RET RET RET

This has the effect of connecting to the server and uploading
test1.org.  In the second Emacs, I type:

C-c e . RET RET RET TAB RET

This has the effect of connecting to the server and associating the
current test2.org with the already existing resource named test1.org.
>From now on, modifications to one buffer are reflected on the other.



François








reply via email to

[Prev in Thread] Current Thread [Next in Thread]