[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
- [elpa] branch externals/chess updated (a1f20e8 -> c8a2a9c), Mario Lang, 2014/06/04
- [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.,
Mario Lang <=