]> code.delx.au - gnu-emacs-elpa/blob - TODO
*** no comment ***
[gnu-emacs-elpa] / TODO
1 These are features scheduled for future 2.x releases.
2
3 ----------------------------------------------------------------------
4
5 General Features
6
7 - Write chess-descriptive.el, and have the code in general use
8 chess-ply-to-string and chess-string-to-ply, so that users can use
9 descriptive notationas an alternative to algebraic.
10
11 - Write chess-html.el, for outputting a game to HTML
12
13 - Write chess-latex.el, for outputting a game to LaTeX
14
15 - Use TrueType or other chess fonts for displaying positions; this
16 might be the best way of displaying positions on Windows
17
18 - Change chess-announce/sound so that it reads from the text rendition
19 of the move; this way it will work with either descriptive or
20 algebraic notation. Also, chess-announce and chess-sound can be
21 collapsed into one module, with different "styles" of announcing.
22
23 - Write chess-epd.el, which is based on chess-fen, and is also a
24 database module for accessing positions within an EPD file
25
26 - Make ( create variations in a display, and keys to move into and out
27 of them. At the moment, variations are supported programmatically,
28 but not in the UI.
29
30 - Make a display read-only mode, which allows people to view/browse
31 but not alter a game. This could be used for remoting displays in
32 order that people on other X servers might observe a game.
33
34 - Implement the "50 moves after irreversible" draw rule in chess-ply
35
36 - Port the code to XEmacs
37
38 - Find a way to display pieces on Windows platforms, or at least
39 document how to build XPM support into Emacs for Windows
40
41 - Add a way to include the chess-ucb module in the list of default
42 modules created via M-x chess. Right now there is no facility for
43 having two engines associated with a single game (and chess-link
44 is not what we want in this case).
45
46 ----------------------------------------------------------------------
47
48 ICS Client
49
50 - Add a completion function against logged in users
51
52 - Copy some of ics.el's nicer functionality into chess-ics.el
53
54 ----------------------------------------------------------------------
55
56 Chess by Mail
57
58 - Add support for adjournments; also, implement this is such a way
59 that an e-mail or postal game is basically a game that's adjourned
60 after every move; use BBDB if available
61
62 - Use MIME attachments (application/x-chess-pgn) for sending e-mail
63 chess games back and forth.
64
65 ----------------------------------------------------------------------
66
67 Database Interaction
68
69 - Enable UI commands in chess-display to interact with databases. As
70 of 2.0, this support is programmatic only.
71
72 - Follow what `edit-env' does, in order to make chess-query.el.
73
74 ----------------------------------------------------------------------
75
76 Training/Tutorials
77
78 - Write a scripted chess-tutorial.
79
80 - Allow the opponent to give hints.
81
82 - Add a warning mode that will use the results of an analysis to warn
83 the user (and ask for confirmation) before doing something that
84 might lead to an inferior position.
85
86 - Add a chess tutor program, to teach people how to play chess
87
88 ----------------------------------------------------------------------
89
90 Analysis features
91
92 - Add an engine function for obtaining an evaluation of the current
93 position. Then, allow M-x chess to startup a non-game oriented
94 engine, solely for the purpose of submitting position evaluations,
95 and displaying the result in the modeline. (Also, look at crafty's
96 kibitzing feature).
97
98 - Add a Map command, that will colorize the squares depending on
99 whether they are reachable by either side. Green if reachable by
100 you, Red if by your opponent, and blue if by both. With a prefix
101 argument, colorize only the squares that have pieces on them. This
102 is a stable modes that remains in effect until turned off. It also
103 requires the ability to pass a color to the chessboard highlighting
104 routine.
105
106 - Using gnuplot-mode, allow evaluation trends to be plotted
107
108 - Add an analyze command that will indicate which pieces are defended,
109 how well, which are attacked, which moves would increase
110 defense/attack/both, etc. Basically, everything that can be known
111 about the current board, and one move ahead (on both sides).
112
113 ----------------------------------------------------------------------
114
115 Other variations
116
117 - Need a way to play bughouse/crazyhouse games.
118
119 ----------------------------------------------------------------------
120
121 Other features
122
123 - Keeping a player database in BBDB
124
125 - Managing a tournament, setting up pairings, calculating ratings