====== System licytacji - narzędzia ====== ===== Opis ===== Zestaw narzędzi ułatwiających opisywanie systemów licytacyjnych dla gry w brydża. ===== Dokumentacja ===== ==== symbole.py ==== === Wstęp === Ten skrypt czyta opis systemu z pliku tekstowego i zapisuje jego przetworzoną wersję w pliku wynikowym w formacie czystego tekstu lub HTML, w kodowaniu [[wp>UTF-8]]. Sposób wywołania programu: python symbole.py plik_wejściowy plik_wynikowy Plik wejściowy powinien istnieć i mieć kodowanie [[wp>UTF-8]]. Format pliku wynikowego jest wybierany na podstawie jego nazwy. Jeśli ma ona rozszerzenie htm lub html (jest postaci: nazwa.htm lub nazwa.html) to zostanie użyty format HTML, w pozostałych przypadkach zostanie użyty czysty format tekstowy. **Uwagi:** * Jeśli plik o nazwie wybranej dla pliku wynikowego istnieje to zostanie bez ostrzeżenia nadpisany. * Nazwy plików wejściowego i wynikowego muszą być różne. * Podanie nazwy pliku wynikowego jest opcjonalne. Jeśli nie zostanie ona podana to zostanie użyta nazwa taka jaką ma plik wejściowy z przedrostkiem "to_print_". === Opis pliku wejściowego === Plik wejściowy powinien być odpowiednio sformatowanym plikiem tekstowym w kodowaniu [[wp>UTF-8]]. Do jego stworzenia potrzebny jest dowolny edytor tekstu potrafiący zapisywać w tym kodowaniu, np. [[http://www.flos-freeware.ch/notepad2.html|notepad2]] dla Windows lub [[http://www.gnome.org/projects/gedit/|gedit]] dla GNU/Linux. == Przykład: == = Fragment systemu licytacji opartego o Wspólny Język = == Otwarcia: == 1t - 11-14PC w składzie równym lub 15,5+PC i 5+t lub 18+PC 1k - 11-18PC 5+k lub 4k-4-4-1 lub 11-15PC 4k-5t == Dalsza licytacja: == === Licytacja po otwarciu 1t: === 1k - 0-6PC lub 15+PC bez starszej czwórki i młodszej piątki lub 7-9PC 6+t/k 1c/p - 11,5-15,5PC 3-4c/p lub 15,5-17PC 4c/p i 5+t lub 18PC-acol 5c/p 2ba - 17+PC 3ba - 15-16PC 1ba - 19-22PC, skład równy, *mogą być starsze 4ki i brzydkie 6k* 1c/p - 7+PC, 4+c/p 1ba - 7-11PC, bez 4+C/P (ktr) - 13+PC, 4-3 w starych pas - negat, 3+t rktr - 10+PC === Licytacja po otwarciu 1k: === 1c/p - 7+PC, 4c/p 1ba - //dopracować znaczenie 2t - 5-4 na młodych //nie wiadomo gdzie 5// 11,5-15PC Bardziej rozbudowane przykłady znajdują się na [[bridge:system|stronie z opisami systemów]]. == Objaśnienia: == Linie otoczone symbolami %%=%%, %%==%%, %%===%%, itd. stanowią nagłówki (kolejno: rozdziałów, podrozdziałów, itd.). Używane są polskojęzyczne skróty dla kolorów: p dla ♠, c dla ♥, k dla ♦, t dla ♣. Każda odzywka opisana jest w 1 linii. Wcięcia (spacje lub tabulatory na początku) poszczególnych linii decydują o strukturze dokumentu. W przykładowym dokumencie przed bezpośrednimi odpowiedziami w sekwencji 1t-1k stoi jedna spacja (można też użyć tabulatora), zaś linie opisujące znaczenia odzywek po (dłuższej) sekwencji 1t-1k-1c/p rozpoczynają się dwoma spacjami. Odzywki stanowiące interwencje przeciwników umieszczone są w nawiasach (...). Tekst zawarty pomiędzy dwoma %%*%% będzie wyróżniony. Tekst umieszczony za znakami %%//%% stanowi komentarz. Komentarz kończy się wraz z kolejnym wystąpieniem znaków %%//%% lub wraz z końcem linii. === Opis pliku wynikowego === Plik wynikowy zawiera tą samą treść co plik wejściowy, jest jednak inaczej sformatowany. Nazwy kolorów (p, c, k, t) są (w odpowiednich miejscach) zamienione na odpowiednie symbole kolorów (♠, ♥, ♦, ♣). W przypadku użycia formatu HTML zostaną użyte odpowiednie style dla nagłówków, wyróżnień (czcionka pogrubiona) i komentarzy (pochylona niebieska czcionka). Dodatkowo w tym formacie możliwe jest ukrywanie i ujawnianie znaczeń dalszych odzywek (odpowiedzi, itp.). **Uwaga:** Do poprawnego wyświetlania pliku w tym HTML niezbędne są wszystkie pliki o rozszerzeniach .css, .gif i .js zawarte w archiwum z programem. ===== Pobieranie ===== v0.1 (2 V 2008): {{:project:bridge_system:bridgesystemtools01.zip|}} Archiwum, oprócz mojego (symbole.py) objętego licencją GPL, zawiera także skrypt [[http://www.javascripttoolbox.com/lib/mktree/|mktree]] autorstwa [[http://www.mattkruse.com/|Matta Kruse]]. Do działania wymagany jest interpreter języka [[http://python.org/|Python]]. {{tag>project pl python game logic bridge bridge_system}}