[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] 01/01: Work on the manual.
From: |
Mario Lang |
Subject: |
[elpa] 01/01: Work on the manual. |
Date: |
Thu, 12 Jun 2014 17:03:44 +0000 |
mlang pushed a commit to branch externals/chess
in repository elpa.
commit c7e551d9a9bc0ff29068ae8953c1e50bd39e831b
Author: Mario Lang <address@hidden>
Date: Thu Jun 12 08:24:08 2014 +0200
Work on the manual.
---
chess.info | 93 ++++++++++++++++++++++++++++++++++++-----------------
doc/chess.texi | 98 ++++++++++++++++++++++++++++++++------------------------
2 files changed, 119 insertions(+), 72 deletions(-)
diff --git a/chess.info b/chess.info
index 5075235..e29a790 100644
--- a/chess.info
+++ b/chess.info
@@ -1450,6 +1450,9 @@ customisable ASCII board diagram display.
-- User Option: chess-plain-spacing
Number of spaces between files.
+ To customize options of ‘chess-plain’, use ‘M-x customize-group <RET>
+chess-plain <RET>’.
+
File: chess.info, Node: ICS1 style ASCII displays, Next: Graphical displays,
Prev: Plain ASCII diagram displays, Up: Chessboard displays
@@ -1482,6 +1485,9 @@ File: chess.info, Node: ICS1 style ASCII displays,
Next: Graphical displays,
-- User Option: chess-ics1-separate-frame
If non-nil, display the chessboard in its own frame.
+ To customize options of ‘chess-ics1’, use ‘M-x customize-group <RET>
+chess-ics1 <RET>’.
+
File: chess.info, Node: Graphical displays, Prev: ICS1 style ASCII displays,
Up: Chessboard displays
@@ -1500,6 +1506,12 @@ create a visually appealing chessboard in a buffer.
The only image format currently supported is XPM.
+ -- User Option: chess-images-separate-frame
+ If non-nil, display the chessboard in its own frame.
+
+ For all customization options of ‘chess-images’, use ‘M-x
+customize-group <RET> chess-images <RET>’.
+
File: chess.info, Node: Engines, Next: Chess Session, Prev: Chessboard
displays, Up: Top
@@ -1647,13 +1659,13 @@ File: chess.info, Node: GNU Chess, Next: Phalanx,
Prev: Glaurung, Up: Engine
4.6 GNU Chess
=============
-"GNU Chess" is free software, licensed under the terms of the GNU
-General Public License version 3 or any later version, and is maintained
-by collaborating developers. As one of the earliest computer chess
+"GNU Chess" (http://gnu.org/software/chess/) is free software, licensed
+under the terms of the GNU General Public License, and is maintained by
+collaborating developers. As one of the earliest computer chess
programs with full source code available, it’s one of the oldest for
Unix-based systems and has since been ported to many other platforms.
- If the ‘gnuChess’ program is installed and can be found in the
+ If the ‘gnuchess’ program is installed and can be found in the
program search path (‘exec-path’), the ‘chess-gnuchess’ engine module
will automatically detect it.
@@ -1661,7 +1673,7 @@ will automatically detect it.
‘chess-gnuchess-path’ can be set to point to the executable.
If you have multiple engines installed you can explicitly select to
-play against GNU Chess by invoking .
+play against GNU Chess by invoking ‘C-u M-x chess <RET> gnuchess <RET>’.
File: chess.info, Node: Phalanx, Next: Sjeng, Prev: GNU Chess, Up: Engines
@@ -1754,6 +1766,16 @@ used to keep track of the currently active game.
later described in this manual make use of this, *Note Internet Chess
Servers::.
+ To interactively start a chess session, invoke ‘M-x chess <RET>’.
+This uses ‘chess-default-display’ to determine the chessboard display to
+use, and ‘chess-default-engine’ to determine an opponent.
+
+ If you want to play against a specific engine, provide a prefix
+argument as in ‘C-u M-x chess <RET>’, which will prompt for an engine
+module. The module name has the common prefix ‘chess-’ stripped. So
+you enter ‘gnuchess’ to indicate you’d like to play against the
+‘chess-gnuchess’ module.
+
File: chess.info, Node: Internet Chess Servers, Next: Concept Index, Prev:
Chess Session, Up: Top
@@ -2151,6 +2173,8 @@ Function and Variable Index
* chess-database-query: Querying Databases. (line 12)
* chess-database-read: Querying Databases. (line 9)
* chess-database-read-only-p: Modifying Databases. (line 6)
+* chess-default-display: Chess Session. (line 31)
+* chess-default-engine: Chess Session. (line 31)
* chess-default-modules: ECO Classification. (line 6)
* chess-direction-east: Position coordinates.
(line 37)
@@ -2254,6 +2278,7 @@ Function and Variable Index
* chess-ics1-separate-frame: ICS1 style ASCII displays.
(line 29)
* chess-images-directory: Graphical displays. (line 9)
+* chess-images-separate-frame: Graphical displays. (line 18)
* chess-index-file: Position coordinates.
(line 13)
* chess-index-rank: Position coordinates.
@@ -2429,6 +2454,7 @@ Key Index
* C-M-l: Chess ICS Mode. (line 62)
* C-r: Basic operations. (line 13)
* C-s: Basic operations. (line 17)
+* C-u M-x chess RET: Chess Session. (line 35)
* C-u M-x chess RET ai RET: AI. (line 10)
* C-u M-x chess RET crafty RET: Crafty. (line 18)
* C-u M-x chess RET fruit RET: Fruit. (line 21)
@@ -2462,6 +2488,13 @@ Key Index
* M-p: ICS Command Ring. (line 6)
* M-r: ICS Command Ring. (line 14)
* M-w: Basic operations. (line 38)
+* M-x chess RET: Chess Session. (line 31)
+* M-x customize-group RET chess-ics1 RET: ICS1 style ASCII displays.
+ (line 32)
+* M-x customize-group RET chess-images RET: Graphical displays.
+ (line 21)
+* M-x customize-group RET chess-plain RET: Plain ASCII diagram displays.
+ (line 51)
* N: Entering moves with algebraic
notation.
(line 6)
* Q: Entering moves with algebraic
notation.
@@ -2534,31 +2567,31 @@ Node: Selecting pieces with the keyboard50049
Node: Selecting pieces with the mouse50641
Node: Entering moves with algebraic notation51207
Node: Plain ASCII diagram displays52225
-Node: ICS1 style ASCII displays54008
-Node: Graphical displays55260
-Node: Engines55894
-Node: Common functions56410
-Node: AI57458
-Node: Crafty58437
-Node: Fruit59224
-Node: Glaurung60120
-Node: GNU Chess60760
-Node: Phalanx61643
-Node: Sjeng62275
-Node: Stockfish63014
-Node: Chess Session63829
-Node: Internet Chess Servers65068
-Node: Connecting to a server66225
-Node: Chess ICS Mode66781
-Node: Command History70294
-Node: ICS Command Ring70915
-Node: ICS History Copying74128
-Node: Seeking an opponent for a new game75646
-Node: The sought game display76295
-Node: Watching other games77323
-Node: Concept Index78805
-Node: Function and Variable Index80664
-Node: Key Index97689
+Node: ICS1 style ASCII displays54110
+Node: Graphical displays55462
+Node: Engines56313
+Node: Common functions56829
+Node: AI57877
+Node: Crafty58856
+Node: Fruit59643
+Node: Glaurung60539
+Node: GNU Chess61179
+Node: Phalanx62104
+Node: Sjeng62736
+Node: Stockfish63475
+Node: Chess Session64290
+Node: Internet Chess Servers66057
+Node: Connecting to a server67214
+Node: Chess ICS Mode67770
+Node: Command History71283
+Node: ICS Command Ring71904
+Node: ICS History Copying75117
+Node: Seeking an opponent for a new game76635
+Node: The sought game display77284
+Node: Watching other games78312
+Node: Concept Index79794
+Node: Function and Variable Index81653
+Node: Key Index98897
End Tag Table
diff --git a/doc/chess.texi b/doc/chess.texi
index 1ac323a..590f678 100644
--- a/doc/chess.texi
+++ b/doc/chess.texi
@@ -15,7 +15,7 @@
Copyright @copyright{} 2001, 2002, 2014 Free Software Foundation, @abbr{Inc.}
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.1 or
+under the terms of the @acronym{GNU} Free Documentation License, Version 1.1 or
any later version published by the Free Software Foundation.
@end ifinfo
@@ -45,7 +45,7 @@ any later version published by the Free Software Foundation.
Copyright @copyright{} 2001, 2002, 2014 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.1 or
+under the terms of the @acronym{GNU} Free Documentation License, Version 1.1 or
any later version published by the Free Software Foundation.
@end titlepage
@@ -464,9 +464,9 @@ FEN strings. If you are unsure, use the more verbose form:
@address@hidden, Extended Position Description}} is a standard for describing
chess
positions along with an extended set of structured attribute values using the
-ASCII character set. It is intended for data and command interchange among
-chess-playing programs. It is also intended for the representation of portable
-opening library repositories.
address@hidden character set. It is intended for data and command interchange
+among chess-playing programs. It is also intended for the representation of
+portable opening library repositories.
A single EPD uses one text line of variable length composed of four data field
followed by zero or more operations. The four fields of the @acronym{EPD}
specification
@@ -513,7 +513,7 @@ Some opcodes that allow for more than one operand may have
special ordering
requirements for the operands. For example, the "pv" (predicted variation)
opcode requires its operands (moves) to appear in the order in which they would
be played. All other opcodes that allow for more than one operand should have
-operands appearing in ASCII order. An example of the latter set is the "bm"
+operands appearing in @acronym{ASCII} order. An example of the latter set is
the "bm"
(best move[s]) opcode; its operands are moves that are all immediately playable
from the current position.
@@ -544,14 +544,14 @@ byte) representation is suggested.
The opcode "am" indicates a set of zero or more moves, all immediately playable
from the current position, that are to be avoided in the opinion of the EPD
-writer. Each operand is a SAN move; they appear in ASCII order.
+writer. Each operand is a @acronym{SAN} move; they appear in @acronym{ASCII}
order.
@node Opcode "bm" best move(s), , Opcode "am" avoid move(s), EPD notation
@subsubsection Opcode "bm" best move(s)
The opcode "bm" indicates a set of zero or more moves, all immediately playable
from the current position, that are judged to the best available by the EPD
-writer. Each operand is a SAN move; they appear in ASCII order.
+writer. Each operand is a @acronym{SAN} move; they appear in @acronym{ASCII}
order.
@node Plies, Variations, Positions, The chess.el library
@section Plies
@@ -713,8 +713,8 @@ represented interesting tangents during a game---but not
actually
played---as envisioned by the player, an annotator, or someone studying
the game.
-Variations may be represented in ASCII by stating the FEN string for
-starting position, followed by the list of plies that follow that
+Variations may be represented in @acronym{ASCII} by stating the @acronym{FEN}
+string for starting position, followed by the list of plies that follow that
position. They are difficult to represent graphically, except for
showing each position in turn with a slight pause between---or by
allowing the user to navigate each of the subsequent positions in turn.
@@ -814,56 +814,41 @@ sub-variations of interest to those studying the game
afterwards.
Where TAGS is an alist that associates arbitrary English tag names to
their values.
-A game may be represented in ASCII using @acronym{PGN, Portable Game Notation}.
+A game may be represented in @acronym{ASCII} using @acronym{PGN,
+Portable Game Notation}.
Representing them graphically or verbally is similar to what is done
for variations.
address@hidden lispfun chess-game-add-hook
-
@defun chess-game-add-hook game function &optional data prepend
Add to @var{game} an event hook @var{function}.
@end defun
address@hidden lispfun chess-game-add-ply
-
@defun chess-game-add-ply game ply
Add @var{ply} to the main variation of @var{game}.
@end defun
address@hidden lispfun chess-game-hooks
-
@defun chess-game-hooks game
Return the event hooks associated with @var{game}.
@end defun
address@hidden lispfun chess-game-plies
-
@defun chess-game-plies game
Return the main variation of @var{game} as a list of plies.
@end defun
address@hidden lispfun chess-game-remove-hook
-
@defun chess-game-remove-hook game function &optional data
Remove from @var{game} all event hooks that match @var{function}.
If @var{data} is specified, only remove those hooks whose associated data
matches.
@end defun
address@hidden lispfun chess-game-run-hooks
-
@defun chess-game-run-hooks game &rest args
Run the event hooks of @var{game} and pass @var{args}.
@end defun
address@hidden lispfun chess-game-set-hooks
-
@defun chess-game-set-hooks game hooks
Set the event hooks associated with @var{game}.
@end defun
address@hidden lispfun chess-game-set-plies
-
@defun chess-game-set-plies game plies
Set the list of plies which represents the main variation of @var{game}.
@end defun
@@ -1697,6 +1682,10 @@ modify `chess-plain-piece-chars' to avoid real
confusion.)
Number of spaces between files.
@end defopt
address@hidden M-x customize-group RET chess-plain RET
+To customize options of @code{chess-plain}, use
address@hidden customize-group @key{RET} chess-plain @key{RET}}.
+
@node ICS1 style ASCII displays, Graphical displays, Plain ASCII diagram
displays, Chessboard displays
@section ICS1 style ASCII displays
@@ -1729,6 +1718,10 @@ This is how the starting position looks with this
chessboard display:
If non-nil, display the chessboard in its own frame.
@end defopt
address@hidden M-x customize-group RET chess-ics1 RET
+To customize options of @code{chess-ics1}, use
address@hidden customize-group @key{RET} chess-ics1 @key{RET}}.
+
@node Graphical displays, , ICS1 style ASCII displays, Chessboard displays
@section Graphical displays
@@ -1745,6 +1738,14 @@ and @var{piece} is one of rook, knight, bishop, queen,
king or pawn.
The only image format currently supported is @acronym{XPM}.
@end defopt
address@hidden chess-images-separate-frame
+If non-nil, display the chessboard in its own frame.
address@hidden defopt
+
address@hidden M-x customize-group RET chess-images RET
+For all customization options of @code{chess-images}, use
address@hidden customize-group @key{RET} chess-images @key{RET}}.
+
@node Engines, Chess Session, Chessboard displays, Top
@chapter Engines
@@ -1768,18 +1769,14 @@ for playing with opponent over different types of
transports.
@node Common functions, AI, Engines, Engines
@section Common functions
address@hidden lispfun chess-engine-create
-
@defun chess-engine-create module game &optional response-handler &rest
handler-ctor-args
Create a new chess engine @var{module} (a symbol) associated with @var{game}.
Optionally supply a new @var{response-handler}.
@end defun
address@hidden lispfun chess-engine-set-option
-
@defun chess-engine-set-option engine option value
-Set @var{engine} @var{option} to @var{value} by invoking its handler with the
'set-option
-event.
+Set @var{engine} @var{option} to @var{value} by invoking its handler with
+the 'set-option event.
@end defun
@c lispfun chess-engine-destroy
@@ -1907,23 +1904,25 @@ to play against Glaurung by invoking @kbd{C-u M-x chess
@key{RET} glaurung @key{
@node GNU Chess, Phalanx, Glaurung, Engines
@section GNU Chess
address@hidden Chess} is free software, licensed under the terms of the
-GNU General Public License version 3 or any later version,
-and is maintained by collaborating developers. As one of the earliest
-computer chess programs with full source code available, it's one of the oldest
-for Unix-based systems and has since been ported to many other platforms.
address@hidden://gnu.org/software/chess/, @address@hidden Chess}} is free
+software, licensed under the terms of the @acronym{GNU} General Public
License, and is
+maintained by collaborating developers.
+As one of the earliest computer chess programs with full source code available,
+it's one of the oldest for Unix-based systems and has since been ported to many
+other platforms.
-If the @command{gnuChess} program is installed and can be found in the
+If the @command{gnuchess} program is installed and can be found in the
program search path (@code{exec-path}),
the @code{chess-gnuchess} engine module will automatically detect it.
@vindex chess-gnuchess-path
-If GNU Chess is installed in a non-standard location, variable
+If @acronym{GNU} Chess is installed in a non-standard location, variable
@code{chess-gnuchess-path} can be set to point to the executable.
@kindex C-u M-x chess RET gnuchess RET
If you have multiple engines installed you can explicitly select
-to play against GNU Chess by invoking .
+to play against @acronym{GNU} Chess by invoking
address@hidden M-x chess @key{RET} gnuchess @key{RET}}.
@node Phalanx, Sjeng, GNU Chess, Engines
@section Phalanx
@@ -1968,7 +1967,7 @@ to play against Sjeng by invoking @kbd{C-u M-x chess
@key{RET} sjeng @key{RET}}.
chess engines in the world, appearing near or at the top of most chess engine
rating lists.
Stockfish is also free software, licensed under the terms of the
-GNU General Public License.
address@hidden General Public License.
If the @command{stockfish} program is installed and can be found in the
program search path (@code{exec-path}),
@@ -2011,6 +2010,21 @@ You can have several active chess sessions.
In fact, some features later described in this manual make use
of this, @xref{Internet Chess Servers}.
address@hidden M-x chess RET
address@hidden chess-default-display
address@hidden chess-default-engine
+To interactively start a chess session, invoke
address@hidden chess @key{RET}}. This uses @code{chess-default-display}
+to determine the chessboard display to use, and
address@hidden to determine an opponent.
+
address@hidden C-u M-x chess RET
+If you want to play against a specific engine, provide
+a prefix argument as in @kbd{C-u M-x chess @key{RET}}, which will
+prompt for an engine module. The module name has the common
+prefix @samp{chess-} stripped. So you enter @samp{gnuchess}
+to indicate you'd like to play against the @code{chess-gnuchess} module.
+
@node Internet Chess Servers, Concept Index, Chess Session, Top
@chapter Internet Chess Servers