Etherpad - Usa ka Real Time Web Based Online Collaborative Document Editor para sa Linux


Ang Etherpad kay usa ka web based nga libre nga document editor tool nga nagtugot sa usa ka grupo sa mga tiggamit sa pagtrabaho nga dungan sa usa ka dokumento sa tinuod nga panahon, sama sa usa ka multi player editor nga nagdagan sa usa ka web browser. Ang mga tagsulat sa Etherpad mahimong mag-edit ug sa samang higayon makakita sa matag usa nga mag-edit sa tinuod nga panahon nga adunay katakus sa pagpakita sa teksto sa tagsulat sa ilang kaugalingong mga kolor.

Kini nga himan adunay usa ka bulag nga chat box sa sidebar nga nagtugot sa mga tagsulat sa pagpakigsulti sa panahon sa pag-edit. Ang Etherpad gisulat sa JavaScript pareho sa server nga bahin ug bahin sa kliyente, aron kini dali alang sa mga developer sa pagpadayon ug pagdugang sa mga bag-ong bahin.

Ang Etherpad gidisenyo sa paagi nga makabaton ka og access sa tanang datos pinaagi sa usa ka maayo nga dokumentado nga HTTP API. Kini nga software makatabang usab kanimo sa pag-import/pag-export sa datos ngadto sa daghang mga exchange format ug adunay mga hubad usab diin ang mga tagsulat makahatag sa husto nga pinulongan alang sa ilang lokal nga mga setting.

Alang sa imong pakisayran, gilakip nako ang usa ka Demo sa Etherpad Lite sa ubos nga link.

  1. Tan-awa ang EtherPad Demo

Sa kini nga panudlo, akong ihulagway kung giunsa ang pag-install ug pag-configure sa Etherpad Lite usa ka web-based nga real-time nga collaborative nga aplikasyon sa pag-edit sa dokumento sa RHEL, CentOS, Fedora, Debian, Ubuntu ug Linux Mint.

Pag-instalar sa Etherpad Lite sa Linux

Una, kinahanglan natong i-download ug i-install ang pipila ka gikinahanglan nga mga librarya ug mga himan sa pagpalambo. Ablihi ang terminal ug padagana ang mosunod nga sugo bisan ingon nga gamut o pinaagi sa pagdugang sudo sa sinugdanan sa matag sugo.

Kinahanglan nimo ang gzip, git, curl, libssl python, paghimo og mga librarya, python ug gcc nga mga pakete.

# 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

Dugang pa, kinahanglan nimo usab nga i-download ug i-compile ang pinakabag-o nga stable nga bersyon sa Node.js gikan sa mga source packages gamit ang mosunod nga mga sugo.

$ 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

Kung malampuson nimo nga na-install, pamatud-i ang bersyon sa Node.js gamit ang mando sama sa mosunod.

$ node --version

v0.10.23

Maghimo mi og bulag nga user nga gitawag og \etherpad para independente nga magpadagan sa Etherpad application. Busa, paghimo una og user gamit ang home directory niini.

# useradd --create-home etherpad

Karon switch sa \etherpad user ug i-download ang pinakabag-o nga stable nga bersyon sa Etherpad Lite gamit ang GIT repository sama sa gipakita.

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

Kung na-download na nimo ang gigikanan nga mga file, usba ang bag-ong nahimo nga direktoryo nga adunay sulud nga gi-clone nga source code.

$ cd etherpad-lite/bin

Karon, ipatuman ang run.sh script.

$ ./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

Karon kinahanglan nimo nga ma-browse ang web interface sa Etherpad Lite sa http://localhost:9001 o http://your-ip-address:9001 sa usa ka web browser.

Paghimo og bag-ong dokumento pinaagi sa paghatag og Pad name. Palihug hinumdumi, pagsulod og bag-ong ngalan sa paghimo og bag-ong dokumento o pagsulod sa ngalan sa na-edit na nga dokumento aron ma-access.

Pananglitan, nakahimo ko og bag-ong dokumento nga gitawag og \tecmint. Makahimo ang user og daghang bag-ong mga pad sa separado nga mga bintana, ang window sa dokumento sa matag user awtomatikong makita sa laing bintana sa tinuod nga panahon. Ang matag bintana sa user gi-highlight sa duha ka lain-laing mga kolor ug mahimo usab nga makig-interact ang user sa usag usa gamit ang built-in nga chat box.

Ang matag bag-ong nahimo nga dokumento adunay kaugalingon nga istruktura sa URL. Pananglitan, ang akong bag-ong \tecmint pad get's URL nga http://your-ip-address:9001/p/tecmint. Mahimo nimong ipaambit kining URL sa dokumento sa imong mga higala ug kaubanan. Mahimo nimong i-embed ang editor window ngadto sa laing HTML web page isip iframe.

Mahimo nimong tipigan ang dokumento samtang nagpadayon ang pag-edit pinaagi sa pag-klik sa buton sa STAR, bisan pa niana kini gihimo matag karon ug unya. Aron maka-access sa na-save nga rebisyon sa dokumento idugang ang numero sa na-save nga rebisyon. Pananglitan, kung gusto nimo nga makita ang gitipig nga numero sa rebisyon (ie 2) sa kini nga kaso, ilisan ang numero 6 sa 2 sa http://your-ip-address:9001/p/tecmint/6/export/text .

Ang Etherpad nag-abut usab nga adunay built-in nga bahin nga gitawag nga import ug export, diin mahimo nimong i-import ang bisan unsang eksternal nga dokumento o i-export ang usa ka karon nga gitipig nga dokumento sa usa ka lahi nga file. Ang dokumento mahimong ma-download sa HTML, Open Document, Microsoft Word, PDF o Plain text format.

Ang time slider nga bahin makapahimo sa bisan kinsa nga makasuhid sa kasaysayan sa pad.

Sa kasagaran ang Etherpad nagtipig sa mga dokumento sa usa ka flat-file nga database. Gisugyot ko nga gamiton nimo ang MySQL isip usa ka backend sa pagtipig sa gibuhat ug gi-edit nga mga dokumento. Alang niini, kinahanglan nimo nga ma-install ang MySQL sa imong sistema. Kung wala ka, i-install kini sa sistema, mahimo nimo kini i-install gamit ang pagsunod sa mga mando ingon gamut nga tiggamit o gamit ang sudo.

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

Human ma-install ang MySQL, kumonekta sa mysql shell pinaagi sa pagpadagan sa mosunod nga sugo.

# mysql -u root -p

Kung naa ka sa mysql shell, i-isyu ang mosunud nga mando aron mahimo ang database.

create database etherpad_lite;

Paghatag ug pagtugot sa usa ka bag-ong nahimo nga database account. Ilisan ang \imong-password sa imong kaugalingong password.

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

Biyai ang mysql client.

exit;

Karon, balhin sa user nga etherpad ug adto sa direktoryo sa etherpad ug padagana ang mosunod nga mga sugo:

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

Sunod, ablihi ang settings.json sa imong gipili nga editor ug usba ang mga setting sama sa gipakita sa ubos.

# vi settings.json

Pangitaa ang mosunod nga teksto.

"sessionKey" : "",

Idugang ang SECURESTRING nga adunay minimum nga 10 alpha-numerical string.

"sessionKey" : "Aate1mn160",

Dayon pangitaa:

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

Ug i-comment kini sama niini:

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

Sunod nga ibutang ang mysql ug mga setting sa admin sama sa gipakita sa ubos.

  /* 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
    },

Siguruha nga ilisan ang \imong-password sa password nga imong gibuhat sa ibabaw samtang nagbutang usa ka bag-ong database account ug usa ka password sa admin nga adunay imong kaugalingon nga kantidad. Karon, kinahanglan namon nga i-install ang pipila nga dugang nga mga pakete sa dependency nga adunay ubos nga mando.

./bin/installDeps.sh

Kung makompleto na ang script, kinahanglan namong ipadagan pag-usab ang Etherpad script. Busa, kini makahimo sa angay nga mga lamesa sa database.

./bin/run.sh

Human ma-load ang Etherpad nga malampuson, pindota ang Ctrl+C aron mapatay ang proseso. Pag-login pag-usab sa mysql shell ug usba ang database aron magamit sa husto.

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;

Sa katapusan, malampuson namon nga na-install ug gi-configure ang Etherpad aron magamit ang backend sa MySQL. Karon pagdagan ang etherpad pag-usab aron magamit ang MySQL isip backend.

./bin/run.sh

Ang script magsugod sa Etherpad ug dayon magsugod sa proseso. Palihug hinumdomi nga ang aplikasyon sa Etherpad mohunong sa proseso kung imong isira ang bintana sa sesyon sa terminal. Opsyonal, mahimo nimong gamiton ang screen command aron ibutang ang Etherpad sa usa ka sesyon sa screen alang sa dali nga pag-access.

Mao na kana sa pagkakaron, adunay daghan pang ubang mga butang nga masusi ug mapaayo ang imong pag-instalar sa Etherpad, nga wala masakop dinhi. Pananglitan, mahimo nimong gamiton ang Etherpad isip serbisyo sa usa ka Linux system o maghatag ug luwas nga pag-access sa imong user pinaagi sa HTTPS/SSL nga koneksyon. Para sa dugang nga impormasyon sa dugang nga configuration bisitaha ang opisyal nga panid sa:

  1. Etherpad Lite Wiki