1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
|
<!-- Copyright (c) 2005 by Michaël Larouche <michael.larouche@kdemail.net> -->
<!-- Licensed under the GNU Free Documentation License -->
<appendix id="chatwindowstyleguide">
<title>Stilguide för chattfönster i &kopete;</title>
<sect1 id="chatstyle-reference">
<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>
<sect2 id="chatstyle-reference-guide">
<title>Referensguide.</title>
<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>
<sect3 id="chatstyle-refrerence-directory">
<title>Katalogstruktur</title>
<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)
Contents\
Info.plist
Resources\
main.css
Header.html
Footer.html
Status.html
Incoming\ (och Outgoing\)
Content.html
NextContent.html (för efterföljande meddelanden)
Context.html (för meddelandehistorik)
NextContext.html
Action.html
Variants\
*.css
</programlisting>
</sect3>
<sect3 id="chatstyle-reference-divinsert">
<title>Om <div id="insert"></div></title>
<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>
</sect3>
<sect3 id="chatstyle-reference-templates">
<title>HTML-mallar.</title>
<variablelist><title>Mallbeskrivning.</title>
<varlistentry><term><filename>Header.html</filename> (krävs)</term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>Footer.html</filename> (krävs)</term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>Status.html</filename> (krävs)</term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>Incoming/Content.html</filename></term>
<term><filename>Outgoing/Content.html</filename> (krävs)</term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>Incoming/NextContent.html</filename></term>
<term><filename>Outgoing/NextContent.html</filename> (krävs)</term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>Incoming/Action.html</filename></term>
<term><filename>Outgoing/Action.html</filename> (valfri) (utökning i &kopete;)</term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>Incoming/Context.html</filename></term>
<term><filename>Incoming/NextContext.html</filename></term>
<term><filename>Outgoing/Context.html</filename></term>
<term><filename>Outgoing/NextContext.html</filename> (valfri)</term>
<listitem>
<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>
</listitem>
</varlistentry>
</variablelist>
</sect3>
<sect3 id="chatstyle-reference-css">
<title>Om CSS-stilmallar och varianter</title>
<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>
<sect4 id="chatstyle-reference-css-main">
<title>-<filename>main.css</filename></title>
<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>
</sect4>
<sect4 id="chatstyle-refrence-css-variants">
<title>Varianter</title>
<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>
</sect4>
</sect3>
<sect3 id="chatstyle-reference-debug">
<title>Felsökning av stilar</title>
<para>Här är två tips om hur man provar en stil medan den skapas.</para>
<sect4 id="chatstyle-reference-debug-save">
<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>
</sect4>
<sect4 id="chatstyle-reference-debug-disable-cache">
<title>- Inaktivera stilcachen.</title>
<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>
<programlisting>[KopeteStyleDebug]
disableStyleCache=true
</programlisting>
</sect4>
</sect3>
</sect2>
<sect2 id="chatstyle-reference-keywords">
<title>Nyckelordsreferens</title>
<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>
<varlistentry><term><filename>%chatName%</filename></term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>%sourceName%</filename></term>
<term><filename>%destinationName%</filename></term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>%incomingIconPath%</filename></term>
<term><filename>%outgoingIconPath%</filename></term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>%timeOpened%</filename></term>
<term><filename>%timeOpened{X}%</filename></term>
<listitem>
<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>
</listitem>
</varlistentry>
</variablelist>
<variablelist><title>Nyckelordslista för mallarna Content, NextContent, Context, NextContext, Action</title>
<para>Där behandlas nyckelord för varje meddelande.</para>
<varlistentry><term><filename>%userIconPath%</filename></term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>%senderScreenName%</filename></term>
<listitem>
<para>Detta är kontaktidentifikationen för kontakten som hör ihop med meddelandet, Exempelvis jag@hotmail.com, 45566576, AnnaJohansson. </para>
</listitem>
</varlistentry>
<varlistentry><term><filename>%sender%</filename></term>
<listitem>
<para>Detta är kontaktens namn som hör ihop med meddelandet. Det använder metakontaktens namn att visa som källa. </para>
</listitem>
</varlistentry>
<varlistentry><term><filename>%service%</filename></term>
<listitem>
<para>Visar tjänstens namn som hör ihop med meddelandet. Exempel: Jabber, Yahoo, MSN. </para>
</listitem>
</varlistentry>
<varlistentry><term><filename>%textbackgroundcolor{X}%</filename></term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>%senderStatusIcon%</filename> (utökning av &kopete;)</term>
<listitem>
<para>Visar kontaktens statusikon som hör ihop med meddelandet. Det är en filsökväg. </para>
</listitem>
</varlistentry>
<varlistentry><term><filename>%senderColor%</filename></term> <term><filename>%senderColor{N}%</filename> (utökning av &kopete;)</term>
<listitem>
<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>
<![CDATA[
<div style="color:%senderColor%;border:none;border-color:%senderColor{40}%;"><p class="message">...</p></div>
]]>
</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; }
</programlisting>
</para>
</listitem>
</varlistentry>
</variablelist>
<variablelist><title>Nyckelordslista gemensam för meddelanden och Status.html</title>
<varlistentry><term><filename>%message%</filename></term>
<listitem>
<para>Själva meddelandet. Det är ett HTML-fragment. </para>
</listitem>
</varlistentry>
<varlistentry><term><filename>%time%</filename></term>
<term><filename>%time{X}%</filename></term>
<listitem>
<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>
</listitem>
</varlistentry>
<varlistentry><term><filename>%messageDirection%</filename> (utökning av &kopete;)</term>
<listitem>
<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>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>
<sect1 id="chatstyle-guideline">
<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>
<sect2 id="chatstyle-guideline-highlight">
<title>Stöd markeringar</title>
<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>
</sect2>
<sect2 id="chatstyle-guideline-consecutive">
<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>
</sect2>
<sect2 id="chatstyle-guideline-encoding">
<title>Använd kodningen <acronym>UTF-8</acronym>.</title>
<para>Rubriken säger allt. Du måste spara filerna som <acronym>UTF-8</acronym>.</para>
</sect2>
<sect2 id="chatstyle-guideline-info">
<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>
<programlisting><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleGetInfoString</key>
<string>$Your style full name$</string>
<key>CFBundleIdentifier</key>
<string>$Your style ID in the form: com.adiumx.smooth.operator.style$</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>1.0</string>
<key>CFBundleName</key>
<string>$Your style name here$</string>
<key>CFBundlePackageType</key>
<string>AdIM</string>
<key>MessageViewVersion</key>
<integer>3</integer>
</dict>
</plist>
]]>
</programlisting>
</sect2>
<sect2 id="chatstyle-guideline-buddyicon">
<title>Tillhandahåll <filename>buddy_icon.png</filename></title>
<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>
</sect2>
<sect2 id="chatstyle-guideline-direction">
<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>
</sect2>
</sect1>
</appendix>
|