Hi, because I had immediate use for it, I implemented a prototype of the much requested (IIRC) multi-user feature: https://github.com/Drahflow/vim-multiuser/
To try: Shell 1: % vim --multiuser-server # opens listening socket on port 9999 Shell 2 to N: % vim :set remote=127.0.0.1:9999 It essentially cuts into the ml_append / ml_delete interface and forwards the changes to a central master document on a server, keeping track of various versions of line-numbers in the process. The remote option is buffer local and logically replaces the current file contents with the server document contents (which are initially empty). TODO * Documentation * Only os_unix, HAVE_SELECT correctly polls the network socket * Error reporting and handling is very missing * The code organization should be improved * Marks, folds and cursors in other windows are not yet adjusted (but it's clear how this can be done) * Adjust buffer change/needs-write/etc. logic at various places * Enable initial upload (currently, please use :r to load a file into the server) * Figure out various still unknown edge-cases Is there a realistic chance to get it accepted upstream? If so, what other things should I keep in mind before producing a patch? Sincerely, Drahflow
signature.asc
Description: Digital signature
