root/06/devel-old/doc/tutorial.html

Revision 94, 73.2 kB (checked in by ug, 4 years ago)

Updated tutorial. Misc changes.

Line 
1 <html>
2 <head>
3 <title>Kombilo - tutorial</title>
4
5 <meta name="description"
6 content="Kombilo - a go database program">
7 <meta name="keywords"
8 content="kombilo go weiqi baduk database">
9 <meta http-equiv="expires" content="1800">
10 <meta name="robots"
11 content="INDEX,FOLLOW">
12 <meta name="author"
13 content="Ulrich Goertz">
14 </head>
15
16 <body bgcolor=#FFFFFF>
17
18 <div style="width:600px">
19
20 <H1>Tutorial</H1>
21 <p><img src="logosmall.jpg" align=RIGHT>
22 This tutorial explains how to use Kombilo 0.6. If you are just looking
23 for more information on this program before downloading it,
24 you should find it here too.</p>
25
26 <div style="border:none; padding:3px; width:600px;
27 background-color:#CCCCCC; z-index:1"> 
28 <font size="4"><b>Contents</b></font></div>
29
30 <p>
31 <a href="#newin05">New features in version 0.6</a><br>
32 <a href="#gettingstarted">Getting started</a><br>
33 <a href="#firstsearch">The first search</a><br>
34 <a href="#moresearchpatterns">More complicated search patterns</a><br>
35 <a href="#sgfeditor">The SGF editor</a><br>
36 <a href="#exportresults">Export search results/current position/SGF</a><br>
37 <a href="#gamelistwindow">The game list window</a><br>
38 <a href="#analyzing">Analyzing a game</a><br>
39 <a href="#gameinfosearch">Game info search</a><br>
40 <a href="#signaturesearch">Signature search</a><br>
41 <a href="#editDBlist">The database list</a><br>
42 <a href="#custommenus">The custom menus</a><br>
43 <a href="#guessmode">Guess next move mode</a><br>
44 <a href="#configure">Configuring Kombilo</a><p>
45 <a href="#installation">Installation</a><br>
46 <a href="#requirements">Requirements on SGF files</a><br>
47 <a href="#troubleshooting">Troubleshooting</a><br>
48 <a href="#tipsandtricks">Tips and tricks</a><br>
49 <a href="#searchalgorithm">The search algorithm</a><br>
50 <a href="#automatic">Automatizing pattern searches</a><br>
51 <a href="#index">Index</a><br>
52 </p>
53
54 <div style="border:none; padding:3px; width:600px;
55 background-color:#99CCCC; z-index:1"> 
56 <a name="newin05"><font size="4"><b>New features in
57 version 0.6</b></font></a></div>
58
59 <p><ul>
60 <li> Support of 9x9 and 13x13 boards
61
62 <li> Search for move sequences
63
64 <li> Much faster processing
65
66 <li> New search algorithm. ... thanks to Arend Bayer ...
67
68 <li> Black/empty and white/empty wildcards ... thanks to Arend Bayer
69 ...
70
71 <li> The whole source code of the program has been restructured. This
72 will allow to add future changes much more easily. Furthermore, you can
73 now easily write "scripts" to do <a href="automatic">pattern searches
74 automatically</a>, for
75 example to to research related to the development over time of certain
76 patterns and their winning probabilities. There is one downside to
77 all this: since there is so much new code, it is likely that there
78 are also new bugs. Please help tracking them down, and report them
79 in the <a href="http://www.u-go.net/kombilo/tracker">Kombilo bug
80 tracker</a>.
81 </ul></p>
82
83 <div style="border:none; padding:3px; width:600px;
84 background-color:#99CCCC; z-index:1"> 
85 <a name="gettingstarted"><font size=4><b>Getting started</b></font></a>
86 </div>
87
88 <p>
89 After <a href="#installation">installing</a> Kombilo, you should
90 execute the file 'kombilo.py' (under Windows: 'kombilo.pyw'
91 (if you downloaded Python separately) or 'kombilo.exe', respectively,
92 if you used the installer).
93
94 Three windows will pop up: The main window,
95 with a go board and some buttons for navigation, the game list
96 window with an (initially empty) game list, and some buttons for
97 the search function, and the data window which contains several lists and
98 buttons related to the SGF editor.</p>
99
100 <IMG SRC="mainwindow.jpg">
101 <IMG SRC="gamelistwindow.jpg">
102 <IMG SRC="datawindow.jpg">
103
104 <p>
105 The first thing you have to do now is to add a database to the
106 database list; choose the 'Edit DB list' command in the File menu.<p>
107 A database corresponds to a directory of SGF files; it contains all the SGF
108 files in that directory. Kombilo does not come with any games. You can
109 either
110 <a href="http://www.u-go.net/gamerecords/">download a game collection</a>
111 from the net, or buy a commercial one.<p>
112 See also the section about <a href="#requirements">requirements on SGF files</a>
113 in order to understand which kind of SGF files the program can handle;
114 basically, it handles simple game records, they may contain
115 variations, but the variations are ignored for the search.
116 </p>
117
118 <IMG SRC="editdblist.jpg">
119
120 <p>When you add a directory for the first time, the SGF files will
121 be 'translated' into a format that makes the search more efficient.
122 This processing takes quite some time; if you have thousands of games,
123 it will take several minutes even on a very fast machine.
124 But this has only to be done once. The
125 data will be written to several .db files in the same directory.
126 Look <a href="#editDBlist">here</a> for more information on the
127 buttons in this window.</p>
128
129 <p>Of course the sgf files remain in the directory, and Kombilo will never
130 change them (unless you change the game info or edit the games yourself,
131 of course). After the processing, the pattern search function actually
132 does not use them anymore, but they are needed for the game info search
133 and if you want to play through games with the SGF viewer.
134 </p>
135
136 <p><b><a name="oldTknote">Note:</a></b> (As far as I can tell, this is not an
137 issue anymore with recent Python versions; in particular if you used the
138 Windows installer, you should be fine.) In some Python versions the widget
139 for selecting a directory is not available. (Technically speaking, they
140 come with an old Tk version; Tk is the programming language underlying
141 the GUI toolkit.) As a
142 consequence, the program will crash once you press the 'Add DB' button
143 in the 'Edit DB list' window. I think that this is mainly a problem on
144 Windows95/98 systems, but it may happen on other systems, too. <BR>
145 There is the following work-around: Check the 'Old Tk version'-option
146 in the 'Advanced' submenu of the options menu. Now the 'Add DB' button
147 will bring up a widget to select a file; this widget is always available.
148 In order to select a certain directory which should be added as a
149 database, you have to select any file in it. <BR>
150 It is still possible to add all subdirectories of some directory
151 at the same time, by the 'Add subdir's recursively' option. To do so,
152 you have to select a file in the main directory. (If it doesn't
153 contain any files, but only the subdirectories you want to add,
154 you have to copy any file to that directory first. Don't take
155 an sgf file because (probably) you don't want that sgf file to
156 show up in the database.)</p>
157
158 <div style="border:none; padding:3px; width:600px;
159 background-color:#99CCCC; z-index:1"> 
160 <a name="firstsearch"><font size="4"><b>The first search</b></font></a>
161 </div>
162
163 <p>
164 <table border="0" width="100" cellpadding="6" align=RIGHT>
165 <tr><td><IMG SRC="expl_basic.jpg"></td></tr>
166 <tr><td><i>Place stones on the board by clicking. Ctrl-click to remove
167 stones, and Shift-click to place wildcards. Mark the search-relevant
168 region by right-click and drag</i></td></tr>
169 </table>
170 Now the game list should contain some files, and you can start the first search.
171 <br>
172
173 With the right mouse key (click and drag) you can select the
174 search-relevant region; the rest of the board will be grayed out.
175 (If you prefer to have the relevant region itself to be darker, as was the
176 case in previous Kombilo versions, select the "Invert selection" option in
177 the options menu.)
178 <img src="expl_select.jpg" align="left" vspace="10" hspace="20">
179 Everything outside that
180 region is ignored: on the one hand it does not matter if there are additional
181 stones on the main board, on the other hand all games will be found which feature
182 the given pattern in the relevant region, no matter what else is on the board.
183 Of course, mirroring and rotating the board is automatically taken into account.</p>
184
185 <table border="0" width="100" cellpadding="6" align=RIGHT>
186 <tr><td><IMG SRC="expl_color.jpg"></td></tr>
187 <tr><td><i>You can either place black and white stones alternatingly,
188 or stones of one color only.</i></td></tr>
189 </table>
190
191 <p>When no region is selected, the whole board is relevant.<br>
192
193 After defining the pattern and the relevant region, just press the search button
194 (in the lower left corner of the game list window).
195 Then the game list will be erased, and afterwards all games in which the
196 given pattern occurs will be inserted again. In order to go back to the
197 complete game list, use the "reset game list" button in the first row of
198 the "Pattern search" window.</p>
199
200 <p>If you click on a game in the game list, the game info (players, result, komi,
201 event, date etc.) is displayed below the game list.</p>
202 <IMG SRC="results.jpg">
203 <p>By double-clicking on a game in the game list, you load the game to the
204 SGF editor and you can look at that game. You can also start the viewer by
205 selecting a game (by a single click) and pressing the return key.
206 If you prefer to open the game in a new window, use Shift-Click instead of
207 double-clicking; cf. the <a href="#externalviewer">Open game in external viewer</a>
208 option. (If you like, you can use your customary SGF editor instead of
209 the simple SGF viewer coming with Kombilo;
210 use the 'Alternative SGF viewer' command in the Options menu.
211 (Linux/Windows only,I think)) </p>
212
213 <p>
214 By clicking on a game with the right mouse key, a window will pop up
215 where the complete game info is displayed, and can be edited.</p>
216
217 <p>
218 Furthermore, below the game list some statistics will be shown about the
219 continuations in the given position.
220
221 In the first line you find the number of hits (which, obviously,
222 can be bigger than the number of games in the list); after this number,
223 in parentheses, is the number of matches with colors as on the board
224 respectively reversed colors. Finally, you get the B/W winning
225 percentages corresponding to the hits (i.e. a game where the pattern
226 occurs several times, is counted that often). <br>
227 Below some information on the continuations in the search position
228 is given. For the ten most frequent continuations, you get<br>
229 - the number of hits in which this continuation is played<br>
230 - graphically, it is shown, how often white played at this point
231   after a tenuki (light gray), how often white played there directly
232 <table border="0" width="120" cellpadding="5">
233 <tr><td><img src="statistics.jpg" align="left"></td></tr></table>
234   after the pattern was finished (white), how often black
235   played there directly after the pattern was finished (black),
236   and finally how often black played after tenuki at the given point.<br>
237 - finally, below the letter labelling the corresponding point on the board
238   (use the ABC button to display the labels on the board), you get
239   the black winning percentage for white playing at this point,
240   and then the black winning percentage for black playing there.
241   (Because there is not enough space, the winning percentage for white is
242   not given, but of course (neglecting jigos etc.) it will be
243   100% - black winning percentage.<br>
244 </p>
245
246 <p>
247 You can disable the 'show tenuki' feature by setting the colors
248 used for it to white resp. black in the Options menu (Advanced -
249 Customize appearance).<br>
250
251 Click on the 'ABC' button above the board in order to display the
252 corresponding labels on the board. The labels are ordered by the number of
253 occurrences of the corresponding continuation. (Unless there were already
254 labels present in the search pattern: in that case Kombilo will use those
255 labels to refer to the same intersections, and thus will not sort by
256 frequency.)</p>
257
258 <IMG SRC="joseki_dict.jpg" align="right">
259
260 <p>
261 If you have a sufficient number of games in your databases,
262 this lets you create fuseki and joseki
263 dictionaries very easily:
264
265 The color of the label indicates whether black or white (or both,
266 depending on the game, in case of the gray labels) played on this point.
267 </p>
268
269 <p>
270 After a search, you can clear the board with the 'start' button above the board.
271 You can reset the game list (such that it contains all the games again) with the
272 "reset game list" button in the pattern search window (left of the statistics
273 display). In the file menu, you can also choose to do a "complete reset" - that will
274 reset Kombilo to the state right after it started up.</p>
275
276
277 <div style="border:none; padding:3px; width:600px;
278 background-color:#99CCCC; z-index:1"><a name="moresearchpatterns">
279 <font size="4"><b>More complicated search patterns</b>
280 </font></a></div>
281
282 <p>There are several buttons to customize the search in the game list
283 window:
284 <img src="searchoptions.jpg" align="left" vspace=10 hspace=10>
285 Usually the pattern obtained by reversing the colors is
286 searched for too, but you can disable that with the 'fixed color'
287 option. <br>
288 As a default, Kombilo uses the 'smart fixed color' option,
289 which automatically enables 'fixed color' for whole board
290 searches, and disables it for all other searches. You can change
291 that in the options menu; see also <a href="#configure">below</a>.
292
293 Furthermore, for a pattern on the edge or in the middle of the board,
294 the program also looks for translations; this can be disabled
295 by the 'fixed anchor' option.</p>
296
297 <p>With the "black/white", "black" and "white" buttons in the line below
298 you can limit the search to patterns where black plays next or
299 white plays next. This is sometimes useful, in particular for joseki
300 searches with very few stones on the board. The default is to allow either
301 a black or a white continuation (or no continuation at all).
302
303 Finally, you can impose a move limit, such that only games
304 are found where the pattern occurs before the given limit.</p>
305
306 <p>
307 You can also add wildcards to the search pattern, by shift-clicking on
308 some point. These will be marked by small green circles, and mean that
309 in the search these points may be either empty or contain a stone of
310 either color.</p>
311
312 <p>For example, the following pattern finds all kos (that are not on the edge):</p>
313
314 <p><IMG SRC="search_patt_ko.jpg"></p>
315
316 <div style="border:none; padding:3px; width:600px;
317 background-color:#99CCCC; z-index:1"> 
318 <a name="sgfeditor"><font size="4"><b>The SGF editor</b></font>
319 </a></div>
320
321 <p>You place stones by clicking (with the left mouse key) on an
322 intersection. The four left-most buttons above the board control if you
323 play black/white (resp. white/black) stones alternatingly, or if you place
324 black (resp. white) stones, in order to set up a position.</p>
325
326 <p>In order to delete stones or to place labels, you have to select the
327 appropriate tool among the 'edit tools' in the data window. Then you can
328 perform the corresponding operation by holding down the Control key and
329 clicking on an intersection.</p>
330
331 <p>With Shift + right-click you can go to the node where some move was/will
332 be played.</p>
333
334 <p>Kombilo's main board has two more features which are related to the pattern
335 search: You can place wildcards on the board (resp. delete them) by
336 shift+click, and you can select the relevant area for the pattern search by
337 clicking the right mouse key, and dragging.</p>
338
339 <p>The navigation keys above the board let you move around in the current game
340 record: one move back, one move forward, 10 moves back, 10 moves forward,
341 to the beginning resp. to the end of the current game. All these can also
342 be done by <b>using keys</b>: left, right, up, down, home, end.</p>
343
344 <p>In order to <b>clear the board</b>, use the "start" button.</p>
345
346 <p>If the current SGF file contains variations, you can switch between the
347 alternatives for the current move with the PageUp and PageDown keys.</p>
348
349 <IMG SRC="boardbuttons.jpg" ALIGN=RIGHT>
350
351 <p>Pass: Insert a pass move.</p>
352
353 <p>Game info: View/edit the game information which is stored in the root node
354 of the current game (black/white players, ranks, result, komi, date, rules,
355 etc.)</p>
356
357 <p>DATA: Open/withdraw the data window.</p>
358
359
360 <h3><a name="datawindow">The data window</a></h3>
361
362 <p>In the toolbar at the top you can choose which of the following frames you
363 actually want to see. For example, if your SGF files all contain only one
364 game each, you will not need the game list. Thus you can save some space on
365 your screen by hiding some of the components of the data window.</p>
366
367 <p><b>File list</b></p>
368
369 <p><img src="filelist.jpg" align=RIGHT>
370 This is a list of all SGF files that have been loaded during the current
371 session. The currently active file is highlighted; you can change that by
372 clicking on another item in the list. The buttons on the right let you
373 create a new file, open a file from disk, delete a file, or split a
374 collection. Deleting a file just means deleting it from this file list. The
375 file on your disk will not be deleted. Splitting a collection serves to
376 split an SGF file which contains several games into many files with one
377 game each. You will be asked for a filename, and the files will then be
378 saved under the names filename0.sgf, filename1.sgf, filename2.sgf, etc.</p>
379
380 <p>If changes have been made to a file after it has been saved, the file name
381 is preceded by a *. Kombilo will never ask you if you want to save the
382 changes, so you have to pay attention to the *, and save the files
383 yourself, if you want to keep the changes!</p>
384
385 <p><b>Game list</b></p>
386
387 <p><img src="gamelist.jpg" align=RIGHT>
388 This is a list of game records in the current SGF file. You can select
389 games by clicking on them, and change the order by drag and drop.
390 The buttons on the right let you create new games and delete games from the
391 list.</p>
392
393 <p><b>Game info</b></p>
394
395 <p>This shows part of the game information (names of players, result, date,
396 etc.) of the current game. In order to see the full game information, or to
397 edit it, use the "i" button above the go board.</p>
398
399 <p><b>Game tree</b></p>
400
401 <p><img src="gametree.jpg" align=RIGHT>
402 Here the tree structure of the current game is shown. Nodes with a
403 black/white move are shown black resp. white; others are red. Nodes with a
404 comment or a label on the board have a small blue dot in the center.<br>
405
406 The green mark shows the current move (i.e. it corresponds to the position
407 currently shown on the main board).<br>
408
409 By clicking on a node, you can go to the corresponding move.</p>
410
411 <p><b>Edit tools:</b></p>
412
413 <p>The first few buttons in this frame control the behavior of Ctrl-click on
414 <IMG SRC="edittools.jpg" ALIGN=RIGHT>
415 the board: you can either delete a stone or place/remove one of several types
416 of labels. Furthermore, there is a button to delete a node in the SGF tree and all
417 nodes following it, and there are three buttons to mirror/rotate the current
418 SGF file. Finally there is the button to enter/leave the
419 <a href="#guessmode">guess mode</a>.</p>
420
421 <p><b>Comments</b></p>
422
423 <p>In this window the comments which the SGF file contains for the current node are
424 displayed.</p>
425
426 <p><b>Kombilo: Search history</b></p>
427
428 <p>This frame contains a list of previous search patterns.
429 Click on one of the small boards to go back to the corresponding pattern
430 search (i.e. the pattern and the game list are restored to what they have
431 been right after the search).</p>
432
433 <p><img src="searchhistory.jpg" align=LEFT>
434 A right-click on one of the board brings up a small menu, which lets you
435 delete that entry, put the entry on hold resp. release it. Since storing
436 these patterns and the lists of results consumes quite some memory
437 (though less than it used to in previous versions),
438 on machines with little memory it is useful to set a
439 <a href="#maxnumsearches">maximum number of searches which are remembered</a>.
440 Entries on hold will not be affected by this automatical deletion. These
441 entries are marked by a blue frame.</p>
442
443 <div style="border:none; padding:3px; width:600px;
444 background-color:#99CCCC; z-index:1"> 
445 <a name="exportresults"><font size="4"><b>Export search results/current position/SGF</b></font>
446 </a></div>
447
448 <p>If you want to save some information on a pattern search, you
449 can use the 'Export search results' function in the File menu.
450 This will open a new window with a very simple text editor.
451 It will contain the search pattern, the search pattern with
452 the continuations, some statistical information on the search,
453 and the number of hits in each database.<br>
454
455 You can edit the information and in the end save the text to a
456 file. I would be interested in hearing your opinion if other
457 or additional information should be given, or if the information
458 should be presented in another format.<br>
459
460 Before the text editor opens, you will be asked if you want "ASCII" or
461 "Wiki" style output.
462 Usually you will choose 'ASCII', which produces plain text.
463 If you want to use the output for Sensei's Library, choose
464 'Wiki' instead.
465 You can also choose if all continuations,
466 or if only ten of them should be displayed. </p>
467
468 <p>The text editor has a button which lets you include the complete
469 current game list (names of players, etc.).
470
471 Similarly, you can "Export current position": this will open a text editor
472 with the current position. Again, you can choose "ASCII" or "Wiki" type. In
473 addition, Kombilo can put the next moves (up to 9 moves) on the board,
474 marked by the numbers 1 to 9.
475
476 Finally, you can also export the SGF source of the current game, in a text
477 editor.</p>
478
479 <div style="border:none; padding:3px; width:600px;
480 background-color:#99CCCC; z-index:1"> 
481 <a name="gamelistwindow"><font size="4"><b>The game list
482   window</b></font></a>
483 </div>
484
485 <p>At the top, the game list window shows the number of games currently in the
486 list, and the B/W winning percentages (the two numbers will often not
487 add up to 100% since there might be Jigo's, unfinished games etc.)
488
489 Right below the list, there is a frame where (part of) the game information
490 for the currently selected game in the list is shown (just click on a game
491 to select it).
492
493 Below that, there is a "notebook" with one sheet each for the pattern
494 search and the game info search.</p>
495
496 <p>In the pattern search window, there are several buttons and switches. <br>
497 <table border="0" width="100" cellpadding="6" align=RIGHT>
498 <tr><td><IMG SRC="backreset.jpg"></td></tr>
499 <tr><td><i>The 'back' and the 'reset' button.</i></td></tr>
500 </table>
501 The 'back' button jumps back to the previous search: the position on
502 the board is restored as well as the game list. (Previous search patterns
503 are also shown on small boards in the "History" frame of the data window.)<br>
504
505 The 'reset' button serves to reset the game list, i.e. to put all
506 the games from the currently active databases in it, again.</p>
507
508 <p>With the ABC button, you can display the labels showing the continuations
509 in the current search pattern (resp. remove them again).
510
511 The "1-cl." button toggles the <a name="oneclickmode">1-click mode</a>.
512 If this mode is active, every click on the board triggers a search. That
513 can be quite practical in order to play through joseki sequences, say.
514
515 If this mode is inactive, single clicks will just place a stone on the
516 board. In this case, you can place a stone and start a search at the same
517 time by double-clicking.
518
519 Below these buttons there are several buttons to control the behavior
520 of the pattern search engine.
521
522 Last but not least, in the game list window there is the
523 button to start a pattern search.</p>
524
525 <p>In the game info search window, you see entry fields for the search
526 criteria: white/black player, player, event, etc.
527
528 If you select the 'Referenced' option, only games with a reference to a
529 commentary will be shown.
530
531 You can make the game info search case insensitive by checking the
532 corresponding box.
533
534 The "clear" button clears all entries; the back and forward buttons restore
535 the entries from previous searches. Unlike the back button for pattern
536 searches, they do not change the game list. Last but not least, there is
537 the button to start a search; you can also start the search by pressing
538 Enter in one of the entry fields.
539
540 The <a name="gotofield">"Go to:" field</a>
541 <IMG SRC="gotogame.jpg" ALIGN=RIGHT>
542 makes it easy to find specific games in the game list quickly. In
543 order to use this feature you should ensure that the complete database is
544 ordered (you can always do that by unchecking the 'sort by database'
545 option; if the order of the databases is consistent with the sort
546 criterion, that might not be necessary, though). The 'Go to' entry always
547 works with respect to the current sort criterion.  Let's assume that you
548 sorted the database by filename. Then entering something in the 'Go to'
549 field will jump to the closest game in the game list the filename of which
550 starts with what you entered.
551
552 Finally there is the button to start a <a href="#sigsearch">signature
553 search</a>.</p>
554
555 <p><b><a name="references">References to commentaries</a></b></p>
556
557 <p>Kombilo has built in a list of references to game commentaries in the
558 english go literature. The games are referenced by the Dyer signature (a
559 signature assigned to the game which encodes the positions of move 20, 40,
560 60, 31, 51, 71, and which in practice characterizes a game uniquely); in
561 particular Kombilo does not contain the game records. If Kombilo recognizes
562 a game for which it has a reference, hte corresponding line in the game
563 list is preceded by a star, and a line which gives the actual reference is
564 appended to the game info which is shown when that line in the game list is
565 selected. (This is printed in blue, to show that it is not part of the game
566 info proper, but was added by Kombilo.)
567 <IMG SRC="references.jpg" ALIGN=LEFT vspace=10 hspace=10>
568 Currently, the list contains around 1200 references; in particular all but
569 10 issues of Go World, and most English books with game commentaries that I
570 know of.</p>
571
572 <p>The references are stored in the file "references" in the main Kombilo
573 directory. This file consists of two parts: first, a list of journals and
574 books for which references should be shown. The second list contains the
575 actual references, in the form 'signature journal/book issue'.</p>
576
577 <p>If you want only references to sources which you own to be shown, you can
578 delete those books/journals which you don't own from the
579 first list, without changing the second list, and then the corresponding
580 references will be ignored by Kombilo. Differentiating between
581 different issues of a journal is more complicated: in that case you have to
582 edit the second list, and delete all references to those issues which you
583 don't have.</p>
584
585 <p>Of course, additions to the list of references are very welcome.
586 I think it would make sense to add references to other journals, like the
587 American Go Journal, the British Go Journal, the Deutsche Go-Zeitung,
588 the Revue Francaise de Go, etc. I will probably start adding more
589 references to Go Review, myself. Your help to make the list more complete
590 would be appreciated. If you are interested, please contact me, so that we
591 can agree in which format you could send me the references, and to avoid
592 that any references are collected twice.
593 (Thanks to Uwe Richter for indexing 10 issues of Go World!)
594 </p>
595
596 <div style="border:none; padding:3px; width:600px;
597 background-color:#99CCCC; z-index:1"> 
598 <a name="analyzing"><font size="4"><b>Analyzing a game</b></font></a>
599 </div>
600
601 <p>If you want to analyze a game of your own, just load it into the main board with
602 the 'Open' command in the file menu (or use the 'Open' button next to
603 the file list in the data window). Use the navigation buttons to
604 navigate through the file, and search for patterns appearing in your game:
605 for the first few moves you may want to do a whole board search, in order
606 to see up to which point the fuseki
607 you played also occurs in professional games, and afterwards you have
608 to select an appropriate relevant region.</p>
609
610 <p>You can also load a fuseki or joseki dictionary
611 For example, Kombilo works quite well with Kogo's joseki dictionary.
612 To navigate all the variations, you should enable the 'Show next move'
613 option.</p>
614
615 <div style="border:none; padding:3px; width:600px;
616 background-color:#99CCCC; z-index:1"> 
617 <a name="gameinfosearch"><font size="4"><b>Game Info search</b></font></a>
618 </div>
619
620 <p>If you are looking for games by a particular player, from a particular
621 event or from a certain time period, you can use the
622 game info search. This is basically a text search in the SGF game records.</p>
623
624 <p><img src="isearch.jpg" align=RIGHT>
625 The games have to match all the requirements (Black Player, Event, ...)
626 simultaneously. The corresponding string does not have to occur at the
627 beginning of the data (i.e. if you enter 'Chikun' as player,
628 games where Cho Chikun plays will be found).<br>
629
630 The 'Anywhere' entry is simply a text search in the SGF file. This allows
631 you to search for the result (use 'RE[W' or 'RE[B'), for games which
632 have a game comment (use 'GC['), etc.</p>
633
634 <div style="border:none; padding:3px; width:600px;
635 background-color:#99CCCC; z-index:1"> 
636 <a name="signaturesearch"><font size="4"><b>Signature search</b></font></a>
637 </div>
638
639 <p><img src="ssearch.jpg" align=RIGHT>
640 In order to check for duplicates in the database, Kombilo
641 computes a modified
642 <a href="http://www.andromeda.com/people/ddyer/go/signature-spec.html">Dyer signature</a>
643  of every game in the database. The signature of a game is
644 given by the coordinates (in SGF format) of the moves 20, 40, 60,
645 31, 51, 71. This almost always characterizes a game uniquely.<br>
646
647 In order to detect games which differ only by a symmetry of the board,
648 Kombilo uses a symmetrized Dyer signature: the Dyer signatures
649 for the game and for all rotations/reflections of the game
650 are computed, and then the smallest of these (with respect to
651 the lexicographic order) is stored.<br>
652
653 You can also search for the signature. This might be useful
654 to see if a certain game is in the database if you have
655 the game record in some (foreign-language) book, say, and cannot read the
656 player's names.<br>
657
658 Press the 'signature search' button, and a window will
659 pop up, where you can enter the coordinates of the corresponding
660 moves. If you click on an intersection on the board,
661 the corresponding coordinates will be entered in the
662 currently active text entry below, and the next entry will be made
663 active. So you can enter the signature simply by clicking on
664 the places where moves 20, 40, ... were played. You can also omit
665 some of them (in most cases, two or three of the moves will
666 be enough to characterize a game uniquely).</p>
667
668 <div style="border:none; padding:3px; width:600px;
669 background-color:#99CCCC; z-index:1"> 
670 <a name="editDBlist"><font size="4"><b>The database list</b></font></a>
671 </div>
672
673 <p>For Kombilo, a database is just a directory with SGF files in it.
674 The database list is thus a list of directories. These contain
675 the SGF files in which Kombilo will search for a given pattern.<br>
676
677 Before you start working with Kombilo, you have to choose
678 the databases (i.e. you have to tell Kombilo where your SGF
679 files are). This is done in the 'Edit DB list' window
680 (available via the File menu). In this window, the list of
681 databases is shown, and you can</p>
682
683 <p><b>Add databases</b> This lets you choose a directory of SGF files
684 which is then added to Kombilo's database list. Because the SGF files
685 have to be translated into a format which is more suitable for
686 the pattern search, this takes some time.<br>
687 If you check the 'add subdir's recursively' option, then all
688 subdirectories (and their subdirectories ...) of the directory you
689 choose will be added, too.<br>
690
691 The optimal size (i.e. number of SGF files) of the databases
692 depends mostly on the amount of memory in your computer.
693 I recommend a size of  1000-2000 SGF files per
694 database; that should be fine on almost every system.
695 If you have a lot of memory, you can experiment with larger databases,
696 but the performance gains are usually not that big.
697 </p>
698
699 <p><b>Toggle normal/disabled</b>
700 If you want to temporarily exclude a database from some searches,
701 select it and use this button to set its status to 'disabled'.
702 It will then be marked as 'DISABLED' in the database list.
703 Its games will not show up anymore in the game list, and
704 will not be found by any search. Nevertheless, Kombilo's
705 database files written during the processing are still
706 available, and if you toggle the status back to 'normal',
707 you can use that database again without processing it again.
708 </p>
709
710 <p><b>Remove a database</b>
711 If you want to remove a database from Kombilo's list completely,
712 select it and press this button. The database files Kombilo
713 has written will
714 then be deleted. Of yourse, the SGF files themselves will not
715 be deleted (Kombilo will actually never change them.)
716 If you want to add this database again later, it will
717 have to be processed again.
718 </p>
719
720 <p><b>Reprocess a database</b>
721 If you made any changes to the SGF files in one of the
722 database directories (or added/deleted SGF files in there),
723 you should reprocess the database, so that the pattern search
724 really uses the information corresponding to the current
725 version of the SGF files.
726 </p>
727
728 <p><b>Stop processing</b>
729 If you chose to add a lot of subdirectories of some directory
730 at the same time (with the 'add subdir's recursively' option),
731 and see that the processing takes too long, you can interrupt
732 it with this button. The currently processed database will
733 be finished, and then the processing will stop.</p>
734
735 <p><b>Save messages</b> 
736 If there are errors in the SGF files, or if Kombilo
737 finds duplicates, a message is issued. The 'save messages'
738 button allows you to save these messages into a file,
739 such that you can look at them later again in order to
740 correct the errors. (After correcting any errors,
741 you should reprocess the corresponding databases.)</p>
742
743 <p>With Ctrl-click and Shift-click you <b>can select several databases</b> in the
744 list simultaneously. The "Toggle normal/disabled", "Remove" and "Reprocess"
745 buttons will then apply to all the selected databases.</p>
746
747 <p><b>Changing the order of the databases:</b>
748 You can use "drag and drop" for the items in the database list and thus
749 change the order of the databases. If you sort the game list per database,
750 the order of the databases will be reflected in the game list.</p>
751
752 <p><b>Processing options</b> 
753 You can choose to add all files with file names anding in .sgf, or files with
754 filenames ending in .mgt or .sgf, or to add all files in the concerning
755 directories.
756 Furthermore you can have all subdirectories of the chosen directory added, too.
757 Finally, you can specify a place where the Kombilo database files should be written.
758 The default is to write them to the same directory as the SGF files they
759 are associated to. (This choice has to be made before adding the database; it's not
760 possible to change it, later.)</p>
761
762 <p><b>Character encodings</b>
763
764 If your SGF files are not plain ASCII, but contain other characters, you have to
765 tell Kombilo in which way they are encoded in the file. The best way to do this
766 is with a CA[] tag in the root node of the SGF file (e.g. CA[gb2312]). However,
767 since there are many SGF files out there without the correct tag, you can also
768 tell Kombilo about the encoding when you process your SGF databases.</p>
769
770 <p>You have to know in which way your files are encoded, and all SGF files in the
771 directory which is to be processed have to have the same encoding. Choose the
772 encoding from the list, and choose what Kombilo should do with your SGF files.</p>
773
774 <p>- Do not change SGF: In this case, Kombilo will not touch your files. It will
775 remember the encoding of the files in this database however, so Kombilo
776 will know about the right encoding.</p>
777
778 <p>- Add CA tag: This will add a tag in the root node of the SGF file which contains
779 the encoding of this file. This is probably a good idea if you are sure that you
780 know the right encoding. (Right now, if you have Kombilo add a wrong CA tag, you
781 will have to remove it manually, because Kombilo will always obey a CA tag if
782 present.)</p>
783
784 <p>- Transcode to utf-8: In this case Kombilo will replace the SGF file with a
785 transcoded version. CA tag?!</p>
786
787 <p>Note: If a file already has a CA tag, Kombilo will not touch it.</p>
788
789 <p>In order to use codecs for asian languages (like gb2312 or big5 for Chinese,
790 shift-jis for Japanese or euc-kr for Korean), you have to install the cjkcodecs
791 package. (In the Windows installer, this is already included.)
792 This package may be available as a package in your Linux distribution; for
793 Mac OS X users it is available via fink. Otherwise,
794 you can get it at
795 <a href="http://cjkpython.berlios.de/">http://cjkpython.berlios.de/</a>.</p>
796
797
798 <div style="border:none; padding:3px; width:600px;
799 background-color:#99CCCC; z-index:1"> 
800 <a name="custommenus"><font size="4"><b>The custom menus</b></font></a>
801 </div>
802
803 <p>The custom menus can be used to add your own menu entries.
804 Upon selecting a menu entry, Kombilo can do a pattern search for some
805 pre-defined pattern and/or a game info search and/or open a html file in
806 your web browser. For example, you could create entries for fuseki or
807 joseki patterns, for players, or for titles.</p>
808
809
810 <p><img src="custommenus.jpg" align=RIGHT>
811 To edit the custom menus, select the corresponding entry in the Options
812 menu. You see a list of the currently existing menus, submenus and
813 entries. The first line with a * represents the Kombilo main menu. You can
814 add submenus or entries to the menus, or delete them.</p>
815
816 <p>When an entry is selected, you can 
817
818 <ul>
819 <li> Add pattern information by pressing the corresponding button. The pattern
820   (and search-relevant region, and the search options) will then be
821   associated with this menu entry).
822
823 <li> Add game info information by clicking the corresponding button.
824   The current entries in the game info search window will then be
825   associated with the current menu entry.
826
827 <li> Add a HTML file by entering the file name in the corresponding field, or
828   by browsing for a file.
829 </ul></p>
830
831
832 <div style="border:none; padding:3px; width:600px;
833 background-color:#99CCCC; z-index:1"> 
834 <a name="guessmode"><font size="4"><b>Guess next move mode</b></font></a>
835 </div>
836
837 <p><img src="guesswrong.jpg" hspace=10 vspace=10 align=LEFT>
838 One fun way to study go is to replay professional games by guessing the
839 next move. If you click on the corresponding button in the SGF edit toolbar
840 in the data window, you enter Kombilo's guess mode. That means that clicks
841 on the board will be interpreted as guesses - if it coincides with the next
842 move in the current SGF file, that move is played; otherwise no stone is