I think a lot of people have spent a lot of time struggling with the old 
repertoire and mask features trying to get something like Chess Position 
Trainer functionality out of the various SCIDs over the years, without 
much success. Here are some thoughts about how this might be approached 
in a totally different way.

SCIDvsPC already has the ability to apply the tree from one database to 
the games of another. So, you don't actually need a special repertoire 
or mask file. To get the same effect, you just need a database that 
contains only the repertoire lines.

You could almost do this now but creating such a "database of lines" is 
a pain. It looks like this should be easy when you first look at the 
Tree window but it isn't. The speed of the Tree Window contributes to 
this impression because it makes it look like the tree is persistent 
data rather than calculated on the fly.

The first obstacle everyone encounters is that the tree window isn't 
editable - you can't add and delete moves ('prune the tree') directly. 
The second problem is that as you browse the Tree, you can't see 
comments and NAGs at the current position because only one game is 
loaded at a time.

My suggestion would be to create a special database that holds only 
moves, comments and NAGs. Even the usual PGN headers are irrelevant as 
we are not storing real games, just lines. Similarly, there is no need 
for variations - each line is stored as a separate game. At any given 
position when the user adds a move, check if we are at the end of an 
existing game/line - if so append the move and save. If not, 
automatically create a new game that includes the moves to this point 
and then adds the new move and saves. Transpositions are irrelevant as 
the tree effectively hides this anyway.

The important point is that this is still just a regular SCID base but 
you are exploiting the speed of the Tree functionality to make it look 
like something quite different. This "Repertoire" could have a special 
extension to prevent it being opened as a regular database even though 
it really is just a simple DB.

The difficult part is that this would require a whole new interface 
window that borrows features from the existing Tree, PGN and Comments 
windows. You would need to create an "Edit Repertoire Tree" window that 
would allow the user to step forwards and backwards through the "tree" 
and display/edit moves, comments and NAGs at the current position. It 
would also need to provide the ability to add and delete moves. You 
don't need to show any of the statistics from the current tree window, 
nor do you need to show a game list.



------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Scidvspc-users mailing list
Scidvspc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scidvspc-users

Reply via email to