// Package pgn implments an importer and exporter for the Portable Game Notation(PGN). // It provides an interface for efficiently reading and writing PGN files using buffered IO. // // PGN is the defacto standard format for storing and exchanging chess games. It is a cleartext // format that is both human- and machine-readable. Most chess libraries and frameworks have some // kind of built-in support for reading and/or writing PGN files. // // Spec: https://www.chessclub.com/help/pgn-spec // // Usage: // // f, _ := os.Open("file.pgn") // parser := pgn.NewParser(bufio.NewReader(f)) // for { // game, err := parser.Next() // if err != nil { // log.Fatal(err) // } // fmt.Println(game) // if game == nil { // return // } // } package pgn