<title>Informacje o stylach okna rozmowy &kopete;</title>
<para>Począwszy od &kopete; 0.12, w stylu okna rozmowy wykorzystywany jest format <ulink url="http://www.adiumx.com/">Adium</ulink>. Ten format motywów bazuje na szablonach <acronym>HTML</acronym> i <acronym>CSS</acronym>. Są one łatwiejsze do tworzenia i rozwijania, konieczna jest tylko znajomość <acronym>HTML</acronym> i <acronym>CSS</acronym>. Styl może mieć również warianty (określone jako plik <acronym>CSS</acronym>), podnoszące jego możliwości dostosowania do upodobań użytkownika. </para>
<para>Format Adium określa strukturę katalogów, szablony <acronym>HTML</acronym>, pliki <acronym>CSS</acronym> i słowa kluczowe, które są zastępowane za każdym razem, gdy przetwarzany jest szablon. Końcowym efektem jest okno rozmowy, w postaci strony <acronym>XHTML</acronym>, gdzie wiadomości są dodawane operacjami <acronym>DOM</acronym> (drzewa obiektów dokumentu). Centralnym elementem jest element div, nazywany <filename>Chat</filename>. Przed i po elemencie div znajdują się szablony Header i Footer. Wiadomości są elementami potomnymi elementu div <filename>Chat</filename>. </para>
<para>Styl musi trzymać się określonej struktury katalogów. Kod &kopete; również został napisany z myślą o tej strukturze. Archiwizując styl, musisz zarchiwizować katalog <filename>styleName</filename>. Struktura katalogu odpowiada strukturze pakietu w systemie <application>Mac OS X</application>, jeśli znasz ten system operacyjny, to poczujesz się jak w domu. Musisz zwrócić uwagę na wielkość liter, ponieważ system <acronym>UNIX</acronym> rozróżnia małe i wielkie litery.</para>
<programlisting>styleName\ (może posiadać przyrostek .adiumMessageStyle, ponieważ w Mac OS X jest to pakiet)
<para>Jest to specjalny element div używany wewnętrznie. To symbol zastępczy, który ma wskazywać, gdzie wstawić następną wiadomość. Jeśli to nowa wiadomość, stara wiadomość jest usuwana, a jej miejsce zajmuje nowa. Ale jeśli to kolejna wiadomość, element div jest zastępowany zawartością nowej wiadomości. Specjalny element div jest <emphasis>wymagany</emphasis> w szablonach Content, Context, NextContent, NextContext. Ale można go również umieścić w szablonach Action i Status. </para>
<para>Użyj szablonu Header, aby wyświetlić nad rozmową ładny nagłówek. Ten szablon jest umieszczany przed elementem div <filename>Chat</filename>. Jeśli nie chcesz z tego korzystać, umieść tam pusty plik. </para>
<para>Podobny do szablonu Header, ale umieszczany jest w stopce rozmowy. Ten szablon jest wstawiany po elemencie div <filename>Chat</filename>. Jeżeli nie będziesz go używać, umieść tam pusty plik. </para>
<para>Ten szablon jest używany do wyświetlania wewnętrznych komunikatów. Chodzi o komunikaty typu zmiana statusu, czy komunikaty od Kopete (np. o nadchodzącym pliku). Jeśli styl nie zawiera szablonu Action, szablon Status używany jest do wyświetlania komunikatów Action. </para>
<para>Szablon Content to główna część okna wiadomości. Traktuj go jak blok zawierający wiadomości. Upewnij się, że jest w stanie dodawać kolejne wiadomości, nie projektuj go tak, by wyświetlił tylko jedną. Kolejne wiadomości będą umieszczane w elemencie div insert. </para>
<para>Szablon NextContent to element z wiadomością dla kolejnych wiadomości. Zostanie on wstawiony do głównego bloku wiadomości. Szablon HTML powinien zawierać tylko minimum konieczne do wyświetlenia wiadomości. </para>
<para>Ten szablon jest rozszerzeniem &kopete; w stosunku do formatu Adium. Jest dostępny dla kierunku przychodzącego i wychodzącego. Wiadomości Action to specjalne wiadomości informujące o tym, że podejmujemy jakieś działanie. Przykład: "/me instaluje &kopete;" będzie wyświetlane jako "DarkShock instaluje &kopete;". </para>
<para>Te szablony nie są stosowane w Kopete. W formacie Adium są używane do wyświetlania historii. Bardzo przypominają szablony Content i NextContent, jedynie kilka elementów odróżnia je od zwykłych wiadomości. </para>
<para>Szablony HTML są używane do opisu utworzonej struktury. Cały styl jest opisany jednak w plikach <acronym>CSS</acronym>. <filename>main.css</filename> to główny styl, a warianty to odmiany głównego stylu. Przykładem wariantu są zmienione kolory, czy brak pokazanego zdjęcia użytkownika. Zarówno <filename>main.css</filename>, jak i warianty są dołączane do wynikowej strony <acronym>XHTML</acronym>.</para>
<para>Jest to główny plik <acronym>CSS</acronym>, który jest wspólny dla wszystkich wariantów. W tym pliku powinien być zawarty cały główny opis stylu.</para>
<para>Warianty to pliki <acronym>CSS</acronym> umieszczone w katalogu <filename>Variants/</filename>. Każdy wariant to pojedynczy plik <acronym>CSS</acronym>, który dołącza do siebie <filename>main.css</filename> i wprowadza modyfikacje głównego stylu.</para>
<para>W oknie rozmowy możesz <action>zapisać</action> dyskusję. Jest to kopia wyświetlanej, wewnętrznej strony XHTML. Otwórz ją w przeglądarce <application>Konqueror</application>, aby przetestować Twoje pliki <acronym>CSS</acronym>.</para>
<para>Parametr konfiguracji &kopete; pozwala wyłączyć buforowanie stylu. Gdy buforowanie jest wyłączone, szablony HTML są wczytywane ponownie za każdym razem, gdy pojawia się prośba o styl. Dodaj poniższe wiersze do Twojego pliku <filename>kopeterc</filename>. Jest to bardzo użyteczne przy testowaniu stylów w &kopete;.</para>
<para>Słowa kluczowe są jak puste miejsca do wypełnienia szczegółami. Z nadejściem nowej wiadomości, są one zastępowane prawidłową wartością, odpowiadającą kontekstowi. Aby możliwa była pełna obsługa funkcji w Kopete, dodane zostało kilka rozszerzeń słów kluczowych do Adium. Również niektóre słowa kluczowe są dostępne tylko w pewnym kontekście.</para>
<variablelist><title>Słowa kluczowe dla szablonów Header i Footer </title>
<para>Te słowa kluczowe są przetwarzane na początku rozmowy.</para>
<para>Jest to nazwa bieżącej sesji rozmowy. W typowej sesji, wyświetlana jest nazwa rozmówcy i jego status. W przypadku <acronym>IRC</acronym> pokazywany jest temat kanału. </para>
<para>Są to nazwy uczestników rozmowy. <filename>%sourceName%</filename> to Twoja nazwa. <filename>%destinationName%</filename> to nazwa osoby z którą rozmawiasz. Zalecamy używanie <filename>%chatName%</filename>, ponieważ dwa pozostałe mogą wprowadzać w błąd w rozmowach grupowych i IRC. </para>
<para>Są to obrazy/zdjęcia/awatary uczestników rozmowy. Incoming przedstawia zdjęcie rozmówcy, a Outgoing Twoje własne zdjęcie. Jeśli brak jest dostępnych zdjęć, użyty zostanie obrazek <filename>buddy_icon.png</filename>, znajdujący się w katalogu <filename>Incoming</filename> lub <filename>Outgoing</filename>. </para>
<para>To czas rozpoczęcia rozmowy. <filename>%timeOpened%</filename> używa domyślnego formatu czasu dla bieżącego czasu lokalnego. Jeśli chcesz używać określonego formatu czasu, użyj <filename>%timeOpened{X}%</filename>, gdzie X jest ciągiem zawierającym format czasu. Parametry formatu czasu są te same co w funkcji glibc <function>strftime</function>. Wpisz <command>man:strftime</command> w oknie &konqueror-dopelniacz; , aby otrzymać listę dostępnych parametrów. </para>
<para>Jest to obraz/zdjęcie/awatar osoby powiązanej z wiadomością. Jeśli zdjęcie nie jest dostępne, użyty zostanie obrazek <filename>buddy_icon.png</filename>, znajdujący się w katalogu <filename>Incoming</filename> lub <filename>Outgoing</filename>, w zależności od kierunku wiadomości. </para>
<para>To słowo kluczowe jest używane w &kopete; do przedstawienia tła podświetlenia. Zignoruj parametr w nawiasach klamrowych i używaj tylko jako <filename>%textbackgroundcolor{}</filename>. </para>
<para>Tworzy kolor z identyfikatora osoby wysyłającej. Może być używane do wyświetlenia odmiennego koloru dla pseudonimu kontaktu. </para>
<para><filename>%senderColor{N}%</filename>, gdzie N jest liczbą dodatnią. Jeśli N jest większe niż 100, wówczas przedstawia kolor jaśniejszy niż kolor czcionki kontaktu. Jeśli N jest równe 150 to jest to kolor, który jest jaśniejszy o 50%. Jeśli N jest mniejsze niż 100, to wówczas kolor jest ciemniejszy. Może służyć w do zróżnicowania tła każdego kontaktu. </para>
<para>Jeśli chcesz używać tych kolorów w wariantach, a nie w stylu głównym, musisz zastosować sztuczkę. <programlisting>
</programlisting> możesz zastosować kolor dla p.message w Twoim pliku <filename>main.css</filename>, a w wariancie musisz zrobić tak <programlisting>p.message { color:inherit; border-color:inherit; }
<para>Czas otrzymania wiadomości. <filename>%time%</filename> korzysta z domyślnego formatu czasu dla czasu lokalnego. Jeśli chcesz używać określonego formatu czasu, użyj <filename>%time{X}%</filename>, gdzie X jest ciągiem zawierającym format czasu. Parametry czasu są te same co w funkcji glibc <function>strftime</function>. Wpisz <command>man:strftime</command> w oknie &konqueror-dopelniacz;, aby otrzymać listę dostępnych parametrów. </para>
<para>Określa kierunek wiadomości, jeśli wiadomość musi być wyświetlana od prawej do lewej lub od lewej do prawej. Wartością może być "rtl" lub "ltr". Przeczytaj <link linkend="chatstyle-guideline-direction">reguły Kierunek wiadomości</link>, aby zobaczyć jak używać tego słowa kluczowego poprawnie. </para>
<para>Twój styl musi umożliwiać podświetlenie. W Kopete i Adium <filename>%textbackgroundcolor{}%</filename> jest zastępowany kolorem podświetlenia. Dodaj ten atrybut stylu: <userinput>background-color: %textbackgroundcolor{}%</userinput> do elementu HTML wyświetlającego wiadomość.</para>
<title>Wymagane są szablony kolejnych wiadomości</title>
<para>Ta reguła odnosi się do ludzi przekształacających stare style XSL do nowego formatu. Wszystkie style muszą posiadać szablon dla kolejnych wiadomości. Jest to obecnie domyślna funkcja.</para>
<title>Dodaj <filename>Contents/Info.plist</filename> dla zgodności z Adium</title>
<para>Plik <filename>Contents/Info.plist</filename> nie jest jeszcze używany w Kopete. Ale jeśli chcesz, by Twój styl był zgodny z <application>Adium</application>, musisz zamieścić ten plik. Oto prosty przykład pliku. Ciągi do zastąpienia znajdują się pomiędzy "$".</para>
<para>Musisz umieścić plik o nazwie <filename>buddy_icon.png</filename> w katalogach <filename>Incoming</filename> i <filename>Outgoing</filename>. Te obrazy zostaną użyte, gdy nie ma zdjęcia rozmówcy.</para>
<title>Obsługa języków od prawej do lewej za pomocą słowa kluczowego <filename>%messageDirection%</filename></title>
<para>Dostępne jest słowo kluczowe <filename>%messageDirection%</filename> dla języków pisanych od prawej do lewej. Określa ono kierunek wiadomości: "rtl"(od prawej do lewej) lub "ltr"(od lewej do prawej). Dodaj ten atrybut stylu do elementu HTML wyświetlającego wiadomość: <userinput>direction: %messageDirection%</userinput>. Podgląd stylu w konfiguracji wyglądu zawiera tekst pisany od prawej do lewej, w celu sprawdzenia, czy styl jest wyświetlany poprawnie. Napis powinien rozpoczynać się od prawej.</para>