Personal tools
You are here: Home Aiuti ed Info Come fare Installare e configurare l'external editor
Document Actions

Installare e configurare l'external editor

Come utilizzare un programma esterno per modificare gli oggetti

External Editor - Come utilizzare un editor specializzato per modificare gli oggetti

L' external editor di Zope può essere installato e configurato in modo da aprire le applicazione preferite (applicazioni Microsoft piuttosto che quelle Linux) quando si vuol modificare un certo contenuto del sito, e non utilizzare lo scomodo editor standard html del browser.

In questo modo è possibile intervenire anche su contenuti non direttamente gestibili dall'editor del browser (tabelle elettroniche, grafici, immagini, disegni...).

Il meccanismo è composto di due parti

  • parte server: è un 'prodotto' Zope, che deve essere installato e poi attivato dalla ZMI. Il suo compito consiste sostanzialmente nel

    • inscatolare l'effettivo contenuto dell'elemento che si vuole modificare
    • spedirlo al browser, marcandolo con un determinato content-type

    Nota

    Questa parte viene installata dall'amministratore del portale e rende disponibile accanto ad ogni oggetto (nella vista contenuti) una piccola icona a forma di matita che attiva appunto la modifica del contenuto tramite una applicazione esterna.

  • parte client: questa parte del meccanismo è uno strumento d'appoggio che permette al browser di riconoscere questa particolare richiesta e farla gestire esternamente e cioé:

    • riconoscere il tipo di contenuto
    • lanciare l'editor opportuno
    • ogni qualvolta il file viene salvato, reinscatolarlo nuovamente spedendolo quindi al server Zope che interpreterà questo come una modifica all'oggetto in questione

Dove va installato il client?

È indispensabile installare lo strumento d'appoggio in modo tale che sia accessibile dal proprio browser. Essendo scritto in Python, lo stesso strumento funziona perfettamente sia in ambito GNU/Linux che Windows. In entrambi i casi lo strumento potrà essere installato sia in una directory condivisa con altri utenti (tipico scenario in una intranet aziendale) che per uso personale nella propria cartella.

Come?

Per Windows la maniera più rapida e indolore è scaricare il solito installer che contiene tutto il necessario.

Per GNU/Linux ..dascrivere

Come si configura?

Il passaggio successivo è istruire il proprio browser affinché utilizzi lo strumento d'appoggio per gestire questo tipo di documenti. Con Mozilla, questo si fa aggiungendo un nuovo elemento in Helper Applications, nelle preferenze relative al Navigator. Lì si deve inserire un nuovo tipo application/x-zope-edit e associarlo allo strumento d'appoggio installato, ad esempio C:ProgrammiZopeExternalEditorzopeedit.py

Come/dove si configurano le varie applicazioni da aprire?

Lo strumento utilizza un file di configurazione nel solito formato INI di Windows, anche in ambito GNU/Linux.

Su Windows questo file si trova in C:ProgrammiZopeExternalEditorZopeEditor.ini, o comunque nella stessa directory dove è stato installato il pacchetto. In ambienti seri invece questa configurazione è memorizzata nel file ~/.zope-external-edit (uno dei file nascosti nella home dell'utente).

Il file contiene varie sezioni, ognuna delle quali può dichiarare delle impostazioni particolari. La più generica è la general, che contiene la configurazione di default, vale a dire le impostazioni che verranno utilizzate a meno che non si trovi una sezione più specifica.

Una sezione può specificare certe impostazioni in base al tipo di file che si sta trattando. Un esempio tipico in ambiente GNU/Linux è il seguente:

[general ]
use_locks = 1
cleanup_files = 1
editor = emacs
always_borrow_locks = 0
save_interval = 1

[content-type:image/gif]
extension = .gif
editor = gimp

[content-type:application/vnd.ms-excel]
extension = .xls
editor = gnumeric

che sostanzialmente imposta 'emacs' come editor di default, tranne che per le immagini gif dove si preferisce 'gimp' e per i fogli Excel che verranno manipolati utilizzando 'gnumeric'.

In Windows invece si avrebbe:

[general ]
use_locks = 1
cleanup_files = 1
editor = wordpad
always_borrow_locks = 0
save_interval = 1

[content-type:application/vnd.ms-excel]
extension = .xls
editor = start /w

dimodoché l'editor standard sarà 'wordpad', mentre per i fogli di Excel utilizzerà 'start' che interrogando le preferenze personali lancerà l'applicazione preferita per gestire quel tipo di file.

Esempio di configurazione

Nel mio C:ProgrammiZopeExternalEditor!ZopeEdit.ini ho impostato nella sezione general:

editor = \\artix\Programmi\SciTE.exe

e, in fondo al file dopo le altre opzioni, ho aggiunto:

[content-type:application/vnd.ms-excel]
extension=.xls
editor=start /wait
[content-type:application/msword]
estension=.doc
editor=start /wait

Esempio completo

Esempio con programmi Microsoft:

# Zope External Editor helper application configuration

[general]
# General configuration options

# Uncomment and specify an editor value to override the editor
# specified by the operating system
editor = \\Artista\utility\SciTE.exe

# Automatic save interval, in seconds. Set to zero for
# no auto save (save to Zope only on exit).
save_interval = 1

# Temporary file cleanup. Set to false for debugging or
# to waste disk space. Note: setting this to false is a
# security risk to the zope server
cleanup_files = 1

# Use WebDAV locking to prevent concurrent editing by
# different users. Disable for single user use or for
# better performance
use_locks = 1

# To suppress warnings about borrowing locks on objects
# locked by you before you began editing you can
# set this flag. This is useful for applications that
# use server-side locking, like CMFStaging
always_borrow_locks = 0

# Specific settings by content-type or meta-type. Specific
# settings override general options above. Content-type settings
# override meta-type settings for the same option.

[meta-type:DTML Document]
extension=.dtml

[meta-type:DTML Method]
extension=.dtml

[meta-type:Script (Python)]
extension=.py

[meta-type:Page Template]
extension=.pt

[meta-type:Z SQL Method]
extension=.sql

[content-type:text/*]
extension=.txt

[content-type:text/html]
extension=.html

[content-type:text/xml]
extension=.xml

[content-type:image/gif]
extension=.gif

[content-type:image/jpeg]
extension=.jpg

[content-type:image/png]
extension=.png

[content-type:application/msexcell]
extension=.xls
editor=excel

[content-type:application/vnd.ms-excel]
extension=.xls
editor=excel

[content-type:application/x-msexcel]
extension=.xls
editor=excel

[content-type:application/msword]
extension=.doc
editor=winword

come si vede nelle ultime sezioni a ciascun tipo di estensione si può associare il comando di avvio dell'editor preferito.

Esempio aggiornato a Openoffice 2:

# Zope External Editor helper application configuration

[general]
# General configuration options

# Uncomment and specify an editor value to override the editor
# specified in the environment
editor = emacs
# editor = gedit

# Automatic save interval, in seconds. Set to zero for
# no auto save (save to Zope only on exit).
save_interval = 1

# Temporary file cleanup. Set to false for debugging or
# to waste disk space. Note: setting this to false is a
# security risk to the zope server
cleanup_files = 1

# Use WebDAV locking to prevent concurrent editing by
# different users. Disable for single user use or for
# better performance
use_locks = 1

# To suppress warnings about borrowing locks on objects
# locked by you before you began editing you can
# set this flag. This is useful for applications that
# use server-side locking, like CMFStaging
always_borrow_locks = 0

# Specific settings by content-type or meta-type. Specific
# settings override general options above. Content-type settings
# override meta-type settings for the same option.

[meta-type:DTML Document]
extension=.dtml

[meta-type:DTML Method]
extension=.dtml

[meta-type:Script (Python)]
extension=.py

[meta-type:Page Template]
extension=.pt

[meta-type:Z SQL Method]
extension=.sql

[content-type:text/plain]
extension=.txt

[content-type:text/html]
extension=.html

[content-type:text/xml]
extension=.xml

[content-type:text/css]
extension=.css

[content-type:text/javascript]
extension=.js

[content-type:image/*]
editor=gimp

[content-type:image/gif]
extension=.gif

[content-type:image/jpeg]
extension=.jpg

[content-type:image/png]
extension=.png

[content-type:application/vnd.ms-excel]
extension=.xls
editor=oocalc2

[content-type:application/msword]
extension=.doc
editor=oowriter2

[content-type:application/vnd.oasis.opendocument.spreadsheet]
extension=.ods
editor=ooffice2

[content-type:application/vnd.oasis.opendocument.text]
extension=.odt
editor=ooffice2

[content-type:application/vnd.sun.xml.writer]
extension=.sxw
editor=oowriter2

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: