<title>Stilreferens för chattfönster i &kopete;</title>
<para>Från och med &kopete; 0.12, använder vi nu formatet <ulink url="http://www.adiumx.com/">Adium</ulink> för chattfönsterstilar. Temaformatet är baserat på <acronym>HTML</acronym>-mallar och <acronym>CSS</acronym>. De är enklare att skapa och utveckla, bara kunskap om <acronym>HTML</acronym> och <acronym>CSS</acronym> behövs. Dessutom kan stilar ha varianter (definierade med en <acronym>CSS</acronym>-fil), som lägger till flera egenanpassade värden). </para>
<para>Adium-formatet består av en katalogstruktur, <acronym>HTML</acronym>-mallar, <acronym>CSS</acronym>-filer och nyckelord som ersätts varje gång mallen behandlas. Den slutliga konverteringen är en <acronym>XHTML</acronym>-sida där meddelanden läggs till med <acronym>DOM</acronym>-åtgärder. Det centrala elementet är ett div-element som heter <filename>Chat</filename>. Innan och efter detta div-element finns mallar för sidhuvud och sidfot. Meddelanden finns under div-elementet <filename>Chat</filename>. </para>
<para>En stil måste hålla sig till denna katalogstruktur. Koden i &kopete; styrs av katalogstrukturen. När stilen arkiveras, arkivera då katalogen <filename>styleName</filename>. Katalogstrukturen är en struktur i enligthet med en bundle i <application>Mac OS X</application>, för de som känner till operativsystemet. Du måste dessutom följa skiftläget som visas här, eftersom <acronym>Unix</acronym>-system är skiftlägeskänsliga.</para>
<programlisting>styleName\ (kan ha .adiumMessageStyle som suffix, eftersom det är en bundle i Mac OS X)
<para>Detta är ett särskilt div-element som används internt. Det är en platsmarkör som anger var nästa meddelande ska infogas. Om det är ett nytt meddelande, tas det bort och det nya meddelandet tar dess plats. Men om det är ett efterföljande meddelande ersätts div-elementet med det nya meddelandets innehåll. Detta särskilda div-element <emphasis>krävs</emphasis> i mallarna Content, Context, NextContent, NextContext. Det skadar dock inte att också lägga till det i mallarna Action och Status. </para>
<para>Använd mallen Header för att visa ett snyggt sidhuvud för konversationen. Mallen infogas innan div-elementet <filename>Chat</filename>. Om du inte använder det, lägg bara till en tom fil. </para>
<para>Detta är i huvudsak samma som Header, men är för konversationens sidfot. Mallen infogas efter div-elementet <filename>Chat</filename>. Om du inte använder det, lägg bara till en tom fil. </para>
<para>Mallen används för att visa ett internt meddelande. Interna meddelanden som statusändringar, meddelanden från Kopete (t.ex. inkommande filöverföring) visas. När stilen inte tillhandahåller mallen Action, används den för att visa sådana meddelanden. </para>
<para>Innehållsmallen är meddelandets kärna. Föreställ dig det som ett block som kommer att innehålla meddelanden. Försäkra dig om att det är klart att ta emot efterföljande meddelanden, konstruera den inte för att bara visa ett meddelande. Efterföljande meddelanden infogas vid div-elementet. </para>
<para>Mallen NextContent är meddelandefragment för efterföljande meddelanden. Den infogas i huvudmeddelandeblocket. HTML-mallen ska bara innehålla det som minimalt behövs för att visa ett meddelande. </para>
<para>Denna mall är en utökning av Adium-formatet i &kopete;. Den är tillgänglig för inkommande och utgående riktningar. Åtgärdsmeddelanden är specialmeddelanden som talar om att en åtgärd utförs. Till exempel: "/me installerar &kopete;" skulle visas som "DarkShock installerar &kopete;". </para>
<para>Dessa mallar används inte i Kopete. I Adium används de för att visa historik. De är i huvudsak likadana som Content och NextContent men med vissa skillnader för att åtskilja dem från normala meddelanden. </para>
<para>HTML-mallar används för att beskriva hur strukturen skapas, men alla stilar beskrivs i <acronym>CSS</acronym>-filer. <filename>main.css</filename> är huvudstilen, där varianter bara är ändringar av huvudstilen. Exempel på varianter är annorlunda färger, ingen visning av användarfoto. Både <filename>main.css</filename> och varianter importeras i de slutliga <acronym>XHTML</acronym>-sidorna.</para>
<para>Detta är den huvudsakliga <acronym>CSS</acronym>-filen som är gemensam för alla varianter. Filen ska innehålla all huvudsaklig beskrivning av stilen.</para>
<para>Varianter är <acronym>CSS</acronym>-filer placerade i katalogen <filename>Variants/</filename>. Varje variant är en enda <acronym>CSS</acronym>-fil som inkluderar <filename>main.css</filename> och gör ändringar av huvudstilen.</para>
<title>- Spara ett exempel på en konversation.</title>
<para>Du kan <action>spara</action> en konversation i chattfönstret. Detta är en kopia av den interna XHTML-sidan som visas. Använd den i <application>Konqueror</application> för att prova dina <acronym>CSS</acronym>-filer.</para>
<para>En liten inställningsflagga finns för att inaktivera stilcachen. När den aktiveras, laddas HTML-mallar om varje gång en stil efterfrågas. Lägg till följande rader i <filename>kopeterc</filename>. Mycket användbart när en stil provas i &kopete;.</para>
<para>Nyckelord liknar hål som ska fyllas i med information. För varje nytt meddelande ersätts de av det riktiga värdet som motsvarar deras sammanhang. För att helt stödja alla funktioner i Kopete, har vissa utökningar av nyckelord tilllagts i Adium. Vissa nyckelord är dessutom också bara tillgängliga i vissa sammanhang.</para>
<variablelist><title>Nyckelordslista för mallarna Header och Footer. </title>
<para>Där behandlas nyckelord när chatten startar.</para>
<para>Detta är namnet på aktuell chattsession. I en typisk session visar det namn och status för kontakten. För <acronym>IRC</acronym> visas kanalens ämne. </para>
<para>Dessa är namnen på kontakterna i en chattsession. <filename>%sourceName%</filename> är ditt namn. <filename>%destinationName%</filename> är namnet på kontakten du chattar med. Föredra <filename>%chatName%</filename> framför dessa, eftersom de kan vara förvirrande i gruppchatter och IRC. </para>
<para>Detta är kontakternas bild, foto eller avatar för en chattsession. Incoming representerar kontaktfotot och Outgoing representerar ditt eget foto. Om något foto inte är tillgängligt, används bilden <filename>buddy_icon.png</filename> som finns i katalogen <filename>Incoming</filename> eller <filename>Outgoing</filename>. </para>
<para>Detta är tiden då chattsessionen började. <filename>%timeOpened%</filename> använder standardtidformatet för den aktuella landsinställningen. Om du vill använda ett specifikt tidformat, använd <filename>%timeOpened{X}%</filename> där X är en sträng som innehåller tidformatet. Tidparametrarna är samma som i glibc-funktionen <function>strftime</function>. Skriv <command>man strftime</command> för att få en lista med tillgängliga parametrar. </para>
<para>Detta är kontaktens bild, foto eller avatar som hör ihop med meddelandet. Om något foto inte är tillgängligt, används bilden <filename>buddy_icon.png</filename> som finns i katalogen <filename>Incoming</filename> eller <filename>Outgoing</filename> beroende på meddelandets riktning. </para>
<para>Nyckelordet används för att representera markerad bakgrundsfärg i &kopete;. Ignorerar parametern inom parentes och använder det bara som <filename>%textbackgroundcolor{}</filename>. </para>
<para>Skapa en färg från avsändarens kontaktidentifikation. Kan användas för att visa en annan färg för kontaktens smeknamn. </para>
<para><filename>%senderColor{N}%</filename> där N är ett positivt tal. Om N är större än 100 representerar det en ljusare färg än kontaktens färg. Om N är lika med 150 är det en färg som är 50 % ljusare. Om N är mindre än 100 är det en mörkare färg. Användbar för att låta bakgrunden färgas olika för varje kontakt. </para>
<para>Om du vill använda färgerna i en variant, men inte i huvudstilen, finns ett sätt att komma runt det. <programlisting>
</programlisting> Du kan använda färgen för elementet p.message i filen <filename>main.css</filename>, och skriva något som liknar följande i varianten: <programlisting>p.message { color:inherit; border-color:inherit; }
<para>Tiden då meddelandet togs emot. <filename>%time%</filename> använder standardtidformatet för den aktuella landsinställningen. Om du vill använda ett specifikt tidformat, använd <filename>%time{X}%</filename> där X är en sträng som innehåller tidformatet. Tidparametrarna är samma som i glibc-funktionen <function>strftime</function>. Skriv <command>man strftime</command> för att få en lista med tillgängliga parametrar. </para>
<para>Representerar meddelandets riktning, om meddelandet måste visas skrivet från höger till vänster eller från vänster till höger.Värden är antingen "rtl" eller "ltr". Läs <link linkend="chatstyle-guideline-direction">Guide för meddelanderiktning</link> för att ta reda på hur nyckelordet används på ett riktigt sätt. </para>
<title>Stilguide för chattfönster i &kopete;</title>
<para>Stilguide för chattfönster i &kopete; är en uppsättning saker som din chattfönsterstil måste stödja för att fungera tillsammans med Kopete.</para>
<para>Stilen måste visa markeringar. I Kopete och Adium ersätts <filename>%textbackgroundcolor{}%</filename> med markeringsfärgen. Lägg till stilattributet <userinput>background-color: %textbackgroundcolor{}%</userinput> i HTML-elementet som visar meddelandet.</para>
<title>Meddelandemallar för efterföljande meddelanden krävs.</title>
<para>Denna guide är till för dem som skriver om gamla XSL-stilar till det nya formatet. Alla stilar måste tillhandahålla en mall för efterföljande meddelanden. Det är nu en standardfunktion.</para>
<title>Tillhandahåll <filename>Contents/Info.plist</filename> för att fungera tillsammans med Adium</title>
<para>Filen <filename>Contents/Info.plist</filename> används inte ännu i Kopete, men om du vill att stilen ska fungera tillsammans med <application>Adium</application> måste du tillhandahålla filen. Här är en grundläggande exempelfil. Strängar att ersätta omges av "$".</para>
<para>Du måste placera en fil som heter <filename>buddy_icon.png</filename> i <filename>Incoming</filename> och <filename>Outgoing</filename>. Bilderna används när kontakten inte har något foto.</para>
<title>Stöd språk som skrivs från höger till vänster med nyckelordet <filename>%messageDirection%</filename>.</title>
<para>Nyckelordet <filename>%messageDirection%</filename> är till för de språk i världen som skrivs från höger till vänster. Det definierar meddelandets riktning om det är "rtl" (höger till vänster) eller "ltr" (vänster till höger). Lägg till stilattributet i HTML-elementet som visar meddelandet: <userinput>direction: %messageDirection%</userinput>. Förhandsgranskningen av stilen i utseendeinställningen innehåller en kontroll av att stilen visar höger till vänster riktigt. Den ska visa strängen med början från höger.</para>