# Especificacions per a les emoticones

Versió 0.1

7 de gener de 2005

## Emoticones

## Introducció

Aquest document de PROJECTE defineix com crear un tema d'emoticones utilitzat típicament en aplicacions de missatgeria instantània

L'esquema bàsic és molt simple. El tema consisteix en un subdirectori que conté totes les imatges i un fitxer &XML; que dóna cadascun dels símbols ASCII de la imatge. Es pot utilitzar un fitxer «.directory».

### Ubicacions dels fitxers

Els fitxers involucrats en aquesta especificació estan ubicats d'acord amb l'«especificació per a directori base de l'escriptori» que es pot trobar a www.freedesktop.org.

Tots els fitxers del tema haurien d'anar a un subdirectori de `$XDG_DATA_DIRS`/emoticons/. El nom del directori haurà de ser igual que el nom del tema. Aquest directori haurà de contenir un fitxer anomenat `emoticons.xml`, el format d'aquest fitxer es descriu a continuació.

El directori del tema també pot contenir un fitxer «.directory» que contingui les traduccions del nom del tema i/o una icona per a aquest tema.

### Format del fitxer «emoticons.xml»

Els fitxers de mapes per a les emoticones han de ser fitxers XML ben formats. Les implementacions han d'ignorar etiquetes o atributs desconeguts.

#### Elements

<messaging-emoticon-map> [version="0.1"]

- L'element arrel és <messaging-emoticon-map>, tots els altres elements estaran continguts en el mateix.

<emoticon file="...">

- Aquest element representa una «emoticon». El fitxer d'atribut és el nom del fitxer d'imatge que haurà d'estar en el mateix directori. L'extensió es pot ometre. En aquest cas, l'aplicació cercarà en aquest directori per un fitxer amb el mateix nom en un format admès.

  No hi ha cap ordre definida per a «emoticon» al mapa. Però la primera icona al mapa generalment s'utilitza per identificar el tema de forma gràfica. Per convenció hauria de ser aquesta. :-)

<string>

- Aquest element només pot aparèixer sota <emoticon>. Representa la cadena ASCII que es correspon amb el text, i se substitueix per la imatge especificada per l'atribut de fitxer de «emoticon».

  Hi poden haver diverses cadenes per a «emoticon».

  No hi ha una ordre per a la cadena dins d'una «emoticon». Però la primera hauria de ser la predeterminada, i es prendrà si hi ha un selector d'IGU.

### El format de la imatge.

Totes les imatges han d'estar en un format admès: PNG, GIF o MNG.

### Notes de les implementacions

#### Analitzador «emoticon»

No hi ha cap recomanació real sobre com analitzar les emoticones. Però una emoticona amb una cadena més llarga tindrà prioritat sobre l'altra amb una cadena més curta. (Exemple: si ambdues :-() i :-( es troben en un tema, s'utilitzarà la imatge de la primera d'elles quan es trobi :-()

### Exemple

    <messaging-emoticon-map>
            <emoticon file="smile.png">
                            <string>:-)</string>
                            <string>:)</string>
                            <string>:o)</string>
            </emoticon>

            <emoticon file="wink.png">
                            <string>;-)</string>
                            <string>;)</string>
            </emoticon>

            <emoticon file="unhappy.png">
                            <string>:-(</string>
                            <string>:(</string>
            </emoticon>
    </messaging-emoticon-map>