diff options
| -rw-r--r-- | TODO | 31 | ||||
| -rw-r--r-- | chess-ics.el | 4 | ||||
| -rw-r--r-- | chess.el | 2 |
3 files changed, 23 insertions, 14 deletions
@@ -9,48 +9,53 @@ ---------------------------------------------------------------------- +- test making an en passant capture + + - if I parse disambiguating information from chess-algebraic, store it in the ply. Then, in ply-to-algebraic it won't need to be calculated. Also, I can then easily announce it in chess-announce - when announcing abiguous pieces, name the rank/file ("e pawn") + - restrict keyboard shorcutting so that it only looks if the move is related to the given letter - modify displays and engines so they ONLY keep game objects; thus set-start-position would become just set-position +- Why doesn't S-b produce [B] in the keyboard shortcutting? + + - distinguish between chess-display-set-game and chess-display-set-game*. The latter detaches and sets a new game object. The former just overwrites the current game object. -- detect draw/resign/abort/retract, etc., from ICS and common engines - -- Why doesn't S-b produce [B] in the keyboard shortcutting? - the game should go inactive once I lose by stalemate/checkmate -- devise a better scheme for printing messages (use a catalog?) and - for when engines need to ask questions +- detect draw/resign/abort/retract, etc., from ICS and common engines -- there needs to be much more robustness; it's too easy to get the - game into an unplayable state right now + +- in chess-ply-create signal an error on invalid plies describing why - for network transports, if an illegal move is encountered, report this with "illegal move: REASON" + - incorporate the .wav files from xchat's sounds that chess-sound currently doesn't have -- in chess-engine-filter and chess-ics-filter, if an error is - encountered, skip that line so the same error isn't triggered again -- in chess-ply-create signal an error on invalid plies describing why +- devise a better scheme for printing messages (use a catalog?) and + for when engines need to ask questions -- require `cl' into chess-ply, or break my dependency on cl +- there needs to be much more robustness; it's too easy to get the + game into an unplayable state right now -- test making an en passant capture +- in chess-engine-filter and chess-ics-filter, if an error is + encountered, skip that line so the same error isn't triggered again - in chess-ics use a server-alist, and make the default handle be "guest". Allow a password to be specified, or a filename containing @@ -60,6 +65,8 @@ ---------------------------------------------------------------------- +- Break my dependency on cl + - Use more asserts throughout the code - Read-only mode needs to be a bit more vigorous. There's nothing diff --git a/chess-ics.el b/chess-ics.el index 51eb94f..5bd9639 100644 --- a/chess-ics.el +++ b/chess-ics.el @@ -4,8 +4,8 @@ ;; ;; $Revision$ +(require 'comint) (require 'chess-network) -(require 'ics) (defgroup chess-ics nil "Engine for interacting with Internet Chess Servers." @@ -42,7 +42,7 @@ The list is comprised of: the ply the string represents, who is white, who is black." (let ((parts (split-string string " ")) (position (chess-pos-create t)) - white black ply) + white black move) (assert (= (length parts) 32)) @@ -175,6 +175,8 @@ minibuffer, which works well for Emacspeak users." (cons display engine))) +(defalias 'chess-session 'chess) + ;;;###autoload (defun chess-read-pgn (&optional file) "Read and display a PGN game after point." |
