Etherpad: un editor de documents col·laboratius en línia basat en temps real per a Linux


Etherpad és una eina d'editor de documents gratuïta basada en web que permet a un grup d'usuaris treballar conjuntament en un document en temps real, com un editor multijugador que s'executa en un navegador web. Els autors d'Etherpad poden editar i veure's al mateix temps les edicions en temps real amb la capacitat de mostrar el text de l'autor amb els seus propis colors.

Aquesta eina té un quadre de xat independent a la barra lateral que permet als autors comunicar-se durant l'edició. Etherpad està escrit en JavaScript tant al costat del servidor com al costat del client, de manera que és fàcil per als desenvolupadors mantenir i afegir noves funcions.

Etherpad està dissenyat de manera que pugueu tenir accés a totes les dades mitjançant una API HTTP ben documentada. Aquest programari també us ajuda a importar/exportar dades a molts formats d'intercanvi i també inclou traduccions on els autors poden oferir l'idioma correcte per a la seva configuració local.

Per a la vostra referència, he adjuntat una demostració d'Etherpad Lite a l'enllaç següent.

  1. Mira la demostració d'EtherPad

En aquest tutorial, descriuré com instal·lar i configurar Etherpad Lite, una aplicació d'edició de documents col·laborativa en temps real basada en web a RHEL, CentOS, Fedora, Debian, Ubuntu i Linux Mint.

Instal·lació d'Etherpad Lite a Linux

En primer lloc, hem de descarregar i instal·lar algunes biblioteques i eines de desenvolupament necessàries. Obriu el terminal i executeu l'ordre següent com a root o afegint sudo al principi de cada comanda.

Necessitareu gzip, git, curl, libssl python, biblioteques de desenvolupament, paquets python i gcc.

# yum install gzip git-core curl python openssl-devel && yum groupinstall "Development Tools" For FreeBSD: portinstall node, npm, git
$ sudo apt-get install gzip git-core curl python libssl-dev pkg-config build-essential

A més, també haureu de descarregar i compilar la darrera versió estable de Node.js dels paquets font mitjançant les ordres següents.

$ wget http://nodejs.org/dist/node-latest.tar.gz
$ tar xvfvz node-latest.tar.gz
$ cd node-v0.10.23     [Replace a version with your own]
$ ./configure
$ make
$ sudo make install

Un cop hàgiu instal·lat correctament, verifiqueu la versió de Node.js amb l'ordre següent.

$ node --version

v0.10.23

Crearem un usuari separat anomenat \etherpad per executar l'aplicació Etherpad de manera independent. Per tant, primer creeu un usuari amb el seu directori d'inici.

# useradd --create-home etherpad

Ara canvieu a l'usuari \etherpad i descarregueu l'última versió estable d'Etherpad Lite mitjançant el repositori GIT, tal com es mostra.

# su - etherpad
$ cd /home/etherpad
$ git clone http://github.com/ether/etherpad-lite.git

Un cop hàgiu baixat els fitxers font, canvieu al directori creat recentment que conté el codi font clonat.

$ cd etherpad-lite/bin

Ara, executeu l'script run.sh.

$ ./run.sh
Copy the settings template to settings.json...
Ensure that all dependencies are up to date...  If this is the first time you have run Etherpad please be patient.
[2013-12-17 05:52:23.604] [WARN] console - DirtyDB is used. This is fine for testing but not recommended for production.
[2013-12-17 05:52:24.256] [INFO] console - Installed plugins: ep_etherpad-lite
[2013-12-17 05:52:24.279] [INFO] console - Your Etherpad git version is 7d47d91
[2013-12-17 05:52:24.280] [INFO] console - Report bugs at https://github.com/ether/etherpad-lite/issues
[2013-12-17 05:52:24.325] [INFO] console -    info  - 'socket.io started'
[2013-12-17 05:52:24.396] [INFO] console - You can access your Etherpad instance at http://0.0.0.0:9001/
[2013-12-17 05:52:24.397] [WARN] console - Admin username and password not set in settings.json.  To access admin please uncomment and edit 'users' in settings.json

Ara hauríeu de poder navegar per la interfície web d'Etherpad Lite a http://localhost:9001 o http://your-ip-address:9001 en un navegador web.

Creeu un document nou donant un nom de Pad. Recordeu que introduïu un nom nou quan creeu un document nou o introduïu el nom del document editat anteriorment per accedir-hi.

Per exemple, he creat un document nou anomenat \tecmint. Els usuaris poden crear diversos blocs nous en finestres separades, la finestra del document de cada usuari apareix en una altra finestra automàticament en temps real. La finestra de cada usuari es ressalta amb dos colors diferents i També els usuaris poden interactuar entre ells mitjançant la caixa de xat integrada.

Cada document de nova creació té la seva pròpia estructura d'URL. Per exemple, el meu nou bloc \tecmint té un URL com a http://your-ip-address:9001/p/tecmint. Podeu compartir aquest URL del document amb els vostres amics i col·legues. Fins i tot podeu inserir la finestra de l'editor a una altra pàgina web HTML com a iframe.

Podeu desar el document mentre l'edició està en curs fent clic al botó ESTRELLA, però es creen periòdicament. Per accedir a una revisió desada del document, afegiu el número de la revisió desada. Per exemple, si voleu veure el número de revisió desat (és a dir, 2) en aquest cas, substituïu el número 6 per 2 a http://your-ip-address:9001/p/tecmint/6/export/text .

Etherpad també inclou una funció integrada anomenada importació i exportació, on podeu importar qualsevol document extern o exportar un document desat actual a un fitxer independent. El document es pot descarregar en format HTML, Open Document, Microsoft Word, PDF o Plain text.

Una funció de control lliscant de temps permet a qualsevol persona explorar l'historial del coixinet.

Per defecte, l'Etherpad emmagatzema els documents en una base de dades d'arxiu pla. Us suggereixo que utilitzeu MySQL com a backend per emmagatzemar documents creats i editats. Per a això, heu de tenir MySQL instal·lat al vostre sistema. Si no en teniu, instal·leu-lo al sistema, podeu instal·lar-lo mitjançant les ordres següents com a usuari root o amb sudo.

# yum install mysql-server mysql
# service mysqld start
# chkconfig mysqld on
# apt-get install mysql-server mysql-client
# service mysqld start

Un cop instal·lat MySQL, connecteu-vos a mysql shell executant una ordre següent.

# mysql -u root -p

Un cop estiguis a mysql shell, emet l'ordre següent per crear la base de dades.

create database etherpad_lite;

Concediu permisos a un compte de base de dades de nova creació. Substituïu \la vostra contrasenya per la vostra pròpia contrasenya.

grant all privileges on etherpad_lite.* to 'etherpad'@'localhost' identified by 'your-password';

Deixeu el client mysql.

exit;

Ara, canvieu a l'usuari etherpad i aneu al directori etherpad i executeu les ordres següents:

# su - etherpad
$ cd /home/etherpad/etherpad-lite    
$ cp settings.json.template settings.json

A continuació, obriu settings.json amb l'editor que trieu i canvieu la configuració tal com es mostra a continuació.

# vi settings.json

Busca el text següent.

"sessionKey" : "",

Afegiu el SECURESTRING amb un mínim de 10 cadenes alfanumèriques.

"sessionKey" : "Aate1mn160",

A continuació, trobeu:

"dbType" : "dirty",
  //the database specific settings
  "dbSettings" : {
                   "filename" : "var/dirty.db"
                 },

I comenta-ho així:

// "dbType" : "dirty", */
  //the database specific settings
  // "dbSettings" : {
  //                   "filename" : "var/dirty.db"
  //                 },

A continuació, configureu la configuració de mysql i d'administració tal com es mostra a continuació.

  /* An Example of MySQL Configuration
   "dbType" : "mysql",
   "dbSettings" : {
                    "user"    : "etherpad",
                    "host"    : "localhost",
                    "password": "your-password",
                    "database": "etherpad_lite"
                  },

  */
  "users": {
    "admin": {
      "password": "your-password",
      "is_admin": true
    },

Assegureu-vos de substituir \la vostra contrasenya per la contrasenya que heu creat anteriorment mentre configureu un compte de base de dades nou i una contrasenya d'administrador amb el vostre propi valor. Ara, hem d'instal·lar alguns paquets de dependència addicionals amb l'ordre següent.

./bin/installDeps.sh

Un cop finalitzat l'script, haurem de tornar a executar l'script Etherpad. Per tant, pot crear les taules adequades a la base de dades.

./bin/run.sh

Després que l'Etherpad s'hagi carregat correctament, premeu Ctrl+C per acabar amb el procés. Torneu a iniciar sessió a mysql shell i modifiqueu la base de dades per utilitzar-la correctament.

mysql -u root -p
alter database etherpad_lite character set utf8 collate utf8_bin;
use etherpad_lite;
alter table store convert to character set utf8 collate utf8_bin;
exit;

Finalment, hem instal·lat i configurat correctament Etherpad per utilitzar el backend MySQL. Ara torneu a executar l'etherpad per utilitzar MySQL com a backend.

./bin/run.sh

L'script inicialitzarà Etherpad i després iniciarà el procés. Tingueu en compte que l'aplicació Etherpad finalitzarà el seu procés quan tanqueu la finestra de sessió de terminal. Opcionalment, podeu utilitzar l'ordre de pantalla per col·locar Etherpad en una sessió de pantalla per accedir-hi fàcilment.

Això és tot de moment, hi ha moltes altres coses per explorar i millorar la instal·lació d'Etherpad, que no es cobreixen aquí. Per exemple, podeu utilitzar Etherpad com a servei en un sistema Linux o proporcionar accés segur a la connexió HTTPS/SSL del vostre usuari. Per obtenir més informació sobre la configuració addicional, visiteu la pàgina oficial a:

  1. Viqui Etherpad Lite