Jak mogę zdobyć kolekcję gier szachowych z ofiarą „greckiego prezentu”?

11

Chciałbym stworzyć kolekcję gier w szachy z ofiarą „greckiego daru” . Na stronie chessgames.com jest niewiele gier z adnotacją o tym poświęceniu. Mogłem znaleźć blogi z indywidualnymi przykładami gier z tego rodzaju poświęceniem (przykład: 1 , 2 , 3 , 4 , 5 i 6 ); jednak nie są w formacie łatwym do pobrania.

Czy istnieje kolekcja gier z tą ofiarą? Jeśli nie, to czy mogę w jakiś sposób wyszukać i uzyskać kolekcje gier z tą ofiarą, korzystając z szachowej bazy danych, takiej jak SCID?

Glorfindel
źródło

Odpowiedzi:

9

Coś, co może tu pomóc, to język zapytań szachowych . Podobnie jak SQL dla relacyjnych baz danych, CQL może wyszukiwać pozycje / gry spełniające określone kryteria w bazie danych szachów.

Muszę powiedzieć, że sam nigdy go nie użyłem, ale wydaje się, że jest w stanie zadziwić rzeczy, o wiele bardziej skomplikowane niż to, czego szukasz. Oto stary artykuł pokazujący kilka pięknych badań, które Tim Krabbé był w stanie znaleźć za pomocą CQL.

Glorfindel
źródło
2

Dziękuję @Glorfindel. Nie wiedziałem o Chess Querry Language. To rzeczywiście wspaniałe narzędzie. Przeglądając podstawową składnię CQL z ich strony internetowej, wymyśliłem następujący skrypt i metodę, która może wybrać „greckie poświęcenie daru” przez czerń lub biel z dowolnej pgnbazy danych. Podam przykład poniżej przy użyciu systemu UNIX.

Najpierw pobierz interesującą Cię bazę danych pgn ( example.pgn).

Po drugie, za pomocą edytora tekstu zapisz następujący skrypt jako plik tekstowy greek_gift.cqlz rozszerzeniem .cql.

cql (input example.pgn)
flipcolor flip 
next (Bh7
      kh7)

Zachowaj cqlprogram wykonywalny (pobrany ze strony internetowej CQL ), plik cql greek_gift.cqli wejściowy plik pgn example.pgnw tym samym folderze.

Otwórz terminal i przejdź do folderu.

Wykonaj polecenie ./cql greek_gift.cql.

Nowy plik pgn greek_gift-out.pgnzostanie wygenerowany w tym samym katalogu. Zauważ, że będzie to zawierać gry z poświęceniem Bh7 przez kolor biały, jak również poświęceniem Bh2 przez kolor czarny, a następnie pojmanie przez króla przeciwnika.

Nie jestem programistą; edytuj skrypt, jeśli ktoś myśli, że wystąpił błąd.


źródło