Developers' side bar Selected categories Edit Links |
Devel /
LyXChatCategories: Interactive << | Page list | >>Turn LyX into a powerful, rich-text, interactive chatting tool. Table of contents (hide)
1. DescriptionLyX Chat is useful to chat with another on-line user by using the powerful rich-text editing features of LyX. We're all used to text-based chat clients, where one normally drops wiki-style mark-up for *bold-face* or /italics/, or LaTeX segments for maths (the motivating use-case was really one of this kind, for talking with a remote colleague about equations to be amended in a research paper). With this extension, it is possible to directly chat from within LyX itself, using all the graphical editing features available in the program. 2. StatusA fully working QXMPP-based implementation, also interoperating with any XMPP text-only client (e.g., Pidgin), is available, was just rebased on Oct 2016, and is being further discussed at: http://www.lyx.org/trac/ticket/7964 3. Quick start guide3.1 Compile:
http://retis.sssup.it/~tommaso/qxmpp
--enable-qt5 --with-extra-inc=/usr/include/x86_64-linux-gnu/qt5/QtNetwork:/usr/include/x86_64-linux-gnu/qt5/QtGui 3.2 Use:
3.3 Notes:
3.4 Videos of the LyX chat in action:
4. Technical detailsThe current patch is based on the XMPP protocol, widely used for text-based chat clients, such as Pidgin, and widely available for users to create free accounts, such as the service on jabber.org; XMPP allows clients to connect from behind firewalls/NATs, provided that an outgoing connection to the XMPP port 5222 is not blocked. The used XMPP implementation is QXMPP, a Qt-based implementation that makes the patch portable across multiple platforms, like LyX. Chat files are regular lyx files, you can also edit them while chatting or while off-line, or delete them etc.; they're supposed to keep history (I know, problems should they grow unbounded, but for now...); you can copy/paste back and forth across your local files and the chat files/buffers. Text is sent to the other end as exported LaTeX segment corresponding to the paragraph you type, then imported back using Buffer::importString(). You can send maths, tables, formats, headings, but if you try to send external material such as a picture, the file is NOT sent. Also, it should all be ok with default doc settings. If you change them (notably, the doc class), then you can create inconsistencies between the local and remote views (perhaps styles that make sense here but not there etc...). For now, text is auto-sent when you type Enter, but this can be changed if deemed useful. 5. CategoriesCategory: Interactive |