<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en">
<head>






  
  
  
  
  
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type" />





  


  
  
  
  
  
  
  
  
  
  <title>Strumenti per l'attivit&agrave; di traduzione</title>
  <script type="text/javascript">
<!--
function clickmail(user, domain) {
at_sign="&#064;";
address=user+at_sign+domain;
document.write("<"+"A"+" HR"+"EF=\"mailto:"+address+"\">"+address+"<"+"/"+"a>");
}
-->
  </script>
</head>


<body>






<div id="bodycol">
<div id="projecthome" class="app">
<div class="h3" id="longdescription">
<h2>Strumenti per l'attivit&agrave; di traduzione</h2>






<h3>Quali sono gli strumenti a disposizione?</h3>






<b><br />






</b>Sono stati selezionati e messi a punto alcuni strumenti di
supporto per l'attivit&agrave; di traduzione. Gli strumenti sono:<br />






<ol>






  <li><a href="#1">DicOOo: pacchetto linguistico
italiano aggiornato con&nbsp;correttore ortografico, sillabazione e
dizionario dei sinonimi</a></li>






  <li><a href="#2">OOo Vocabulary: traduttore parole
con dizionario bilingue e glossario OpenOffice.org</a></li>






  <li><a href="#3">OmegaT: gestore di memorie di
traduzione</a></li>






</ol>






Maggiori informazioni sui strumenti linguistici utilizzati qui sono
disponibili presso la pagina del <a href="http://it.openoffice.org/linguistico/">progetto
Linguistico</a>.&nbsp; <br />

<br />

Inoltre si suggerisce di utilizzare i seguenti strumenti per facilitare
la consultazione di risorse su internet da OpenOffice.org:<br />

<ol>

  <li><a href="strumenti.html#4">OOoWikipedia: accesso a Wikipedia dall'interno di OpenOffice.org</a></li>

</ol>






<br />






<h3>DicOOo: pacchetto linguistico italiano aggiornato
con&nbsp;correttore ortografico, sillabazione e dizionario dei
sinonimi<a name="1"></a></h3>






Il progetto mette a disposizione un pacchetto linguistico che comprende
in un unico file compresso le ultime versioni del correttore
ortografico, sillabazione e dizionario dei sinonimi. Il pacchetto
linguistico italiano
&egrave; reperibile presso la seguente URL:<br />






<br />






<a href="http://sourceforge.net/project/showfiles.php?group_id=128318&amp;package_id=163313">http://sourceforge.net/project/showfiles.php?group_id=128318&amp;package_id=163313</a><br />






<br />






DicOOo &egrave; un assistente software che permette
un'installazione facile dei dizionari (correttore ortografico,
sillabazione e dizionario dei sinonimi) per gli utenti. Tale assistente
&egrave; stato integrato in OpenOffice.org 2.0 ed &egrave;
situato sotto il menu File -&gt; Procedure guidate -&gt;
Installa nuovi dizionari . &nbsp;Per maggiori informazioni sul suo
funzionamento potete consultare la seguente <a href="http://it.openoffice.org/linguistico/dicooo.html">pagina
di istruzioni</a>.<br />






<br />






<h3>OOo Vocabulary: traduttore parole con dizionario bilingue e
glossario OpenOffice.org<a name="2"></a></h3>






E' stata predisposta una versione speciale di OOo Vocabulary che
comprende&nbsp;un dizionario bilingue inglese ed glossario
OpenOffice.org per facilitare l'attivit&agrave; di traduzione e
verifica dei testi riguardanti OpenOffice.org. Per avere maggiori
dettagli sul programma&nbsp;potere consultare la pagina&nbsp;<a href="http://it.openoffice.org/linguistico/ooo_vocabulary.html">OOo
Vocabulary</a>.<br />






<br />






La versione speciale di OOo Vocabulary &egrave; reperibile presso
la seguente URL:<br />






<a href="http://prdownloads.sourceforge.net/ooodocs/Vocabulary2SE.zip?download"><br />






http://prdownloads.sourceforge.net/ooodocs/vocabulary2se.zip?download</a><br />






<br />






Installazione<br />






Questa versione &egrave; stata studiata per facilitare al massimo
l'installazione anche per gli utenti meno esperti. Per questo motivo
viene utilizzata la nuova funzione Gestione Pacchetti disponibile nella
versione 2.0 di OpenOffice.org. Per installare il programma in
OpenOffice.org procedete come segue:<br />






<br />






1. Prelevate il file con il pacchetto compresso contenente <a href="http://prdownloads.sourceforge.net/ooodocs/Vocabulary2SE.zip?download">OOo
Vocabulary SE</a>.<br />






<br />






2. Avviate OpenOffice.org 2.0.<br />






<br />






<div style="text-align: center;"><img style="width: 635px; height: 466px;" alt="" src="images/pacchetti1.png" /><br />






</div>






<br />






3. Selezionate da menu Strumenti -&gt; Gestione pacchetti... <br />





<br />






<br />






<div style="text-align: center;"><img style="width: 730px; height: 404px;" alt="" src="images/pacchetti2.png" /></div>






<br />






4. Premete sul pulsante Aggiungi e selezionate il file di OOo
Vocabulary SE.<br />





<br />






<br />






<div style="text-align: center;"><img style="width: 731px; height: 404px;" alt="" src="images/pacchetti3.png" /></div>






<br />






5. Una volta terminata l'installazione, chiudere OpenOffice.org e <span style="text-decoration: underline; font-weight: bold;">riavviarlo</span><span style="font-weight: bold;">.</span>
<br />






<br />






<div style="text-align: left;"><br />






</div>






6. Al riavvio, troverete OOo Vocabulary installato in OpenOffice.org. <br />






<br />






<ol>






</ol>






E' possibile avviare OOo Vocabulary in tre modi distinti:<br />





<ol>





  <li>dal <span style="font-weight: bold;">menu</span>&nbsp;Strumenti -&gt; Add-on -&gt; Vocabulary</li>





  <li>dalla <span style="font-weight: bold;">barra
strumenti</span> Add-on. Attivabile attraverso il menu Visualizza -&gt; Barre dei simboli -&gt; Add-on</li>





  <li>da tastiera con la <span style="font-weight: bold;">combinazione
tasti CTRL-t</span>. </li>





</ol>





Con quest'ultimo sistema, quando si
posiziona il cursore vicino o su una parola o la si seleziona, la
parola viene automaticamente passata a OOo Vocabulary per la
traduzione. <br />






<br />






<br />





<h3>OmegaT: gestore di memorie di traduzione<a name="3"></a></h3>






OmegaT &egrave; un programma Java compatibile con il formato dei
file di OpenOffice.org 1.1.x e 2.0. Tale programma &egrave;
reperibile presso il sito: <br />
<br />






<a href="http://sourceforge.net/projects/omegat">http://sourceforge.net/projects/omegat</a><br />






<br />






<br />






<h3>OOoWikipedia: accesso a Wikipedia dall'interno di OpenOffice.org<a name="4"></a></h3>

<br />

OOoWikipedia &egrave; uno strumento integrato in
OpenOffice.org di consultazione di <a href="http://it.wikipedia.org/wiki/Pagina_principale">Wikipedia</a>,&nbsp;un'enciclopedia libera e multilingue.&nbsp; La pagina ufficiale di OOoWikipedia
si trova <a href="http://www.indesko.com/sites/en/downloads/ooowikipedia/view">qui</a>. &nbsp;<br />
<br />
Tale programma &egrave;
reperibile presso il questo collegamento: <a href="http://www.indesko.com/en/downloads/ooowikipedia/downloadFile/attachedFile/OOoWikipedia-2.1.zip?nocache=1117352909.26">OOoWikipedia-2.1.zip</a>. <br />
<br />
Si installa nel seguente modo:<br />

<ol>

  <li>Selezionate da menu Strumenti -&gt; Gestione pacchetti... </li>

  <li>Premete sul pulsante Aggiungi e selezionate il file di&nbsp;OOoWikipedia.</li>

  <li>




Una volta terminata l'installazione, chiudere OpenOffice.org e <span style="text-decoration: underline; font-weight: bold;">riavviarlo</span><span style="font-weight: bold;">.</span>
  </li>

  <li>









Al riavvio, troverete OOo Vocabulary installato in OpenOffice.org. </li>

</ol>






<br />

 <span style="text-decoration: underline;"></span><a href="strumenti.html#1"></a>




<br />






<br />






<br />






<hr />
</div>






</div>






</div>






</body>
</html>
