Lista kontaktów z pliku userlist jest tego samego formatu co eksportowana z windowsowego klienta:
imię;nazwisko;pseudonim;wyświetlana_nazwa;telefon;grupy;opis;numer
ekg może dopisać użytkownika do kilku metagrup.
Plik konfiguracyjny config zawiera kolejne wpisy w postaci:
<set> <zmienna> <wartość> bind <klawisz> <komenda> bind-set <klawisz> <sekwencja> alias <nazwa> <komenda> on <zdarzenie> <priorytet> <założenia> <komenda> at [nazwa] <czas>/<częstotliwość> <komenda> timer [nazwa] [*/]<czas> <komenda> plugin <nazwa>
Jeśli pierwszy wyraz nie jest jednym ze znanych, jest traktowany jako nazwa zmiennej, po której występuje jej wartość - chodzi o zachowanie kompatybilności z innymi klientami.
Plik konfiguracyjny config-plugin zawiera kolejne wpisy w postaci:
<zmienna> <wartość>
Plik konfiguracyjny ,,plugins'' zawiera kolejny wpisy w postaci:
plugin <nazwa>
Jeśli wartość zmiennej zaczyna się od znaku o kodzie 1, to następująca po nim wartość zmiennej jest zakodowana używając base64.
Za pomocą oryginalnego klienta GG można wysłać sekwencje znakowe, które będą się zamieniać na odpowiednie ikony. Z oczywistych względów w ekg wykonać się tego nie da (może ktoś kiedyś zrobi wsparcie dla aaliba ;))). Sekwencje te, zamieniane są więc na inne sekwencje. Np. sekwencja <cmok>może być zamieniona na :-* lub podobną, wedle uznania użytkownika.
Aby skorzystać z możliwości rozwijania tego typu makr w otrzymywanych wiadomościach, należy je sobie wcześniej zdefiniować. Robi się to w pliku ~/.gg/emoticons. Każda linia tego pliku definiuje jedno makro, a jej format jest Następujący:
<makro><tabulatory><rozwiniecie>
Należy zwrócić uwagę na to, że do oddzielenia emoticonu od jego rozwinięcia służą tylko i wyłącznie tabulatory (jeden lub więcej). Spowodowane jest to występowaniem spacji w oryginalnych GG-owych emoticonach.
Przykładowy zestaw definicji można znaleźć w docs/emoticons.sample. Nie zawiera on wszystkich definicji, bo nie miałem na tyle inwencji, żeby je powymyślać.
Wiadomości są zapisywane w osobnych plikach w katalogu ~/.gg/queue. Nazwa pliku jest połączeniem czasu wysłania wiadomości, kropki i kolejnej liczby, ale nie ma ona większego znaczenia. Chodzi o zachowanie kolejności przy sortowaniu plików. Pierwsza linia pliku zawiera wersję pliku. Aktualnie jest to ciąg znaków v1. Druga linia zawiera uid sesji, z której wiadomość była wysyłana. Trzecia linia zawiera listę odbiorców. Czwarta linia zawiera czas wysłania jako liczbę sekund od 1 stycznia 1970r. Piąta linia zawiera numer sekwencyjny lub dowolny ciąg znaków pozwalający jednoznacznie określić wiadomość. Kolejne linie są treścią wiadomości.