haiku/docs/userguide/it/workshop-filetypes+attribut...

253 lines
18 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="it" xml:lang="it">
<head>
<!--
*
* Copyright 2008, 2019 Haiku. All rights reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Humdinger <humdingerb@gmail.com>
* Translators:
* Barrett
* Francesco Franchina
* Gabriele
*
-->
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="robots" content="all" />
<title>Workshop: tipi di file, attributi, indici e interrogazioni</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" type="text/css" href="../Haiku-doc.css" />
</head>
<body>
<div id="banner">
<div><span>Guida dell'utente</span></div>
</div>
<div class="nav">
<div class="inner">
<ul class="lang-menu">
<li class="now">Italiano&nbsp;<span class="dropdown-caret">&#9660;</span></li>
<li><a href="../id/workshop-filetypes+attributes.html">Bahasa Indonesia</a></li>
<li><a href="../ca/workshop-filetypes+attributes.html">Català</a></li>
<li><a href="../de/workshop-filetypes+attributes.html">Deutsch</a></li>
<li><a href="../en/workshop-filetypes+attributes.html">English</a></li>
<li><a href="../es/workshop-filetypes+attributes.html">Español</a></li>
<li><a href="../eo/workshop-filetypes+attributes.html">Esperanto</a></li>
<li><a href="../fr/workshop-filetypes+attributes.html">Français</a></li>
<li><a href="../fur/workshop-filetypes+attributes.html">Furlan</a></li>
<li><a href="../hu/workshop-filetypes+attributes.html">Magyar</a></li>
<li><a href="../pl/workshop-filetypes+attributes.html">Polski</a></li>
<li><a href="../pt_PT/workshop-filetypes+attributes.html">Português</a></li>
<li><a href="../pt_BR/workshop-filetypes+attributes.html">Português (Brazil)</a></li>
<li><a href="../ro/workshop-filetypes+attributes.html">Română</a></li>
<li><a href="../sk/workshop-filetypes+attributes.html">Slovenčina</a></li>
<li><a href="../fi/workshop-filetypes+attributes.html">Suomi</a></li>
<li><a href="../sv_SE/workshop-filetypes+attributes.html">Svenska</a></li>
<li><a href="../tr/workshop-filetypes+attributes.html">Türkçe</a></li>
<li><a href="../zh_CN/workshop-filetypes+attributes.html"> 中文 [中文]</a></li>
<li><a href="../ru/workshop-filetypes+attributes.html">Русский</a></li>
<li><a href="../uk/workshop-filetypes+attributes.html">Українська</a></li>
<li><a href="../jp/workshop-filetypes+attributes.html">日本語</a></li>
</ul>
<span>
« <a href="queries.html">Le interrogazioni</a>
:: <a href="contents.html" class="uplink">Contenuti</a>
:: <a href="applications.html">Applicazioni</a> »
</span></div>
</div>
<div id="content">
<div>
<div class="box-info">La traduzione di questa pagina non è stata ancora completata. Finché non lo sarà, le parti non tradotte saranno visualizzate in inglese.</div>
<table class="index" id="index" summary="index">
<tr class="heading"><td>Indice</td></tr>
<tr class="index"><td>
<a href="#preparations">Preparativi</a><br />
<a href="#custom-filetype">Creare un tipo file personalizzato</a><br />
<a href="#icon">Icona</a><br />
<a href="#file-recognition">Riconoscimento dei file</a><br />
<a href="#description">Descrizione</a><br />
<a href="#pref_app">Applicazione preferita</a><br />
<a href="#extra_attribute">Attributi Extra</a><br />
<a href="#indexing">Indicizzazione</a><br />
<a href="#filling-data">Inserire i dati</a><br />
<a href="#query-db">Interrogare il database</a>
</td></tr>
</table>
<h1>Workshop: tipi di file, attributi, indici e interrogazioni</h1>
<p>Questo è un workshop, una sezione in cui verrà mostrato l'uso degli <a href="attributes.html">Attributi</a>, delle <a href="queries.html">Interrogazioni</a>, dell'<a href="index.html">Indice del filesystem</a> e dei <a href="filetypes.html">Tipi di File</a>. Si costruirà a titolo di esempio un database per tenere traccia di una collezione di DVD.</p>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="preparations" name="preparations">Preparativi</a></h2>
<p>Innanzi tutto, devi decidere di che attributi e tipo di file hai necessità. All'inizio, l'idea era di usare un file di segnalibri con i collegamenti al sito IMdB, ma all'epoca il browser di Haiku non aveva il supporto per i segnalibri a differenza di <span class="app">NetPositive</span>, il browser del BeOS. La soluzione (più ragionevole) che è stata scelta è allora la seguente: il file sarà un'immagine JPEG che rappresenta la copertina del film.<br />
<span class="app">WebPositive</span> adesso supporta i file di segnalibri, così l'idea iniziale può ora, se preferisci, essere realizzata.<br />
In ogni caso, andremo ad aggiungere al file un paio di attributi. È in questa fase in cui dovremo decidere se vogliamo riservarci la possibilità di interrogare il file successivamente (e in questo caso dovremo aggiungerlo all'indice) e, in caso affermativo, stabilire di che tipo saranno i nuovi attributi. Ricorda che i numeri (int, float) possono essere valutati differentemente dal testo (&lt;/=/&gt; oppure is/contains/starts with).</p>
<p>Ecco alcuni attributi utili per classificare i DVD:</p>
<ul>
<li>Titolo del film</li>
<li>Genere</li>
<li>URL, per esempio, su IMdB</li>
<li>Direttore e Regia</li>
<li>Trama</li>
<li>Il proprio giudizio da 1 a 10</li>
<li>Coordinate nello scaffale, ad esempio A2, B3, in modo da reperire i DVD anche nella realtà</li>
<li>Se e a chi è stato prestato il DVD</li>
</ul>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="custom-filetype" name="custom-filetype">Creare un tipo file personalizzato</a></h2>
<p>Prima di tutto, apri il pannello delle preferenze <span class="app">Tipi di File</span> cliccando sul pulsante <span class="button">Aggiungi...</span> sotto la lista gerarchica a sinistra. Si aprirà una piccola finestra di dialogo dove verrà richiesto tra quali MIME Group verrà collocato il filetype, è sufficiente scegliere "<i>applicazioni</i>" impostando il nome interno come <i>DVDdb</i>. Ricorda che è anche possibile creare un gruppo completamente nuovo.
</p>
<img src="images/workshop-filetypes+attributes-images/filetypes-new-file-type.png" alt="filetypes-new-file-type.png" />
<p>A questo punto si aprirà un pannello per il nuovo tipo file DVDdb:</p>
<img src="images/workshop-filetypes+attributes-images/filetypes-dvddb.png" alt="filetypes-dvddb.png" />
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="icon" name="icon">Icona</a></h3>
<p>Facendo doppio clic sull'icona si aprirà <a href="applications/icon-o-matic.html">Icon-O-Matic</a> che permette di disegnare un'icona per il proprio tipo file. È anche possibile trascinare sopra un'icona da un altro tipo, da usare magari come punto di partenza per crearne una versione modificata.</p>
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="file-recognition" name="file-recognition">Riconoscimento dei file</a></h3>
<p>È possibile specificare dei suffissi come .txt, .jpg, .mp3 in modo da permettere l'identificazione dei file a partire dalla loro estensione. Questo può risultare utile quando si ha a che fare con file di sistemi che non prevedono il MIME Type. Non è necessario fare uso dei suffissi ai fini dell'esempio.</p>
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="description" name="description">Descrizione</a></h3>
<ul>
<li><i>Type Name</i> - Apparirà ad esempio nel menù Attributi della finestra del Tracker e come attributo "Tipo" di un file.</li>
<li><i>Descrizione</i> - Una descrizione un po' più dettagliata.</li>
</ul>
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="pref_app" name="pref_app">Applicazione preferita</a></h3>
<p>Questo menù pop-up mostra una lista di tutte le applicazioni che supportano questo particolare tipo file. Da qui è possibile selezionare quale programma dovrà aprire il file specifico quando ci si effettuerà un doppio click.</p>
<table summary="layout" border="0" cellspacing="0" cellpadding="2">
<tr><td><span class="button">Seleziona...</span></td><td> </td><td>apre una finestra di dialogo dove è possibile selezionare un'applicazione per aprire il tipo di file. Nel nostro esempio è stato impostato <span class="app">ShowImage</span> per visualizzare la copertina del DVD.</td></tr>
<tr><td class="onelinetop"><span class="button">Uguale a...</span></td><td> </td><td>apre una finestra di dialogo dove è possibile selezionare qualsiasi file che abbia già come applicazione preferita quella che si sta cercando.</td></tr>
</table>
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="extra_attribute" name="extra_attribute">Attributi Extra</a></h3>
<p>Questo è il luogo dove verranno inseriti tutti gli attributi personalizzati stabiliti durante la preparazione. Cliccando sul pulsante <span class="button">Aggiungi...</span> si aprirà il pannello per l'inserimento di tutti i dati relativi al nuovo attributo. Puoi modificare un attributo esistente con un doppio click.</p>
<img src="images/workshop-filetypes+attributes-images/filetype-extra-attribute.png" alt="filetype-extra-attribute.png" />
<ul>
<li><p><i>Nome Attributo</i> - Appare, ad esempio, come colonna in alto nella finestra di Tracker.</p></li>
<li><p><i>Nome Interno</i> - È utilizzato per indicizzare l'attributo.</p></li>
<li><i>Tipo</i> - Definisce che tipo di valore può essere conservato dall'attributo e come può essere richiesto attraverso un'interrogazione.
<ul>
<li><span class="menu">Stringa</span> per il semplice testo</li>
<li><span class="menu">Booleano</span> per dati binari: 0 oppure 1</li>
<li><span class="menu">Intero</span> per i numeri interi, si dividono in base ai valori rappresentabili:
<ul>
<li><span class="menu">8 bit</span>: ± 255</li>
<li><span class="menu">16 bit</span>: ± 65,535</li>
<li><span class="menu">32 bit</span>: ± 4,294,967,295</li>
<li><span class="menu">64 bit</span>: ± 18,446,744,073,709,551,615</li>
</ul>
</li>
<li><span class="menu">Float</span> per i numeri a virgola mobile con precisione singola</li>
<li><span class="menu">Double</span> per i numeri a virgola mobile con precisione doppia</li>
<li><span class="menu">Time</span> per i formati di date e orari</li>
</ul>
</li>
</ul>
<ul>
<li><i>Visibile</i> - Questa casella di controllo determina se l'attributo è visibile all'interno della finestra del Tracker. Dato che il Tracker si interfaccerà col database dei DVD, sarà necessario spuntare la casella e definire il loro aspetto con:<ul>
<li><span class="menu">Mostra Come</span> - Lasciare su "Predefinito" se i valori dovranno essere visualizzati coerentemente al tipo dell'attributo (es. stringa/intero/virgola mobile). Le altre opzioni disponibili sono:
<ul>
<li><span class="menu">Casella di spunta</span> - Può essere usata per mostrare uno o due simboli, vedi <span class="menu">Speciale</span> sotto.</li>
<li><span class="menu">Durata</span> - Mostra un intero come 1/60, wa. "90" diventa "1:30".</li>
<li><span class="menu">Voto</span> - Mostra una valurazione da zero a dieci, visualizzata con l'ausilio di stelline.</li>
</ul></li>
<li><span class="menu">Editabile</span> - Determina se l'attributo è modificabile attraverso il Tracker.</li>
<li><span class="menu">Speciale</span> - Definiscei due simboli da utilizzare per la visualizzazione della casella di spunta. Per esempio, "xo" mostrerà una "x" per tutti i valori &gt;0 e "o" per lo 0.</li>
<li><span class="menu">Larghezza</span> - La larghezza predefinita della colonna dell'attributo nelle finestre del Tracker.</li>
<li><span class="menu">Allineamento</span> - L'attributo può essere visualizzato a sinistra, centrato o a destra.</li>
</ul></li></ul>
<p>Ora, bisogna inserire tutte le informazioni sugli attributi:</p>
<table summary="DVDdb Attributes" cellpadding="10" border="1">
<tr><th>Nome interno</th><th>Tipo attributo</th><th>Indicizzato?</th><th>Descrizione</th></tr>
<tr><td>DVDdb:titolo</td> <td>testo</td> <td>si</td> <td>Titolo del film</td></tr>
<tr><td>DVDdb:genere</td> <td>testo</td> <td>si</td> <td>Genere</td></tr>
<tr><td>DVDdb:url</td> <td>testo</td> <td>no</td> <td>URL</td></tr>
<tr><td>DVDdb:cast</td> <td>testo</td> <td>si</td> <td>Direttore e Regia</td></tr>
<tr><td>DVDdb:trama</td> <td>testo</td> <td>no</td> <td>Trama</td></tr>
<tr><td>DVDdb:voto</td> <td>intero - 32 bit</td> <td>si</td> <td>Voto da 1 a 10</td></tr>
<tr><td>DVDdb:coordinate</td> <td>testo</td> <td>no</td> <td>Scaffale</td></tr>
<tr><td>DVDdb:prestato</td> <td>testo</td> <td>si</td> <td>Prestato a</td></tr>
</table>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="indexing" name="indexing">Indicizzazione</a></h2>
<p>Prima di iniziare con l'immissione dei dati nel piccolo database dei DVD, è necessario aggiungere gli attributi all'<a href="index.html">Indice</a>, solo gli attributi indicizzati potranno essere raggiunti da Haiku tramite una <a href="queries.html">Interrogazione</a>.<br />
Allora, cosa si dovrà cercare in futuro? Probabilmente non ci si chiederà "Cosa c'è nella coordinata B4 dello scaffale?" o "In quale film la parola 'pope-shenooda' è contenuta nell'url di IMdB o nella trama?".</p>
<p>Questa scelta porta a usare solo questi attributi:</p>
<table summary="Attribute Type" cellpadding="10" border="1">
<tr><th>Nome interno</th><th>Tipo attributo</th></tr>
<tr><td>DVDdb:titolo</td><td>testo</td></tr>
<tr><td>DVDdb:genere</td><td>testo</td></tr>
<tr><td>DVDdb:cast</td><td>testo</td></tr>
<tr><td>DVDdb:voto</td><td>intero - 32 bit</td></tr>
</table>
<p>Per indicizzarli, si deve aprire un terminale aggiungendo semplicemente un attributo dopo l'altro:</p>
<pre class="terminal">mkindex -t string DVDdb:title
mkindex -t string DVDdb:genre
mkindex -t string DVDdb:cast
mkindex -t int DVDdb:rating</pre>
<p>L'opzione <span class="cli">-t</span> specifica il tipo dell'attributo, in questo caso "string" per tutti, fa eccezione il voto che è un numero intero.</p>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="filling-data" name="filling-data">Inserire i dati</a></h2>
<p>Ora che tutto è sistemato, è possibile cominciare ad inserire alcuni dati all'interno del database.<br />
Dal momento che il file di base è l'immagine della copertina, ci si collegherà a qualche risorsa online come IMdB per reperire la copertina o la locandina del primo film salvandola in una nuova cartella dove si vuole posizionare il database dei file DVDdb.</p>
<p>Aprendo questa cartella ci si troverà davanti la solita finestra di Tracker contenente un file JPEG. Cliccandoci su col tasto destro, è possibile impostare il suo filetype come <tt>application/DVDdb</tt> con l'<span class="app"> Addon Filetype</span>.
Maggiori informazioni sull'argomento sono reperibili nel capitolo sui <a href="filetypes.html">Tipi di File</a>.</p>
<p>A questo punto è necessario attivare tutti gli attributi di DVDdb dal menù <span class="menu">Attributes</span> della finestra di Tracker e risistemare a piacere le colonne:</p>
<img src="images/workshop-filetypes+attributes-images/filetypes-dvddb-empty.png" alt="filetypes-dvddb-empty.png" />
<p>Cliccando su un attributo ancora vuoto (o premendo <span class="key">ALT</span> <span class="key">E</span>) si passa alla modalità per la modifica nella quale è possibile inserire ciascun attributo. È possibile spostarsi tra gli attributi con la scorciatoia <span class="key">TAB</span> e <span class="key">SHIFT</span> <span class="key">TAB</span>.</p>
<p>Nell'esempio visto, solitamente si cominciava scaricando un file JPG e cambiando il suo filetype in applications/DVDdb. Esiste un altro metodo elegante per produrre analoghi risultati. Basta copiare un file vuoto che abbia il filetype desiderato in <span class="path">/boot/home/config/settings/Tracker/Tracker New Templates</span> e rinominarlo come DVDdb.</p>
<p>Cliccando col tasto destro all'interno della finestra di Tracker ci sarà una nuova voce sotto <span class="menu">New...</span> accanto alla voce predefinita "New folder".</p>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="query-db" name="query-db">Effettuare interrogazioni al database</a></h2>
<p>Dopo un paio d'ore di duro lavoro, si avrà un piccolo database nel quale è possibile ricercare tutti i film di Christina Ricci che hanno un bel 7+...</p>
<p>È possibile determinare il layout dei risultati di uno specifico tip di file.<br />
Per fare questo aprire la cartella contenente i file DVDdb e sistemare a piacere i risultati come dovrebbero essere presentati. Infine copiare questo layout con <span class="menu">Attributi | Copia Layout</span>.</p>
<p>Open <span class="path">/boot/home/config/settings/Tracker/DefaultQueryTemplates</span>, create a new folder and rename it to <i>group/filetype</i>, replacing slashes with underscores; in our case "application_DVDdb".</p>
<p>Per finire si apra una nuova cartella e ci si incolli il layout con <span class="menu">Attributi | Incolla Layout</span>. Ed ecco il risultato:</p>
<img src="images/workshop-filetypes+attributes-images/query-dvddb.png" alt="query-dvddb.png" />
</div>
</div>
<div class="nav">
<div class="inner"><span>
« <a href="queries.html">Le interrogazioni</a>
:: <a href="contents.html" class="uplink">Contenuti</a>
:: <a href="applications.html">Applicazioni</a> »
</span></div>
</div>
</body>
</html>