| Age | Commit message (Collapse) | Author |
|
|
|
This eliminates roughly 100 lines of boilerplate code.
|
|
|
|
for the promotion piece.
|
|
|
|
|
|
|
|
using format string specifiers.
|
|
|
|
what we think is the current game position really is.
|
|
|
|
|
|
LET-bound variable.
|
|
files to UTF-8, and switched to using insert-file-contents instead of the
-literally variant (which doesn't respect content encodings).
|
|
duplicated code.
|
|
|
|
|
|
|
|
|
|
Make "backs up" message work.
Rudimentary level2 datagram support through chess-ics-icc-preoutput-filter.
New variable chess-ics-icc-datagrams to define which datagrams should
be requested upon login.
New variable chess-ics-server-type which defaults to FICS, and gets set
to ICC when we encounter an ICC server.
Handle DG_KIBITZ by translating them to the FICS representation.
Handle movelist request through DG_POSITION_BEGIN2 and DG_PASTMOVE.
|
|
|
|
deleteing stuff on a preoutput-filter-function. Fixed this, which also
fixes all the remaining cases of missed boards. LectureBot
ran through three Lectures without any bug, which seems good!
|
|
(chess-ics-style12-regexp): New constant regexp which matches
a style12 string (subgroup 1 to 32).
(chess-ics-matcher-alist): Use it.
(chess-ics-matcher-alist): Destroy game object if we see a
"no longer examining..." message.
(chess-ics-handle-style12): Rewrite using `match-string' instead of
`pop' based on the new regexp above.
(chess-ics-handle-style12): No longer `message' parse errors, rather
keep the failed board in the buffer, and add the failure info
to the front of the line. Makes finding remaining bugs a lot
easier since the buffer can be reviewed in chronological order.
|
|
|
|
`last-triggers'?
|
|
and set back-moved-first game-data always, so that it even works if a game is reset to a new starting position
|
|
the init-strings sent after login configurable.
(chess-ics-movelist-start-position): New buffer-local variable
which defaults to `chess-starting-position'. Its value (if non-nil)
is used to initialize the board when seeing a movelist header.
This is to allow for servers which have the equivalent of
"iset startpos 1" on FICS, which tells the server to automatically
send the initial position before sending a movelist. This is
to allow non-standard starting positions, and still maintain
complete game information in the game object locally.
(chess-ics-matcher-alist): If we see something like "startpos set",
we set chess-ics-movelist-start-position to nil.
(chess-ics-handle-style12): Renamed from chess-ics-handle-ics12.
Set game-data 'black-moved-first to t if we see a initial board
(move is "none"), and side-to-move is Black. Use this information
to calculate the correct game index from the supplied game sequence.
This fixes observing of arbitrary start position games where
Black moved first. (Most of LectureBot should work now).
(chess-ics-seeking): Handle "set ptime 1" prompts.
(chess-ics-ads-removed): Ditto.
|
|
games which were started from bsetup positions.
Attempt to route kibitzes to chess-announce.
Some other fixes to increase ICC compatibility.
|
|
THis time, we put stuff in comint-preoutput-filter-functions
to save lots of unnecessary regexp matches.
|
|
|
|
clickable.
|
|
|
|
played each session.
|
|
|
|
invoked chess-sessions as needed. You need to use M-x chess-ics RET instead of C-u M-x chess RET ics RET now. Additionally, rewrite chess-ics-handle-ics12 such that it can handle the refresh command, and moves entered manually in the ICS buffer
|
|
Support relation-type -2 (Examining game).
Handle the 'forward event.
(Now you can use the "examine" command on FICS, and simply
type '.' in the ChessBoard display to forward through the game.)
|
|
(chess-ics-regexp-alist): Make guest login on chessclub.com work.
(chess-ics-handle-ics12): Retrieve TimeControl info from
the ics12 board and set TimeControl game tag when initial board is seen.
|
|
|
|
a new function chess-ics-handle-ics12, which is a lot easier to read now.
Also make the <12> regexp a bit more strict to avoid false positives.
|
|
|
|
This corrects a race where the password can be unknown when the
prompt appears because the user hasnt finished typing yet...
(chess-ics12-parse): Use `pop' to make stuff simpler and use `mapc'
to get castling info.
Indent chess-ics-regexp-alist differently.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|