diff options
| author | John Wiegley <johnw@newartisans.com> | 2005-06-27 23:53:18 +0000 |
|---|---|---|
| committer | John Wiegley <johnw@newartisans.com> | 2005-06-27 23:53:18 +0000 |
| commit | 8bc8dc6b37fba2139233f0c3574ded067b94ff0d (patch) | |
| tree | 66d638ccfe07b5c3284537d4a7073d7266eabc6c | |
| parent | 0ff2c29a361b07c27b6a961193ae3731a765ad51 (diff) | |
*** no comment ***
| -rw-r--r-- | ChangeLog | 29 | ||||
| -rw-r--r-- | PLAN | 37 | ||||
| -rw-r--r-- | README | 102 | ||||
| -rw-r--r-- | chess-maint.el | 6 | ||||
| -rw-r--r-- | chess-none.el | 3 |
5 files changed, 69 insertions, 108 deletions
@@ -1,3 +1,32 @@ +2005-06-27 John Wiegley <johnw@newartisans.com> + + * chess-ics.el (chess-ics-sought-add): Added this routine to + factor out a lot of duplicated code. + + * chess-plain.el (chess-plain-popup): Pass nil for the `font' + argument to `chess-display-popup-in-frame', since we don't care + what the size of the font is with textual chessboards. + + * chess-input.el (chess-input-shortcut): If a character is typed + that is not a legal start of a move (which only happens if it's + not bound to anything else), just ignore it. + + * chess-images.el (chess-images-determine-size): On Macs and + Windows, reduce the screen height by 80 instead of just 20, to + account for the Start/Status bar. + (chess-images-popup): Pass in a `font' to + `chess-display-popup-in-frame', so that the pixel height for each + graphical piece is computed correctly. + (chess-images-change-size): Foricbly popup the chess buffer when + changing the size of graphical pieces. + + * chess-ics1.el (chess-ics1-popup): Added `font' argument in call + to `chess-display-popup-in-frame'. + + * chess-display.el (chess-display-popup-in-frame): Added a `font' + parameter, so that the font can be set in new chessboard + frames (which is necessary to get the pixel height/width right). + 2004-12-07 Mario Lang <mlang@delysid.org> * chess-algebraic.el, chess-announce.el, chess-autosave.el, @@ -2,6 +2,20 @@ chess-autosave - this module currently isn't working at all! - doesn't support undoing of moves +chess-clock +- sometimes, the clock gets shut off (while playing on ICS) for no + reason that I can determine + +chess-irc +- if I move before my opponent has connected, I get a symbol assertion + about "value" + +chess-network +- does not work at all! + +chess-gnuchess +- triggers a Lisp error when I resign + chess-ics - takebacks still aren't working 100%; when I submit a takeback request manually, and the other side accepts, my client doesn't know @@ -10,37 +24,21 @@ chess-ics - resuming adjourned games does not work at all - not detecting forfeit by disconnection at the moment -chess-clock -- sometimse, the clock gets shut off (while playing on ICS) for no - reason that I can determine - chess-display +- although chess-display-side-to-move is using faces, the Black/White + text doesn't show the face in the modeline - sometimes the final event of a game doesn't change the modeline, like CHECKMATE, or FLAG FELL - if I win a game, it still reports CHECKMATE incorrect; if I'm white, it does so on the last ply (per display) - need a "save this game to a PGN file/database" command -chess-images -- if chess-display-popup is nil, and I resize the board, it merely - deletes the frame and never shows it again - chess-engine - if I say "y" to accepting something from my opponent (new game, takeback, etc), I get left with an hourglass cursor - if no chess engine is available, there is no nice message being printed -chess-irc -- if I move before my opponent has connected, I get a symbol assertion - about "value" - -chess-network -- does not work at all! - -chess-pos -- typing a number in a chessboard display gets an assertion - chess-ply - detect games drawn by three-fold repetition and the 50 move rule (Note, FIDE rules define that a draw must be claimed by one @@ -57,9 +55,6 @@ chess-pgn chess-german - complete translation -chess-gnuchess -- triggers a Lisp error when I resign - general - add an 'install' target to the Makefile - use more asserts throughout the code @@ -1,94 +1,34 @@ Welcome to chess.el, a client and library for playing Chess from Emacs. -chess.el is an Emacs Lisp library and several clients on top of the underlying -library functionality for performing various activities related -to the game of chess. +chess.el is an Emacs Lisp library and several clients on top of the +underlying library functionality for performing various activities +related to the game of chess. + You can play against an external chess program such as gnuchess, -crafty, phalanx or sjeng. All of them are publically available, -and chess.el will automatically detect which one -you have installed, provided they have standard executable -program names, and are in a located in a directory which -is part of the PATH. See the customisable variable -`chess-default-engine'. +crafty, phalanx or sjeng. All of them are publically available, and +chess.el will automatically detect which one you have installed, +provided they have standard executable program names, and are in a +located in a directory which is part of the PATH. See the +customisable variable `chess-default-engine'. You can also play against another human or computer over the internet -(through a direct Emacs-to-Emacs connection, or -on one of the Internet Chess Servers like freechess.org or -chessclub.com), or even against a very simple chess thinking -module implemented in pure Emacs Lisp. +(through a direct Emacs-to-Emacs connection, or on one of the Internet +Chess Servers like freechess.org or chessclub.com), or even against a +very simple chess thinking module implemented in pure Emacs Lisp. chess.el also provides a mode for editing Portable Game Notation (PGN files. -To improve your chessaility, you might also like to have -a look at chess-puzzle, which allows you to solve -chess puzzle collections (in PGN or EPD format) against -one of the engines you have installed. +To improve your chessaility, you might also like to have a look at +chess-puzzle, which allows you to solve chess puzzle collections (in +PGN or EPD format) against one of the engines you have installed. HISTORY -chess.el started out as a single file project with -version 1.0 by John Wiegley <johnw@gnu.org>. Version 2.0 is a major -rewrite and reorganisation of the original code, also done -by John Wiegley. In the end of 2003, John did not -have a lot of time to finish all the various aspects of version 2.0, -and maintainership was given to Mario Lang <mlang@delysid.org>. - - -LAYOUT - -Core library - - chess-pos.el - chess-fen.el - - chess-ply.el - chess-algebraic.el - - chess-var.el - chess-game.el - -* chess-module.el -** chess-announce.el -** chess-sound.el -** chess-display.el -*** chess-plain.el -*** chess-ics1.el -*** chess-images.el -** chess-database.el -*** chess-file.el -*** chess-pgn.el -*** chess-scid.el -** chess-engine.el -*** chess-none.el -*** chess-common.el -**** chess-ai.el -**** chess-crafty.el -**** chess-gnuchess.el -**** chess-phalanx.el -*** chess-network.el -**** chess-irc.el - -** input modules -*** chess-input.el -*** chess-ucb.el - -** chess-autosave.el -** chess-chat.el -** chess-clock.el -** chess-kibitz.el - -* chess-message.el -** chess-german.el - -chess-maint.el - -chess.el -chess-ics.el -chess-link.el -chess-puzzle.el -chess-tutorial.el - -chess-random.el -chess-transport.el +chess.el started out as a single file project with version 1.0 by John +Wiegley <johnw@gnu.org>. Version 2.0 is a major rewrite and +reorganisation of the original code, also done by John Wiegley. In +the end of 2003, John did not have a lot of time to finish all the +various aspects of version 2.0, and maintainership was given to Mario +Lang <mlang@delysid.org>. diff --git a/chess-maint.el b/chess-maint.el index 4bfcfd4..41612e3 100644 --- a/chess-maint.el +++ b/chess-maint.el @@ -1,14 +1,10 @@ (add-to-list 'load-path ".") +(require 'cl) (require 'pp) (require 'chess) (require 'chess-pgn) -(defmacro assert (form) - (unless (byte-compiling-files-p) - `(unless ,form - (error "Assertion failed: %s" (pp-to-string ,form))))) - (defun chess-generate-texinfo-file () (require 'lispdoc) (require 'texinfo) diff --git a/chess-none.el b/chess-none.el index e833744..efc3afe 100644 --- a/chess-none.el +++ b/chess-none.el @@ -1,6 +1,7 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; -;; A null engine, used when two humans play each on the same display. +;; A null engine, used when two humans play against each other on the +;; same display. ;; (require 'chess-engine) |
