diff options
Diffstat (limited to 'chess-gnuchess.el')
| -rw-r--r-- | chess-gnuchess.el | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/chess-gnuchess.el b/chess-gnuchess.el new file mode 100644 index 0000000..1031f4f --- /dev/null +++ b/chess-gnuchess.el @@ -0,0 +1,33 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Play against the gnuchess engine +;; +;; $Revision$ + +(require 'chess-process) + +(defgroup chess-gnuchess nil + "Interface code for playing against gnuchess. Uses `chess-process'." + :group 'chess) + +(defcustom chess-gnuchess-command "gnuchess" + "The name of the gnuchess program." + :type 'string + :group 'chess-gnuchess) + +;;;###autoload +(defun chess-gnuchess (game) + (chess-process + game nil + (list (list (concat "My move is : \\(" chess-algebraic-regexp "\\)") + (function + (lambda (move) + (chess-game-move chess-process-game move nil))) 1) + '("Illegal move:" (error "Illegal move"))) + (if (file-name-absolute-p chess-gnuchess-command) + chess-gnuchess-command + (executable-find chess-gnuchess-command)))) + +(provide 'chess-gnuchess) + +;;; chess-gnuchess.el ends here |
