PGN Manager is a Win32 console application which can be used for the manipulation and administration of PGN databases. The software supports the following features:
PGN Manager is provided as free software to any one who would wish to use it for managing PGN databases. The software is provided as a ZIP file must be unzipped with the -d option to ensure that the directory structure stored in the file is preserved.
You may download PGN Manager from the PGN Manager distribution site.
Simply type 'pgnman' at the command line, and you will receive a list of available options. To see more details on how a particular command works, enter 'pgnman' followed by the command. For example, 'pgnman -f' will list the syntax and usage information for the JOIN command.
command = -j Join several databases into a PGN file command = -jr Join several databases into a PGN file with dir recursion i.e., pgnman -j[r] in_dir_path out_file_path [filter_criteria] NOTES: ------ 1) Joining of all PGN files contained in in_dir_path will take place, along with PGN files located in sub-directories of in_dir_path. 2) ZIP files contained in in_dir_path will be temporarily un-zipped, and any PGN files resulting from this operation will be processed and deleted. This requires PKUNZIP by PKWARE. 3) Optional filter_criteria may be applied during the JOIN process to include only certain games, say by ECO, or by player name. See FILTER command for additional details. 4) Specifying '.' for in_dir_path will default to the current directory.
command = -b Break up a PGN database into smaller databases of N games (num_games). i.e., pgnman -b in_file_path out_dir_path num_games NOTES: ------ 1) The program will create PGN files of num_games (or less) into the user specified out_dir_path. 2) Specifying '.' for out_dir_path will default to the current directory.
command = -f Filter down a PGN database file i.e., pgnman -f in_file_path out_file_path filter_criteria Possible Criteria include: ECO=eco_num1+eco_num2+...+eco_numN, i.e., ECO=E60+A20 to search for various ECO codes ECO=eco_num1-eco_num2, i.e., ECO=A21-A23 to search for a range of ECO codes player=player1+player2+...+playerN, i.e., player=Kasparov+Kramnik for an OR search player=player1*player2, i.e., player=Kasparov*Kramnik for an AND search moves=pgn_file position=pgn_file NOTES: ------ 1) When you use the AND for a player search only two players may specified at a time. 2) Searches when with PGI file are much faster than those performed against the original PGN file. 3) Searches by position will use the end position in the provided pgn_file against all qualifying positions in each game of in_file_path. 4) Mixing filter types (ECO, player, etc) is not supported at this time.
command = -i Generate an indexed PGI file from a PGN database. i.e., pgnman -i in_file_path [sorted_out_path] NOTES: ------ 1) PGI files are primarily used for fast look-up searches during a. FILTER command operation. 2) PGI files are sorted by ECO, then Date, then White player, then Black player, then Event, then Round, and then Site. 3) Since PGI files are sorted, they can be used for faster searches of games, and for determining duplicate entries (adjacent entries which are equal). 4) An optional sorted_out_path may be provided, in which case a sorted. and reduced (see REDUCE command) PGN file will be created after the index (PGI) file has been generated. 5) PGI generation for PGN databases with more than 32,000 games may take a very long time depending on the machine speed.
command = -r Reduce by Eliminating duplicates in a PGN file i.e., pgnman -r in_file_path out_file_path NOTES: ------ 1) This process requires a PGN index (PGI) file. If one is not present, the software will create it (see also the INDEX command). 2) Duplicates are determined by comparison of the PGN game entry header. If duplicate PGN entries differ in their header data, they will not be flagged as duplicates.
command = -e[a] Set ECO codes for games in PGN database i.e., pgnman -e in_file_path out_file_path eco_db_file NOTES: ------ 1) Any entries without ECO classification in in_file_path will. compared against eco_db_file to try to find an ECO classification. 2) If -ea is specified, all games in the input PGN database will be classified. 3) The user may specify any ECO database in PGN format. However, the larger the database, the slower the classification process will be.
command = -l Generate a listing of games from a PGN database. i.e., pgnman -l in_file_path NOTES: ------ 1) If a PGI file exists for the PGN database, the listing will be done. according to the contents and order in the index file.
command = -s Get Win/Loss/Draw Statistics in PGN database i.e., pgnman -s in_file_path
To report bugs, send email to eschess@aol.com.