热门问题
时间线
聊天
视角

可移植式棋局记号法

国际象棋记谱文件格式 来自维基百科,自由的百科全书

Remove ads

可移植式棋局记号法(英语:Portable Game Notation,PGN),是一种用于纪录国际象棋棋局的纯文字档案格式。PGN适合人类阅读,多数的国际象棋软件都有支援。

事实速览 扩展名, 互联网媒体类型 ...

历史

Steven J. Edwards在1993年左右发明了PGN格式,PGN后来在Usenet新闻组“rec.games.chess”中受到详细制定及推广。[1][2]

使用

PGN的副档名是.pgn。PGN的规范风格是为了“使人类能简易地阅读和书写,也让电脑能简易地解析和产生”,PGN中的棋谱代数记谱法表示。

PGN对程式规范了输入和输出两种格式。输入格式被刻意规定得比较宽松,方便人类手动输入,支援PGN的程式需具备一些容错能力;输出格式被定义得相对严格,程式需美化输出文字以便阅读。对于相同的输入,不同程式所输出的PGN应完全相同。

PGN文件以数个“标签对”(包含标签名称和对应参数)开头,之后是棋局的棋谱区块“movetext”(包含代数棋谱和可选填的注解)。

标签对

一个标签对(tag pair)以[开头,之后是标签名称,然后是以双引号")框起的对应参数,最后以]结尾。若要在参数中使用引号和反斜线,需在前面加上反斜线作为跳脱字元,此跳脱字元不作其他的控制用途。

七个必填的标签对

为了归档保存,一个PGN文件必须要有七种标签对,此七种标签对被人合称为“Seven Tag Roster”。在输出格式中,这七个标签对需摆在所有的标签对前面,并遵照以下顺序出现:

更多信息 标签, 参数 ...
Remove ads

选填的标签对

以下为一些较常见的可选标签对:

更多信息 标签, 参数 ...
Remove ads

棋谱区块

棋谱区块(movetext)纪录的是棋手对弈的过程。其包括步数编号、行棋方指示(以一个句点“.”表示此步为白方行棋;三个句点表示黑方),以及用代数记谱法描述的棋子移动。

代数棋谱

注解

在一行文字的前方加上分号;),可使其成为单行注解;跨行的注解需以花括号{})包围两侧。

范例

以下PGN档案记录着在南斯拉夫举行的1992年比赛英语Fischer–Spassky (1992 match)的第29场棋局。由鲍比·菲舍尔执白,对决鲍里斯·斯帕斯基

[Event "F/S Return Match"]
[Site "Belgrade, Serbia JUG"]
[Date "1992.11.04"]
[Round "29"]
[White "Fischer, Robert J."]
[Black "Spassky, Boris V."]
[Result "1/2-1/2"]

1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 {This opening is called the Ruy Lopez.}
4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8. c3 O-O 9. h3 Nb8 10. d4 Nbd7
11. c4 c6 12. cxb5 axb5 13. Nc3 Bb7 14. Bg5 b4 15. Nb1 h6 16. Bh4 c5 17. dxe5
Nxe4 18. Bxe7 Qxe7 19. exd6 Qf6 20. Nbd2 Nxd6 21. Nc4 Nxc4 22. Bxc4 Nb6
23. Ne5 Rae8 24. Bxf7+ Rxf7 25. Nxf7 Rxe1+ 26. Qxe1 Kxf7 27. Qe3 Qg5 28. Qxg5
hxg5 29. b3 Ke6 30. a3 Kd6 31. axb4 cxb4 32. Ra5 Nd5 33. f3 Bc8 34. Kf2 Bf5
35. Ra7 g6 36. Ra6+ Kc5 37. Ke1 Nf4 38. g3 Nxh3 39. Kd2 Kb5 40. Rd6 Kc5 41. Ra6
Nf2 42. g4 Bd3 43. Re6 1/2-1/2

应用于国际象棋变体

许多国际象棋变体都能以PGN格式记录,但是要把每种棋子的简称都限制在一个字内。这种PGN中通常会包含一个变体(variant)标签,用来描述变体的名称。FEN标签可用于设定各棋子的起始位置,有些变体如菲舍尔任意制象棋会有特别的起始位置。

参见

参考文献

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads