Icone per nuovi mimetype in gnome

 
Anteprima del risultato con le nuove icone aggiunte

Le icone, una delle prime cose che si personalizza chi passa molto tempo al computer, oltre che per esigenze anchegrafiche per il fatto che permette di riconoscere un file a colpo d'occhio, e quindi capirne la funzione senza dover andare a leggere nome del file e magari capire di cosa si tratta.

Personalmente trovo una cosa comodissima poter assegnare icone alle cartelle, ma ancor di più poter personalizzare l'icona associata ad un be definito tipo di file, quindi vediamo come possiamo fare questo per tutti quei tipi di file uguali ma che dobbiamo differenziare per comodità nostra.

Dico subito che tratterò dei file dei moduli di drupal, ma lo stesso principio vale anche per qualsiasi altro tipo di file, quindi potete "sbizzarrivi" (ovviamente è inutile avere 100000 elementi grafici diversi, si rischierebbe solo di peggiorare la situazione!)

Come prima cosa dobbiamo andare a creare un nuovo mimetype da andare ad associare al nostro tipo di file che ha un'estensione ben precisa. Per fare questo creiamo un nuovo file XMl con la struttura di seguito specificata:

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  <mime-type type="application/x-drupal-php">
    <comment>Drupal module script</comment>
    <comment xml:lang="it">Modulo di Drupal</comment>
    <sub-class-of type="text/plain"/>
    <generic-icon name="x-drupal-php"/>
    <magic priority="80">
      <match value="&lt;?php" type="string" offset="0:64"/>
    </magic>
    <glob pattern="*.install"/>
    <glob pattern="*.module"/>
    <glob pattern="*.info"/>
  </mime-type>
</mime-info>

Come potete vedere questo file contiene la definizione del nuovo mimetype (che ho chiamato "application/x-drupal-php) per i file il cui nome corrisponde a dei pattern ben precisi (*.install, *.module e *.info). Oltre a questo abbiamo definito il nome del mimetype (Drupal module script) anche nelle versioni italiana (Modulo di Drupal) e il nome dell'icona che dovremmo usare (x-drupal-php).

Una volta creato questo file andiamo a salvarlo nella cartella /usr/share/mime/packages, per fare questo servono i privilegi di root, quindi se non li avete salvate il file nella vostra home e poi spostatelo nella cartella indicata. Nel mio caso il file l'ho chiamato drupal.mime.xml:

gedit ~/drupal.mime.xml

e dopo averlo editato:

sudo mv ~/drupal.mime.xml /usr/share/mime/packages/drupal.mime.xml

A questo punto andiamo ad aggioranre il database dei mimetype del nostro sistema dando:

sudo update-mime-database /usr/share/mime

Fatto questo primo passaggio andiamo ad aggiungere l'icona che ci serve nel nostro set ti icone, per fare questo dobbiamo innanzitutto sapere quale è il set di icone che stiamo usando, nel mio caso uso il set Tangerine, ma lo stesso discorso può essere applicato a qualsiasi set di icone.

Andiamo a copiare questa icona che vogliamo usare nella cartella corretta, ora, siccome la mia icona era un icona vettoriale (SVG) la salverò nella cartella scalable, ma é possibile fare la stesas cosa per le immagini PNG, dovete solo essere sicuri che le dimensioni corrispondano al nome della cartella in cui andrete a salvarla (32x32, 64x64, 128x128). All'interno di quella cartella troverete una serie di sottocartelle, nel nostro caso si tratta di un icona per un certo mimetype, quindi la posizionerò in questa cartella.

Al termine dobbiamo aggioranre il database del seti di icone in cache.

Nel mio caso ho dato i comandi:

sudo cp application-x-drupal-php.svg /usr/share/icon/Tangerine/scalable/mimetype/application-x-drupal-php.svg
cd /usr/share/icon
sudo gtk-update-icon-cache Tangerine

a questo punto dovremmo poter aprire una cartella contente questi file e vedremmo associati ad essi l'icona corretta, come potete vedere nell'immagine di apertura.

Se vi serve l'icona che ho utilizzato io la trovate allegata a questo articolo.

AllegatoDimensione
Icona per file di Drupal7.19 KB

Commenti

Invia nuovo commento





  • Elementi HTML permessi: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <h2> <h3> <h4>
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • Linee e paragrafi vanno a capo automaticamente.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente

Maggiori informazioni sulle opzioni di formattazione.



Condividi contenuti