emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] 01/01: * doc/chess.texi (Position coordinates): Document `chess-n


From: Mario Lang
Subject: [elpa] 01/01: * doc/chess.texi (Position coordinates): Document `chess-next-index' and related constants. (The sought game display): Update as the mentioned mode name has changed. * chess-ics.el (chess-ics): Add custom-manual link. * chess-plain.el (chess-plain): Add custom-manual link.
Date: Wed, 04 Jun 2014 22:27:04 +0000

mlang pushed a commit to branch externals/chess
in repository elpa.

commit c8a2a9cfab5d866722523a9810f72393f0866549
Author: Mario Lang <address@hidden>
Date:   Thu Jun 5 00:23:14 2014 +0200

    * doc/chess.texi (Position coordinates): Document `chess-next-index'
    and related constants.
    (The sought game display): Update as the mentioned mode name has changed.
    * chess-ics.el (chess-ics): Add custom-manual link.
    * chess-plain.el (chess-plain): Add custom-manual link.
---
 ChangeLog      |   12 ++++
 chess-ics.el   |    3 +-
 chess-plain.el |    3 +-
 chess.info     |  200 +++++++++++++++++++++++++++++++++++--------------------
 doc/chess.texi |   75 +++++++++++++++++----
 5 files changed, 204 insertions(+), 89 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 14c3abc..91b0ff8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2014-06-05  Mario Lang  <address@hidden>
+
+       * doc/chess.texi (Position coordinates): Document `chess-next-index'
+       and related constants.
+       (The sought game display): Update as the mentioned mode name has 
changed.
+
+2014-06-04  Mario Lang  <address@hidden>
+
+       * chess-ics.el (chess-ics): Add custom-manual link.
+
+       * chess-plain.el (chess-plain): Add custom-manual link.
+
 2005-06-27  John Wiegley  <address@hidden>
 
        * chess-ics.el (chess-ics-sought-add): Added this routine to
diff --git a/chess-ics.el b/chess-ics.el
index f260e06..0e44187 100644
--- a/chess-ics.el
+++ b/chess-ics.el
@@ -44,7 +44,8 @@
 
 (defgroup chess-ics nil
   "Engine for interacting with Internet Chess Servers."
-  :group 'chess-engine)
+  :group 'chess
+  :link '(custom-manual "(chess)Internet Chess Servers"))
 
 (defcustom chess-ics-server-list '(("freechess.org" 5000)
                                   ("chess.unix-ag.uni-kl.de" 5000)
diff --git a/chess-plain.el b/chess-plain.el
index 7dd66f1..d4cab93 100644
--- a/chess-plain.el
+++ b/chess-plain.el
@@ -35,7 +35,8 @@
 
 (defgroup chess-plain nil
   "A minimal, customizable ASCII display."
-  :group 'chess-display)
+  :group 'chess-display
+  :link '(custom-manual "(chess)Plain ASCII diagram displays"))
 
 (defcustom chess-plain-border-style [?+ ?- ?+ ?| ?| ?+ ?- ?+]
   "If non-nil, a vector describing the border characters."
diff --git a/chess.info b/chess.info
index aa0f689..9fb7196 100644
--- a/chess.info
+++ b/chess.info
@@ -133,11 +133,53 @@ two conversion functions:
  -- Function: chess-index-to-coord index
      Convert the chess position INDEX into a coord string.
 
-   There is also one helper function for iterative changes of an index:
+   For fast manipulation of chess position indices, the following
+constants and functions are provided:
 
- -- Function: chess-incr-index index rank-move file-move
-     Create a new INDEX from an old one, by adding RANK-MOVE and
-     FILE-MOVE.
+   For queens and rooks:
+
+ -- Constant: chess-direction-north
+     Signify one step north, as seen from the perspective of the white
+     player.
+
+ -- Constant: chess-direction-east
+     Signify one step east, as seen from the perspective of the white
+     player.
+
+ -- Constant: chess-direction-south
+     Signify one step south, as seen from the perspective of the white
+     player.
+
+ -- Constant: chess-direction-west
+     Signify one step west, as seen from the perspective of the white
+     player.
+
+   For queens and bishops:
+
+ -- Constant: chess-direction-northeast
+     Signify one step northeast, as seen from the perspective of the
+     white player.
+
+ -- Constant: chess-direction-southeast
+     Signify one step southeast, as seen from the perspective of the
+     white player.
+
+ -- Constant: chess-direction-southwest
+     Signify one step southwest, as seen from the perspective of the
+     white player.
+
+ -- Constant: chess-direction-northwest
+     Signify one step northwest, as seen from the perspective of the
+     white player.
+
+ -- Function: chess-next-index index direction
+     Create a new INDEX from an old one, by advancing it into DIRECTION.
+     If the resulting index is not valid, nil is returned.
+
+   Due to the underlying technique used to efficiently detect off-board
+squares, a direction specifier should at most do two steps in any
+direction.  Directions can be combined, so that '(*
+chess-direction-north 2)' will give a typical initial white pawn push.
 
 
 File: chess.info,  Node: Position details,  Next: Annotations,  Prev: Position 
coordinates,  Up: Positions
@@ -1235,9 +1277,9 @@ File: chess.info,  Node: Internet Chess Servers,  Next: 
Concept Index,  Prev: En
 Based on the services provided above, there is also a speical mode for
 communication with Internet Chess Servers.
 
-   ON an Internet Chess Server you can seek to play against other human
+   On an Internet Chess Server you can seek to play against other human
 or computer players, observe other games being player or examined, play
-tournaments, chat with fellow chess players, participate in a team game,
+tournaments, chat with fellow chess players, participate in team games,
 or do various other interesting chess related things.
 
    A default set of well known servers is defined in the following
@@ -1267,6 +1309,11 @@ To open a new connection to an Internet Chess Server, 
use:
           password-or-filename helper &rest helper-args
      Connect to an Internet Chess Server.
 
+   Internet Chess Server support is a derivative of Comint mode, a
+general-purpose mode for communicating with interactive subprocesses.  A
+history of previously entered commands at the ICS prompt is available
+with 'M-p' and 'M-n'.  See COMINT-MODE-MAP.
+
 
 File: chess.info,  Node: Seeking an opponent for a new game,  Next: The sought 
game display,  Prev: Connecting to a server,  Up: Internet Chess Servers
 
@@ -1285,22 +1332,21 @@ File: chess.info,  Node: The sought game display,  
Prev: Seeking an opponent for
 ===========================
 
 There is a special mode for displaying games sought by other users on an
-Internet Chess Server.  Provided you didn't turn off seek ads manually
-(for instance by setting the seek variable to 0 (off) on the ICS server
-by issueing "set seek 0"), the first seek advertisment automatically
-pops up a new window which is in 'chess-ics-sought-mode'.
+Internet Chess Server.  Provided you didn't turn off seek advertisments
+manually (for instance by setting the seek variable to 0 (off) on the
+ICS server by issueing "set seek 0"), the first seek advertisment
+automatically pops up a new window which is in 'chess-ics-ads-mode', a
+derivative of 'tabulated-list-mode'.
 
- -- Function: chess-ics-sought-mode
+ -- Function: chess-ics-ads-mode
      A mode for displaying ICS game seek advertisments.
 
-     This mode runs the hook 'chess-ics-sought-mode-hook', as the final
+     This mode runs the hook 'chess-ics-ads-mode-hook', as the final
      step during initialization.
 
      key binding -- -----
 
-     RET       chess-ics-sought-accept SPC
-     chess-ics-sought-toggle-sort-direction ?          describe-mode s
-     chess-ics-sought-toggle-sort-state <mouse-2>
+     ?         describe-mode RET       chess-ics-sought-accept <mouse-2>
      chess-ics-sought-accept
 
    In this buffer, use mouse-2 or 'RET' on a line to accept that
@@ -1335,6 +1381,14 @@ 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-direction-east:                  Position coordinates. (line 37)
+* chess-direction-north:                 Position coordinates. (line 33)
+* chess-direction-northeast:             Position coordinates. (line 51)
+* chess-direction-northwest:             Position coordinates. (line 63)
+* chess-direction-south:                 Position coordinates. (line 41)
+* chess-direction-southeast:             Position coordinates. (line 55)
+* chess-direction-southwest:             Position coordinates. (line 59)
+* chess-direction-west:                  Position coordinates. (line 45)
 * chess-display-active-p:                Generic display manipulation 
functions.
                                                                (line 12)
 * chess-display-clear-board:             Generic display manipulation 
functions.
@@ -1395,17 +1449,17 @@ Function and Variable Index
 * chess-game-to-pgn:                     PGN notation.         (line 10)
 * chess-ics:                             Connecting to a server.
                                                                (line  8)
+* chess-ics-ads-mode:                    The sought game display.
+                                                               (line 13)
 * chess-ics-server-list:                 Internet Chess Servers.
                                                                (line 17)
-* chess-ics-sought-mode:                 The sought game display.
-                                                               (line 12)
 * chess-ics1-separate-frame:             ICS1 style ASCII displays.
                                                                (line  6)
-* chess-incr-index:                      Position coordinates. (line 30)
 * chess-index-file:                      Position coordinates. (line 13)
 * chess-index-rank:                      Position coordinates. (line 10)
 * chess-index-to-coord:                  Position coordinates. (line 25)
 * chess-legal-plies:                     Creating plies.       (line 16)
+* chess-next-index:                      Position coordinates. (line 67)
 * chess-pgn-insert-plies:                PGN notation.         (line 15)
 * chess-pgn-to-game:                     PGN notation.         (line  6)
 * chess-pgn-visualize:                   PGN mode.             (line  6)
@@ -1483,60 +1537,60 @@ Node: The chess.el library1291
 Node: Positions1600
 Node: Creating positions2685
 Node: Position coordinates3456
-Node: Position details4599
-Node: Annotations9052
-Node: FEN notation9394
-Node: EPD notation10891
-Node: Operations12400
-Node: Opcode "acd" analysis count depth13374
-Node: Opcode "acn" analysis count nodes13728
-Node: Opcode "acs" analysis count seconds14253
-Node: Opcode "am" avoid move(s)14773
-Node: Opcode "bm" best move(s)15214
-Node: Plies15609
-Node: Creating plies16800
-Node: Ply details17984
-Node: The "next" position18464
-Node: Algebraic notation18726
-Node: Variations20154
-Node: Creating variations21282
-Node: Variation positions21590
-Node: Varation plies22191
-Node: Making a move in a variation22632
-Node: Games23207
-Node: Creating games24893
-Node: Game tags25334
-Node: Game positions25941
-Node: Game plies26522
-Node: Making a move26791
-Node: PGN notation27218
-Node: PGN mode27968
-Node: Collections28229
-Node: Opening Databases29030
-Node: Querying Databases29414
-Node: Modifying Databases30040
-Node: Finalising Databases30312
-Node: Database Modules30487
-Node: chess-file30781
-Node: chess-scid31423
-Node: Modules31660
-Node: Chessboard displays38409
-Node: Generic display manipulation functions39037
-Node: Plain ASCII diagram displays41962
-Node: ICS1 style ASCII displays43407
-Node: Graphical displays43711
-Node: Engines43865
-Node: Common functions44443
-Node: Crafty45483
-Node: Gnu Chess45598
-Node: Phalanx45710
-Node: Sjeng45817
-Node: Internet Chess Servers45902
-Node: Connecting to a server46822
-Node: Seeking an opponent for a new game47243
-Node: The sought game display47695
-Node: Concept Index48721
-Node: Function and Variable Index48964
-Node: Key Index59579
+Node: Position details5984
+Node: Annotations10437
+Node: FEN notation10779
+Node: EPD notation12276
+Node: Operations13785
+Node: Opcode "acd" analysis count depth14759
+Node: Opcode "acn" analysis count nodes15113
+Node: Opcode "acs" analysis count seconds15638
+Node: Opcode "am" avoid move(s)16158
+Node: Opcode "bm" best move(s)16599
+Node: Plies16994
+Node: Creating plies18185
+Node: Ply details19369
+Node: The "next" position19849
+Node: Algebraic notation20111
+Node: Variations21539
+Node: Creating variations22667
+Node: Variation positions22975
+Node: Varation plies23576
+Node: Making a move in a variation24017
+Node: Games24592
+Node: Creating games26278
+Node: Game tags26719
+Node: Game positions27326
+Node: Game plies27907
+Node: Making a move28176
+Node: PGN notation28603
+Node: PGN mode29353
+Node: Collections29614
+Node: Opening Databases30415
+Node: Querying Databases30799
+Node: Modifying Databases31425
+Node: Finalising Databases31697
+Node: Database Modules31872
+Node: chess-file32166
+Node: chess-scid32808
+Node: Modules33045
+Node: Chessboard displays39794
+Node: Generic display manipulation functions40422
+Node: Plain ASCII diagram displays43347
+Node: ICS1 style ASCII displays44792
+Node: Graphical displays45096
+Node: Engines45250
+Node: Common functions45828
+Node: Crafty46868
+Node: Gnu Chess46983
+Node: Phalanx47095
+Node: Sjeng47202
+Node: Internet Chess Servers47287
+Node: Connecting to a server48206
+Node: Seeking an opponent for a new game48882
+Node: The sought game display49334
+Node: Concept Index50310
+Node: Function and Variable Index50553
+Node: Key Index61752
 
 End Tag Table
diff --git a/doc/chess.texi b/doc/chess.texi
index 29f7b62..f9effd8 100644
--- a/doc/chess.texi
+++ b/doc/chess.texi
@@ -207,14 +207,57 @@ Convert a @var{coord} string into an index value.
 Convert the chess position @var{index} into a coord string.
 @end defun
 
-There is also one helper function for iterative changes of an index:
+For fast manipulation of chess position indices, the following
+constants and functions are provided:
 
address@hidden lispfun chess-incr-index
+For queens and rooks:
 
address@hidden chess-incr-index index rank-move file-move
-Create a new @var{index} from an old one, by adding @var{rank-move} and 
@var{file-move}.
address@hidden Constant chess-direction-north
+Signify one step north, as seen from the perspective of the white player.
address@hidden defvr
+
address@hidden Constant chess-direction-east
+Signify one step east, as seen from the perspective of the white player.
address@hidden defvr
+
address@hidden Constant chess-direction-south
+Signify one step south, as seen from the perspective of the white player.
address@hidden defvr
+
address@hidden Constant chess-direction-west
+Signify one step west, as seen from the perspective of the white player.
address@hidden defvr
+
+For queens and bishops:
+
address@hidden Constant chess-direction-northeast
+Signify one step northeast, as seen from the perspective of the white player.
address@hidden defvr
+
address@hidden Constant chess-direction-southeast
+Signify one step southeast, as seen from the perspective of the white player.
address@hidden defvr
+
address@hidden Constant chess-direction-southwest
+Signify one step southwest, as seen from the perspective of the white player.
address@hidden defvr
+
address@hidden Constant chess-direction-northwest
+Signify one step northwest, as seen from the perspective of the white player.
address@hidden defvr
+
address@hidden lispfun chess-next-index
+
address@hidden chess-next-index index direction
+Create a new @var{index} from an old one, by advancing it into @var{direction}.
+If the resulting index is not valid, nil is returned.
 @end defun
 
+Due to the underlying technique used to efficiently detect off-board squares,
+a direction specifier should at most do two steps in any direction.
+Directions can be combined, so that @code{(* chess-direction-north 2)}
+will give a typical initial white pawn push.
+
 @node Position details, Annotations, Position coordinates, Positions
 @subsection Position details
 
@@ -1488,9 +1531,9 @@ event handler can take care of the data.
 Based on the services provided above, there is also a speical mode
 for communication with Internet Chess Servers.
 
-ON an Internet Chess Server you can seek to play against other
+On an Internet Chess Server you can seek to play against other
 human or computer players, observe other games being player or examined,
-play tournaments, chat with fellow chess players, participate in a team game,
+play tournaments, chat with fellow chess players, participate in team games,
 or do various other interesting chess related things.
 
 A default set of well known servers is defined in the following variable:
@@ -1519,6 +1562,11 @@ To open a new connection to an Internet Chess Server, 
use:
 Connect to an Internet Chess Server.
 @end defun
 
+Internet Chess Server support is a derivative of Comint mode,
+a general-purpose mode for communicating with interactive subprocesses.
+A history of previously entered commands at the ICS prompt is
+available with @kbd{M-p} and @kbd{M-n}.  See @var{comint-mode-map}.
+
 @node Seeking an opponent for a new game, The sought game display, Connecting 
to a server, Internet Chess Servers
 @section Seeking an opponent for a new game
 
@@ -1531,26 +1579,25 @@ to interested people.
 @section The sought game display
 
 There is a special mode for displaying games sought by other users
-on an Internet Chess Server.  Provided you didn't turn off seek ads
+on an Internet Chess Server.  Provided you didn't turn off seek advertisments
 manually (for instance by setting the seek variable to 0 (off) on the
 ICS server by issueing "set seek 0"), the first seek advertisment
-automatically pops up a new window which is in `chess-ics-sought-mode'.
+automatically pops up a new window which is in `chess-ics-ads-mode', a
+derivative of `tabulated-list-mode'.
 
address@hidden lispfun chess-ics-sought-mode
address@hidden lispfun chess-ics-ads-mode
 
address@hidden chess-ics-sought-mode 
address@hidden chess-ics-ads-mode 
 A mode for displaying @var{ics} game seek advertisments.
 
-This mode runs the hook `chess-ics-sought-mode-hook', as the final step
+This mode runs the hook `chess-ics-ads-mode-hook', as the final step
 during initialization.
 
 key             binding
 ---             -------
 
address@hidden          chess-ics-sought-accept
address@hidden          chess-ics-sought-toggle-sort-direction
 ?              describe-mode
-s              chess-ics-sought-toggle-sort-state
address@hidden          chess-ics-sought-accept
 <mouse-2>      chess-ics-sought-accept
 
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]