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
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
|
<!-- Copyright (c) 2005 by Michaël Larouche <[email protected]
> -->
<!-- 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 [email protected], 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>
|