summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/Makefile.am3
-rw-r--r--doc/api/datetimewidgets.pngbin0 -> 1085 bytes
-rw-r--r--doc/api/kdatepicker.pngbin0 -> 3497 bytes
-rw-r--r--doc/blinken/Makefile.am4
-rw-r--r--doc/blinken/blinken1.pngbin0 -> 75058 bytes
-rw-r--r--doc/blinken/blinken2.pngbin0 -> 75925 bytes
-rw-r--r--doc/blinken/blinken_accesskeys.pngbin0 -> 73736 bytes
-rw-r--r--doc/blinken/blinken_helpbutton.pngbin0 -> 11236 bytes
-rw-r--r--doc/blinken/blinken_highscoresbutton.pngbin0 -> 885 bytes
-rw-r--r--doc/blinken/blinken_nickprompt.pngbin0 -> 9753 bytes
-rw-r--r--doc/blinken/blinken_quitbutton.pngbin0 -> 1804 bytes
-rw-r--r--doc/blinken/index.docbook361
-rw-r--r--doc/kalzium/Makefile.am4
-rw-r--r--doc/kalzium/gradient.pngbin0 -> 34017 bytes
-rw-r--r--doc/kalzium/index.docbook1206
-rw-r--r--doc/kalzium/infodialog_bohr.pngbin0 -> 26112 bytes
-rw-r--r--doc/kalzium/infodialog_chemicaldata.pngbin0 -> 86678 bytes
-rw-r--r--doc/kalzium/infodialog_energies.pngbin0 -> 49543 bytes
-rw-r--r--doc/kalzium/infodialog_misc.pngbin0 -> 40100 bytes
-rw-r--r--doc/kalzium/infodialog_overview.pngbin0 -> 23913 bytes
-rw-r--r--doc/kalzium/infodialog_picture.pngbin0 -> 162916 bytes
-rw-r--r--doc/kalzium/infodialog_spectrum.pngbin0 -> 34902 bytes
-rw-r--r--doc/kalzium/man-kalzium.1.docbook71
-rw-r--r--doc/kalzium/plottingdialog.pngbin0 -> 22030 bytes
-rw-r--r--doc/kalzium/quick-1.pngbin0 -> 36744 bytes
-rw-r--r--doc/kalzium/screenshot1.pngbin0 -> 62626 bytes
-rw-r--r--doc/kalzium/screenshot2.pngbin0 -> 35407 bytes
-rw-r--r--doc/kalzium/screenshot7.pngbin0 -> 296677 bytes
-rw-r--r--doc/kalzium/screenshoteqsolver.pngbin0 -> 27607 bytes
-rw-r--r--doc/kalzium/settings1.pngbin0 -> 16296 bytes
-rw-r--r--doc/kalzium/settings2.pngbin0 -> 16445 bytes
-rw-r--r--doc/kalzium/settings3.pngbin0 -> 13931 bytes
-rw-r--r--doc/kalzium/sidebar1.pngbin0 -> 5404 bytes
-rw-r--r--doc/kalzium/sidebar2.pngbin0 -> 9996 bytes
-rw-r--r--doc/kalzium/sidebar3.pngbin0 -> 14099 bytes
-rw-r--r--doc/kalzium/timeline.pngbin0 -> 77660 bytes
-rw-r--r--doc/kanagram/Makefile.am4
-rw-r--r--doc/kanagram/answer-highlight.pngbin0 -> 4184 bytes
-rw-r--r--doc/kanagram/general-settings.pngbin0 -> 34627 bytes
-rw-r--r--doc/kanagram/helpstates.pngbin0 -> 20753 bytes
-rw-r--r--doc/kanagram/index.docbook497
-rw-r--r--doc/kanagram/kanagram-hint.pngbin0 -> 8471 bytes
-rw-r--r--doc/kanagram/kanagram.pngbin0 -> 56713 bytes
-rw-r--r--doc/kanagram/main_overlay.svgzbin0 -> 1900 bytes
-rw-r--r--doc/kanagram/newstuff-dialog.pngbin0 -> 33877 bytes
-rw-r--r--doc/kanagram/newstuff-settings.pngbin0 -> 32345 bytes
-rw-r--r--doc/kanagram/standard-fonts.pngbin0 -> 20467 bytes
-rw-r--r--doc/kanagram/vocab-editor.pngbin0 -> 17625 bytes
-rw-r--r--doc/kanagram/vocab-settings.pngbin0 -> 39855 bytes
-rw-r--r--doc/kbruch/Makefile.am4
-rw-r--r--doc/kbruch/checked.pngbin0 -> 30829 bytes
-rw-r--r--doc/kbruch/compare.pngbin0 -> 28709 bytes
-rw-r--r--doc/kbruch/convert.pngbin0 -> 29991 bytes
-rw-r--r--doc/kbruch/factorize.pngbin0 -> 32061 bytes
-rw-r--r--doc/kbruch/gui_main.pngbin0 -> 28853 bytes
-rw-r--r--doc/kbruch/index.docbook553
-rw-r--r--doc/kbruch/man-kbruch.1.docbook56
-rw-r--r--doc/kbruch/reduced.pngbin0 -> 12004 bytes
-rw-r--r--doc/kbruch/settings.pngbin0 -> 51072 bytes
-rw-r--r--doc/keduca/Makefile.am4
-rw-r--r--doc/keduca/index.docbook334
-rw-r--r--doc/keduca/man-keduca.1.docbook67
-rw-r--r--doc/keduca/man-keducabuilder.1.docbook74
-rw-r--r--doc/keduca/screenshot.pngbin0 -> 25747 bytes
-rw-r--r--doc/kgeography/Makefile.am4
-rw-r--r--doc/kgeography/first-start1.pngbin0 -> 32261 bytes
-rw-r--r--doc/kgeography/first-start10.pngbin0 -> 10062 bytes
-rw-r--r--doc/kgeography/first-start11.pngbin0 -> 30123 bytes
-rw-r--r--doc/kgeography/first-start12.pngbin0 -> 11063 bytes
-rw-r--r--doc/kgeography/first-start2.pngbin0 -> 33667 bytes
-rw-r--r--doc/kgeography/first-start3.pngbin0 -> 28625 bytes
-rw-r--r--doc/kgeography/first-start4.pngbin0 -> 2664 bytes
-rw-r--r--doc/kgeography/first-start5.pngbin0 -> 6587 bytes
-rw-r--r--doc/kgeography/first-start6.pngbin0 -> 4475 bytes
-rw-r--r--doc/kgeography/first-start7.pngbin0 -> 711 bytes
-rw-r--r--doc/kgeography/first-start8.pngbin0 -> 8244 bytes
-rw-r--r--doc/kgeography/first-start9.pngbin0 -> 2309 bytes
-rw-r--r--doc/kgeography/index.docbook655
-rw-r--r--doc/kgeography/kgeography.pngbin0 -> 29484 bytes
-rw-r--r--doc/kgeography/river.pngbin0 -> 594 bytes
-rw-r--r--doc/kgeography/zoom.pngbin0 -> 33108 bytes
-rw-r--r--doc/khangman/Makefile.am4
-rw-r--r--doc/khangman/getnewstuff.pngbin0 -> 15507 bytes
-rw-r--r--doc/khangman/index.docbook929
-rw-r--r--doc/khangman/khangman1.pngbin0 -> 81658 bytes
-rw-r--r--doc/khangman/khangman2.pngbin0 -> 231485 bytes
-rw-r--r--doc/khangman/man-khangman.6.docbook63
-rw-r--r--doc/khangman/settings1.pngbin0 -> 15064 bytes
-rw-r--r--doc/khangman/settings2.pngbin0 -> 25434 bytes
-rw-r--r--doc/khangman/settings3.pngbin0 -> 15418 bytes
-rw-r--r--doc/kig/Makefile.am5
-rw-r--r--doc/kig/constructed_a_point.pngbin0 -> 35329 bytes
-rw-r--r--doc/kig/constructed_script_object.pngbin0 -> 35445 bytes
-rw-r--r--doc/kig/constructing_a_circle.pngbin0 -> 60836 bytes
-rw-r--r--doc/kig/constructing_a_circle_2.pngbin0 -> 35470 bytes
-rw-r--r--doc/kig/edit_types_dialog.pngbin0 -> 18472 bytes
-rw-r--r--doc/kig/index.docbook998
-rw-r--r--doc/kig/macro_wizard.pngbin0 -> 43426 bytes
-rw-r--r--doc/kig/macros_at_work.pngbin0 -> 83299 bytes
-rw-r--r--doc/kig/man-kig.1.docbook109
-rw-r--r--doc/kig/script_wizard.pngbin0 -> 47277 bytes
-rw-r--r--doc/kig/script_wizard_entering_code.pngbin0 -> 17683 bytes
-rw-r--r--doc/kig/scripting-api/Doxyfile.scripting-api.in1156
-rw-r--r--doc/kig/scripting-api/Makefile.am7
-rw-r--r--doc/kig/scripting-api/README14
-rw-r--r--doc/kig/scripting-api/bottom1.pngbin0 -> 168 bytes
-rw-r--r--doc/kig/scripting-api/bottom2.pngbin0 -> 6979 bytes
-rw-r--r--doc/kig/scripting-api/configure.in.in1
-rw-r--r--doc/kig/scripting-api/docheadergears.pngbin0 -> 9282 bytes
-rw-r--r--doc/kig/scripting-api/doxygen.css156
-rw-r--r--doc/kig/scripting-api/footer.html15
-rw-r--r--doc/kig/scripting-api/grad.pngbin0 -> 248 bytes
-rw-r--r--doc/kig/scripting-api/header.html34
-rw-r--r--doc/kig/scripting-api/headerbg.pngbin0 -> 493 bytes
-rw-r--r--doc/kig/selecting_objects.pngbin0 -> 35938 bytes
-rw-r--r--doc/kig/simple_locus_construction.pngbin0 -> 43260 bytes
-rw-r--r--doc/kig/test_run_macro.pngbin0 -> 44318 bytes
-rw-r--r--doc/kig/text_label_attaching.pngbin0 -> 36639 bytes
-rw-r--r--doc/kig/text_label_wizard.pngbin0 -> 60518 bytes
-rw-r--r--doc/kig/text_label_wizard__select_property.pngbin0 -> 61105 bytes
-rw-r--r--doc/kiten/Makefile.am4
-rw-r--r--doc/kiten/index.docbook521
-rw-r--r--doc/kiten/kiten1.pngbin0 -> 21505 bytes
-rw-r--r--doc/kiten/kiten2.pngbin0 -> 55497 bytes
-rw-r--r--doc/klatin/Makefile.am4
-rw-r--r--doc/klatin/README19
-rw-r--r--doc/klatin/adjectives.docbook278
-rw-r--r--doc/klatin/index.docbook502
-rw-r--r--doc/klatin/klatin-configuration.pngbin0 -> 17866 bytes
-rw-r--r--doc/klatin/klatin1.pngbin0 -> 17008 bytes
-rw-r--r--doc/klatin/klatin2.pngbin0 -> 20645 bytes
-rw-r--r--doc/klatin/klatin3.pngbin0 -> 18934 bytes
-rw-r--r--doc/klatin/klatin4.pngbin0 -> 22544 bytes
-rw-r--r--doc/klatin/nouns.docbook211
-rw-r--r--doc/klatin/numbers.docbook221
-rw-r--r--doc/klatin/pronouns.docbook331
-rw-r--r--doc/klatin/results.pngbin0 -> 23457 bytes
-rw-r--r--doc/klatin/verbs.docbook1278
-rw-r--r--doc/klettres/Makefile.am4
-rw-r--r--doc/klettres/index.docbook756
-rw-r--r--doc/klettres/klettres1.pngbin0 -> 168018 bytes
-rw-r--r--doc/klettres/klettres2.pngbin0 -> 167583 bytes
-rw-r--r--doc/klettres/klettres3.pngbin0 -> 66087 bytes
-rw-r--r--doc/klettres/klettres4.pngbin0 -> 173326 bytes
-rw-r--r--doc/klettres/klettres5.pngbin0 -> 24504 bytes
-rw-r--r--doc/klettres/klettres6.pngbin0 -> 12627 bytes
-rw-r--r--doc/kmplot/Makefile.am4
-rw-r--r--doc/kmplot/commands.docbook471
-rw-r--r--doc/kmplot/configuration.docbook237
-rw-r--r--doc/kmplot/credits.docbook47
-rw-r--r--doc/kmplot/dcop.docbook612
-rw-r--r--doc/kmplot/developer.docbook18
-rw-r--r--doc/kmplot/edu-logo.pngbin0 -> 3763 bytes
-rw-r--r--doc/kmplot/firststeps.docbook70
-rw-r--r--doc/kmplot/index.docbook98
-rw-r--r--doc/kmplot/install.docbook34
-rw-r--r--doc/kmplot/introduction.docbook56
-rw-r--r--doc/kmplot/kfkt.pngbin0 -> 341 bytes
-rw-r--r--doc/kmplot/ksys1.pngbin0 -> 190 bytes
-rw-r--r--doc/kmplot/ksys2.pngbin0 -> 180 bytes
-rw-r--r--doc/kmplot/ksys3.pngbin0 -> 181 bytes
-rw-r--r--doc/kmplot/main.pngbin0 -> 18598 bytes
-rw-r--r--doc/kmplot/man-kmplot.1.docbook66
-rw-r--r--doc/kmplot/reference.docbook339
-rw-r--r--doc/kmplot/settings-colors.pngbin0 -> 15092 bytes
-rw-r--r--doc/kmplot/settings-fonts.pngbin0 -> 14979 bytes
-rw-r--r--doc/kmplot/settings-scaling.pngbin0 -> 14942 bytes
-rw-r--r--doc/kmplot/settingsdlg.pngbin0 -> 29768 bytes
-rw-r--r--doc/kmplot/threeplots.pngbin0 -> 28607 bytes
-rw-r--r--doc/kmplot/using.docbook321
-rw-r--r--doc/kpercentage/Makefile.am4
-rw-r--r--doc/kpercentage/answer.pngbin0 -> 33596 bytes
-rw-r--r--doc/kpercentage/commands.docbook53
-rw-r--r--doc/kpercentage/credits.docbook35
-rw-r--r--doc/kpercentage/devel.docbook9
-rw-r--r--doc/kpercentage/edu-logo.pngbin0 -> 3763 bytes
-rw-r--r--doc/kpercentage/faq.docbook20
-rw-r--r--doc/kpercentage/help.pngbin0 -> 8480 bytes
-rw-r--r--doc/kpercentage/index.docbook102
-rw-r--r--doc/kpercentage/install.docbook21
-rw-r--r--doc/kpercentage/introduction.docbook13
-rw-r--r--doc/kpercentage/main.pngbin0 -> 57801 bytes
-rw-r--r--doc/kpercentage/using.docbook75
-rw-r--r--doc/kpercentage/welcome.pngbin0 -> 73195 bytes
-rw-r--r--doc/kstars/Makefile.am4
-rw-r--r--doc/kstars/aavso.pngbin0 -> 40409 bytes
-rw-r--r--doc/kstars/ai-contents.docbook45
-rw-r--r--doc/kstars/alpha.pngbin0 -> 1124 bytes
-rw-r--r--doc/kstars/altvstime.docbook90
-rw-r--r--doc/kstars/altvstime.pngbin0 -> 47011 bytes
-rw-r--r--doc/kstars/astroinfo.docbook48
-rw-r--r--doc/kstars/blackbody.docbook169
-rw-r--r--doc/kstars/blackbody.pngbin0 -> 53303 bytes
-rw-r--r--doc/kstars/calc-angdist.docbook43
-rw-r--r--doc/kstars/calc-angdist.pngbin0 -> 38735 bytes
-rw-r--r--doc/kstars/calc-apcoords.docbook41
-rw-r--r--doc/kstars/calc-apcoords.pngbin0 -> 49431 bytes
-rw-r--r--doc/kstars/calc-dayduration.docbook28
-rw-r--r--doc/kstars/calc-daylength.pngbin0 -> 43359 bytes
-rw-r--r--doc/kstars/calc-ecliptic.docbook43
-rw-r--r--doc/kstars/calc-ecliptic.pngbin0 -> 40870 bytes
-rw-r--r--doc/kstars/calc-eqgal.docbook34
-rw-r--r--doc/kstars/calc-eqgal.pngbin0 -> 43219 bytes
-rw-r--r--doc/kstars/calc-equinox.docbook42
-rw-r--r--doc/kstars/calc-equinox.pngbin0 -> 40319 bytes
-rw-r--r--doc/kstars/calc-geodetic.docbook43
-rw-r--r--doc/kstars/calc-geodetic.pngbin0 -> 43140 bytes
-rw-r--r--doc/kstars/calc-horizontal.docbook35
-rw-r--r--doc/kstars/calc-horizontal.pngbin0 -> 52309 bytes
-rw-r--r--doc/kstars/calc-julian.pngbin0 -> 37752 bytes
-rw-r--r--doc/kstars/calc-julianday.docbook41
-rw-r--r--doc/kstars/calc-planetcoords.docbook47
-rw-r--r--doc/kstars/calc-planetcoords.pngbin0 -> 52993 bytes
-rw-r--r--doc/kstars/calc-precess.docbook37
-rw-r--r--doc/kstars/calc-precess.pngbin0 -> 47941 bytes
-rw-r--r--doc/kstars/calc-sidereal.docbook32
-rw-r--r--doc/kstars/calc-sidereal.pngbin0 -> 42066 bytes
-rw-r--r--doc/kstars/calculator.docbook48
-rw-r--r--doc/kstars/cequator.docbook27
-rw-r--r--doc/kstars/color_indices.pngbin0 -> 79187 bytes
-rw-r--r--doc/kstars/colorandtemp.docbook174
-rw-r--r--doc/kstars/commands.docbook1192
-rw-r--r--doc/kstars/config.docbook379
-rw-r--r--doc/kstars/cpoles.docbook58
-rw-r--r--doc/kstars/credits.docbook75
-rw-r--r--doc/kstars/csphere.docbook28
-rw-r--r--doc/kstars/darkmatter.docbook119
-rw-r--r--doc/kstars/dcop.docbook229
-rw-r--r--doc/kstars/detaildialog.pngbin0 -> 47309 bytes
-rw-r--r--doc/kstars/details.docbook113
-rw-r--r--doc/kstars/devicemanager.pngbin0 -> 24131 bytes
-rw-r--r--doc/kstars/dumpmode.docbook67
-rw-r--r--doc/kstars/ecliptic.docbook58
-rw-r--r--doc/kstars/ellipticalgalaxies.docbook115
-rw-r--r--doc/kstars/equinox.docbook37
-rw-r--r--doc/kstars/faq.docbook274
-rw-r--r--doc/kstars/find.pngbin0 -> 19802 bytes
-rw-r--r--doc/kstars/fitsarea.pngbin0 -> 254968 bytes
-rw-r--r--doc/kstars/fitsviewer.docbook59
-rw-r--r--doc/kstars/flux.docbook69
-rw-r--r--doc/kstars/flux.pngbin0 -> 503353 bytes
-rw-r--r--doc/kstars/flux1.pngbin0 -> 761 bytes
-rw-r--r--doc/kstars/flux2.pngbin0 -> 2192 bytes
-rw-r--r--doc/kstars/fovdialog.pngbin0 -> 20574 bytes
-rw-r--r--doc/kstars/geocoords.docbook56
-rw-r--r--doc/kstars/geolocator.pngbin0 -> 145569 bytes
-rw-r--r--doc/kstars/greatcircle.docbook27
-rw-r--r--doc/kstars/horizon.docbook25
-rw-r--r--doc/kstars/hourangle.docbook33
-rw-r--r--doc/kstars/index.docbook299
-rw-r--r--doc/kstars/indi.docbook835
-rw-r--r--doc/kstars/indicapture.pngbin0 -> 28481 bytes
-rw-r--r--doc/kstars/indiclient.pngbin0 -> 24996 bytes
-rw-r--r--doc/kstars/indicontrolpanel.pngbin0 -> 39627 bytes
-rw-r--r--doc/kstars/indiscript.pngbin0 -> 112313 bytes
-rw-r--r--doc/kstars/install.docbook105
-rw-r--r--doc/kstars/jmoons.docbook38
-rw-r--r--doc/kstars/jmoons.pngbin0 -> 22216 bytes
-rw-r--r--doc/kstars/julianday.docbook58
-rw-r--r--doc/kstars/kepler2nd.pngbin0 -> 63373 bytes
-rw-r--r--doc/kstars/kepler3d.pngbin0 -> 406 bytes
-rw-r--r--doc/kstars/lambda_ex.pngbin0 -> 1101 bytes
-rw-r--r--doc/kstars/lambda_max.pngbin0 -> 762 bytes
-rw-r--r--doc/kstars/leapyear.docbook65
-rw-r--r--doc/kstars/lightcurve.pngbin0 -> 28787 bytes
-rw-r--r--doc/kstars/lightcurves.docbook176
-rw-r--r--doc/kstars/luminosity.docbook54
-rw-r--r--doc/kstars/luminosity.pngbin0 -> 490 bytes
-rw-r--r--doc/kstars/luminosity_ex.pngbin0 -> 629 bytes
-rw-r--r--doc/kstars/magnitude.docbook80
-rw-r--r--doc/kstars/man-celestrongps.1.docbook84
-rw-r--r--doc/kstars/man-fliccd.1.docbook86
-rw-r--r--doc/kstars/man-indiserver.1.docbook136
-rw-r--r--doc/kstars/man-lx200_16.1.docbook85
-rw-r--r--doc/kstars/man-lx200autostar.1.docbook85
-rw-r--r--doc/kstars/man-lx200classic.1.docbook85
-rw-r--r--doc/kstars/man-lx200generic.1.docbook85
-rw-r--r--doc/kstars/man-temma.1.docbook85
-rw-r--r--doc/kstars/man-v4ldriver.1.docbook85
-rw-r--r--doc/kstars/man-v4lphilips.1.docbook85
-rw-r--r--doc/kstars/meridian.docbook28
-rw-r--r--doc/kstars/newfov.pngbin0 -> 34513 bytes
-rw-r--r--doc/kstars/observinglist.docbook99
-rw-r--r--doc/kstars/observinglist.pngbin0 -> 52608 bytes
-rw-r--r--doc/kstars/parallax.docbook65
-rw-r--r--doc/kstars/popup.pngbin0 -> 18414 bytes
-rw-r--r--doc/kstars/precession.docbook54
-rw-r--r--doc/kstars/quicktour.docbook376
-rw-r--r--doc/kstars/retrograde.docbook44
-rw-r--r--doc/kstars/screen1.pngbin0 -> 124894 bytes
-rw-r--r--doc/kstars/scriptbuilder.docbook300
-rw-r--r--doc/kstars/scriptbuilder.pngbin0 -> 94720 bytes
-rw-r--r--doc/kstars/sidereal.docbook80
-rw-r--r--doc/kstars/skycoords.docbook152
-rw-r--r--doc/kstars/skymapdevice.pngbin0 -> 25034 bytes
-rw-r--r--doc/kstars/solarsys.docbook53
-rw-r--r--doc/kstars/solarsystem.pngbin0 -> 34315 bytes
-rw-r--r--doc/kstars/spiralgalaxies.docbook91
-rw-r--r--doc/kstars/star_colors.pngbin0 -> 119608 bytes
-rw-r--r--doc/kstars/stars.docbook134
-rw-r--r--doc/kstars/timezones.docbook44
-rw-r--r--doc/kstars/tools.docbook33
-rw-r--r--doc/kstars/utime.docbook49
-rw-r--r--doc/kstars/viewops.pngbin0 -> 65802 bytes
-rw-r--r--doc/kstars/wut.docbook58
-rw-r--r--doc/kstars/wut.pngbin0 -> 51799 bytes
-rw-r--r--doc/kstars/zenith.docbook31
-rw-r--r--doc/ktouch/Makefile.am5
-rw-r--r--doc/ktouch/color_options.pngbin0 -> 39853 bytes
-rw-r--r--doc/ktouch/general_options.pngbin0 -> 37789 bytes
-rw-r--r--doc/ktouch/index.docbook910
-rw-r--r--doc/ktouch/keyboard_options.pngbin0 -> 32344 bytes
-rw-r--r--doc/ktouch/main_screen_default_color.pngbin0 -> 35503 bytes
-rw-r--r--doc/ktouch/main_window_german.pngbin0 -> 25973 bytes
-rw-r--r--doc/ktouch/man-ktouch.1.docbook79
-rw-r--r--doc/ktouch/statistics_dialog.pngbin0 -> 39791 bytes
-rw-r--r--doc/ktouch/statistics_dialog_chart.pngbin0 -> 38091 bytes
-rw-r--r--doc/ktouch/training_options.pngbin0 -> 39066 bytes
-rw-r--r--doc/kturtle/Makefile.am3
-rw-r--r--doc/kturtle/forward.pngbin0 -> 17797 bytes
-rw-r--r--doc/kturtle/getting-started.docbook147
-rw-r--r--doc/kturtle/glossary.docbook173
-rw-r--r--doc/kturtle/index.docbook243
-rw-r--r--doc/kturtle/mainwindow.pngbin0 -> 27605 bytes
-rw-r--r--doc/kturtle/mainwindow_flower_nrs.pngbin0 -> 45281 bytes
-rw-r--r--doc/kturtle/print.pngbin0 -> 23274 bytes
-rw-r--r--doc/kturtle/programming-reference.docbook822
-rw-r--r--doc/kturtle/translator-guide.docbook128
-rw-r--r--doc/kturtle/using-kturtle.docbook590
-rw-r--r--doc/kturtle/wrapping.pngbin0 -> 31697 bytes
-rw-r--r--doc/kverbos/Makefile.am4
-rw-r--r--doc/kverbos/anterior.pngbin0 -> 1088 bytes
-rw-r--r--doc/kverbos/borrar.pngbin0 -> 947 bytes
-rw-r--r--doc/kverbos/cancelar.pngbin0 -> 995 bytes
-rw-r--r--doc/kverbos/cerrar.pngbin0 -> 907 bytes
-rw-r--r--doc/kverbos/continuar.pngbin0 -> 1165 bytes
-rw-r--r--doc/kverbos/corregir.pngbin0 -> 1165 bytes
-rw-r--r--doc/kverbos/editar.pngbin0 -> 986 bytes
-rw-r--r--doc/kverbos/index.docbook954
-rw-r--r--doc/kverbos/input.pngbin0 -> 2521 bytes
-rw-r--r--doc/kverbos/letters.pngbin0 -> 1491 bytes
-rw-r--r--doc/kverbos/limpiar.pngbin0 -> 1358 bytes
-rw-r--r--doc/kverbos/limpiarpagina.pngbin0 -> 1322 bytes
-rw-r--r--doc/kverbos/mainscreen-leer.pngbin0 -> 48226 bytes
-rw-r--r--doc/kverbos/mainscreen1.pngbin0 -> 54101 bytes
-rw-r--r--doc/kverbos/newverb.pngbin0 -> 36259 bytes
-rw-r--r--doc/kverbos/options.pngbin0 -> 34395 bytes
-rw-r--r--doc/kverbos/result.pngbin0 -> 29118 bytes
-rw-r--r--doc/kverbos/siguiente.pngbin0 -> 1185 bytes
-rw-r--r--doc/kverbos/solucion.pngbin0 -> 1460 bytes
-rw-r--r--doc/kverbos/times.pngbin0 -> 4017 bytes
-rw-r--r--doc/kverbos/type.pngbin0 -> 4875 bytes
-rw-r--r--doc/kverbos/username.pngbin0 -> 11953 bytes
-rw-r--r--doc/kverbos/verblist.pngbin0 -> 44063 bytes
-rw-r--r--doc/kvoctrain/Makefile.am29
-rw-r--r--doc/kvoctrain/art-query-dlg.pngbin0 -> 9471 bytes
-rw-r--r--doc/kvoctrain/comp-query-dlg.pngbin0 -> 8788 bytes
-rw-r--r--doc/kvoctrain/docprop1-dlg.pngbin0 -> 8397 bytes
-rw-r--r--doc/kvoctrain/docprop2-dlg.pngbin0 -> 8632 bytes
-rw-r--r--doc/kvoctrain/docprop6-dlg.pngbin0 -> 7295 bytes
-rw-r--r--doc/kvoctrain/entry1-dlg.pngbin0 -> 16997 bytes
-rw-r--r--doc/kvoctrain/entry2-dlg.pngbin0 -> 10930 bytes
-rw-r--r--doc/kvoctrain/entry3-dlg.pngbin0 -> 10420 bytes
-rw-r--r--doc/kvoctrain/entry4-dlg.pngbin0 -> 13024 bytes
-rw-r--r--doc/kvoctrain/entry5-dlg.pngbin0 -> 10558 bytes
-rw-r--r--doc/kvoctrain/entry6-dlg.pngbin0 -> 13367 bytes
-rw-r--r--doc/kvoctrain/entry7-dlg.pngbin0 -> 759 bytes
-rw-r--r--doc/kvoctrain/get-new-stuff.pngbin0 -> 16104 bytes
-rw-r--r--doc/kvoctrain/index.docbook2777
-rw-r--r--doc/kvoctrain/lang1-dlg.pngbin0 -> 11092 bytes
-rw-r--r--doc/kvoctrain/mainview.pngbin0 -> 20897 bytes
-rw-r--r--doc/kvoctrain/man-spotlight2kvtml.1.docbook71
-rw-r--r--doc/kvoctrain/mu-query-dlg.pngbin0 -> 10306 bytes
-rw-r--r--doc/kvoctrain/options1-dlg.pngbin0 -> 20675 bytes
-rw-r--r--doc/kvoctrain/options2-dlg.pngbin0 -> 22121 bytes
-rw-r--r--doc/kvoctrain/options3-dlg.pngbin0 -> 21454 bytes
-rw-r--r--doc/kvoctrain/options4-dlg.pngbin0 -> 18888 bytes
-rw-r--r--doc/kvoctrain/options5-dlg.pngbin0 -> 24355 bytes
-rw-r--r--doc/kvoctrain/options6-dlg.pngbin0 -> 23214 bytes
-rw-r--r--doc/kvoctrain/options7-dlg.pngbin0 -> 23299 bytes
-rw-r--r--doc/kvoctrain/profiles.pngbin0 -> 4901 bytes
-rw-r--r--doc/kvoctrain/pron-dlg.pngbin0 -> 7570 bytes
-rw-r--r--doc/kvoctrain/query-dlg.pngbin0 -> 10039 bytes
-rw-r--r--doc/kvoctrain/quick-1.pngbin0 -> 10102 bytes
-rw-r--r--doc/kvoctrain/quick-2.pngbin0 -> 17538 bytes
-rw-r--r--doc/kvoctrain/quick-3.pngbin0 -> 15329 bytes
-rw-r--r--doc/kvoctrain/quick-4.pngbin0 -> 25223 bytes
-rw-r--r--doc/kvoctrain/quick-5.pngbin0 -> 9387 bytes
-rw-r--r--doc/kvoctrain/stat1-dlg.pngbin0 -> 7287 bytes
-rw-r--r--doc/kvoctrain/stat2-dlg.pngbin0 -> 8327 bytes
-rw-r--r--doc/kvoctrain/syn-query-dlg.pngbin0 -> 9215 bytes
-rw-r--r--doc/kvoctrain/verb-query-dlg.pngbin0 -> 18940 bytes
-rw-r--r--doc/kwordquiz/Makefile.am5
-rw-r--r--doc/kwordquiz/index.docbook1523
-rw-r--r--doc/kwordquiz/kwq-dlg-characters.pngbin0 -> 19650 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-configure-appearance.pngbin0 -> 24478 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-configure-characters.pngbin0 -> 36614 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-configure-editor.pngbin0 -> 23083 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-configure-quiz.pngbin0 -> 31670 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-languages.pngbin0 -> 9888 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-print-exam.pngbin0 -> 9493 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-print-flashcard.pngbin0 -> 5147 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-print-list.pngbin0 -> 16483 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-print-type.pngbin0 -> 34213 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-rowscolumns.pngbin0 -> 10663 bytes
-rw-r--r--doc/kwordquiz/kwq-dlg-sort.pngbin0 -> 12666 bytes
-rw-r--r--doc/kwordquiz/kwq-editor.pngbin0 -> 29301 bytes
-rw-r--r--doc/kwordquiz/kwq-flashcard.pngbin0 -> 44614 bytes
-rw-r--r--doc/kwordquiz/kwq-multiple.pngbin0 -> 57890 bytes
-rw-r--r--doc/kwordquiz/kwq-qanda.pngbin0 -> 46424 bytes
410 files changed, 31075 insertions, 0 deletions
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 00000000..5c0b20ee
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,3 @@
+KDE_LANG = en
+KDE_DOCS = AUTO
+SUBDIRS = $(AUTODIRS)
diff --git a/doc/api/datetimewidgets.png b/doc/api/datetimewidgets.png
new file mode 100644
index 00000000..8cd6803f
--- /dev/null
+++ b/doc/api/datetimewidgets.png
Binary files differ
diff --git a/doc/api/kdatepicker.png b/doc/api/kdatepicker.png
new file mode 100644
index 00000000..1d32affe
--- /dev/null
+++ b/doc/api/kdatepicker.png
Binary files differ
diff --git a/doc/blinken/Makefile.am b/doc/blinken/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/blinken/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/blinken/blinken1.png b/doc/blinken/blinken1.png
new file mode 100644
index 00000000..20d98fbb
--- /dev/null
+++ b/doc/blinken/blinken1.png
Binary files differ
diff --git a/doc/blinken/blinken2.png b/doc/blinken/blinken2.png
new file mode 100644
index 00000000..d1f7ff58
--- /dev/null
+++ b/doc/blinken/blinken2.png
Binary files differ
diff --git a/doc/blinken/blinken_accesskeys.png b/doc/blinken/blinken_accesskeys.png
new file mode 100644
index 00000000..a0559cc3
--- /dev/null
+++ b/doc/blinken/blinken_accesskeys.png
Binary files differ
diff --git a/doc/blinken/blinken_helpbutton.png b/doc/blinken/blinken_helpbutton.png
new file mode 100644
index 00000000..b226bc88
--- /dev/null
+++ b/doc/blinken/blinken_helpbutton.png
Binary files differ
diff --git a/doc/blinken/blinken_highscoresbutton.png b/doc/blinken/blinken_highscoresbutton.png
new file mode 100644
index 00000000..df9e0561
--- /dev/null
+++ b/doc/blinken/blinken_highscoresbutton.png
Binary files differ
diff --git a/doc/blinken/blinken_nickprompt.png b/doc/blinken/blinken_nickprompt.png
new file mode 100644
index 00000000..3a250b1f
--- /dev/null
+++ b/doc/blinken/blinken_nickprompt.png
Binary files differ
diff --git a/doc/blinken/blinken_quitbutton.png b/doc/blinken/blinken_quitbutton.png
new file mode 100644
index 00000000..4bdd3368
--- /dev/null
+++ b/doc/blinken/blinken_quitbutton.png
Binary files differ
diff --git a/doc/blinken/index.docbook b/doc/blinken/index.docbook
new file mode 100644
index 00000000..5446703a
--- /dev/null
+++ b/doc/blinken/index.docbook
@@ -0,0 +1,361 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY blinken "<application>blinKen</application>">
+ <!ENTITY kappname "&blinken;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &blinken; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Danny</firstname>
+<surname>Allen</surname>
+<affiliation>
+<address>&Danny.Allen.mail;</address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2005</year>
+<holder>&Danny.Allen;</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2005-08-20</date>
+<releaseinfo>1.0</releaseinfo>
+
+<abstract>
+<para>
+&blinken; brings a retro electronic memory game from the 1970's to &kde;.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>blinKen</keyword>
+<keyword>game</keyword>
+<keyword>child</keyword>
+<keyword>electronic</keyword>
+<keyword>retro</keyword>
+</keywordset>
+
+</bookinfo>
+
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&blinken; is based on an electronic game released in 1978, which challenges players to remember sequences of increasing length. On the face of the device, there are 4 different color buttons, each one with their own distinctive sound. These buttons light up randomly, creating the sequence that the player must then recall. If the player is successful in remembering the sequence of lights in the correct order, they advance to the next stage, where an identical sequence with one extra step is presented. If they are incorrect, the game is lost, and the player must start again from the beginning.
+
+The goal is to get a high score - each step in the sequence is worth one point, so correct entry of a sequence of 8 lights is worth 8 points on the high score table.
+</para>
+
+</chapter>
+
+
+<chapter id="using-blinken">
+<title>Using &blinken;</title>
+
+<para>
+Here is the screen that is presented on startup of &blinken;, showing the general interface to the application. Most of the screen is taken up by the <interface>device</interface>, with the <interface>4 colored buttons</interface>, with the device controls (<interface>score counter</interface>, <guibutton>Start</guibutton> button, &etc;) in the center of the screen. The current status of the application is displayed on the <interface>piece of paper</interface> under the device. In the corners of the application, there are 3 buttons:
+</para>
+
+<screenshot>
+<screeninfo>Here is the screen that is presented on startup of &blinken;</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blinken1.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Here is the screen that is presented on startup of &blinken;</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The <guiicon>Highscores</guiicon> button <action>opens a dialog that displays the <guilabel>Highscores table</guilabel></action> for each of the 3 difficulty levels (the <guilabel>Highscores</guilabel> table can also be accessed by <action>clicking on the <interface>score counter</interface>)</action>:
+</para>
+
+<screenshot>
+<screeninfo><guiicon>Highscores</guiicon> button</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blinken_highscoresbutton.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase><guiicon>Highscores</guiicon> button</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The <guiicon>Quit</guiicon> button <action>closes the application</action>:
+</para>
+
+<screenshot>
+<screeninfo><guiicon>Quit</guiicon> button</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blinken_quitbutton.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase><guiicon>Quit</guiicon> button</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The <guiicon>Help</guiicon> button is special, in that it <action>reveals 3 sub-buttons</action>. These buttons are shown when the <guiicon>Help</guiicon> button is <action>hovered over</action>, and provide access to the <guilabel>&blinken; handbook</guilabel> (this document), and the <guilabel>About &blinken;</guilabel> and <guilabel>About &kde;</guilabel> dialogs:
+</para>
+
+<screenshot>
+<screeninfo><guiicon>Help</guiicon> button</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blinken_helpbutton.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase><guiicon>Help</guiicon> button</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+To become familiar with the workings of the game, you can interact with the <interface>colored buttons</interface> whilst on the main screen. The buttons will illuminate and produce a tone upon being pressed.
+</para>
+
+<note><para>You need to have &arts; support in kdelibs to hear the sounds.</para></note>
+<sect1 id="starting-game">
+<title>Starting a Game</title>
+
+<para>
+Once you are familiar with the workings of the application, a game can be started by pressing the <guibutton>Start</guibutton> button in the center of the screen. This <quote>powers on</quote> the device, as shown by the illuminated <interface>score counter</interface>. You can then <action>choose the difficulty level</action> that you want to attempt:
+ </para>
+
+<screenshot>
+<screeninfo>Select difficulty level</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blinken2.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Select difficulty level</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+There are 3 levels in &blinken;:
+</para>
+
+<itemizedlist>
+<listitem>
+<para>
+Level 1 is the easiest level, as it provides the longest time break between each sequence playback.
+</para>
+</listitem>
+<listitem>
+<para>
+Level 2 is the intermediate level. It is identical to the previous level, but has a smaller time break between each sequence playback.
+</para>
+</listitem>
+<listitem>
+<para>
+Level ? is the most difficult level of &blinken;. It takes the timings from Level 2, but each sequence is totally random, rather than following on from the previous sequence, as in the standard game type.
+</para>
+</listitem>
+</itemizedlist>
+
+</sect1>
+
+<sect1 id="enter-highscore">
+<title>Entering a New Highscore</title>
+
+<para>
+If you are lucky enough to get a highscore, it will be entered into the <guilabel>Highscores</guilabel> table. A dialog will ask for a name to associate with your score in the table:
+</para>
+
+<screenshot>
+<screeninfo>Highscore nickname prompt dialog</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blinken_nickprompt.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Highscore nickname prompt dialog</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+Only 5 scores are kept for each level, so try not to be disappointed if you don't make it!
+</para>
+
+</sect1>
+
+
+<sect1 id="playing-tips">
+<title>Playing Tips</title>
+<para>
+&blinken; is the ultimate memory game, though you need not possess the ultimate memory to be successful. These tips will help you in your pursuit of the best score:
+</para>
+
+<itemizedlist>
+<listitem>
+<para>
+If you have PC speakers, turn them on with the sound at a good level so that you can hear the tones alongside seeing the flashing lights.
+</para>
+</listitem>
+<listitem>
+<para>
+Experiment with both the mouse and <link
+linkend="accessibility">keyboard</link> interaction methods, to see which one suites your memory best.
+</para>
+</listitem>
+<listitem>
+<para>
+Try remembering the sequence as a list of colors.
+</para>
+</listitem>
+<listitem>
+<para>
+Try remembering the sequence as positions on the screen.
+</para>
+</listitem>
+</itemizedlist>
+
+</sect1>
+</chapter>
+
+
+<chapter id="accessibility">
+<title>Accessibility Options</title>
+
+<para>
+To allow &blinken; to be more easily enjoyed by certain users, there are several accessibility options built into &blinken;.
+</para>
+<para>
+To view and modify the accessibility options of &blinken;, press the <keycap>&Ctrl;</keycap> key (whilst a game is not in progress):
+</para>
+
+<screenshot>
+<screeninfo>&blinken; access keys</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blinken_accesskeys.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&blinken; access keys</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+To return to the game screen, press the <keycap>&Ctrl;</keycap> key again.
+</para>
+
+<para>
+Alongside use of the mouse, &blinken; also allows the user to operate the game using the keyboard.
+</para>
+
+<para>
+The keys are <keycap>1</keycap>, <keycap>2</keycap>, <keycap>3</keycap>, <keycap>4</keycap> by default.
+</para>
+
+<para>
+To change the mapping of any button, click it using the mouse. It will then be highlighted, waiting for input. Press the desired key on the keyboard to change the currently assigned key.
+</para>
+
+<para>
+There are other options available in the middle of the window: <interface>sounds</interface> and <interface>font</interface>.
+</para>
+
+<itemizedlist>
+<listitem>
+<para>
+By unchecking the <interface>sounds</interface> checkbox, the &blinken; sound effects will be suppressed.
+</para>
+</listitem>
+<listitem>
+<para>
+By unchecking the <interface>font</interface> checkbox, a standard font will be used for status text instead of the default handwriting font.
+</para>
+</listitem>
+</itemizedlist>
+
+</chapter>
+
+
+<chapter id="credits">
+<title>Credits and License</title>
+
+<para>
+&blinken;
+</para>
+<para>
+Program copyright 2005 Albert Astals Cid <email>tsdgeos@terra.es</email> and &Danny.Allen; &Danny.Allen.mail;
+</para>
+<para>
+Contributors:
+</para>
+<itemizedlist>
+<listitem>
+<para>"Steve" font: Steve Jordi
+<email>steve@sjordi.com</email>
+</para>
+</listitem>
+</itemizedlist>
+
+<para>
+Documentation copyright 2005 &Danny.Allen; &Danny.Allen.mail;
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL;
+&underGPL;
+
+</chapter>
+
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-blinken">
+<title>How to obtain &blinken;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+
+// vim:ts=2:sw=2:tw=78:noet:noai
+-->
diff --git a/doc/kalzium/Makefile.am b/doc/kalzium/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/kalzium/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/kalzium/gradient.png b/doc/kalzium/gradient.png
new file mode 100644
index 00000000..60f3f245
--- /dev/null
+++ b/doc/kalzium/gradient.png
Binary files differ
diff --git a/doc/kalzium/index.docbook b/doc/kalzium/index.docbook
new file mode 100644
index 00000000..a3338882
--- /dev/null
+++ b/doc/kalzium/index.docbook
@@ -0,0 +1,1206 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY kappname "&kalzium;"><!-- replace kapp here -->
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+ ]>
+
+ <book lang="&language;">
+
+ <bookinfo>
+ <title>The &kalzium; Handbook</title>
+
+ <authorgroup>
+ <author>
+ <firstname>Carsten</firstname>
+ <surname>Niehaus</surname>
+ <affiliation>
+ <address><email>&Carsten.Niehaus.mail;</email></address>
+ </affiliation>
+ </author>
+
+ <!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+ </authorgroup>
+
+ <copyright>
+ <year>2001</year>
+ <year>2002</year>
+ <year>2004</year>
+ <year>2005</year>
+ <holder>&Carsten.Niehaus;</holder>
+ </copyright>
+
+ <copyright>
+ <year>2005</year>
+ <holder>&Anne-Marie.Mahfouf;</holder>
+ </copyright>
+
+ <legalnotice>&FDLNotice;</legalnotice>
+
+ <date>2005-08-21</date>
+ <releaseinfo>1.4.2pre4</releaseinfo>
+
+ <abstract>
+ <para>&kalzium; is a program which shows you the Periodic Table of
+ Elements. You can use &kalzium; to search for information about the elements or to learn facts about the
+ periodic table.</para>
+ </abstract>
+
+ <keywordset>
+ <keyword>KDE</keyword>
+ <keyword>education</keyword>
+ <keyword>elements</keyword>
+ <keyword>chemistry</keyword>
+ <keyword>education</keyword>
+ <keyword>kalzium</keyword>
+ </keywordset>
+
+ </bookinfo>
+
+ <chapter id="introduction">
+ <title>Introduction</title>
+
+ <para>&kalzium; provides you with all kinds of information about the
+ Periodic Table of the Elements. You can lookup
+ lots of information about the elements and also use visualizations to
+ show them. It is free and licensed
+ under the &GNU; Public License.
+ </para>
+
+ <para>
+ You can visualize the Periodic Table of the Elements by groups, blocks, acidic
+ behavior, families, crystal structure or different states of matter. You can
+ plot data for a range of elements for properties like the density or the
+ atomic mass. You can go back in time and see what elements were known at a
+ given date. You can also calculate the molecular mass of molecules.
+ </para>
+
+ </chapter>
+
+ <chapter id="quick-start">
+ <title>&kalzium; quick start guide</title>
+
+ <para>Here is &kalzium; the first time you run it, either from the K menu->Edutainment->Science->&kalzium; or with <keycombo action="simul">&Alt;<keycap>F2</keycap></keycombo> and entering <command>kalzium</command> into the field.</para>
+ <screenshot>
+ <screeninfo>&kalzium; main window</screeninfo>
+ <mediaobject>
+ <imageobject><imagedata fileref="quick-1.png" format="PNG" /></imageobject>
+ <textobject><phrase>&kalzium; main window</phrase></textobject>
+ </mediaobject>
+ </screenshot>
+
+ <para>
+ &kalzium; is divided in a sidebar on the left (in red, 1) and the table view (in blue, 2) which shows the elements of the periodic table. The standard menubar allows you to choose what you want to display and the status bar reports facts. You can hide the sidebar using the <menuchoice> <guimenu>View</guimenu> <guimenuitem>Hide Sidebar</guimenuitem> </menuchoice> menu.
+ </para>
+
+ <para>
+ When you move the mouse cursor on an element of the table, a tooltip appears with a picture of this element if available, its number and its mass. In the sidebar is displayed an overview of the current element in the <guilabel>Overview</guilabel> tab.
+ </para>
+
+ <para>You can disable the tooltips using the <menuchoice> <guimenu>View</guimenu> <guimenuitem>Hide tooltip</guimenuitem> </menuchoice> menu.
+ </para>
+
+ <para>
+ You can choose several views for the table: display the elements per families, per groups, per crystal structure, depending on their acidic behaviour, &etc;. You can change all that in the menubar in the <menuchoice> <guimenu>View</guimenu> <guimenuitem>Look</guimenuitem> </menuchoice> menu.
+ </para>
+ <para>
+ If you want to know facts about a precise element, click on it in the table and the information dialog will be displayed.
+ </para>
+
+ <screenshot>
+ <screeninfo>Information dialog</screeninfo>
+ <mediaobject>
+ <imageobject><imagedata fileref="infodialog_overview.png" format="PNG" /></imageobject>
+ <textobject><phrase>Information dialog</phrase></textobject>
+ </mediaobject>
+ </screenshot>
+
+ <para>You can plot data using the <menuchoice> <guimenu>Tools</guimenu>
+ <guimenuitem>Plot Data</guimenuitem> </menuchoice> menu. You choose
+ what you want to plot on the y -axis and a range of elements to plot
+ taht for on the x-axis. The screenshot below shows the mass of the
+ elements 1 to 111. </para>
+
+ <screenshot>
+ <screeninfo>The Plot Data dialog</screeninfo>
+ <mediaobject>
+ <imageobject><imagedata fileref="plottingdialog.png" format="PNG" /></imageobject>
+ <textobject><phrase>The Plot Data dialog</phrase></textobject>
+ </mediaobject>
+ </screenshot>
+
+ <para>The Glossary (<menuchoice> <guimenu>Tools</guimenu> <guimenuitem>Glossary</guimenuitem> </menuchoice>) explains the most important chemical words and shows you pictures of the most common tools along with an explanation.</para>
+
+ <screenshot>
+ <screeninfo>The Glossary</screeninfo>
+ <mediaobject>
+ <imageobject><imagedata fileref="screenshot7.png" format="PNG" /></imageobject>
+ <textobject><phrase>The Glossary</phrase></textobject>
+ </mediaobject>
+ </screenshot>
+
+ </chapter>
+ <chapter id="using-kalzium">
+ <title>Using &kalzium;</title>
+
+ <sect1 id="foo"><title>Overview of Kalziums usage</title>
+ <para>Here are some screenshots of &kalzium; in action:</para>
+
+ <para>&kalzium; is very easy to use. It is specially designed for students of all ages to use as a small and quick database.</para>
+ <screenshot>
+ <screeninfo>&kalzium; main screen, immediately after the first start</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshot1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; main screen</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect1>
+ <sect1 id="info-dlg">
+ <title>The information dialog</title>
+ <para>The information dialog is accessed by clicking with the &LMB; on
+ any element. It is available only in the
+ <guilabel>Overview</guilabel> mode or when the sidebar is hidden.
+ This is the place to get information about an element. With the
+ buttons at the bottom of the dialog or with the use of the mousewheel
+ you can change the element which is displayed without closing the
+ dialog.</para>
+ <sect2 id="infodialog_overview">
+ <title>Overview</title>
+ <para>In the <guilabel>Overview</guilabel> you will find the most
+ important information about the element. In the middle you see the
+ symbol of the Element with it's elemental number in the top left.
+ The bottom-left corner displays the name of the element while the
+ bottom-right corner shows the most important oxidation-stages and,
+ below that, the elemental weight</para>
+ <screenshot>
+ <screeninfo>&kalzium; information dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="infodialog_overview.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; information dialog</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="infodialog_picture">
+ <title>Picture</title>
+ <para>The <guilabel>Picture</guilabel> tab displays a picture of the element when available.</para>
+ <screenshot>
+ <screeninfo>&kalzium; information dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="infodialog_picture.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; information dialog</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="infodialog_orbits">
+ <title>Bohr Orbitals</title>
+ <para>The <guilabel>Atom Model</guilabel> tab displays the atomic
+ shells. Every orbit stands for a atomic shell and every yellow
+ circle represents an electron.</para>
+ <screenshot>
+ <screeninfo>&kalzium; information dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="infodialog_bohr.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; information dialog</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="infodialog_chemical">
+ <title>Chemical Data</title>
+ <para>
+ The <guilabel>Chemical Data</guilabel> tab presents some atomic
+ data. The first entry is the <guilabel>Orbital structure</guilabel>. The next is the
+ <guilabel>density</guilabel>.
+ </para>
+ <para> Depending on the data available in &kalzium; you will see
+ different radii of the element. The covalent radius is the radius
+ of a non charged atom of the element in a molecule. The could for
+ example be the O-H-distance in Water. The atomic radius is the
+ radius of an elemental atom, &eg; not bound to anything. The van der
+ Waals-radius is defined as the distance of two atoms of the same
+ sort in two equal molecules, for example two carbon-atoms in
+ propane. The last possible radius is the ionic radius including its
+ charge.</para>
+ <para>The mass of an element is the avarage mass of all isotopes in
+ relation to their percentage.
+ </para>
+ <para>
+ Some elements have information about their isotopes.
+ <variablelist>
+
+ <varlistentry>
+ <term>Mass</term>
+ <listitem><para>
+ The mass of this isotope.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Neutrons</term>
+ <listitem><para>
+ The number of neutrons this isotope has.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Percentage</term>
+ <listitem><para>
+ The percentage of atoms occuring that are of this isotope type. Also called abundance.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Half-life period</term>
+ <listitem><para>
+ Only unstable isotopes have a half-life period. It is defined as the time in which half the isotopes decay.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Energy and Mode of Decay</term>
+ <listitem><para>
+
+ Some isotopes are known to emit particle radiation under the process of radioactive decay. Each decay transformation has a
+ typical energy release, which is listed along with the mode of decay.
+
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Spin and parity</term>
+ <listitem><para>
+ The spin of the nucleus and its parity.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Magnetic Moment</term>
+ <listitem><para>
+ The magnetic dipolemoment of the nucleus. Measured in units of the nuclear magneton.
+ </para></listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ </para>
+ <screenshot>
+ <screeninfo>&kalzium; information dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="infodialog_chemicaldata.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; information dialog</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="infodialog_misc">
+ <title>Miscellaneous</title>
+ <para>The <guilabel>Miscellaneous</guilabel> tab tells you other
+ informations about the current element, including when it was
+ discovered, its abundance in crustal rocks, its mean mass (the mass per neutron) and the origin of the name.</para>
+ <screenshot>
+ <screeninfo>&kalzium; information dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="infodialog_misc.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; information dialog</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="infodialog_energies">
+ <title>Chemical Energies</title>
+ <para>The <guilabel>Energies</guilabel> tab tells you about different
+ energy facts related to the element.</para>
+ <screenshot>
+ <screeninfo>&kalzium; information dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="infodialog_energies.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; information dialog</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="infodialog_spectrum">
+ <title>Spectrum</title>
+ <para>If &kalzium; has information about the emission-spectrum of
+ the current element, this page will display it at the top. The displayed wavelength increases from left to
+ right. The wavelength between 380
+ nanometer (nm) and 780 nm have the colors of the visual light
+ spectrum. For example, 550 nm is the color green.</para>
+ <para>There are two ways to zoom into the spectrum. With the
+ spinboxes displayed right below the spectrum, the first and the last
+ wavelength of the spectrum are defined. Furthermore, you can hold
+ the left mouse button pressed whilst moving the mouse cursor over the spectrum. You will see
+ the area in which &kalzium; would zoom into marked with a white line.
+ Once you release the left mouse button, &kalzium; will zoom into
+ the selected area.</para>
+ <para>At the bottom of the page is the <guilabel>Export Spectrum as
+ Image</guilabel>-button. With it you can save the current spectrum
+ as an image file.</para>
+ <para>To zoom out of the view by 10% press the right mouse button while
+ the mouse is inside the spectrum.</para>
+ <screenshot>
+ <screeninfo>&kalzium; information dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="infodialog_spectrum.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kalzium; information dialog</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ </sect1>
+
+ <!-- Don't have empty chapters if possible - comment them out until -->
+ <sect1 id="numeration">
+ <title>Numeration</title>
+
+ <para>The numeration is the way of numbering the 18 groups of the periodic table. You can change the numeration to
+ <guilabel>IUPAC</guilabel>, <guilabel>old IUPAC</guilabel> or
+ <guilabel>CAS</guilabel>, or you can switch it off entirely.</para>
+
+ <para>The following options in the <guimenu>View</guimenu> <guimenuitem>Numeration</guimenuitem> menu can be used to change the numeration shown:
+ <itemizedlist>
+ <listitem><para>
+ <guimenuitem>No Numeration</guimenuitem>: if this option is active, no period-numeration will be
+ in effect.</para></listitem>
+ <listitem><para>
+ <guimenuitem>Show IUPAC</guimenuitem> (default): the <acronym>IUPAC</acronym> is the <firstterm>International
+ Union of Pure and Applied Chemistry</firstterm>. This is an
+ organization which defines most of the standards for chemical
+ concerns. The new IUPAC system numbers each column with Arabic numbers from 1 (one) through 18 (eighteen).
+ </para></listitem>
+ <listitem><para>
+ <guimenuitem>Show CAS</guimenuitem>: the <acronym>CAS</acronym> is the <firstterm>Chemical Abstracts
+ Service</firstterm>. In the CAS system the letters A and B were designated to main group elements (A) and transition elements (B). Though the <acronym>IUPAC</acronym> numeration
+ is the official, the <acronym>CAS</acronym> numeration is what is still
+ used in classrooms and laboratories.</para></listitem>
+ <listitem><para>
+ <guimenuitem>Show Old IUPAC</guimenuitem>: the old IUPAC system labeled columns with Roman numerals followed by either the letter <quote>A</quote> or <quote>B</quote>. Columns were numbered such that columns one through seven were numbered <quote>IA</quote> through <quote>VIIA</quote>, columns 8 through 10 were labeled <quote>VIIIA</quote>, columns 11 through 17 were numbered <quote>IB</quote> through <quote>VIIB</quote> and column 18 was numbered <quote>VIII</quote>. Because of the confusion the old IUPAC and the CAS system created, the IUPAC adopted their new system.
+ </para></listitem>
+ </itemizedlist>
+ </para>
+
+ </sect1>
+
+ <sect1 id="colors">
+ <title>Color schemes</title>
+
+ <para>&kalzium; can show you which elements are where with regard to their Periodic <quote>block</quote> and <quote>group</quote>, their behavior with acid and which state of matter (&ie; solid/liquid/vapor) they are in at a given temperature.</para>
+
+ <para>Color schemes can be changed in the <guimenu>View</guimenu> <guimenuitem>Look</guimenuitem> menu. </para>
+ <itemizedlist>
+ <listitem><para>
+ <guimenuitem>No Color Scheme</guimenuitem>: all the elements have the same color. You can change the default color by choosing <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kalzium;...</guimenuitem>
+ </menuchoice> and going to the <guilabel>Colors</guilabel> tab.
+ </para></listitem>
+ <listitem><para>
+ <guimenuitem>Show Groups</guimenuitem>: displays a color for each group. A group is a vertical column in the periodic table of the elements. There are 18 groups in the standard periodic table. Elements in a group have similar configurations of their valence shell electrons, which gives them similar properties.
+ </para></listitem>
+ <listitem><para>
+ <guimenuitem>Show Blocks</guimenuitem>: displays a color for each block.
+ </para></listitem>
+ <listitem><para>
+ <guimenuitem>Show Acid Behavior</guimenuitem>: represents each acidic behaviour with a different color.
+ </para></listitem>
+ <listitem><para>
+ <guimenuitem>Show Family</guimenuitem>: represents each of the nine families with a color.
+ </para></listitem>
+ <listitem><para>
+ <guimenuitem>Show Crystal Structures</guimenuitem>: colors each element depending on its crystal structure.
+ </para></listitem>
+ <listitem>
+ <para><guimenuitem>Gradient</guimenuitem></para>
+ <para>The gradient views displays the elements according to a property you can select below and with a gradient colored scheme. The elements for which the data is not available are displayed in grey.</para>
+ <screenshot>
+ <screeninfo>Gradient for Covalent Radius</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="gradient.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Gradient for Covalent Radius</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ <itemizedlist>
+ <listitem><para><guimenuitem>Atomic Radius</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>Covalent Radius</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>van der Waals Radius</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>Atomic Mass</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>Density</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>Boiling Point</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>Melting Point</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>Electronegativity</guimenuitem>
+ </para></listitem>
+ <listitem><para><guimenuitem>Electron Affinity</guimenuitem>
+ </para></listitem>
+ </itemizedlist>
+ </listitem>
+ </itemizedlist>
+
+ </sect1>
+ <sect1 id="tools">
+ <title>Tools</title>
+ <sect2 id="glossary">
+ <title>Glossary</title>
+ <para>The Glossary gives you definitions of the most used tools in chemistry as well as some knowledge data. On the left side of the windows you can see the tree of items. On top, there are chemical terms, below that there is a second tree of labaratory-tools. </para>
+ <para>On the top of the widget you can see a searchbar. If you type in the bar the trees will be adjusted immediately. The small button left of the searchbar will clear it.
+ </para>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshot7.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>the <quote>Glossary</quote></phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="plot_data">
+ <title>Plot Data</title>
+ <para>
+ The <guimenuitem>Plot Data</guimenuitem> dialog allows you to plot some information about elements. The X-axis represents a range of elements (from one number to a higher number). You set this range using the <guilabel>First Element</guilabel> and <guilabel>Last Element</guilabel> fields on the dialog. The display does not change until you click on the <guibutton>Plot</guibutton> button.
+ </para>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="plottingdialog.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>the <quote>Plot Data</quote> Dialog</phrase>
+ </textobject>
+ <caption><para>&kalzium; can plot some data about a range of elements.</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+ <sect2 id="eq_solver">
+ <title>Equation Solver</title>
+ <para>
+ The <guimenuitem>Equation Solver</guimenuitem> enables the user to solve chemical equations. This is an example:
+ </para>
+ <blockquote><para>aH2O + bCO2 -> cH2CO3</para></blockquote>
+ <para>
+ The computed equation will be displayed on the right side of the window. As you can see in the first example you can also define the value of one or more coefficients. The other coefficients will be ajusted. Furthermore, it is possible to use brackets around elements or electronic charges as shown in the last two examples.</para>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshoteqsolver.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>the <quote>Equation Solver</quote> Dialog</phrase>
+ </textobject>
+ <caption><para>&kalzium; can solve chemical equations</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+
+ <sect2 id="sidebar">
+ <title>Sidebar</title>
+ <sect3 id="overview">
+ <title>Overview</title>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="sidebar1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Overview</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ <para>The Overview tab is the first one and it shows you an overview of the element the mouse is over.</para>
+ <para>
+ <variablelist>
+
+ <varlistentry>
+ <term>Full red circle</term>
+ <listitem><para>
+ Element is essential to all species
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Full green circle</term>
+ <listitem><para>
+ Element is essential for at least one species
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Full blue circle</term>
+ <listitem><para>
+ Biological function is proposed
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Red outer circle</term>
+ <listitem><para>
+ Element is essential for humans
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Blue outer circle</term>
+ <listitem><para>
+ Element is probably essential for humans
+ </para></listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ </para>
+
+ </sect3>
+ <sect3 id="calculate">
+ <title>Calculate</title>
+ <para>The Calculate tab is the second in the sidebar. It alows you to calculate molecules weights.</para>
+ <para>You are first presented with the following:</para>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="sidebar2.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Calculate</phrase>
+ </textobject>
+ <caption><para>The calculator when it is started.</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+ <para>In this example, the mass of ethyl alcohol (regular
+ alcohol) H<subscript>3</subscript>CH<subscript>2</subscript>OH will be calculated. For this, simply enter the formula in the lineedit
+ and either press enter or click on the
+ <guibutton>Calc</guibutton>-button. The result of the calculation
+ will be displayed below.</para>
+ <para>As you can see you will get several answers. For one, on top
+ of the widget you will see the empirical formula,
+ H<subscript>6</subscript>C<subscript>1</subscript>O<subscript>1</subscript>. At the
+ bottom of the widget there is a list of elements and their
+ abundance in the entered molecule and finally the mass of the
+ molecule.</para>
+ <para>The tooltip of the widget will show you the relativ masses of
+ the elements in the molecule. In this example, the six hydrogen
+ have only 17.76% of the mass of the molecule.</para>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="sidebar3.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>The result of the calculation.</phrase>
+ </textobject>
+ <caption><para>The result of the calculation.</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+ </sect3>
+ <sect3 id="timeline">
+ <title>Timeline</title>
+ <para>The Timeline feature allows you to explore the elements of the
+ set time period. This is great for getting a feel for how the PSE
+ evolved over time, as more and more elements were discovered. If you move the slider you will
+ notice that some elements disappear if you move it to the left and
+ reappear if you move it to the right. Furthermore the number will
+ change constantly.</para>
+
+ <para>
+ The number represents the date you are looking at. If you move the slider
+ to &eg; 1891 you will only see the elements which where known in the
+ year 1891.
+ </para>
+
+ <para>
+ You will notice that some elements are not even shown in the current year.
+ This is because some of the elements have not been discovered yet but are
+ predicted to exist.
+ </para>
+
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="timeline.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>the <quote>Timeline</quote></phrase>
+ </textobject>
+ <caption><para>The PSE back in time (elements known in 1891)</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+ </sect3>
+
+ <sect3 id="state_of_matter">
+ <title>State of Matter</title>
+ <para>
+ With the State of Matter function, you can choose a temperature and view the state of each element at that temperature. You can easily visualize how many elements and what elements are, for example, solid at a given temperature. So you can learn that almost all are solid at very low temperatures and that most are liquid or even vaporous at high temperatures.
+ </para>
+ <screenshot>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshot2.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>the <quote>State of Matter</quote> Dialog</phrase>
+ </textobject>
+ <caption><para>&kalzium; can show you which elements are
+ solid/liquid/vaporous at a given temperature.</para>
+ </caption>
+ </mediaobject>
+ </screenshot>
+ </sect3>
+ <sect3 id="show_hide_legend">
+ <title>Show/Hide Legend</title>
+ <para>The Show/Hide Legend action allows you to display the legend for the scheme you are in (Groups, Blocks, Acid Behavior). The legend is displayed by default but if you hide it, it will stay hidden until you choose to show it. &kalzium; will keep this setting in its configuration file, so that the next time you run it, the setting will be as you left it.
+ </para>
+ </sect3>
+
+ </sect2>
+ </sect1>
+ </chapter>
+
+ <chapter id="config">
+ <title>Configuring &kalzium;</title>
+
+ <para>
+ &kalzium; has many configuration options, which you can access by opening
+ the configuration dialog by selecting <menuchoice> <guimenu>Settings</guimenu> <guimenuitem>Configure
+ &kalzium;...</guimenuitem> </menuchoice> from the menu.</para>
+
+ <screenshot>
+ <screeninfo>Configure &kalzium; Dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Colors</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ <para>In the <guilabel>Colors</guilabel> tab, you can change the different
+ colors for each scheme.
+ </para>
+ <screenshot>
+ <screeninfo>Configure &kalzium; Dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings2.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Units</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ <para>In the <guilabel>Units</guilabel> tab, you can
+ choose the units. You can select if you prefer kJ/mol by default or
+ you can choose eV. The temperature is in Kelvin by default but you can
+ change to degrees Celsius, degrees Fahrenheit, Reamur or Rankine. The
+ last two units are not often used today but can still be found
+ sometimes. Furthermore, they teach us, that temperatures are nothing
+ absolut. It doesn't matter, which unit you are using.
+ </para>
+ <screenshot>
+ <screeninfo>Configure &kalzium; Dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings3.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Miscellaneous</phrase>
+ </textobject>
+ </mediaobject>
+ </screenshot>
+ <para>In the <guilabel>Miscellaneous</guilabel> tab, you can find other options not
+ related with the previous tabs.
+ </para>
+
+ </chapter>
+
+ <chapter id="commands">
+ <title>Command Reference</title>
+
+ <sect1 id="kalzium-mainwindow">
+ <title>Menus and shortcut keys</title>
+
+ <sect2>
+ <title>The <guimenu>File</guimenu> Menu</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Quit</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Quits</action> &kalzium;</para></listitem>
+ </varlistentry>
+ </variablelist>
+
+ </sect2>
+
+ <sect2>
+ <title>The <guimenu>View</guimenu> Menu</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Numeration</guisubmenu>
+ <guimenuitem>No Numeration</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> no numeration scheme</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Numeration</guisubmenu>
+ <guimenuitem>Show IUPAC</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the IUPAC numeration</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Numeration</guisubmenu>
+ <guimenuitem>Show CAS</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the CAS numeration</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Numeration</guisubmenu>
+ <guimenuitem>Show Old IUPAC</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the Old IUPAC numeration</para></listitem>
+ </varlistentry>
+
+ <!-- second entry -->
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>No Color Scheme</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> no color scheme</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Show Groups</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the groups of elements</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Show Blocks</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the four blocks of
+ elements</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Show Acid Behaviour</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the acidic behaviour</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Show Families</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the familes of
+ elements</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Show Crystal Structures</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> crystal structures</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Atomic Radius</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements atomic radius</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Covalent Radius</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements covalent radius</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>van der Waals Radius</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements van der Waals radius</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Atomic Mass</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements atomic radius</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Density</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements atomic radius</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Boiling Point</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements boiling point</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Melting Point</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements melting point</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Electronegativity</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements electronegativity</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guisubmenu>Look</guisubmenu>
+ <guimenuitem>Gradient</guimenuitem>
+ <guimenuitem>Electron Affinity</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the elements electron affinity</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guimenuitem>Show/Hide Legend</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Toggle</action> the legend view</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guimenuitem>Show/Hide Tooltip</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Toggle</action> tooltip display on elements</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>View</guimenu>
+ <guimenuitem>Show/Hide Sidebar</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Toggle</action> the Sidebar</para></listitem>
+ </varlistentry>
+ </variablelist>
+
+ </sect2>
+
+
+ <sect2>
+ <title>The <guimenu>Tools</guimenu> Menu</title>
+ <variablelist>
+ <!--<varlistentry>
+ <term><menuchoice>
+ <guimenu>Miscellaneous</guimenu>
+ <guimenuitem>Show/Hide Timeline</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the Timeline Slider</para></listitem>
+ </varlistentry>-->
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Plot Data</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Open</action> the Plot Data dialog</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Glossary</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Open</action> the Glossary</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Show Equationsolver</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Open</action> the Equationsolver dialog</para></listitem>
+ </varlistentry>
+ <!--<varlistentry>
+ <term><menuchoice>
+ <guimenu>Miscellaneous</guimenu>
+ <guimenuitem>Show/Hide State Of Matter</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the State Of Matter dialog</para></listitem>
+ </varlistentry>-->
+ </variablelist>
+
+ </sect2>
+
+ <sect2>
+ <title>The <guimenu>Settings</guimenu> Menu</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Show/Hide Toolbar</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Toggle</action> the Main Toolbar</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Show/Hide Statusbar</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Toggle</action> the Statusbar</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure Shortcuts...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Configure</action> the keyboard keys you use to access the different actions.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure Toolbars...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Configure</action> the items you want to put in the toolbar
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure &kalzium;...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para><action>Display</action> the &kalzium; settings dialog
+ </para></listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ </sect2>
+
+ <sect2>
+ <title>The <guimenu>Help</guimenu> Menu</title>
+ &help.menu.documentation;
+ </sect2>
+ </sect1>
+ </chapter>
+
+ <chapter id="faq">
+ <title>Questions and Answers</title>
+
+ <qandaset id="faqlist">
+ <qandaentry>
+ <question>
+ <para>Will I ever have to pay for &kalzium;?</para>
+ </question>
+ <answer>
+ <para>No, never. But the author always welcomes a nice mail or a
+ DVD as a <quote>Thank You</quote>. &kalzium; is licensed
+ under the <ulink url="http://www.gnu.org/licenses/licenses.html#GPL">GPL</ulink>, so you will never have to pay for this program.</para>
+ </answer>
+ </qandaentry>
+ <qandaentry>
+
+ <question>
+ <para>Will there ever be a &Windows; version?</para>
+ </question>
+ <answer>
+ <para>No, at the moment not, but you can download the source and make
+ your own &Windows; version. It should not be a big problem, because it is
+ written with Trolltech &Qt; libs. But what do you need &Windows; for?
+ Get the latest &Linux;, and live on the edge.</para>
+
+ </answer>
+ </qandaentry>
+
+ </qandaset>
+ </chapter>
+
+ <chapter id="contribute">
+ <title>How can I contribute?</title>
+
+ <qandaset id="tasks">
+ <qandaentry>
+
+ <question>
+ <para>Support me with data.</para>
+ </question>
+
+ <answer>
+ <para>In the world of science, the progress is quite fast. If you
+ ever find an incorrect or missing value, please drop me
+ an email.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question>
+ <para>Find some bugs or give some suggestions</para>
+ </question>
+ <answer>
+ <para>
+ If you find any bugs in the program, or have a few suggestions for
+ improvements, please let me know at <email>&Carsten.Niehaus.mail;</email>.
+ </para>
+ </answer>
+
+ </qandaentry>
+ </qandaset>
+ </chapter>
+
+ <chapter id="credits">
+
+ <title>Credits and License</title>
+ <para>&kalzium;</para>
+ <para>
+ Program Copyright, 2001-2005 &Carsten.Niehaus;
+ <email>&Carsten.Niehaus.mail;</email>
+ </para>
+
+ <para> Contributors:</para>
+
+ <itemizedlist>
+ <listitem><para>
+ Pino Toscano <email>toscano.pino@tiscali.it</email>
+ </para></listitem>
+ </itemizedlist>
+ <itemizedlist>
+ <listitem><para>
+ Thomas Nagy <email>tnagy2^8@yahoo.fr</email>
+ </para></listitem>
+ </itemizedlist>
+ <!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+ &underFDL; <!-- FDL: do not remove -->
+ &underGPL; <!-- GPL License -->
+
+ </chapter>
+
+ <appendix id="installation">
+ <title>Installation</title>
+
+ <sect1 id="getting-kalzium">
+ <title>How to obtain &kalzium;</title>
+
+ &install.intro.documentation;
+
+ </sect1>
+
+ <sect1 id="requirements">
+ <title>Requirements</title>
+
+ <para>
+ &kalzium; itself can be found on <ulink
+ url="http://edu.kde.org/kalzium">The &kalzium; home page</ulink> and
+ is part of the &kde;-Edu project</para>
+
+ <para>You can find a list of changes in the file
+ <filename>ChangeLog</filename> in the distribution of
+ &kalzium;.</para>
+ </sect1>
+
+ <sect1 id="compilation">
+ <title>Compilation and Installation</title>
+
+ &install.compile.documentation;
+
+ </sect1>
+
+ </appendix>
+
+ &documentation.index;
+ </book>
+ <!--
+ Local Variables:
+ mode: sgml
+ sgml-minimize-attributes:nil
+ sgml-general-insert-case:lower
+ sgml-indent-step:0
+ sgml-indent-data:nil
+ End:
+
+ // vim:ts=2:sw=2:tw=78:noet:noai
+ -->
diff --git a/doc/kalzium/infodialog_bohr.png b/doc/kalzium/infodialog_bohr.png
new file mode 100644
index 00000000..94033433
--- /dev/null
+++ b/doc/kalzium/infodialog_bohr.png
Binary files differ
diff --git a/doc/kalzium/infodialog_chemicaldata.png b/doc/kalzium/infodialog_chemicaldata.png
new file mode 100644
index 00000000..684b6c81
--- /dev/null
+++ b/doc/kalzium/infodialog_chemicaldata.png
Binary files differ
diff --git a/doc/kalzium/infodialog_energies.png b/doc/kalzium/infodialog_energies.png
new file mode 100644
index 00000000..4f2430ae
--- /dev/null
+++ b/doc/kalzium/infodialog_energies.png
Binary files differ
diff --git a/doc/kalzium/infodialog_misc.png b/doc/kalzium/infodialog_misc.png
new file mode 100644
index 00000000..70add93e
--- /dev/null
+++ b/doc/kalzium/infodialog_misc.png
Binary files differ
diff --git a/doc/kalzium/infodialog_overview.png b/doc/kalzium/infodialog_overview.png
new file mode 100644
index 00000000..2ca86859
--- /dev/null
+++ b/doc/kalzium/infodialog_overview.png
Binary files differ
diff --git a/doc/kalzium/infodialog_picture.png b/doc/kalzium/infodialog_picture.png
new file mode 100644
index 00000000..39b83e67
--- /dev/null
+++ b/doc/kalzium/infodialog_picture.png
Binary files differ
diff --git a/doc/kalzium/infodialog_spectrum.png b/doc/kalzium/infodialog_spectrum.png
new file mode 100644
index 00000000..4cf0bd18
--- /dev/null
+++ b/doc/kalzium/infodialog_spectrum.png
Binary files differ
diff --git a/doc/kalzium/man-kalzium.1.docbook b/doc/kalzium/man-kalzium.1.docbook
new file mode 100644
index 00000000..ebb1acab
--- /dev/null
+++ b/doc/kalzium/man-kalzium.1.docbook
@@ -0,0 +1,71 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<author><personname><firstname>Ben</firstname><surname>Burton</surname></personname></author>
+<date>April 8, 2003</date>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>kalzium</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>kalzium</command></refname>
+<refpurpose>A &kde; based chemistry teaching tool</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>kalzium</command>
+
+<group><option>KDE Generic Options</option></group>
+<group><option>Qt Generic Options</option></group>
+
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+
+<para>&kalzium; is a program which shows you the Periodic System of
+the Elements (PSE). You can use &kalzium; to search for information
+about the elements or to learn facts about the PSE.</para>
+
+<para>&kalzium; provides you with all kinds of information about the
+PSE. You can look up lots of information about the elements and also
+use visualisations to show them.</para>
+
+<para>This package is part of the official KDE edutainment module. </para>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kalzium">help:/kalzium</ulink> (either enter this
+<acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kalzium</parameter></userinput>).</para>
+
+
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+
+<para>&kalzium; was written by &Carsten.Niehaus;
+&Carsten.Niehaus.mail; and
+<personname><firstname>Tomisalve</firstname><surname>Gountchev</surname></personname>
+<email>tomi@idiom.com</email>.</para>
+
+<para>This manual page was prepared by <personname><firstname>Ben</firstname><surname>Burton</surname></personname></para>
+
+</refsect1>
+
+</refentry>
diff --git a/doc/kalzium/plottingdialog.png b/doc/kalzium/plottingdialog.png
new file mode 100644
index 00000000..a92b6abd
--- /dev/null
+++ b/doc/kalzium/plottingdialog.png
Binary files differ
diff --git a/doc/kalzium/quick-1.png b/doc/kalzium/quick-1.png
new file mode 100644
index 00000000..b9a313f3
--- /dev/null
+++ b/doc/kalzium/quick-1.png
Binary files differ
diff --git a/doc/kalzium/screenshot1.png b/doc/kalzium/screenshot1.png
new file mode 100644
index 00000000..a5de98b7
--- /dev/null
+++ b/doc/kalzium/screenshot1.png
Binary files differ
diff --git a/doc/kalzium/screenshot2.png b/doc/kalzium/screenshot2.png
new file mode 100644
index 00000000..e614228c
--- /dev/null
+++ b/doc/kalzium/screenshot2.png
Binary files differ
diff --git a/doc/kalzium/screenshot7.png b/doc/kalzium/screenshot7.png
new file mode 100644
index 00000000..b7a47b6d
--- /dev/null
+++ b/doc/kalzium/screenshot7.png
Binary files differ
diff --git a/doc/kalzium/screenshoteqsolver.png b/doc/kalzium/screenshoteqsolver.png
new file mode 100644
index 00000000..be950662
--- /dev/null
+++ b/doc/kalzium/screenshoteqsolver.png
Binary files differ
diff --git a/doc/kalzium/settings1.png b/doc/kalzium/settings1.png
new file mode 100644
index 00000000..1920abd3
--- /dev/null
+++ b/doc/kalzium/settings1.png
Binary files differ
diff --git a/doc/kalzium/settings2.png b/doc/kalzium/settings2.png
new file mode 100644
index 00000000..51612b55
--- /dev/null
+++ b/doc/kalzium/settings2.png
Binary files differ
diff --git a/doc/kalzium/settings3.png b/doc/kalzium/settings3.png
new file mode 100644
index 00000000..903003c1
--- /dev/null
+++ b/doc/kalzium/settings3.png
Binary files differ
diff --git a/doc/kalzium/sidebar1.png b/doc/kalzium/sidebar1.png
new file mode 100644
index 00000000..15cb01e8
--- /dev/null
+++ b/doc/kalzium/sidebar1.png
Binary files differ
diff --git a/doc/kalzium/sidebar2.png b/doc/kalzium/sidebar2.png
new file mode 100644
index 00000000..a09f7b77
--- /dev/null
+++ b/doc/kalzium/sidebar2.png
Binary files differ
diff --git a/doc/kalzium/sidebar3.png b/doc/kalzium/sidebar3.png
new file mode 100644
index 00000000..f99d9b2f
--- /dev/null
+++ b/doc/kalzium/sidebar3.png
Binary files differ
diff --git a/doc/kalzium/timeline.png b/doc/kalzium/timeline.png
new file mode 100644
index 00000000..bf2efc83
--- /dev/null
+++ b/doc/kalzium/timeline.png
Binary files differ
diff --git a/doc/kanagram/Makefile.am b/doc/kanagram/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/kanagram/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/kanagram/answer-highlight.png b/doc/kanagram/answer-highlight.png
new file mode 100644
index 00000000..fd203a34
--- /dev/null
+++ b/doc/kanagram/answer-highlight.png
Binary files differ
diff --git a/doc/kanagram/general-settings.png b/doc/kanagram/general-settings.png
new file mode 100644
index 00000000..0f18eae3
--- /dev/null
+++ b/doc/kanagram/general-settings.png
Binary files differ
diff --git a/doc/kanagram/helpstates.png b/doc/kanagram/helpstates.png
new file mode 100644
index 00000000..082defb4
--- /dev/null
+++ b/doc/kanagram/helpstates.png
Binary files differ
diff --git a/doc/kanagram/index.docbook b/doc/kanagram/index.docbook
new file mode 100644
index 00000000..22ec518f
--- /dev/null
+++ b/doc/kanagram/index.docbook
@@ -0,0 +1,497 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY kanagram "<application>Kanagram</application>">
+ <!ENTITY kappname "&kanagram;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kanagram; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Danny</firstname>
+<surname>Allen</surname>
+<affiliation>
+<address>&Danny.Allen.mail;</address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2005</year>
+<holder>&Danny.Allen;</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2005-09-04</date>
+<releaseinfo>1.0</releaseinfo>
+
+<abstract>
+<para>
+&kanagram; brings fun anagram puzzles to &kde;.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>Kanagram</keyword>
+<keyword>game</keyword>
+<keyword>child</keyword>
+<keyword>anagram</keyword>
+<keyword>words</keyword>
+<keyword>jumble</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&kanagram; is a game based on anagrams of words: the puzzle is solved when the letters of the scrambled word are put back in the correct order. There is no limit on either time taken, or the amount of attempts to solve the word. Included with &kanagram; are several vocabularies ready to play, with many more available from the Internet.
+</para>
+
+</chapter>
+
+
+<chapter id="using-kanagram">
+<title>Using &kanagram;</title>
+
+<para>
+Here is the screen that is presented on startup of &kanagram;, showing the main interface to the application. Much of the window is taken up by the <interface>blackboard</interface>, where the puzzles are written onto, with the <interface>filing cabinet</interface> on the right containing application controls:
+</para>
+
+<screenshot>
+<screeninfo>Here is the screen that is presented on startup of &kanagram;</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="kanagram.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; screenshot</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<orderedlist>
+<listitem>
+<para>
+The <interface>Vocabulary Switcher</interface> allows the user to quickly <action>change the active vocabulary</action> by clicking on it: the &LMB; <action>advances to the next vocabulary</action>, with the &RMB; allowing you to <action>return to the previously-played vocabulary</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+In the center of the <interface>blackboard</interface> is the anagram puzzle to be solved.
+</para>
+</listitem>
+<listitem>
+<para>
+When the <quote><guibutton>Hint</guibutton></quote> button is clicked, a short sentence will appear, <action>describing the current word puzzle</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+The <quote><guibutton>Reveal Word</guibutton></quote> button <action>solves the current word puzzle</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+The <interface>Entry Box</interface> allows you to <action>input your attempts</action> to solve the current word puzzle.
+</para>
+</listitem>
+<listitem>
+<para>
+The <interface>Enter</interface> button lets you <action>check if your answer is correct</action>. This function is also provided by the <keycap>Enter</keycap> key.
+</para>
+</listitem>
+<listitem>
+<para>
+This is the <guiicon>Next Word</guiicon> button, and allows you to <action>advance to the next anagram puzzle</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+This is the <guiicon>Configure</guiicon> button, which <action>opens the <guilabel>Configure</guilabel> &kanagram; dialog</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+The <guiicon>Help</guiicon> button is special, in that it <action>reveals 3 sub-buttons</action>. These buttons are shown when the <guiicon>Help</guiicon> button is hovered over, and provide access to the <guilabel>&kanagram; handbook</guilabel> (this document), the <guilabel>About &kanagram;</guilabel> and the <guilabel>About &kde;</guilabel> dialogs:
+
+<screenshot>
+<screeninfo>The 3 different states of the <guiicon>Help</guiicon> button</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="helpstates.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; screenshot</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</para>
+</listitem>
+<listitem>
+<para>
+The <guiicon>Quit</guiicon> button <action>closes the application</action>.
+</para>
+</listitem>
+</orderedlist>
+
+<sect1 id="playing-game">
+<title>Playing a game</title>
+
+<para>
+Now that you are familiar with the interface of &kanagram;, lets play a game!
+</para>
+
+<procedure>
+<step>
+<para>
+Using the <interface>Vocabulary Switcher</interface>, <action>select the vocabulary theme</action> that you would like to attempt. A word from this vocabulary will then be presented in the middle of the <interface>blackboard</interface>. Now, try and guess what word the jumble of letters represents.
+<tip>
+<para>
+If you cannot guess what the word is, press the <quote><guibutton>Hint</guibutton></quote> button to get some friendly advice from your friend in the <interface>filing cabinet</interface>:
+</para>
+<screenshot>
+<screeninfo>&kanagram; hint</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="kanagram-hint.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; hint</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</tip>
+</para>
+</step>
+
+<step>
+<para>
+Once you think you know the correct answer, type it into the <interface>Entry Box</interface> below the <interface>blackboard</interface>. Either press the <keycap>Enter</keycap> key, or click on the <interface>Enter</interface> button to the right of the <interface>Entry Box</interface> to check your answer: it will <action>change green on a correct answer</action>, and <action>red on an incorrect attempt</action>:
+</para>
+
+<screenshot>
+<screeninfo>answer highlighted</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="answer-highlight.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>answer highlighted</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</step>
+
+<step>
+<para>
+If you were correct, try and guess the next word! Alternatively, you can attempt one of the many other vocabularies bundled with &kanagram;.
+</para>
+</step>
+</procedure>
+
+</sect1>
+
+</chapter>
+
+
+<chapter id="configuring">
+<title>Configuring &kanagram;</title>
+
+<para>
+The <guilabel>Configure</guilabel> dialog is opened by clicking on the <guiicon>Configure</guiicon> button:
+</para>
+
+<screenshot>
+<screeninfo>&kanagram; general settings</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="general-settings.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; general settings</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<itemizedlist>
+
+<listitem>
+<para>
+The <quote><guilabel>Auto-hide hints after:</guilabel></quote> <interface>drop-down box</interface> allows you to specify how hints are presented to you. Here, you can set the hint box to disappear after a certain amount of seconds (&eg; 5 seconds), or you can leave it as default (<quote>Do not auto-hide hints</quote>).
+</para>
+</listitem>
+
+<listitem>
+<para>
+The <quote><guilabel>Play Using:</guilabel></quote> <interface>drop-down box</interface> allows you to play &kanagram; using vocabularies of a different language. For this feature to work, you must have vocabularies of a separate language installed.
+</para>
+</listitem>
+
+<listitem>
+<para>
+The <quote><guibutton>Get Chalk Font</guibutton></quote> button will be visible if you do not have the chalk-styled font installed on your system. Pressing this button will download the font from the Internet, which &kanagram; will then use after the application has been restarted.
+</para>
+<para>
+Once you have the chalk-styled font installed, the <quote><guilabel>Use standard fonts</guilabel></quote> <interface>checkbox</interface> becomes active. If checked, &kanagram; will display the <interface>blackboard</interface> text in a standard, rather than chalk-styled font. This should aid readability of the text:
+</para>
+
+<screenshot>
+<screeninfo>&kanagram; standard font</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="standard-fonts.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; standard font</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</listitem>
+
+<listitem>
+<para>
+The <quote><guilabel>Use sounds</guilabel></quote> <interface>checkbox</interface> allows you to either allow or suppress the &kanagram; sound effects.
+</para>
+<note>
+<para>
+You need to have &arts; support in kdelibs to hear the sounds.
+</para>
+</note>
+</listitem>
+</itemizedlist>
+
+<sect1 id="vocabularies-config">
+<title>Vocabularies</title>
+
+<para>
+The <guilabel>Vocabularies</guilabel> configuration page allows you to manage your installed vocabularies. Using this dialog, you can <action>edit</action> and <action>remove</action> downloaded vocabularies, as well as <action>create</action> your very own:
+</para>
+
+<screenshot>
+<screeninfo>&kanagram; vocabulary settings</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="vocab-settings.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; vocabulary settings</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<itemizedlist>
+<listitem>
+<para>
+The <quote><guibutton>Create New</guibutton></quote> button <action>opens the <link
+linkend="vocab-editor"><guilabel>Vocabulary Editor</guilabel></link> dialog</action> so that you can author your own vocabularies which you can then play.
+</para>
+</listitem>
+<listitem>
+<para>
+The <quote><guibutton>Edit</guibutton></quote> button allows you to <action>make changes to vocabularies that you have either created or downloaded off the Internet</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+The <quote><guibutton>Delete</guibutton></quote> button allows you to <action>delete vocabularies that you have created or downloaded</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+You can select which vocabulary you would like to apply these actions to by using the <interface>list of vocabularies</interface>.
+</para>
+</listitem>
+</itemizedlist>
+
+<sect2 id="vocab-editor">
+<title><guilabel>Vocabulary Editor</guilabel></title>
+
+<para>
+The Vocabulary Editor allows you to create your own vocabularies, which &kanagram; can then test you with:
+</para>
+
+<screenshot>
+<screeninfo>&kanagram; <guilabel>Vocabulary Editor</guilabel></screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="vocab-editor.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; <guilabel>Vocabulary Editor</guilabel></phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<itemizedlist>
+<listitem>
+<para>
+The <guilabel>Vocabulary Name</guilabel> field lets you <action>name your vocabulary</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+The <guilabel>Description</guilabel> field enables you to <action>expand on your vocabulary name</action>, providing your user with more details of the content of your vocabulary.
+</para>
+<note>
+<para>
+Try to keep both the name and description fields as short as possible. Effective vocabularies cover a narrow, focussed set of words for a single subject. Try to write at least 20 words for your vocabulary, so that it will not be quickly finished by the user.
+</para>
+</note>
+</listitem>
+<listitem>
+<para>
+The <quote><guibutton>Delete Word</guibutton></quote> button lets you <action>remove words from your vocabulary</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+The <quote><guibutton>New Word</guibutton></quote> button <action>creates a new word entry in your vocabulary</action>, ready for you to expand.
+</para>
+</listitem>
+<listitem>
+<para>
+The <guilabel>Word</guilabel> field lets you <action>write word values into your vocabulary</action>.
+</para>
+</listitem>
+<listitem>
+<para>
+The <guilabel>Hint</guilabel> field allows you to <action>write hints to accompany your words</action>.
+</para>
+<note>
+<para>
+Good hints clearly, yet subtly describe the word, whilst increasing the knowledge of the vocabulary subject for your user. Also ensure that your hints are fairly short (under 40 characters in length).
+</para>
+</note>
+</listitem>
+<listitem>
+<para>
+The <quote><guibutton>Save</guibutton></quote> button <action>saves your vocabulary content</action>, and enables its use directly in &kanagram; (it will immediately become available within the application, selectable via. the <interface>Vocabulary Selector</interface>).
+</para>
+</listitem>
+<listitem>
+<para>
+The <quote><guibutton>Close</guibutton></quote> button <action>closes the <guilabel>Vocabulary Editor</guilabel> dialog</action> without saving the content of your vocabulary.
+</para>
+</listitem>
+</itemizedlist>
+</sect2>
+
+</sect1>
+
+<sect1 id="newstuff-config">
+<title>New Stuff</title>
+
+<para>
+The <guilabel>New Stuff</guilabel> configuration page allows you to obtain new vocabulary files from the Internet:
+</para>
+
+<screenshot>
+<screeninfo>&kanagram; new stuff settings</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="newstuff-settings.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; newstuff settings</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+Click the <quote><guibutton>Download New Vocabularies</guibutton></quote> button to browse the available online content:
+</para>
+
+<screenshot>
+<screeninfo>&kanagram; new stuff dialog</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="newstuff-dialog.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&kanagram; new stuff dialog</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+To install a vocabulary from the Internet, click on the vocabulary item in the list, then press the <quote><guibutton>Install</guibutton></quote> button to install to your system. The downloaded vocabulary will then be available to play immediately.
+</para>
+
+</sect1>
+</chapter>
+
+
+<chapter id="credits">
+<title>Credits and License</title>
+
+<para>
+&kanagram;
+</para>
+<para>
+Program copyright 2005 Joshua Keel <email>joshuakeel@gmail.com</email> and &Danny.Allen; &Danny.Allen.mail;
+</para>
+<para>
+Contributors:
+</para>
+<itemizedlist>
+<listitem>
+<para>Sound effects: Artemio
+<email>fillme</email>
+</para>
+</listitem>
+</itemizedlist>
+
+<para>
+Documentation copyright 2005 &Danny.Allen; &Danny.Allen.mail;
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL;
+&underGPL;
+
+</chapter>
+
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kanagram">
+<title>How to obtain &kanagram;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+
+// vim:ts=2:sw=2:tw=78:noet:noai
+--> \ No newline at end of file
diff --git a/doc/kanagram/kanagram-hint.png b/doc/kanagram/kanagram-hint.png
new file mode 100644
index 00000000..2aaa5988
--- /dev/null
+++ b/doc/kanagram/kanagram-hint.png
Binary files differ
diff --git a/doc/kanagram/kanagram.png b/doc/kanagram/kanagram.png
new file mode 100644
index 00000000..50fbd61e
--- /dev/null
+++ b/doc/kanagram/kanagram.png
Binary files differ
diff --git a/doc/kanagram/main_overlay.svgz b/doc/kanagram/main_overlay.svgz
new file mode 100644
index 00000000..7be8edf4
--- /dev/null
+++ b/doc/kanagram/main_overlay.svgz
Binary files differ
diff --git a/doc/kanagram/newstuff-dialog.png b/doc/kanagram/newstuff-dialog.png
new file mode 100644
index 00000000..55a0793c
--- /dev/null
+++ b/doc/kanagram/newstuff-dialog.png
Binary files differ
diff --git a/doc/kanagram/newstuff-settings.png b/doc/kanagram/newstuff-settings.png
new file mode 100644
index 00000000..32bdd318
--- /dev/null
+++ b/doc/kanagram/newstuff-settings.png
Binary files differ
diff --git a/doc/kanagram/standard-fonts.png b/doc/kanagram/standard-fonts.png
new file mode 100644
index 00000000..118cd6ed
--- /dev/null
+++ b/doc/kanagram/standard-fonts.png
Binary files differ
diff --git a/doc/kanagram/vocab-editor.png b/doc/kanagram/vocab-editor.png
new file mode 100644
index 00000000..7969f75d
--- /dev/null
+++ b/doc/kanagram/vocab-editor.png
Binary files differ
diff --git a/doc/kanagram/vocab-settings.png b/doc/kanagram/vocab-settings.png
new file mode 100644
index 00000000..42ebc980
--- /dev/null
+++ b/doc/kanagram/vocab-settings.png
Binary files differ
diff --git a/doc/kbruch/Makefile.am b/doc/kbruch/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/kbruch/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/kbruch/checked.png b/doc/kbruch/checked.png
new file mode 100644
index 00000000..c3940127
--- /dev/null
+++ b/doc/kbruch/checked.png
Binary files differ
diff --git a/doc/kbruch/compare.png b/doc/kbruch/compare.png
new file mode 100644
index 00000000..e94daa54
--- /dev/null
+++ b/doc/kbruch/compare.png
Binary files differ
diff --git a/doc/kbruch/convert.png b/doc/kbruch/convert.png
new file mode 100644
index 00000000..4977385f
--- /dev/null
+++ b/doc/kbruch/convert.png
Binary files differ
diff --git a/doc/kbruch/factorize.png b/doc/kbruch/factorize.png
new file mode 100644
index 00000000..edca9117
--- /dev/null
+++ b/doc/kbruch/factorize.png
Binary files differ
diff --git a/doc/kbruch/gui_main.png b/doc/kbruch/gui_main.png
new file mode 100644
index 00000000..6c1d0c07
--- /dev/null
+++ b/doc/kbruch/gui_main.png
Binary files differ
diff --git a/doc/kbruch/index.docbook b/doc/kbruch/index.docbook
new file mode 100644
index 00000000..dd7343b2
--- /dev/null
+++ b/doc/kbruch/index.docbook
@@ -0,0 +1,553 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY kbruch "<application>KBruch</application>">
+ <!ENTITY kappname "&kbruch;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kbruch; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Sebastian</firstname>
+<surname>Stein</surname>
+<affiliation>
+<address><email>seb.kde@hpfsc.de</email></address>
+</affiliation>
+</author>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+</authorgroup>
+
+<copyright>
+<year>2001-2005</year>
+<holder>Sebastian Stein</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2004-07-09</date>
+<releaseinfo>3.4</releaseinfo>
+
+<abstract>
+<para>&kbruch; is a small program to practice calculating with fractions.
+Different exercises are provided for this purpose. The program checks user's
+input and gives feedback.
+</para>
+
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>education</keyword>
+<keyword>fraction</keyword>
+<keyword>mathematics</keyword>
+<keyword>denominator</keyword>
+<keyword>kbruch</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&kbruch; is a small program to practice calculating with fractions. Therefore
+4 different exercises are offered.
+</para>
+
+<itemizedlist>
+ <listitem><para>
+ Fraction Task - in this exercise you have to solve a given fraction task.
+You have to enter numerator and denominator. This is the main exercise.
+ </para></listitem>
+ <listitem><para>
+ Comparison - in this exercise you have to compare the size of 2 given
+fractions.
+ </para></listitem>
+ <listitem><para>
+ Conversion - in this exercise you have to convert a given number into a
+fraction.
+ </para></listitem>
+ <listitem><para>
+ Factorization - in this exercise you have to factorize a given number into its prime factors.
+ </para></listitem>
+</itemizedlist>
+
+<para>
+In all different exercises &kbruch; will generate a task and the user has to
+solve it. The program checks the input and gives a feedback about it.
+</para>
+
+<para>
+&kbruch; counts how many tasks were solved at all and how many tasks were
+solved correctly. The statistics are shown to the user, but this part of the
+main window can be hidden. The user can reset the statistics at any point.
+</para>
+
+<para>
+&kbruch; is very compact and focuses on the core idea of a task generator. An
+online help system provides context-sensitive help for the different
+situations.
+</para>
+<para>
+&kbruch; is free and licensed under the &GNU; Public License.
+</para>
+</chapter>
+
+
+<chapter id="using-kbruch">
+<title>Using &kbruch;</title>
+
+<sect1 id="overview">
+<title>Main screen</title>
+
+<para>Here is a screenshot of &kbruch;'s main screen:</para>
+
+<screenshot>
+ <screeninfo>&kbruch; main screen, directly after the start</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="gui_main.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kbruch; main screen</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+All action takes place in this screen. This ensures that &kbruch; is
+easy to use even for young users! The main screen is separated into 5
+parts:
+
+<itemizedlist>
+ <listitem><para>
+ the menubar with the 3 menus <guimenu>Task</guimenu>,
+<guimenu>Settings</guimenu> and <guimenu>Help</guimenu>
+ </para></listitem>
+ <listitem><para>
+ the toolbar, where you can set the difficulty for the tasks given in the
+ <guimenu>Fraction Task</guimenu> exercise
+ </para></listitem>
+ <listitem><para>
+ the exercise chooser, where you can switch between the different exercises
+ </para></listitem>
+ <listitem><para>
+ the task part, where you have to enter the result of the given task
+ </para></listitem>
+ <listitem><para>
+ the statistical part, where you can see how many tasks have been solved
+ correctly or attempted
+ </para></listitem>
+</itemizedlist>
+</para>
+<para>
+First you have to choose an exercise in the exercise chooser on the left side
+of the window. The task part will change according to the chosen task. The
+settings in the toolbar will be enabled, if you have chosen the exercise
+<guimenu>Fraction Task</guimenu>.
+</para>
+<para>
+You will find an icon to generate a new task in the toolbar as well. This
+action is also available in the menu
+<menuchoice><guimenu>Task</guimenu><guimenuitem>New
+Task</guimenuitem></menuchoice>. This action is always enabled. If you have not
+solved the currently given task, a new task is generated and the given task is
+counted as not correctly solved.
+</para>
+<para>
+You can hide the statistic part by dragging the vertical separator to the
+right.
+</para>
+<para>
+If you terminate &kbruch; the currently chosen exercise will be saved and
+restored on next startup.
+</para>
+</sect1>
+
+<sect1 id="statistics">
+<title>Statistical Part</title>
+<para>
+In this part of the main screen you can see:
+<itemizedlist>
+ <listitem><para>
+ how many tasks have been solved
+ </para></listitem>
+ <listitem><para>
+ how many tasks have been solved correctly
+ </para></listitem>
+ <listitem><para>
+ how many tasks have been solved incorrectly
+ </para></listitem>
+</itemizedlist>
+</para>
+<para>
+You can reset the statistics by clicking on the <guimenu>Reset</guimenu> button
+under the figures.
+</para>
+<para>
+The statistics will be saved on &kbruch;'s termination and restored on next
+startup.
+</para>
+</sect1>
+
+<sect1 id="settings">
+<title>Settings Window</title>
+<para>
+In this part of the main screen you can adjust some general settings for
+task display. To open this dialog use
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+&kbruch;</guimenuitem></menuchoice>.
+</para>
+
+<screenshot>
+ <screeninfo>&kbruch; settings dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kbruch; settings dialog</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+In the top part of the dialog you can choose a font for displaying. In the
+lower part you can choose colors for the different parts of a mathematical
+expression. You can set wether to show the mixed number notation in the result.
+This notation is not known everywhere and can be disabled therefore.
+</para>
+<para>
+The settings will be saved on &kbruch;'s termination and restored on the next
+startup.
+</para>
+</sect1>
+
+</chapter>
+
+<chapter id="exercises">
+<title>Exercises</title>
+
+<sect1 id="exer_fraction">
+<title>Exercise Fraction Task</title>
+
+<para>In this exercise you have to solve a given task. Therefor you have to
+enter numerator and denominator. The difficulty of the generated task can be
+adjusted by the task parameters described below.
+</para>
+
+<sect2 id="task_paras">
+<title>Task Parameters</title>
+<para>
+There are 3 parameters which influence the difficulty of the generated
+tasks:</para>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Terms</guilabel></term>
+<listitem><para>The number of terms (separate fractions) given in each
+task. From 2 to 5, inclusive.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Max. main denominator</guilabel></term>
+<listitem><para>The highest number &kbruch; will use as the main denominator in the
+tasks it sets. From a minimum of 10 to a maximum of 50.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Operations</guilabel></term>
+<listitem><para>Operations which should be used in the
+task: <guilabel>Addition/Subtraction</guilabel>,
+<guilabel>Multiplication/Division</guilabel> or <guilabel>All Operations Mixed</guilabel>.</para></listitem>
+</varlistentry>
+</variablelist>
+
+<para>
+After you have changed the parameters you have to click on the <guimenu>New
+Task</guimenu> button in the toolbar to generate a task which uses the new
+parameters. You can also call this action from the menubar with
+<menuchoice><guimenu>Task</guimenu><guimenuitem>New
+Task</guimenuitem></menuchoice>.
+</para>
+<note>
+<para>
+Your selection of the maximum main denominator will be reset to a default
+value every time you change the number of terms. So you should change the
+number of terms first and then select the maximum main denominator.
+</para>
+</note>
+<para>
+If you have not solved the current task and call the <guimenu>New
+Task</guimenu> action, the task will be counted as not solved correctly. To
+prevent this you have to change the parameters after you solved the task but
+before generating a new one.
+</para>
+<para>
+The chosen parameters will be saved on &kbruch;'s termination and restored
+on next startup.
+</para>
+</sect2>
+
+<sect2 id="exer_fraction_solve_task">
+<title>Solving Tasks</title>
+<para>
+After you have solved a given task, you need to enter the result into the two
+input boxes. In the upper box you enter the numerator and in the lower
+box the denominator.
+</para>
+<para>
+If the result is negative, you can enter a minus sign in front of the numerator
+or denominator. If the result is 0, just type a 0 in the numerator input field.
+If the result has a denominator of 1, you can leave the lower box empty.
+</para>
+<para>
+After you have entered the result you should click the <guibutton>Check
+Task</guibutton> button below the input boxes. &kbruch; will check your input
+and present the correct result. Therefore the screen changes a little, as
+you can see in the screenshot:
+</para>
+<screenshot>
+<screeninfo>Checked Task</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="checked.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Checked Task</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+<para>
+This task was solved correctly. The correct value is shown in 2 different
+forms. The second form just in front of the word <guilabel>CORRECT</guilabel>
+is only used in some countries and must be read as 2 + 1/5 in the given case.
+</para>
+<note>
+<para>
+You always have to enter the result reduced, because most teachers only
+give all points to reduced results. &kbruch; will show you a short message
+like the one in the screenshot below, if you enter the correct result
+unreduced.
+</para>
+</note>
+<screenshot>
+<screeninfo>Unreduced Result</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="reduced.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Unreduced Result</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+To continue with the next task, click on the <guimenu>Next Task</guimenu>
+button. If you want to change the parameters for the next task please do this
+before clicking on the <guimenu>Next Task</guimenu> button.
+</para>
+</sect2>
+</sect1>
+
+<sect1 id="exer_compare">
+<title>Exercise Comparison</title>
+
+<para>In this exercise you have to compare 2 given fractions. You have to choose
+the bigger fraction of both by selecting the correct comparison sign.
+</para>
+
+<screenshot>
+<screeninfo>Exercise Comparison</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="compare.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Exercise Comparison</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>First choose the correct comparison sign. To toggle the comparison sign,
+you have to click on the button showing the comparison sign. After you have
+chosen the comparison sign click on the <guimenu>Check Task</guimenu> button.
+&kbruch; will check your input and present the correct result. After this step
+you will get to the next task by clicking on the <guimenu>Next Task</guimenu>
+button.
+</para>
+</sect1>
+
+<sect1 id="exer_convert">
+<title>Exercise Conversion</title>
+
+<para>In this exercise you have to convert a given number into a fraction. You
+have to enter numerator and denominator.
+</para>
+
+<screenshot>
+<screeninfo>Exercise Conversion</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="convert.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Exercise Conversion</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>On the left side of the equal sign in the screenshot above you can see a
+recurring decimal. This means, that the fraction shown as a decimal has a
+repeating part. The repeating part is marked with the small bar above the
+numbers. Those numbers repeat ad infinitum.
+</para>
+
+<para>After you have entered the numerator and denominator click on the
+<guimenu>Check Task</guimenu> button. &kbruch; will check your input and
+present the correct result. After this step you will get to the next task by
+clicking on the <guimenu>Next Task</guimenu> button.
+</para>
+
+<note>
+<para>
+Do not forget to enter the result reduced. Unreduced results will be counted as
+solved not correctly.
+</para>
+</note>
+</sect1>
+
+<sect1 id="exer_factorize">
+<title>Exercise Factorization</title>
+
+<para>In this exercise you have to factorize a given number into its prime
+factors. You have to enter all prime factors of the number.
+</para>
+
+<screenshot>
+<screeninfo>Exercise Factorization</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="factorize.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Exercise Factorization</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>You can enter a factor by clicking on the prime <guimenu>factor
+buttons</guimenu>. The currently entered prime factors will be shown in the
+field next to the number to be factorized. You can remove the last entered
+prime factor by clicking on the <guimenu>Remove Last Factor</guimenu> button.
+</para>
+<para>
+After you have entered all prime factors click on the
+<guimenu>Check Task</guimenu> button. &kbruch; will check your input and
+present the correct result. After this step you will get to the next task by
+clicking on the <guimenu>Next Task</guimenu> button.
+</para>
+
+<para>In the screenshot at the top of this page you can see a <quote>*</quote>
+between the prime factors. This is the multiplication sign. The product of all
+prime factors must be the number you try to factorize.
+</para>
+
+<note>
+<para>
+You have to enter all prime factors even when a prime factor repeats several
+times. Example: As prime factors of number 18 you have to enter 2, 3 and 3.
+</para>
+</note>
+</sect1>
+
+</chapter>
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+<para>&kbruch;</para>
+<para>
+Program and documentation Copyright, 2001-2004 Sebastian Stein
+ <email>seb.kde@hpfsc.de</email>
+</para>
+
+<para>Thank you goes to:</para>
+
+<itemizedlist>
+ <listitem><para>&Anne-Marie.Mahfouf; for managing the &kde;-edu project</para></listitem>
+ <listitem><para>Klas Kalass for helping design the interface</para></listitem>
+ <listitem><para>Eva Brucherseifer for writing <application>KMath</application> (&kbruch;'s &GUI; is based on this work)</para></listitem>
+ <listitem><para>Dominique Devriese for bug fixing</para></listitem>
+ <listitem><para><ulink url="http://www.net-tex.de/">Stefan Schumacher</ulink> for testing a very early version</para></listitem>
+ <listitem><para><ulink url="http://www.guckes.net/">Sven Guckes</ulink> for testing the text interface (which has been removed)</para></listitem>
+ <listitem><para>&David.Faure; for helping with &kde; <acronym>CVS</acronym> and &kde; Bugzilla</para></listitem>
+ <listitem><para>&Robert.Gogolok; for helping with &kde; <acronym>CVS</acronym></para></listitem>
+ <listitem><para>John Kesson for proof reading the handbook</para></listitem>
+</itemizedlist>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove -->
+&underGPL; <!-- GPL License -->
+
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kbruch">
+<title>How to obtain &kbruch;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="requirements">
+<title>Requirements</title>
+
+<para>
+In order to successfully use &kbruch;, you need &kde; > 3.1 .
+</para>
+
+<para>
+&kbruch; itself can be found
+on <ulink url="http://edu.kde.org/kbruch/">the &kbruch; home page</ulink>
+and it is part of the &kde;-edu project</para>
+
+<para>You can find a list of changes in the <acronym>CVS</acronym> commit
+messages.</para>
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+
+// vim:ts=2:sw=2:tw=78:noet
+-->
diff --git a/doc/kbruch/man-kbruch.1.docbook b/doc/kbruch/man-kbruch.1.docbook
new file mode 100644
index 00000000..0b642e9b
--- /dev/null
+++ b/doc/kbruch/man-kbruch.1.docbook
@@ -0,0 +1,56 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author>&Lauri.Watts;&Lauri.Watts.mail;</author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>kbruch</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>kbruch</command></refname>
+<refpurpose>Learn calculating with fractions</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>kbruch</command>
+<arg choice="opt">KDE Generic Options</arg>
+<arg choice="opt">Qt Generic Options</arg>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kbruch; is a small program to practice calculating with fractions.
+Different exercises are provided for this purpose. The program checks user's
+input and gives feedback.</para>
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>More detailed user documentation is available from <ulink
+url="help:/kbruch">help:/kbruch</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kbruch</parameter></userinput>).</para>
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kbruch/">the kde-edu website</ulink></para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para>&kbruch; was written by
+<personname><firstname>Sebastian</firstname><surname>Stein</surname></personname> <email>seb.kde@hpfsc.de</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kbruch/reduced.png b/doc/kbruch/reduced.png
new file mode 100644
index 00000000..edaea85e
--- /dev/null
+++ b/doc/kbruch/reduced.png
Binary files differ
diff --git a/doc/kbruch/settings.png b/doc/kbruch/settings.png
new file mode 100644
index 00000000..74c5efb9
--- /dev/null
+++ b/doc/kbruch/settings.png
Binary files differ
diff --git a/doc/keduca/Makefile.am b/doc/keduca/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/keduca/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/keduca/index.docbook b/doc/keduca/index.docbook
new file mode 100644
index 00000000..f6aef344
--- /dev/null
+++ b/doc/keduca/index.docbook
@@ -0,0 +1,334 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY kappname "&keduca;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE">
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &keduca; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Javier</firstname>
+<othername>J.</othername>
+<surname>Campos</surname>
+<affiliation>
+<address><email>&Javier.J.Campos.mail;</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+</authorgroup>
+
+<copyright>
+<year>1999</year>
+<holder>&Javier.J.Campos;</holder>
+</copyright>
+
+<date>2002-10-08</date>
+<releaseinfo>1.1</releaseinfo>
+
+<abstract>
+<para>&keduca; is flash card application, which allows you to make
+interactive form based tests.</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>KEduca</keyword>
+<keyword>test</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>&keduca; is flash card application, which allows you to make
+interactive form based tests.</para>
+
+<screenshot>
+<screeninfo>&keduca; screenshot</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="screenshot.png" format="PNG" />
+</imageobject>
+<textobject>
+<phrase>&keduca; screenshot</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+</chapter>
+<!--
+<chapter id="create-modify-test">
+<title>Creating a New Test</title>
+
+</chapter>
+
+<chapter id="configuration">
+<title>Configuring &keduca;</title>
+
+</chapter>
+-->
+<chapter id="command-reference">
+<title>Command Reference</title>
+
+<sect1 id="file-menu">
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<sect2 id="main-window-file-menu">
+<title>The <guilabel>Main Window</guilabel> <guimenu>File</guimenu>
+Menu</title>
+
+<para>The <guilabel>Main Window</guilabel> has the following
+entries:</para>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice><!-- <shortcut>
+<keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
+</shortcut> -->
+<guimenu>File</guimenu>
+<guimenuitem>Open...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Open an existing test file.</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guisubmenu>Open Recent</guisubmenu>
+</menuchoice></term>
+<listitem>
+<para><action>Open a recently used test file.</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Close</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>
+Close the currently open test file.
+</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quit</action> &keduca;</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="edit-test-window-file-menu">
+<title>The Editing Window <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>New</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Create a new test</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Open...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Open an existing test file.</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guisubmenu>Open Recent</guisubmenu>
+</menuchoice></term>
+<listitem>
+<para><action>Open a recently used test file.</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Save</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Save the currently open
+test.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Save As...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Save the currently open game with a new
+name.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Close</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>
+Close the currently open test file.
+</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Print...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Print the currently open
+test.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quit</action> &keduca;</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+</sect1>
+
+<sect1 id="build-menu">
+<title>The <guimenu>Build</guimenu> Menu</title>
+
+<para>The <guimenu>Build</guimenu> menu exists only in the
+<guilabel>Main Window</guilabel> of &keduca;.</para>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Build</guimenu>
+<guimenuitem>Create/Modify...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Create or modify a test</action> in the Create or Modify a test
+window.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+</sect1>
+
+<sect1 id="settings-menu">
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<para>The first entries are available in both of the main &keduca;
+windows.</para>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Show Toolbar</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Toggle on and off the display of the toolbar.</action>
+The default is on.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Personalize the keybindings</action> for &keduca;.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Personalize the toolbars</action> for &keduca;.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+<para>The following entry is only available in the <guilabel>Main
+Window</guilabel>.</para>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Configure &keduca;</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Customize</action> &keduca;. The options available to
+you are described in the Configuration chapter.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+</sect1>
+
+<sect1 id="help-menu">
+<title>The <guimenu>Help</guimenu> Menu</title>
+
+&help.menu.documentation;
+</sect1>
+
+</chapter>
+
+<chapter id="credits-and-licenses">
+<title>Credits and Licenses</title>
+
+<para>&keduca; is copyright 2001, Javier Campos.</para>
+
+<para>Documentation partly by &Lauri.Watts; &Lauri.Watts.mail;</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL;
+&underGPL;
+
+</chapter>
+<!--
+<appendix id="installation">
+<title>Installation</title>
+
+&install.intro.documentation;
+&install.compile.documentation;
+</appendix>
+-->
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
diff --git a/doc/keduca/man-keduca.1.docbook b/doc/keduca/man-keduca.1.docbook
new file mode 100644
index 00000000..647a81b7
--- /dev/null
+++ b/doc/keduca/man-keduca.1.docbook
@@ -0,0 +1,67 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author>&Lauri.Watts;&Lauri.Watts.mail;</author>
+<date>March 16, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+<refmeta>
+<refentrytitle><command>keduca</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>keduca</command></refname>
+<refpurpose>Interactive form-based tests and exams.</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>keduca</command>
+<group><option>file</option></group>
+<arg choice="opt">KDE Generic Options</arg>
+<arg choice="opt">Qt Generic Options</arg>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&keduca; is flash card application, which allows you to make
+interactive form based tests.</para>
+
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+
+<variablelist>
+<varlistentry><term><option><replaceable>file</replaceable></option></term>
+<listitem><para>File to load</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>More detailed user documentation is available from <ulink
+url="help:/keduca">help:/keduca</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/keduca</parameter></userinput>).</para>
+
+<para>There is also further information available at the <ulink
+url="http://edu.kde.org/keduca/">KDE Educatainment project website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para>&keduca; was written by <personname><firstname>Javier</firstname><surname>Campos</surname></personname></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/keduca/man-keducabuilder.1.docbook b/doc/keduca/man-keducabuilder.1.docbook
new file mode 100644
index 00000000..8d11cf87
--- /dev/null
+++ b/doc/keduca/man-keducabuilder.1.docbook
@@ -0,0 +1,74 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>2005-05-27</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>keducabuilder</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>keducabuilder</command></refname>
+<refpurpose>test/exam editor for keduca</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>keducabuilder</command>
+<group><option>file</option></group>
+<arg choice="opt">KDE Generic Options</arg>
+<arg choice="opt">Qt Generic Options</arg>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para><application>KEducaBuilder</application> is the test editor for
+&keduca;, a flash-card application for working with interactive form-based
+tests. KEducaBuilder is used to create and edit these tests, whereas
+&keduca; itself can be used to view and take these tests. </para>
+<para>This application is part of the &kde; edutainment module. </para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry>
+<term><option><replaceable>file</replaceable></option></term>
+<listitem><para>Filename to load in the editor</para></listitem>
+</varlistentry>
+</variablelist>
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>keduca(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/keduca">help:/&keduca;</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/keduca</parameter></userinput>).</para>
+
+<para>There is also further information available at the <ulink url="http://edu.kde.org/keduca/">&kde; Edutainment website:</ulink></para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para>&keduca; was written by <personname><firstname>Javier</firstname><surname>Campos</surname></personname></para><para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email>.</para>
+</refsect1>
+
+</refentry>
diff --git a/doc/keduca/screenshot.png b/doc/keduca/screenshot.png
new file mode 100644
index 00000000..bbfef374
--- /dev/null
+++ b/doc/keduca/screenshot.png
Binary files differ
diff --git a/doc/kgeography/Makefile.am b/doc/kgeography/Makefile.am
new file mode 100644
index 00000000..085981d9
--- /dev/null
+++ b/doc/kgeography/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+
diff --git a/doc/kgeography/first-start1.png b/doc/kgeography/first-start1.png
new file mode 100644
index 00000000..f6a6607b
--- /dev/null
+++ b/doc/kgeography/first-start1.png
Binary files differ
diff --git a/doc/kgeography/first-start10.png b/doc/kgeography/first-start10.png
new file mode 100644
index 00000000..16e5b70c
--- /dev/null
+++ b/doc/kgeography/first-start10.png
Binary files differ
diff --git a/doc/kgeography/first-start11.png b/doc/kgeography/first-start11.png
new file mode 100644
index 00000000..587a2064
--- /dev/null
+++ b/doc/kgeography/first-start11.png
Binary files differ
diff --git a/doc/kgeography/first-start12.png b/doc/kgeography/first-start12.png
new file mode 100644
index 00000000..966435e7
--- /dev/null
+++ b/doc/kgeography/first-start12.png
Binary files differ
diff --git a/doc/kgeography/first-start2.png b/doc/kgeography/first-start2.png
new file mode 100644
index 00000000..995166e8
--- /dev/null
+++ b/doc/kgeography/first-start2.png
Binary files differ
diff --git a/doc/kgeography/first-start3.png b/doc/kgeography/first-start3.png
new file mode 100644
index 00000000..b7d97355
--- /dev/null
+++ b/doc/kgeography/first-start3.png
Binary files differ
diff --git a/doc/kgeography/first-start4.png b/doc/kgeography/first-start4.png
new file mode 100644
index 00000000..972deb3c
--- /dev/null
+++ b/doc/kgeography/first-start4.png
Binary files differ
diff --git a/doc/kgeography/first-start5.png b/doc/kgeography/first-start5.png
new file mode 100644
index 00000000..90041622
--- /dev/null
+++ b/doc/kgeography/first-start5.png
Binary files differ
diff --git a/doc/kgeography/first-start6.png b/doc/kgeography/first-start6.png
new file mode 100644
index 00000000..4be47976
--- /dev/null
+++ b/doc/kgeography/first-start6.png
Binary files differ
diff --git a/doc/kgeography/first-start7.png b/doc/kgeography/first-start7.png
new file mode 100644
index 00000000..9bc16d28
--- /dev/null
+++ b/doc/kgeography/first-start7.png
Binary files differ
diff --git a/doc/kgeography/first-start8.png b/doc/kgeography/first-start8.png
new file mode 100644
index 00000000..ec41f95d
--- /dev/null
+++ b/doc/kgeography/first-start8.png
Binary files differ
diff --git a/doc/kgeography/first-start9.png b/doc/kgeography/first-start9.png
new file mode 100644
index 00000000..7e8becd1
--- /dev/null
+++ b/doc/kgeography/first-start9.png
Binary files differ
diff --git a/doc/kgeography/index.docbook b/doc/kgeography/index.docbook
new file mode 100644
index 00000000..3e6b2af1
--- /dev/null
+++ b/doc/kgeography/index.docbook
@@ -0,0 +1,655 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY kgeography "<application>KGeography</application>">
+ <!ENTITY kappname "&kgeography;">
+ <!ENTITY package "playground/edu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE">
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kgeography; Handbook</title>
+
+<authorgroup>
+<author>
+<personname>
+<firstname>Anne-Marie</firstname>
+<surname>Mahfouf</surname>
+</personname>
+<email>&Anne-Marie.Mahfouf.mail;</email>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+
+<copyright>
+<year>2005</year>
+<holder>&Anne-Marie.Mahfouf;</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2005-08-02</date>
+<releaseinfo>0.4</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+&kgeography; is a geography learning tool for &kde;. Right now it has six usage modes:
+<itemizedlist>
+<listitem>
+<para>Browse the maps clicking in a map division to see its name, capital and flag</para>
+</listitem>
+<listitem>
+<para>The game tells you a map division name and you have to click on it</para>
+</listitem>
+<listitem>
+<para>The game tells you a capital and you have to guess the division it belongs to</para>
+</listitem><listitem>
+<para>The game tells you a division and you have to guess its capital</para>
+</listitem><listitem>
+<para>The game shows you a map division flag and you have to guess its name</para>
+</listitem><listitem>
+<para>The game tells you a map division name and you have to guess its flag</para>
+</listitem>
+</itemizedlist>
+</para>
+
+</abstract>
+
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>KGeography</keyword>
+<keyword>geography</keyword>
+<keyword>maps</keyword>
+<keyword>countries</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+&kgeography; is a geography learning tool for &kde;. It allows you to learn about the political divisions of some countries (divisions, capitals of those divisions and their associated flags if there are some).
+</para>
+<para>
+Maps available in current release are: Africa, Asia, Austria, Brazil, Canada, China, Europe, France, Germany, Italy, Italy by provinces, North and Central America, Norway, Poland, South America, Spain, USA and the world.
+</para>
+</chapter>
+
+<chapter id="quick-start">
+<title>Quick Start to &kgeography;</title>
+<para>
+When you run &kgeography; for the first time, it first asks you to choose a map to start with.
+<screenshot>
+<screeninfo>Here's a screenshot of &kgeography; at first start</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here's a screenshot of &kgeography; at first start</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+Here we choose Canada
+<screenshot>
+<screeninfo>Canada is choosen</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start2.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Canada is choosen</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+And &kgeography; main window appears with the map of Canada:
+<screenshot>
+<screeninfo>&kgeography; main window</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start3.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kgeography; main window</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+You can then choose what type of learning or testing you want to do by looking at the menu on the left:
+<screenshot>
+<screeninfo>&kgeography; menu</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start4.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kgeography; menu</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+Browse the map: a &LMB; click on an area of the map will display informations about that area:
+<screenshot>
+<screeninfo>Browse the map</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start5.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Browse the map</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+Click division in the map: you are first asked how many questions you want
+<screenshot>
+<screeninfo>How many questions</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start6.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>How many questions</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+Then you are asked to click on a specific province:
+<screenshot>
+<screeninfo>Click on a province</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start7.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Click on a province</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+When you finish all the questions, a result dialog is shown with your correct and uncorrect answers:
+<screenshot>
+<screeninfo>Your results</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start8.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Your results</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+Guess a division from its capital: you are asked to find the name of a province among a choice of 4 given its capital:
+<screenshot>
+<screeninfo>Guess a division from its capital</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start9.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Guess a division from its capital</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+And the results are displayed when the test is finished:
+<screenshot>
+<screeninfo>Your results</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start10.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Your results</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+Guess the capital from a division: you have a capital and four province names and you must choose the correct one. As before, at the end a result dialog is shown.
+</para>
+<para>
+Guess division from its flag: a flag is shown and you must find the province it belongs to.
+<screenshot>
+<screeninfo>the flag question</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start11.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>the flag question</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+Guess the flag of a division: a province name is given and you must find the correct flag among four.
+<screenshot>
+<screeninfo>match the flag with the province</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="first-start12.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>match the flag with the province</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+</chapter>
+
+<chapter id="using-kapp">
+<title>Using &kgeography;</title>
+
+<para>
+&kgeography; displays informations about some countries and tests you about those informations.
+
+
+<screenshot>
+<screeninfo>Here's a screenshot of &kgeography;</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kgeography.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Screenshot</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+
+
+<sect1 id="kapp-features">
+<title>More &kgeography; features</title>
+
+<para>Another feature of &kgeography; is the possibility of zoom on a map.
+<screenshot>
+<screeninfo>Zoom</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="zoom.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Zoom</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+While in zoom mode, you can press &RMB; to go back to the original map size (the <guimenuitem>Original Size</guimenuitem> action has the same effect). Use the scroll bars to move around the zoomed map or use the <guimenuitem>Move</guimenuitem> action that will allow you to drag the map using &LMB;.
+</para>
+
+</sect1>
+</chapter>
+
+<!--<chapter id="teachers-parents">
+<title>Teachers/Parents guide to &kgeography; </title>
+ This chapter should emphasize the educational aims of your app and
+guide the parent/teacher on how to help the child using it.
+</chapter>-->
+
+<chapter id="how-to-maps">
+<title>How to make maps</title>
+<para>A map in &kgeography; is made by two files, one is the image of the map and the other one is its description. </para>
+<sect1 id="helper-tool">
+<title>Helper tool</title>
+<para>
+You can find <ulink url="http://kgeography.berlios.de/gen_map.pl">here</ulink> a tool (made by Yann Verley) which helped him with the map of France. To find out its usage, simply execute it and read the help message. It basically creates the <literal role="extension">.kgm</literal> file from a plain text file and creates a file with the colors it has assigned to each division, so you can fill the map according to them.</para>
+</sect1>
+<sect1 id="description-file">
+<title>Description file</title>
+<para>
+ The description file is needed and its file extension is <literal role="extension">.kgm</literal>. It should begin with <sgmltag class="starttag">map</sgmltag> and end with <sgmltag class="endtag">map</sgmltag>.
+</para>
+<para>
+ Inside of those tags there should be:
+<itemizedlist>
+<listitem>
+ <para><sgmltag class="starttag">mapFile</sgmltag> and <sgmltag class="endtag">mapFile</sgmltag>: the name of the file (without any path) containing the map image, &eg; <quote>europe.png</quote>.</para>
+</listitem>
+<listitem>
+ <para><sgmltag class="starttag">name</sgmltag> and <sgmltag class="endtag">name</sgmltag>: the name of map, &eg; <quote>Europe</quote>.</para>
+</listitem>
+<listitem>
+ <para>A <sgmltag class="starttag">division</sgmltag> and <sgmltag class="endtag">division</sgmltag> for each division in the map.</para>
+</listitem>
+</itemizedlist>
+ </para>
+<para>
+ Each division has these tags:
+<itemizedlist>
+<listitem>
+ <para><sgmltag class="starttag">name</sgmltag> and <sgmltag class="endtag">name</sgmltag>: the name of the division, &eg; <quote>Albania</quote>.</para>
+</listitem>
+<listitem>
+ <para><sgmltag class="starttag">capital</sgmltag> and <sgmltag class="endtag">capital</sgmltag>: the name of the capital of the division, &eg; <quote>Tirana</quote>.</para>
+</listitem>
+<listitem>
+ <para><sgmltag class="starttag">ignore</sgmltag> and <sgmltag class="endtag">ignore</sgmltag>: can be set to <userinput>yes</userinput>, <userinput>allowClickMode</userinput> and <userinput>no</userinput>. If this tag is set to <userinput>yes</userinput> then the division will be ignored when asking for divisions in that map. It is then as if this division does not exist in &kgeography; quiz modes. If this tag is set to <userinput>allowClickMode</userinput> then &kgeography; will ask for the division in the <guibutton>Click Division in Map...</guibutton> mode but not in other quiz modes. Setting this tag to <userinput>no</userinput> means the division will appear in all modes (browse and quizzes). This tag is optional and when there is no <sgmltag class="starttag">ignore</sgmltag> tag that means as it is set to <userinput>no</userinput>. For example <quote>Algeria</quote> has this tag set to <userinput>yes</userinput> in the <quote>Europe</quote> map which means that <quote>Algeria</quote> will not be part of any quiz in the <quote>Europe</quote> map.</para>
+</listitem>
+<listitem>
+ <para><sgmltag class="starttag">flag</sgmltag> and <sgmltag class="endtag">flag</sgmltag>: the file (without any path) containing the flag of the division, &eg; <quote>albania.png</quote>. This tag is optional. Not needed for the divisions whose <sgmltag class="starttag">ignore</sgmltag> tag is set to <userinput>yes</userinput>.</para>
+</listitem>
+<listitem>
+ <para><sgmltag class="starttag">color</sgmltag> and <sgmltag class="endtag">color</sgmltag>: the color the division has in the map.</para>
+</listitem>
+</itemizedlist>
+ </para>
+<para>
+ The color is defined using three tags:
+<itemizedlist>
+<listitem>
+ <para><sgmltag class="starttag">red</sgmltag> and <sgmltag class="endtag">red</sgmltag>: red component of the color. Valid values are between 0 and 255.</para>
+</listitem>
+<listitem>
+ <para><sgmltag class="starttag">green</sgmltag> and <sgmltag class="endtag">green</sgmltag>: green component of the color. Valid values are between 0 and 255.</para>
+</listitem>
+<listitem>
+ <para><sgmltag class="starttag">blue</sgmltag> and <sgmltag class="endtag">blue</sgmltag>: blue component of the color. Valid values are between 0 and 255.</para>
+</listitem>
+</itemizedlist>
+</para>
+<tip>
+ <para>
+ It is convenient to create 2 or 3 false divisions like <quote>Water</quote>, <quote>Frontier</quote> and <quote>Coast</quote> and set them with the <sgmltag class="starttag">ignore</sgmltag> tag set to <userinput>yes</userinput>.
+ </para>
+</tip>
+ <important>
+ <para>All names (capitals and divisions) must be in English.</para>
+</important>
+</sect1>
+<sect1 id="map-file">
+<title>Map file</title>
+<para>
+ The map file is quite simple but laborious to create. It has to be in <acronym>PNG</acronym> format.
+ You can find some maps to transform at <ulink url="https://www.cia.gov/cia/publications/factbook/docs/refmaps.html">Cia Reference Maps</ulink>. If no map fits your needs you can download the <ulink url="https://www.cia.gov/cia/publications/factbook/reference_maps/pdf/political_world.pdf">political world map</ulink>, take a screenshot of it and work from it.
+ Each division in the map should have one and only one color. To achieve this you can use image processing programs like <application>The Gimp</application> and <application>Kolourpaint</application>.
+</para>
+</sect1>
+<sect1 id="flags">
+<title>Flags</title>
+<para>
+ If you have used the <sgmltag class="starttag">flag</sgmltag> tag you should provide the flag files. They have to be in <acronym>PNG</acronym> format and better if they are 300x200 pixels and you provide a <acronym>SVG</acronym> file for it. To obtain <acronym>SVG</acronym> flags of almost all countries in the world and some other divisions, you can consult the <ulink url="http://www.sodipodi.com/index.php3?section=clipart/flags">Sodipodi flags collection</ulink>.
+</para>
+</sect1>
+<sect1 id="how-to-test">
+<title>How to test</title>
+<para>
+ Before sending your map to Albert <email>tsdgeos@terra.es</email>, you should test it to see it has no errors. To achieve that, you have to do the following:
+<itemizedlist>
+<listitem>
+ <para>Put the map description and map image file in <filename class="directory">$<envar>KDEDIR</envar>/share/apps/kgeography/</filename></para>
+</listitem>
+<listitem>
+ <para>Put the flag <acronym>PNG</acronym> files (if any) in <filename class="directory">$<envar>KDEDIR</envar>/share/apps/kgeography/flags/</filename></para>
+</listitem>
+</itemizedlist>
+ Once that has been done you should be able of opening your map from inside &kgeography;.
+ </para>
+ <para>
+ If you don't know which is your <filename class="directory">$<envar>KDEDIR</envar></filename>, type <userinput><command>kde-config</command> <option>--prefix</option></userinput> in a shell.
+</para>
+</sect1>
+<sect1 id="non-political-maps">
+<title>Non political maps</title>
+<para> Is it possible to do non-political maps? Yes, it is!
+<screenshot>
+<screeninfo>Example of how to create a non political map</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="river.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Example of how to create a non political map</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+ Of course, the division concept can be extended to a river or a mountain. During the creation of the map, you should keep in mind that most times the river or mountain will be too small that you should provide an additional clicking area.
+ In this example the river would have the maroon area and color &lt;20,76,34&gt; as its identifier.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+
+<!-- (OPTIONAL, BUT RECOMMENDED) This chapter should list all of the
+application windows and their menubar and toolbar commands for easy reference.
+Also include any keys that have a special function but have no equivalent in the
+menus or toolbars. This may not be necessary for small apps or apps with no tool
+or menu bars. -->
+
+<sect1 id="kapp-mainwindow">
+<title>The main &kgeography; window</title>
+
+<sect2>
+<title>The <guimenu>File</guimenu> Menu</title>
+<para>
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Open Map...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Open the choose map dialog</action></para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quits</action> &kgeography;</para></listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>View</guimenu> Menu</title>
+<para>
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>View</guimenu>
+<guimenuitem>Zoom</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Goes in zoom mode</action></para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<guimenu>View</guimenu>
+<guimenuitem>Original Size</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Sets</action> the map back to its original size</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<guimenu>View</guimenu>
+<guimenuitem>Move</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Moves</action> the current map</para></listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Settings</guimenu> Menu</title>
+<para>
+<variablelist>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show/Hide Toolbar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Show/Hide the &kgeography; toolbar.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure key shortcuts for &kgeography;.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure the &kgeography; toolbar.</action></para></listitem>
+</varlistentry>
+
+</variablelist>
+</para>
+
+</sect2>
+<sect2>
+<title>The <guimenu>Help</guimenu> Menu</title>
+
+<!-- Assuming you have a standard help menu (help, what's this, about -->
+<!-- &kgeography;, about KDE) then the documentation is already written. -->
+<!-- The following entity is valid anywhere that a variablelist is -->
+<!-- valid. -->
+
+&help.menu.documentation;
+
+</sect2>
+
+</sect1>
+</chapter>
+
+<!--<chapter id="faq">
+<title>Questions and Answers</title>
+
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>My Mouse doesn't work. How do I quit &kgeography;?</para>
+</question>
+<answer>
+<para>You silly goose! Check out the <link linkend="commands">Commands
+Section</link> for the answer.</para>
+</answer>
+</qandaentry>
+<qandaentry>
+<question>
+<para>Why am I not able to twiddle my documents?</para>
+</question>
+<answer>
+<para>You can only twiddle your documents if you have the foobar.lib
+installed.</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>-->
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Credits and License</title>
+
+<para>
+&kgeography;
+</para>
+<para>
+Program copyright 2004-2005 Albert Astals Cid <email>tsdgeos@terra.es</email>
+</para>
+
+
+<para>
+Documentation Copyright &copy; 2005 &Anne-Marie.Mahfouf; <email>&Anne-Marie.Mahfouf.mail;</email>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL;
+&underGPL;
+
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kapp">
+<title>How to obtain &kgeography;</title>
+
+<!-- This first entity contains boiler plate for applications that are
+part of KDE CVS. You should remove it if you are releasing your
+application -->
+
+&install.intro.documentation;
+
+</sect1>
+
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+<!-- This entity contains the boilerplate text for standard -->
+<!-- compilation instructions. If your application requires any -->
+<!-- special handling, remove it, and replace with your own text. -->
+
+&install.compile.documentation;
+
+</sect1>
+
+
+</appendix>
+
+&documentation.index;
+</book>
+
+<!--
+Local Variables:
+mode: xml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+
+vim:tabstop=2:shiftwidth=2:expandtab
+-->
diff --git a/doc/kgeography/kgeography.png b/doc/kgeography/kgeography.png
new file mode 100644
index 00000000..1f66b8fc
--- /dev/null
+++ b/doc/kgeography/kgeography.png
Binary files differ
diff --git a/doc/kgeography/river.png b/doc/kgeography/river.png
new file mode 100644
index 00000000..a713fc9b
--- /dev/null
+++ b/doc/kgeography/river.png
Binary files differ
diff --git a/doc/kgeography/zoom.png b/doc/kgeography/zoom.png
new file mode 100644
index 00000000..e41f564a
--- /dev/null
+++ b/doc/kgeography/zoom.png
Binary files differ
diff --git a/doc/khangman/Makefile.am b/doc/khangman/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/khangman/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/khangman/getnewstuff.png b/doc/khangman/getnewstuff.png
new file mode 100644
index 00000000..3f31eef4
--- /dev/null
+++ b/doc/khangman/getnewstuff.png
Binary files differ
diff --git a/doc/khangman/index.docbook b/doc/khangman/index.docbook
new file mode 100644
index 00000000..3abceae7
--- /dev/null
+++ b/doc/khangman/index.docbook
@@ -0,0 +1,929 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
+ "dtd/kdex.dtd" [
+ <!ENTITY kappname "&khangman;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &khangman; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Anne-Marie</firstname>
+<surname>Mahfouf</surname>
+<affiliation>
+<address>&Anne-Marie.Mahfouf.mail;</address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+
+<copyright>
+<year>2001</year><year>2005</year>
+<holder>&Anne-Marie.Mahfouf;</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+
+<date>2006-02-01</date>
+<releaseinfo>1.6</releaseinfo>
+
+<abstract>
+<para>
+&khangman; is the classic hangman game for children, adapted for &kde;.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>KHangMan</keyword>
+<keyword>hangman</keyword>
+<keyword>game</keyword>
+<keyword>child</keyword>
+<keyword>words</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&khangman; is a game based on the well-known hangman game. It is aimed at
+children aged six and over. The game has four levels of difficulty: Animals (animals
+words), Easy, Medium and Hard. A word is picked at random, the letters are
+hidden, and you must guess the word by trying one letter after another. Each
+time you guess a wrong letter, part of a picture of a hangman is drawn. You
+must guess the word before being hanged! You have 10 tries.
+</para>
+
+</chapter>
+
+<chapter id="using-khangman">
+<title>Using &khangman;</title>
+
+<screenshot>
+<screeninfo>Here's a screenshot of &khangman; when you start it for the first time</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="khangman1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&khangman; screenshot</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+Here you can see &khangman; as it is the first time you run it. Level is Animals,
+language is default (English here, the default is your current &kde; language if
+the data exists), the theme is "Sea". Any changes in level, language or theme
+(background) are written in the configuration file and restored in your next
+game.
+</para>
+
+<para>
+Please note how easy it is to change the level and the theme, just
+click on the combo boxes on the toolbar. Getting a new word and quitting the
+game are also easily done by clicking on the corresponding buttons on the
+toolbar.
+</para>
+
+<sect1 id="general-usage">
+<title>General usage</title>
+
+<!-- FIXME: A word cannot really be displayed and hidden at the same time, -->
+<!-- although I cannot think of a better way to phrase this -->
+<para>A word is chosen and its letters are displayed as an underscore (_) symbol. You know how many letters there are in the
+word. You have to guess the word by trying one letter after another. You enter the letter in the text box and you either press the Enter key or click on the Guess button to see if the letter belongs or not to the word. </para>
+
+<para>The word is picked at random and it is not the same as the previous word.
+</para>
+
+<important><para>All the words are nouns (there are no verbs or adjectives, &etc;).</para></important>
+
+<para>
+Usually, it is not important whether you type in lowercase or uppercase. The program
+converts all input into lowercase (except for German words beginning with an uppercase letter). The program does that automatically.
+</para>
+
+<para>
+The current level and current language are displayed in the statusbar.
+</para>
+
+<para>
+Each time you guess a letter that is not in the word, another part of the
+hangman is drawn. You have 10 tries to guess the word. After that, the correct
+answer is displayed.
+</para>
+
+<para>
+There are 4 levels: easy, medium, hard and animals, plus levels for other
+topics in some languages. The program scans for all data files in all
+languages.
+ </para>
+
+<para>
+In the easy level, the words are quite simple and related to everyday life. It
+is suitable for children from 6 to 9. The animals level contains only names of
+animals so they are easier to find. Some of them are easy, others are more
+difficult. In the medium level, the words are longer and more difficult. It is
+suitable for ages 9+. The hard level is just that, hard, &ie; the words are
+difficult to spell and not very well known. This level is challenging, even for
+adults.
+</para>
+
+<para>After a word is guessed (or the hangman is completed), you are
+prompted for another word and you can either use the
+<keycap>Y</keycap> or <keycap>N</keycap> keys or the mouse to answer
+yes or no. If you say <guilabel>No</guilabel>, the game quits. If you
+say <guilabel>Yes</guilabel>, another word is ready to be guessed.
+</para>
+
+<para>You type the letter you want to try in the text box (the mouse cursor is
+ready in the text box) and you hit the &Enter; key. If the letter belongs to the
+word, it takes its place, as many times as it appears in the word. If the
+letter does not belong to the word, it goes in the Misses field and a further
+part of the hangman is drawn on the right. You have ten tries and after that
+you lose and the correct word is displayed.
+</para>
+
+<para>During the game, you can choose to start a new game by going in the
+<guimenu>Game</guimenu> menu and choosing <guimenuitem>New</guimenuitem> or
+clicking on the <guiicon>New</guiicon> icon on the toolbar. You can also change
+the level with the level button on the toolbar (this will bring you a new word
+for the new level).</para>
+
+<para>
+Future improvement (in &kde; 4) will allow you to create your own words file.
+</para>
+</sect1>
+
+<sect1 id="languages">
+<title>Playing in different languages</title>
+<para>
+You can play &khangman; in twenty-four languages: Brazilian Portuguese, Bulgarian, Catalan, Czech, Danish, Dutch, English,
+Finnish, French, German, Hungarian, Irish (Gaelic), Italian, Norwegian (Bokm&#229;l), Norwegian (Nynorsk), Portuguese, Spanish, Serbian (Latin and Cyrillic), Slovenian, Tajik, Swedish, Russian and Turkish.
+</para>
+
+<para>
+By default, after the first installation of &khangman;, only English and your &kde; language if it is one of the above and if you have the corresponding kde-i18n package will be installed. For example if you are a Danish user and if you have &kde; in Danish, in <guimenu>Languages</guimenu> you will see two items: English and Danish and Danish will be the default.
+</para>
+
+<para>
+You can still play &khangman; in other languages. It is very easy to add new data in &khangman;. All you need is a working Internet connection.
+You click on the <guimenu>File</guimenu> menu and then on <guimenu>Get Words in New Language...</guimenu>. A dialog appears, similar to this one:
+</para>
+
+<screenshot>
+<screeninfo>The Get New Words dialog for &khangman;</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="getnewstuff.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>The Get New Words dialog for &khangman;</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+Click on the language name you want to install and then on the <guibutton>Install</guibutton> button. If the language is successfully installed, a green tick is displayed in front of the language name. You click on the <guibutton>Close</guibutton> button to close the Get New Words dialog (if you want another language, you get repeat these steps).
+</para>
+
+<para>
+You can then easily change the language by going in the <guimenu>Languages</guimenu> and choose the new language.
+</para>
+
+<para>
+Please note that you can now type the special characters in a language by displaying the <interface>Special Characters Toolbar</interface>.
+This toolbar holds buttons with an icon of each special character per language like &eacute; in French for example. Clicking on such a
+button will write the corresponding letter in the input line and you validate your choice with Enter. You can of course also use the keyboard layout corresponding to the language. This toolbar can be shown or hidden. The setting is restored next time you play &khangman;.
+</para>
+
+<important><para>
+Please note that you need Arial and URW Bookman fonts in order to display the special characters correctly in some languages. Provided you have those fonts installed, &khangman; will automatically use them. If you see small squares instead of letters, then you may not have one of these fonts installed. Type <command>fonts:/</command> into the &konqueror; address bar to check which fonts you have installed.
+</para></important>
+
+</sect1>
+<sect1 id="few-tips">
+<title>A few tips</title>
+<para>
+Try to guess the vowels first. Then have a go with the most common consonants:
+l, t, r, n, s
+</para>
+<para>corresponding:
+when you see <quote>io</quote>, try n after that, in French and English.
+</para>
+<para>
+In Brazilian Portuguese, Catalan, Spanish and Portuguese, the accented
+vowels can be discovered when you type the non accented corresponding
+vowel. For example, all the accented <quote>a</quote> are displayed in
+the word when you type <quote>a</quote>. This is when <guilabel>Type accented
+letters</guilabel> on the <guilabel>Languages</guilabel> page of &khangman;'s
+configuration dialog is not checked. When <guilabel>Type accented
+letters</guilabel> is checked, then you have to type
+the accented letters yourself. When you type <quote>a</quote>, only
+<quote>a</quote> is displayed and you have to type for example
+&atilde; for this letter to be displayed.
+</para>
+<para>
+Did you know? In English, the most common letter is e (12.7%), followed by t
+(9.1%) then a (8.2%), i (7.0%) and n (6.7%).
+</para>
+</sect1>
+
+
+</chapter>
+
+<chapter id="menus">
+<title>Menubar and toolbars</title>
+
+<sect1 id="mainwindow">
+<title>The Main &khangman; Window</title>
+
+<para>The <guimenu>Game</guimenu> menu has 3 items:
+<guimenuitem>New</guimenuitem>, <guimenuitem>Get Words in New Language...</guimenuitem> and
+<guimenuitem>Quit</guimenuitem>.</para>
+
+<para><guimenuitem>New</guimenuitem> brings you a new game, &ie; a new
+word to guess, in the same level you already
+are. <guimenuitem>Get Words in New Language...</guimenuitem> will display the Get New Stuff dialog to allow you to download data in a new language. <guimenuitem>Quit</guimenuitem> quits the game by closing the
+main window and writing the actual settings in the configuration
+file.</para>
+
+<para>
+The <guimenu>Level</guimenu> menu allows you to choose the level, &ie; the difficulty of the word to guess.
+</para>
+
+<para>
+The <guimenu>Languages</guimenu> menu allows you to change the language the words are displayed in.
+</para>
+
+<para>
+The <guimenu>Look</guimenu> menu proposes two themes: the <guimenuitem>Sea Theme</guimenuitem> and the <guimenuitem>Desert Theme</guimenuitem>. The background and the font colors changes for each theme.
+</para>
+
+<para>
+The <guimenuitem>Settings</guimenuitem> menu allows you to configure
+&khangman; easily. First, <guimenuitem>Toolbars</guimenuitem> and
+<guimenuitem>Show Statusbar</guimenuitem> give you the possibility to
+hide/show the toolbars and statusbar.
+</para>
+
+<para>There are two toolbars: the main one which is the one on top
+with the buttons and combo boxes and the
+<guilabel>Special Characters</guilabel> toolbar which, when it is shown, is
+on the bottom. This toolbar has buttons with the special characters
+for each language: accented letters and other special characters. This
+allows users to easily play in another language without having to configure
+a new keyboard layout. You click on a special letter and it is
+displayed as the letter to try. Pressing &Enter; will make the program
+see if the letter is present in the word or not. The toolbar can be
+hidden if you don't want it. This is saved in the configuration file
+so if the toolbar is hidden, it will be hidden next time you run
+&khangman;.
+</para>
+<tip>
+<para>
+It is of course possible to move the toolbars around. Put the mouse
+cursor on the small handle on the left of the toolbar, press the &LMB;
+and drag the toolbar to position it on the screen where you want
+it. If you point the mouse on one of the toolbars and press the right
+mouse button, a context menu appears to let you choose different
+options for the toolbar.
+</para>
+</tip>
+<para>
+<guimenuitem>Configure Shortcuts...</guimenuitem> is a standard &kde; setting dialog that allows you to
+choose different shortcut keys for different actions. For example,
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo> is the
+standard shortcut for <guimenuitem>Quit</guimenuitem>.</para>
+<para><guimenuitem>Configure Toolbars...</guimenuitem> is also a
+standard &kde; menu item that allows you to add or suppress items from
+the toolbar.</para>
+
+<screenshot>
+<screeninfo>&khangman; Desert theme</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="khangman2.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&khangman; Desert theme</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para> Here you have &khangman; with the Desert theme, Catalan language and level Easy. The
+<interface>Characters</interface> toolbar is shown here.</para>
+
+<para>The level is chosen with a combo box in the toolbar or via the <guimenu>Level</guimenu> menu in the menubar. The available levels are <guimenuitem>Easy</guimenuitem>, <guimenuitem>Medium</guimenuitem>, <guimenuitem>Animals</guimenuitem> and <guimenuitem>Hard</guimenuitem>. Easy is related to common objects a child aged six
+or seven knows. Medium regards nouns a bit more challenging, hard is
+quite difficult and animals is only animals nouns. </para>
+
+<para> All words are nouns. No verbs, no adjectives. The chosen level
+ is then displayed on the statusbar.</para>
+<para>Only letters are allowed to be typed in the text box.</para>
+</sect1>
+
+<sect1 id="settings">
+<title>Available Settings</title>
+<para>
+A toolbar is provided for quick access to some settings. You can click on a button to have a new game (i.e. a new word), or to quit the game. The level and the theme are easily changed via 2 combo boxes on the toolbar.
+</para>
+<para>
+In <guimenu>Settings</guimenu>, <guimenu>Configure &khangman;...</guimenu> you will find tree pages. The first one is for <guilabel>General</guilabel> settings.
+</para>
+
+<sect2 id="general-settings">
+<title>General Settings</title>
+
+<screenshot>
+<screeninfo>&khangman; General settings</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&khangman; General settings</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para><guilabel>Require more guesses for duplicate letters</guilabel>: this is unchecked as default. When unchecked, if you try the letter "a" and the word has several as, they will be all displayed. For example if the word is "potato" and you try "o", both os will be diaplayed. If you check this option however, only the first "o" will be displayed and you will have to try it one more time to display the second "o" in "potato". This increases the difficulty.
+</para>
+
+<para><guilabel>Do not display the 'Congratulations! You won!' dialog</guilabel>: the default is unchecked, that means that when you win a game, a message box will be displayed to tell you that you won and ask you if you want to play again. If you check this option, this dialog is not displayed anymore, instead a new game starts directly after 3 seconds.
+</para>
+
+<para>
+In the Sounds section, if you check <guilabel>Enable sounds</guilabel> then a sound will be played on new game and another sound will be played when you win a game.
+</para>
+
+</sect2>
+<sect2 id="languages-settings">
+<title>Languages Settings</title>
+<para>The <guilabel>Languages</guilabel> Settings tab allows you to set some settings specific to some languages. If the settings are not available for the language you are playing in then those settings will be grayed and disabled so you cannot choose them.
+</para>
+
+<screenshot>
+<screeninfo>&khangman; Languages Settings</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings2.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&khangman; Languages Settings</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+Some languages also have hints to help you guess the word. The hint is shown by a right-click and gives a short definition of the word to guess. If this setting is enabled and if you check the option <guilabel>Show hints</guilabel>, you can &RMB; click anywhere on the game and get a hint shown for four seconds. This hint should help you to guess the word more easily.
+</para>
+
+<para><guilabel>Type accented letters</guilabel> is available for Brazilian Portuguese, Catalan, Portuguese and Spanish in &khangman;'s configuration dialog. If you check <guilabel>Type accented letters</guilabel> then you will have to type all accented vowels (like &atilde;). If this remains unchecked, when you type any vowel, all accented vowels will be displayed as well.
+</para>
+
+</sect2>
+
+<sect2 id="timers-settings">
+<title>Timers Settings</title>
+<para>The <guilabel>Timers</guilabel> Settings tab allows you to <guilabel>Set the time for displaying the hint</guilabel> and to <guilabel>Set the time for Already Guessed Letter</guilabel> tooltip.
+</para>
+
+<screenshot>
+<screeninfo>&khangman; Timers Settings</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings3.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&khangman; Timers Settings</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+<guilabel>Set the time for displaying the hint:</guilabel> allows you to set a greater time for showing the hint label. It is necessary to increase the time for younger children for example as they read more slowly than adults.
+</para>
+
+<para><guilabel>Set the time for displaying the Already Guessed Letter</guilabel> allows you to increase or decrease the time for displaying the Already Guessed Letter tooltip. This tooltip is a label which appears when you tried a letter that was already tried. Some people will want not to see it for long while children will need time to understand it and thus will need to set the display for a longer duration.
+</para>
+
+</sect2>
+
+</sect1>
+
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="khangman-mainwindow">
+<title>Menus and Shortcut Keys</title>
+
+<sect2>
+<title>The <guimenu>Game</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
+</shortcut>
+<guimenu>Game</guimenu>
+<guimenuitem>New</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>New</action> game (&ie; new word)</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>G</keycap></keycombo>
+</shortcut>
+<guimenu>Game</guimenu>
+<guimenuitem>Get Words in New Language...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Display</action> the KNewStuff dialog which lists all the data available in the different languages. </para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+</shortcut>
+<guimenu>Game</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quits</action> &khangman;</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Level</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Animals</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the list of animals words to guess</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Easy</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the list of easy words to guess</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Medium</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the list of medium difficulty words to guess</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Hard</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the list of difficult words to guess</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Language</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Language</guimenu>
+<guimenuitem>English</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the English language for the words to guess.</para>
+<para>All other installed languages are displayed as items in this menu as well.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Look</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Look</guimenu>
+<guimenuitem>Sea Theme</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the Sea background picture and associated font colors</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Look</guimenu>
+<guimenuitem>Desert Theme</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the Desert background picture and associated font colors</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Toolbars</guisubmenu>
+<guimenuitem>Main (&khangman;)</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the Main Toolbar</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Toolbars</guisubmenu>
+<guimenuitem>Special Characters (&khangman;)</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the Characters Toolbar</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><menuchoice>
+
+<guimenu>Settings</guimenu>
+<guimenuitem>Show Statusbar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the statusbar</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Open</action> standard &kde; setting dialog that allows you to
+choose different shortcut keys for different actions.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> the items you want to put in the toolbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure &khangman;...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Display</action> the &khangman; settings dialog
+</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Help</guimenu> Menu</title>
+&help.menu.documentation;
+</sect2>
+</sect1>
+</chapter>
+
+<chapter id="developers">
+<title>Developer's Guide to &khangman;</title>
+
+<sect1 id="changing-words">
+<title>How to add words in a new language for the game</title>
+
+<para>Thanks to Stefan Asserhäll, it is very easy to add a new language
+directly to the game. The procedure described here can also be
+found in the <filename class="directory">khangman</filename> source folder
+in the file <filename>README.languages</filename>. Please follow the procedure and then send me the files tarred and gzipped to annemarie.mahfouf@free.fr.
+</para>
+<para>
+The twenty four available languages so far by code are: bg ca cs da de en es fr fi ga hu it nb nl nn pt pt_BR ru sl sr sr@Ltn sv tg and tr. If your language code is not among those, you can proceed further.
+</para>
+<para>Most of this data should be completed to include <emphasis>hints</emphasis>, please see below. Complete data: bg de fr en it only have hints so the other above languages must be updated as soon as possible.
+</para>
+<para>Be sure you are working with the latest svn trunk sources of &khangman; by
+issuing a
+<screen><userinput><command>
+svn up khangman
+</command></userinput></screen>
+in the kdeedu module. Then
+<screen><userinput><command>
+cd kdeedu/khangman
+</command></userinput></screen>
+</para>
+<para>The words are stored in 4 separate files, one for each level. The files are in
+<filename class="directory">/khangman/data/en</filename>. The file
+<filename>easy.txt</filename> is for level easy, the file
+<filename>medium.txt</filename> is for level medium, the file
+<filename>animals.txt</filename> is for level animals and the file
+<filename>hard.txt</filename> is for level hard.</para>
+<para>English is the default and thus the only language to be shipped with &khangman;. All other languages data are put in the correct kde-l10n.
+</para>
+<procedure>
+<step><para>Enter the following commands in a &konsole; to create the folder
+ and files for the new language:</para>
+<!-- Do not wrap or indent the next line, it's white space sensitive -->
+<screen><userinput><command>./add_language <replaceable>language_code</replaceable></command></userinput></screen>
+<para>Here you must replace <replaceable>language_code</replaceable>
+with your language code.</para>
+</step>
+<step>
+<para>The files now use the kvtml format. The tag <sgmltag class="starttag">o</sgmltag> is for the word and the tag <sgmltag class="starttag">t</sgmltag> is for the hint. Try to match the hint with the level of difficulty. The level 'Easy' will require an easy hint but the level 'Hard' will require the definition in the dictionary. Try not to use words of the same family in the hint, that would give the word away too easily! </para>
+<para>An example of a kvtml file is as follow:</para>
+<programlisting><markup>
+ &lt;?xml version="1.0"?&gt;
+ &lt;!DOCTYPE kvtml SYSTEM "kvoctrain.dtd"&gt;
+ &lt;kvtml&gt;
+ &lt;e&gt;
+ &lt;o&gt;cane&lt;/o&gt;
+ &lt;t&gt;&egrave; il tuo animale domestico preferito&lt;/t&gt;
+ &lt;/e&gt;
+ ...
+ ...
+ &lt;/kvtml&gt;
+</markup></programlisting>
+</step>
+<step>
+<para>Edit all indicated text files in the new folder with a text editor,
+and replace each word inside the <sgmltag class="starttag">o</sgmltag> tag with a translated word and each hint inside a <sgmltag class="starttag">t</sgmltag> with a translated hint. It is not really important
+that the exact meaning is preserved, but try to keep the length and
+level of difficulty roughly the same.
+You can include words with white space or - in them, in that case the white space or the -
+will be shown instead of the _.
+Please contact &Anne-Marie.Mahfouf; <email>annemarie.mahfouf@free.fr</email> if there is anything special related to your language so I can adapt the code to it (especially the special and accented characters).</para>
+
+<para>You can just translate the words but you can also adapt them
+following the level and add new words if you want. For example,
+<quote>table</quote> is in level easy in English but in your language,
+it can be level medium. Feel free to adapt the files to your language
+needs. The number of words in a file is not important, you can add
+some if you want.</para>
+
+<para>Remember that all words are nouns.</para>
+
+<para> Note that you must use <emphasis role="bold">UTF-8 encoding</emphasis> when editing the
+files. If your editor cannot do this, try using &kwrite; or &kate;. When
+opening a file in &kwrite; or &kate; you can select utf8 encoding with
+the combo box at the top of the file open dialog.</para>
+
+<para>Please keep the actual English filenames in your
+<replaceable>language_code</replaceable> dir.</para>
+</step>
+
+<step>
+<para>Enter the following command to install the new data files:</para>
+<screen><userinput><command>make</command></userinput>
+<userinput><command>make install</command></userinput></screen>
+
+<para>You may have to become <systemitem
+class="username">root</systemitem> to run <command>make
+install</command>, depending on your installation.</para>
+</step>
+<step>
+<para>Run the game and check that your language has been added:</para>
+<screen><userinput><command>khangman</command></userinput></screen>
+</step>
+<step><para>Instead of committing your files, please sent them to
+&Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail; tarred and gzipped. As there are
+now twenty three languages, a wizard (KNewStuff) is now included in &khangman;
+to easily download and install new languages that are placed on the website.
+This is done to reduce the size of the kdeedu module and it will also be done in
+&klettres;, &kstars; and maybe &ktouch;.
+Please contact Anne-Marie by email if you need further information.</para>
+<para>When you send me the files, please don't forget to mention any <emphasis role="bold">special characters</emphasis> used in your language (put them in a text file, one per line and add this file in the tarball) and please mention any other specificity.</para>
+<para><emphasis>Please never commit files in a BRANCH as it might break the game.</emphasis></para>
+</step>
+</procedure>
+<para>Many thanks for your contribution!</para>
+</sect1>
+
+<sect1 id="internal">
+<title>What is stored by &khangman; and where</title>
+<para>
+When you get a new language via <menuchoice><guimenu>Game</guimenu> <guimenuitem>Get Words in New Language...</guimenuitem></menuchoice>, the new language data is stored in <filename class="directory">$~/.kde/share/apps/khangman/data</filename> in the language code folder. The available language dir names are also stored in the &khangman; config file in <filename>~/.kde/share/config/khangmanrc</filename>.
+</para>
+<para>
+The provider name (i.e. the address of the website where to download the new languages) is stored in <filename>$KDEDIR/share/apps/khangman/khangmanrc</filename>.
+</para>
+<para>
+The English language (default) and the user language from his i18n package(s) (if available) are stored in <filename class="directory">$KDEDIR/share/apps/khangman</filename>.
+</para>
+<para>
+In the configuration file, stored for each user in his <filename>~/.kde/share/config/khangmanrc</filename> are saved all the game settings such as the background, last level played, ... plus the files that were downloaded from the KNewStuff dialog.
+</para>
+</sect1>
+<sect1 id="planned-features">
+<title>Planned Features for &khangman;</title>
+<para>
+A planned feature is of course to have more language data and also hints in every language. You can help for this in your own language if it is not done yet. Please contact me if you want to help with this, it's just a matter of translating the English words to your language (see <link linkend="changing-words">How to add words in a new language for the game</link>).
+</para>
+<para>
+What can also be done is to use other kvtml files like the ones that are on the
+&kde;-Edu website to play &khangman;. For example, imagine you can play the
+capitals of the world, the hint will tell you the country and you have to guess
+the capital. Or learn words in another language, the hint is the word in your
+language, the word to guess is the translation in the new language.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>I have an error message telling me the pictures cannot be found.</para>
+</question>
+<answer>
+<para>The game installs by default in <filename
+class="directory">/usr/local/kde</filename> so add <filename
+class="directory">/usr/local/kde/bin</filename> to your path and set
+the <envar>KDEDIR</envar> variable to <filename
+class="directory">/usr/local/kde</filename> before running the
+game. An easy way is to configure &khangman; with the option
+<option>--prefix</option>=$<envar>KDEDIR</envar> where
+$<envar>KDEDIR</envar> is where the rest of &kde; is installed. This
+could vary widely, depending on the distribution and operating system
+you.</para>
+</answer>
+</qandaentry>
+<qandaentry>
+<question>
+<para>&khangman; does not start correctly after I upgraded from an earlier version to the &kde; 3.5 version</para>
+</question>
+<answer>
+<para>
+There might be a problem due to the change of the configuration file. Please remove the <filename>khangmanrc</filename> file in your <filename class="directory">$HOME/.kde/share/config</filename> folder.
+</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+
+<para>
+&khangman;
+</para>
+<para>
+Program copyright 2001-2006 &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;
+</para>
+<para>
+Contributors:
+<itemizedlist>
+<listitem><para>Hangman graphics: Renaud Blanchard
+<email>kisukuma@chez.com</email></para> </listitem>
+<listitem><para>Sounds: Ludovic Grossard
+<email>ludovic.grossard@libertysurf.fr</email></para> </listitem>
+<listitem><para>Blue theme, icons and code: &Primoz.Anzur;
+&Primoz.Anzur.mail;</para> </listitem>
+<listitem><para>Swedish data files, coding help, transparent pictures and i18n fixes: Stefan Asserhäll
+<email>stefan.asserhall@telia.com
+</email></para> </listitem>
+<listitem><para>Nature theme: Joe Bolin
+<email>jbolin@users.sourceforge.net</email></para> </listitem>
+<listitem><para>Softer Hangman Pictures: Matt Howe
+<email>mdhowe@bigfoot.com</email></para> </listitem>
+<listitem><para>Spanish data files: eXParTaKus
+<email>expartakus@expartakus.com
+</email></para> </listitem>
+<listitem><para>Spanish data hints: Rafael Beccar
+<email>rafael.beccar@kdemail.net
+</email></para> </listitem>
+<listitem><para>Danish data files: Erik Kjaer Pedersen
+<email>erik@mpim-bonn.mpg.de
+</email></para> </listitem>
+<listitem><para>Finnish data files: Niko Lewman
+<email>niko.lewman@edu.hel.fi
+</email></para> </listitem>
+<listitem><para>Brazilian Portuguese data files: João Sebastião de Oliveira Bueno
+<email>gwidion@mpc.com.br
+</email></para> </listitem>
+<listitem><para>Catalan data files: Antoni Bella
+<email>bella5@teleline.es
+</email></para> </listitem>
+<listitem><para>Italian data files: Giovanni Venturi
+<email>jumpyj@tiscali.it
+</email></para> </listitem>
+<listitem><para>Dutch data files: Rinse
+<email>rinse@kde.nl
+</email></para> </listitem>
+<listitem><para>Portuguese data files: Pedro Morais
+<email>morais@kde.org
+</email></para> </listitem>
+<listitem><para>Serbian (Cyrillic and Latin) data files: Chusslove Illich
+<email>chaslav@sezampro.yu
+</email></para> </listitem>
+<listitem><para>Slovenian data files: Jure Repinc
+<email>jlp@holodeck1.com
+</email></para> </listitem>
+<listitem><para>Czech data files: Luk&aacute;&scaron; Tinkl
+<email>lukas@kde.org
+</email></para> </listitem>
+<listitem><para>Tajik data files: Roger Kovacs
+<email>rkovacs@khujand.org
+</email></para> </listitem>
+<listitem><para>Norwegian (Bokm&#229;l) data files: Torger &#197;ge Sinnes
+<email>torg-a-s@online.no
+</email></para> </listitem>
+<listitem><para>Hungarian data files: Tamas Szanto
+<email>tszanto@mol.hu
+</email></para> </listitem>
+<listitem><para>Norwegian (Nynorsk) data files: Gaute Hvoslef Kvalnes
+<email>gaute@verdsveven.com
+</email></para> </listitem>
+<listitem><para>Turkish data files: Mehmet &Ouml;zel
+<email>mehmet_ozel2003@hotmail.com
+</email></para> </listitem>
+<listitem><para>Bulgarian data files: Radostin Radnev
+ <email>radnev@yahoo.com
+</email></para> </listitem>
+<listitem><para>Irish (Gaelic) data files: Kevin Patrick Scannell
+ <email>scannell@slu.edu
+</email></para> </listitem>
+<listitem><para>Coding help: &Robert.Gogolok;
+&Robert.Gogolok.mail;</para> </listitem>
+<listitem><para>Coding help: Benjamin Meyer
+<email>ben@meyerhome.net</email></para> </listitem>
+<listitem><para>Code fixes: Lubos Lun&agrave;k
+<email>l.lunak@kde.org</email></para> </listitem>
+<listitem><para>Code fixes: Albert Astals Cid
+<email>tsdgeos@terra.es</email></para> </listitem>
+<listitem><para>Usability study: Celeste Paul
+<email>seele@obso1337.org</email></para> </listitem>
+</itemizedlist>
+</para>
+
+<para>
+Documentation copyright 2001-2005 &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL; <!-- FDL: do not remove -->
+&underGPL; <!-- GPL License -->
+
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-khangman">
+<title>How to obtain &khangman;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes: nil
+sgml-general-insert-case: lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
diff --git a/doc/khangman/khangman1.png b/doc/khangman/khangman1.png
new file mode 100644
index 00000000..24bd9a25
--- /dev/null
+++ b/doc/khangman/khangman1.png
Binary files differ
diff --git a/doc/khangman/khangman2.png b/doc/khangman/khangman2.png
new file mode 100644
index 00000000..44b0bfe9
--- /dev/null
+++ b/doc/khangman/khangman2.png
Binary files differ
diff --git a/doc/khangman/man-khangman.6.docbook b/doc/khangman/man-khangman.6.docbook
new file mode 100644
index 00000000..a3d95fe6
--- /dev/null
+++ b/doc/khangman/man-khangman.6.docbook
@@ -0,0 +1,63 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>khangman</command></refentrytitle>
+<manvolnum>6</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>khangman</command></refname>
+<refpurpose>The classical hangman game for KDE</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>khangman</command>
+<arg choice="opt">KDE Generic Options</arg>
+<arg choice="opt">Qt Generic Options</arg>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&khangman; is a game based on the well known hangman game. It is
+aimed for children 6 and above. It has four levels of difficulty: Animals
+(animals words), Easy, Medium and Hard.</para><para>A word is picked at
+random and the letters are hidden. You must guess the word by trying one
+letter after another. Each time you guess a wrong letter, part of a picture
+of a hangman is drawn. You must guess the word before getting hanged! You
+have 10 tries.</para><para>This application is part of the &kde; Edutainment
+module.</para>
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>More detailed user documentation is available from <ulink
+url="help:/khangman">help:/khangman</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/khangman</parameter></userinput>).</para>
+
+<para>There is also further information available at the <ulink url="http://edu.kde.org/khangman/">&kde; Edutainment web site</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para>&khangman; was written by <personname><firstname>Primoz</firstname><surname>Anzur</surname></personname> and &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;</para>
+<para>This manual page based on the one prepared by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> for the Debian project.</para>
+
+
+</refsect1>
+
+</refentry>
diff --git a/doc/khangman/settings1.png b/doc/khangman/settings1.png
new file mode 100644
index 00000000..d360f306
--- /dev/null
+++ b/doc/khangman/settings1.png
Binary files differ
diff --git a/doc/khangman/settings2.png b/doc/khangman/settings2.png
new file mode 100644
index 00000000..58dd08ba
--- /dev/null
+++ b/doc/khangman/settings2.png
Binary files differ
diff --git a/doc/khangman/settings3.png b/doc/khangman/settings3.png
new file mode 100644
index 00000000..de812001
--- /dev/null
+++ b/doc/khangman/settings3.png
Binary files differ
diff --git a/doc/kig/Makefile.am b/doc/kig/Makefile.am
new file mode 100644
index 00000000..bafa3f6c
--- /dev/null
+++ b/doc/kig/Makefile.am
@@ -0,0 +1,5 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
+
diff --git a/doc/kig/constructed_a_point.png b/doc/kig/constructed_a_point.png
new file mode 100644
index 00000000..300957ad
--- /dev/null
+++ b/doc/kig/constructed_a_point.png
Binary files differ
diff --git a/doc/kig/constructed_script_object.png b/doc/kig/constructed_script_object.png
new file mode 100644
index 00000000..5c8a1ddd
--- /dev/null
+++ b/doc/kig/constructed_script_object.png
Binary files differ
diff --git a/doc/kig/constructing_a_circle.png b/doc/kig/constructing_a_circle.png
new file mode 100644
index 00000000..e3666db9
--- /dev/null
+++ b/doc/kig/constructing_a_circle.png
Binary files differ
diff --git a/doc/kig/constructing_a_circle_2.png b/doc/kig/constructing_a_circle_2.png
new file mode 100644
index 00000000..b66e9982
--- /dev/null
+++ b/doc/kig/constructing_a_circle_2.png
Binary files differ
diff --git a/doc/kig/edit_types_dialog.png b/doc/kig/edit_types_dialog.png
new file mode 100644
index 00000000..54f27194
--- /dev/null
+++ b/doc/kig/edit_types_dialog.png
Binary files differ
diff --git a/doc/kig/index.docbook b/doc/kig/index.docbook
new file mode 100644
index 00000000..ff3c3623
--- /dev/null
+++ b/doc/kig/index.docbook
@@ -0,0 +1,998 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
+"dtd/kdex.dtd" [
+<!ENTITY kseg "<application>KSeg</application>">
+<!ENTITY cabri "<application>Cabri</application>">
+<!ENTITY drgeo "<application>Dr.Geo</application>">
+<!ENTITY package "kdeedu">
+<!ENTITY kappname "&kig;">
+<!ENTITY % addindex "IGNORE">
+<!ENTITY % English "INCLUDE">
+<!-- change language only here -->
+]
+>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kig; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Dominique</firstname> <surname>Devriese</surname>
+<affiliation>
+<address><email>devriese@kde.org</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+
+<copyright>
+<year>2002</year><year>2003</year><year>2004</year> <holder>Dominique
+Devriese</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2005-08-20</date> <releaseinfo>0.10.5</releaseinfo>
+
+<abstract>
+<para>
+&kig; is a &kde; application for Interactive Geometry.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>KDE-Edu</keyword>
+<keyword>Kig</keyword>
+<keyword>Interactive Geometry</keyword>
+<keyword>KGeo</keyword>
+<keyword>Cabri</keyword>
+<keyword>Dr.Geo</keyword>
+<keyword>KSeg</keyword>
+</keywordset>
+</bookinfo>
+
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&kig; is an application for Interactive Geometry. It's intended
+to serve two purposes:
+</para>
+
+<itemizedlist>
+<listitem><para> Allow students to interactively explore
+mathematical figures and concepts using the computer.
+</para></listitem>
+
+<listitem><para> Serve as a <acronym>WYSIWYG</acronym> tool for
+drawing mathematical figures and including them in other
+documents.</para></listitem>
+</itemizedlist>
+
+<para>
+You can report problems in &kig; using the internal bug
+reporting tool
+(<menuchoice><guimenu>Help</guimenu><guimenuitem>Report
+Bug...</guimenuitem></menuchoice>), or just contact me at
+<email>toscano.pino@tiscali.it</email>.
+</para>
+<para>
+Since &kig; supports macros and the construction of locuses, it allows for
+some
+rather advanced macros to be defined. If you have created an
+interesting macro, which you think might be useful for other
+people, please mail it to me at
+<email>toscano.pino@tiscali.it</email>, so I can include it in the
+distribution (if you do this, it will be licensed under the
+terms of &kig;'s license, the <ulink
+url="http://www.gnu.org/licenses/licenses.html#GPL">GPL</ulink>,
+so that other people can freely use and adapt it).
+</para>
+</chapter>
+
+
+<chapter id="using-kig-basic">
+<title>Basic usage</title>
+<section id="constructing-objects">
+<title>Constructing Objects</title>
+<section id="constructing-points">
+<title>Constructing points</title>
+<para>
+You can construct points in several ways:</para>
+<itemizedlist>
+<listitem>
+<para>
+Select <menuchoice><guimenu>Objects</guimenu>
+<guisubmenu>Points</guisubmenu>
+<guimenuitem>Point</guimenuitem></menuchoice> from the
+menubar or
+press the appropriate button in the toolbar. You can
+then construct a point by clicking at the desired
+position in the window.</para> <note><para>Actually, this
+works the same way for constructing other objects as
+well: click on the desired menubar entry or toolbar
+button and select the necessary items to construct
+the object.</para></note>
+</listitem>
+<listitem>
+<para>
+Since you often need to construct points, simply
+clicking somewhere in the screen with the &MMB; will
+construct a point for you, without going to a menu or
+button.
+</para>
+</listitem>
+<listitem>
+<para>
+You can construct points while you are building other
+objects in the background, optionally selecting them
+for the object you are building. For more on this,
+see <xref linkend="constructing-other-objects" />.
+</para>
+</listitem>
+</itemizedlist>
+
+<screenshot>
+<screeninfo>A point has been constructed</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="constructed_a_point.png"
+format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>A point has been constructed</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</section>
+
+<section id="constructing-other-objects">
+<title>Constructing Other Objects</title>
+<para>
+Constructing objects other than points is usually done by
+selecting the appropriate entry in the
+<guimenu>Objects</guimenu> menu, or by clicking on one of
+the toolbar buttons.
+</para>
+<screenshot>
+<screeninfo>Constructing a circle</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="constructing_a_circle.png"
+format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Constructing a circle</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+<para>
+This will start the construction of the chosen object type.
+All of these types require arguments. For example, if you
+selected to construct a circle by center and point, you will need to
+give two points: one for the center, and one for the point on
+the circle.
+</para>
+<para>
+These arguments are objects too, which can also be selected, simply by
+clicking on them. When you move the cursor over an argument you want to use to
+construct an object, a preliminary image will be shown of the object, so you will
+know what it will look like. For objects that require points as arguments, you
+can place a new point at the
+current cursor position and select it by clicking the &LMB;.
+</para>
+<para>
+You can always cancel the construction of the new object by
+pressing the &Esc; button or by clicking
+on the <guiicon>Stop</guiicon> button (red octagon with an
+<quote>X</quote>) on the toolbar.
+</para>
+<screenshot>
+<screeninfo>Constructing a circle.</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="constructing_a_circle_2.png"
+format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Constructing a circle</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</section>
+</section>
+
+<section id="selecting-objects">
+<title>Selecting Objects</title>
+<para>
+Selecting objects can be done in two ways:
+</para>
+<itemizedlist>
+<listitem>
+<para>
+Simply clicking on an object causes that object to be selected, clearing the
+current selection. If you
+want to select multiple objects simultaneously, hold down the &Ctrl; key while
+clicking on an object.
+</para>
+</listitem>
+<listitem>
+<para>
+By clicking and dragging on an empty spot on the screen,
+you can select all objects within the rectangle that is
+created. This action will clear the current selection. As
+in the previous case, holding down the &Ctrl; key allows you
+to keep the current selection.
+</para>
+</listitem>
+</itemizedlist>
+<para>
+When you have more than one object under the mouse, you can easily
+choose which object select or add to the current selection. Click
+with the &LMB;, while holding the &Shift; key, to have a popup with
+all the objects under the mouse. Then, you can select the object
+you need. As said before, the behaviour of the &Ctrl; key will
+affect the selection.
+</para>
+
+<screenshot>
+<screeninfo>Selecting objects</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="selecting_objects.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Selecting objects</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</section>
+
+<section id="moving-objects">
+<title>Moving Objects</title>
+<para>
+To move objects, you must first <link
+linkend="selecting-objects">select</link> them.
+</para>
+<para>
+When the objects you want to move are selected, you can start
+moving them by &LMB; clicking and dragging any one of them. When you are done,
+simply release the &LMB;.
+</para>
+<note><para>For some types of objects (especially when defined by
+complicated locuses), moving them can be slow on old hardware. This
+is unfortunate, but inevitable, given the calculations involved.
+</para></note> <note><para>If you &RMB; click one of the selected objects, and
+choose
+<guimenuitem>Move</guimenuitem>, moving the mouse will move the object. When the
+object is moved to the desired position, another &LMB; click will stop the
+moving of the object.</para></note>
+</section>
+<section id="deleting-objects">
+<title>Deleting objects</title>
+<para>
+Deleting objects is done by first <link
+linkend="selecting-objects">selecting</link> them, and next doing either of
+these:
+<itemizedlist>
+<listitem>
+<para>
+Press the <keycap>Delete</keycap> key.
+</para>
+</listitem>
+<listitem>
+<para>
+Press the <guiicon>delete</guiicon> button on the toolbar.
+</para>
+</listitem>
+<listitem>
+<para>
+<mousebutton>Right</mousebutton>-click on one of the
+objects, and select
+<guimenuitem>Delete</guimenuitem>
+in the <link linkend="objects-context-menus">context
+menu</link> that appears.
+</para>
+</listitem>
+</itemizedlist>
+</para>
+</section>
+
+<section id="showing-hiding-objects">
+<title>Showing and hiding objects</title>
+<para>
+In &kig;, objects can be hidden. This is done by selecting
+the objects, &RMB; clicking one of
+them, and selecting
+<guimenuitem>Hide</guimenuitem> in
+the <link linkend="objects-context-menus">context menu</link>
+that appears.
+</para>
+<para>
+To unhide the objects, use the
+<menuchoice><guimenu>Edit</guimenu><guimenuitem>Unhide
+all</guimenuitem></menuchoice>. This will unhide all
+currently hidden objects.
+</para>
+
+<section id="night-vision">
+<title>Night Vision</title>
+<para>
+Night Vision is a particular way of working with hidden
+objects. When you have to move or change something in one or
+more object but without unhiding all the hidden objects you
+have, then the night vision mode will be of benefit to you.
+</para>
+<para>
+Basically, it allows you to see the hidden objects as if they
+were visible, so that you can manipulate them as you would normally.
+In Night Vision mode, the hidden objects will be visible with
+a grey colour.
+</para>
+<para>
+To toggle the night vision mode, use
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Wear
+Infrared Glasses</guimenuitem></menuchoice>.
+</para>
+</section>
+</section>
+
+<section id="undo-redo">
+<title>Undo/Redo</title>
+<para>
+In &kig;, you can undo almost any change you make in the
+document. Just use the
+<guiicon>undo</guiicon>/<guiicon>redo</guiicon> buttons on the
+toolbar, or the appropriate shortcuts.
+</para>
+</section>
+
+<section id="full-screen-mode">
+<title>Full Screen Mode</title>
+<para>
+&kig; also has a Full Screen mode. To use it, click the
+appropriate button on the toolbar, or select
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Full
+Screen Mode</guimenuitem></menuchoice>.
+</para>
+<para>
+To leave Full Screen mode,
+&RMB; click the screen at a place
+where there is no object present, and select
+<guimenuitem>Exit Full Screen Mode</guimenuitem>, or press the
+&Esc; key.
+</para>
+</section>
+</chapter>
+
+
+<chapter id="kig-object-types">
+<title>&kig; Object Types</title>
+<para>
+&kig; supports a rather large number of object types. Please
+note that not all of the available object types are shown in the
+toolbars: there are some objects that you can only
+construct via the <guimenu>Objects</guimenu> menu in the menu
+bar. Of course, as with all &kde; applications, the contents of the toolbars are
+configurable. Try out the
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+Toolbars...</guimenuitem></menuchoice> option if you want to do this.
+</para>
+</chapter>
+
+
+<chapter id="using-advanced">
+<title>Advanced Usage</title>
+<section id="objects-context-menus">
+<title>Context Menus</title>
+<para>
+&kig; has context menus for its objects. Try
+&RMB; clicking on an object in order to see
+a context menu appear. There are many options: for
+constructing other objects, setting colours, and even hiding,
+moving or deleting objects. Some objects have options of
+their own (&eg; you can redefine certain points to be
+constrained to a line if they previously weren't, &etc;).
+These options should be very straightforward to understand.
+</para>
+</section>
+
+<section id="document-context-menus">
+<title>Document context menus</title>
+<para>
+<mousebutton>Right</mousebutton>-clicking on the document (&ie; not on an
+object) will
+present a popup that you can use to start constructing a new object, change the
+coordinate system used, show hidden
+objects, and even zoom in and zoom out of the document.
+</para>
+</section>
+
+<section id="defining-macros">
+<title>Defining Macros</title>
+<para>
+One of the more advanced features in &kig; is its support for
+macros. This allows you to define new types of objects from
+other ones which are defined already.
+</para>
+<para>
+For example: Suppose you want to make a macro for constructing
+a circle from three points on it. You would input three points,
+then construct some perpendiculars and midpoints
+until you find the center. Now you can use the existing
+<quote>Construct a circle by center and point</quote> command
+(using one of the three points as the point for this command). The
+following image should make this a bit more clear:
+</para>
+<screenshot>
+<screeninfo>Test running macros</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="test_run_macro.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Test running macros</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+Next comes defining the macro. Select <guimenuitem>New
+macro</guimenuitem> from the <guimenu>Type</guimenu> menu, or
+click on the button on the toolbar. A wizard will appear and
+ask you to select the given objects. In our example, these
+are the three points. Select the three points (click on them
+to select, click again to unselect) and click the
+<guibutton>Next</guibutton> button to continue. Finally,
+select the last objects (only the circle in our example).
+</para>
+
+<screenshot>
+<screeninfo>The macro wizard</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="macro_wizard.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>The macro wizard</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para> After the previous steps are completed, click the
+<guibutton>Next</guibutton> button to continue. Enter a name
+and optionally a description for your new type, and click the
+<guibutton>Finish</guibutton> button. Your macro type is now
+finished.
+</para>
+
+<para>
+To use the new macro type, click its button on the toolbar or
+use the <guimenu>Objects</guimenu> menu. Constructing a macro
+object is just like constructing any other object.
+</para>
+<screenshot>
+<screeninfo>Using your new type</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="macros_at_work.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Using your new type</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</section>
+
+<section id="working-with-types">
+<title>Working with types</title>
+<para>
+As you saw in the previous chapter, &kig; allows you to create
+your own objects. &kig; also makes sure that once you have
+created an object, it is saved on exit and loaded on startup.
+You do not have to manually save or load macro definitions.
+However, &kig; does allow you to do more with the macros. If
+you select <menuchoice><guimenu>Types</guimenu><guimenuitem>Manage
+Types...</guimenuitem></menuchoice> from the menu, you will see
+a dialog where you can edit your types. It allows you to modify
+the existant types, delete types that are no longer used, export
+them to a file, or even load them from another file.
+</para>
+<screenshot>
+<screeninfo>Edit Types Dialog</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="edit_types_dialog.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>The Edit Types Dialog</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</section>
+
+<section id="text-labels">
+<title>Text labels</title>
+<para>
+&kig; allows you to add text labels to a construction. This
+is very useful for adding names, explanations or other text
+to constructions. &kig; can also display variable information
+about objects (also known as <quote>properties</quote>).
+</para>
+<para>
+To start constructing a text label, simply press the
+<guibutton>Text Label</guibutton> button in the &kig; toolbar or
+select <menuchoice><guimenu>Objects</guimenu><guisubmenu>Other
+</guisubmenu><guimenuitem>Text label</guimenuitem>
+</menuchoice> in the menubar.
+</para>
+<para>
+Next, you have to choose a location for the text label. You
+can either just select a random location on the screen, or
+choose to <quote>attach</quote> the label to an object.
+</para>
+<screenshot>
+<screeninfo>Attaching a label to a circle...</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="text_label_attaching.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Attaching a label to a circle...</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+<para>
+After you have selected where to put the label, the text label dialog appears.
+Here, you can type in
+the text that you want in the new label, and click
+<guibutton>Finish</guibutton>. You should now see the label in your document.
+</para>
+<screenshot>
+<screeninfo>The Text Label Dialog</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="text_label_wizard.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>The Text Label Dialog</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+<para>
+The previous example was a simple one, and limited to just
+text. However, there is also support for showing variable
+information about objects in a label (&eg; you can construct a
+label with the text <quote>This segment is %1 units
+long.</quote> where <token>%1</token> would be dynamically
+replaced with the length of a specific segment).
+</para>
+<para>
+To do this, enter a text with a number of placeholders (
+<token>%1</token>, <token>%2</token> &etc;) in it.
+Then, press the <guibutton>Next</guibutton> button to
+continue. If you want to change the text or variables later,
+you can go back using the <guibutton>Back</guibutton> button.
+</para>
+<para>
+The wizard now shows the text you entered with all
+placeholders replaced by something like <guilabel>argument
+1</guilabel>. Selecting the property connected to a certain argument is
+done by first clicking on the argument in question. Then click
+on the object that you need and that has this property, and
+then select the property itself in the popup
+menu that appears. For instance, in the example above, you
+would click <guilabel>argument 1</guilabel>, click on the
+correct segment in the main &kig; window, and select the
+property <guilabel>Length</guilabel>. Afterwards, you can
+fill in the rest of the variable parts, or select another
+property for one of the variable parts if you wish to change
+it. When you are ready, click the
+<guibutton>Finish</guibutton> button to complete the
+construction of the text label.
+</para>
+<screenshot>
+<screeninfo>Selecting a property for a variable
+part</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata
+fileref="text_label_wizard__select_property.png"
+format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Selecting a property for a variable part</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+</section>
+
+<section id="locuses">
+<title>Locuses</title>
+<para>
+&kig; supports the use of locuses. A locus is mathematically defined as
+the set of all points or lines that satisfy or are determined by specific
+conditions; as in <quote>the locus of points
+equidistant from a given point is a circle</quote>.
+Let's look at an example of how to use locuses in &kig;:
+</para>
+<para>
+Consider the following geometrical construction: We draw a
+circle, and a point that can move only along its circumference
+(construct this point by positioning the cursor on a circle, and clicking
+the &MMB;. If you then try to move the resulting point,
+you'll see that you cannot move it off the circle). Then, we
+draw a segment from that point to the center of the circle,
+and the midpoint of that segment.
+</para>
+<screenshot>
+<screeninfo>A simple construction using a locus</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata
+fileref="simple_locus_construction.png"
+format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>A simple construction using a locus</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+<para>
+Now if you move the point that is constrained to the circle,
+you'll see that the second point moves along with it. If you
+were to hold a pen at the second point, and move the
+first point around the entire circle, a new circle, half the
+size of the other would be drawn. The path that the second point
+travels while the first one moves around the circle is its locus.
+</para>
+<para>
+Actually constructing the locus of a point is very easy. Click
+the <guiicon>locus</guiicon> button in the toolbar, or select
+<menuchoice><guimenu>Objects</guimenu>
+<guisubmenu>Other</guisubmenu>
+<guimenuitem>Locus</guimenuitem>
+</menuchoice>
+from the menubar. Then select the constrained point as the
+moving point (the text <guilabel>Moving Point</guilabel> will
+appear as you move the mouse over it), and the other as the
+dependent point. The locus of the dependent point will then be drawn.
+</para>
+</section>
+</chapter>
+
+<chapter id="scripting">
+<title>Scripting</title>
+<para>
+&kig; allows you to create custom types in the Python
+scripting language. This is a very advanced feature, and I know
+of only one other Interactive Geometry program that has a similar
+functionality (the <acronym>GNOME</acronym> program &drgeo;).
+</para>
+<para>
+Python Scripting in &kig; basically allows you to create your
+own objects from certain parent objects. For example, if you are a math
+teacher, and you have some fancy way
+of calculating an interesting point on a conic, then instead of
+messing with complex constructions and macros, you could just
+write down in Python code how the point is to be calculated and
+then &kig; will show it for you.
+</para>
+<para>
+Suppose you were not aware of the &kig; built-in type <quote>Mid Point</quote>,
+and you wanted to show the midpoint of two given points. You
+would then click on the <guibutton>Python Script</guibutton>
+button in the toolbar, or select
+<menuchoice><guimenu>Objects</guimenu><guisubmenu>Other</guisubmenu>
+<guimenuitem>Python Script</guimenuitem></menuchoice> from the
+menubar. You are then presented with a wizard that allows you
+to proceed.
+</para>
+<screenshot>
+<screeninfo>The Script Object Wizard</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="script_wizard.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>The Script Object Wizard</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+<para>
+The first thing you have to do is select the arguments for the
+script object. In our example, this means the two points of
+which we want to show the midpoint. Select them in the &kig;
+main window, and click <guibutton>Next</guibutton> to proceed.
+</para>
+<para>
+Now you are presented with a text edit box where you can enter
+the code for you script object. Template code and some comments
+are already in place. It is important to make sure that your
+code is valid Python code. People familiar with Python will
+notice that we are actually defining a Python function called
+<function>calc</function>. It is therefore necessary to adhere
+to the Python rules for defining functions. For example, every
+line of the function should start with a <keysym>Tab</keysym>.
+The first line not starting with a <keysym>tab</keysym> ends the
+definition of the function.
+</para>
+<para>
+The Python function that we want to define is called
+<function>calc</function>, and in our case it accepts two arguments.
+These are the objects you have selected as arguments in the
+previous screen. You need as many arguments as you have
+selected there. They are called <parameter>arg1</parameter> and
+<parameter>arg2</parameter>, but you can change their names to
+something more meaningful if you want.
+</para>
+<para>
+In the function, you can do all sorts of calculations that you
+deem necessary, using the two arguments if needed. You should
+return the object you want to define. In our case, this is a
+<classname>Point</classname> object. The two arguments are also
+<classname>Point</classname> objects, and we
+can use the <function>Point.coordinate()</function> function to
+define the coordinates of the two given points.
+</para>
+<para>
+The calculation necessary in our example is very simple, we
+simply add the two sets of coordinates, and divide the new set
+by two. We then construct a new point using the result.
+The Python code needed is:</para>
+
+<programlisting>
+def calc( a, b ):
+m = ( a.coordinate() + b.coordinate() ) / 2;
+return Point( m )
+</programlisting>
+
+<screenshot>
+<screeninfo>Entering the code</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="script_wizard_entering_code.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Entering the code for the midpoint in the Script Object
+wizard.</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+<para>
+If you now click the <guibutton>Finish</guibutton> button,
+the new object will appear in the &kig; document. If you move
+one of the points, the newly created point will move along
+with it. Much more powerful objects can be built in this way:
+you are encouraged to try it out.
+</para>
+<screenshot>
+<screeninfo>Constructed a Script Object</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="constructed_script_object.png" format="PNG" />
+</imageobject>
+<textobject>
+<phrase>
+The newly constructed Script Object.
+</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+<para>
+All objects in &kig; can be used in the Python code. As we have
+seen above, points are of the <classname>Point</classname> class, and you
+can use &eg; the <function>Point.coordinate()</function> method. You can
+also return all kinds of objects, not just a <classname>Point</classname>.
+Many more classes and methods are available in the &kig; Python code,
+and a more complete reference is provided <ulink
+url="http://edu.kde.org/kig/manual/scripting-api/index.html">on
+the &kig; website</ulink>.
+</para>
+</chapter>
+
+<chapter id="kig-features">
+<title>&kig; Features</title>
+
+<itemizedlist>
+<listitem>
+<para>
+&kig; is an open source application. This means that you
+are free to use and modify it any way you like it.
+Distributing &kig; is subject to some restrictions,
+basically that everyone should have the same rights to use
+&kig;, including your modifications, as you and me.
+</para>
+<para>
+Free software programs are developed in a very open
+spirit, and its developers are usually very responsive to
+user feedback. Therefore, if you have any questions,
+complaints, or whatever about &kig;, please let the author
+know at <email>toscano.pino@tiscali.it</email>.
+</para>
+</listitem>
+<listitem>
+<para>
+&kig; is a KPart application, which means that you can
+embed it into other &kde; software. If you open a <literal
+role="extension">.kig</literal> file in &konqueror;, it
+can be opened directly in the &konqueror; screen without
+the need to start an external application.
+</para>
+</listitem>
+<listitem>
+<para>
+Working with &kig; should be very straightforward.
+Constructing objects is easy and interactive, with
+preliminary results being shown, &etc;. Moving, selecting
+and building all work as one would expect them to. Undo
+support should also be very intuitive.
+</para>
+</listitem>
+<listitem>
+<para>
+&kig; supports macros to be defined in a straightforward
+manner. These objects are presented to the user like
+normal objects. They are saved on exit and loaded on
+startup, so that they aren't lost on exit. You can
+manage these objects in the <guilabel>Manage Types</guilabel>
+dialog (see <xref linkend="working-with-types" />). You can export
+them
+to files, import them from files, edit and delete them.
+</para>
+</listitem>
+<listitem>
+<para>
+&kig; saves its data in a clear &XML; format.
+</para>
+</listitem>
+<listitem>
+<para>
+&kig; supports the construction of locuses.
+</para>
+</listitem>
+<listitem>
+<para>
+&kig; allows you to export a &kig; file to some interesting
+formats, like images, <application>XFig</application> and
+<application>LaTeX</application> files, and <acronym>SVG</acronym>
+vectorial images. This is rather useful, because not all programs
+support the &kig; file format yet.
+</para>
+</listitem>
+<listitem>
+<para>
+&kig; has a very flexible transformation system.
+</para>
+</listitem>
+<listitem>
+<para>
+&kig; aims to be compatible with its competitors. This is
+why it supports the &kgeo; file format, the &kseg; file
+format and partially the &drgeo; and &cabri; formats; morover,
+support for other formats is planned.
+</para>
+</listitem>
+</itemizedlist>
+</chapter>
+
+
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+&reporting.bugs; &updating.documentation;
+</chapter>
+
+
+<chapter id="credits">
+<title>Credits and License</title>
+
+<para>
+&kig;
+</para>
+<para>
+&kig; copyright 2002-2004 Dominique Devriese
+<email>devriese@kde.org</email>
+</para>
+
+<para>
+Documentation copyright 2002-2004 Dominique
+Devriese <email>devriese@kde.org</email>.
+</para>
+
+<para>
+Documentation copyright 2004-2005 Pino Toscano
+<email>toscano.pino@tiscali.it</email>.
+</para>
+
+<para>
+Reviewed by &Philip.Rodrigues; &Philip.Rodrigues.mail;.
+</para>
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL; &underGPL;
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kig">
+<title>How to obtain &kig;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+&install.compile.documentation;
+</sect1>
+
+</appendix>
+
+<appendix id="contributing">
+<title>Contribute</title>
+<section id="kig-is-free">
+<title>Free Software</title>
+<para>
+&kig; is <ulink
+url="http://www.gnu.org/philosophy/philosophy.html#AboutFreeSoftware">
+Free Software</ulink>. This means that its source code is
+freely available on the Internet, and everyone can use it,
+read it, modify it, and distribute it. I work on it as a
+hobby project, and I have already learned a lot about
+programming, C++, &kde;/&Qt;, math, software collaboration and open
+source projects in the process.
+</para>
+</section>
+
+<section id="contribute-to-kig">
+<title>Contribute</title>
+<para>
+In this chapter I want to point out to you (the user) the
+rights that &kig;'s license gives you. As with all free
+software, you are allowed (and encouraged) to fix problems
+you encounter while using it, to add features you miss, to
+distribute your modified program, and to send these
+modifications to me at <email>toscano.pino@tiscali.it</email>, so
+that I can include them in the next version for others to
+enjoy. Please note I personally have no financial interest in this
+project whatsoever.
+</para>
+<para>
+If you are uncertain of your rights to use this software, or
+other people's right to use any modifications you make to this
+program &etc;, please read the license. You can find it in the
+<filename>COPYING</filename> file in the &kig; source tree or
+the <guilabel>license</guilabel> tab in the <guilabel>About
+Kig</guilabel> dialog.
+</para>
+</section>
+
+<section id="howto-contribute">
+<title>How to contribute ?</title>
+<para>
+Any contributions are welcome. If you don't like the icons,
+or think that the manual needs updating, or if you have this really
+cool macro that you want to share with the world, do not
+hesitate to send it to me. Please note that your
+contributions will be distributed under the terms of the &GNU;
+<acronym>GPL</acronym>; you can find the terms of this license in the
+<filename>COPYING</filename> file in the &kig; source tree,
+and in the <link linkend="credits">Credits and
+Licenses</link> chapter in this manual.
+</para>
+</section>
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: xml
+End:
+--> \ No newline at end of file
diff --git a/doc/kig/macro_wizard.png b/doc/kig/macro_wizard.png
new file mode 100644
index 00000000..5b84a1b9
--- /dev/null
+++ b/doc/kig/macro_wizard.png
Binary files differ
diff --git a/doc/kig/macros_at_work.png b/doc/kig/macros_at_work.png
new file mode 100644
index 00000000..0f4b9807
--- /dev/null
+++ b/doc/kig/macros_at_work.png
Binary files differ
diff --git a/doc/kig/man-kig.1.docbook b/doc/kig/man-kig.1.docbook
new file mode 100644
index 00000000..0f1d4b1c
--- /dev/null
+++ b/doc/kig/man-kig.1.docbook
@@ -0,0 +1,109 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname><email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>kig</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>kig</command></refname>
+<refpurpose>an interactive geometry program for &kde;</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>kig</command>
+<group choice="opt"><option>-c, --convert-to-native</option>
+<group choice="opt"><option>-o, --outfile <replaceable>filename</replaceable></option>
+</group>
+</group>
+<arg choice="opt">KDE Generic Options</arg>
+<arg choice="opt">Qt Generic Options</arg>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kig; is an application for interactive geometry. It is intended to
+serve two purposes:</para>
+<itemizedlist><listitem><para>To allow students to interactively explore
+mathematical figures and concepts using the computer;</para></listitem>
+<listitem><para>To serve as a WYSIWYG tool for drawing mathematical figures and
+including them in other documents.</para></listitem></itemizedlist>
+<para>With this program you can do geometry on a computer just like you
+would on a blackboard in a classroom. However the program allows you to
+move and change parts of a geometrical drawing so that you can see how other
+parts change as a result.</para>
+<para>&kig; supports loci and user-defined macros. It also imports and
+exports both to and from foreign file formats including
+<application>Cabri</application>, <application>Dr. Geo</application>,
+&kgeo;, <application>KSeg</application> and <application>XFig</application>.</para>
+<para>This application is part of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<para>App options, in a variablelist</para>
+
+<variablelist>
+<varlistentry>
+<term><option>-c, --convert-to-native</option></term>
+<listitem><para>Do not show a &GUI;. Instead convert the specified file to
+native &kig; format. The native &kig; file will be written to standard
+output unless <option>--outfile</option> is passed.</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><option>-o, --outfile <replaceable>filename</replaceable></option></term>
+<listitem><para>Used with <option>--convert-to-native</option> to specify
+where to save the newly created &kig; file. Not specifying this option, or
+providing a filename of <filename>-</filename> will output the file to
+standard output.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>More detailed user documentation is available from <ulink
+url="help:/kig">help:/kig</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kig</parameter></userinput>).</para>
+
+<para>There is also further information available at the <ulink
+url="http://edu.kde.org/kig/">&kde; Edutainment website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para>&kig; was written by
+<personname><firstname>Dominique</firstname><surname>Devriese</surname></personname>
+<email>devriese@kde.org</email>,
+<personname><firstname>Maurizio</firstname><surname>Paolini</surname></personname>
+<email>paolini@dmf.bs.unicatt.it</email>,
+<personname><firstname>Franco</firstname><surname>Pasquarelli</surname></personname>
+<email>pasqui@dmf.bs.unicatt.it</email>,
+<personname><firstname>Pino</firstname><surname>Toscano</surname></personname>
+<email>toscano.pino@tiscali.it</email>, and others.</para>
+<para>This man page based on the one prepared for Debian by
+<personname><firstname>Ben</firstname><surname>Burton</surname></personname>
+<email>bab@debian.org</email>.</para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kig/script_wizard.png b/doc/kig/script_wizard.png
new file mode 100644
index 00000000..cbf9a3a8
--- /dev/null
+++ b/doc/kig/script_wizard.png
Binary files differ
diff --git a/doc/kig/script_wizard_entering_code.png b/doc/kig/script_wizard_entering_code.png
new file mode 100644
index 00000000..ce4ea4a1
--- /dev/null
+++ b/doc/kig/script_wizard_entering_code.png
Binary files differ
diff --git a/doc/kig/scripting-api/Doxyfile.scripting-api.in b/doc/kig/scripting-api/Doxyfile.scripting-api.in
new file mode 100644
index 00000000..ab665dae
--- /dev/null
+++ b/doc/kig/scripting-api/Doxyfile.scripting-api.in
@@ -0,0 +1,1156 @@
+# Doxyfile 1.3.7
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = "Kig Python Scripting API"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER = @KIGVERSION@
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = ./build
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 2 levels of 10 sub-directories under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of source
+# files, where putting all generated files in the same directory would otherwise
+# cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
+# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
+# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese,
+# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
+
+OUTPUT_LANGUAGE = English
+
+# This tag can be used to specify the encoding used in the generated output.
+# The encoding is not always determined by the language that is chosen,
+# but also whether or not the output is meant for Windows or non-Windows users.
+# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
+# forces the Windows encoding (this is the default for the Windows binary),
+# whereas setting the tag to NO uses a Unix-style encoding (the default for
+# all platforms other than Windows).
+
+USE_WINDOWS_ENCODING = NO
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is used
+# as the annotated text. Otherwise, the brief description is used as-is. If left
+# blank, the following values are used ("$name" is automatically replaced with the
+# name of the entity): "The $name class" "The $name widget" "The $name file"
+# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
+# members of a class in the documentation of that class as if those members were
+# ordinary class members. Constructors, destructors and assignment operators of
+# the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like the Qt-style comments (thus requiring an
+# explicit @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF = YES
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member
+# documentation.
+
+DETAILS_AT_TOP = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 2
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
+# only. Doxygen will then generate output that is more tailored for Java.
+# For instance, namespaces will be presented as packages, qualified scopes
+# will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = YES
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = YES
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = NO
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = NO
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS = creating-python-scripting-doc
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text.
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = @top_srcdir@/kig/misc/coordinate.h \
+ @top_srcdir@/kig/misc/common.h \
+ @top_srcdir@/kig/misc/conic-common.h \
+ @top_srcdir@/kig/misc/cubic-common.h \
+ @top_srcdir@/kig/misc/kigtransform.h \
+ @top_srcdir@/kig/objects/object_imp.h \
+ @top_srcdir@/kig/objects/curve_imp.h \
+ @top_srcdir@/kig/objects/point_imp.h \
+ @top_srcdir@/kig/objects/line_imp.h \
+ @top_srcdir@/kig/objects/conic_imp.h \
+ @top_srcdir@/kig/objects/cubic_imp.h \
+ @top_srcdir@/kig/objects/bogus_imp.h \
+ @top_srcdir@/kig/objects/circle_imp.h \
+ @top_srcdir@/kig/objects/other_imp.h \
+ @top_srcdir@/kig/scripting/python-scripting-api-dox-mainpage.dox
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
+# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
+
+FILE_PATTERNS =
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = NO
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+
+EXCLUDE_PATTERNS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+
+INPUT_FILTER = "sed -e 's,BogusImp,BogusObject,g' -e 's,StringImp,StringObject,g' -e 's,IntImp,IntObject,g' -e 's,DoubleImp,DoubleObject,g' -e 's,TransformationImp,TransformationObject,g' -e 's,HierarchyImp,HierarchyObject,g' -e 's,InvalidImp,InvalidObject,g' -e 's/\([a-zA-Z]*\)Imp/\1/g'"
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default)
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES (the default)
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = YES
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER = @srcdir@/header.html
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER = @srcdir@/footer.html
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET = @srcdir@/doxygen.css
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = YES
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 4
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
+# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
+# probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed.
+
+PREDEFINED =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse the
+# parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
+# super classes. Setting the tag to NO turns the diagrams off. Note that this
+# option is superseded by the HAVE_DOT option below. This is only a fallback. It is
+# recommended to install and use dot, since it yields more powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = YES
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
+# generate a call dependency graph for every global function or class method.
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command.
+
+CALL_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_WIDTH = 1024
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT = 1024
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes that
+# lay further from the root node will be omitted. Note that setting this option to
+# 1 or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that a graph may be further truncated if the graph's image dimensions are
+# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
+# If 0 is used for the depth value (the default), the graph is not depth-constrained.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE = NO
diff --git a/doc/kig/scripting-api/Makefile.am b/doc/kig/scripting-api/Makefile.am
new file mode 100644
index 00000000..1fd75153
--- /dev/null
+++ b/doc/kig/scripting-api/Makefile.am
@@ -0,0 +1,7 @@
+# generate the Kig Python Scriptin APIdocs from the Kig source code
+
+all-local: build-kig-python-scripting-apidocs
+build-kig-python-scripting-apidocs:
+# cat $(srcdir)/Doxyfile.scripting-api.in | sed -e 's#KIGVERSION#@KIGVERSION@#g' | sed -e 's#TOPSRCDIR#$(top_srcdir)#g' | sed -e 's#SRCDIR#$(srcdir)#g' > Doxyfile.scripting-api
+ doxygen Doxyfile.scripting-api
+ cp bottom1.png bottom2.png docheadergears.png grad.png headerbg.png build/html
diff --git a/doc/kig/scripting-api/README b/doc/kig/scripting-api/README
new file mode 100644
index 00000000..1f9b6062
--- /dev/null
+++ b/doc/kig/scripting-api/README
@@ -0,0 +1,14 @@
+This directory contains mostly the things necessary for generating the
+Kig Python Scripting API documentation from the Kig source code. This
+file serves to answer two questions:
+
+1 Why is this in its own directory ? Because, when I tried putting it
+ in the directory above, the KDE_DOCS am_edit feature installed the
+ Doxyfile and stuff in the documentation dir, which is bogus.
+
+2 You copied doxygen.css, footer.html, header.html, headerbg.png,
+ docheadergears.png, grad.png, bottom1.png and bottom2.png from
+ kdelibs/doc/common, why didn't you use the already installed version
+ in kde_htmldir/common ? -> because Kig is supposed to run on
+ various KDE installations ( ranging from 3.1 to HEAD ), and I don't
+ think the images in there are guaranteed not to change..
diff --git a/doc/kig/scripting-api/bottom1.png b/doc/kig/scripting-api/bottom1.png
new file mode 100644
index 00000000..cf26bf4f
--- /dev/null
+++ b/doc/kig/scripting-api/bottom1.png
Binary files differ
diff --git a/doc/kig/scripting-api/bottom2.png b/doc/kig/scripting-api/bottom2.png
new file mode 100644
index 00000000..05151553
--- /dev/null
+++ b/doc/kig/scripting-api/bottom2.png
Binary files differ
diff --git a/doc/kig/scripting-api/configure.in.in b/doc/kig/scripting-api/configure.in.in
new file mode 100644
index 00000000..61b79189
--- /dev/null
+++ b/doc/kig/scripting-api/configure.in.in
@@ -0,0 +1 @@
+dnl AC_OUTPUT( doc/kig/scripting-api/Doxyfile.scripting-api )
diff --git a/doc/kig/scripting-api/docheadergears.png b/doc/kig/scripting-api/docheadergears.png
new file mode 100644
index 00000000..d2a64b78
--- /dev/null
+++ b/doc/kig/scripting-api/docheadergears.png
Binary files differ
diff --git a/doc/kig/scripting-api/doxygen.css b/doc/kig/scripting-api/doxygen.css
new file mode 100644
index 00000000..2982c55e
--- /dev/null
+++ b/doc/kig/scripting-api/doxygen.css
@@ -0,0 +1,156 @@
+/*******************************************************************************
+ Adapted from the doxygen.css in kdelibs/doc/common by domi
+********************************************************************************/
+
+/*******************************************************************************
+
+ Style sheet for kdelibs doxygen documentation.
+ Copyright (c) Anders Lund <anders@alweb.dk> 2002
+
+ This script is made available under the terms of the General Public License.
+ You should have received a copy of the GNU General Public License
+ along with this software; see the file COPYING. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+
+********************************************************************************/
+
+body {
+ margin: 0px;
+ color: black;
+ background-color: white;
+}
+
+a {
+ color: #0000C0;
+}
+
+/* decorative header */
+div.header {
+ background-color: #0855C5;
+ background-image: url("headerbg.png");
+}
+div.header table {
+ padding: 0px;
+ margin: 0px
+}
+div.header table tr td h1 {
+ color: white;
+ font: bold 20pt monospace;
+ padding-top: 0.5em;
+}
+
+/* global lind buttons at bottom of decorative header */
+table.links {
+ float: right;
+ border:0;
+ padding-left:1px
+}
+table.links td a {
+ color: white
+}
+table.links td:hover {
+ background-color:#0C4293;
+}
+table.links td a:hover {
+ color: white;
+ background-color:#0C4293
+}
+table.links td {
+ border-left: 1px solid #4A81D5;
+ padding: 0px 12px 0px 12px;
+ background-color:#0E4EAF;
+ font-size:9pt;
+ /*font-weight: bold;*/
+}
+
+/* little gradient below decorative/navigation header */
+div#hgrad {
+ height: 12px;
+ background-image: url("grad.png");
+}
+
+/* contents part of page */
+div.text {
+ margin: 12px
+}
+
+/* contents, mostly equivalent to the default doxugen style sheet */
+H1 { text-align: center; }
+CAPTION { font-weight: bold }
+A.qindex {}
+A.qindexRef {}
+A.el { text-decoration: none; font-weight: bold }
+A.elRef { font-weight: bold }
+A.code { text-decoration: none; font-weight: normal; color: #4444ee }
+A.codeRef { font-weight: normal; color: #4444ee }
+A:hover { text-decoration: none; background-color: #ececec }
+DL.el { margin-left: -1cm }
+DIV.fragment { width: 100%; border: none; background-color: #ffffee; padding: 12px }
+DIV.ah { background-color: navy; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
+TD.md { background-color: #ececec; font-weight: bold; }
+TD.mdname1 { background-color: #ececec; font-weight: bold; color: #602020; }
+TD.mdname { background-color: #ececec; font-weight: bold; color: #602020; width: 600px; }
+DIV.groupHeader { margin-left: 16px; margin-top: 12px; margin-bottom: 6px; font-weight: bold }
+DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller }
+BODY { background: white }
+TD.indexkey {
+ background-color: #e0eef8;
+ font-weight: bold;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px
+}
+TD.indexvalue {
+ background-color: #e0eef8;
+ font-style: normal;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px
+}
+FONT.keyword { color: #008000 }
+FONT.keywordtype { color: #604020 }
+FONT.keywordflow { color: #e08000 }
+FONT.comment { color: #800000 }
+FONT.preprocessor { color: #806020 }
+FONT.stringliteral { color: #002080 }
+FONT.charliteral { color: #008080 }
+
+
+
+/* kde decoration at bottom */
+div#bottom-nav {
+ position : relative;
+ background-color: transparent;
+ /*width : 100%;*/
+ /*top: 0px;
+ left: 0px;
+ right: 0px;
+ margin-left: 0px;
+ margin-right:0px;*/
+ margin-top: 12px;
+ height: 50px;
+ background-image : url('bottom1.png');
+ background-repeat : repeat-x;
+}
+
+/* copyright etc at bottom */
+div.bottom {
+ margin: 12px;
+ font-size: 9pt;
+ text-align: right;
+}
+div.bottom a {
+ color: #aaaaaa
+}
+
diff --git a/doc/kig/scripting-api/footer.html b/doc/kig/scripting-api/footer.html
new file mode 100644
index 00000000..6d94781b
--- /dev/null
+++ b/doc/kig/scripting-api/footer.html
@@ -0,0 +1,15 @@
+<!-- Adapted from the footer.html in kdelibs/doc/common by domi -->
+</div>
+<div id="bottom-nav">
+<img src="bottom2.png" align="right" height="59" width="227" alt="KDE Logo">
+</div>
+<div class="bottom">
+This file is part of the documentation for kdelibs $projectnumber.
+</div>
+<div class="bottom" style="color:#cccccc">
+Documentation copyright &copy; 1996-2002 the KDE developers.<br>
+Generated on $datetime by
+<a href="http://www.doxygen.org/index.html">doxygen</a> $doxygenversion written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, &copy;&nbsp;1997-2001
+</div>
+</body>
+</html>
diff --git a/doc/kig/scripting-api/grad.png b/doc/kig/scripting-api/grad.png
new file mode 100644
index 00000000..b0c7f409
--- /dev/null
+++ b/doc/kig/scripting-api/grad.png
Binary files differ
diff --git a/doc/kig/scripting-api/header.html b/doc/kig/scripting-api/header.html
new file mode 100644
index 00000000..e491908a
--- /dev/null
+++ b/doc/kig/scripting-api/header.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!-- Adapted from the header.html in kdelibs/doc/common by domi -->
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+ <title>$title ($projectname)</title>
+ <link href="doxygen.css" rel="stylesheet" type="text/css">
+</head>
+<body>
+ <div class="header">
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td rowspan="2" width="92">
+ <a href="index.html" title="The Kig Python Scripting API documentation main page"><img src="docheadergears.png" style="border:0px;" alt=""></a>
+ </td>
+ <td width="95%">
+ <h1>$projectname Documentation</h1>
+ </td>
+ </tr>
+ <tr>
+ <td valign="bottom">
+ <table class="links" border=0 cellspacing=0>
+ <tr>
+ <td><a href="index.html">Overview</a></td>
+ <td><a href="hierarchy.html" title="Inheritance list, sorted roughly alphabetically">Class&nbsp;Hierarchy</a></td>
+ <td><a href="classes.html" title="Alphabetical list of classes">Classes</a></td>
+ <td><a href="annotated.html" title="Classes, structs, unions and interfaces with brief descriptions">Classes&nbsp;(annotated)</a></td>
+ <td><a href="functions.html" title="Documented class members with links to the classes they belong to">Members</a></td>
+ </tr>
+ </table>
+ </td></tr></table>
+ </div>
+ <div id="hgrad"></div>
+ <div class="text">
diff --git a/doc/kig/scripting-api/headerbg.png b/doc/kig/scripting-api/headerbg.png
new file mode 100644
index 00000000..cb7481fe
--- /dev/null
+++ b/doc/kig/scripting-api/headerbg.png
Binary files differ
diff --git a/doc/kig/selecting_objects.png b/doc/kig/selecting_objects.png
new file mode 100644
index 00000000..4ab53e9f
--- /dev/null
+++ b/doc/kig/selecting_objects.png
Binary files differ
diff --git a/doc/kig/simple_locus_construction.png b/doc/kig/simple_locus_construction.png
new file mode 100644
index 00000000..53d0fd6b
--- /dev/null
+++ b/doc/kig/simple_locus_construction.png
Binary files differ
diff --git a/doc/kig/test_run_macro.png b/doc/kig/test_run_macro.png
new file mode 100644
index 00000000..3680da3e
--- /dev/null
+++ b/doc/kig/test_run_macro.png
Binary files differ
diff --git a/doc/kig/text_label_attaching.png b/doc/kig/text_label_attaching.png
new file mode 100644
index 00000000..5f7468ec
--- /dev/null
+++ b/doc/kig/text_label_attaching.png
Binary files differ
diff --git a/doc/kig/text_label_wizard.png b/doc/kig/text_label_wizard.png
new file mode 100644
index 00000000..d6b2190f
--- /dev/null
+++ b/doc/kig/text_label_wizard.png
Binary files differ
diff --git a/doc/kig/text_label_wizard__select_property.png b/doc/kig/text_label_wizard__select_property.png
new file mode 100644
index 00000000..ac385c0c
--- /dev/null
+++ b/doc/kig/text_label_wizard__select_property.png
Binary files differ
diff --git a/doc/kiten/Makefile.am b/doc/kiten/Makefile.am
new file mode 100644
index 00000000..085981d9
--- /dev/null
+++ b/doc/kiten/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+
diff --git a/doc/kiten/index.docbook b/doc/kiten/index.docbook
new file mode 100644
index 00000000..95956bbd
--- /dev/null
+++ b/doc/kiten/index.docbook
@@ -0,0 +1,521 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY kappname "&kiten;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE">
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kiten; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Jason</firstname>
+<surname>Katz-Brown</surname>
+<affiliation>
+<address><email>&Jason.Katz-Brown.mail;</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2002-10-08</date>
+<releaseinfo>1.1</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>&kiten; is a Japanese reference/study tool for &kde;. </para>
+</abstract>
+
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>Japanese</keyword>
+<keyword>Language</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>&kiten; is an application with multiple functions. Firstly, it
+is a convenient English to Japanese and Japanese to English
+dictionary; secondly, it is a Kanji dictionary, with multiple ways to
+look up specific characters; thirdly, it is a tool to help you learn
+Kanji.</para>
+
+<para>Each of these modes is discussed in its own chapter.</para>
+
+<screenshot>
+<screeninfo>Here's a screenshot of &kiten;</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="kiten1.png" format="PNG"/></imageobject>
+<textobject><phrase>&kiten; screenshot</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+</chapter>
+
+<chapter id="dictionary">
+<title>Using the Dictionary</title>
+
+<para>&kiten;'s most basic mode is as a dictionary for looking up both
+English and Japanese words. You can also add other dictionaries to
+&kiten;'s list.</para>
+
+<para>&kiten; uses Jim Breen's Edict and Kanjidic as the default dictionaries. You can find more information at <ulink url="http://www.csse.monash.edu.au/~jwb/edict.html">the Edict web site</ulink> and <ulink url="http://www.csse.monash.edu.au/~jwb/kanjidic.html">the Kanjidic web site</ulink>.</para>
+
+<sect1 id="looking-up-words">
+<title>Looking Up Words</title>
+
+<para>To look up words in either language, type them in to the
+text-edit (much like &konqueror;'s location bar) and press either
+<keycap>Enter</keycap> or the <guilabel>Search</guilabel> button on
+the toolbar (again, much like &konqueror;). &kiten; will then look up
+the word.</para>
+
+<para>You can enter Kanji, Kana and English and get back results from
+&kiten;. These results of your search will appear in the large
+results view which takes up the majority of the &kiten; window.</para>
+
+<screenshot>
+<screeninfo>searching for an English translation</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="kiten2.png" format="PNG"/></imageobject>
+<textobject><phrase>&kiten; search screenshot</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<sect2>
+<title>Filtering</title>
+
+<para>Often times you will want to filter rare words from your
+search. &kiten; will do this for you if toggle
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Filter
+Rare</guimenuitem></menuchoice>.</para>
+
+<note><para>Not all dictionary files support filtering rare entries -
+most dictionaries, excluding the two provided by default in &kiten; do
+not.</para></note>
+
+<para>If you have not enabled filtering rare entries, common entries
+will be labeled <guilabel>Common</guilabel> in the result view.</para>
+
+</sect2>
+
+</sect1>
+
+<sect1 id="advanced-searches">
+<title>Advanced Searches</title>
+
+<para>&kiten; supports more advanced searches than plain normal word
+searches.</para>
+
+<sect2>
+<title>Options for Matching English</title>
+
+<para>Case sensitivity and whole-word matching can be enabled or
+disabled by choosing
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+Kiten...</guimenuitem></menuchoice>, and then choosing the
+<guilabel>Searching</guilabel> item on the list on the left. The
+options can be enabled by checking the check boxes and disabled by
+unchecking the check boxes on this page. These options are global and
+affect all searches.</para>
+
+</sect2>
+
+<sect2>
+<title>Beginning/Anywhere Searches</title>
+
+<para>To search for the beginning of a word, instead of pressing the
+<guilabel>Search</guilabel> button on the toolbar or pressing
+<keycap>Return</keycap> on the text-entry in the toolbar, choose
+<menuchoice><guimenu>Search</guimenu><guimenuitem>Search with
+Beginning of Word</guimenuitem></menuchoice>. Similarly, choose
+<menuchoice><guimenu>Search</guimenu><guimenuitem>Search
+Anywhere</guimenuitem></menuchoice> to search for your text anywhere
+in a word. These search modes work for searches of both
+languages.</para>
+
+</sect2>
+
+<sect2>
+<title>Searching in Results</title>
+
+<para>&kiten; can also help you refine your searches by allowing you
+to search for new text in the results generated by a previous
+search. To do this, just choose
+<menuchoice><guimenu>Search</guimenu><guimenuitem>Search in
+Results</guimenuitem></menuchoice> to perform your search.</para>
+
+</sect2>
+
+</sect1>
+
+<sect1 id="deinf">
+<title>Verb Deinflection</title>
+
+<para>&kiten; can deinflect verbs you search for. To enable this, make
+sure <menuchoice><guimenu>Settings</guimenu><guimenuitem>Deinflect
+Verbs in Regular Search</guimenuitem></menuchoice> is checked. &kiten;
+will then deinflect Japanese you search for that starts with a Kanji
+and ends with a Kana.</para>
+<para>
+The "Deinflect" option tries to unconjugate Japanese verbs. Deinflect only supports the common verb conjugations. If you search a lot of Japanese text you might consider using this option until you get used to handling Japanese verb forms.
+</para>
+</sect1>
+
+</chapter>
+
+<chapter id="looking-up-kanji">
+<title>Looking Up Kanji</title>
+
+<para>&kiten; has features that makes finding the one kanji you want
+easy from over 14,000 in the default dictionary.</para>
+
+<note> <para>Clicking on any Kanji in the main result view will show
+details on that particular Kanji. This can sometimes be the fastest
+way to look up a kanji.</para></note>
+
+<tip><para>Kanji searches are also filtered according to whether
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Filter
+Rare</guimenuitem></menuchoice> is checked.</para></tip>
+
+<sect1 id="regular-kanji-search">
+<title>Regular Searching</title>
+
+<para>To enable regular searching on the Kanji dictionary, check
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Kanjidic</guimenuitem></menuchoice>.</para>
+
+<para>You can search with English and Japanese search strings the
+exact same way you can with the normal dictionary.</para>
+
+<caution><para>When searching for Kana readings in the Kanji
+dictionary, you will have to put a period before the okurigana (the
+kana that are not part of the Kanji).</para></caution>
+
+</sect1>
+
+<sect1 id="radical-search">
+<title>Radical Searching</title>
+
+<para>You can use &kiten;'s radical search dialog to search for Kanji
+with a combination of radicals and a certain stroke count. Choose
+<menuchoice><guimenu>Search</guimenu><guimenuitem>Radical
+Search...</guimenuitem></menuchoice> to open the radical search
+dialog.</para>
+
+<para>To choose the radicals you want to be in your Kanji, select them
+from the middle listbox. To display possible radicals to select from
+this listbox with a certain number of strokes, choose this number of
+strokes from the spinbox just above the listbox. The radicals you
+choose will appear in the listbox to the right.</para>
+
+<para>To choose how many strokes your Kanji should have, first check
+the <guilabel>Search by total strokes</guilabel> checkbox. (If you do
+not want to search by total strokes, uncheck this checkbox.) Then
+select the number of strokes from the spinbox on the left, under the
+checkbox. If you want the stroke count to be fuzzy by a certain number
+of strokes, select the margin of error from the spinbox to the right
+of the <guilabel>+/-</guilabel> label.</para>
+
+<para>To perform the lookup, press the <guibutton>Look Up</guibutton>
+button.</para>
+
+</sect1>
+
+<sect1 id="grade-search">
+<title>Grade Search</title>
+
+<para>To get a list of all Kanji in a certain grade, enter that grade
+in the main text-entry in the toolbar. Then choose
+<menuchoice><guimenu>Search</guimenu><guimenuitem>Grade</guimenuitem></menuchoice>
+to perform your search.</para>
+
+<tip><para>You can enter <userinput>Jouyou</userinput> and
+<userinput>Jinmeiyou</userinput> to get Kanji not in a regular grade
+but in those groups.</para></tip>
+
+</sect1>
+
+<sect1 id="stroke-search">
+<title>Stroke Search</title>
+
+<para>To get a list of all Kanji with a certain number of strokes,
+enter that number in the text-entry in the toolbar. Then choose
+<menuchoice><guimenu>Search</guimenu><guimenuitem>Strokes</guimenuitem></menuchoice>
+to perform your search.</para>
+
+</sect1>
+
+</chapter>
+
+<chapter id="misc">
+<title>Miscellaneous</title>
+
+<para>This chapter describes miscellaneous features that can be used
+in both modes in &kiten;'s main window.</para>
+
+<sect1 id="history">
+<title>The History</title>
+
+<para>&kiten; keeps track of all of your queries in a list. You can
+see your last 20 results by looking under
+<menuchoice><guimenu>Go</guimenu><guimenuitem>History</guimenuitem></menuchoice>. To
+go forward one in the history, choose
+<menuchoice><guimenu>Go</guimenu><guimenuitem>Forward</guimenuitem></menuchoice>. To
+go backward one in the history, choose
+<menuchoice><guimenu>Go</guimenu><guimenuitem>Back</guimenuitem></menuchoice>.</para>
+
+</sect1>
+
+<sect1 id="input">
+<title>Inputting Japanese</title>
+
+<para>If you are unable to input Japanese normally into &kde;
+applications, you can use &kiten;'s Kana input system that is built in
+to the text-entry.</para>
+
+<para>To start Kana input, press <keycombo
+action="simul">&Shift;<keycap>Space</keycap></keycombo>. Now inputted
+syllables will be transformed into Hiragana. If you type a syllable in
+capital letters, it will be transformed into Katakana instead. Press
+<keycombo action="simul">&Shift;<keycap>Space</keycap></keycombo>
+again to go back to regular input.</para>
+
+</sect1>
+
+<sect1 id="global-keys">
+<title>Global Shortcuts</title>
+
+<para>You can set global &kiten; shortcuts that work everywhere on
+your desktop. Go to the &kiten; configuration dialog, which can be
+opened by choosing
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+Kiten...</guimenuitem></menuchoice>. Select the <guilabel>Global
+Keys</guilabel> section of the dialog. Here you can set the keys for a
+global word search and a global Kanji search like in other &kde;
+shortcut configuration panels.</para>
+
+</sect1>
+
+<sect1 id="printing">
+<title>Printing</title>
+
+<para>You can print the result view by choosing
+<menuchoice><guimenu>File</guimenu><guimenuitem>Print</guimenuitem></menuchoice>. &kiten;
+will add an informative header to the printout.</para>
+
+</sect1>
+
+<sect1 id="fonts">
+<title>Fonts</title>
+
+<para>You can choose the font that &kiten; uses in its result view and
+while printing. Go to the &kiten; configuration dialog, which can be
+opened by choosing
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+Kiten...</guimenuitem></menuchoice>. Select the
+<guilabel>Font</guilabel> section of the dialog and select the font in
+the font-chooser.</para>
+
+<note><para>&Qt; 3's new font-substitution system makes it so a
+Japanese font will always be substituted for Japanese characters, even
+if the font you specify doesn't include them. Thus, you can choose any
+font in the chooser and everything should still display
+fine.</para></note>
+
+</sect1>
+
+</chapter>
+
+<chapter id="learn"> <title>Learn Mode</title>
+
+<para>&kiten;'s last mode is its Learn mode which is in a separate
+window. To open it, choose
+<menuchoice><guimenu>File</guimenu><guimenuitem>Learn...</guimenuitem></menuchoice>.</para>
+
+<para>The Learn mode window in turn has two main tabs - one where
+where you maintain your <quote>Learning List</quote>, which is the
+list of Kanji that you are currently trying to learn. The other tab is
+the quiz area, where you are given a never-ending quiz on the Kanji on
+your Learning List.</para>
+
+<tip><para>If you want the Learn window to open every time you start
+up &kiten;, check the <guilabel>Start Learn on Kiten
+startup</guilabel> check box in the <guilabel>Learn</guilabel> section
+of the configuration dialog, which can be opened by choosing
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+Kiten...</guimenuitem></menuchoice>.</para></tip>
+
+<sect1 id="browsing-learn">
+<title>The Learn Browser</title>
+
+<para>The first tab of the Learn mode window, the
+<guilabel>List</guilabel> tab, provides an area to browse the Kanji in
+the 8 Kanji grades - 1st-6th grade, <guilabel>Others in
+Jouyou</guilabel>, and <guilabel>Jinmeiyou</guilabel>. Also in the top
+half of the tab is a listview which contains all of the Kanji on your
+Learning List.</para>
+
+<para>To choose a grade to browse, choose it from the list in
+<menuchoice><guimenu>Go</guimenu><guimenuitem>Grade</guimenuitem></menuchoice>. After
+selecting a grade, the first Kanji in that grade will be shown.</para>
+
+<para>To go forward one Kanji in the current grade, choose
+<menuchoice><guimenu>Go</guimenu><guimenuitem>Forward</guimenuitem></menuchoice>. To
+go back one Kanji, choose
+<menuchoice><guimenu>Go</guimenu><guimenuitem>Back</guimenuitem></menuchoice>. To
+go to a random Kanji, choose
+<menuchoice><guimenu>Go</guimenu><guimenuitem>Random</guimenuitem></menuchoice>.</para>
+
+<tip><para>If you click on a Kanji in the top view, the main &kiten;
+window will give detailed information on the Kanji you
+clicked.</para></tip>
+
+</sect1>
+
+<sect1 id="populating-learning-list">
+<title>Populating the Learning List</title>
+
+<para>There are three ways to add Kanji to the Learning List. To add
+the current Kanji (the one displayed in the view on the top) to your
+list, choose
+<menuchoice><guimenu>Edit</guimenu><guimenuitem>Add</guimenuitem></menuchoice>. To
+add all Kanji in the current grade to your list, choose
+<menuchoice><guimenu>Edit</guimenu><guimenuitem>Add
+All</guimenuitem></menuchoice>.</para>
+
+<para>The current Kanji in the main &kiten; window can also be added
+by choosing (in the main &kiten; window)
+<menuchoice><guimenu>File</guimenu><guimenuitem>Add Kanji to Learning
+List</guimenuitem></menuchoice>.</para>
+
+<para>To delete a Kanji on your Learning List, select it and choose
+<menuchoice><guimenu>Edit</guimenu><guimenuitem>Delete</guimenuitem></menuchoice>. You
+can also select a range of Kanji to delete by clicking in the list
+while holding down the &Shift; or &Ctrl; keys.</para>
+
+</sect1>
+
+<sect1 id="file-list">
+<title>Managing Learning List Files</title>
+
+<para>Learning Lists can be saved to files for easy storage.</para>
+
+<para>To open a list, choose
+<menuchoice><guimenu>File</guimenu><guimenuitem>Open...</guimenuitem></menuchoice>
+and choose the existing list file in the file dialog.</para>
+
+<para>To open a new list, choose
+<menuchoice><guimenu>File</guimenu><guimenuitem>Open...</guimenuitem></menuchoice>.</para>
+
+<para>To save a list, choose
+<menuchoice><guimenu>File</guimenu><guimenuitem>Save</guimenuitem></menuchoice>
+and choose the file to save your list to. To save the list under a
+different filename, choose
+<menuchoice><guimenu>File</guimenu><guimenuitem>Save
+As...</guimenuitem></menuchoice>.</para>
+
+<note><para>When you close the Learn window the list you have opened
+will be re-opened the next time you start Learn mode.</para></note>
+
+<para>To print out your Learning List, choose
+<menuchoice><guimenu>File</guimenu><guimenuitem>Print</guimenuitem></menuchoice>.</para>
+</sect1>
+
+<sect1 id="quizzing">
+<title>Quizzing</title>
+
+<para>The second tab of the Learn window is the
+<guilabel>Quiz</guilabel> tab. If you have at least two Kanji on your
+Learning List, this tab will be enabled. Click on the tab to switch to
+it.</para>
+
+<para>To answer the question, click on the pushbutton that contains
+the answer that matches with the Kanji on the centered
+pushbutton.</para>
+
+<para>If you do not know the answer, you can cheat by choosing
+<menuchoice><guimenu>Go</guimenu><guimenuitem>Cheat</guimenuitem></menuchoice>. This
+will set the correct pushbutton's focus.</para>
+
+<tip><para>To see full information about the Kanji, click on the
+button it is drawn on. This will be counted as a wrong answer,
+however, in the same way as if you cheated.</para></tip>
+
+<para>If you choose the wrong answer, or cheat, your score for that
+Kanji will be decremented. If you choose the correct answer, your
+score will be incremented by two. Your score on the Kanji are shown on
+the very right-hand column of your Learning List (on the
+<guilabel>List</guilabel> tab of the Learn window).</para>
+
+<note><para>Your scores are stored globally for each Kanji - thus, the
+same Kanji in two different files will always have the same
+score.</para></note>
+</sect1>
+
+<sect1 id="config-quiz">
+<title>Configuring Quizzing</title>
+
+<para>You can change the way quizzing works in the &kiten;
+configuration dialog, which can be opened by choosing
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+Kiten...</guimenuitem></menuchoice>. Go to the
+<guilabel>Learn</guilabel> section, and look at the
+<guilabel>Quizzing</guilabel> groupbox. Here you can change whether
+the Kanji, meaning, or reading is given for the clue, and what is
+given for you to guess on.</para>
+
+</sect1>
+
+</chapter>
+
+<chapter id="credits-and-license">
+<title>Credits and Licenses</title>
+
+<para>&kiten; copyright 2001, 2002 &Jason.Katz-Brown;</para>
+
+<itemizedlist>
+<title>Developers</title>
+<listitem>
+<para>&Jason.Katz-Brown; <email>&Jason.Katz-Brown.mail;</email></para>
+</listitem>
+<listitem>
+<para>&Neil.Stevens; <email>&Neil.Stevens.mail;</email></para>
+</listitem>
+<listitem>
+<para>Jim Breen <email>jwb@csse.monash.edu.au</email> - Wrote xjdic, of which &kiten; borrows code, and the xjdic index file generator. Also is main author of edict and kanjidic, which &kiten; essentially require.</para>
+</listitem>
+<listitem>
+ <para>Paul Temple <email>paul.temple@gmx.net</email> - Port to KConfig XT and bug fixing.</para>
+</listitem>
+</itemizedlist>
+
+<para>Documentation copyright 2002, &Jason.Katz-Brown;</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL;
+&underGPL;
+
+</chapter>
+
+<!-- <appendix id="installation">
+<title>Installation</title>
+
+&install.intro.documentation;
+&install.compile.documentation;
+
+</appendix> -->
+
+&documentation.index;
+</book>
diff --git a/doc/kiten/kiten1.png b/doc/kiten/kiten1.png
new file mode 100644
index 00000000..a244eb64
--- /dev/null
+++ b/doc/kiten/kiten1.png
Binary files differ
diff --git a/doc/kiten/kiten2.png b/doc/kiten/kiten2.png
new file mode 100644
index 00000000..a35c93c6
--- /dev/null
+++ b/doc/kiten/kiten2.png
Binary files differ
diff --git a/doc/klatin/Makefile.am b/doc/klatin/Makefile.am
new file mode 100644
index 00000000..085981d9
--- /dev/null
+++ b/doc/klatin/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+
diff --git a/doc/klatin/README b/doc/klatin/README
new file mode 100644
index 00000000..e7c3df3d
--- /dev/null
+++ b/doc/klatin/README
@@ -0,0 +1,19 @@
+The KLatin doc comprises several files that are used as online help by the users.
+These files are part of the User HandBook.
+
+These files are
+- adjectives.docbook
+- nouns.docbook
+- numbers.docbook
+- pronouns.docbook
+- verbs.docbook
+
+In these files, the Latin words must not be translated. Only English words are to be translated.
+I inserted several comments in order to help the translators.
+
+Please do tell me if anything is not correct or not enough explained.
+
+Anne-Marie Mahfouf
+annma@kde.org
+
+09 May 2002 \ No newline at end of file
diff --git a/doc/klatin/adjectives.docbook b/doc/klatin/adjectives.docbook
new file mode 100644
index 00000000..1f6b8ec8
--- /dev/null
+++ b/doc/klatin/adjectives.docbook
@@ -0,0 +1,278 @@
+<!-- Please don't translate Latin words -->
+<!-- Please translate the following -->
+<sect1 id="adjectives">
+<title> KLatin Notes - Adjectives</title>
+
+<para>
+Adjectives are words to describe nouns, and so they agree with the nouns. Agreeing means
+that they match the noun they refer to in three ways: gender, number, and case.
+</para>
+
+<table frame="none">
+<!--Please translate title-->
+<title>1st and 2nd Declension Adjectives (212)</title>
+<tgroup cols="4" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<!-- Please translate SINGULAR and Like-->
+<entry>SINGULAR</entry>
+<entry>Like Servus</entry>
+<entry>Like Puella</entry>
+<entry>Like Bellum</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate the first entry of each row-->
+<entry>Nominative</entry>
+<entry>bon-us</entry>
+<entry>bon-a</entry>
+<entry>bon-um</entry>
+</row>
+<row>
+<entry>Vocative</entry>
+<entry>bon-e</entry>
+<entry>bon-a</entry>
+<entry>bon-um</entry>
+</row>
+<row>
+<entry>Accusative</entry>
+<entry>bon-um</entry>
+<entry>bon-am</entry>
+<entry>bon-um</entry>
+</row>
+<row>
+<entry>Genitive</entry>
+<entry>bon-i</entry>
+<entry>bon-ae</entry>
+<entry>bon-i</entry>
+</row>
+<row>
+<entry>Dative</entry>
+<entry>bon-o</entry>
+<entry>bon-ae</entry>
+<entry>bon-o</entry>
+</row>
+<row>
+<entry>Ablative</entry>
+<entry>bon-o</entry>
+<entry>bon-a</entry>
+<entry>bon-o</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate the first entry of each row-->
+<entry>PLURAL</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>Nominative</entry>
+<entry>bon-i</entry>
+<entry>bon-ae</entry>
+<entry>bon-a</entry>
+</row>
+<row>
+<entry>Vocative</entry>
+<entry>bon-i</entry>
+<entry>bon-ae</entry>
+<entry>bon-a</entry>
+</row>
+<row>
+<entry>Accusative</entry>
+<entry>bon-os</entry>
+<entry>bon-as</entry>
+<entry>bon-a</entry>
+</row>
+<row>
+<entry>Genitive</entry>
+<entry>bon-orum</entry>
+<entry>bon-arum</entry>
+<entry>bon-orum</entry>
+</row>
+<row>
+<entry>Dative</entry>
+<entry>bon-is</entry>
+<entry>bon-is</entry>
+<entry>bon-is</entry>
+</row>
+<row>
+<entry>Ablative</entry>
+<entry>bon-is</entry>
+<entry>bon-is</entry>
+<entry>bon-is</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!--Please translate the title-->
+<title>3rd Declension Adjectives (333)</title>
+
+<tgroup cols="4" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<!-- Please translate SINGULAR and Like-->
+<entry>SINGULAR</entry>
+<entry>Like Rex</entry>
+<entry>Like Rex</entry>
+<entry>Like Opus</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate the first entry of each row-->
+<entry>Nominative</entry>
+<entry>trist-is</entry>
+<entry>trist-is</entry>
+<entry>trist-e</entry>
+</row>
+<row>
+<entry>Vocative</entry>
+<entry>trist-is</entry>
+<entry>trist-is</entry>
+<entry>trist-e</entry>
+</row>
+<row>
+<entry>Accusative</entry>
+<entry>trist-em</entry>
+<entry>trist-em</entry>
+<entry>trist-e</entry>
+</row>
+<row>
+<entry>Genitive</entry>
+<entry>trist-i</entry>
+<entry>trist-i</entry>
+<entry>trist-is</entry>
+</row>
+<row>
+<entry>Dative</entry>
+<entry>trist-is</entry>
+<entry>trist-is</entry>
+<entry>trist-i</entry>
+</row>
+<row>
+<entry>Ablative</entry>
+<entry>trist-i</entry>
+<entry>trist-i</entry>
+<entry>trist-i</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate the first entry of each row-->
+<entry>PLURAL</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>Nominative</entry>
+<entry>trist-es</entry>
+<entry>trist-es</entry>
+<entry>trist-ia</entry>
+</row>
+<row>
+<entry>Vocative</entry>
+<entry>trist-es</entry>
+<entry>trist-es</entry>
+<entry>trist-ia</entry>
+</row>
+<row>
+<entry>Accusative</entry>
+<entry>trist-es</entry>
+<entry>trist-es</entry>
+<entry>trist-ia</entry>
+</row>
+<row>
+<entry>Genitive</entry>
+<entry>trist-ium</entry>
+<entry>trist-ium</entry>
+<entry>trist-ium</entry>
+</row>
+<row>
+<entry>Dative</entry>
+<entry>trist-ibus</entry>
+<entry>trist-ibus</entry>
+<entry>trist-ibus</entry>
+</row>
+<row>
+<entry>Ablative</entry>
+<entry>trist-ibus</entry>
+<entry>trist-ibus</entry>
+<entry>trist-ibus</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title -->
+<title>Comparison of Adjectives</title>
+<!-- Please translate -->
+<tgroup cols="4" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<entry>Positive</entry>
+<entry>Comparative</entry>
+<entry>Superlative</entry>
+<entry>Notes</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>Normal form of Adjective</entry>
+<!--Please stop translating -->
+<entry>Stem + ior,-ius</entry>
+<entry>Stem + issimus,-a,-um</entry>
+<entry></entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry>Stem + rimus,-a,-um</entry>
+<entry>For adjectives which end with <emphasis>-er</emphasis>. For example: acer-rimus,-a,-um</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry>Stem + limus,-a,-um</entry>
+<entry>For adjectives which end with <emphasis>-ilis</emphasis>. For example: facil-limus,-a,-um</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry>Per/Prae + Adjective</entry>
+<entry></entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+</sect1>
+
diff --git a/doc/klatin/index.docbook b/doc/klatin/index.docbook
new file mode 100644
index 00000000..3e0340de
--- /dev/null
+++ b/doc/klatin/index.docbook
@@ -0,0 +1,502 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY klatin "<application>KLatin</application>">
+ <!ENTITY kappname "&klatin;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY kvtml "<acronym>KVTML</acronym>">
+ <!ENTITY numbers SYSTEM "numbers.docbook">
+ <!ENTITY verbs SYSTEM "verbs.docbook">
+ <!ENTITY adjectives SYSTEM "adjectives.docbook">
+ <!ENTITY nouns SYSTEM "nouns.docbook">
+ <!ENTITY pronouns SYSTEM "pronouns.docbook">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &klatin; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>George</firstname>
+<surname>Wright</surname>
+<affiliation>
+<address><email>gwright@kde.org</email></address>
+</affiliation>
+</author>
+<othercredit role="developer">
+<firstname>Anne-Marie</firstname>
+<surname>Mahfouf</surname>
+<affiliation>
+<address><email>&Anne-Marie.Mahfouf.mail;</email></address>
+</affiliation>
+<contrib>Help in documentation</contrib>
+</othercredit>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2001-2004</year>
+<holder>George Wright</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2006-02-24</date>
+<releaseinfo>0.9</releaseinfo>
+
+<abstract>
+<para>
+&klatin; is a &kde; application to help revise/teach Latin.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>KLatin</keyword>
+<keyword>Latin</keyword>
+<keyword>education</keyword>
+<keyword>language</keyword>
+<keyword>latin</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&klatin; is a program to help revise Latin. There are three
+<quote>sections</quote> in which different aspects of the language can be
+revised. These are the vocabulary, grammar, and verb testing sections. In
+addition there is a set of revision notes that can be used for self-guided
+revision.
+</para>
+<para>
+In the vocabulary section an &XML; file is loaded containing various words and
+their local language translations. &klatin; asks you what each of these words
+translate into. The questions take place in a multiple-choice environment.
+</para>
+<para>
+In the grammar and verb sections &klatin; asks for a particular part of a noun
+or a verb, such as the <quote>ablative singular</quote>, or the <quote>1st
+person indicative passive plural</quote>, and is not multiple choice.
+</para>
+</chapter>
+
+<chapter id="using-klatin">
+<title>Using &klatin;</title>
+
+<para>
+When you start &klatin;, you are greeted by four options that you can choose
+from.
+</para>
+
+<screenshot>
+<screeninfo>&klatin; main screen, directly after the first start</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="klatin1.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&klatin; main screen</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>The first one, <guilabel>Vocabulary</guilabel>, is a
+multiple-choice vocabulary tester.
+</para>
+
+<screenshot>
+<screeninfo>&klatin; vocabulary section</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="klatin2.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&klatin; vocabulary</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+After you finish your test, a results screen is displayed.
+</para>
+
+<screenshot>
+<screeninfo>&klatin; vocabulary results</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="results.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&klatin; results</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The second, <guilabel>Grammar</guilabel> tests you on grammatical parts of
+nouns.
+</para>
+
+<screenshot>
+<screeninfo>&klatin; grammar section</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="klatin3.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&klatin; grammar</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+<guilabel>Verbs</guilabel> is almost the same as the <guilabel>Grammar</guilabel>
+section, except that it tests you on verb forms.
+</para>
+
+<screenshot>
+<screeninfo>&klatin; verbs section</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="klatin4.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&klatin; verbs</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The fourth section,
+<guilabel>Revision notes</guilabel>, loads &konqueror; into the &klatin; revision notes
+section.
+</para>
+
+<para>
+In addition to the options, you can also launch these sections via the menubar,
+in the <guimenu>Section</guimenu>.
+</para>
+
+<para>
+The configuration dialog for &klatin; can be accessed by choosing
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+&klatin;...</guimenuitem></menuchoice> from the menu.
+<!-- In the <quote>General</quote> settings page, you can configure your name.-->
+In the <guilabel>Vocabulary</guilabel> page, you can set whether you want the test to
+take place from your language into Latin, or vice versa. You can also choose
+the default file which you want to use to test your vocabulary on, and you can
+also set how many questions you want to be tested on.
+</para>
+
+<screenshot>
+<screeninfo>&klatin; configuration dialog</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="klatin-configuration.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>&klatin; configuration dialog</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+</chapter>
+
+<chapter id="klatin-mainwindow">
+<title>The &klatin; Main Window</title>
+<para>The &klatin; main window consists of four option buttons to choose which
+section to enter, and a menubar.</para>
+<para>Choose from the <guilabel>Revision Sections</guilabel> list a section and
+click <guibutton>Start</guibutton> to start the chosen section.</para>
+
+<para>When you are finished with that section, click <guibutton>Back</guibutton>
+to return to &klatin;'s main menu.</para>
+
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+<sect1 id="menu-file">
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quits</action> &klatin;</para></listitem>
+</varlistentry>
+</variablelist>
+</sect1>
+
+<sect1 id="menu-section">
+<title>The <guimenu>Section</guimenu> Menu</title>
+<variablelist>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Section</guimenu>
+<guimenuitem>Load Vocabulary</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Loads</action> the vocabulary section</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Section</guimenu>
+<guimenuitem>Load Grammar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Loads</action> the grammar section</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Section</guimenu>
+<guimenuitem>Load Verbs</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Loads</action> the verbs section</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Section</guimenu>
+<guimenuitem>Load Revision</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Loads</action> the revision section</para></listitem>
+</varlistentry>
+
+
+</variablelist>
+
+</sect1>
+<sect1 id="menu-settings">
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> the keyboard keys you use to access the different actions.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Not implemented yet.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure &klatin;...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Display</action> the &klatin; settings dialog
+</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect1>
+
+<sect1 id="menu-help">
+<title>The <guimenu>Help</guimenu> Menu</title>
+&help.menu.documentation;
+</sect1>
+</chapter>
+
+<chapter id="translation">
+<title>Translation Guide to &klatin;</title>
+
+<para>Only the vocabulary files have to be translated in your language. The
+vocabulary files use the &kvtml; format, which is the same as other programs
+such as &kwordquiz; use. &kwordquiz; is very useful as you can create the
+vocabulary files in that and load them directly into &klatin;.
+</para>
+<para>
+Below is explained how you can translate &klatin; vocabulary files. At the
+moment, the files are only in English, German and Polish.
+</para>
+<sect1 id="translate_vocab">
+<title>How To Translate &klatin; vocabulary files</title>
+<procedure>
+<step>
+<para>
+Get the latest &klatin; code from CVS or a latest release. The words are stored in
+<filename class="directory">source_dir_of_kdeedu/klatin/klatin/data/vocab/en/</filename>
+in files like <filename>A.kvtml</filename> for Latin words beginning with A,
+<filename>BC.kvtml</filename> for Latin words beginning with B and C and so on.
+</para>
+</step>
+
+<step>
+<para>
+Create a new subdirectory in <filename class="directory">data/vocab/</filename> named
+as your language code (for example, <filename
+class="directory">fr</filename> for French, <filename
+class="directory">ja</filename> for Japanese). Copy all the English vocabulary files there as well as
+the <filename>Makefile.am</filename>. Edit the <filename>Makefile.am</filename>
+and replace <quote>en</quote> with your language code.
+</para>
+</step>
+
+<step>
+<para>
+In <filename class="directory">data/vocab/<replaceable>your_language_code</replaceable></filename>, edit
+all the files and translate the English words, &ie; those that are between the
+<sgmltag class="starttag">t</sgmltag> and <sgmltag class="endtag">t</sgmltag>
+tags.
+</para>
+</step>
+<step>
+<para>
+Please send them to George
+<email>gwright@users.sourceforge.net</email>.
+</para>
+</step>
+</procedure>
+</sect1>
+</chapter>
+
+<chapter id="developers">
+<title>Developer's Guide to &klatin;</title>
+<sect1 id="add_files">
+<title>Create new vocabulary files</title>
+<para>
+The &klatin; vocabulary database system is very easy to extend. Just look at
+the files and you'll understand! It uses the &kvtml; format, which is the same
+as other programs such as &kwordquiz; use. So you can open &kwordquiz; and use
+it to create the vocabulary files.
+</para>
+<para>
+You can save your new files in the corresponding folder depending on what
+language they refer to in <filename class="directory">.kde/share/apps/klatin/data/vocab/<replaceable>language_code</replaceable>/</filename>.
+For example, English &kvtml; files are kept in a folder called
+<filename class="directory">en</filename>, German files in <filename class="directory">de</filename>, and so on. You can also
+send me your files so I can add them in the next &klatin; release.
+</para>
+</sect1>
+<!-- FIXME: They will still need specifically outlining -->
+</chapter>
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+
+<para>
+&klatin;
+</para>
+<para>
+Program copyright 2001-2004 George Wright <email>gwright@users.sourceforge.net</email>
+</para>
+<para>
+Contributors:
+<itemizedlist>
+
+<listitem><para>&Neil.Stevens; <email>&Neil.Stevens.mail;</email></para>
+</listitem>
+<listitem><para>&Anne-Marie.Mahfouf; <email>&Anne-Marie.Mahfouf.mail;</email></para>
+</listitem>
+<listitem><para>Mark Westcott <email>mark@houseoffish.org</email></para>
+</listitem>
+
+</itemizedlist>
+</para>
+
+<para>
+Documentation copyright 2001-2004 George Wright <email>gwright@users.sourceforge.net</email>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL;
+
+&underGPL; <!-- GPL License -->
+
+</chapter>
+
+<chapter id="klatin-index">
+<title>&klatin; notes</title>
+
+<para>
+Welcome to the &klatin; notes section. This is aimed to help
+you in your revision and covers the English <acronym>GCSE</acronym> syllabus (England).
+</para>
+
+<para>
+Here are the different sections you can get help for:
+</para>
+
+<itemizedlist>
+<listitem><para><link
+linkend="numbers">Latin numbers</link>
+</para></listitem>
+<listitem><para><link
+linkend="verbs">Latin verbs</link>
+</para></listitem>
+<listitem><para><link
+linkend="nouns">Latin nouns</link>
+</para></listitem>
+<listitem><para><link
+linkend="adjectives">Latin adjectives</link>
+</para></listitem>
+<listitem><para><link
+linkend="pronouns">Latin pronouns</link>
+</para></listitem>
+</itemizedlist>
+
+&numbers;
+&verbs;
+&nouns;
+&adjectives;
+&pronouns;
+
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-klatin">
+<title>How to obtain &klatin;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
diff --git a/doc/klatin/klatin-configuration.png b/doc/klatin/klatin-configuration.png
new file mode 100644
index 00000000..21ab841b
--- /dev/null
+++ b/doc/klatin/klatin-configuration.png
Binary files differ
diff --git a/doc/klatin/klatin1.png b/doc/klatin/klatin1.png
new file mode 100644
index 00000000..55d21e10
--- /dev/null
+++ b/doc/klatin/klatin1.png
Binary files differ
diff --git a/doc/klatin/klatin2.png b/doc/klatin/klatin2.png
new file mode 100644
index 00000000..dd9bff87
--- /dev/null
+++ b/doc/klatin/klatin2.png
Binary files differ
diff --git a/doc/klatin/klatin3.png b/doc/klatin/klatin3.png
new file mode 100644
index 00000000..0af607c7
--- /dev/null
+++ b/doc/klatin/klatin3.png
Binary files differ
diff --git a/doc/klatin/klatin4.png b/doc/klatin/klatin4.png
new file mode 100644
index 00000000..dd4e0484
--- /dev/null
+++ b/doc/klatin/klatin4.png
Binary files differ
diff --git a/doc/klatin/nouns.docbook b/doc/klatin/nouns.docbook
new file mode 100644
index 00000000..9c933cce
--- /dev/null
+++ b/doc/klatin/nouns.docbook
@@ -0,0 +1,211 @@
+<!-- Please don't translate Latin words -->
+<!-- Please translate -->
+<sect1 id="nouns">
+<title> KLatin Notes - Nouns </title>
+
+<para>
+Nouns, like verbs, are divided into groups, called <emphasis>declensions</emphasis>. There are five
+declensions and three genders: masculine, feminine, and neuter.
+</para>
+<para>
+The stem of a noun is the basic part of the noun that does not change. To get
+the stem of a noun, take the genitive singular of the noun, and take off its
+ending. For example: the stem of <emphasis>puella</emphasis> is
+<emphasis>puell</emphasis>; while the stem of <emphasis>rex</emphasis> is
+<emphasis>reg</emphasis>, because its genitive is <emphasis>reg-is</emphasis>.
+</para>
+
+<sect2 id="listing">
+<title>Latin Nouns</title>
+
+<table frame="none">
+<title>Noun listings</title>
+<tgroup cols="9" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<!-- Please translate -->
+<entry>SINGULAR</entry>
+<entry>1st Feminine</entry>
+<entry>2nd Masculine</entry>
+<entry>2nd Neuter</entry>
+<entry>3rd Masc/Fem</entry>
+<entry>3rd Neuter</entry>
+<entry>4th Masculine</entry>
+<entry>4th Neuter</entry>
+<entry>5th Feminine</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!--From now on please just translate first entry of each row-->
+<entry>Nominative</entry>
+<entry>puell-a</entry>
+<entry>serv-us</entry>
+<entry>bell-um</entry>
+<entry><emphasis>rex</emphasis></entry>
+<entry>opus</entry>
+<entry>grad-us</entry>
+<entry>genu</entry>
+<entry>res</entry>
+</row>
+<row>
+<entry>Vocative</entry>
+<entry>puell-a</entry>
+<entry>serv-e</entry>
+<entry>bell-um</entry>
+<entry><emphasis>rex</emphasis></entry>
+<entry> opus</entry>
+<entry>grad-us</entry>
+<entry>genu</entry>
+<entry>res</entry>
+</row>
+<row>
+<entry>Accusative</entry>
+<entry>puell-am</entry>
+<entry>serv-um</entry>
+<entry>bell-um</entry>
+<entry>reg-em</entry>
+<entry>opus</entry>
+<entry>grad-um</entry>
+<entry>genu</entry>
+<entry>re-m</entry>
+</row>
+<row>
+<entry>Genitive</entry>
+<entry>puell-ae</entry>
+<entry>serv-i</entry>
+<entry>bell-i</entry>
+<entry>reg-is</entry>
+<entry>oper-is</entry>
+<entry>grad-us</entry>
+<entry>gen-u</entry>
+<entry>re-i</entry>
+</row>
+<row>
+<entry>Dative</entry>
+<entry>puell-ae</entry>
+<entry>serv-o</entry>
+<entry>bell-o</entry>
+<entry>reg-i</entry>
+<entry>oper-i</entry>
+<entry>grad-ui</entry>
+<entry>gen-u</entry>
+<entry>re-i</entry>
+</row>
+<row>
+<entry>Ablative</entry>
+<entry>puell-a</entry>
+<entry>serv-o</entry>
+<entry>bell-o</entry>
+<entry>reg-e</entry>
+<entry>oper-e</entry>
+<entry>grad-u</entry>
+<entry>gen-u</entry>
+<entry>re</entry>
+</row>
+
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row -->
+<entry>PLURAL</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>Nominative</entry>
+<entry>puell-ae</entry>
+<entry>serv-i</entry>
+<entry>bell-a</entry>
+<entry>reg-es</entry>
+<entry>oper-a</entry>
+<entry>grad-us</entry>
+<entry>gen-ua</entry>
+<entry>res</entry>
+</row>
+<row>
+<entry>Vocative</entry>
+<entry>puell-ae</entry>
+<entry>serv-i</entry>
+<entry>bell-a</entry>
+<entry>reg-es</entry>
+<entry>oper-a</entry>
+<entry>grad-us</entry>
+<entry>gen-ua</entry>
+<entry>res</entry>
+</row>
+<row>
+<entry>Accusative</entry>
+<entry>puell-as</entry>
+<entry>serv-os</entry>
+<entry>bell-a</entry>
+<entry>reg-es</entry>
+<entry>oper-a</entry>
+<entry>grad-us</entry>
+<entry>gen-ua</entry>
+<entry>res</entry>
+</row>
+<row>
+<entry>Genitive</entry>
+<entry>puell-arum</entry>
+<entry>serv-orum</entry>
+<entry>bell-orum</entry>
+<entry>reg-um</entry>
+<entry>oper-um</entry>
+<entry>grad-uum</entry>
+<entry>gen-uum</entry>
+<entry>re-rum</entry>
+</row>
+<row>
+<entry>Dative</entry>
+<entry>puell-is</entry>
+<entry>serv-is</entry>
+<entry>bell-is</entry>
+<entry>reg-ibus</entry>
+<entry>oper-ibus</entry>
+<entry>grad-ibus</entry>
+<entry>gen-ibus</entry>
+<entry>re-bus</entry>
+</row>
+<row>
+<entry>Ablative</entry>
+<entry>puell-is</entry>
+<entry>serv-is</entry>
+<entry>bell-is</entry>
+<entry>reg-ibus</entry>
+<entry>oper-ibus</entry>
+<entry>grad-ibus</entry>
+<entry>gen-ibus</entry>
+<entry>re-bus</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+</sect2>
+</sect1>
diff --git a/doc/klatin/numbers.docbook b/doc/klatin/numbers.docbook
new file mode 100644
index 00000000..c1c15678
--- /dev/null
+++ b/doc/klatin/numbers.docbook
@@ -0,0 +1,221 @@
+<!-- Please don't translate Latin words -->
+<!-- Please translate -->
+<sect1 id="numbers">
+<title>KLatin Notes - Numbers </title>
+
+<para>
+The Romans had a particular set of numerals and had names for each of their
+numbers. In this section are listed some numbers and their corresponding
+symbol.
+</para>
+<table frame="none">
+<title>Numbers</title>
+<!-- translators: don't translate the following -->
+<tgroup cols="3" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<entry>1</entry>
+<entry>I</entry>
+<entry>unus</entry>
+</row>
+<row>
+<entry>2</entry>
+<entry>II</entry>
+<entry>duo</entry>
+</row>
+<row>
+<entry>3</entry>
+<entry>III</entry>
+<entry>tres</entry>
+</row>
+<row>
+<entry>4</entry>
+<entry>IV</entry>
+<entry>quattuor</entry>
+</row>
+<row>
+<entry>5</entry>
+<entry>V</entry>
+<entry>quinque</entry>
+</row>
+<row>
+<entry>6</entry>
+<entry>VI</entry>
+<entry>sex</entry>
+</row>
+<row>
+<entry>7</entry>
+<entry>VII</entry>
+<entry>septem</entry>
+</row>
+<row>
+<entry>8</entry>
+<entry>VIII</entry>
+<entry>octo</entry>
+</row>
+<row>
+<entry>9</entry>
+<entry>IX</entry>
+<entry>novem</entry>
+</row>
+<row>
+<entry>10</entry>
+<entry>X</entry>
+<entry>decem</entry>
+</row>
+<row>
+<entry>11</entry>
+<entry>XI</entry>
+<entry>undecim</entry>
+</row>
+<row>
+<entry>12</entry>
+<entry>XII</entry>
+<entry>duodecim</entry>
+</row>
+<row>
+<entry>13</entry>
+<entry>XIII</entry>
+<entry>tredecim</entry>
+</row>
+<row>
+<entry>14</entry>
+<entry>XIV</entry>
+<entry>quattuordecim</entry>
+</row>
+<row>
+<entry>15</entry>
+<entry>XV</entry>
+<entry>quindecim</entry>
+</row>
+<row>
+<entry>16</entry>
+<entry>XVI</entry>
+<entry>sedecim</entry>
+</row>
+<row>
+<entry>17</entry>
+<entry>XVII</entry>
+<entry>septendecim</entry>
+</row>
+<row>
+<entry>18</entry>
+<entry>XVIII</entry>
+<entry>duodeviginti</entry>
+</row>
+<row>
+<entry>19</entry>
+<entry>XIX</entry>
+<entry>undeviginti</entry>
+</row>
+<row>
+<entry>20</entry>
+<entry>XX</entry>
+<entry>viginti</entry>
+</row>
+<row>
+<entry>21</entry>
+<entry>XXI</entry>
+<entry>vigintiunus</entry>
+</row>
+<row>
+<entry>22</entry>
+<entry>XXII</entry>
+<entry>vigintiduo</entry>
+</row>
+<row>
+<entry>30</entry>
+<entry>XXX</entry>
+<entry>triginta</entry>
+</row>
+<row>
+<entry>40</entry>
+<entry>XL</entry>
+<entry>quadraginta</entry>
+</row>
+<row>
+<entry>50</entry>
+<entry>L</entry>
+<entry>quinquaginta</entry>
+</row>
+<row>
+<entry>60</entry>
+<entry>LX</entry>
+<entry>sexaginta</entry>
+</row>
+<row>
+<entry>70</entry>
+<entry>LXX</entry>
+<entry>septuaginta</entry>
+</row>
+<row>
+<entry>80</entry>
+<entry>LXXX</entry>
+<entry>octoginta</entry>
+</row>
+<row>
+<entry>90</entry>
+<entry>XC</entry>
+<entry>nonaginta</entry>
+</row>
+<row>
+<entry>100</entry>
+<entry>C</entry>
+<entry>centum</entry>
+</row>
+<row>
+<entry>200</entry>
+<entry>CC</entry>
+<entry>ducenti</entry>
+</row>
+<row>
+<entry>300</entry>
+<entry>CCC</entry>
+<entry>trecenti</entry>
+</row>
+<row>
+<entry>400</entry>
+<entry>CD</entry>
+<entry>quadrigenti</entry>
+</row>
+<row>
+<entry>500</entry>
+<entry>D</entry>
+<entry>quingenti</entry>
+</row>
+<row>
+<entry>600</entry>
+<entry>DC</entry>
+<entry>sescenti</entry>
+</row>
+<row>
+<entry>700</entry>
+<entry>DCC</entry>
+<entry>septigenti</entry>
+</row>
+<row>
+<entry>800</entry>
+<entry>DCCC</entry>
+<entry>octigenti</entry>
+</row>
+<row>
+<entry>900</entry>
+<entry>CM</entry>
+<entry>nongenti</entry>
+</row>
+<row>
+<entry>1000</entry>
+<entry>M</entry>
+<entry>mille</entry>
+</row>
+<row>
+<entry>2000</entry>
+<entry>MM</entry>
+<entry>duo milia</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+</sect1>
diff --git a/doc/klatin/pronouns.docbook b/doc/klatin/pronouns.docbook
new file mode 100644
index 00000000..1cb39d59
--- /dev/null
+++ b/doc/klatin/pronouns.docbook
@@ -0,0 +1,331 @@
+<!-- Please translate the following -->
+<sect1 id="pronouns">
+<title> KLatin Notes - Pronouns </title>
+<para>Here are some pronouns.
+</para>
+
+<table frame="none">
+<title>Personal Pronouns</title>
+<!-- Please don't translate the following until next title -->
+<tgroup cols="2" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<!-- Translate the following two entries -->
+<row>
+<entry><emphasis>Me</emphasis></entry>
+<entry><emphasis>You</emphasis></entry>
+</row>
+
+<row>
+<entry>ego</entry>
+<entry>tu</entry>
+</row>
+<row>
+<entry>me</entry>
+<entry>te</entry>
+</row>
+<row>
+<entry>mei</entry>
+<entry>tui</entry>
+</row>
+<row>
+<entry>mihi</entry>
+<entry>tibi</entry>
+</row>
+<row>
+<entry>me</entry>
+<entry>te</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+</row>
+<!-- Translate the following two entries -->
+<row>
+<entry><emphasis>We</emphasis></entry>
+<entry><emphasis>You (Pl)</emphasis></entry>
+</row>
+<row>
+<entry>nos</entry>
+<entry>vos</entry>
+</row>
+<row>
+<entry>nos</entry>
+<entry>vos</entry>
+</row>
+<row>
+<entry>nostri/nostrum</entry>
+<entry>vestri/vestrum</entry>
+</row>
+<row>
+<entry>nobis</entry>
+<entry>vobis</entry>
+</row>
+<row>
+<entry>nobis</entry>
+<entry>vobis</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+<para>
+</para>
+<table frame="none">
+<!-- Please translate title-->
+<title>3rd Person Personal Pronouns</title>
+<!-- Please don't translate the following until next title-->
+<tgroup cols="4" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<!-- Translate the following entry -->
+<row>
+<entry></entry>
+<entry><emphasis>He,</emphasis></entry>
+<entry><emphasis>She,</emphasis></entry>
+<entry><emphasis>It</emphasis></entry>
+</row>
+<row>
+<entry>SINGULAR</entry>
+<entry>is</entry>
+<entry>ea</entry>
+<entry>id</entry>
+</row>
+<row>
+<entry></entry>
+<entry>eum</entry>
+<entry>eum</entry>
+<entry>id</entry>
+</row>
+<row>
+<entry></entry>
+<entry>eius</entry>
+<entry>eius</entry>
+<entry>eius</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ei</entry>
+<entry>ei</entry>
+<entry>ei</entry>
+</row>
+<row>
+<entry></entry>
+<entry>eo</entry>
+<entry>ea</entry>
+<entry>eo</entry>
+</row>
+<row>
+<entry>PLURAL</entry>
+<entry>ei</entry>
+<entry>eae</entry>
+<entry>ea</entry>
+</row>
+<row>
+<entry></entry>
+<entry>eos</entry>
+<entry>eas</entry>
+<entry>ea</entry>
+</row>
+<row>
+<entry></entry>
+<entry>eorum</entry>
+<entry>earum</entry>
+<entry>eorum</entry>
+</row>
+<row>
+<entry></entry>
+<entry>eis</entry>
+<entry>eis</entry>
+<entry>eis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>eis</entry>
+<entry>eis</entry>
+<entry>eis</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+<para>
+</para>
+<table frame="none">
+<!-- Please translate the title-->
+<title>Demonstrative Pronouns</title>
+<!-- Please don't translate the following -->
+<tgroup cols="4" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<!-- Translate the following entry -->
+<row>
+<entry><emphasis>This</emphasis></entry>
+</row>
+<row>
+<entry>SINGULAR</entry>
+<entry>hic</entry>
+<entry>haec</entry>
+<entry>hoc</entry>
+</row>
+<row>
+<entry></entry>
+<entry>hunc</entry>
+<entry>hanc</entry>
+<entry>hoc</entry>
+</row>
+<row>
+<entry></entry>
+<entry>huius</entry>
+<entry>huius</entry>
+<entry>huius</entry>
+</row>
+<row>
+<entry></entry>
+<entry>huic</entry>
+<entry>huic</entry>
+<entry>huic</entry>
+</row>
+<row>
+<entry></entry>
+<entry>hoc</entry>
+<entry>hac</entry>
+<entry>hoc</entry>
+</row>
+<row>
+<entry>PLURAL</entry>
+<entry>hi</entry>
+<entry>hae</entry>
+<entry>haec</entry>
+</row>
+<row>
+<entry></entry>
+<entry>hos</entry>
+<entry>has</entry>
+<entry>heac</entry>
+</row>
+<row>
+<entry></entry>
+<entry>horum</entry>
+<entry>harum</entry>
+<entry>horum</entry>
+</row>
+<row>
+<entry></entry>
+<entry>his</entry>
+<entry>his</entry>
+<entry>his</entry>
+</row>
+<row>
+<entry></entry>
+<entry>his</entry>
+<entry>his</entry>
+<entry>his</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<!-- Translate the following entry -->
+<row>
+<entry><emphasis>That</emphasis></entry>
+</row>
+<row>
+<entry>SINGULAR</entry>
+<entry>ille</entry>
+<entry>illa</entry>
+<entry>illud</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illum</entry>
+<entry>illam</entry>
+<entry>illud</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illius</entry>
+<entry>illius</entry>
+<entry>illius</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illi</entry>
+<entry>illi</entry>
+<entry>illi</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illo</entry>
+<entry>illa</entry>
+<entry>illo</entry>
+</row>
+<row>
+<entry>PLURAL</entry>
+<entry>illi</entry>
+<entry>illae</entry>
+<entry>illa</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illos</entry>
+<entry>illas</entry>
+<entry>illa</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illorum</entry>
+<entry>illarum</entry>
+<entry>illorum</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illis</entry>
+<entry>illis</entry>
+<entry>illis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>illis</entry>
+<entry>illis</entry>
+<entry>illis</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<title>Negative Pronouns</title>
+<!-- Please don't translate the following until next title -->
+<tgroup cols="2" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<!-- Translate the following two entries -->
+<row>
+<entry><emphasis>Noone</emphasis></entry>
+<entry><emphasis>Nothing</emphasis></entry>
+</row>
+<row>
+<entry>nemo</entry>
+<entry>nihil</entry>
+</row>
+<row>
+<entry>neminem</entry>
+<entry>nihil/nil</entry>
+</row>
+<row>
+<entry>nullius/neminis</entry>
+<entry>nullius rei</entry>
+</row>
+<row>
+<entry>nemini/nulli</entry>
+<entry>nulli rei</entry>
+</row>
+<row>
+<entry>nullo/nemine</entry>
+<entry>nulla re</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+</sect1>
diff --git a/doc/klatin/results.png b/doc/klatin/results.png
new file mode 100644
index 00000000..eccf4e93
--- /dev/null
+++ b/doc/klatin/results.png
Binary files differ
diff --git a/doc/klatin/verbs.docbook b/doc/klatin/verbs.docbook
new file mode 100644
index 00000000..a57a9c8b
--- /dev/null
+++ b/doc/klatin/verbs.docbook
@@ -0,0 +1,1278 @@
+<!-- Translators: please don't translate Latin words -->
+<sect1 id="verbs">
+<!-- Please translate -->
+<title> KLatin Notes - Verbs </title>
+
+<para>
+All languages have verbs. Latin verbs are divided into four categories,
+called <emphasis>conjugations</emphasis>. These conjugations are divisions of verbs
+that, generally, use the same stem formation and have the same endings.
+</para>
+
+<para>
+The stem of a verb is the basic part of the verb that does not change. For
+example, the stem of <emphasis>moneo</emphasis> is <emphasis>mone</emphasis>. To get the stem of the verb,
+take the first person singular of the verb, and take off the -o ending.
+The verb <quote>sum</quote> (I am) is totally irregular, and does not
+have a consistent stem.
+</para>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Indicative Active</title>
+<tgroup cols="6" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<!-- Please translate -->
+<entry>TENSE</entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+<entry>SUM - I</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- translate only the first entry of each row if there is one -->
+<entry>PRESENT</entry>
+<entry>am-o</entry>
+<entry>mone-o</entry>
+<entry>reg-o</entry>
+<entry>audi-o</entry>
+<entry>sum</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-s</entry>
+<entry>mone-s</entry>
+<entry>regi-s</entry>
+<entry>audi-s</entry>
+<entry>es</entry>
+</row>
+<row>
+<entry>I love, am loving</entry>
+<entry>ama-t</entry>
+<entry>mone-t</entry>
+<entry>regi-t</entry>
+<entry>audi-t</entry>
+<entry>est</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-mus</entry>
+<entry>mone-mus</entry>
+<entry>regi-mus</entry>
+<entry>audi-mus</entry>
+<entry>sumus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-tis</entry>
+<entry>mone-tis</entry>
+<entry>regi-tis</entry>
+<entry>audi-tis</entry>
+<entry>estis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-nt</entry>
+<entry>mone-nt</entry>
+<entry>regu-nt</entry>
+<entry>audi-unt</entry>
+<entry>sunt</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>FUTURE</entry>
+<entry>ama-bo</entry>
+<entry>mone-bo</entry>
+<entry>reg-am</entry>
+<entry>audi-am</entry>
+<entry>ero</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bis</entry>
+<entry>mone-bis</entry>
+<entry>reg-es</entry>
+<entry>audi-es</entry>
+<entry>eris</entry>
+</row>
+<row>
+<entry>I will love</entry>
+<entry>ama-bit</entry>
+<entry>mone-bit</entry>
+<entry>reg-et</entry>
+<entry>audi-et</entry>
+<entry>erit</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bimus</entry>
+<entry>mone-bimus</entry>
+<entry>reg-emus</entry>
+<entry>audi-emus</entry>
+<entry>erimus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bitis</entry>
+<entry>mone-bitis</entry>
+<entry>reg-etis</entry>
+<entry>audi-etis</entry>
+<entry>eritis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bunt</entry>
+<entry>mone-bunt</entry>
+<entry>reg-ent</entry>
+<entry>audi-ent</entry>
+<entry>erunt</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>IMPERFECT</entry>
+<entry>ama-bam</entry>
+<entry>mone-bam</entry>
+<entry>rege-bam</entry>
+<entry>audi-bam</entry>
+<entry>eram</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bas</entry>
+<entry>mone-bas</entry>
+<entry>rege-bas</entry>
+<entry>audi-bas</entry>
+<entry>eras</entry>
+</row>
+<row>
+<entry>I was loving</entry>
+<entry>ama-bat</entry>
+<entry>mone-bat</entry>
+<entry>rege-bat</entry>
+<entry>audi-bat</entry>
+<entry>erat</entry>
+</row>
+<row>
+<entry>I used to love</entry>
+<entry>ama-bamus</entry>
+<entry>mone-bamus</entry>
+<entry>rege-bamus</entry>
+<entry>audi-bamus</entry>
+<entry>eramus</entry>
+</row>
+<row>
+<entry>I began to love</entry>
+<entry>ama-batis</entry>
+<entry>mone-batis</entry>
+<entry>rege-batis</entry>
+<entry>audi-batis</entry>
+<entry>eratis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bant</entry>
+<entry>mone-bant</entry>
+<entry>rege-bant</entry>
+<entry>audi-bant</entry>
+<entry>erant</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>PERFECT</entry>
+<entry>amav-i</entry>
+<entry>monu-i</entry>
+<entry>rex-i</entry>
+<entry>audiv-i</entry>
+<entry>fu-i</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-isti</entry>
+<entry>monu-isti</entry>
+<entry>rex-isti</entry>
+<entry>audiv-isti</entry>
+<entry>fu-isti</entry>
+</row>
+<row>
+<entry>I have loved</entry>
+<entry>amav-it</entry>
+<entry>monu-it</entry>
+<entry>rex-it</entry>
+<entry>audiv-it</entry>
+<entry>fu-it</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-imus</entry>
+<entry>monu-imus</entry>
+<entry>rex-imus</entry>
+<entry>audiv-imus</entry>
+<entry>fu-imus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-istis</entry>
+<entry>monu-istis</entry>
+<entry>rex-istis</entry>
+<entry>audiv-istis</entry>
+<entry>fu-istis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-erunt</entry>
+<entry>monu-erunt</entry>
+<entry>rex-erunt</entry>
+<entry>audiv-erunt</entry>
+<entry>fu-erunt</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>FUTURE PERFECT</entry>
+<entry>amav-ero</entry>
+<entry>monu-ero</entry>
+<entry>rex-ero</entry>
+<entry>audiv-ero</entry>
+<entry>fu-ero</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-eris</entry>
+<entry>monu-eris</entry>
+<entry>rex-eris</entry>
+<entry>audiv-eris</entry>
+<entry>fu-eris</entry>
+</row>
+<row>
+<entry>I will have loved</entry>
+<entry>amav-erit</entry>
+<entry>monu-erit</entry>
+<entry>rex-erit</entry>
+<entry>audiv-erit</entry>
+<entry>fu-erit</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-erimus</entry>
+<entry>monu-erimus</entry>
+<entry>rex-erimus</entry>
+<entry>audiv-erimus</entry>
+<entry>fu-erimus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-eritis</entry>
+<entry>monu-eritis</entry>
+<entry>rex-eritis</entry>
+<entry>audiv-eritis</entry>
+<entry>fu-eritis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-erint</entry>
+<entry>monu-erint</entry>
+<entry>rex-erint</entry>
+<entry>audiv-erint</entry>
+<entry>fu-erint</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>PLUPERFECT</entry>
+<entry>amav-eram</entry>
+<entry>monu-eram</entry>
+<entry>rex-eram</entry>
+<entry>audiv-eram</entry>
+<entry>fu-eram</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-eras</entry>
+<entry>monu-eras</entry>
+<entry>rex-eras</entry>
+<entry>audiv-eras</entry>
+<entry>fu-eras</entry>
+</row>
+<row>
+<entry>I had loved</entry>
+<entry>amav-erat</entry>
+<entry>monu-erat</entry>
+<entry>rex-erat</entry>
+<entry>audiv-erat</entry>
+<entry>fu-erat</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-eramus</entry>
+<entry>monu-eramus</entry>
+<entry>rex-eramus</entry>
+<entry>audiv-eramus</entry>
+<entry>fu-eramus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-eratis</entry>
+<entry>monu-eratis</entry>
+<entry>rex-eratis</entry>
+<entry>audiv-eratis</entry>
+<entry>fu-eratis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-erant</entry>
+<entry>monu-erant</entry>
+<entry>rex-erant</entry>
+<entry>audiv-erant</entry>
+<entry>fu-erant</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+<para>
+</para>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Subjunctive Active</title>
+<tgroup cols="6" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<!-- Please translate -->
+<entry>TENSE</entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+<entry>SUM - I</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- translate only the first entry of each row if there is one -->
+<entry>PRESENT</entry>
+<entry>ame-m</entry>
+<entry>monea-m</entry>
+<entry>rega-m</entry>
+<entry>audi-o</entry>
+<entry>sim</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ame-s</entry>
+<entry>monea-s</entry>
+<entry>rega-s</entry>
+<entry>audi-s</entry>
+<entry>sis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ame-t</entry>
+<entry>monea-t</entry>
+<entry>rega-t</entry>
+<entry>audi-t</entry>
+<entry>sit</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ame-mus</entry>
+<entry>monea-mus</entry>
+<entry>rega-mus</entry>
+<entry>audi-mus</entry>
+<entry>simus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ame-tis</entry>
+<entry>monea-tis</entry>
+<entry>rega-tis</entry>
+<entry>audi-tis</entry>
+<entry>sitis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ame-nt</entry>
+<entry>monea-nt</entry>
+<entry>rega-nt</entry>
+<entry>audi-unt</entry>
+<entry>sint</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>IMPERFECT</entry>
+<entry>ama-rem</entry>
+<entry>mone-rem</entry>
+<entry>rege-rem</entry>
+<entry>audi-rem</entry>
+<entry>essem</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-res</entry>
+<entry>mone-res</entry>
+<entry>rege-res</entry>
+<entry>audi-res</entry>
+<entry>esset</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-ret</entry>
+<entry>mone-ret</entry>
+<entry>rege-ret</entry>
+<entry>audi-ret</entry>
+<entry>esset</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-remus</entry>
+<entry>mone-remus</entry>
+<entry>rege-remus</entry>
+<entry>audi-remus</entry>
+<entry>essemus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-retis</entry>
+<entry>mone-retis</entry>
+<entry>rege-retis</entry>
+<entry>audi-retis</entry>
+<entry>essetis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-rent</entry>
+<entry>mone-rent</entry>
+<entry>rege-rent</entry>
+<entry>audi-rent</entry>
+<entry>essent</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>PERFECT</entry>
+<entry>amav-erim</entry>
+<entry>monu-erim</entry>
+<entry>rex-erim</entry>
+<entry>audiv-erim</entry>
+<entry>fu-erim</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-eris</entry>
+<entry>monu-eris</entry>
+<entry>rex-eris</entry>
+<entry>audiv-eris</entry>
+<entry>fu-eris</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-erit</entry>
+<entry>monu-erit</entry>
+<entry>rex-erit</entry>
+<entry>audiv-erit</entry>
+<entry>fu-erit</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-erimus</entry>
+<entry>monu-erimus</entry>
+<entry>rex-erimus</entry>
+<entry>audiv-erimus</entry>
+<entry>fu-erimus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-eritis</entry>
+<entry>monu-eritis</entry>
+<entry>rex-eritis</entry>
+<entry>audiv-eritis</entry>
+<entry>fu-eritis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-erint</entry>
+<entry>monu-erint</entry>
+<entry>rex-erint</entry>
+<entry>audiv-erint</entry>
+<entry>fu-erint</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>PLUPERFECT</entry>
+<entry>amav-issem</entry>
+<entry>monu-issem</entry>
+<entry>rex-issem</entry>
+<entry>audiv-issem</entry>
+<entry>fu-issem</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-isses</entry>
+<entry>monu-isses</entry>
+<entry>rex-isses</entry>
+<entry>audiv-isses</entry>
+<entry>fu-isses</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-isset</entry>
+<entry>monu-isset</entry>
+<entry>rex-isset</entry>
+<entry>audiv-isset</entry>
+<entry>fu-isset</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-issemus</entry>
+<entry>monu-issemus</entry>
+<entry>rex-issemus</entry>
+<entry>audiv-issemus</entry>
+<entry>fu-issemus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-issetis</entry>
+<entry>monu-issetis</entry>
+<entry>rex-issetis</entry>
+<entry>audiv-issetis</entry>
+<entry>fu-issetis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amav-issent</entry>
+<entry>monu-issent</entry>
+<entry>rex-issent</entry>
+<entry>audiv-issent</entry>
+<entry>fu-issent</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Imperative Active</title>
+<tgroup cols="6" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<!-- Please translate -->
+<entry>TENSE</entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+<entry>SUM - I</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- translate only the first entry of each row if there is one -->
+<entry>PRESENT</entry>
+<entry>am-a</entry>
+<entry>mon-e</entry>
+<entry>reg-e</entry>
+<entry>aud-i</entry>
+<entry>es</entry>
+</row>
+<row>
+<entry></entry>
+<entry>am-ate</entry>
+<entry>mon-ete</entry>
+<entry>reg-ite</entry>
+<entry>aud-ite</entry>
+<entry>este</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>FUTURE</entry>
+<entry>am-ato</entry>
+<entry>mon-eto</entry>
+<entry>reg-ito</entry>
+<entry>aud-ito</entry>
+<entry>esto</entry>
+</row>
+<row>
+<entry></entry>
+<entry>am-ato</entry>
+<entry>mon-eto</entry>
+<entry>reg-ito</entry>
+<entry>aud-ito</entry>
+<entry>esto</entry>
+</row>
+<row>
+<entry></entry>
+<entry>am-atote</entry>
+<entry>mon-etote</entry>
+<entry>reg-itote</entry>
+<entry>aud-itote</entry>
+<entry>estote</entry>
+</row>
+<row>
+<entry></entry>
+<entry>am-anto</entry>
+<entry>mon-ento</entry>
+<entry>reg-unto</entry>
+<entry>aud-iunto</entry>
+<entry>sunto</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Gerund Active</title>
+<tgroup cols="5" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<entry></entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+</row>
+<row>
+<entry>Accusative</entry>
+<entry>(ad) am-andum</entry>
+<entry>(ad) mon-endum</entry>
+<entry>(ad) reg-endum</entry>
+<entry>(ad) aud-iendum</entry>
+</row>
+<row>
+<entry>Genitive</entry>
+<entry>am-andi</entry>
+<entry>mon-endi</entry>
+<entry>reg-endi</entry>
+<entry>aud-iendi</entry>
+</row>
+<row>
+<entry>Dative</entry>
+<entry>am-ando</entry>
+<entry>mon-endo</entry>
+<entry>reg-endo</entry>
+<entry>aud-iendo</entry>
+</row>
+<row>
+<entry>Ablative</entry>
+<entry>am-ando</entry>
+<entry>mon-endo</entry>
+<entry>reg-endo</entry>
+<entry>aud-iendo</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Infinitive Active</title>
+<tgroup cols="6" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<entry>TENSE</entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+<entry>SUM - I</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>PRESENT</entry>
+<entry>am-are</entry>
+<entry>mon-ere</entry>
+<entry>reg-ere</entry>
+<entry>aud-ire</entry>
+<entry>esse</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>PERFECT</entry>
+<entry>amav-isse</entry>
+<entry>monu-isse</entry>
+<entry>rex-isse</entry>
+<entry>audiv-isse</entry>
+<entry>fu-isse</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Participle Active</title>
+<tgroup cols="6" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<entry>TENSE</entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+<entry>SUM - I</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>PRESENT</entry>
+<entry>am-ans,-antis</entry>
+<entry>mon-ens,-entis</entry>
+<entry>reg-ens,-entis</entry>
+<entry>aud-iens,-ientis</entry>
+<entry></entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>FUTURE</entry>
+<entry>amat-urus,-a,-um</entry>
+<entry>monit-urus,-a,-um</entry>
+<entry>rect-urus,-a,-um</entry>
+<entry>audit-urus,-a,-um</entry>
+<entry>futurus,-a,-um</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Indicative Passive</title>
+<tgroup align="center" cols="5" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<!-- Please translate -->
+<entry>TENSE</entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>PRESENT</entry>
+<entry>am-or</entry>
+<entry>mone-or</entry>
+<entry>reg-or</entry>
+<entry>audi-or</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-ris</entry>
+<entry>mone-ris</entry>
+<entry>reg-eris</entry>
+<entry>audi-eris</entry>
+</row>
+<row>
+<entry>I am loved</entry>
+<entry>ama-tur</entry>
+<entry>mone-tur</entry>
+<entry>regi-tur</entry>
+<entry>audi-tur</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-mur</entry>
+<entry>mone-mur</entry>
+<entry>regi-mur</entry>
+<entry>audi-mur</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-mini</entry>
+<entry>mone-mini</entry>
+<entry>regi-mini</entry>
+<entry>audi-mini</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-ntur</entry>
+<entry>mone-ntur</entry>
+<entry>regu-ntur</entry>
+<entry>audiu-unt</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>FUTURE</entry>
+<entry>ama-bor</entry>
+<entry>mone-bor</entry>
+<entry>reg-ar</entry>
+<entry>audi-ar</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-beris</entry>
+<entry>mone-beris</entry>
+<entry>reg-eris</entry>
+<entry>audi-eris</entry>
+</row>
+<row>
+<entry>I will be loved</entry>
+<entry>ama-bitur</entry>
+<entry>mone-bitur</entry>
+<entry>reg-etur</entry>
+<entry>audi-etur</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bimur</entry>
+<entry>mone-bimur</entry>
+<entry>reg-emur</entry>
+<entry>audi-emur</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bimini</entry>
+<entry>mone-bimini</entry>
+<entry>reg-emini</entry>
+<entry>audi-emini</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-buntur</entry>
+<entry>mone-buntur</entry>
+<entry>reg-entur</entry>
+<entry>audi-entur</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>IMPERFECT</entry>
+<entry>ama-bar</entry>
+<entry>mone-bar</entry>
+<entry>rege-bar</entry>
+<entry>audie-bar</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-baris</entry>
+<entry>mone-baris</entry>
+<entry>rege-baris</entry>
+<entry>audie-baris</entry>
+</row>
+<row>
+<entry>I was loved</entry>
+<entry>ama-batur</entry>
+<entry>mone-batur</entry>
+<entry>rege-batur</entry>
+<entry>audie-batur</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bamur</entry>
+<entry>mone-bamur</entry>
+<entry>rege-bamur</entry>
+<entry>audie-bamur</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bamini</entry>
+<entry>mone-bamini</entry>
+<entry>rege-bamini</entry>
+<entry>audie-bamini</entry>
+</row>
+<row>
+<entry></entry>
+<entry>ama-bantur</entry>
+<entry>mone-bantur</entry>
+<entry>rege-bantur</entry>
+<entry>audie-bantur</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>PERFECT</entry>
+<entry>amatus sum</entry>
+<entry>monitus sum</entry>
+<entry>rectus sum</entry>
+<entry>auditus sum</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amatus es</entry>
+<entry>monitus es</entry>
+<entry>rectus es</entry>
+<entry>auditus es</entry>
+</row>
+<row>
+<entry>I have been loved</entry>
+<entry>amatus est</entry>
+<entry>monitus est</entry>
+<entry>rectus est</entry>
+<entry>auditus est</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati sumus</entry>
+<entry>moniti sumus</entry>
+<entry>recti sumus</entry>
+<entry>auditi sumus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati estis</entry>
+<entry>moniti estis</entry>
+<entry>recti estis</entry>
+<entry>auditi estis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati sunt</entry>
+<entry>moniti sunt</entry>
+<entry>recti sunt</entry>
+<entry>auditi sunt</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>FUTURE PERFECT</entry>
+<entry>amatus ero</entry>
+<entry>monitus ero</entry>
+<entry>rectus ero</entry>
+<entry>auditus ero</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amatus eris</entry>
+<entry>monitus eris</entry>
+<entry>rectus eris</entry>
+<entry>auditus eris</entry>
+</row>
+<row>
+<entry>I will have been loved</entry>
+<entry>amatus erit</entry>
+<entry>monitus erit</entry>
+<entry>rectus erit</entry>
+<entry>auditus erit</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati erimus</entry>
+<entry>moniti erimus</entry>
+<entry>recti erimus</entry>
+<entry>auditi erimus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati eritis</entry>
+<entry>moniti eritis</entry>
+<entry>recti eritis</entry>
+<entry>auditi eritis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati erunt</entry>
+<entry>moniti erunt</entry>
+<entry>recti erunt</entry>
+<entry>auditi erunt</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<!-- Please translate only the first entry of each row if there is one -->
+<entry>PLUPERFECT</entry>
+<entry>amatus eram</entry>
+<entry>monitus eram</entry>
+<entry>rectus eram</entry>
+<entry>auditus eram</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amatus eras</entry>
+<entry>monitus eras</entry>
+<entry>rectus eras</entry>
+<entry>auditus eras</entry>
+</row>
+<row>
+<entry>I had been loved</entry>
+<entry>amatus erat</entry>
+<entry>monitus erat</entry>
+<entry>rectus erat</entry>
+<entry>auditus erat</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati eramus</entry>
+<entry>moniti eramus</entry>
+<entry>recti eramus</entry>
+<entry>auditi eramus</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati eratis</entry>
+<entry>moniti eratis</entry>
+<entry>recti eratis</entry>
+<entry>auditi eratis</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amati erant</entry>
+<entry>moniti erant</entry>
+<entry>recti erant</entry>
+<entry>auditi erant</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Gerundive Passive</title>
+<tgroup cols="4" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>am-andus,-a,-um</entry>
+<entry>mon-endus,-a,-um</entry>
+<entry>reg-endus,-a,-um</entry>
+<entry>aud-iendus,-a,-um</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table frame="none">
+<!-- Please translate the title-->
+<title>Verb listings - Infinitive Passive</title>
+<tgroup cols="5" colsep="1" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row>
+<entry>TENSE</entry>
+<entry>1st</entry>
+<entry>2nd</entry>
+<entry>3rd</entry>
+<entry>4th</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>PRESENT</entry>
+<entry>am-ari</entry>
+<entry>mon-eri</entry>
+<entry>reg-i</entry>
+<entry>aud-iri</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>PERFECT</entry>
+<entry>amat-um,-am,-um esse</entry>
+<entry>monit-um,-am,-um esse</entry>
+<entry>rect-um,-am,-um esse</entry>
+<entry>audit-um,-am,-um esse</entry>
+</row>
+<row>
+<entry></entry>
+<entry>amat-os,-as,-a esse</entry>
+<entry>monit-os,-as,-a esse</entry>
+<entry>rect-os,-as,-a esse</entry>
+<entry>audit-os,-as,-a esse</entry>
+</row>
+<row>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>FUTURE</entry>
+<entry>amat-um iri</entry>
+<entry>monit-um iri</entry>
+<entry>rect-um iri</entry>
+<entry>audit-um iri</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+</sect1>
diff --git a/doc/klettres/Makefile.am b/doc/klettres/Makefile.am
new file mode 100644
index 00000000..085981d9
--- /dev/null
+++ b/doc/klettres/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+
diff --git a/doc/klettres/index.docbook b/doc/klettres/index.docbook
new file mode 100644
index 00000000..4abb2cb5
--- /dev/null
+++ b/doc/klettres/index.docbook
@@ -0,0 +1,756 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
+ "dtd/kdex.dtd" [
+ <!ENTITY kappname "&klettres;"><!-- replace klettres here -->
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &klettres; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Anne-Marie</firstname>
+<surname>Mahfouf</surname>
+<affiliation>
+<address>&Anne-Marie.Mahfouf.mail;</address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2001</year><year>2006</year>
+<holder>&Anne-Marie.Mahfouf;</holder>
+</copyright>
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2006-02-08</date>
+<releaseinfo>1.5</releaseinfo>
+
+<abstract>
+<para>
+&klettres; is an application specially designed to do help the user
+to learn alphabet in a new language and then to learn to read simple syllables.
+The user can be a young child aged from two and a half or an adult that wants to learn
+the basics of a foreign language. </para>
+<para>
+Eleven languages are available at the moment: Czech, Danish, Dutch, English,
+French, Italian, Luganda, Romanized Hindi, Spanish, Slovak and German but only
+English, French and your language if it is among those are installed by default.
+</para>
+<para>
+&klettres; is really easy to use. The language can be changed using the
+<guimenu>Language</guimenu> menu. The user can also choose the Level from
+1 to 4 in a combo box in the toolbar or via the <guimenu>Level</guimenu>
+menu. <guimenuitem>Themes</guimenuitem> (background and font color) can be
+changed in a combo box or in the <menuchoice><guimenu>Look</guimenu>
+<guimenuitem>Themes</guimenuitem></menuchoice> menu. Three themes are
+available: <guimenuitem>Classroom</guimenuitem>,
+<guimenuitem>Arctic</guimenuitem> and <guimenuitem>Desert</guimenuitem>.
+Finally, the mode can be changed from kid to grown-up using the
+<menuchoice><guimenu>Look</guimenu> <guimenuitem>Mode</guimenuitem></menuchoice> menu.
+</para>
+
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>klettres</keyword>
+<keyword>alphabet</keyword>
+<keyword>Czech</keyword>
+<keyword>Danish</keyword>
+<keyword>Dutch</keyword>
+<keyword>English</keyword>
+<keyword>French</keyword>
+<keyword>Italian</keyword>
+<keyword>Romanized Hindi</keyword>
+<keyword>Spanish</keyword>
+<keyword>Slovak</keyword>
+<keyword>Luganda</keyword>
+<keyword>language</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>&klettres; is a very simple application that helps a child or an
+adult to learn the alphabet and some simple sounds in his own language
+or in another language. The program picks up a letter or a syllable
+in random, this letter/syllable is displayed and the sound is played.
+The user should then type this letter or syllable. Training is done in
+the levels where the letter/syllable is not displayed, only the sound
+is played. The user does not need to know how to use the mouse, the
+keyboard only is needed.</para>
+
+<para>There are eleven languages available at the moment: Czech, Danish, Dutch,
+English, French, Italian, Luganda, Romanized Hindi, Spanish, Slovak and German. If your
+&kde; language is Czech, Danish, Dutch, English, French, Italian, Luganda, Romanized Hindi, Spanish,
+Slovak or German, then your language is taken as default, otherwise French is the default.
+You can easily get any additional available language by using the
+<guimenu>File</guimenu> menu and <guimenuitem>Get Alphabet in New
+Language...</guimenuitem> menu item, provided that your computer is connected to
+the Internet.</para>
+
+<note><para>&klettres; needs &arts; running for the sound</para></note>
+
+<para>Two different modes allow you to adapt &klettres; to
+your need and have the full usual interface or a stripped interface. For a
+child, the menubar is no longer
+visible. We assume that a child will not want to set the language
+himself. A combo box allows him to choose the different levels. For an
+older user, the background is not so childish and the menubar is
+present in the Grown-Up style. Three different themes
+(<guimenuitem>Classroom</guimenuitem>,
+<guimenuitem>Arctic</guimenuitem> and
+<guimenuitem>Desert</guimenuitem>) set up a different background with
+different fonts.</para>
+
+<note>
+<para>You do not need the language keyboard layout anymore as you can use the
+special <guimenuitem>Characters</guimenuitem> toolbar to type any special
+character in each language. In the <guimenu>Settings</guimenu> menu,
+<guimenuitem>Toolbars</guimenuitem>, select <guimenuitem>Characters</guimenuitem>
+and the toolbar will appear at the bottom of &klettres;. Click on the letter
+you want and it will be shown in the input field. This toolbar can be dragged
+anywhere on your screen.</para>
+<para>
+If you prefer having the language keyboard layout, please use &kcontrolcenter;, in the
+section <guimenu>Regional &amp; Accessibility</guimenu> and submenu
+<guimenuitem>Keyboard Layout</guimenuitem> in order to set the correct keyboard layout.</para>
+</note>
+</chapter>
+
+<chapter id="using-klettres">
+<title>Using &klettres;</title>
+<para>&klettres; has 4 levels. Levels 1 and 2 deal with the alphabet and
+levels 3 and 4 concern syllables. For a very young child (2 1/2 to 4), I would
+suggest that he/she is sitting on your lap in front of the computer and
+that you do the game together.</para>
+
+<sect1 id="levels1-and2">
+<title>Levels 1 and 2</title>
+
+<screenshot>
+<screeninfo>Screenshot of &klettres; Level 1</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="klettres1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&klettres; level1</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>Level is Level 1, language is French, theme is desert
+and mode is <emphasis>grown-up</emphasis>.</para>
+<note>
+<para>
+If your &kde; language is set to Czech, Danish, Dutch, English, French, Italian,
+Luganda, Romanized Hindi, Spanish, Slovak or German, then this will be the default
+language the first time you run &klettres;. For other languages, French is the default.
+&klettres; comes with French and your default language if among those listed above
+and you can get additional languages via <guimenu>File</guimenu> <guimenuitem>Get Alphabet
+in New Language...</guimenuitem> provided you have an Internet connection.
+</para>
+</note>
+<para>
+In level 1, the user sees the letter and hears the sound. He then has to type in
+the letter in the box. If it is correct, the next letter appears (without having
+to press <keycap>Enter</keycap> or whatever). If the user types the wrong letter,
+he hears the sound again. In this level, the user memorizes the letters, associates
+them with their sound and recognizes them on the keyboard.
+</para>
+
+<note>
+<para>The user can type in either lower or uppercase letters. The letters are
+automatically put in uppercase so that a child will match them with the keyboard.
+He can type only one letter at atime.</para>
+<para>When you type a letter in the input field, there is no need to press
+<keycap>Enter</keycap> and the program waits for a short while before testing if
+the letter is right. This short wait is to leave time to a young child to understand
+what he/she just typed, especially if this is the wrong letter. You can change this
+time by using the <guimenu>Settings</guimenu> menu, <guimenuitem>Configure &klettres;...</guimenuitem>
+and the <guilabel>Timer</guilabel> page which will bring you a dialog where you can
+set two different times: one for the <guilabel>Kid Mode</guilabel> and one for the
+<guilabel>Grown-up Mode</guilabel>.
+</para>
+</note>
+
+<para>
+After the first time, the language setting is saved in a configuration file
+on closing of &klettres; and loaded the next time, with the level you were in.
+</para>
+<para>The mode (kid or grown-up) is saved in the config file and therefore
+is kept until you change.</para>
+<para>The letters appear in random order. They are not the same consecutively. </para>
+
+<para>
+<screenshot>
+<screeninfo>Screenshot of &klettres; Level 2</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="klettres2.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&klettres; level2</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>Here is a screenshot of Level 2 with the <emphasis>kid</emphasis> mode, <emphasis>classroom</emphasis> theme and Danish language.</para>
+
+<para>Clicking in the <guilabel>Level</guilabel> combo-box and choosing <guilabel>Level
+2</guilabel> or using the <guimenu>Level</guimenu> menu brings you to level 2. In that level, the user only
+hears the sound of the letter and has to type in the letter. If he
+is wrong, the letter appears to help him. </para>
+</sect1>
+
+<sect1 id="levels3-and4">
+<title>Levels 3 and 4</title>
+
+<para>
+<screenshot>
+<screeninfo>Screenshot of &klettres; Level 3</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="klettres3.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&klettres; level3</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+
+<para>Here you can see &klettres; level 3, <emphasis>grown-up</emphasis> mode, <emphasis>arctic</emphasis> theme and Czech language.
+</para>
+
+<para>
+In level 3, the user sees the syllable and hears the sound. He then
+has to type in the letters in the box. If the first letter of the
+sound is wrong, the user cannot type in the second one. The letter
+disappears and he has to try again. The number of letters is two or
+three, it depends of the language.</para>
+
+<screenshot>
+<screeninfo>Screenshot of &klettres; Level 4</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="klettres4.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&klettres; level4</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>Here you can see &klettres; level 4, <emphasis>kid</emphasis> mode, <emphasis>desert</emphasis> theme and Slovak language.
+</para>
+
+<para>The sounds appear in random order. </para> <para>Clicking in the
+<guilabel>Level</guilabel> combo-box or using the <guimenu>Level</guimenu> menu in the menubar
+and choosing <guilabel>Level 4</guilabel> brings you
+to level 4. In that level, the user only hears the sound of the
+syllable and has to type in the letters. This level is quite difficult
+for a young child. </para>
+
+</sect1>
+
+<sect1 id ="configuring">
+<title>Configuration dialog</title>
+<para>The configuration dialog has two pages: one for <guilabel>Font Settings</guilabel>
+and one for the <guilabel>Timer</guilabel>.</para>
+
+<sect2 id="about-font">
+<title>About fonts</title>
+
+<para>
+You can easily change the font that displays the letters. In some distribution, the default font used from the system is really ugly. In grown-up mode, in the <guimenu>Settings</guimenu> menu, in <guimenuitem>Configure &klettres;...</guimenuitem> you will find a <guilabel>Font Settings</guilabel> page with a font chooser dialog. The new font will be applied to both the displayed letter/syllable and the user field.
+</para>
+
+<warning>
+<para>
+Changing font is also nice as some fonts (Helvetica for example) do not display correctly East-European languages as Czech and Slovak. If some letters or syllables are not displayed, please change the font and choose Arial for example.
+</para>
+</warning>
+
+<para>
+You can also choose here the size you like the best. This size will be kept in configuration.
+</para>
+
+<screenshot>
+<screeninfo>Screenshot of &klettres; Font Chooser Dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="klettres5.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&klettres; Font Chooser Dialog</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>Here you can see &klettres; Font Chooser Dialog.
+</para>
+</sect2>
+
+<sect2 id="timers">
+<title>Timers</title>
+
+<para>The timers set the time between two letters &ie; the time during wich a letter is displayed. The units are tenths of seconds.
+</para>
+
+<para>The <guilabel>Timer</guilabel> page in the <menuchoice><guimenu>Settings</guimenu> <guimenuitem>Configure &klettres;...</guimenuitem></menuchoice> dialog has two timers settings: one for the <guilabel>Kid Mode</guilabel> and one for the <guilabel>Grown-up Mode</guilabel>. Defaults are 4 tenths of seconds for <guilabel>Kid Mode</guilabel> and 2 tenths of seconds for <guilabel>Grown-up Mode</guilabel>. Increasing the time leaves you more time to see your errors.</para>
+
+<screenshot>
+<screeninfo>Screenshot of &klettres; Timers Settings</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="klettres6.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Screenshot of &klettres; Timers Settings</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+</sect2>
+</sect1>
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="klettres-mainwindow">
+<title>The Main &klettres; Window</title>
+
+<sect2>
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>New Sound</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Play</action> a new sound</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Replay Sound</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Play</action> the same sound again</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Get Alphabet in New Language...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens</action> the <guilabel>Get Hot New Stuff</guilabel> dialog for &klettres; to download a new language</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quits</action> &klettres;</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Level</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Level 1</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the level 1 (letter displayed and sound)</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Level 2</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the level 2 (no letter displayed, sound only)</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Level 3</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the level 3 (syllable displayed and sound)</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Level</guimenu>
+<guimenuitem>Level 4</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the level 4 (no syllable displayed, sound only)</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+<sect2>
+<title>The <guimenu>Language</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Language</guimenu>
+<guimenuitem>English</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the English language</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Language</guimenu>
+<guimenuitem>French</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the French language</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Look</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Look</guimenu>
+<guisubmenu>Theme</guisubmenu>
+<guimenuitem>Classroom</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Switch</action> to the classroom theme</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Look</guimenu>
+<guisubmenu>Theme</guisubmenu>
+<guimenuitem>Arctic</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Switch</action> to the arctic theme</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Look</guimenu>
+<guisubmenu>Theme</guisubmenu>
+<guimenuitem>Desert</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Switch</action> to the desert theme</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>K</keycap></keycombo>
+</shortcut>
+<guimenu>Look</guimenu>
+<guimenuitem>Mode Kid</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the kid mode: no menubar</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>G</keycap></keycombo>
+</shortcut>
+<guimenu>Look</guimenu>
+<guimenuitem>Mode Grownup</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the grown-up mode: normal interface</para></listitem>
+</varlistentry>
+</variablelist>
+</sect2>
+
+<sect2>
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>M</keycap></keycombo>
+</shortcut>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show Menubar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the menubar</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Toolbars</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the <guimenuitem>Main</guimenuitem> and the
+<guimenuitem>Characters</guimenuitem> toolbar</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> &klettres; shortcuts</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> &klettres; toolbars</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure &klettres;...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> &klettres;: display a dialog with the <guilabel>Font
+Settings</guilabel> page and the <guilabel>Timer</guilabel> configuration page.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+</sect1>
+</chapter>
+
+<chapter id="sounds">
+<title>Adding Sounds to &klettres;</title>
+
+<para>
+If you would like to add sounds in your own language, it is very easy to do so. Record the alphabet sounds and place them in a folder named 'alpha'. Then record the most current syllables and put them in a folder named 'syllab'.</para>
+<para>Create a text file <filename>sounds.xml</filename>, preferably using &kate; as editor or another editor capable of different encoding. In this file, write all the alphabet sounds and syllable sounds you recorded, like this example for the czech language:</para>
+<programlisting>&lt;klettres&gt;
+&lt;language code="cs"&gt;
+ &lt;menuitem&gt;
+ &lt;label&gt;&amp;Czech&lt;/label&gt;
+ &lt;/menuitem&gt;
+ &lt;alphabet&gt;
+ &lt;sound name="A" file="cs/alpha/a.ogg" /&gt;
+ ...
+ &lt;/alphabet&gt;
+ &lt;syllables&gt;
+ &lt;sound name="BA" file="cs/syllab/ba.ogg" /&gt;
+ ...
+ &lt;/syllables&gt;
+ &lt;/language&gt;
+&lt;/klettres&gt;</programlisting>
+<para>Replace "cs" with the two letter code and "Czech" with the name of your language. Write the sound names with the special characters of your language in uppercase in utf8.</para>
+
+<para>Additionally you can tell me about special letters in your language so I can easily generate the special <guimenuitem>Characters</guimenuitem> toolbar. Create a text file <filename>cs.txt</filename> (replace "cs" with the two letter code of your language) with each special character of your language in uppercase on one line.
+And save both text files with <quote>utf8</quote> encoding (upper right dropbox in &kate; allows that)</para>
+
+<para>The sounds should be in wav or ogg format and long enough for KAudioPlayer to play them (between 1.5 and 2 seconds long, please add some silence if they are too short). Then make a tarball of all that and send it to me.
+</para>
+
+<para>
+See the <ulink url="http://edu.kde.org/klettres/add_language.php">&klettres; website</ulink> for more up to date instructions on how to add a new language.
+</para>
+</chapter>
+
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>The background picture does not appear.</para>
+</question>
+<answer>
+<para>You need to configure with the <option>--prefix</option> option
+set to your &kde; folder or to add this folder to your
+path.</para> </answer>
+</qandaentry>
+<qandaentry>
+<question>
+<para>I do not hear any sounds</para>
+</question>
+<answer>
+<para>You need to have &arts; support and the &arts; daemon needs to be running.
+Make sure you compiled kdelibs with &arts; if you compiled &kde;. In any doubt,
+ask your distribution. You can also check if &arts; is running in
+&kcontrolcenter; -&gt; <guilabel>Sound &amp; Multimedia</guilabel> in the <guilabel>Sound
+System</guilabel> tab. There you must make sure that <guilabel>Enable the sound
+system</guilabel> is checked.</para>
+<para>For &kde; 3.4 users, you must also be sure that the player used to play
+&kde; sounds is the default &kde; sound system player. See in &kcontrolcenter;
+-&gt; <guilabel>Sound &amp; Multimedia</guilabel>
+the <guilabel>System Notifications</guilabel> tab, click on the <guibutton>Player Settings</guibutton>
+button on the bottom right and in the dialog please check <guilabel>Use the
+&kde; sound system</guilabel>.
+</para>
+ </answer>
+</qandaentry>
+<qandaentry>
+<question>
+<para>I do not see some letters on the icons on the special <guimenuitem>Characters</guimenuitem> toolbar. I see rectangles instead for some languages.</para>
+</question>
+<answer>
+<para>&klettres; in Czech and Slovak needs Arial and if you do not have this font installed, please ask your distribution support how to install it.</para>
+<para>If you have &Windows; on your machine, you can use the TTF fonts from
+&Windows; (Arial is in those) via &kcontrolcenter; -&gt; <guilabel>System
+Administration</guilabel> -&gt; <guilabel>Font Installer</guilabel> (click on
+<guibutton>Administrator Mode</guibutton> and add the &Windows; Font
+folder).</para></answer>
+</qandaentry>
+<qandaentry>
+<question>
+<para>The letters on the icons on the special <guimenuitem>Characters</guimenuitem> toolbar are too small for some languages.</para>
+</question>
+<answer>
+<para>&klettres; in Czech and Slovak needs Arial and if you do not have this font installed, please ask your distribution support how to install it.</para>
+<para>If you have &Windows; on your machine, you can use the TTF fonts from
+&Windows; (Arial is in those) via &kcontrolcenter; -&gt; <guilabel>System
+Administration</guilabel> -&gt; <guilabel>Font Installer</guilabel> (click on
+<guilabel>Administrator mode</guilabel> and add the &Windows; Font
+folder).</para></answer>
+</qandaentry>
+<qandaentry>
+<question>
+<para>Why are there only ten languages?</para>
+</question>
+<answer>
+<para>In order for me to add a new language, I need the sounds
+for the alphabet and some basic syllables. Someone speaking natively
+the new language must record these sounds in wav, mp3 or preferably, ogg format. For levels 3
+and 4, the syllables must be chosen by a teacher or someone who knows how children learn: these must be the
+syllables you have to learn just after the alphabet in order to learn
+well the basics of this language. Please send me a mail if you are
+able to do that. See <ulink url="http://edu.kde.org/klettres/add_language.php">the &klettres; website</ulink> for detailed instructions on how to add a new language.</para> </answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+
+<para>
+&klettres;
+</para>
+<para>
+Program copyright 2001-2005 &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;
+</para>
+<para>
+I am very grateful to the following people whose contribution has been greatly valuable:
+<itemizedlist>
+<listitem><para>Czech sounds: Eva Mikulčíková
+<email>evmi@seznam.cz</email></para> </listitem>
+<listitem><para>Dutch sounds: Geert Stams
+<email>geert@pa3csg.myweb.nl</email></para> </listitem>
+<listitem><para>Danish sounds: Erik Kjaer Pedersen
+<email>erik@binghamton.edu</email></para> </listitem>
+<listitem><para>French sounds: Ludovic Grossard
+<email>grossard@kde.org</email></para></listitem>
+<listitem><para>Slovak sounds: Silvia Motyčková and Jozef Říha
+<email>silviamotycka@seznam.cz</email></para></listitem>
+<listitem><para>Italian sounds: Pietro Pasotti
+<email>pietro@itopen.it</email></para></listitem>
+<listitem><para>English sounds: Robert Wadley
+<email>robntina@juno.com</email></para></listitem>
+<listitem><para>Spanish sounds: Ana Belén Caballero and Juan Pedro Paredes
+<email>neneta @iquis.com</email></para></listitem>
+<listitem><para>Romanized Hindi sounds: Vikas Kharat
+<email>kharat@sancharnet.in</email></para></listitem>
+<listitem><para>Luganda sounds: John Magoye and Cormac Lynch
+<email>cormaclynch@eircom.net</email></para></listitem>
+<listitem><para>German sounds: Helmut Kriege
+<email>h.kriege@freenet.de</email></para></listitem>
+<listitem><para>Classroom background picture: Renaud Blanchard
+<email>kisukuma@chez.com</email></para> </listitem>
+<listitem><para>Original icons: &Primoz.Anzur;
+<email>zerokode@yahoo.com</email></para></listitem>
+<listitem><para>Support and coding guidance: &Robert.Gogolok;
+<email>&Robert.Gogolok.mail;</email></para></listitem>
+<listitem><para>SVG icon: Chris Luetchford
+<email>chris@os11.com</email></para></listitem>
+<listitem><para>Code for generating special characters icons: Peter Hedlund
+<email>peter@peterandlinda.com</email></para></listitem>
+<listitem><para>Port to KConfig XT, coding help: &Waldo.Bastian;
+<email>&Waldo.Bastian.mail;</email></para></listitem>
+<listitem><para>Kids and grownup SVG icons, desert theme: &Danny.Allen;
+ <email>dannya40uk@yahoo.co.uk</email></para></listitem>
+<listitem><para>Timer setting widget: Michael Goettsche
+ <email>michael.goettsche@kdemail.net</email></para></listitem>
+</itemizedlist>
+</para>
+
+<para>
+Documentation copyright 2001-2006
+&Anne-Marie.Mahfouf;<email>&Anne-Marie.Mahfouf.mail;</email>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should
+ -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<!-- <appendix id="installation">
+<title>Installation</title>
+
+&install.intro.documentation;
+
+&install.compile.documentation;
+
+</appendix>
+-->
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
diff --git a/doc/klettres/klettres1.png b/doc/klettres/klettres1.png
new file mode 100644
index 00000000..76d97b6f
--- /dev/null
+++ b/doc/klettres/klettres1.png
Binary files differ
diff --git a/doc/klettres/klettres2.png b/doc/klettres/klettres2.png
new file mode 100644
index 00000000..714e156e
--- /dev/null
+++ b/doc/klettres/klettres2.png
Binary files differ
diff --git a/doc/klettres/klettres3.png b/doc/klettres/klettres3.png
new file mode 100644
index 00000000..b7338077
--- /dev/null
+++ b/doc/klettres/klettres3.png
Binary files differ
diff --git a/doc/klettres/klettres4.png b/doc/klettres/klettres4.png
new file mode 100644
index 00000000..47c251ae
--- /dev/null
+++ b/doc/klettres/klettres4.png
Binary files differ
diff --git a/doc/klettres/klettres5.png b/doc/klettres/klettres5.png
new file mode 100644
index 00000000..f9d2ffc6
--- /dev/null
+++ b/doc/klettres/klettres5.png
Binary files differ
diff --git a/doc/klettres/klettres6.png b/doc/klettres/klettres6.png
new file mode 100644
index 00000000..a8f73009
--- /dev/null
+++ b/doc/klettres/klettres6.png
Binary files differ
diff --git a/doc/kmplot/Makefile.am b/doc/kmplot/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/kmplot/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/kmplot/commands.docbook b/doc/kmplot/commands.docbook
new file mode 100644
index 00000000..a0b2d2b6
--- /dev/null
+++ b/doc/kmplot/commands.docbook
@@ -0,0 +1,471 @@
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="a-file-menu">
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>New</guimenuitem>
+</menuchoice>
+</term>
+<listitem>
+<para><action>Starts a new Plot by clearing the coordinate system
+and resetting the function parser.</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><shortcut>
+<keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Open...</guimenuitem></menuchoice></term>
+<listitem><para><action>Opens an existing document.</action>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Open Recent</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Displays a list of recently opened files.</action>
+Selecting one from this list plots the functions in the file.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut><keycombo
+ action="simul">&Ctrl;<keycap>S</keycap></keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Save</guimenuitem></menuchoice></term>
+<listitem><para><action>Saves the document.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Save As...</guimenuitem></menuchoice></term>
+<listitem><para><action>Saves the document under another
+ name.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Print...</guimenuitem>
+</menuchoice>
+</term>
+<listitem>
+<para><action>Sends the plot to a printer or file.</action></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Export...</guimenuitem></menuchoice></term>
+<listitem><para><action>Export values to a textfile.
+</action>Every value in the parameter list will be
+written to one line in the file.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut><keycombo action="simul">
+&Ctrl;<keycap>Q</keycap>
+</keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem></menuchoice></term>
+<listitem><para><action>Exits</action> &kmplot;.</para></listitem>
+</varlistentry>
+</variablelist>
+</sect1>
+
+<sect1 id="a-view-menu">
+<title>The <guimenu>Edit</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Colors...</guimenuitem>
+</menuchoice></term>
+<listitem><para>
+Displays the <guilabel>Colors</guilabel> Settings dialog box. See
+<xref linkend="colors-config"/>.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Coordinate System...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Displays the <guilabel>Coordinate System</guilabel> dialog box. See <xref linkend="coords-config"/>.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Scaling...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Displays the <guilabel>Scale</guilabel> Settings dialog box. See
+<xref linkend="scaling-config"/>.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Fonts...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Displays the <guilabel>Fonts</guilabel> Settings dialog box. See
+<xref linkend="font-config"/>.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Coordinate System I</guimenuitem>
+</menuchoice></term>
+<listitem><para>Show both positive and negative x- and y-values on the grid.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Coordinate System II</guimenuitem>
+</menuchoice></term>
+<listitem><para>Show positive and negative y-values, but positive x-values only
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Coordinate System III</guimenuitem>
+</menuchoice></term>
+<listitem><para>Show only positive x- and y-values.
+</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="a-functions-menu">
+<title>The <guimenu>Plot</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>Plot</guimenu>
+<guimenuitem>New Function Plot...</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>Opens the dialog for creating a new function plot. See <xref
+linkend="using-kmplot"/>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>Plot</guimenu>
+<guimenuitem>New Parametric Plot...</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>Opens the dialog for creating a new parametric plot. See <xref
+linkend="using-kmplot"/>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>Plot</guimenu>
+<guimenuitem>New Polar Plot...</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>Opens the dialog for creating a new polar plot. See <xref
+linkend="using-kmplot"/>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>Plot</guimenu>
+<guimenuitem>Edit Plots...</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>Displays the functions dialog. There you can add, edit and remove functions. See <xref
+linkend="using-kmplot"/>.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect1>
+
+<sect1 id="a-zoom-menu">
+<title>The <guimenu>Zoom</guimenu> Menu</title>
+<para>The first five items in the menu change zoom-mode.</para>
+
+<variablelist>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>0</keycap></keycombo>
+</shortcut>
+<guimenu>Zoom</guimenu>
+<guimenuitem>No Zoom</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>Disable the zoom-mode.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>1</keycap></keycombo>
+</shortcut>
+<guimenu>Zoom</guimenu>
+<guimenuitem>Zoom Rectangular</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>Let the user draw a rectangle. The minimum and maximum values will be set to the coordinates of the rectangle.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>2</keycap></keycombo>
+</shortcut>
+<guimenu>Zoom</guimenu>
+<guimenuitem>Zoom In</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>The minimum and maximum values will come closer to each other and the selected point in the graph will be centered.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>3</keycap></keycombo>
+</shortcut>
+<guimenu>Zoom</guimenu>
+<guimenuitem>Zoom Out</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>The minimum and maximum values will be more separated from each other and the selected point in the graph will be centered.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>4</keycap></keycombo>
+</shortcut>
+<guimenu>Zoom</guimenu>
+<guimenuitem>Center Point</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>The selected point in the graph will be centered.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>Zoom</guimenu>
+<guimenuitem>Fit Widget to Trigonometric Functions</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para>The scale will be adapted to trigonometric functions. This works both for radians and degrees.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect1>
+
+<sect1 id="a-tools-menu">
+<title>The <guimenu>Tools</guimenu> Menu</title>
+
+<para>This menu contains some tools for the functions that can be useful:</para>
+
+<variablelist>
+
+<varlistentry>
+<term><menuchoice><guimenu>Tools</guimenu>
+<guimenuitem>Get y-Value...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Let the user get the y-value from a specific x-value. At the moment, only plot functions are supported. Type a value or expression in the text box under "X:". In the list below all the available functions are shown. Press the "Calculate" button to find the function's y-value. The result will be shown in the y-value box.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Tools</guimenu>
+<guimenuitem>Search for Minimum Value...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Find the minimum value of the graph in a specified range.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Tools</guimenu>
+<guimenuitem>Search for Maximum Value...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Find the maximum value of the graph in a specified range.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Tools</guimenu>
+<guimenuitem>Calculate Integral</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Select a graph and the x-values in the new dialog that appears.
+Calulates the integral and draws the area between the graph and the x-axis in the
+range of the selected x-values in the color of the graph.</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="a-settings-menu">
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Show/Hide Toolbar</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Toggle on and off the display of the toolbar.</action>
+The default is on.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Show/Hide Statusbar</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Toggle on and off the display of the status bar at the bottom of
+the &kmplot; main window.</action>
+The default is on.</para>
+</listitem>
+</varlistentry>
+
+<!-- Is the settings menu the right place for Full Screen Mode, same for Show Sliders ?
+perhaps better a new menu View with Full Screen, Sliders, and Coordinate System I to III
+from the menu Edit, usability bugreport against kmplot?
+-->
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo>&Ctrl;&Shift;<keycap>F</keycap></keycombo>
+</shortcut>
+<guimenu>Settings</guimenu>
+<guimenuitem>Full Screen Mode</guimenuitem>
+</menuchoice></term>
+<listitem><para>With this action you toggle the full screen mode.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Show Sliders</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Toogles</action> the display of sliders 1 to 4 on and off.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Personalize the keybindings</action> for &kmplot;.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Personalize the toolbars</action> for &kmplot;.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Configure &kmplot;...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para><action>Customize</action> &kmplot;. The options available to
+you are described in <xref linkend="configuration"/>.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+</sect1>
+
+<sect1 id="a-help-menu">
+<title>The <guimenu>Help</guimenu> Menu</title>
+
+<para>&kmplot; has a standard &kde; <guimenu>Help</guimenu> as described
+below, with one addition:</para>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice><guimenu>Help</guimenu>
+<guimenuitem>Predefined Math Functions...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Opens a window with a list of the predefined function names and constants
+that &kmplot; knows.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+<para>The standard &kde; <guimenu>Help</guimenu> entries are:</para>
+
+&help.menu.documentation;
+
+</sect1>
+
+
+</chapter>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
diff --git a/doc/kmplot/configuration.docbook b/doc/kmplot/configuration.docbook
new file mode 100644
index 00000000..17903299
--- /dev/null
+++ b/doc/kmplot/configuration.docbook
@@ -0,0 +1,237 @@
+<chapter id="configuration">
+<title>Configuring &kmplot;</title>
+<para>To access the &kmplot; configuration
+dialog, select <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
+&kmplot;...</guimenuitem></menuchoice>. A number of settings (<guimenuitem>Colors...</guimenuitem>,
+<guimenuitem>Coordinate System...</guimenuitem>, <guimenuitem>Scaling...</guimenuitem> and
+<guimenuitem>Fonts...</guimenuitem>) can only be changed
+from the <guimenu>Edit</guimenu> menu. </para>
+
+<sect1 id="general-config">
+<title><guilabel>General</guilabel> Configuration</title>
+<para>Here you can set global settings which automatic will be saved when you exit &kmplot;. In the first page you can set calculation-precision, angle-mode (radians and degrees), background color and zoom in and zoom out factors. </para>
+
+<screenshot>
+<screeninfo>screenshot of the &kmplot; settings dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settingsdlg.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>screenshot of the &kmplot; settings dialog</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>The second page let you define you own constants. &kmplot; saves the constants in the same file as &kcalc; does. That means you can create a constant in &kmplot;, close the program and load it in &kcalc; and vice versa. &kmplot; only supports constant names that consist of one capital character and if you in &kcalc; define a constant name that is not one character, the name will be truncated. E.g, if you already have the constants "apple" and "bananas" in &kcalc;, they will be renamed to "A" and "B" in &kmplot;.</para>
+
+</sect1>
+
+
+<sect1 id="colors-config">
+<title><guilabel>Colors</guilabel> Configuration</title>
+<para>In the <guilabel>Coords</guilabel> tab of the <guilabel>Colors</guilabel>
+configuration dialog, you can change the colors of the axes and grid of the
+main &kmplot; area.</para>
+
+<screenshot>
+<screeninfo>screenshot of the colors configuration dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings-colors.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>screenshot of the colors configuration dialog</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>In the <guilabel>Default Function Colors</guilabel> tab, you can change the colors used
+for the graphs of the ten functions allowed in &kmplot;.</para>
+</sect1>
+
+<sect1 id="coords-config">
+<title><guimenuitem>Coordinate System</guimenuitem> Configuration</title>
+
+<sect2 id="axes-config">
+<title>The <guilabel>Axes</guilabel> Configuration</title>
+<para>
+<variablelist>
+
+<varlistentry>
+<term><guilabel>X-Axis</guilabel></term>
+<listitem>
+<para>Sets the range for the x-axis scale. You can choose one of the
+predefined ranges, or select <guilabel>Custom</guilabel> to make your
+own. Note that in the <guilabel>Custom</guilabel> boxes, you can use the
+predefined functions and constants (see <xref linkend="func-predefined"/>) as
+the extremes of the range (&eg;, set <guilabel>Min:</guilabel> to
+<userinput>2*pi</userinput>). You can even use functions you have defined to
+set the extremes of the axis range. For example, if you have defined a function
+<userinput>f(x)=x^2</userinput>, you could set <guilabel>Min:</guilabel> to
+<userinput>f(3)</userinput>, which would make the lower end of the range equal
+to 9.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Y-Axis</guilabel></term>
+<listitem>
+<para>Sets the range for the y-axis. See <quote>X-Axis</quote> above.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Axis-line width:</guilabel></term>
+<listitem>
+<para>Sets the width of the lines representing the axes.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Tic width:</guilabel></term>
+<listitem>
+<para>Sets the width of the lines representing tics on the axes.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Tic length:</guilabel></term>
+<listitem>
+<para>Sets the length of the lines representing tics on the axes.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Show labels</guilabel></term>
+<listitem>
+<para>If checked, the names (x, y) of the axes are shown on the plot and the axes' tics are labeled.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Show extra frame</guilabel></term>
+<listitem>
+<para>If checked, the plot area is framed by an extra line.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Show axes</guilabel></term>
+<listitem>
+<para>If checked, the axes are visible.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Show arrows</guilabel></term>
+<listitem>
+<para>If checked, the axes are displayed with arrows at their ends.</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</para>
+
+</sect2>
+
+<sect2 id="grid-config">
+<title>The <guilabel>Grid</guilabel> Configuration</title>
+<para>You can set the <guilabel>Grid Style</guilabel> to one of four options:
+<variablelist>
+
+<varlistentry>
+<term><guilabel>None</guilabel></term>
+<listitem>
+<para>No gridlines are drawn on the plot area</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Lines</guilabel></term>
+<listitem>
+<para>Straight lines form a grid of squares on the plot area.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Crosses</guilabel></term>
+<listitem>
+<para>Crosses are drawn to indicate points where x and y have integer values
+(&eg;, (1,1), (4,2) &etc;).</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Polar</guilabel></term>
+<listitem>
+<para>Lines of constant radius and of constant angle are drawn on the plot
+area.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+<para>The <guilabel>Line width</guilabel> option is used to set the width of
+the lines of the grid.</para>
+</sect2>
+
+</sect1>
+
+<sect1 id="scaling-config">
+<title><guilabel>Scaling</guilabel> Configuration</title>
+
+<screenshot>
+<screeninfo>screenshot of the scaling configuration dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings-scaling.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>screenshot of the scaling configuration dialog</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>For each axis, you can set the <guilabel>Scaling:</guilabel> and
+<guilabel>Printing:</guilabel> of one tic. The <guilabel>Scaling:</guilabel>
+option selects how many units apart the axis tics will be (and therefore, how
+far apart grid lines will be drawn), and the <guilabel>Printing:</guilabel>
+option selects the length of one tic when displayed on the screen or
+printed. In this way, these options can be used to change the size of the graph
+on screen or on a page: For example, doubling the <guilabel>Printing:</guilabel>
+setting whilst keeping the <guilabel>Scaling:</guilabel> setting the same will
+result in the graph doubling in in height or width.</para>
+</sect1>
+
+<sect1 id="font-config">
+<title><guilabel>Fonts</guilabel> Configuration</title>
+
+<screenshot>
+<screeninfo>screenshot of the fonts configuration dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="settings-fonts.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>screenshot of the fonts configuration dialog</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para><guilabel>Header table:</guilabel> sets the font for the information table
+shown in &kmplot; printouts, and <guilabel>Axis font:</guilabel> and <guilabel>Axis font size:</guilabel>
+sets the font and its size used for all labels on the axes in the plot area.</para>
+</sect1>
+
+</chapter>
+
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
diff --git a/doc/kmplot/credits.docbook b/doc/kmplot/credits.docbook
new file mode 100644
index 00000000..29703df0
--- /dev/null
+++ b/doc/kmplot/credits.docbook
@@ -0,0 +1,47 @@
+<chapter id="credits">
+<title>Credits and License</title>
+
+<para>
+&kmplot;
+</para>
+
+<para>
+Program copyright 2000-2002 Klaus-Dieter M&ouml;ller &Klaus-Dieter.Moeller.mail;
+</para>
+
+<itemizedlist>
+<title>Contributors</title>
+ <listitem>
+ <para><acronym>CVS</acronym>: &Robert.Gogolok; <email>mail@robert-gogoloh.de</email></para>
+ </listitem>
+ <listitem>
+ <para>Porting &GUI; to &kde; 3 and Translating: &Matthias.Messmer; &Matthias.Messmer.mail;</para>
+ </listitem>
+ <listitem>
+ <para>Various improvements: Fredrik Edemar <email>f_edemar@linux.se</email></para>
+ </listitem>
+</itemizedlist>
+
+<para>Documentation copyright 2000--2002 by Klaus-Dieter M&ouml;ller &Klaus-Dieter.Moeller.mail;.</para>
+<para>Documentation extended and updated for &kde; 3.2 by &Philip.Rodrigues; &Philip.Rodrigues.mail;.</para>
+<para>Documentation extended and updated for &kde; 3.3 by &Philip.Rodrigues; &Philip.Rodrigues.mail; and Fredrik Edemar <email>f_edemar@linux.se</email>.</para>
+<para>Documentation extended and updated for &kde; 3.4 by Fredrik Edemar <email>f_edemar@linux.se</email>.</para>
+
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL;
+&underGPL;
+
+</chapter>
+
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
+
diff --git a/doc/kmplot/dcop.docbook b/doc/kmplot/dcop.docbook
new file mode 100644
index 00000000..3907b650
--- /dev/null
+++ b/doc/kmplot/dcop.docbook
@@ -0,0 +1,612 @@
+<chapter id="dcop">
+ <title>Scripting &kmplot;</title>
+
+ <para>A new feature in &kde; 3.4 is that you can write scrips for &kmplot; with &DCOP;. For example, if you want to define a new function <userinput>f(x)=2sin x+3cos x</userinput>, set its line width to 20 and then draw it, you type in a console:</para>
+ <para><command>dcop kmplot-PID Parser addFunction "f(x)=2sin x+3cos x"</command>
+ As a result, the new function's id number will be returned, or -1 if the function could not be defined.</para>
+ <para><command>>dcop kmplot-PID Parser setFunctionFLineWidth 20 ID</command>
+ This command sets the function with the id number ID the line width to 20.</para>
+ <para><command>>dcop kmplot-PID View drawPlot</command>
+ This command repaints the window so that the function get visible.</para>
+<para>
+ A list over the available functions:
+ <variablelist>
+ <varlistentry>
+ <term>
+ KmPlotShell fileOpen &amp;url
+ </term>
+ <listitem>
+ <para>Load the file <parameter>url</parameter>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg isModified
+ </term>
+ <listitem>
+ <para>Returns true if any changes are done.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg editColors
+ </term>
+ <listitem>
+ <para>Opens the color edit dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg editAxes
+ </term>
+ <listitem>
+ <para>Opens the coordinate system edit dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg editScaling
+ </term>
+ <listitem>
+ <para>Opens the scaling edit dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg editFonts
+ </term>
+ <listitem>
+ <para>Opens the fonts edit dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg editConstants
+ </term>
+ <listitem>
+ <para>Opens the constants edit dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg newFunction
+ </term>
+ <listitem>
+ <para>Opens the new function plot dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg newParametric
+ </term>
+ <listitem>
+ <para>Opens the new parametric plot dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg newPolar
+ </term>
+ <listitem>
+ <para>Opens the new polar plot dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg toggleShowSlider0
+ </term>
+ <listitem>
+ <para>Shows/hides parameter slider window number 1.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg toggleShowSlider1
+ </term>
+ <listitem>
+ <para>Shows/hides parameter slider window number 2.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg toggleShowSlider2
+ </term>
+ <listitem>
+ <para>Shows/hides parameter slider window number 3.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg toggleShowSlider3
+ </term>
+ <listitem>
+ <para>Shows/hides parameter slider window number 4.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotSave
+ </term>
+ <listitem>
+ <para>Saves the functions (opens the save dialog if it is a new file).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotSaveas
+ </term>
+ <listitem>
+ <para>The same as choosing <menuchoice><guimenu>File</guimenu><guimenuitem>Save As</guimenuitem></menuchoice> in the menu.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotEditPlots
+ </term>
+ <listitem>
+ <para>Opens the edit plots dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotPrint
+ </term>
+ <listitem>
+ <para>Opens the print dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotExport
+ </term>
+ <listitem>
+ <para>Opens the export dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotSettings
+ </term>
+ <listitem>
+ <para>Opens the settings dialog.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotNames
+ </term>
+ <listitem>
+ <para>Shows a list of predefined math functions.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotCoord1
+ </term>
+ <listitem>
+ <para>Coordinate System I.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotCoord2
+ </term>
+ <listitem>
+ <para>Coordinate System II.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg slotCoord3
+ </term>
+ <listitem>
+ <para>Coordinate System III.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg getYValue
+ </term>
+ <listitem>
+ <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Get y-Value...</guimenuitem></menuchoice> in the menu.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg findMinimumValue
+ </term>
+ <listitem>
+ <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Search for Minimum Value...</guimenuitem></menuchoice> in the menu.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg findMaximumValue
+ </term>
+ <listitem>
+ <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Search for Maximum Value...</guimenuitem></menuchoice> in the menu.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ MainDlg graphArea
+ </term>
+ <listitem>
+ <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Calculate Integral</guimenuitem></menuchoice> in the menu.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser addFunction f_str
+ </term>
+ <listitem>
+ <para>Adds a new function with the expression <parameter>f_str</parameter>. If the expression does not contain a function name, it will be auto-generated. The id number of the new function is returned, or -1 if the function couln't be defined.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser delfkt id
+ </term>
+ <listitem>
+ <para>Removes the function with the id number <parameter>id</parameter>. If the function could not be deleted, false is returned, otherwise true.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionExpression f_str id
+ </term>
+ <listitem>
+ <para>Sets the expression for the function with the id number <parameter>id</parameter> to <parameter>f_str</parameter>. Returns true if it succeed, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser countFunctions
+ </term>
+ <listitem>
+ <para>Returns the number of functions (parametric functions are calculated as two).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser listFunctionNames
+ </term>
+ <listitem>
+ <para>Returns a list with all functions.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser fnameToId f_str
+ </term>
+ <listitem>
+ <para>Returns the id number of <parameter>f_str</parameter> or -1 if the function name <parameter>f_str</parameter> was not found.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser id x
+ </term>
+ <listitem>
+ <para>Calculates the value <parameter>x</parameter> for the function with the ID <parameter>id</parameter> or returns 0.0 if <parameter>id</parameter> does not exist.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionFVisible id
+ </term>
+ <listitem>
+ <para>Returns true if the function with the ID <parameter>id</parameter> is visible, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionF1Visible id
+ </term>
+ <listitem>
+ <para>Returns true if the first derivative of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionF2Visible id
+ </term>
+ <listitem>
+ <para>Returns true if the second derivative of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionIntVisible id
+ </term>
+ <listitem>
+ <para>Returns true if the integral of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionFVisible visible id
+ </term>
+ <listitem>
+ <para>Shows the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionF1Visible visible id
+ </term>
+ <listitem>
+ <para>Shows the first derivative of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionF2Visible visible id
+ </term>
+ <listitem>
+ <para>Shows the second derivative of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionIntVisible visible id
+ </term>
+ <listitem>
+ <para>Shows the integral of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionStr id
+ </term>
+ <listitem>
+ <para>Returns the function expression of the function with the ID <parameter>id</parameter>. If the function not exists, an empty string is returned instead.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionFColor id
+ </term>
+ <listitem>
+ <para>Returns the color of the function with the ID <parameter>id</parameter>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionF1Color id
+ </term>
+ <listitem>
+ <para>Returns the color of the first derivative of the function with the ID <parameter>id</parameter>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionF2Color id
+ </term>
+ <listitem>
+ <para>Returns the color of the second derivative of the function with the ID <parameter>id</parameter>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionIntColor id
+ </term>
+ <listitem>
+ <para>Returns the color of the integral of the function with the ID <parameter>id</parameter>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionFColor color id
+ </term>
+ <listitem>
+ <para>Sets the color of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionF1Color color id
+ </term>
+ <listitem>
+ <para>Sets the color of the first derivative of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionF2Color color id
+ </term>
+ <listitem>
+ <para>Sets the color of the second derivative of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionIntColor color id
+ </term>
+ <listitem>
+ <para>Sets the color of the integral of the function with the ID <parameter>id</parameter> to <parameter>color</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionFLineWidth id
+ </term>
+ <listitem>
+ <para>Returns the line width of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionF1LineWidth id
+ </term>
+ <listitem>
+ <para>Returns the line width of the first derivative of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionF2LineWidth id
+ </term>
+ <listitem>
+ <para>Returns the line width of the first derivative of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionIntLineWidth id
+ </term>
+ <listitem>
+ <para>Returns the line width of the integral of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionFLineWidth linewidth id
+ </term>
+ <listitem>
+ <para>Sets the line width of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionF1LineWidth linewidth id
+ </term>
+ <listitem>
+ <para>Sets the line width of the first derivative of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionF2LineWidth linewidth id
+ </term>
+ <listitem>
+ <para>Sets the line width of the second derivative of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionIntLineWidth linewidth id
+ </term>
+ <listitem>
+ <para>Sets the line width of the integral of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionParameterList id
+ </term>
+ <listitem>
+ <para>Returns a list with all the parameter values for the function with the ID <parameter>id</parameter>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionAddParameter new_parameter id
+ </term>
+ <listitem>
+ <para>Adds the parameter value <parameter>new_parameter</parameter> to the function with the ID <parameter>id</parameter>. True is returned if the operation succeed, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionRemoveParameter remove_parameter id
+ </term>
+ <listitem>
+ <para>Removes the parameter value <parameter>remove_parameter</parameter> from the function with the ID <parameter>id</parameter>. True is returned if the operation succeed, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionMinValue id
+ </term>
+ <listitem>
+ <para>Returns the minimum plot range value of the function with the ID <parameter>id</parameter>. If the function not exists or if the minimum value is not definied, an empty string is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionMaxValue id
+ </term>
+ <listitem>
+ <para>Returns the maximum plot range value of the function with the ID <parameter>id</parameter>. If the function not exists or if the maximum value is not definied, an empty string is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionMinValue min id
+ </term>
+ <listitem>
+ <para>Sets the minimum plot range value of the function with the ID <parameter>id</parameter> to <parameter>min</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionMaxValue max id
+ </term>
+ <listitem>
+ <para>Sets the maximum plot range value of the function with the ID <parameter>id</parameter> to <parameter>max</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ Parser functionStartXValue id
+ </term>
+ <listitem>
+ <para>Returns the initial x point for the integral of the function with the ID <parameter>id</parameter>. If the function not exists or if the x-point-expression is not definied, an empty string is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser functionStartYValue id
+ </term>
+ <listitem>
+ <para>Returns the initial y point for the integral of the function with the ID <parameter>id</parameter>. If the function not exists or if the y-point-expression is not definied, an empty string is returned.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionStartXValue min id
+ </term>
+ <listitem>
+ <para>Sets the initial x point for the integral of the function with the ID <parameter>id</parameter> to <parameter>x</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ Parser setFunctionStartYValue max id
+ </term>
+ <listitem>
+ <para>Sets the initial y point for the integral of the function with the ID <parameter>id</parameter> to <parameter>y</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ View stopDrawing
+ </term>
+ <listitem>
+ <para>If &kmplot; currently is drawing a function, the procedure will stop.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ View drawPlot
+ </term>
+ <listitem>
+ <para>Redraws all functions.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</para>
+</chapter>
+
+<!--
+ Local Variables:
+ mode: sgml
+ sgml-minimize-attributes:nil
+ sgml-general-insert-case:lower
+ sgml-indent-step:0
+ sgml-indent-data:nil
+ sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+ End:
+ --> \ No newline at end of file
diff --git a/doc/kmplot/developer.docbook b/doc/kmplot/developer.docbook
new file mode 100644
index 00000000..64c4ee90
--- /dev/null
+++ b/doc/kmplot/developer.docbook
@@ -0,0 +1,18 @@
+<chapter id="developers">
+<title>Developer's Guide to &kmplot;</title>
+
+<para>If you want to contribute to &kmplot; feel free to send a mail to
+&Klaus-Dieter.Moeller.mail; or <email>f_edemar@linux.se</email> </para>
+</chapter>
+
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
+
diff --git a/doc/kmplot/edu-logo.png b/doc/kmplot/edu-logo.png
new file mode 100644
index 00000000..d1234fd8
--- /dev/null
+++ b/doc/kmplot/edu-logo.png
Binary files differ
diff --git a/doc/kmplot/firststeps.docbook b/doc/kmplot/firststeps.docbook
new file mode 100644
index 00000000..5595ecbc
--- /dev/null
+++ b/doc/kmplot/firststeps.docbook
@@ -0,0 +1,70 @@
+<chapter id="first-steps">
+<title>First Steps With &kmplot;</title>
+
+<sect1 id="simple-function-plot">
+<title>Simple Function Plot</title>
+
+<para>
+In the main toolbar there is a simple text box in which you can enter
+a function expression. Simply enter:
+<screen><userinput>x^2</userinput></screen> and press &Enter;. This
+will draw the plot of y=x^2 in the coordinate system. Enter another
+expression in the text box like
+<screen><userinput>5*sin(x)</userinput></screen> and another plot will
+be added.
+</para>
+
+<para>Click on one of the lines you have just plotted. Now the cross
+hair gets the color of the plot and is attached to the plot. You can
+use the mouse to move the cross hair along the plot. In the status
+bar at the bottom of the window the coordinates of the current
+position is displayed. Note that if the plot touches the x-axis the
+root will be displayed in the status bar, too.</para>
+
+<para>Click the mouse again and the cross hair will be detached from
+the plot.</para>
+</sect1>
+
+<sect1 id="edit-properties">
+<title>Edit Properties</title>
+
+<para>Let us make some changes to the function and change the color of
+the plot.</para>
+
+<para>You can edit all functions with the
+<menuchoice><guimenu>Plot</guimenu><guimenuitem>Edit
+Plots...</guimenuitem> </menuchoice> menu entry. A dialog appears
+which lists all the functions that you have plotted. Notice that
+&kmplot; has automatically found a unique function name for your
+expressions and completed the expression to a function
+equation.</para>
+
+<para>Select <guilabel>f(x)=x^2</guilabel> in the list. A double click
+or pressing the <guibutton>Edit</guibutton> button will show you a
+dialog window. Here you have access to a lot of options. Let us rename
+the function and move the plot 5 units down. Change the function
+equation to <screen><userinput>parabola(x)=x^2-5</userinput></screen>
+</para>
+
+<para>To select another color for the plot click into the
+<guilabel>Color:</guilabel> box. Finally press
+<guibutton>OK</guibutton> and your changes take effect in the
+coordinate system.</para>
+
+<note><para>All changes can be undone until you press
+<guibutton>OK</guibutton> in the <guilabel>Edit Plots</guilabel>
+dialog.</para>
+</note>
+
+</sect1>
+</chapter>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
diff --git a/doc/kmplot/index.docbook b/doc/kmplot/index.docbook
new file mode 100644
index 00000000..d8fb0fed
--- /dev/null
+++ b/doc/kmplot/index.docbook
@@ -0,0 +1,98 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
+"dtd/kdex.dtd" [
+ <!ENTITY kappname "&kmplot;"><!-- replace kmplot here -->
+ <!ENTITY package "kdeedu">
+ <!ENTITY introduction SYSTEM "introduction.docbook">
+ <!ENTITY firststeps SYSTEM "firststeps.docbook">
+ <!ENTITY using SYSTEM "using.docbook">
+ <!ENTITY commands SYSTEM "commands.docbook">
+ <!ENTITY developer SYSTEM "developer.docbook">
+ <!ENTITY credits SYSTEM "credits.docbook">
+ <!ENTITY install SYSTEM "install.docbook">
+ <!ENTITY reference SYSTEM "reference.docbook">
+ <!ENTITY configuration SYSTEM "configuration.docbook">
+ <!ENTITY dcop SYSTEM "dcop.docbook">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kmplot; Handbook</title>
+<authorgroup>
+<author>
+<firstname>Klaus-Dieter</firstname>
+<surname>M&ouml;ller</surname>
+<affiliation>
+<address>&Klaus-Dieter.Moeller.mail;</address>
+</affiliation>
+</author>
+<author>
+&Philip.Rodrigues; &Philip.Rodrigues.mail;
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2000</year><year>2001</year><year>2002</year>
+<holder>Klaus-Dieter M&ouml;ller</holder>
+</copyright>
+
+<copyright>
+<year>2003</year>
+<holder>&Philip.Rodrigues; &Philip.Rodrigues.mail;</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2006-02-24</date>
+<releaseinfo>1.2.0</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>&kmplot; is a mathematical function plotter for the &kde;
+Desktop.</para>
+<para> <inlinemediaobject><imageobject><imagedata
+fileref="edu-logo.png"
+format="PNG"/></imageobject></inlinemediaobject> &kmplot; is part of
+the &kde;-EDU Project: <ulink
+url="http://edu.kde.org/">http://edu.kde.org/</ulink></para></abstract>
+
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>KMPlot</keyword>
+<keyword>EDU</keyword>
+<keyword>edutainment</keyword>
+<keyword>plotting</keyword>
+<keyword>math</keyword>
+</keywordset>
+
+</bookinfo>
+
+&introduction;
+&firststeps;
+&using;
+&configuration;
+&reference;
+&commands;
+&dcop;
+&developer;
+&credits;
+&install;
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+--> \ No newline at end of file
diff --git a/doc/kmplot/install.docbook b/doc/kmplot/install.docbook
new file mode 100644
index 00000000..cea50bd0
--- /dev/null
+++ b/doc/kmplot/install.docbook
@@ -0,0 +1,34 @@
+<appendix id="installation">
+<title>Installation</title>
+
+&install.intro.documentation;
+
+<mediaobject>
+<imageobject>
+<imagedata fileref="edu-logo.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+
+<para>&kmplot; is part of the &kde; EDU Project: <ulink
+url="http://edu.kde.org/">http://edu.kde.org/</ulink></para>
+
+<para>&kmplot; has its own homepage on <ulink
+url="http://kmplot.sourceforge.net">SourceForge</ulink>. You can also
+find archives of older versions of &kmplot; there, for example, for
+&kde; 2.x</para>
+
+&install.compile.documentation;
+
+</appendix>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
+
+
diff --git a/doc/kmplot/introduction.docbook b/doc/kmplot/introduction.docbook
new file mode 100644
index 00000000..4aa46d04
--- /dev/null
+++ b/doc/kmplot/introduction.docbook
@@ -0,0 +1,56 @@
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>&kmplot; is a mathematical function plotter for the &kde;
+Desktop. It has a powerful built-in parser. You can plot different
+functions simultaneously and combine them to build new
+functions.</para>
+
+<screenshot>
+<screeninfo>Examples</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="threeplots.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Examples</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>&kmplot; supports parametric functions and functions in
+polar coordinates. Several grid modes are supported. Plots may be
+printed with high precision in the correct scale.</para>
+
+<para>&kmplot; also provides some numerical and visual features like:</para>
+<itemizedlist>
+<listitem><para>Filling and calculating
+the area between the plot and the first axis</para>
+</listitem>
+<listitem><para>Finding maximum and
+minimum values</para>
+</listitem>
+<listitem><para>Changing function parameters dynamically</para>
+</listitem>
+<listitem><para>Plotting
+derivatives and integral functions.</para>
+</listitem>
+</itemizedlist>
+
+<para>These features help in learning the
+relationship between mathematical functions and their graphical
+representation in a coordinate system.</para>
+
+</chapter>
+
+
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
diff --git a/doc/kmplot/kfkt.png b/doc/kmplot/kfkt.png
new file mode 100644
index 00000000..590fe445
--- /dev/null
+++ b/doc/kmplot/kfkt.png
Binary files differ
diff --git a/doc/kmplot/ksys1.png b/doc/kmplot/ksys1.png
new file mode 100644
index 00000000..b0dc2488
--- /dev/null
+++ b/doc/kmplot/ksys1.png
Binary files differ
diff --git a/doc/kmplot/ksys2.png b/doc/kmplot/ksys2.png
new file mode 100644
index 00000000..e8c10a68
--- /dev/null
+++ b/doc/kmplot/ksys2.png
Binary files differ
diff --git a/doc/kmplot/ksys3.png b/doc/kmplot/ksys3.png
new file mode 100644
index 00000000..0c55562d
--- /dev/null
+++ b/doc/kmplot/ksys3.png
Binary files differ
diff --git a/doc/kmplot/main.png b/doc/kmplot/main.png
new file mode 100644
index 00000000..cdf9cf45
--- /dev/null
+++ b/doc/kmplot/main.png
Binary files differ
diff --git a/doc/kmplot/man-kmplot.1.docbook b/doc/kmplot/man-kmplot.1.docbook
new file mode 100644
index 00000000..27b053fc
--- /dev/null
+++ b/doc/kmplot/man-kmplot.1.docbook
@@ -0,0 +1,66 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>&kde; User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>kmplot</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>kmplot</command></refname>
+<refpurpose>mathematical function plotter</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>kmplot</command>
+<group choice="opt"><option><replaceable>file</replaceable></option></group>
+<arg choice="opt">&kde; Generic Options</arg>
+<arg choice="opt">&Qt; Generic Options</arg>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kmplot; is a mathematical function plotter for &kde;. It has a powerful built-in parser. You can plot different functions simultaneously and combine them to build new functions.</para><para>&kmplot; supports parametric functions and functions in polar coordinates. Several grid modes are supported. Plots may be printed with high precision in the correct scale.</para><para>&kmplot; also provides some numerical and visual features, like filling and calculating the area between the plot and the first axis, finding maximum and minimum values, changing function parameters dynamically and plotting derivatives and integral functions.</para><para>&kmplot; is part of the &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option><replaceable>file</replaceable></option></term>
+<listitem><para>File to open</para></listitem></varlistentry>
+</variablelist>
+</refsect1>
+<refsect1>
+<title>See Also</title>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kmplot">help:/kmplot</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kmplot</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink url="http://edu.kde.org/kmplot/">the &kde; edutainment website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para>&kmplot; was written by <personname><firstname>Klaus-Dieter</firstname><surname>M&ouml;ller</surname></personname> <email>kdmoeller@foni.net</email>, &Matthias.Messmer; &Matthias.Messmer.mail; and <personname><firstname>Fredrik</firstname><surname>Edemar</surname></personname> <email>f_edemar@linux.se</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kmplot/reference.docbook b/doc/kmplot/reference.docbook
new file mode 100644
index 00000000..96f19adc
--- /dev/null
+++ b/doc/kmplot/reference.docbook
@@ -0,0 +1,339 @@
+<chapter id="reference">
+<title>&kmplot; Reference</title>
+
+<!--
+<mediaobject>
+<imageobject>
+<imagedata fileref="kfkt.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+
+<para>This menu entry or toolbar button opens the Functions Editor. Here
+you can enter up to 10 functions or
+function groups. The parser knows <firstterm>explicit</firstterm> and
+<firstterm>parametric</firstterm> form. With specific extensions it
+is possible to add first and second derivatives and to choose values
+for the function group parameter.</para>
+-->
+
+<sect1 id="func-syntax">
+<title>Function Syntax</title>
+
+<para>Some syntax rules must be complied with:</para>
+
+<screen>
+<userinput>name(var1[, var2])=term [;extensions]</userinput>
+</screen>
+
+
+<variablelist>
+<varlistentry>
+<term>name</term>
+<listitem>
+
+<para>The function name. If the first character is <quote>r</quote>
+the parser assumes that you are using polar coordinates. If the first
+character is <quote>x</quote> (for instance <quote>xfunc</quote>) the
+parser expects a second function with a leading <quote>y</quote> (here
+<quote>yfunc</quote>) to define the function in parametric form.
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term>var1</term>
+<listitem><para>The function's variable</para></listitem>
+</varlistentry>
+<varlistentry>
+<term>var2</term>
+<listitem><para> The function <quote>group parameter</quote>. It must be
+separated from the function's variable by a comma. You can use the group
+parameter to, for example, plot a number of graphs from one function. The parameter values can be selected manually or you can choose to have a slider bar that controls one parameter. By changing the value of the slider the value parameter will be changed. The slider can be set to an integer between 0 and 100.</para></listitem>
+</varlistentry>
+<varlistentry>
+<term>term</term>
+<listitem><para>The expression defining the function.</para></listitem>
+</varlistentry>
+</variablelist>
+</sect1>
+
+<sect1 id="func-predefined">
+<title>Predefined Function Names and Constants</title>
+
+<para>
+All the predefined functions and constants that &kmplot; knows can be shown by
+selecting <menuchoice><guimenu>Help</guimenu><guimenuitem>Predefined Math Functions</guimenuitem>
+</menuchoice>. They are:
+
+<variablelist>
+
+<varlistentry>
+<term>sqr, sqrt</term>
+<listitem>
+<para>Return the square and square root of a number, respectively.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>exp, ln</term>
+<listitem>
+<para>Return the exponential and natural logarithm of a number, respectively.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>log</term>
+<listitem>
+<para>Returns the logarithm to base 10 of a number.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>sin, arcsin</term>
+<listitem>
+<para>Return the sine and inverse sine of a number, respectively. Note that the
+argument to sin and the return value of arcsin are in radians.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>cos, arccos</term>
+<listitem>
+<para>Return the cosine and inverse cosine of a number, respectively. Also in radians.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>tan, arctan</term>
+<listitem>
+<para>Return the tangent and inverse tangent of a number,
+respectively. Also in radians.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>sinh, arcsinh</term>
+<listitem>
+<para>Return the hyperbolic sine and inverse hyperbolic sine of a number,
+respectively.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>cosh, arccosh</term>
+<listitem>
+<para>Return the hyperbolic cosine and inverse hyperbolic cosine of a number, respectively.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>tanh, arctanh</term>
+<listitem>
+<para>Return the hyperbolic tangent and inverse hyperbolic tangent of a number,
+respectively.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>sin, arcsin</term>
+<listitem>
+<para>Return the sine and inverse sine of a number, respectively. Note that the
+argument to sin and the return value of arcsin are in radians.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>cos, arccos</term>
+<listitem>
+<para>Return the cosine and inverse cosine of a number, respectively. Also in radians.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>pi, e</term>
+<listitem>
+<para>Constants representing &pgr; (3.14159...) and e (2.71828...), respectively.</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</para>
+
+<para>
+These functions and constants and even all user defined functions can
+be used to determine the axes settings as well. See <xref linkend="axes-config"/>.
+</para>
+
+</sect1>
+
+<sect1 id="func-extension">
+ <title>Extensions</title>
+ <para>An extension for a function is specified by entering a semicolon,
+ followed by the extension, after the function definition. The extension can either be written in the Quick Edit box or by using the &DCOP; method Parser addFunction. None of the extensions are available for parametric functions but N and D[a,b] work for polar functions too. For example:
+ <screen>
+ <userinput>
+ f(x)=x^2; A1
+ </userinput>
+ </screen>
+ will show the graph y=x<superscript>2</superscript> with its first
+ derivative. Supported extensions are described below:
+ <variablelist>
+ <varlistentry>
+ <term>N</term>
+ <listitem>
+ <para>
+ The function will be stored but not be drawn.
+ It can be used like any other user-defined or predefined function.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>A1</term>
+ <listitem>
+ <para>
+ The graph of the derivative of the function will be drawn
+ additionally with the same color but less line width.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>A2</term>
+ <listitem>
+ <para>
+ The graph of the second derivative of the function will be
+ drawn additionally with the same color but less line width.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>D[a,b]</term>
+ <listitem>
+ <para>
+ Sets the domain for which the function will be displayed.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>P[a{,b...}]</term>
+ <listitem>
+ <para>
+ Give a set of values of a group parameter for which the function should be
+ displayed. For example: <userinput>f(x,k)=k*x;P[1,2,3]</userinput> will plot
+ the functions f(x)=x, f(x)=2*x and f(x)=3*x. You can also use functions as the
+ arguments to the P option.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ <para>
+ Please note that you can do all of these operations by using the function editor dialog too.
+</para>
+</sect1>
+
+<sect1 id="math-syntax">
+<title>Mathematical Syntax</title>
+<para>&kmplot; uses a common way of expressing mathematical functions, so you
+should have no trouble working it out. The operators &kmplot; understands are,
+in order of decreasing precedence:
+<variablelist>
+
+<varlistentry>
+<term>^</term>
+<listitem><para>The caret symbol performs exponentiation. &eg;,
+<userinput>2^4</userinput> returns 16.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>*, /</term>
+<listitem>
+<para>The asterisk and slash symbols perform multiplication and
+division . &eg;,
+<userinput>3*4/2</userinput> returns 6.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>+, -</term>
+<listitem><para>The plus and minus symbols perform addition and
+subtraction. &eg;, <userinput>1+3-2</userinput> returns 2.</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</para>
+<para>
+Note the precedence, which means that if parentheses are not used,
+exponentiation is performed before multiplication/division, which is performed
+before addition/subtraction. So <userinput>1+2*4^2</userinput> returns 33, and
+not, say 144. To override this, use parentheses. To use the above example,
+<userinput>((1+2)*4)^2</userinput> <emphasis>will</emphasis> return 144.
+</para>
+</sect1>
+
+<!--
+<sect1 id="coord-system">
+<title>Coordinate Systems</title>
+
+<para><inlinemediaobject>
+<imageobject>
+<imagedata fileref="ksys1.png" format="PNG"/>
+</imageobject>
+</inlinemediaobject></para>
+
+<para>
+<inlinemediaobject>
+<imageobject>
+<imagedata fileref="ksys2.png" format="PNG"/>
+</imageobject>
+</inlinemediaobject></para>
+
+<para>
+<inlinemediaobject>
+<imageobject>
+<imagedata fileref="ksys3.png" format="PNG"/>
+</imageobject>
+</inlinemediaobject></para>
+-->
+<sect1 id="coord-area"><title>Plotting Area</title>
+<para>
+By default, explicitly given functions are plotted for the whole of the visible part of the
+x-axis. You can specify an other range in the edit-dialog for the function. For every pixel on the x-axis &kmplot; calculates a function value.
+If the plotting area contains the resulting point it is connected to the last
+drawn point by a line.
+</para>
+<para>
+Parametric functions are plotted for parameter values from 0 up to 2&pgr;.
+You can set the plotting range in the dialog for the function too.
+</para>
+</sect1>
+
+<sect1 id="coord-cross">
+<title>Cross Hair Cursor</title>
+<para>
+While the mouse cursor is over the plotting area the cursor changes to a cross hair. The current coordinates can be seen at the intersections with the coordinate axes and also in the status bar at the bottom of the main window.
+</para>
+<para>
+You can trace a function's values more precisely by clicking onto or next to a graph. The selected function is shown in the status bar in the right column. The cross hair then will be caught and be colored in the same color as the graph. If the graph has the same color as the background color, the cross hair will have the inverted color of the background. When moving the mouse or pressing the keys Left or Right the cross hair will follow the function and you see the current x- and y-value. If the cross hair is close to y-axis, the root-value is shown in the statusbar. You can switch function with the Up and Down keys. A second click anywhere in the window or pressing any non-navigating key will leave this trace mode.
+</para>
+<para>
+Note that tracing is only possible with explicitly given functions.
+The coordinates are always displayed according to a Cartesian system of
+coordinates. Neither non-single-point parametric functions nor functions given in polar
+coordinates can be traced in this way.
+</para>
+
+</sect1>
+
+</chapter>
+
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
diff --git a/doc/kmplot/settings-colors.png b/doc/kmplot/settings-colors.png
new file mode 100644
index 00000000..54a2c289
--- /dev/null
+++ b/doc/kmplot/settings-colors.png
Binary files differ
diff --git a/doc/kmplot/settings-fonts.png b/doc/kmplot/settings-fonts.png
new file mode 100644
index 00000000..735ccac6
--- /dev/null
+++ b/doc/kmplot/settings-fonts.png
Binary files differ
diff --git a/doc/kmplot/settings-scaling.png b/doc/kmplot/settings-scaling.png
new file mode 100644
index 00000000..442e56d7
--- /dev/null
+++ b/doc/kmplot/settings-scaling.png
Binary files differ
diff --git a/doc/kmplot/settingsdlg.png b/doc/kmplot/settingsdlg.png
new file mode 100644
index 00000000..388c23ea
--- /dev/null
+++ b/doc/kmplot/settingsdlg.png
Binary files differ
diff --git a/doc/kmplot/threeplots.png b/doc/kmplot/threeplots.png
new file mode 100644
index 00000000..867c224a
--- /dev/null
+++ b/doc/kmplot/threeplots.png
Binary files differ
diff --git a/doc/kmplot/using.docbook b/doc/kmplot/using.docbook
new file mode 100644
index 00000000..88092ad8
--- /dev/null
+++ b/doc/kmplot/using.docbook
@@ -0,0 +1,321 @@
+<chapter id="using-kmplot">
+<title>Using &kmplot;</title>
+
+<para>&kmplot; deals with named functions, which can be specified in
+terms of Cartesian coordinates (called <quote>explicit
+functions</quote>), polar coordinates or as parametric functions. To
+enter a function, choose
+<menuchoice><guimenu>Plot</guimenu><guimenuitem>Edit
+Plots...</guimenuitem> </menuchoice>. You can also enter new functions
+in the <guilabel>Function equation</guilabel> text box in the main
+&kmplot; window. The text box can handle explicit and polar
+functions. Each function you enter must have a unique name (&ie;, a
+name that is not taken by any of the existing functions displayed in
+the list box). A function name will be automatically generated if you
+do not specify one.</para>
+
+<para>For more information on &kmplot; functions, see <xref
+linkend="reference"/>.
+</para>
+
+<screenshot>
+<screeninfo>Here is a screenshot of the &kmplot; welcome window</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="main.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Screenshot</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<sect1 id="function-types">
+<title>Function Types</title>
+
+<sect2 id="explicit-functions">
+<title>Explicit Functions</title>
+<para>To enter an explicit function (&ie;, a function in the form y=f(x)) into &kmplot;, just enter it in the
+following form:
+<screen>
+<userinput><replaceable>f</replaceable>(<replaceable>x</replaceable>)=<replaceable>expression</replaceable></userinput>
+</screen>
+Where:
+<itemizedlist>
+<listitem><para>
+ <replaceable>f</replaceable> is the name of the function, and can be any
+string of letters and numbers you like, provided it does not start with any of
+the letters x, y or r (since these are used for parametric and polar
+functions).</para>
+</listitem>
+
+<listitem><para>
+<replaceable>x</replaceable> is the x-coordinate, to be used in the expression
+following the equals sign. It is in fact a dummy variable, so you can use any
+variable name you like, but the effect will be the same.</para>
+</listitem>
+
+<listitem>
+<para><replaceable>expression</replaceable> is the expression to be plotted,
+given in appropriate syntax for &kmplot;. See <xref linkend="math-syntax"/>.
+</para>
+</listitem>
+
+</itemizedlist>
+</para>
+<para>As an example, to draw the graph of y=x<superscript>2</superscript>+2x,
+enter the following into the functions dialog of &kmplot;:
+<screen>
+f(x)=x^2+2x
+</screen>
+</para>
+</sect2>
+
+<sect2 id="parametric-functions">
+<title>Parametric Functions</title>
+<para>Parametric functions are those in which the x and y coordinates are
+defined by separate functions of another variable, often called t. To enter a
+parametric function in &kmplot;, follow the procedure as for an explicit
+function, but prefix the name of the function describing the x-coordinate with
+the letter x, and the function describing the y-coordinate with the letter
+y. As with explicit functions, you may use any variable name you wish for the
+parameter. To draw a parametric function, you must go to <guimenu>Plot</guimenu><guimenuitem>New Parametric Plot...</guimenuitem>. A function name will be created automatic if you do not specify one.</para>
+<para>As an example, suppose you want to draw a circle, which has parametric
+equations x=sin(t), y=cos(t). In the &kmplot; functions dialog, do the
+following:
+<orderedlist>
+<listitem><para>Open the parametric plot dialog with
+<menuchoice><guimenu>Plot</guimenu><guimenuitem>New Parametric Plot...</guimenuitem>
+</menuchoice>.</para>
+</listitem>
+<listitem><para>Enter a name for the function, say,
+<userinput>circle</userinput>, in the <guilabel>Name</guilabel>
+box. The names of the x and y functions change to match this name: the
+x function becomes <guilabel>xcircle(t)</guilabel> and the y function
+becomes <guilabel>ycircle(t)</guilabel>.</para>
+</listitem>
+<listitem>
+<para>In the x and y boxes, enter the appropriate equations, &ie;,
+<guilabel>xcircle(t)=</guilabel><userinput>sin(t)</userinput> and
+<guilabel>ycircle(t)=</guilabel><userinput>cos(t)</userinput>.</para>
+</listitem>
+</orderedlist>
+Click on <guibutton>OK</guibutton> and the function will be drawn.
+</para>
+<para>You can set some further options for the plot in this dialog:
+<variablelist>
+
+<varlistentry>
+<term><guilabel>Hide</guilabel></term>
+<listitem>
+<para>If this option is selected, the plot is not drawn, but &kmplot;
+remembers the function definition, so you can use it to define other
+functions.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Custom plot minimum-range</guilabel></term>
+<term><guilabel>Custom plot maximum-range</guilabel></term>
+<listitem>
+<para>If this options are selected, you can change the maximum and
+minimum values of the parameter t for which the function is plotted
+using the <guilabel>Min:</guilabel> and <guilabel>Max:</guilabel>
+boxes.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Line width:</guilabel></term>
+<listitem>
+<para>With this option you can set the width of the line drawn on the
+plot area, in units of 0.1mm.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Color:</guilabel></term>
+<listitem>
+<para>Click on the color box and pick a color in the dialog that
+appears. The line on the plot will be drawn in this color.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+</sect2>
+
+<sect2 id="polar-functions">
+<title>Entering Functions in Polar Coordinates</title>
+
+<para>Polar coordinates represent a point by its distance from the origin
+(usually called r), and the angle a line from the origin to the point makes
+with the x-axis (usually represented by the Greek letter theta). To enter
+functions in polar coordinates, use the menu entry
+<menuchoice><guimenu>Plot</guimenu><guimenuitem>New Polar Plot...</guimenuitem>
+</menuchoice>. In the box labeled <guilabel>r</guilabel>, complete the
+function definition, including the name of the theta variable you want
+to use, &eg;, to draw the Archimedes' spiral r=theta, enter:
+<screen>
+<userinput>
+(theta)=theta
+</userinput>
+</screen>
+so that the whole line reads <quote>r(theta)=theta</quote>. Note that
+you can use any name for the theta variable, so
+<quote>r(foo)=foo</quote> would have produced exactly the same output.
+</para>
+
+</sect2>
+
+</sect1>
+
+<sect1 id="combining-functions">
+<title>Combining Functions</title>
+<para>Functions can be combined to produce new ones. Simply enter the functions
+after the equals sign in an expression as if the functions were variables. For
+example, if you have defined functions f(x) and g(x), you can plot the sum of f
+and g with:
+<screen>
+<userinput>
+sum(x)=f(x)+g(x)
+</userinput>
+</screen>
+</para>
+<para>Note that you can only combine functions of the same type, &eg; an
+explicit function cannot be combined with a polar function.</para>
+</sect1>
+
+<sect1 id="function-appearance">
+<title>Changing the appearance of functions</title>
+
+<para>To change the appearance of a function's graph on the main plot
+window, select the function in the <guilabel>Edit Plots</guilabel>
+dialog, and click on the <guibutton>Edit</guibutton> button. In the
+dialog which appears, you can change the line width in the text box,
+and the color of the function's graph by clicking on the color button
+at the bottom. If you are editing an explicit function, you will see a
+dialog with three tabs. In the first one you specify the equation of
+the function. The <guilabel>Derivatives</guilabel> tab lets you draw
+the first and second derivative to the function. With the
+<guilabel>Integral</guilabel> tab you can draw the integral of the
+function which is calculated using Euler's method. </para>
+<para>Another way to edit a function is to right click on the
+graph. In the popup menu that appears, choose
+<guibutton>Edit</guibutton></para>
+
+<para>For more information on the popup menu, see <xref
+linkend="popupmenu"/>.
+</para>
+</sect1>
+
+<sect1 id="popupmenu">
+<title>Popup menu</title>
+
+<para>When right-clicking on a plot function or a single-point parametric plot function a popup menu will appear.
+In the menu there are five items available:</para>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice><guimenuitem>Hide</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Hides the selected graph. Other plots of the graph's function will still be shown.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenuitem>Remove</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Removes the function. All its graphs will disappear.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenuitem>Edit</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Shows the editor dialog for the selected function.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenuitem>Copy</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Copies the graph to another running &kmplot; instance.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenuitem>Move</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Moves the graph to another running &kmplot; instance.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+<para>For plot functions the following four items are also available:</para>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice><guimenuitem>Get y-Value</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Opens a dialog in which you can find the y-value corresponding to
+a specific x-value. The selected graph will be highlighted in the
+dialog. Enter an x value in the <guilabel>X:</guilabel> box, and click
+on <guibutton>Calculate</guibutton> (or press &Enter;). The corresponding y
+value will be shown under <guilabel>Y:</guilabel>.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenuitem>Search for Minimum Value</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Find the minimum value of the graph in a specified range. The
+selected graph will be highlighted in the dialog that appears. Enter
+the lower and upper boundaries of the region in which you want to
+search for a minimum, and click <guibutton>Find</guibutton>. The x and
+y values at the minimum will be shown.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenuitem>Search for Maximum Value</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>This is the same as <guimenuitem>Search for Minimum
+Value</guimenuitem> above, but finds maximum values instead of minima. </para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><guimenuitem>Calculate Integral</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Select the x-values for the graph in the new dialog that appears.
+Calulates the integral and draws the area between the graph and the x-axis in the
+selected range in the color of the graph.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+
+</sect1>
+
+
+</chapter>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
+End:
+-->
diff --git a/doc/kpercentage/Makefile.am b/doc/kpercentage/Makefile.am
new file mode 100644
index 00000000..085981d9
--- /dev/null
+++ b/doc/kpercentage/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+
diff --git a/doc/kpercentage/answer.png b/doc/kpercentage/answer.png
new file mode 100644
index 00000000..f7c94352
--- /dev/null
+++ b/doc/kpercentage/answer.png
Binary files differ
diff --git a/doc/kpercentage/commands.docbook b/doc/kpercentage/commands.docbook
new file mode 100644
index 00000000..b5997824
--- /dev/null
+++ b/doc/kpercentage/commands.docbook
@@ -0,0 +1,53 @@
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="kpercentage-mainwindow">
+<title>The main &kpercentage; window</title>
+
+<para>In the main window you can only enter one of the three input
+boxes. Here you have to type in your guess. Press
+<keycap>Enter</keycap> or click the <guibutton>Apply</guibutton>
+Button, to see if you are right. </para>
+
+<screenshot>
+<screeninfo>Here's a screenshot of the &kpercentage; main window</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="main.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here's a screenshot of the &kpercentage; main window</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>On the bottom, two progress bars display your effort. The upper bar shows the ratio
+ of totally attempted exercises. The lower bar compares the
+ right with the wrong answers. Do you notice that this is a
+ percentage task too? Mistyped inputs (letters, spaces, and so on) have no influence here.
+ </para>
+
+<para> At any time you can leave this window with the
+<guibutton>Cancel</guibutton> button. You will be carried back to the
+welcome window. There you can select another type of task or exit
+&kpercentage;.</para>
+
+<para> If you press the <guibutton>Apply</guibutton> button you are
+told whether your input was right or wrong... </para>
+
+<screenshot>
+<screeninfo>Information about correct input</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="answer.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Information about correct input</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>The funny smiley jumping up and down for every right task you made!</para>
+</sect1>
+</chapter>
+
diff --git a/doc/kpercentage/credits.docbook b/doc/kpercentage/credits.docbook
new file mode 100644
index 00000000..1473caf4
--- /dev/null
+++ b/doc/kpercentage/credits.docbook
@@ -0,0 +1,35 @@
+<chapter id="credits">
+<title>Credits and License</title>
+
+<para>
+&kpercentage;
+</para>
+<para>
+Program copyright 2001 Matthias Messmer <email>bmlmessmer@web.de</email>
+</para>
+<para>
+Contributors:
+<itemizedlist>
+<listitem><para><acronym>CVS</acronym>, coding and discussion partner: Robert Gogolok
+ <email>mail@robert-gogoloh.de</email> and
+ Carsten Niehaus <email>cniehaus@gmx.de</email></para>
+</listitem>
+<listitem><para>Cleaning and bugfixing the code: Primoz Anzur <email>zerokode@gmx.net</email></para></listitem>
+<listitem><para>Pixmaps: Elhay Achiam
+ <email>e_achiam@netvision.net.il</email></para>
+</listitem>
+<listitem><para>Spelling and <quote>good</quote> English: Jonathan Drews
+ <email>j.e.drews@att.net</email></para>
+</listitem>
+</itemizedlist>
+</para>
+
+<para>
+Documentation copyright 2001 by Matthias Messmer <email>bmlmessmer@web.de</email>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL;
+&underGPL;
+
+</chapter>
diff --git a/doc/kpercentage/devel.docbook b/doc/kpercentage/devel.docbook
new file mode 100644
index 00000000..a2f4932f
--- /dev/null
+++ b/doc/kpercentage/devel.docbook
@@ -0,0 +1,9 @@
+<chapter id="developers">
+<title>Developer's Guide to &kpercentage;</title>
+
+<para>If you want to contribute &kpercentage;, feel free to send me a
+mail <email>bmlmessmer@web.de</email>.</para>
+
+
+</chapter>
+
diff --git a/doc/kpercentage/edu-logo.png b/doc/kpercentage/edu-logo.png
new file mode 100644
index 00000000..d1234fd8
--- /dev/null
+++ b/doc/kpercentage/edu-logo.png
Binary files differ
diff --git a/doc/kpercentage/faq.docbook b/doc/kpercentage/faq.docbook
new file mode 100644
index 00000000..f4b3f820
--- /dev/null
+++ b/doc/kpercentage/faq.docbook
@@ -0,0 +1,20 @@
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>I got no help by pressing the <guibutton>Help</guibutton> Button in
+&kpercentage;?</para>
+</question>
+<answer>
+<para>If you got &kpercentage; from <acronym>CVS</acronym>, you must
+install the documentation separately.</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
diff --git a/doc/kpercentage/help.png b/doc/kpercentage/help.png
new file mode 100644
index 00000000..ff7cbf7b
--- /dev/null
+++ b/doc/kpercentage/help.png
Binary files differ
diff --git a/doc/kpercentage/index.docbook b/doc/kpercentage/index.docbook
new file mode 100644
index 00000000..8315047c
--- /dev/null
+++ b/doc/kpercentage/index.docbook
@@ -0,0 +1,102 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY package "kdeedu">
+ <!ENTITY introduction SYSTEM "introduction.docbook">
+ <!ENTITY using SYSTEM "using.docbook">
+ <!ENTITY commands SYSTEM "commands.docbook">
+ <!ENTITY devel SYSTEM "devel.docbook">
+ <!ENTITY faq SYSTEM "faq.docbook">
+ <!ENTITY credits SYSTEM "credits.docbook">
+ <!ENTITY install SYSTEM "install.docbook">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kpercentage; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Matthias</firstname>
+<surname>Messmer</surname>
+<affiliation>
+<address><email>&Matthias.Messmer.mail;</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Carsten</firstname>
+<surname>Niehaus</surname>
+<affiliation>
+<address><email>cniehaus@gmx.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Robert</firstname>
+<surname>Gogolok</surname>
+<affiliation>
+<address><email>&Robert.Gogolok.mail;</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2001</year>
+<year>2002</year>
+<holder>&Matthias.Messmer;</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2002-10-08</date>
+<releaseinfo>1.2</releaseinfo>
+
+<abstract>
+<para>
+&kpercentage; is a small math application that will help pupils
+to improve their skills in calculating percentages.
+
+
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="edu-logo.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject>
+ &kpercentage; is part of the &kde;-EDU Project:
+ <ulink url="http://edu.kde.org/">http://edu.kde.org/</ulink></para>
+
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>KPercentage</keyword>
+<keyword>EDU</keyword>
+<keyword>edutainment</keyword>
+<keyword>percentages</keyword>
+</keywordset>
+
+</bookinfo>
+
+&introduction;
+&using;
+&commands;
+&devel;
+&faq;
+&credits;
+&install;
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
diff --git a/doc/kpercentage/install.docbook b/doc/kpercentage/install.docbook
new file mode 100644
index 00000000..7b87e4e2
--- /dev/null
+++ b/doc/kpercentage/install.docbook
@@ -0,0 +1,21 @@
+<appendix id="installation">
+<title>Installation</title>
+
+<para>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="edu-logo.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject>
+ &kpercentage; is part of the KDE-EDU Project:
+ <ulink url="http://edu.kde.org/">http://edu.kde.org/</ulink>
+</para>
+
+<para>Information about &kpercentage; can be found on <ulink
+url="http://edu.kde.org/kpercentage">The &kpercentage; home
+page</ulink>.</para>
+
+&install.intro.documentation;
+&install.compile.documentation;
+
+</appendix>
diff --git a/doc/kpercentage/introduction.docbook b/doc/kpercentage/introduction.docbook
new file mode 100644
index 00000000..d8285c7c
--- /dev/null
+++ b/doc/kpercentage/introduction.docbook
@@ -0,0 +1,13 @@
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&kpercentage; is a small math application that will help pupils
+to improve their skills in calculating percentages.</para>
+
+<para>There is a special training section for the three basic
+tasks. Finally the pupil can select a random mode, in which all three
+tasks are mixed randomly.</para>
+
+</chapter>
+
diff --git a/doc/kpercentage/main.png b/doc/kpercentage/main.png
new file mode 100644
index 00000000..fbf526f4
--- /dev/null
+++ b/doc/kpercentage/main.png
Binary files differ
diff --git a/doc/kpercentage/using.docbook b/doc/kpercentage/using.docbook
new file mode 100644
index 00000000..3d61a023
--- /dev/null
+++ b/doc/kpercentage/using.docbook
@@ -0,0 +1,75 @@
+<chapter id="using-kpercentage">
+<title>Using &kpercentage;</title>
+
+<para> The welcome window lets you choose the type of exercise by
+clicking on one of the buttons. The buttons are labeled with the
+value to be deduced in the exercises.</para>
+
+<screenshot>
+ <screeninfo>Here's a screenshot of the &kpercentage; welcome window</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="welcome.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here's a screenshot of the &kpercentage; welcome window</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<sect1 id="kpercentage-features">
+<title>More &kpercentage; features</title>
+
+<para>On the left hand the number of exercises can be selected. One
+can choose from 1 to 10 tasks.</para>
+
+<para>On the right hand you can change the level of difficulty:</para>
+
+<variablelist>
+<varlistentry>
+<term>Easy</term>
+<listitem>
+<para>Only percentages with easy to calculate values are given.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Medium</term>
+<listitem>
+<para>Harder percentages are included, even some with values greater
+than 100%</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Crazy</term>
+<listitem>
+<para>Any percentage up to 200% may occur. All values are whole
+numbered however, so be honest, calculate them in your head!</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+<para>There are some help functions integrated. As usual some tool tips arise when the mouse is over
+ a control element like a button or an edit line. If you click
+on the <guibutton>Help</guibutton> button, a little menu pops up with
+further opportunities:</para>
+
+<screenshot>
+ <screeninfo>The Help popup menu.</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="help.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>The Help popup menu.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+&help.menu.documentation;
+
+</sect1>
+
+</chapter>
+
diff --git a/doc/kpercentage/welcome.png b/doc/kpercentage/welcome.png
new file mode 100644
index 00000000..57c5ead4
--- /dev/null
+++ b/doc/kpercentage/welcome.png
Binary files differ
diff --git a/doc/kstars/Makefile.am b/doc/kstars/Makefile.am
new file mode 100644
index 00000000..da8216ae
--- /dev/null
+++ b/doc/kstars/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/doc/kstars/aavso.png b/doc/kstars/aavso.png
new file mode 100644
index 00000000..4d9db1a1
--- /dev/null
+++ b/doc/kstars/aavso.png
Binary files differ
diff --git a/doc/kstars/ai-contents.docbook b/doc/kstars/ai-contents.docbook
new file mode 100644
index 00000000..f7ee216c
--- /dev/null
+++ b/doc/kstars/ai-contents.docbook
@@ -0,0 +1,45 @@
+<sect1 id="ai-contents">
+<title>AstroInfo: Table of Contents</title>
+
+<itemizedlist><title>The Sky and Coordinate Systems</title>
+ <listitem><para><link linkend="ai-skycoords">Celestial Coordinate Systems</link></para></listitem>
+ <listitem><para><link linkend="ai-cequator">Celestial Equator</link></para></listitem>
+ <listitem><para><link linkend="ai-cpoles">Celestial Poles</link></para></listitem>
+ <listitem><para><link linkend="ai-csphere">Celestial Sphere</link></para></listitem>
+ <listitem><para><link linkend="ai-ecliptic">The Ecliptic</link></para></listitem>
+ <listitem><para><link linkend="ai-equinox">The Equinoxes</link></para></listitem>
+ <listitem><para><link linkend="ai-geocoords">Geographic Coordinates</link></para></listitem>
+ <listitem><para><link linkend="ai-greatcircle">Great Circles</link></para></listitem>
+ <listitem><para><link linkend="ai-horizon">The Horizon</link></para></listitem>
+ <listitem><para><link linkend="ai-hourangle">Hour Angle</link></para></listitem>
+ <listitem><para><link linkend="ai-meridian">Local Meridian</link></para></listitem>
+ <listitem><para><link linkend="ai-precession">Precession</link></para></listitem>
+ <listitem><para><link linkend="ai-zenith">The Zenith</link></para></listitem>
+</itemizedlist>
+
+<itemizedlist><title>Time</title>
+ <listitem><para><link linkend="ai-julianday">Julian Day</link></para></listitem>
+ <listitem><para><link linkend="ai-leapyear">Leap Years</link></para></listitem>
+ <listitem><para><link linkend="ai-sidereal">Sidereal Time</link></para></listitem>
+ <listitem><para><link linkend="ai-timezones">Time Zones</link></para></listitem>
+ <listitem><para><link linkend="ai-utime">Universal Time</link></para></listitem>
+</itemizedlist>
+
+<itemizedlist><title>Physics</title>
+ <listitem><para><link linkend="ai-blackbody">Blackbody Radiation</link></para></listitem>
+ <listitem><para><link linkend="ai-darkmatter">Dark Matter</link></para></listitem>
+ <listitem><para><link linkend="ai-flux">Flux</link></para></listitem>
+ <listitem><para><link linkend="ai-luminosity">Luminosity</link></para></listitem>
+ <listitem><para><link linkend="ai-parallax">Parallax</link></para></listitem>
+ <listitem><para><link linkend="ai-retrograde">Retrograde Motion</link></para></listitem>
+</itemizedlist>
+
+<itemizedlist><title>Astrophysics</title>
+ <listitem><para><link linkend="ai-ellipgal">Elliptical Galaxies</link></para></listitem>
+ <listitem><para><link linkend="ai-spiralgal">Spiral Galaxies</link></para></listitem>
+ <listitem><para><link linkend="ai-magnitude">The Magnitude Scale</link></para></listitem>
+ <listitem><para><link linkend="ai-stars">Stars: An Introductory FAQ</link></para></listitem>
+ <listitem><para><link linkend="ai-colorandtemp">Star Colors and Temperatures</link></para></listitem>
+</itemizedlist>
+
+</sect1>
diff --git a/doc/kstars/alpha.png b/doc/kstars/alpha.png
new file mode 100644
index 00000000..8c452aac
--- /dev/null
+++ b/doc/kstars/alpha.png
Binary files differ
diff --git a/doc/kstars/altvstime.docbook b/doc/kstars/altvstime.docbook
new file mode 100644
index 00000000..0438b0cb
--- /dev/null
+++ b/doc/kstars/altvstime.docbook
@@ -0,0 +1,90 @@
+<sect1 id="tool-altvstime">
+<title>Altitude vs. Time Tool</title>
+<indexterm><primary>Tools</primary>
+<secondary>Altitude vs. Time Tool</secondary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Altitude vs. Time Tool
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="altvstime.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Altitude vs. Time Plotter</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This tool plots the altitude of any objects as a function of time,
+for any date and location on Earth. The top section is a graphical
+plot of altitude angle on the vertical axis, and time on the horizontal
+axis. The time is shown both as standard local time along the bottom,
+and <link linkend="ai-sidereal">sidereal time</link> along the top.
+The bottom half of the graph is shaded green to indicate that points
+in this region are below the horizon.
+</para>
+<para>
+There are a few ways to add curves to the plot. The simplest way to
+add the curve of an existing object is to simply type its name in the
+<guilabel>Name</guilabel> input field, and press Enter, or the
+<guibutton>Plot</guibutton> button. If the text you enter is found in
+the object database, the object's curve is added to the graph. You
+can also press the <guibutton>Browse</guibutton> button to open the
+<link linkend="findobjects">Find Object Window</link> to select an
+object from the list of known objects. If you want to add a point
+that does not exist in the object database, simply enter a name for
+the point, and then fill in the coordinates in the
+<guilabel>RA</guilabel> and <guilabel>Dec</guilabel> input fields.
+Then press the <guibutton>Plot</guibutton> button to add the curve for
+your custom object to the plot (note that you have to pick a name that
+does not already exist in the object database for this to work).
+</para>
+<para>
+When you add an object to the plot, its altitude vs. time curve is
+plotted with a thick white line, and its name is added to the listbox
+at the lower right. Any objects that were already present are plotted
+with a thinner red curve. You can choose which object is plotted with
+the thick white curve by highlighting its name in the listbox.
+</para>
+<para>
+These curves show the objects' Altitude (angle above the <link
+linkend="ai-horizon">horizon</link>) as a function of time. When
+a curve passes from the lower half to the upper half, the object has
+risen; when it falls back to the lower half, it has set. For example,
+in the screenshot, the minor planet <firstterm>Quaoar</firstterm> is
+setting at around 15:00 local time, and is rising at about 04:00 local
+time.
+</para>
+<para>
+The Altitude of an object depends on both where you are on Earth, and
+on the Date. By default, the Tool adopts the Location and Date from the
+current KStars settings. You can change these parameters in the
+<guilabel>Date &amp; Location</guilabel> Tab. To change the Location,
+you can press the <guibutton>Choose City...</guibutton> button to open
+the <link linkend="setgeo">Set Geographic Location</link> Window, or
+enter Longitude and Latitude values manually in the input fields, and
+press the <guibutton>Update</guibutton> button. To change the Date,
+use the <guilabel>Date</guilabel> picker widget, then press
+<guibutton>Update</guibutton>. Note that any curves you had already
+plotted will be automatically updated when you change the Date and/or
+Location.
+</para>
+
+<tip>
+<para>Exercise:</para>
+<para>
+Plot the Sun's Altitude curve. Make sure the geographic location is not
+near the equator. Change the Date to some time in June, and then again to
+sometime in January. You can see easily why we have seasons; in the
+winter, the Sun is above the horizon for less time (the days are shorter),
+and its altitude is never very high.
+</para>
+</tip>
+
+
+</sect1>
+
diff --git a/doc/kstars/altvstime.png b/doc/kstars/altvstime.png
new file mode 100644
index 00000000..d84ffae4
--- /dev/null
+++ b/doc/kstars/altvstime.png
Binary files differ
diff --git a/doc/kstars/astroinfo.docbook b/doc/kstars/astroinfo.docbook
new file mode 100644
index 00000000..e1ea7182
--- /dev/null
+++ b/doc/kstars/astroinfo.docbook
@@ -0,0 +1,48 @@
+<chapter id="astroinfo">
+<title>The AstroInfo Project</title>
+
+<para>
+Here you can find a collection of short articles that explain various
+astronomical concepts used in &kstars;. From coordinate systems to
+celestial mechanics, you can find answers to your questions here.
+</para><para>
+The articles sometimes also contain exercises that you can perform with
+&kstars; to illustrate the concept behind the article.
+</para>
+
+&contents; <!--AstroInfo: Table of Contents-->
+
+&skycoords; <!--AstroInfo: Celestial Coordinate Systems-->
+&cequator; <!--AstroInfo: Celestial Equator-->
+&cpoles; <!--AstroInfo: Celestial Poles-->
+&csphere; <!--AstroInfo: Celestial Sphere-->
+&ecliptic; <!--AstroInfo: The Ecliptic-->
+&equinox; <!--AstroInfo: The Equinoxes-->
+&geocoords; <!--AstroInfo: Geographic Coordinates-->
+&greatcircle; <!--AstroInfo: Great Circles-->
+&horizon; <!--AstroInfo: Horizon-->
+&hourangle; <!--AstroInfo: Hour Angle-->
+&meridian; <!--AstroInfo: Local Meridian-->
+&precession; <!--AstroInfo: Precession-->
+&zenith; <!--AstroInfo: The Zenith-->
+
+&julianday; <!--AstroInfo: Julian Day-->
+&leapyear; <!--AstroInfo: Leap Year-->
+&sidereal; <!--AstroInfo: Sidereal Time-->
+&timezones; <!--AstroInfo: Time zones-->
+&utime; <!--AstroInfo: Universal Time-->
+
+&blackbody; <!--AstroInfo: Blackbody Radiation-->
+&darkmatter; <!--AstroInfo: Dark Matter-->
+&flux; <!--AstroInfo: Flux-->
+&luminosity; <!--AstroInfo: Luminosity-->
+&parallax; <!--AstroInfo: Parallax-->
+&retrograde; <!--AstroInfo: Retrograde Motion-->
+
+&ellipgal; <!--Elliptical Galaxies-->
+&spiralgal; <!--Spiral Galaxies-->
+&magnitude; <!--AstroInfo: The Magnitude Scale-->
+&stars; <!--AstroInfo: Stars: An Introductory FAQ-->
+&colorandtemp; <!--AstroInfo: Star Colors and Temperatures-->
+
+</chapter>
diff --git a/doc/kstars/blackbody.docbook b/doc/kstars/blackbody.docbook
new file mode 100644
index 00000000..84b8ba3a
--- /dev/null
+++ b/doc/kstars/blackbody.docbook
@@ -0,0 +1,169 @@
+<sect1 id="ai-blackbody">
+
+<sect1info>
+
+<author>
+<firstname>Jasem</firstname>
+<surname>Mutlaq</surname>
+<affiliation><address>
+</address></affiliation>
+</author>
+</sect1info>
+
+<title>Blackbody Radiation</title>
+<indexterm><primary>Blackbody Radiation</primary>
+<seealso>Star Colors and Temperatures</seealso>
+</indexterm>
+
+<para>
+A <firstterm>blackbody</firstterm> refers to an opaque object that
+emits <firstterm>thermal radiation</firstterm>. A perfect
+blackbody is one that absorbs all incoming light and does not
+reflect any. At room temperature, such an object would
+appear to be perfectly black (hence the term
+<emphasis>blackbody</emphasis>). However, if heated to a high
+temperature, a blackbody will begin to glow with
+<firstterm>thermal radiation</firstterm>.
+</para>
+
+<para>
+In fact, all objects emit thermal radiation (as long as their
+temperature is above Absolute Zero, or -273.15 degrees Celsius),
+but no object emits thermal radiation perfectly; rather, they are
+better at emitting/absorbing some wavelengths of light than others.
+These uneven efficiencies make it difficult to study the interaction
+of light, heat and matter using normal objects.
+</para>
+
+<para>
+Fortunately, it is possible to construct a nearly-perfect blackbody.
+Construct a box made of a thermally conductive material, such as
+metal. The box should be completely closed on all sides, so that the
+inside forms a cavity that does not receive light from the
+surroundings. Then, make a small hole somewhere on the box.
+The light coming out of this hole will almost perfectly resemble the
+light from an ideal blackbody, for the temperature of the air inside
+the box.
+</para>
+
+<para>
+At the beginning of the 20th century, scientists Lord Rayleigh,
+and Max Planck (among others) studied the blackbody
+radiation using such a device. After much work, Planck was able to
+empirically describe the intensity of light emitted by a blackbody as a
+function of wavelength. Furthermore, he was able to describe how this
+spectrum would change as the temperature changed. Planck's work on
+blackbody radiation is one of the areas of physics that led to the
+foundation of the wonderful science of Quantum Mechanics, but that is
+unfortunately beyond the scope of this article.
+</para>
+
+<para>
+What Planck and the others found was that as the temperature of a
+blackbody increases, the total amount of light emitted per
+second increases, and the wavelength of the spectrum's peak shifts to
+bluer colors (see Figure 1).
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+<imagedata fileref="blackbody.png" format="PNG"/>
+</imageobject>
+<caption><para><phrase>Figure 1</phrase></para></caption>
+</mediaobject>
+</para>
+
+<para>
+For example, an iron bar becomes orange-red when heated to high temperatures and its color
+progressively shifts toward blue and white as it is heated further.
+</para>
+
+<para>
+In 1893, German physicist Wilhelm Wien quantified the relationship between blackbody
+temperature and the wavelength of the spectral peak with the
+following equation:
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+<imagedata fileref="lambda_max.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</para>
+
+<para>
+where T is the temperature in Kelvin. Wien's law (also known as
+Wien's displacement law) states that the
+wavelength of maximum emission from a blackbody is inversely
+proportional to its temperature. This makes sense;
+shorter-wavelength (higher-frequency) light corresponds to
+higher-energy photons, which you would expect from a
+higher-temperature object.
+</para>
+
+<para>
+For example, the sun has an average temperature of 5800 K, so
+its wavelength of maximum emission is given by:
+
+<mediaobject>
+<imageobject>
+<imagedata fileref="lambda_ex.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</para>
+
+<para>
+This wavelengths falls in the
+green region of the visible light spectrum, but the sun's continuum
+radiates photons both longer and shorter than lambda(max) and the
+human eyes perceives the sun's color as yellow/white.
+</para>
+
+<para>
+In 1879, Austrian physicist Stephan Josef Stefan showed that
+the luminosity, L, of a black body is proportional to the 4th power of its temperature T.
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+<imagedata fileref="luminosity.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</para>
+
+<para>
+where A is the surface area, alpha is a constant of proportionality,
+and T is the temperature in Kelvin. That is, if we double the
+temperature (e.g. 1000 K to 2000 K) then the total energy radiated
+from a blackbody increase by a factor of 2^4 or 16.
+</para>
+
+<para>
+Five years later, Austrian physicist Ludwig Boltzman derived the same
+equation and is now known as the Stefan-Boltzman law. If we assume a
+spherical star with radius R, then the luminosity of such a star is
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+<imagedata fileref="luminosity_ex.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</para>
+
+<para>
+where R is the star radius in cm, and the alpha is the
+Stefan-Boltzman constant, which has the value:
+
+<mediaobject>
+<imageobject>
+<imagedata fileref="alpha.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</para>
+
+</sect1>
diff --git a/doc/kstars/blackbody.png b/doc/kstars/blackbody.png
new file mode 100644
index 00000000..c08989b8
--- /dev/null
+++ b/doc/kstars/blackbody.png
Binary files differ
diff --git a/doc/kstars/calc-angdist.docbook b/doc/kstars/calc-angdist.docbook
new file mode 100644
index 00000000..7ccb1b04
--- /dev/null
+++ b/doc/kstars/calc-angdist.docbook
@@ -0,0 +1,43 @@
+<sect2 id="calc-angdist">
+<title>Angular Distance module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Angular Distance module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Angular Distance calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-angdist.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Angular Distance</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The Angular Distance tool is used to measure the angle between any
+two points on the sky. You simply specify the
+<link linkend="equatorial">Equatorial coordinates</link> of the
+desired pair of points, and then press the
+<guibutton>Compute</guibutton> button to obtain the angle between
+the two points.
+</para>
+<para>
+There is also a Batch mode for this module. In batch mode, you
+specify an input filename which contains four numbers per line:
+the RA and Dec values for pairs of points. Alternatively, you can
+specify a single value for any of these four coordinates in
+the calculator panel (the corresponding values in the input file
+should be skipped if they are specified in the calculator).
+</para>
+<para>
+Once you have specified the input filename and an output filename,
+simply press the <guibutton>Run</guibutton> button to generate the
+output file.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-angdist.png b/doc/kstars/calc-angdist.png
new file mode 100644
index 00000000..3254671b
--- /dev/null
+++ b/doc/kstars/calc-angdist.png
Binary files differ
diff --git a/doc/kstars/calc-apcoords.docbook b/doc/kstars/calc-apcoords.docbook
new file mode 100644
index 00000000..171eba09
--- /dev/null
+++ b/doc/kstars/calc-apcoords.docbook
@@ -0,0 +1,41 @@
+<sect2 id="calc-apcoords">
+<title>Apparent Coordinates module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Apparent Coordinates module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Apparent Coordinates calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-apcoords.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Apparent Coordinates</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The Apparent Coordinates module converts the <firstterm>catalog
+coordinates</firstterm> of a point in the sky to its
+<firstterm>apparent coordinates</firstterm> for any date. The
+coordinates of objects in the sky are not fixed, because of
+<link linkend="ai-precession">precession</link>, nutation and
+aberration. This module takes these effects into account.
+</para>
+<para>
+To use the module, first enter the desired target date and time
+in the <guilabel>Target Time/Date</guilabel> section. Then,
+enter the catalog coordinates in the <guilabel>Catalog
+Coordinates</guilabel> section. You can also specify the
+catalog's epoch here (usually 2000.0 for modern object
+catalogs). Finally, press the <guibutton>Compute</guibutton>
+button, and the object's coordinates for the target date
+will be displayed in the <guilabel>Apparent Coordinates</guilabel>
+section.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-apcoords.png b/doc/kstars/calc-apcoords.png
new file mode 100644
index 00000000..5d54f3d3
--- /dev/null
+++ b/doc/kstars/calc-apcoords.png
Binary files differ
diff --git a/doc/kstars/calc-dayduration.docbook b/doc/kstars/calc-dayduration.docbook
new file mode 100644
index 00000000..c5c11117
--- /dev/null
+++ b/doc/kstars/calc-dayduration.docbook
@@ -0,0 +1,28 @@
+<sect2 id="calc-dayduration">
+<title>Day Duration module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Day Duration module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Day Duration calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-daylength.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Day Duration</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This module computes the length of day as well as sunrise, sun-transit
+(noon), and sunset times for any calendar date, for any location on
+Earth. First fill in the desired geographic coordinates and date, then
+press the <guibutton>Compute</guibutton> button.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-daylength.png b/doc/kstars/calc-daylength.png
new file mode 100644
index 00000000..c74d1560
--- /dev/null
+++ b/doc/kstars/calc-daylength.png
Binary files differ
diff --git a/doc/kstars/calc-ecliptic.docbook b/doc/kstars/calc-ecliptic.docbook
new file mode 100644
index 00000000..9117cd25
--- /dev/null
+++ b/doc/kstars/calc-ecliptic.docbook
@@ -0,0 +1,43 @@
+<sect2 id="calc-ecliptic">
+<title>Ecliptic Coordinates module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Ecliptic Coordinates module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Ecliptic Coordinates calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-ecliptic.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Ecliptic Coordinates</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This module converts between <link linkend="equatorial">Equatorial
+coordinates</link> and <link linkend="ecliptic">Ecliptic
+coordinates</link>. First, select which coordinates
+should be taken as input values in the <guilabel>Choose Input
+Coordinates</guilabel> section. Then, fill in the corresponding
+coordinate values in either the <guilabel>Ecliptic
+coordinates</guilabel> or <guilabel>Equatorial coordinates</guilabel>
+section. Finally, press the <guibutton>Compute</guibutton> button,
+and the complementary coordinates will be filled in.
+</para>
+<para>
+The module contains a batch mode for converting several coordinate
+pairs at once. You must construct an input file in which each line
+contains two values: the input coordinate pairs (either Equatorial
+or Ecliptic). Then specify which coordinates you are using as input,
+and identify the input and output filenames. Finally, press the
+<guibutton>Run</guibutton> button to generate the output file,
+which will contain the converted coordinates (Equatorial or
+Ecliptic; the complement of what you chose as the input values).
+</para>
+</sect2>
diff --git a/doc/kstars/calc-ecliptic.png b/doc/kstars/calc-ecliptic.png
new file mode 100644
index 00000000..7d048999
--- /dev/null
+++ b/doc/kstars/calc-ecliptic.png
Binary files differ
diff --git a/doc/kstars/calc-eqgal.docbook b/doc/kstars/calc-eqgal.docbook
new file mode 100644
index 00000000..29f04021
--- /dev/null
+++ b/doc/kstars/calc-eqgal.docbook
@@ -0,0 +1,34 @@
+<sect2 id="calc-eqgal">
+<title>Equatorial/Galactic Coordinates module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Equatorial/Galactic Coordinates module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Equatorial/Galactic Coordinates calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-eqgal.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Equatorial/Galactic Coordinates</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This module converts from <link linkend="equatorial">Equatorial
+coordinates</link> to <link linkend="galactic">Galactic
+coordinates</link>, and vice versa. First, select which coordinates
+should be taken as input values in the <guilabel>Input
+Selection</guilabel> section. Then, fill in the corresponding
+coordinate values in either the <guilabel>Galactic
+coordinates</guilabel> or <guilabel>Equatorial coordinates</guilabel>
+section. Finally, press the <guibutton>Compute</guibutton> button,
+and the complementary coordinates will be filled in.
+</para>
+</sect2>
+
diff --git a/doc/kstars/calc-eqgal.png b/doc/kstars/calc-eqgal.png
new file mode 100644
index 00000000..811f6418
--- /dev/null
+++ b/doc/kstars/calc-eqgal.png
Binary files differ
diff --git a/doc/kstars/calc-equinox.docbook b/doc/kstars/calc-equinox.docbook
new file mode 100644
index 00000000..b43d4190
--- /dev/null
+++ b/doc/kstars/calc-equinox.docbook
@@ -0,0 +1,42 @@
+<sect2 id="calc-equinox">
+<title>Equinoxes and Solstices module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Equinoxes and Solstices module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Equinoxes and Solstices calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-equinox.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Equinoxes and Solstices</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The <link linkend="ai-equinox">Equinoxes</link> and
+Solstices module calculates the date and time of an
+equinox or solstice for a given year. You specify which
+event (Spring Equinox, Summer Solstice, Autumn Equinox,
+or Winter Solstice) should be investigated, and the year.
+Then press the <guibutton>Compute</guibutton> button to
+obtain the date and time of the event, and the length of
+the corresponding season, in days.
+</para>
+<para>
+There is a batch mode for this module. To use it, simply
+generate an input file whose lines each contain a year
+for which the Equinox and Solstice data will be computed.
+Then specify the input and output filenames, and press the
+<guibutton>Run</guibutton> button to generate the output
+file. Each line in the output file contains the input year,
+the date and time of each event, and the length of each
+season.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-equinox.png b/doc/kstars/calc-equinox.png
new file mode 100644
index 00000000..182cfc10
--- /dev/null
+++ b/doc/kstars/calc-equinox.png
Binary files differ
diff --git a/doc/kstars/calc-geodetic.docbook b/doc/kstars/calc-geodetic.docbook
new file mode 100644
index 00000000..b8b9655f
--- /dev/null
+++ b/doc/kstars/calc-geodetic.docbook
@@ -0,0 +1,43 @@
+<sect2 id="calc-geodetic">
+<title>Geodetic Coordinates module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Geodetic Coordinates module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Geodetic Coordinates calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-geodetic.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Geodetic Coordinates</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The normal <link linkend="ai-geocoords">geographic coordinate
+system</link> assumes that the Earth is a perfect sphere. This is
+nearly true, so for most purposes geographic coordinates are fine.
+If very high precision is required, then we must take the true shape
+of the Earth into account. The Earth is an ellipsoid; the distance
+around the equator is about 0.3% longer than a <link
+linkend="ai-greatcircle">Great Circle</link> that passes through the
+poles. The <firstterm>Geodetic Coordinate system</firstterm> takes
+this ellipsoidal shape into account, and expresses the position
+on the Earth's surface in Cartesian coordinates (X, Y, and Z).
+</para>
+<para>
+To use the module, first select which coordinates you will use as
+input in the <guilabel>Input Selection</guilabel> section. Then, fill
+in the input coordinates in either the <guilabel>Cartesian
+Coordinates</guilabel> section or the <guilabel>Geographic
+Coordinates</guilabel> section. When you press the
+<guibutton>Compute</guibutton> button, the corresponding
+coordinates will be filled in.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-geodetic.png b/doc/kstars/calc-geodetic.png
new file mode 100644
index 00000000..8cd080a6
--- /dev/null
+++ b/doc/kstars/calc-geodetic.png
Binary files differ
diff --git a/doc/kstars/calc-horizontal.docbook b/doc/kstars/calc-horizontal.docbook
new file mode 100644
index 00000000..b4cdcd21
--- /dev/null
+++ b/doc/kstars/calc-horizontal.docbook
@@ -0,0 +1,35 @@
+<sect2 id="calc-horiz">
+<title>Horizontal Coordinates module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Horizontal Coordinates module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Horizontal Coordinates calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-horizontal.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Horizontal Coordinates</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This module converts from <link linkend="equatorial">Equatorial
+coordinates</link> to <link linkend="horizontal">Horizontal
+coordinates</link>. First, select the date, time, and
+geographic coordinates for the calculation in the
+<guilabel>Input Data</guilabel> section. Then, fill in the
+equatorial coordinates to be converted and their catalog epoch
+in the <guilabel>Equatorial Coordinates</guilabel> section.
+When you press the <guibutton>Compute</guibutton> button,
+the corresponding Horizontal coordinates will be presented in
+the <guilabel>Horizontal Coordinates</guilabel> section.
+</para>
+</sect2>
+
diff --git a/doc/kstars/calc-horizontal.png b/doc/kstars/calc-horizontal.png
new file mode 100644
index 00000000..169c781f
--- /dev/null
+++ b/doc/kstars/calc-horizontal.png
Binary files differ
diff --git a/doc/kstars/calc-julian.png b/doc/kstars/calc-julian.png
new file mode 100644
index 00000000..5cd43cf8
--- /dev/null
+++ b/doc/kstars/calc-julian.png
Binary files differ
diff --git a/doc/kstars/calc-julianday.docbook b/doc/kstars/calc-julianday.docbook
new file mode 100644
index 00000000..4c01d698
--- /dev/null
+++ b/doc/kstars/calc-julianday.docbook
@@ -0,0 +1,41 @@
+<sect2 id="calc-julian">
+<title>Julian Day module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Julian Day module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Julian Day calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-julian.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Julian Day</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This module converts between the calendar date, the <link
+linkend="ai-julianday">Julian Day</link>, and the
+<firstterm>Modified Julian Day</firstterm>. The Modified Julian Day
+is simply equal to the Julian Day - 2,400,000.5.
+</para><para>
+To use the module, select which of the three dates will be the input,
+and then fill in its value. Then press the
+<guibutton>Compute</guibutton> button, and the corresponding values for
+the other two date systems will be displayed.
+</para>
+
+<tip>
+<para>Exercise:</para>
+<para>
+What calendar date does MJD = 0.0 correspond to?
+</para>
+</tip>
+
+</sect2>
diff --git a/doc/kstars/calc-planetcoords.docbook b/doc/kstars/calc-planetcoords.docbook
new file mode 100644
index 00000000..11b579eb
--- /dev/null
+++ b/doc/kstars/calc-planetcoords.docbook
@@ -0,0 +1,47 @@
+<sect2 id="calc-planetcoords">
+<title>Planet Coordinates module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Planet Coordinates module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Planet Coordinates calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-planetcoords.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Planet Coordinates</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The Planet Coordinates module computes positional data for
+any major solar system body, for any time and date and any
+geographic location. Simply select the <guilabel>solar
+system body</guilabel> from the drop-down list, and specify
+the desired date, time, and geographic coordinates (these
+values are preset to the current &kstars; settings). Then
+press the <guibutton>Compute</guibutton> button to determine
+the <link linkend="equatorial">Equatorial</link>, <link
+linkend="horizontal">Horizontal</link>, and <link
+linkend="ecliptic">Ecliptic</link> coordinates of the body.
+</para>
+<para>
+There is a batch mode for this module. You must construct
+an input file in which each line specifies values for the
+input parameters (solar system body, date, time, longitude,
+and latitude). You may choose to specify a constant value
+for some of the parameters in the calculator window (these
+parameters should be skipped in the input file). You may
+also specify which of the output parameters (Equatorial,
+Horizontal, and Ecliptic coordinates) should be calculated.
+Finally, specify the input and output filenames, and press
+the <guibutton>Run</guibutton> button to generate the output
+file with the computed values.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-planetcoords.png b/doc/kstars/calc-planetcoords.png
new file mode 100644
index 00000000..23351e10
--- /dev/null
+++ b/doc/kstars/calc-planetcoords.png
Binary files differ
diff --git a/doc/kstars/calc-precess.docbook b/doc/kstars/calc-precess.docbook
new file mode 100644
index 00000000..2888b22d
--- /dev/null
+++ b/doc/kstars/calc-precess.docbook
@@ -0,0 +1,37 @@
+<sect2 id="calc-precess">
+<title>Precession module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Precession module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Precession calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-precess.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Precession</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This module is similar to the <link linkend="calc-apcoords">Apparent
+Coordinates module</link>, but it only applies the effect of
+<link linkend="ai-precession">precession</link>, not of nutation or
+aberration.
+</para>
+<para>
+To use the module, first enter the input coordinates and their epoch
+in the <guilabel>Original Coordinates</guilabel> section. You must
+also fill in the target epoch in the <guilabel>Precessed
+Coordinates</guilabel> section. Then, press the
+<guibutton>Compute</guibutton> button, and the object's
+coordinates, precessed to the target Epoch, are presented in the
+<guilabel>Precessed Coordinates</guilabel> section.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-precess.png b/doc/kstars/calc-precess.png
new file mode 100644
index 00000000..0ce11ead
--- /dev/null
+++ b/doc/kstars/calc-precess.png
Binary files differ
diff --git a/doc/kstars/calc-sidereal.docbook b/doc/kstars/calc-sidereal.docbook
new file mode 100644
index 00000000..8f05e340
--- /dev/null
+++ b/doc/kstars/calc-sidereal.docbook
@@ -0,0 +1,32 @@
+<sect2 id="calc-sidereal">
+<title>Sidereal Time module</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+<tertiary>Sidereal Time module</tertiary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Sidereal Time calculator module
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="calc-sidereal.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Sidereal Time</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This module converts between <link linkend="ai-utime">Universal
+Time</link> and Local <link linkend="ai-sidereal">Sidereal Time</link>.
+First, select whether you will use Universal Time or Sidereal Time
+as an input value in the <guilabel>Input Selection</guilabel> section.
+You must also specify a geographic longitude, and a date for the
+calculation, in addition to either the Universal Time or the Sidereal
+Time value. When you press the <guibutton>Compute</guibutton> button,
+the corresponding value for the other Time will be displayed.
+</para>
+</sect2>
diff --git a/doc/kstars/calc-sidereal.png b/doc/kstars/calc-sidereal.png
new file mode 100644
index 00000000..0acb0409
--- /dev/null
+++ b/doc/kstars/calc-sidereal.png
Binary files differ
diff --git a/doc/kstars/calculator.docbook b/doc/kstars/calculator.docbook
new file mode 100644
index 00000000..9b40800c
--- /dev/null
+++ b/doc/kstars/calculator.docbook
@@ -0,0 +1,48 @@
+<sect1 id="tool-calculator">
+<title>The Astrocalculator</title>
+<indexterm><primary>Tools</primary>
+<secondary>Astrocalculator</secondary>
+</indexterm>
+
+<para>
+The &kstars; Astrocalculator provides several modules that
+give you direct access to algorithms used by the program.
+The modules are organized by subject:
+
+<itemizedlist><title>Coordinate Converters</title>
+<listitem><para><link linkend="calc-angdist">Angular Distance</link></para></listitem>
+<listitem><para><link linkend="calc-apcoords">Apparent Coordinates</link></para></listitem>
+<listitem><para><link linkend="calc-ecliptic">Ecliptic Coordinates</link></para></listitem>
+<listitem><para><link linkend="calc-eqgal">Equatorial/Galactic Coordinates</link></para></listitem>
+<listitem><para><link linkend="calc-horiz">Horizontal Coordinates</link></para></listitem>
+<listitem><para><link linkend="calc-precess">Precession</link></para></listitem>
+</itemizedlist>
+<itemizedlist><title>Earth Coordinates</title>
+<listitem><para><link linkend="calc-geodetic">Geodetic Coordinates</link></para></listitem>
+</itemizedlist>
+<itemizedlist><title>Solar System</title>
+<listitem><para><link linkend="calc-planetcoords">Planets Coordinates</link></para></listitem>
+</itemizedlist>
+<itemizedlist><title>Time Calculators</title>
+<listitem><para><link linkend="calc-dayduration">Day Duration</link></para></listitem>
+<listitem><para><link linkend="calc-equinox">Equinoxes and Solstices</link></para></listitem>
+<listitem><para><link linkend="calc-julian">Julian Day</link></para></listitem>
+<listitem><para><link linkend="calc-sidereal">Sidereal Time</link></para></listitem>
+</itemizedlist>
+</para>
+
+&calc-angdist;
+&calc-apcoords;
+&calc-ecliptic;
+&calc-eqgal;
+&calc-horiz;
+&calc-precess;
+&calc-geodetic;
+&calc-planetcoords;
+&calc-dayduration;
+&calc-equinox;
+&calc-julian;
+&calc-sidereal;
+
+</sect1>
+
diff --git a/doc/kstars/cequator.docbook b/doc/kstars/cequator.docbook
new file mode 100644
index 00000000..31e730c5
--- /dev/null
+++ b/doc/kstars/cequator.docbook
@@ -0,0 +1,27 @@
+<sect1 id="ai-cequator">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>The Celestial Equator</title>
+<indexterm><primary>Celestial Equator</primary>
+<seealso>Equatorial Coordinates</seealso>
+</indexterm>
+<para>
+The <firstterm>Celestial Equator</firstterm> is an imaginary <link
+linkend="ai-greatcircle">great circle</link> on the <link
+linkend="ai-csphere">celestial sphere</link>. The celestial equator
+is the fundamental plane of the <link linkend="equatorial">Equatorial
+Coordinate System</link>, so it is defined as the locus of points
+with Declination of zero degrees. It is also the projection of the
+Earth's equator onto the sky.
+</para>
+<para>
+The Celestial Equator and the <link linkend="ai-ecliptic">Ecliptic</link>
+are set at an angle of 23.5 degrees in the sky. The points where they
+intersect are the Vernal and Autumnal <link
+linkend="ai-equinox">Equinoxes</link>.
+</para>
+</sect1>
diff --git a/doc/kstars/color_indices.png b/doc/kstars/color_indices.png
new file mode 100644
index 00000000..ae684c57
--- /dev/null
+++ b/doc/kstars/color_indices.png
Binary files differ
diff --git a/doc/kstars/colorandtemp.docbook b/doc/kstars/colorandtemp.docbook
new file mode 100644
index 00000000..d0a762e6
--- /dev/null
+++ b/doc/kstars/colorandtemp.docbook
@@ -0,0 +1,174 @@
+<sect1 id="ai-colorandtemp">
+
+<sect1info>
+
+<author>
+<firstname>Jasem</firstname>
+<surname>Mutlaq</surname>
+<affiliation><address>
+</address></affiliation>
+</author>
+</sect1info>
+
+<title>Star Colors and Temperatures</title>
+<indexterm><primary>Star Colors and Temperatures</primary>
+<seealso>Blackbody Radiation</seealso>
+<seealso>Magnitude Scale</seealso>
+</indexterm>
+
+<para>
+Stars appear to be exclusively white at first glance.
+But if we look carefully, we can notice a range of colors: blue,
+white, red, and even gold. In the winter constellation of Orion, a
+beautiful contrast is seen between the red Betelgeuse at Orion's
+"armpit" and the blue Bellatrix at the shoulder. What causes stars to
+exhibit different colors remained a mystery until two centuries ago,
+when Physicists gained enough understanding of the nature of light and
+the properties of matter at immensely high temperatures.
+</para>
+
+<para>
+Specifically, it was the physics of
+<link linkend="ai-blackbody">blackbody radiation</link> that enabled
+us to understand the variation of stellar colors. Shortly after
+blackbody radiation was understood, it was noticed that the spectra of
+stars look extremely similar to blackbody radiation curves of
+various temperatures, ranging from a few thousand Kelvin to ~50,000
+Kelvin. The obvious conclusion is that stars are similar to
+blackbodies, and that the color variation of stars is a direct
+consequence of their surface temperatures.
+</para>
+
+<para>
+Cool stars (i.e., Spectral Type K and M) radiate most
+of their energy in the red and infrared region of the
+electromagnetic spectrum and thus appear red, while hot stars (i.e.,
+Spectral Type O and B) emit mostly at blue and ultra-violet
+wavelengths, making them appear blue or white.
+</para>
+
+<para>
+To estimate the surface temperature of a star, we can use the known
+relationship between the temperature of a blackbody, and the
+wavelength of light where its spectrum peaks. That is, as you
+increase the temperature of a blackbody, the peak of its spectrum
+moves to shorter (bluer) wavelengths of light.
+This is illustrated in Figure 1 where the intensity of three
+hypothetical stars is plotted against wavelength. The "rainbow"
+indicates the range of wavelengths that are visible to the human eye.
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+ <imagedata fileref="star_colors.png" format="PNG"/>
+</imageobject>
+<caption><para><phrase>Figure 1</phrase></para></caption>
+</mediaobject>
+</para>
+
+<para>
+This simple method is conceptually correct, but it cannot be used to
+obtain stellar temperatures accurately, because stars are
+<emphasis>not</emphasis> perfect blackbodies. The presence of various
+elements in the star's atmosphere will cause certain wavelengths of
+light to be absorbed. Because these absorption lines are not uniformly
+distributed over the spectrum, they can skew the position of
+the spectral peak.
+Moreover, obtaining a usable spectrum of a star
+is a time-intensive process and is prohibitively inefficient for large
+samples of stars.
+</para>
+
+<para>
+An alternative method utilizes photometry to measure the intensity of
+light
+passing through different filters. Each filter allows
+<emphasis>only</emphasis> a specific part of the spectrum
+of light to pass through while rejecting all others. A widely used
+photometric system is called the <firstterm>Johnson UBV
+system</firstterm>. It employs three bandpass filters: U
+("Ultra-violet"), B ("Blue"), and V ("Visible"); each occupying different regions of the
+electromagnetic spectrum.
+</para>
+
+<para>
+The process of UBV photometry involves using light sensitive devices
+(such as film or CCD cameras) and aiming a telescope at a star to
+measure the intensity of light that passes through each of the
+filters individually. This procedure gives three apparent
+brightnesses or <link linkend="ai-flux">fluxes</link> (amount of
+energy per cm^2 per second) designated by Fu, Fb, and Fv. The ratio of
+fluxes Fu/Fb and Fb/Fv is a quantitative measure of the star's
+"color", and these ratios can be used to establish a temperature scale
+for stars. Generally speaking, the larger the Fu/Fb and Fb/Fv ratios
+of a star, the hotter its surface temperature.
+</para>
+
+<para>
+For example, the star Bellatrix in Orion has Fb/Fv = 1.22, indicating
+that it is brighter through the B filter than through the V filter.
+furthermore, its Fu/Fb ratio is 2.22, so it is brightest through the U
+filter. This indicates that the star must be very hot indeed, since
+the position of its spectral peak must be somewhere in the range of
+the U filter, or at an even shorter wavelength. The surface
+temperature of Bellatrix (as determined from comparing its spectrum to
+detailed models that account for its absorption lines) is about 25,000
+Kelvin.
+</para>
+
+<para>
+We can repeat this analysis for the star Betelgeuse. Its Fb/Fv and
+Fu/Fb ratios are 0.15 and 0.18, respectively, so it is brightest
+in V and dimmest in U. So, the spectral peak of Betelgeuse must be
+somewhere in the range of the V filter, or at an even longer
+wavelength. The surface temperature of Betelgeuse is only 2,400
+Kelvin.
+</para>
+
+<para>
+Astronomers prefer to express star colors in terms of a difference in
+<link linkend="ai-magnitude">magnitudes</link>, rather than a ratio of
+<link linkend="ai-flux">fluxes</link>. Therefore, going back to blue
+Bellatrix we have a color index equal to
+</para>
+
+<para>
+ B - V = -2.5 log (Fb/Fv) = -2.5 log (1.22) = -0.22,
+</para>
+
+<para>
+Similarly, the color index for red Betelgeuse is
+</para>
+
+<para>
+ B - V = -2.5 log (Fb/Fv) = -2.5 log (0.18) = 1.85
+</para>
+
+<para>
+The color indices, like the <link linkend="ai-magnitude">magnitude
+scale</link>, run backward. <emphasis>Hot and blue</emphasis>
+stars have <emphasis>smaller and negative</emphasis> values of B-V
+than the cooler and redder stars.
+</para>
+
+<para>
+An Astronomer can then use the color indices for a star, after
+correcting for reddening and interstellar extinction, to obtain an accurate temperature of that star.
+The relationship between B-V and temperature is illustrated in Figure
+2.
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+ <imagedata fileref="color_indices.png" />
+</imageobject>
+<caption><para><phrase>Figure 2</phrase></para></caption>
+</mediaobject>
+</para>
+
+<para>
+The Sun with surface temperature of 5,800 K has a B-V index of 0.62.
+</para>
+</sect1>
diff --git a/doc/kstars/commands.docbook b/doc/kstars/commands.docbook
new file mode 100644
index 00000000..0efacac9
--- /dev/null
+++ b/doc/kstars/commands.docbook
@@ -0,0 +1,1192 @@
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="kstars-menus">
+<title>Menu Commands</title>
+<indexterm><primary>Commands</primary><secondary>Menu</secondary></indexterm>
+
+<sect2 id="filemenu">
+<title><guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>New Window</guimenuitem>
+</menuchoice></term>
+<listitem><para>Open another &kstars; window
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>W</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Close Window</guimenuitem>
+</menuchoice></term>
+<listitem><para>Close &kstars; window
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>D</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Download Data...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Open the <guilabel>Download Extra Data</guilabel> tool
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Open FITS...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Open a FITS image in the FITS Editor tool
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>I</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Save Sky Image...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Create image on disk from current display
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>R</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Run Script...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Run the specified KStars script
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Print...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Send the current sky map to the printer (or to a
+PostScript/PDF file)
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para>Quit &kstars;
+</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="timemenu">
+<title><guimenu>Time</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>E</keycap></keycombo>
+</shortcut>
+<guimenu>Time</guimenu>
+<guimenuitem>Set Time to Now</guimenuitem>
+</menuchoice></term>
+<listitem><para>Sync time to system clock</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>
+</shortcut>
+<guimenu>Time</guimenu>
+<guimenuitem>Set Time...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Set time and date</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Time</guimenu>
+<guimenuitem>Start/Stop Clock</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle whether time passes</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="pointmenu">
+<title><guimenu>Pointing</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>Z</keycap>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>Zenith</guimenuitem>
+</menuchoice></term>
+<listitem><para>Center the display at the
+<link linkend="ai-zenith">Zenith</link> point (straight up)
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>N</keycap>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>North</guimenuitem>
+</menuchoice></term>
+<listitem><para>Center the display above the North point on the
+horizon</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>E</keycap>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>East</guimenuitem>
+</menuchoice></term>
+<listitem><para>Center the display above the East point on the
+horizon</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>S</keycap>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>South</guimenuitem>
+</menuchoice></term>
+<listitem><para>Center the display above the South point on the
+horizon</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>W</keycap>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>West</guimenuitem>
+</menuchoice></term>
+<listitem><para>Center the display above the West point on the
+horizon</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>M</keycap></keycombo>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>Set Focus Manually...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Center the display on specific
+<link linkend="ai-skycoords">sky coordinates</link>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>Find Object</guimenuitem>
+</menuchoice></term>
+<listitem><para>Locate an object by name using the
+<link linkend="findobjects">Find Object Window</link></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>T</keycap></keycombo>
+</shortcut>
+<guimenu>Pointing</guimenu>
+<guimenuitem>Engage/Stop Tracking</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle tracking on/off. While tracking,
+the display will remain centered on the current position or
+object.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="viewmenu">
+<title><guimenu>View</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>+</keycap>
+</shortcut>
+<guimenu>View</guimenu>
+<guimenuitem>Zoom in</guimenuitem>
+</menuchoice></term>
+<listitem><para>Zooms view in</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>-</keycap>
+</shortcut>
+<guimenu>View</guimenu>
+<guimenuitem>Zoom out</guimenuitem>
+</menuchoice></term>
+<listitem><para>Zooms view out</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+</shortcut>
+<guimenu>View</guimenu>
+<guimenuitem>Default Zoom</guimenuitem>
+</menuchoice></term>
+<listitem><para>Restore the default Zoom setting</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;&Shift;<keycap>Z</keycap></keycombo>
+</shortcut>
+<guimenu>View</guimenu>
+<guimenuitem>Zoom to Angular Size...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Zoom to specified field-of-view angle</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;&Shift;<keycap>F</keycap></keycombo>
+</shortcut>
+<guimenu>View</guimenu>
+<guimenuitem>Full Screen Mode</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle full-screen mode</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycap>Space</keycap>
+</shortcut>
+<guimenu>View</guimenu>
+<guimenuitem>Horizontal/Equatorial Coordinates</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle between the
+<link linkend="horizontal">Horizontal</link> and
+<link linkend="equatorial">Equatorial</link>
+<link linkend="ai-skycoords">Coordinate Systems</link></para></listitem>
+</varlistentry>
+</variablelist>
+</sect2>
+
+<sect2 id="devicemenu">
+<title><guimenu>Devices</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Devices</guimenu>
+<guimenuitem>Telescope Wizard...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Opens the <guilabel>Telescope Wizard</guilabel>, which
+provides a step-by-step guide to help you connect to your telescope and
+control it with &kstars;.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Devices</guimenu>
+<guimenuitem>Device Manager</guimenuitem>
+</menuchoice></term>
+<listitem><para>Opens up the device manager, which allows you to start/shutdown device drivers and connect to remote INDI servers.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Devices</guimenu>
+<guimenuitem>INDI Control Panel</guimenuitem>
+</menuchoice></term>
+<listitem><para>Opens up INDI Control Panel, which allows you to control all the features supported by a device.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Devices</guimenu>
+<guimenuitem>Capture Image Sequence...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Acquire images from a CCD camera or webcam device</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Devices</guimenu>
+<guimenuitem>Configure INDI</guimenuitem>
+</menuchoice></term>
+<listitem><para>Opens up a dialog to configure INDI-related features such as automatic device updates.</para></listitem>
+</varlistentry>
+
+</variablelist>
+</sect2>
+
+<sect2 id="toolmenu">
+<title><guimenu>Tools</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>Calculator...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Opens the <link linkend="tool-calculator">AstroCalculator</link> Tool,
+which provides full access to many of the mathematical functions used by
+&kstars;.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>L</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>Observing List...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>Opens the <link linkend="tool-observinglist">Observing List</link>
+Tool, which provide convenient access to some common functions for a list of
+objects chosen by you.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>V</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>AAVSO Light Curves...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Opens the <link linkend="tool-aavso">AAVSO Light Curve Generator</link>
+Tool, which allows you to download a light curve for any variable
+star from the American Association of Variable Star Observers.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>A</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>Altitude vs. Time...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Opens the <link linkend="tool-altvstime">Altitude vs. Time</link> Tool, which
+can plot curves representing the altitude of any object as a
+function of time. This is useful for planning observing
+sessions.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>U</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>What's Up Tonight...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Opens the <link linkend="tool-whatsup">What's Up Tonight</link> Tool,
+which presents a summary of the objects which are observable
+from your location on a given date.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>B</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>Script Builder...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Opens the <link linkend="tool-scriptbuilder">Script Builder</link> Tool,
+which provides a GUI interface for building &kstars; DCOP scripts.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Y</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>Solar System...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Opens the <link linkend="tool-solarsys">Solar System Viewer</link>,
+which displays an overhead view of the solar system on the
+current simulation date.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>J</keycap></keycombo>
+</shortcut>
+<guimenu>Tools</guimenu>
+<guimenuitem>Jupiter's Moons...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Opens the <link linkend="tool-jmoons">Jupiter Moons Tool</link>,
+which displays the positions of Jupiter's four brightest
+moons as a function of time.
+</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</sect2>
+
+<sect2 id="settingmenu">
+<title><guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Info Boxes</guisubmenu>
+<guimenuitem>Hide/Show Info Boxes</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of all three Info Boxes
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Info Boxes</guisubmenu>
+<guimenuitem>Hide/Show Time</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the Time Info Box
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Info Boxes</guisubmenu>
+<guimenuitem>Hide/Show Focus</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the Focus Info Box
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Info Boxes</guisubmenu>
+<guimenuitem>Hide/Show Location</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the Location Info Box
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Toolbars</guisubmenu>
+<guimenuitem>Hide/Show Main Toolbar</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the Main Toolbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Toolbars</guisubmenu>
+<guimenuitem>Hide/Show View Toolbar</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the View Toolbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Statusbar</guisubmenu>
+<guimenuitem>Hide/Show Statusbar</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the Statusbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Statusbar</guisubmenu>
+<guimenuitem>Hide/Show Az/Alt field</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the mouse cursor's horizontal
+coordinates in the statusbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Statusbar</guisubmenu>
+<guimenuitem>Hide/Show RA/Dec field</guimenuitem>
+</menuchoice></term>
+<listitem><para>Toggle display of the mouse cursor's horizontal
+coordinates in the statusbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Color Schemes</guisubmenu>
+</menuchoice></term>
+<listitem><para>
+This submenu contains all of the defined color schemes, including your
+custom schemes. Select any item to set that color scheme.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>FOV Symbols</guisubmenu>
+</menuchoice></term>
+<listitem><para>
+This submenu lists the available field-of-view (FOV) Symbols.
+The FOV Symbol is drawn at the center of the display. You
+may choose from the list of predefined symbols (No symbol,
+7x35 Binoculars, One degree, HST WFPC2 or 30m at 1.3cm), or you may define
+your own symbols (or modify existing symbols) using the
+<guimenuitem>Edit FOV symbols...</guimenuitem> item.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>G</keycap></keycombo>
+</shortcut>
+<guimenu>Settings</guimenu>
+<guimenuitem>Geographic...</guimenuitem>
+</menuchoice></term>
+<listitem>
+<para>
+Select a new <link linkend="setgeo">geographic
+location</link>
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure &kstars;...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Modify <link linkend="config">configuration
+options</link></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Startup Wizard...</guimenuitem>
+</menuchoice></term>
+<listitem><para>Opens the <link linkend="startwizard">Setup Wizard</link>,
+which allows you to easily set your geographic location and download some
+extra data files.</para></listitem>
+</varlistentry>
+
+
+</variablelist>
+</sect2>
+
+<sect2 id="helpmenu">
+<title><guimenu>Help</guimenu> Menu</title>
+
+&help.menu.documentation;
+
+</sect2>
+
+<sect2 id="popup-menu">
+<title>Popup Menu</title>
+<indexterm><primary>Popup Menu</primary><secondary>Description</secondary></indexterm>
+
+<para>
+The <mousebutton>right</mousebutton> click popup menu is
+context-sensitive, meaning its content varies depending on what kind of
+object you click on. We list all possible popup menu items here, with
+the relevant object type [in brackets].</para>
+
+<variablelist>
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+Identification and type: The top one to three lines are devoted to the
+name(s) of the object, and its type. For stars, the Spectral Type
+is also shown here.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+Rise, Transit, and Set times for the object on the current simulation
+date are shown on the next three lines.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+<guimenuitem>Center and Track</guimenuitem>: Center the display
+on this location, and engage tracking. Equivalent to double-clicking.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+<guimenuitem>Angular Distance To...</guimenuitem>: In this mode,
+a dotted line is drawn from the first target object
+to the current mouse position. When you invoke the popup menu of a second
+object, this item will read <guilabel>Compute Angular Distance</guilabel>.
+Selecting this item will display the angular distance between the two
+objects in the statusbar. You can press the <keycap>Esc</keycap> key to
+exit angular distance mode without measuring an angle.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+<guimenuitem>Details</guimenuitem>: Open the
+<link linkend="tool-details">Object Details window</link> for this object.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+<guimenuitem>Attach Label</guimenuitem>: Attach a permanent name label
+to the object. If the object already has a label attached, this item
+will read <guilabel>Remove Label</guilabel>.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+<guimenuitem>Show ... Image</guimenuitem>: download an image of the
+object from the internet, and display it in the Image Viewer tool.
+The "..." text is replaced by a short description of the image's
+source. An object may have multiple image links available in its
+popup menu.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All]</term>
+<listitem><para>
+<guimenuitem>... Page</guimenuitem>: Display a webpage about the object
+in your default web browser. The "..." text is replaced by a short
+description of the page. An object may have multiple web links available
+in its popup menu.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>[All Named Objects]</term>
+<listitem><para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Internet Links</secondary>
+<tertiary>Customizing</tertiary></indexterm>
+<guimenuitem>Add Link...</guimenuitem>: This allows you to add your own
+custom links to the popup menu of any object. It opens a small window
+in which you enter the &URL; of the link, and the text you want to
+appear in the popup menu. There is also a pair of radio buttons which
+allow you to specify whether the &URL; is an image or an
+<acronym>HTML</acronym> document, so &kstars; knows whether to launch
+the web browser or the image viewer. You can use this to add links to
+files on your local disk, so this feature could be used to attach
+observing logs or other custom information to objects in &kstars;.
+Your custom links are automatically loaded whenever &kstars; starts up,
+and they are stored in the folder <filename
+class="directory">~/.kde/share/apps/kstars/</filename>, in files
+<filename>myimage_url.dat</filename> and
+<filename>myinfo_url.dat</filename>. If you build an extensive list
+of custom links, consider submitting them to us, we would like to
+include them in the next version of &kstars;!
+</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+</sect1>
+
+<sect1 id="kstars-keys">
+<title>Keyboard Commands</title>
+<indexterm><primary>Commands</primary>
+<secondary>Keyboard</secondary></indexterm>
+
+<sect2 id="nav-keys">
+<title>Navigation Keys</title>
+<indexterm><primary>Navigation Controls</primary>
+<secondary>Keyboard</secondary></indexterm>
+
+<variablelist>
+<varlistentry><term>Arrow Keys</term>
+<listitem><para>
+Use the arrow keys to pan the display. Holding down the &Shift;
+key doubles the scrolling speed.
+</para></listitem></varlistentry>
+
+<varlistentry>
+<term><keycap>+</keycap> / <keycap>-</keycap></term>
+<listitem><para>Zoom In/Out</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo></term>
+<listitem><para>Restore the default Zoom setting</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;&Shift;<keycap>Z</keycap></keycombo></term>
+<listitem><para>Zoom to specified field-of-view angle</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>0&ndash;9</term>
+<listitem><para>Center Display on a major Solar System body:
+<itemizedlist>
+<listitem><para>0: Sun</para></listitem>
+<listitem><para>1: Mercury</para></listitem>
+<listitem><para>2: Venus</para></listitem>
+<listitem><para>3: Moon</para></listitem>
+<listitem><para>4: Mars</para></listitem>
+<listitem><para>5: Jupiter</para></listitem>
+<listitem><para>6: Saturn</para></listitem>
+<listitem><para>7: Uranus</para></listitem>
+<listitem><para>8: Neptune</para></listitem>
+<listitem><para>9: Pluto</para></listitem>
+</itemizedlist>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>Z</keycap></term>
+<listitem><para>Center the display at the <link linkend="ai-zenith">Zenith</link>
+Point (straight up)</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>N</keycap></term>
+<listitem><para>Center the display above the North point on the horizon</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>E</keycap></term>
+<listitem><para>Center the display above the East point on the horizon</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>S</keycap></term>
+<listitem><para>Center the display above the South point on the horizon</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>W</keycap></term>
+<listitem><para>Center the display above the West point on the horizon</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>T</keycap></keycombo></term>
+<listitem><para>Toggle tracking mode</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>&lt;</keycap></term>
+<listitem><para>Advance the simulation clock backwards by one time step</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>&gt;</keycap></term>
+<listitem><para>Advance the simulation clock forwards by one time step</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</sect2>
+
+<sect2 id="menu-keys">
+<title>Menu Shortcuts</title>
+<indexterm><primary>Commands</primary>
+<secondary>Menu</secondary>
+<tertiary>Keyboard Shortcuts</tertiary>
+</indexterm>
+
+<variablelist>
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo></term>
+<listitem><para>Open a new &kstars; window</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>W</keycap></keycombo></term>
+<listitem><para>Close a &kstars; window</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>D</keycap></keycombo></term>
+<listitem><para>Download extra data</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo></term>
+<listitem><para>Open a FITS image in the FITS Editor</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>I</keycap></keycombo></term>
+<listitem><para>Export sky image to a file</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>R</keycap></keycombo></term>
+<listitem><para>Run a &kstars; DCOP script</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo></term>
+<listitem><para>Print the current sky map</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo></term>
+<listitem><para>Quit &kstars;</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>E</keycap></keycombo></term>
+<listitem><para>Sync the simulation clock with the current system time</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo></term>
+<listitem><para>Set the simulation clock to a specified Time and Date</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;&Shift;<keycap>F</keycap></keycombo></term>
+<listitem><para>Toggle full-screen mode</para></listitem>
+</varlistentry>
+
+<varlistentry><term><keycap>Space</keycap></term>
+<listitem><para>Toggle between the
+<link linkend="horizontal">Horizontal</link> and
+<link linkend="equatorial">Equatorial</link>
+<link linkend="ai-skycoords">Coordinate Systems</link>
+</para></listitem></varlistentry>
+
+<varlistentry>
+<term><keycap>F1</keycap></term>
+<listitem><para>Open the &kstars; Handbook</para></listitem>
+</varlistentry>
+</variablelist>
+</sect2>
+
+
+<sect2 id="object-actions">
+<title>Actions for the Selected Object</title>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Keyboard Actions</secondary></indexterm>
+
+<para>Each of the following keystrokes performs an action on the
+<firstterm>selected object</firstterm>. The selected object is the last
+object which was clicked on (identified in the status bar). Alternatively,
+if you hold down the <keycap>Shift</keycap> key, then the action is
+performed on the centered object instead.</para>
+
+<!-- FIXME: this feature does not exist yet; to be added after feature thaw
+<variablelist>
+<varlistentry>
+<term><keycap>C</keycap></term>
+<listitem><para>Center and Track on the selected object</para></listitem>
+</varlistentry>
+-->
+<variablelist>
+<varlistentry>
+<term><keycap>D</keycap></term>
+<listitem><para>Open the Details window for the selected object</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>L</keycap></term>
+<listitem><para>Toggle a name label for the selected object</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>O</keycap></term>
+<listitem><para>Add the selected object to the observing list</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>P</keycap></term>
+<listitem><para>Open the selected object's popup menu</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>T</keycap></term>
+<listitem><para>Toggle a trail on the selected object (solar system bodies only)</para></listitem>
+</varlistentry>
+
+</variablelist>
+</sect2>
+
+<sect2 id="tools-keys">
+<title>Tools Shortcuts</title>
+
+<variablelist>
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="findobjects">Find Object window</link>,
+for specifying a sky object on which to center</para></listitem>
+</varlistentry>
+
+<varlistentry><term><keycombo action="simul">&Ctrl;<keycap>M</keycap></keycombo>
+</term>
+<listitem><para>Open the <guilabel>Set Focus Manually...</guilabel> tool,
+for specifying RA/Dec or Az/Alt coordinates on which to center</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>[</keycap> / <keycap>]</keycap></term>
+<listitem><para>Start/End an Angular Distance measurement at the current mouse
+cursor position. The angular distance between start and end points is displayed
+in the statusbar.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>G</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="setgeo">Set Geographic Location</link>
+window</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-calculator">AstroCalculator</link>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>V</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-aavso">AAVSO Lightcurve Generator</link>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>A</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-altvstime">Altitude vs. Time</link>
+tool</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>U</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-whatsup">What's Up Tonight?</link>
+tool</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>B</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-scriptbuilder">Script Builder</link>
+tool</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>Y</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-solarsys">Solar System Viewer</link>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>J</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-jmoons">Jupiter Moons</link>
+tool</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>L</keycap></keycombo></term>
+<listitem><para>Open the <link linkend="tool-observinglist">Observing List</link>
+tool</para></listitem>
+</varlistentry>
+
+</variablelist>
+</sect2>
+</sect1>
+
+<sect1 id="kstars-mouse">
+<title>Mouse Commands</title>
+<indexterm><primary>Commands</primary>
+<secondary>Mouse</secondary></indexterm>
+<indexterm><primary>Navigation Controls</primary>
+<secondary>Mouse</secondary></indexterm>
+
+<variablelist>
+<varlistentry><term>Moving the mouse</term>
+<listitem><para>
+The sky coordinates (RA/Dec and Az/Alt) of the mouse cursor are updated
+in the status bar
+</para></listitem>
+</varlistentry>
+
+<varlistentry><term>"Hovering" the mouse</term>
+<listitem><para>
+A temporary name label is attached to the object nearest to the mouse cursor.
+</para></listitem>
+</varlistentry>
+
+<varlistentry><term>Left-clicking</term>
+<listitem>
+<para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Identifying</secondary></indexterm>
+The object nearest the mouse click is identified in the
+status bar.
+</para></listitem>
+</varlistentry>
+
+<varlistentry><term>Double-clicking</term>
+<listitem>
+<para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Centering</secondary></indexterm>
+Center and track on the location or object
+nearest the mouse click. Double-clicking on an Info Box will
+<quote>shade</quote> it to show/hide extra information.
+</para></listitem>
+</varlistentry>
+
+<varlistentry><term>Right-clicking</term>
+<listitem>
+<para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Invoking Popup Menu for</secondary></indexterm>
+Open the <link linkend="popup-menu">popup menu</link> for the
+location or object nearest the mouse cursor.
+</para></listitem>
+</varlistentry>
+
+<varlistentry><term>Scrolling the mouse wheel</term>
+<listitem><para>Zoom the display in or out. If you do not
+have a mouse wheel, you can hold the middle mouse button and
+drag vertically.
+</para></listitem>
+</varlistentry>
+
+<varlistentry><term>Click-and-dragging</term>
+<listitem><para>
+ <variablelist>
+ <varlistentry><term>Dragging the sky map</term>
+ <listitem><para>Pan the display, following the drag motion.
+ </para></listitem></varlistentry>
+
+ <varlistentry><term>&Ctrl;+dragging the sky map</term>
+ <listitem><para>Define a rectangle in the map. When the
+ mouse button is released, the display is zoomed in to match the
+ field-of-view to the bounds of the rectangle.
+ </para></listitem></varlistentry>
+
+ <varlistentry><term>Dragging an Info Box</term>
+ <listitem><para>The Info Box is repositioned in the map. Info
+ Boxes will <quote>stick</quote> to window edges, so that they
+ remain on the edge when the window is resized.
+ </para></listitem></varlistentry>
+ </variablelist>
+</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect1>
+</chapter>
diff --git a/doc/kstars/config.docbook b/doc/kstars/config.docbook
new file mode 100644
index 00000000..38389e65
--- /dev/null
+++ b/doc/kstars/config.docbook
@@ -0,0 +1,379 @@
+<chapter id="config">
+<title>Configuring &kstars;</title>
+
+<sect1 id="setgeo">
+<title>Setting the Geographic Location</title>
+
+<para>
+Here is a screenshot of the <guilabel>Set Geographic Location</guilabel>
+window:
+<screenshot>
+<screeninfo>Changing the Geographic Location</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="geolocator.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Set Location Window</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+</para>
+
+<para>
+There is a list of over 2500 predefined cities available to choose from.
+You set your location by highlighting a city from this list. Each
+city is represented in the world map as a small dot, and when a city
+is highlighted in the list, a red crosshairs appears on its location
+in the map.
+</para>
+
+<para>
+<indexterm><primary>Geographic Location Tool</primary>
+<secondary>Filtering</secondary></indexterm>
+It is not practical to scroll through the full list of 2500 locations,
+looking for a specific city. To make searches easier, the list can be
+filtered by entering text in the boxes below the map. For example, in
+the screenshot, the text <quote>Ba</quote> appears in the
+<guilabel>City Filter</guilabel> box, while <quote>M</quote> has been
+entered in the <guilabel>Province Filter</guilabel> box, and
+<quote>USA</quote> is in the <guilabel>Country Filter</guilabel>
+box. Note that all of the cities displayed in the list have city,
+province, and country names that begin with the entered filter
+strings, and that the message below the filter boxes indicates that 7
+cities are matched by the filters. Also notice that the dots
+representing these seven cities in the map have been colored white,
+while the unmatched cities remain gray.
+</para><para>
+The list can also be filtered by location in the map. Clicking anywhere
+in the world map will show only those cities within two degrees of the
+clicked location. At this time, you can search by name, or by location,
+but not both at once. In other words, when you click on the map, the
+name filters are ignored, and vice versa.
+</para><para>
+<indexterm><primary>Geographic Location Tool</primary>
+<secondary>Custom locations</secondary></indexterm>
+The <link linkend="ai-geocoords">longitude, latitude</link> and
+<link linkend="ai-timezones">time zone</link> information for the
+currently-selected location are displayed in the boxes at the bottom of
+the window. If you feel that any of these values are inaccurate, you
+can modify them and press the <guibutton>Add to List</guibutton> button
+to record your custom version of the location. You can also define a
+completely new location by pressing the
+<guibutton>Clear Fields</guibutton> button, and entering the data for
+the new location. Note that all fields except the optional
+<guilabel>State/Province</guilabel> must be filled before the new
+location can be added to the list. &kstars; will automatically load
+your custom locations for all future sessions. Please note, at this
+point, the only way to remove a custom location is to remove the
+appropriate line from the file
+<filename>~/.kde/share/apps/kstars/mycities.dat</filename>.
+</para><para>
+If you add custom locations (or modify existing ones), please send us
+your <filename>mycities.dat</filename> file so that we can add your
+locations to the master list.
+</para>
+</sect1>
+
+<sect1 id="settime">
+<title>Setting the Time</title>
+<para>
+<indexterm><primary>Date and Time</primary>
+<secondary>The simulation clock</secondary></indexterm>
+When &kstars; starts up, the time is set to your computer's system
+clock, and the &kstars; clock is running to keep up with the real time.
+If you want to stop the clock, select <guimenuitem>Stop
+Clock</guimenuitem> from the <guimenu>Time</guimenu> menu, or simply
+click on the <guiicon>Pause</guiicon> icon in the toolbar. You can
+make the clock run slower or faster than normal, or even make it run
+backward, using the time-step spinbox in the toolbar. This spinbox
+has two sets of up/down buttons. The first one will step through all
+83 available time steps, one by one. The second one will skip to the
+next higher (or lower) unit of time, which allows you to make large
+timestep changes more quickly.
+</para>
+<para>
+<indexterm><primary>Date and Time</primary>
+<secondary>Setting</secondary></indexterm>
+You can set the time and date by selecting <guimenuitem>Set
+Time...</guimenuitem> from the <guimenu>Time</guimenu> menu, or by
+pressing the <guiicon>time</guiicon> icon in the toolbar. The
+<guilabel>Set Time</guilabel> window uses a standard &kde; Date Picker
+widget, coupled with three spinboxes for setting the hours, minutes and
+seconds. If you want to re-synchronize the simulation clock back to the
+current CPU time, just select <guimenuitem>Set Time to Now</guimenuitem>
+from the <guimenu>Time</guimenu> menu.</para>
+
+<note><para>
+<indexterm><primary>Date and Time</primary>
+<secondary>Extended range of dates</secondary></indexterm>
+&kstars; can accept very remote dates beyond the usual limits imposed by
+QDate. Currently, you can set the date between the years -50000 and +50000.
+We may extend this range even further in future releases. However, please
+be aware that the accuracy of the simulation becomes more and more degraded
+as more remote dates are examined. This is especially true for the positions
+of solar system bodies.
+</para></note>
+</sect1>
+
+<sect1 id="viewops">
+<title>The Configure &kstars; Window</title>
+<para>
+<indexterm><primary>Configure &kstars; window</primary></indexterm>
+The <guilabel>Configure &kstars;</guilabel> window allows you to modify
+a wide range of display options. You can access the window with the
+<guiicon>configure</guiicon> toolbar icon, or by selecting
+<guimenuitem>Configure &kstars;...</guimenuitem> from the
+<guimenu>Settings</guimenu> menu.
+The window is depicted below:
+
+<screenshot>
+<screeninfo>Configure &kstars; Window</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="viewops.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Configure &kstars; Window</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+</para>
+
+<para>
+The <guilabel>Configure &kstars;</guilabel> window is divided into five
+tabs:
+<guilabel>Catalogs</guilabel>, <guilabel>Guides</guilabel>,
+<guilabel>Solar System</guilabel>, <guilabel>Colors</guilabel>, and
+<guilabel>Advanced</guilabel>.
+</para>
+<para>
+<indexterm><primary>Configure &kstars; window</primary>
+<secondary>Catalogs Tab</secondary></indexterm>
+In the <guilabel>Catalogs</guilabel> tab, you determine which object
+catalogs are displayed in the map. The <guilabel>Stars</guilabel> section
+also allows you to set the
+<quote>faint <link linkend="ai-magnitude">magnitude</link> limit</quote>
+for stars, and the <link linkend="ai-magnitude">magnitude</link> limit for
+displaying the names and/or magnitudes of stars. Below the stars section,
+the <guilabel>Deep-Sky Objects</guilabel> section controls the display of
+several non-stellar object catalogs. By default, the list includes the
+Messier, NGC and IC catalogs. You can add your own custom object catalogs
+by pressing the <guibutton>Add Custom Catalog</guibutton> button. For
+detailed instructions on preparing a catalog data file, see the
+<filename>README.customize</filename> file that ships with &kstars;.
+</para>
+<para>
+<indexterm><primary>Configure &kstars; window</primary>
+<secondary>Solar System Tab</secondary></indexterm>
+In the <guilabel>Solar System</guilabel> tab, you can specify whether
+the Sun, Moon, planets, comets and asteroids are displayed, and
+whether the major bodies are drawn as colored circles or actual images.
+You can also toggle whether solar system bodies have name labels attached,
+and control how many of the comets and asteroids get name labels.
+There is an option to automatically attach a temporary <quote>orbit
+trail</quote> whenever a solar system body is tracked, and another to
+toggle whether the color of the orbit trail fades into the background
+sky color.
+</para>
+<para>
+<indexterm><primary>Configure &kstars; window</primary>
+<secondary>Guides Tab</secondary></indexterm>
+The <guilabel>Guides</guilabel> tab lets you toggle whether non-objects
+are displayed (&ie;, constellation lines, constellation names, the
+Milky Way contour, the <link linkend="ai-cequator">celestial
+equator</link>, <link linkend="ai-ecliptic">the ecliptic</link>, <link
+linkend="ai-horizon">the horizon line</link>, and the opaque ground).
+You can also choose whether you would like to see Latin constellation
+names, <acronym>IAU</acronym>-standard three-letter abbreviations, or
+constellation names using your local language.
+</para>
+<para>
+<indexterm><primary>Configure &kstars; window</primary>
+<secondary>Colors Tab</secondary></indexterm>
+<indexterm><primary>Color Schemes</primary>
+<secondary>Customizing</secondary></indexterm>
+The <guilabel>Colors</guilabel> tab allows you to set the color scheme,
+and to define custom color schemes. The tab is split into two panels:
+</para>
+<para>
+The left panel shows a list of all display items with adjustable
+colors. Click on any item to bring up a color selection window to
+adjust its color. Below the list is the <guilabel>Star Color
+Mode</guilabel> selection box. By default, &kstars; draws stars with
+a <link linkend="ai-colorandtemp">realistic color</link> tint according
+to the spectral type of the star. However, you may also choose to draw
+the stars as solid white, black or red circles. If you are using the
+realistic star colors, you can set the saturation level of the star
+colors with the <guilabel>Star Color Intensity</guilabel> spinbox.
+</para>
+<para>
+The right panel lists the defined color schemes. There are four
+predefined schemes: the <guilabel>Default</guilabel> scheme,
+<guilabel>Star Chart</guilabel>, which uses black stars on a white
+background, <guilabel>Night Vision</guilabel>, which uses only shades
+of red in order to protect dark-adapted vision, and <guilabel>Moonless
+Night</guilabel>, a more realistic, dark theme. Additionally,
+you can save the current color settings as a custom scheme by clicking
+the <guibutton>Save Current Colors</guibutton> button. It will prompt
+you for a name for the new scheme, and then your scheme will appear in
+the list in all future &kstars; sessions. To remove a custom scheme,
+simply highlight it in the list, and press the <guibutton>Remove Color
+Scheme</guibutton> button.
+</para><para>
+<indexterm><primary>Configure &kstars; window</primary>
+<secondary>Advanced Tab</secondary></indexterm>
+The <guilabel>Advanced</guilabel> Tab provides fine-grained control
+over the more subtle behaviors of &kstars;.
+</para><para>
+<indexterm><primary>Atmospheric Refraction</primary></indexterm>
+The <guilabel>Correct for atmospheric refraction</guilabel> checkbox
+controls whether the positions of objects are corrected for the effects
+of the atmosphere. Because the atmosphere is a spherical shell, light from
+outer space is <quote>bent</quote> as it passes through the atmosphere to
+our telescopes or eyes on the Earth's surface. The effect is largest for
+objects near the horizon, and actually changes the predicted rise or set
+times of objects by a few minutes. In fact, when you <quote>see</quote> a
+sunset, the Sun's actual position is already well below the horizon;
+atmospheric refraction makes it seem as if the Sun is still in the sky.
+Note that atmospheric refraction is never applied if you are using
+<guilabel>Equatorial coordinates</guilabel>.
+</para><para>
+<indexterm><primary>Animated Slewing</primary></indexterm>
+The <guilabel>Use animating slewing</guilabel> checkbox controls how the
+display changes when a new focus position is selected in the map. By
+default, you will see the sky drift or <quote>slew</quote> to the new
+position; if you uncheck this option, then the display will instead
+<quote>snap</quote> immediately to the new focus position.
+</para><para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Labeling</secondary>
+<tertiary>Automatic</tertiary>
+</indexterm>
+If the <guilabel>Attach label to centered object</guilabel> checkbox is
+selected, then a name label will automatically be attached to an object
+when it is being tracked by the program. The label will be removed when
+the object is no longer being tracked. Note that you can also manually
+attach a persistent name label to any object with its <link
+linkend="popup-menu">popup menu</link>.
+</para><para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Hiding</secondary></indexterm>
+There are three situations when &kstars; must redraw the sky display very
+rapidly: when a new focus position is selected (and <guilabel>Use
+animated slewing</guilabel> is checked), when the sky is dragged with the
+mouse, and when the time step is large. In these situations, the positions
+of all objects must be recomputed as rapidly as possible, which can put
+a large load on the <abbrev>CPU</abbrev>. If the <abbrev>CPU</abbrev>
+cannot keep up with the demand, then the display will seem sluggish or jerky.
+To mitigate this, &kstars; will hide certain objects during these rapid-redraw
+situations, as long as the <guilabel>Hide objects while moving</guilabel>
+checkbox is selected. The timestep threshold above which objects will be
+hidden is determined by the <guilabel>Also hide if timescale greater
+than:</guilabel> timestep-spinbox. You can specify the objects that should
+be hidden in the <guilabel>Configure Hidden Objects</guilabel> group box.
+</para>
+</sect1>
+
+<sect1 id="customize">
+<title>Customizing the Display</title>
+
+<para>
+There are several ways to modify the display to your liking.</para>
+<itemizedlist>
+<listitem><para>
+<indexterm><primary>Color Schemes</primary><secondary>Selecting</secondary></indexterm>
+Select a different color scheme in the
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Color Schemes</guimenuitem></menuchoice>
+menu. There are four predefined color schemes, and you can define your own in the
+<link linkend="config"><guilabel>Configure &kstars;</guilabel></link> window.
+</para></listitem>
+<listitem><para>
+<indexterm><primary>Toolbars</primary>
+<secondary>Customizing</secondary></indexterm>
+Toggle whether the Toolbars are drawn in the
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Toolbars</guimenuitem></menuchoice>
+menu. Like most KDE toolbars, they can also be dragged around and
+anchored on any window edge, or even detached from the window completely.
+</para></listitem>
+<listitem><para>
+<indexterm><primary>Info Boxes</primary><secondary>Customizing</secondary></indexterm>
+<indexterm><primary>Info Boxes</primary><secondary>Shading</secondary></indexterm>
+Toggle whether the Info Boxes are drawn in the
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Info Boxes</guimenuitem></menuchoice>
+menu. In addition, you can manipulate the three Info Boxes with the
+mouse. Each box has additional lines of data that are hidden by default.
+You can toggle whether these additional lines are visible by double-clicking
+a box to <quote>shade</quote> it. Also, you can reposition a box by
+dragging it with the mouse. When a box hits a window edge, it will
+<quote>stick</quote> to the edge when the window is resized.
+</para></listitem>
+<listitem>
+<para>
+<indexterm><primary>Field-of-View Symbols</primary><secondary>Description</secondary></indexterm>
+Choose an <quote>FOV Symbol</quote> using the
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>FOV Symbols</guimenuitem></menuchoice>
+menu. <firstterm>FOV</firstterm> is an acronym for <quote>field-of-view</quote>.
+An FOV symbol is drawn at the center of the window to indicate where the display
+is pointing. Different symbols have different angular sizes; you can use a symbol to show
+what the view through a particular telescope would look like. For example, if you choose
+the <quote>7x35 Binoculars</quote> FOV symbol, then a circle is drawn on the display that is
+9.2 degrees in diameter; this is the field-of-view for 7x35 binoculars.
+</para>
+<para>
+<indexterm><primary>Field-of-View Symbols</primary><secondary>Customizing</secondary></indexterm>
+You can define your own FOV symbols (or modify the existing symbols) using the
+<guimenuitem>Edit FOV Symbols...</guimenuitem> menu item, which launches the FOV Editor:
+</para>
+<screenshot>
+<screeninfo>Field-of-View Symbols Editor</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="fovdialog.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>FOV Symbol Editor</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The list of defined FOV symbols is displayed on the left. On the right are buttons for
+adding a new symbol, editing the highlighted symbol's properties, and removing the
+highlighted symbol from the list. Note that you can even modify or remove the four
+predefined symbols (if you remove all symbols, the four defaults will be restored the
+next time you start &kstars;). Below these three buttons is a graphical preview display
+showing the highlighted symbol from the list. When the <guibutton>New...</guibutton> or
+<guibutton>Edit...</guibutton> button is pressed, the <guilabel>New FOV Symbol</guilabel>
+window is opened:
+</para>
+
+<screenshot>
+<screeninfo>New Field-of-View Symbol</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="newfov.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>New FOV Symbol</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+<indexterm><primary>Field-of-View Symbols</primary><secondary>Defining New</secondary></indexterm>
+This window lets you modify the four properties that define a FOV symbol: name, size,
+shape, and color. The angular size for the symbol can either be entered directly in the
+<guilabel>Field of View</guilabel> edit box, or you can use the Eyepiece/Camera Tabs to
+calculate the field-of-view angle, given parameters of your telescope/eyepiece or
+telescope/camera setup. The four available shapes are: Circle, Square, Crosshairs, and
+Bullseye. Once you have specified all four parameters, press <guibutton>Ok</guibutton>,
+and the symbol will appear in the list of defined symbols. It will also be available
+from the <guimenu>Settings</guimenu> | <guisubmenu>FOV</guisubmenu> menu.
+</para>
+</listitem>
+</itemizedlist>
+
+</sect1>
+
+</chapter>
diff --git a/doc/kstars/cpoles.docbook b/doc/kstars/cpoles.docbook
new file mode 100644
index 00000000..c5f28957
--- /dev/null
+++ b/doc/kstars/cpoles.docbook
@@ -0,0 +1,58 @@
+<sect1 id="ai-cpoles">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>The Celestial Poles</title>
+<indexterm><primary>Celestial Poles</primary>
+<seealso>Equatorial Coordinates</seealso>
+</indexterm>
+<para>
+The sky appears to drift overhead from east to west, completing a full circuit
+around the sky in 24 (<link linkend="ai-sidereal">Sidereal</link>) hours. This
+phenomenon is due to the spinning of the Earth on its axis. The Earth's
+spin axis intersects the <link linkend="ai-csphere">Celestial Sphere</link> at
+two points. These points are the <firstterm>Celestial Poles</firstterm>. As the
+Earth spins; they remain fixed in the sky, and all other points seem to rotate
+around them. The celestial poles are also the poles of the <link
+linkend="equatorial">Equatorial Coordinate System</link>, meaning
+they have <firstterm>Declinations</firstterm> of +90 degrees and -90 degrees
+(for the North and South celestial poles, respectively).
+</para><para>
+The North Celestial Pole currently has nearly the same coordinates as
+the bright star <firstterm>Polaris</firstterm> (which is Latin for <quote>Pole Star</quote>).
+This makes Polaris useful for navigation: not only is it always above the North
+point of the horizon, but its <link
+linkend="horizontal">Altitude</link> angle is always (nearly)
+equal to the observer's <link linkend="ai-geocoords">Geographic Latitude</link>
+(however, Polaris can only be seen from locations in the Northern hemisphere).
+</para><para>
+The fact that Polaris is near the pole is purely a coincidence. In fact,
+because of <link linkend="ai-precession">Precession</link>, Polaris is only near
+the pole for a small fraction of the time.
+</para>
+<tip>
+<para>Exercises:</para>
+<para>
+Use the <guilabel>Find Object</guilabel> window
+(<keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo>) to locate
+Polaris. Notice that its Declination is almost (but not exactly) +90 degrees.
+Compare the Altitude reading when focused on Polaris to your location's
+geographic latitude. They are always within one degree of each other.
+They are not exactly the same because Polaris isn't exactly at the Pole.
+(you can point exactly at the pole by switching to Equatorial
+coordinates, and pressing the up-arrow key until the sky stops scrolling).
+</para><para>
+Use the <guilabel>Time Step</guilabel> spinbox in the toolbar to accelerate time
+ to a
+step of 100 seconds. You can see the entire sky appears to rotate around
+Polaris, while Polaris itself remains nearly stationary.
+</para><para>
+We said that the celestial pole is the pole of the Equatorial coordinate
+system. What do you think is the pole of the horizontal (Altitude/Azimuth)
+coordinate system? (The <link linkend="ai-zenith">Zenith</link>).
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/credits.docbook b/doc/kstars/credits.docbook
new file mode 100644
index 00000000..8c946366
--- /dev/null
+++ b/doc/kstars/credits.docbook
@@ -0,0 +1,75 @@
+<chapter id="credits">
+<title>Credits and License</title>
+
+<para>&kstars;</para>
+<para>
+Program copyright 2001-2003 The &kstars; Team <email>kstars@30doradus.org</email>
+</para>
+
+<para>
+The &kstars; Team:
+<itemizedlist>
+<listitem><para>Jason Harris <email>kstars@30doradus.org</email></para>
+</listitem>
+<listitem><para>Jasem Mutlaq <email>mutlaqja@ku.edu</email></para>
+</listitem>
+<listitem><para>Pablo de Vicente <email>pvicentea@wanadoo.es</email></para>
+</listitem>
+<listitem><para>Heiko Evermann <email>heiko@evermann.de</email></para>
+</listitem>
+<listitem><para>Thomas Kabelmann <email>tk78@gmx.de</email></para>
+</listitem>
+<listitem><para>Mark Hollomon <email>mhh@mindspring.com</email></para>
+</listitem>
+<listitem><para>Carsten Niehaus <email>cniehaus@gmx.de</email></para>
+</listitem>
+</itemizedlist>
+</para>
+
+<para>
+Data Sources:
+<itemizedlist>
+<listitem>
+<para>Object catalogs and planet position tables: <ulink
+url="http://adc.gsfc.nasa.gov">NASA Astronomical Data Center</ulink></para>
+</listitem>
+<listitem>
+<para>Detailed credit information for all of the images used in the program
+is presented in the file README.images
+</para>
+</listitem>
+</itemizedlist>
+</para>
+<para>
+References:
+<itemizedlist>
+<listitem><para><quote>Practical Astronomy With Your
+Calculator</quote> by Peter Duffet-Smith</para></listitem>
+<listitem><para><quote>Astronomical Algorithms</quote> by Jean
+Meeus</para></listitem>
+</itemizedlist>
+</para>
+
+<para> Special thanks: To the &kde; and &Qt; developers for providing
+the world with a peerless set of free <acronym>API</acronym>
+libraries. To the <application>KDevelop</application> team, for their
+excellent <acronym>IDE</acronym>, which made developing &kstars; so
+much easier and more fun. To everyone on the
+<application>KDevelop</application> message board, the &kde;
+mailing lists, and on irc.kde.org, for answering our frequent
+questions. Thank you to Anne-Marie Mahfouf, for inviting &kstars; to
+join the &kde;-Edu module. Finally, thanks to everyone who has
+submitted bug reports and other feedback. Thank you, everyone.
+</para>
+
+<para>
+Documentation copyright 2001-2003 Jason Harris and the KStars Team
+<email>kstars@30doradus.org</email>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove -->
+&underGPL; <!-- GPL License -->
+
+</chapter>
diff --git a/doc/kstars/csphere.docbook b/doc/kstars/csphere.docbook
new file mode 100644
index 00000000..913463ff
--- /dev/null
+++ b/doc/kstars/csphere.docbook
@@ -0,0 +1,28 @@
+<sect1 id="ai-csphere">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>The Celestial Sphere</title>
+<indexterm><primary>Celestial Sphere</primary>
+<seealso>Celestial Coordinate Systems</seealso>
+</indexterm>
+<para>
+The celestial sphere is an imaginary sphere of gigantic radius, centered
+on the Earth. All objects which can be seen in the sky can be thought
+of as lying on the surface of this sphere.
+</para><para>
+Of course, we know that the objects in the sky are not on the surface of
+a sphere centered on the Earth, so why bother with such a construct?
+Everything we see in the sky is so very far away, that their distances
+are impossible to gauge just by looking at them. Since their distances
+are indeterminate, you only need to know the <emphasis>direction</emphasis>
+toward the object to locate it in the sky. In this sense, the celestial sphere
+model is a very practical model for mapping the sky.
+</para><para>
+The directions toward various objects in the sky can be quantified by
+constructing a <link linkend="ai-skycoords">Celestial Coordinate System</link>.
+</para>
+</sect1>
diff --git a/doc/kstars/darkmatter.docbook b/doc/kstars/darkmatter.docbook
new file mode 100644
index 00000000..7f094770
--- /dev/null
+++ b/doc/kstars/darkmatter.docbook
@@ -0,0 +1,119 @@
+<sect1 id="ai-darkmatter">
+
+<sect1info>
+<author>
+<firstname>Jasem</firstname>
+<surname>Mutlaq</surname>
+<affiliation><address>
+</address></affiliation>
+</author>
+</sect1info>
+
+<title>Dark Matter</title>
+<indexterm><primary>Dark Matter</primary>
+</indexterm>
+
+<para>
+Scientists are now quite comfortable with the idea that 90% of the
+mass is the universe is in a form of matter that cannot be seen.
+</para>
+
+<para> Despite comprehensive maps of the nearby universe that cover
+the spectrum from radio to gamma rays, we are only able to account of
+10% of the mass that must be out there. As Bruce H. Margon, an
+astronomer at the University of Washington, told the New York Times in
+2001: <citation>It's a fairly embarrassing situation to admit that we
+can't find 90 percent of the universe</citation>. </para>
+
+<para> The term given this <quote>missing mass</quote> is
+<firstterm>Dark Matter</firstterm>, and those two words pretty well
+sum up everything we know about it at this point. We know there is
+<quote>Matter</quote>, because we can see the effects of its
+gravitational influence. However, the matter emits no detectable
+electromagnetic radiation at all, hence it is <quote>Dark</quote>.
+There exist several theories to account for the missing mass ranging
+from exotic subatomic particles, to a population of isolated black
+holes, to less exotic brown and white dwarfs. The term <quote>missing
+mass</quote> might be misleading, since the mass itself is not
+missing, just its light. But what is exactly dark matter and how do
+we really know it exists, if we cannot see it? </para>
+
+<para>
+The story began in 1933 when Astronomer Fritz Zwicky was studying the
+motions of distant and massive clusters of galaxies, specifically the
+Coma cluster and the Virgo cluster. Zwicky estimated the mass of each
+galaxy in the cluster based on their luminosity, and added up all of
+the galaxy masses to get a total cluster mass. He then made a second,
+independent estimate of the cluster mass, based on measuring the
+spread in velocities of the individual galaxies in the cluster.
+To his suprise, this second <firstterm>dynamical mass</firstterm>
+estimate was <emphasis>400 times</emphasis> larger than the estimate
+based on the galaxy light.
+</para>
+
+<para>
+Although the evidence was strong at Zwicky's time, it was not until
+the 1970s that scientists began to explore this discrepancy
+comprehensively. It was at this time that the existence of Dark
+Matter began to be taken seriously. The existence of such matter
+would not only resolve the mass deficit in galaxy clusters; it
+would also have far more reaching consequences for the evolution and
+fate of the universe itself.
+</para>
+
+<para>
+Another phenomenon that suggested the need for dark matter is the
+rotational curves of <firstterm>Spiral Galaxies</firstterm>. Spiral Galaxies
+contain a large population of stars that orbit the Galactic center on
+nearly circular orbits, much like planets orbit a star. Like
+planetary orbits, stars with larger galactic orbits are expected to
+have slower orbital speeds (this is just a statement of Kepler's 3rd Law).
+Actually, Kepler's 3rd Law only applies to stars near the perimeter of a Spiral
+Galaxy, because it assumes the mass enclosed by the orbit to be
+constant.
+</para>
+
+<para>
+However, astronomers have made observations of the orbital speeds of
+stars in the outer parts of a large number of spiral galaxies, and
+none of them follow Kepler's 3rd Law as expected. Instead of falling
+off at larger radii, the orbital speeds remain remarkably constant.
+The implication is that the mass enclosed by larger-radius orbits
+increases, even for stars that are apparently near the edge of the
+galaxy. While they are near the edge of the luminous part of the
+galaxy, the galaxy has a mass profile that apparently continues well
+beyond the regions occupied by stars.
+</para>
+
+<para>
+Here is another way to think about it: Consider the stars near the
+perimeter of a spiral galaxy, with typical observed orbital
+velocities of 200 kilometers per second. If the galaxy consisted of
+only the matter that we can see, these stars would very quickly fly
+off from the galaxy, because their orbital speeds are four times
+larger than the galaxy's escape velocity. Since galaxies are not seen
+to be spinning apart, there must be mass in the galaxy that we are not
+accounting for when we add up all the parts we can see.
+</para>
+
+<para> Several theories have surfaced in literature to account for the
+missing mass such as <acronym>WIMP</acronym>s (Weakly Interacting
+Massive Particles), <acronym>MACHO</acronym>s (MAssive Compact Halo
+Objects), primordial black holes, massive neutrinos, and others; each
+with their pros and cons. No single theory has yet been accepted by
+the astronomical community, because we so far lack the means to
+conclusively test one theory against the other. </para>
+
+<tip>
+<para>
+You can see the galaxy clusters that Professor Zwicky studied to
+discover Dark Matter. Use the &kstars; Find Object Window
+(<keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo>) to
+center on <quote>M 87</quote> to find the Virgo Cluster, and on
+<quote>NGC 4884</quote> to find the Coma Cluster. You may have to
+zoom in to see the galaxies. Note that the Virgo Cluster appears to
+be much larger on the sky. In reality, Coma is the larger cluster;
+it only appears smaller because it is further away.
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/dcop.docbook b/doc/kstars/dcop.docbook
new file mode 100644
index 00000000..b17539bf
--- /dev/null
+++ b/doc/kstars/dcop.docbook
@@ -0,0 +1,229 @@
+<chapter id="dcop">
+<title>Scripting KStars: The DCOP Interface</title>
+<para>
+One of the goals of &kstars; is to provide the ability to playback
+complicated behaviors from a script. This will allow you to
+create <quote>virtual tours</quote> of the heavens, and will enable
+teachers to construct classroom demos to illustrate certain
+astronomical concepts. It is already possible to write such scripts
+for &kstars;, although not all of the desired functions have been
+included. Also, while we will eventually have a GUI-based script
+builder tool, the scripts must currently be written by hand. This
+chapter will explain how to write &kstars; scripts.
+</para>
+<para>
+The &kde; architecture provides the necessary framework for scriptable
+applications via the <abbrev>DCOP</abbrev> interface.
+<abbrev>DCOP</abbrev> stands for <quote>Desktop Communication
+Protocol</quote>; through <abbrev>DCOP</abbrev>, &kde; applications
+can be controlled by other applications, from a terminal prompt, or
+through a text script.
+</para>
+
+<sect1 id="dcop-interface">
+<title>DCOP Functions</title>
+<para>
+The &kstars; <abbrev>DCOP</abbrev> Interface includes the following
+functions:
+
+<itemizedlist>
+<listitem><para><function>
+lookTowards( const QString direction )</function>:
+Point the display focus in a direction specified by the argument.
+This can be the name of any object in the sky, or one of the following
+directional words or abbreviations: zenith (or z), north (n),
+northeast (ne), east (e), southeast (se), south (s), southwest(sw),
+west(w), northwest (nw).
+</para></listitem>
+
+<listitem><para><function>
+setRaDec( double ra, double dec )</function>:
+Point the display focus at the specified equatorial coordinates.
+</para></listitem>
+
+<listitem><para><function>
+setAltAz(double alt, double az)</function>:
+Point the display focus at the specified horizontal coordinates.
+</para></listitem>
+
+<listitem><para><function>
+zoomIn()</function>:
+Increase the display's Zoom level.
+</para></listitem>
+
+<listitem><para><function>
+zoomOut()</function>:
+Decrease the display's Zoom level.
+</para></listitem>
+
+<listitem><para><function>
+defaultZoom()</function>:
+Reset the display to Zoom level = 3 (the default).
+</para></listitem>
+
+<listitem><para><function>
+setLocalTime(int yr, int mth, int day, int hr, int min, int sec)</function>:
+Set the simulation clock to the specified date and time.
+</para></listitem>
+
+<listitem><para><function>
+waitFor( double t )</function>:
+Pause for t seconds before continuing with subsequent script commands.
+</para></listitem>
+
+<listitem><para><function>
+waitForKey( const QString k )</function>:
+Halt the script execution until the user presses the specified key.
+At this point, you cannot specify combination keystrokes (such as
+<keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); just use
+simple keys. You can type <quote>space</quote> to indicate the
+spacebar.
+</para></listitem>
+
+<listitem><para><function>
+setTracking( bool track )</function>:
+Toggle whether tracking mode is engaged.
+</para></listitem>
+
+<listitem><para><function>
+changeViewOption( const QString option, const QString value )</function>:
+Adjust a view option. There are dozens and dozens of options available;
+basically everything you can change in the <guilabel>Configure &kstars;
+Window</guilabel> can be changed here as well. The first argument is
+the name of the option (the names are taken from the
+<filename>kstarsrc</filename> configuration file), and the second
+argument is the desired value. The argument parser is designed to be
+robust, so if you accidentally send it bad data it should fail
+gracefully.
+</para></listitem>
+
+<listitem><para><function>
+setGeoLocation( const QString city, const QString province,
+const QString country )</function>:
+Change the observing location to the specified city. If no city matching
+the argument strings is found, then nothing happens.
+</para></listitem>
+
+<listitem><para><function>
+stop()</function> [clock]:
+Halt the simulation clock.
+</para></listitem>
+
+<listitem><para><function>
+start()</function> [clock]:
+Start the simulation clock.
+</para></listitem>
+
+<listitem><para><function>
+setScale(float s)</function> [clock]:
+Set the rate of the simulation clock. s=1.0 corresponds to real time;
+2.0 is twice as fast as real-time, etc.
+</para></listitem>
+</itemizedlist>
+</para>
+</sect1>
+
+<sect1 id="dcop-test">
+<title>Testing the DCOP Functions</title>
+<para>
+You can try out the DCOP functions very easily using the
+<application>kdcop</application> program. When you run
+<application>kdcop</application>, you will see a tree-list of all
+running programs; if &kstars; is running it will be listed. Most of
+the <abbrev>DCOP</abbrev> functions are listed under the
+<quote>KStarsInterface</quote> heading, but the clock functions are
+listed under <quote>clock</quote>. Double-click on any function to
+execute it. If the function requires arguments, a window will open
+in which you can input the values.
+</para>
+</sect1>
+
+<sect1 id="dcop-script">
+<title>Writing a DCOP Script</title>
+<para>
+<abbrev>DCOP</abbrev> functions can also be called from the UNIX
+command line, and these can be encapsulated in a script. We will
+create an example script that switches to Equatorial coordinates,
+points the display at the Moon, zooms in a bit, and accelerates
+the clock to 1 hour per second. After tracking the Moon
+for 20 seconds, the clock is paused and the display zooms out.
+You can use this script as a template for making new scripts.
+I will list the entire script first, and then explain its various
+parts.
+</para>
+<para>
+<programlisting>
+#!/bin/bash
+#KStars script: Track the Moon!
+#
+KSTARS=`dcopfind -a 'kstars*'`
+MAIN=KStarsInterface
+CLOCK=clock#1
+dcop $KSTARS $MAIN changeViewOption UseAltAz false
+dcop $KSTARS $MAIN lookTowards Moon
+dcop $KSTARS $MAIN defaultZoom
+dcop $KSTARS $MAIN zoomIn
+dcop $KSTARS $MAIN zoomIn
+dcop $KSTARS $MAIN zoomIn
+dcop $KSTARS $MAIN zoomIn
+dcop $KSTARS $MAIN zoomIn
+dcop $KSTARS $CLOCK setScale 3600.
+dcop $KSTARS $CLOCK start
+dcop $KSTARS $MAIN waitFor 20.
+dcop $KSTARS $CLOCK stop
+dcop $KSTARS $MAIN defaultZoom
+##
+</programlisting>
+</para>
+<para>
+Save this script to a file. The filename can be anything you like; I
+suggest something descriptive like
+<filename>trackmoon.kstars</filename>. Then type the following command
+to make the script executable:
+<userinput><command>chmod</command> <option>a+x</option>
+<parameter>trackmoon.kstars</parameter>
+</userinput>. The script can then be executed at any time by typing
+<userinput><command>./trackmoon.kstars</command></userinput> in the
+folder which contains the script. Note that the script will only
+work if an instance of &kstars; is already running. You can use the
+<command>dcopstart</command> command in a script to launch a new instance
+&kstars;.
+</para>
+<para>
+Now to the explanation of the script. The top line identifies the file
+as a <command>BASH</command> shell script. The following two lines
+are <firstterm>comments</firstterm> (any line beginning with
+<quote>#</quote> is a comment, and is ignored by the shell). The next
+three lines define some convenience variables that will be used later.
+The <varname>KSTARS</varname> variable identifies the currently-running
+&kstars; process, using the <command>dcopfind</command> command.
+<varname>MAIN</varname> and <varname>CLOCK</varname> identify the
+two <abbrev>DCOP</abbrev> interfaces associated with &kstars;.
+</para>
+<para>
+The remainder of the script is the actual list of <abbrev>DCOP</abbrev>
+calls. The first command sets the display to use Equatorial
+coordinates by setting the <quote>UseAltAz</quote> option to
+<quote>false</quote> (again, you can see a list of all options that
+<quote>changeViewOption</quote> can use by examining your
+<filename>kstarsrc</filename> configuration file). The next command
+centers the display on the Moon, and automatically engages tracking.
+We then set the default zoom level, and then zoom in five times.
+Next, the clock's timescale is set to 1 hour per second (3600 seconds
+is one hour), and the clock is started (in case it was not already
+running). The next line pauses the script for 20 seconds while we
+track the Moon as it moves across the sky. Finally, we stop the clock
+and reset the zoom level to its default setting.
+</para>
+<para>
+We hope you enjoy the scripting abilities of KStars. If you create an
+interesting script, please email it to
+<email>kstars@30doradus.org</email>; we would like to see what you have done,
+and may post some scripts on our webpage. Also, if you have any
+ideas for how to improve scripting (or any part of &kstars;), let us
+know at <email>kstars-devel@lists.sourceforge.net</email> or submit a
+wishlist item to bugzilla.
+</para>
+</sect1>
+</chapter>
+
diff --git a/doc/kstars/detaildialog.png b/doc/kstars/detaildialog.png
new file mode 100644
index 00000000..9813dfd8
--- /dev/null
+++ b/doc/kstars/detaildialog.png
Binary files differ
diff --git a/doc/kstars/details.docbook b/doc/kstars/details.docbook
new file mode 100644
index 00000000..4defd377
--- /dev/null
+++ b/doc/kstars/details.docbook
@@ -0,0 +1,113 @@
+<sect1 id="tool-details">
+<title>Object Details Window</title>
+<indexterm><primary>Tools</primary>
+<secondary>Object Details Window</secondary></indexterm>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Details</secondary></indexterm>
+
+<screenshot>
+<screeninfo>
+The Object Details Window
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="detaildialog.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Object Details Window</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The Object Details Window presents advanced data available about
+a specific object in the sky. To access this tool,
+<mousebutton>right</mousebutton>-click on any object, and select the
+<guimenuitem>Details...</guimenuitem> item from the popup menu.
+</para>
+<para>
+The window is divided into a number of Tabs. In the
+<guilabel>General</guilabel> Tab, we present basic data about
+the current object. This includes names and catalog designations,
+object type, and <link linkend="ai-magnitude">magnitude</link>
+(brightness). Also shown are the object's Equatorial and Horizontal
+coordinates, as well as its rise, set and transit times.
+</para>
+<para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Internet Links</secondary>
+<tertiary>Customizing</tertiary></indexterm>
+In the <guilabel>Links</guilabel> tab, you can manage the internet
+links associated with this object. The Image and Information links
+associated with the object are listed. These are the links that
+appear in the popup menu when the object is
+<mousebutton>right</mousebutton>-clicked. You can add custom
+links to the object with the <guibutton>Add Link...</guibutton>
+button. This will open a window in which you fill in the URL and link
+text for the new link (you can also test the URL in the web browser
+from this window). Keep in mind that the custom link can easily point
+to a file on your local disk, so you can use this feature to index
+your personal astronomical images or observing logs.
+</para>
+<para>
+You can also modify or remove any link using the
+<guibutton>Edit Link...</guibutton> and
+<guibutton>Remove Link...</guibutton> buttons.
+</para>
+<para>
+The <guilabel>Advanced</guilabel> Tab allows you to query professional
+astronomical databases on the internet for information regarding the
+current object. To use these databases, simply highlight the
+desired database in the list, and press the <guibutton>View</guibutton>
+button to see the results of your query in a web browser window. The
+query is made using the primary name of the object you clicked on to
+open the Details Dialog. The following databases are available for
+querying:
+
+<itemizedlist>
+<listitem><para>High Energy Astrophysical Archive (HEASARC). Here you
+can retrieve data about the current object from a number of
+<quote>High-energy</quote> observatories, which covers the
+Ultraviolet, X-ray and Gamma Ray portions of the electromagnetic
+spectrum.</para></listitem>
+<listitem><para>Multimission Archive at Space Telescope (MAST).
+The Space Telescope Science Institute provides access to the entire
+collection of images and spectra taken with the Hubble Space
+Telescope, as well as several other space-based observatories.
+</para></listitem>
+<listitem><para>NASA Astrophysical Data System (ADS). This
+incredible bibliographic database encompass the entire body of
+literature published in international peer-review Journals about
+astronomy and astrophysics. The database is divided into four
+general subject areas (Astronomy and Astrophysics, Astrophysics
+Preprints, Instrumentation, and Physics and Geophysics). Each of these
+has three sub-nodes that query the database
+in different ways. <quote>Keyword search</quote> will return articles
+which listed the object's name as a keyword. <quote>Title word
+search</quote> will return articles which included the object name in
+their Title, and the <quote>Title &amp; Keyword search</quote> uses
+both options together.
+</para></listitem>
+<listitem><para>NASA/IPAC Extragalactic Database (NED). NED provides
+encapsulated data and bibliographic links about
+extragalactic objects. You should only use NED if your target is
+extragalactic; &ie; if it is itself a galaxy.
+</para></listitem>
+<listitem><para>Set of Identifications, Measurements, and Bibliography
+for Astronomical Data (SIMBAD). SIMBAD is similar to NED, except it
+provides data about all kinds of objects, not just galaxies.
+</para></listitem>
+<listitem><para>SkyView provides images from All-Sky surveys that have
+been performed in dozens of different parts of the spectrum, from
+Gamma Rays to the Radio. The &kstars; interface will retrieve an image
+from any of these surveys, centered on the selected object.
+</para></listitem>
+</itemizedlist>
+</para>
+<para>
+Finally, in the <guilabel>Log</guilabel> Tab, you can type in some text
+that will remain associated with this object's Details window.
+You could use this to attach personal observing notes, for example.
+</para>
+</sect1>
+
diff --git a/doc/kstars/devicemanager.png b/doc/kstars/devicemanager.png
new file mode 100644
index 00000000..6268a3ec
--- /dev/null
+++ b/doc/kstars/devicemanager.png
Binary files differ
diff --git a/doc/kstars/dumpmode.docbook b/doc/kstars/dumpmode.docbook
new file mode 100644
index 00000000..19fdbcf8
--- /dev/null
+++ b/doc/kstars/dumpmode.docbook
@@ -0,0 +1,67 @@
+<chapter id="dumpmode">
+<title>Command-Line mode for Image Generation</title>
+<indexterm><primary>Image-dump Mode</primary></indexterm>
+
+<para>
+You can use &kstars; to generate an image of the sky
+without actually launching the <acronym>GUI</acronym>
+portion of the program. To use this feature, start
+&kstars; from a command prompt using arguments to
+specify the filename for the image, as well as the
+desired image dimensions:
+
+<cmdsynopsis>
+<command>kstars</command>
+<arg choice="plain">--dump</arg>
+<arg>--filename <replaceable>kstars.png</replaceable></arg>
+<arg>--height <replaceable>640</replaceable></arg>
+<arg>--width <replaceable>480</replaceable></arg>
+<arg>--script <replaceable>myscript.kstars</replaceable></arg>
+<arg>--date <replaceable>"4 July 1976
+12:30:00"</replaceable></arg>
+</cmdsynopsis>
+</para>
+<para>
+If no filename is specified, it generates a file
+named <filename>kstars.png</filename>. It will attempt to
+generate an image that matches the extension of your filename.
+The following extensions are recognized: <quote>png</quote>,
+<quote>jpg</quote>, <quote>jpeg</quote>, <quote>gif</quote>,
+<quote>pnm</quote>, and <quote>bmp</quote>. If the filename
+extension is not recognized, it defaults to the
+<acronym>PNG</acronym> image type.
+</para>
+<para>
+Likewise, if the image width and height are not specified,
+they default to 640 and 480, respectively.
+</para>
+<para>
+By default, &kstars; will read in the options values stored in
+your <filename>$KDEHOME/share/config/kstarsrc</filename> file
+to determine where the image will be centered, and how it is
+rendered. This means you need to run &kstars; in normal GUI
+mode, and exit the program when it is set up with the desired
+options for the generated images. This is not very flexible,
+so we also provide the ability to execute a &kstars;
+<acronym>DCOP</acronym> script to set the scene before
+generating the image. The filename you specify as the
+script argument should be a valid &kstars;
+<acronym>DCOP</acronym> script, such as one created with the
+<link linkend="tool-scriptbuilder">Script Builder Tool</link>.
+The script can be used to set where the image is pointing,
+set the geographic location, set the time and date, change the
+Zoom level, and adjust other view options. Some of the
+<acronym>DCOP</acronym> functions make no sense in non-GUI
+mode (such as <function>waitForKey()</function>); if these
+functions are encountered while parsing the script, they are
+simply ignored.
+</para>
+<para>
+By default, &kstars; will use the system CPU time and date for
+generating the image. Alternatively, you may specify a time
+and date with the <quote>--date</quote> argument. You can also
+use this argument for specifying the startup date in normal
+GUI mode.
+</para>
+
+</chapter>
diff --git a/doc/kstars/ecliptic.docbook b/doc/kstars/ecliptic.docbook
new file mode 100644
index 00000000..3061dd1b
--- /dev/null
+++ b/doc/kstars/ecliptic.docbook
@@ -0,0 +1,58 @@
+<sect1 id="ai-ecliptic">
+<sect1info>
+<author>
+<firstname>John</firstname>
+<surname>Cirillo</surname>
+</author>
+</sect1info>
+<title>The Ecliptic</title>
+<indexterm><primary>Ecliptic</primary>
+<seealso>Ecliptic Coordinates</seealso>
+</indexterm>
+<para>
+The ecliptic is an imaginary <link linkend="ai-greatcircle">Great Circle</link>
+on the <link linkend="ai-csphere">Celestial Sphere</link> along which the Sun
+appears to move over the course of a year. Of course, it is really the
+Earth's orbit around the Sun causing the change in the Sun's apparent
+direction. The ecliptic is inclined from the <link linkend="ai-cequator">Celestial
+Equator</link> by 23.5 degrees. The two points where the Ecliptic crosses
+the Celestial Equator are known as the <link
+linkend="ai-equinox">Equinoxes</link>.
+</para><para>
+Since our solar system is relatively flat, the orbits of the planets are
+also close to the plane of the ecliptic. In addition, the constellations of the
+zodiac are located along the ecliptic. This makes the ecliptic a very useful
+line of reference to anyone attempting to locate the planets or the
+constellations of the zodiac, since they all literally <quote>follow the
+Sun</quote>.
+</para><para>
+Because of the 23.5-degree tilt of the Ecliptic, the
+<firstterm>Altitude</firstterm> of the Sun at noon changes over the course of the
+year, as it follows the path of the Ecliptic across the sky. This causes the
+seasons. In the Summer, the Sun is high in the sky at noon,
+and it remains above the <link linkend="ai-horizon">Horizon</link> for more than
+twelve hours. Whereas, in the winter, the Sun is low in the sky at noon, and remains
+above the Horizon for less than twelve hours. In addition, sunlight is received at
+the Earth's surface at a more direct angle in the Summer, which means that a given
+area at the surface receives more energy per second in the Summer than in Winter.
+The differences in day duration and in energy received per unit area lead to the
+differences in temperature we experience in Summer and Winter.
+</para>
+<tip>
+<para>Exercises:</para>
+<para>
+Make sure your location is set to somewhere that is not very near the equator
+for these experiments. Open the <guilabel>Configure &kstars;</guilabel> window, and
+switch to Horizontal coordinates, with the Opaque Ground shown. Open the
+<guilabel>Set Time</guilabel> window
+(<keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>),and change the
+Date to sometime in the middle of Summer, and the Time to 12:00 Noon. Back in
+the Main Window, point toward the Southern Horizon (press <keycap>S</keycap>).
+Note the height of the Sun above the Horizon at Noon in the Summer. Now, change
+the Date to something in the middle of Winter (but keep the Time at 12:00 Noon).
+The Sun is now much lower in the Sky. You will also notice that the day durations
+are different if you open the <guilabel>What's Up Tonight?</guilabel> tool for
+each date.
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/ellipticalgalaxies.docbook b/doc/kstars/ellipticalgalaxies.docbook
new file mode 100644
index 00000000..eaa84783
--- /dev/null
+++ b/doc/kstars/ellipticalgalaxies.docbook
@@ -0,0 +1,115 @@
+<sect1 id="ai-ellipgal">
+<sect1info>
+<author>
+<firstname>Jasem</firstname>
+<surname>Mutlaq</surname>
+<affiliation><address>
+</address></affiliation>
+</author>
+</sect1info>
+
+<title>Elliptical Galaxies</title>
+<indexterm><primary>Elliptical Galaxies</primary>
+</indexterm>
+
+<para> Elliptical galaxies are spheroidal concentrations of billions
+of stars that resemble Globular Clusters on a grand scale. They have
+very little internal structure; the density of stars declines smoothly
+from the concentrated center to the diffuse edge, and they can have a
+broad range of ellipticities (or aspect ratios). They typically
+contain very little interstellar gas and dust, and no young stellar
+populations (although there are exceptions to these rules). Edwin
+Hubble referred to Elliptical galaxies as <quote>early-type</quote>
+galaxies, because he thought that they evolved to become Spiral
+Galaxies (which he called <quote>late-type</quote> galaxies).
+Astronomers actually now believe the opposite is the case (&ie;, that
+Spiral galaxies can turn into Elliptical galaxies), but Hubble's
+early- and late-type labels are still used. </para>
+
+<para>
+Once thought to be a simple galaxy type, ellipticals are now known to
+be quite complex objects. Part of this complexity is due
+to their amazing history: ellipticals are thought to be the end
+product of the merger of two Spiral galaxies. You can
+view a computer simulation MPEG movie of such a merger at <ulink
+url="http://oposite.stsci.edu/pubinfo/pr/2002/11/vid/v0211d3.mpg">
+this NASA HST webpage</ulink> (warning: the file is 3.4 MB).
+</para>
+
+<para>
+Elliptical galaxies span a very wide range of sizes and
+luminosities, from giant Ellipticals hundreds of thousands of light
+years across and nearly a trillion times brighter than the sun, to
+dwarf Ellipticals just a bit brighter than the average globular
+cluster. They are divided to several morphological classes:
+</para>
+
+<variablelist>
+<varlistentry>
+<term>cD galaxies:</term>
+<listitem><para>
+Immense and bright objects that can
+measure nearly 1 Megaparsec (3 million light years) across. These
+titans are only found near the centers of large, dense clusters of
+galaxies, and are likely the result of many galaxy
+mergers.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Normal Elliptical galaxies</term>
+<listitem><para>Condensed Object with
+relatively high central surface brightness. They include the giant
+ellipticals (gE'e), intermediate-luminosity ellipticals (E's), and
+compact ellipticals.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Dwarf elliptical galaxies (dE's)</term>
+<listitem><para> This class of
+galaxies is fundamentally different from normal ellipticals. Their
+diameters on the order of 1 to 10 kiloparsec with surface brightness
+that is much lower than normal ellipticals, giving them a much more
+diffuse appearance. They display the same characteristic gradual
+decline of star density from a relatively dense core out to a diffuse
+periphery.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Dwarf spheroidal galaxies (dSph's)</term>
+<listitem><para>Extreme low-luminosity, low
+surface-brightness and have only been observed in the vicinity of the
+Milky Way, and possibly other very nearby galaxy groups, such as the
+Leo group. Their absolute magnitudes are only -8 to -15 mag.
+The Draco dwarf spheroidal galaxy has an absolute magnitude of -8.6,
+making it fainter than the average globular cluster in the Milky Way!
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Blue compact dwarf galaxies (BCD's)</term>
+<listitem>
+<para> Small galaxies that are unusually
+blue. Thehave photometric colors of B-V = 0.0 to 0.30 mag, which is
+typical for relatively young stars of <firstterm>spectral type</firstterm> A.
+This suggests that BCDs
+are currently actively forming stars. These systems also have
+abundant interstellar gas (unlike other Elliptical galaxies).
+</para></listitem>
+</varlistentry>
+</variablelist>
+
+<tip>
+<para>
+You can see examples of Elliptical galaxies in &kstars;, using the Find
+Object window
+(<keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo>).
+Search for NGC 4881, which is the Giant cD galaxy in the Coma
+cluster of galaxies. M 86 is a normal Elliptical galaxy in the Virgo
+cluster of galaxies. M 32 is a dwarf Elliptical that is a satellite
+of our neighbor, the Andromeda galaxy (M 31). M 110 is another
+satellite of M 31 that is a borderline dwarf spheroidal galaxy
+(<quote>borderline</quote> because it is somewhat brighter than most other
+dwarf spheroidals).
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/equinox.docbook b/doc/kstars/equinox.docbook
new file mode 100644
index 00000000..6d98ccc6
--- /dev/null
+++ b/doc/kstars/equinox.docbook
@@ -0,0 +1,37 @@
+<sect1 id="ai-equinox">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>The Equinoxes</title>
+<indexterm><primary>Equinoxes</primary>
+<seealso>Celestial Equator</seealso>
+<seealso>Ecliptic</seealso>
+</indexterm>
+<para>
+Most people know the Vernal and Autumnal Equinoxes as
+calendar dates, signifying the beginning of the Northern hemisphere's Spring
+and Autumn, respectively. Did you know that the equinoxes are also positions in
+the sky?
+</para><para>
+The <link linkend="ai-cequator">Celestial Equator</link> and the
+<link linkend="ai-ecliptic">Ecliptic</link> are two
+<link linkend="ai-greatcircle">Great Circles</link> on the
+<link linkend="ai-csphere">Celestial Sphere</link>, set at an angle of 23.5
+degrees. The two points where they intersect are called the
+<firstterm>Equinoxes</firstterm>. The <firstterm>Vernal Equinox</firstterm>
+has coordinates RA=0.0 hours, Dec=0.0 degrees. The <firstterm>Autumnal
+Equinox</firstterm> has coordinates RA=12.0 hours, Dec=0.0 degrees.
+</para><para>
+The Equinoxes are important for marking the seasons. Because they are on
+the <link linkend="ai-ecliptic">Ecliptic</link>, the Sun passes through each
+equinox every year. When the Sun passes through the Vernal Equinox (usually on
+March 21st), it crosses the <link linkend="ai-cequator">Celestial Equator</link>
+from South to North, signifying the end of Winter for the Northern hemisphere.
+Similarly, whenthe Sun passes through the Autumnal Equinox (usually on September
+21st), it crosses the Celestial Equator from North to South, signifying the
+end of Winter for the Southern hemisphere.
+</para>
+</sect1>
diff --git a/doc/kstars/faq.docbook b/doc/kstars/faq.docbook
new file mode 100644
index 00000000..e1ed1d23
--- /dev/null
+++ b/doc/kstars/faq.docbook
@@ -0,0 +1,274 @@
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+
+<qandaentry>
+<question>
+<para>What is the &kstars; Icon?</para>
+</question>
+<answer>
+<para>
+The <guiicon>&kstars; Icon</guiicon> is a sextant, a handheld telescope which
+was used by navigators on sailing ships back when the stars were important for
+navigation. By carefully reckoning the positions of the stars, the navigator
+could get an accurate estimate of the ship's current <link
+linkend="ai-geocoords">longitude and latitude</link>.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>What do the different symbols for deep-sky objects mean?</para>
+</question>
+<answer>
+<para>
+The symbol indicates the object type:
+<itemizedlist>
+<listitem><para>dotted circle: Open Cluster</para></listitem>
+<listitem><para>cross-in-circle: Globular Cluster</para></listitem>
+<listitem><para>box: Gaseous Nebula</para></listitem>
+<listitem><para>diamond: Supernova Remnant</para></listitem>
+<listitem><para>circle with outer lines: Planetary Nebula</para></listitem>
+<listitem><para>ellipse: Galaxy</para></listitem>
+</itemizedlist>
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>What do the different colors of Deep-sky objects mean?</para>
+</question>
+<answer>
+<para>
+Generally, the different colors indicate to which catalog the object
+belongs (Messier, NGC or IC). However, some objects have a different
+color which indicates that there are extra images available in the
+<link linkend="popup-menu">popup menu</link> (the default
+<quote>extras</quote> color is red).
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>
+Why are there so many more U.S. cities than in other countries?
+</para>
+</question>
+<answer>
+<para>
+When we started &kstars;, we were unable to find a longitude/latitude
+database that covered the globe equitably. However, the &kstars;
+community is rapidly overcoming this problem! We have already
+received city lists from many users around the world. If you can
+contribute to this effort, please send us your list of cities and
+coordinates.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>
+I have added a custom location to &kstars; that I no longer want. How
+do I remove it from the program?
+</para>
+</question>
+<answer>
+<para>
+You will have to edit the
+<filename>~/.kde/share/apps/kstars/mycities.dat</filename> file, and
+remove the location's line from that file.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>Why can I not display the ground when using Equatorial
+Coordinates?</para>
+</question>
+<answer>
+<para>
+The short answer is, this is a temporary limitation. There is a
+problem when constructing the filled polygon that represents the ground
+when in Equatorial mode. However, it does not make too much sense to draw
+the ground in equatorial coordinates, which is why this fix has been given
+a low priority.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>Why do some objects disappear when I am scrolling the
+display?</para>
+</question>
+<answer>
+<para>
+When the display is in motion, &kstars; must recompute the screen
+coordinates of every object in its database, which involves
+some pretty heavy trigonometry. When scrolling the display (either
+with the arrow keys or by dragging with the mouse), the display may
+become slow and jerky, because the computer is having trouble keeping
+up. By excluding many of the objects, the computational load is
+greatly reduced, which allows for smoother scrolling. You can turn
+off this feature in the <guilabel>Configure &kstars;</guilabel> window,
+and you can also configure which objects get hidden.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>I do not understand all the terms used in &kstars;. Where can I
+learn more about the astronomy behind the program?</para>
+</question>
+<answer>
+<para>
+The &kstars; Handbook includes the <link linkend="astroinfo">AstroInfo
+Project</link>; a series of short, hyperlinked articles about
+astronomical topics that can be explored and illustrated with &kstars;.
+AstroInfo is a community effort, like GNUpedia or Everything2. If
+you'd like to contribute to AstroInfo, please join our mailing list:
+<email>kstars-info@lists.sourceforge.net</email>.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>I want &kstars; to start up with a time and date different from
+my system CPU clock. Is this possible?</para>
+</question>
+<answer>
+<para>
+Yes; to start kstars with a different time/date, use the
+<quote>--date</quote> argument, followed by a date string like
+<quote>4 July 1976 12:30:00</quote>
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>I want &kstars; to start up with the simulation clock paused.
+Is this possible?</para>
+</question>
+<answer>
+<para>
+Yes; to start kstars with the clock paused, simply add the
+<quote>--paused</quote> argument to the command line.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>How accurate/precise is &kstars;?</para>
+</question>
+<answer>
+<para>
+&kstars; is pretty accurate, but it is not (yet) as precise as it can
+possibly be. The problem with high-precision calculations is that
+you start having to deal with a large number of complicating factors.
+If you are not a professional astronomer, you will probably never have a
+problem with its accuracy or precision.
+</para>
+<para>
+Here is a list of some of the complicating factors which limit the
+program's precision:
+<itemizedlist>
+<listitem>
+<para>
+Planet positions are only accurate for dates within 4000 years
+or so of the current epoch. The planet positions are predicted using
+a Fourier-like analysis of their orbits, as observed over the past few
+centuries. We learnt in school that planets follow simple elliptical
+orbits around the Sun, but this is not strictly true. It would be true
+only if there was only one planet in the Solar system, and if the Sun
+and the planet were both point masses. As it is, the planets are
+constantly tugging on each other, perturbing the orbits slightly, and
+tidal effects also induce precessional wobbling. In fact, recent
+analysis suggests that the planets' orbits may not even be stable in
+the long term (i.e., millions or billions of years). As a rule of
+thumb, you can expect the position of a planet to be accurate to a few
+arcseconds between the dates -2000 and 6000.
+</para><para>
+Pluto is the exception to this; its position is perhaps ten times less
+precise than the positions of the other planets. Still, for dates
+near the present epoch, its position can be trusted to about an
+arcsecond.
+</para><para>
+The moon's position is the most difficult to predict to high precision.
+This is because its motion is quite perturbed by the Earth. Also,
+since it is so nearby, even minute effects that would be undetectable
+in more distant bodies are easily apparent in the moon.
+</para><para>
+The objects with the worst long-term precision in the program are the
+comets and asteroids. We use a very simplistic orbital model for the
+minor planets that does not include third-body perturbations.
+Therefore, their positions can only be trusted for dates near the
+present epoch. Even for the present epoch, one can expect positional
+errors among the minor planets of order 10 arcseconds or more.
+</para>
+</listitem>
+</itemizedlist>
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>Why do I have to download an improved NGC/IC catalog and Messier
+object images? Why not just include them as part of the &kstars; distribution?</para>
+</question>
+<answer>
+<para>
+The author of the downloadable NGC/IC catalog has released it with the restriction that it may not be used commercially. For most &kstars; users, this is not a problem. However, it is technically against the &kstars; license (the
+<acronym>GPL</acronym>) to restrict usage in this way. We removed the Messier object images from the standard distribution for two reasons: to simply reduce the size of &kstars;, and also because of similar licensing concerns with a couple of the images. The inline images are significantly compressed to a very low quality from their original form, so I doubt there is a real copyright concern, but I did obtain explicit permission from the images' authors to use the few images for which there was any question about it (see <filename>README.images</filename>). Still, just to be absolutely safe, I removed them from the standard distribution, and marked the download archive as being "free for non-commercial use".
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>I am really enjoying the beautiful images I have downloaded through &kstars;! I would like to share them with the world; can I publish a calendar featuring these images (or are there any usage restrictions on the images)?</para>
+</question>
+<answer>
+<para>
+It depends on the image, but many of the images restrict against commercial usage. The Image Viewer's statusbar will usually contain information about the image's copyright holder, and what usage restrictions apply. As a rule of thumb: anything published by NASA is in the public domain (including all HST images). For everything else, you can pretty safely assume that the images may not be used commercially without permission. When in doubt, contact the image's copyright holder directly.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>Can I help contribute to future versions of &kstars;?</para>
+</question>
+<answer>
+<para>
+Yes, definitely! Introduce yourself on our mailing list:
+<email>kstars-devel@kde.org</email>. If you want to
+help with the coding, download the latest <ulink
+url="http://edu.kde.org/kstars/cvs.html">CVS</ulink> version of the
+code and dive right in. There are several README files in the
+distribution that explain some of the code's subsystems. If you
+need ideas of what to work on, see the TODO file. You can submit
+patches to kstars-devel, and feel free to post any questions you
+have about the code there as well.
+</para><para>
+If you are not into coding, we can still use your help with i18n, docs,
+AstroInfo articles, URL links, bug reports, and feature requests.
+</para>
+</answer>
+</qandaentry>
+
+</qandaset>
+</chapter>
diff --git a/doc/kstars/find.png b/doc/kstars/find.png
new file mode 100644
index 00000000..0b43abdb
--- /dev/null
+++ b/doc/kstars/find.png
Binary files differ
diff --git a/doc/kstars/fitsarea.png b/doc/kstars/fitsarea.png
new file mode 100644
index 00000000..7d7f7381
--- /dev/null
+++ b/doc/kstars/fitsarea.png
Binary files differ
diff --git a/doc/kstars/fitsviewer.docbook b/doc/kstars/fitsviewer.docbook
new file mode 100644
index 00000000..e6875af5
--- /dev/null
+++ b/doc/kstars/fitsviewer.docbook
@@ -0,0 +1,59 @@
+<sect1 id="tool-fitsviewer">
+<title><acronym>FITS</acronym> Viewer Tool</title>
+<indexterm><primary>Tools</primary>
+<secondary>FITS Viewer</secondary>
+</indexterm>
+
+<para>The Flexible Image Transport System (FITS) is the standard format for representing images and data in Astronomy.</para>
+
+<para>The KStars FITS Viewer tool is integrated with the <link linkend="indi">INDI</link> framework for seamless display and manipulation of captured FITS images. Furthermore, the FITS Viewer can be used to post-process raw data. To open a FITS file, select <guimenuitem>Open FITS...</guimenuitem> from the
+<guimenu>File</guimenu> menu, or press <keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>.</para>
+
+<para>FITS Viewer features:</para>
+<itemizedlist>
+ <listitem><para>Support for 8, 16, 32, IEEE -32, and IEEE -64 bits formats.</para></listitem>
+ <listitem><para>Histogram with auto, linear, logarithmic, and square-root scales.</para></listitem>
+ <listitem><para>Image reduction tool.</para></listitem>
+ <listitem><para>Brightness/Contrast controls.</para></listitem>
+ <listitem><para>Pan and Zoom.</para></listitem>
+ <listitem><para>Auto levels.</para></listitem>
+ <listitem><para>Statistics.</para></listitem>
+ <listitem><para>FITS header query.</para></listitem>
+ <listitem><para>Undo/Redo.</para></listitem>
+</itemizedlist>
+
+<screenshot>
+ <screeninfo>The FITS Viewer Tool</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="fitsarea.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>FITS Viewer Tool</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>The above diagram illustrates the FITS Viewer work area and window. The tool provides basic functions for image display and processing. FITS data depth is preserved throughout all processing, open, and save functions. While the tool adhere to the FITS standard, it does not support all possible FITS features:</para>
+<itemizedlist>
+ <listitem><para>Support for only <emphasis>one</emphasis> image per file.</para></listitem>
+ <listitem><para>Support for only 2D data. 1D and 3D data are discarded.</para></listitem>
+ <listitem><para>No support for WCS (World Coordinate System).</para></listitem>
+</itemizedlist>
+
+<para>The following is a brief description of the tool's functional units:</para>
+<itemizedlist>
+ <listitem><para>Brightness/Contrast: Adjusts brightness and contrast. The function can be CPU and memory intensive for very large FITS.</para></listitem>
+ <listitem><para>Histogram: Displays one-channel FITS histogram. The user can rescale the image by optionally defining an upper and lower limit for the cutoff region. The rescaling operation (linear, logarithmic, or square-root) may then be applied to the region enclosed by the upper and lower limits.</para></listitem>
+ <listitem><para>Image reduction: Removes background noise and optical anamolies from the image. Raw CCD images are often processed to remove instrument and temperature noise, in addition to aberrations inherit in the optical system. The function supports three types of raw CCD frames:</para>
+ <orderedlist>
+ <listitem><para>Dark Frames</para></listitem>
+ <listitem><para>Flat Field Frames</para></listitem>
+ <listitem><para>Dark Flat Field Frames</para></listitem>
+ </orderedlist>
+ <para>The user can stack up multiple frames in each category to increase the signal-to-noise ratio. Two combination methods are provided: mean and median. The two methods produce similar results most of the time, but the median method insures that the data is not skewed due to random cosmic ray hits.</para>
+ </listitem>
+ <listitem><para>Statistics: Provides simple statistics for minimum and maximum pixel values and the their respective locations. FITS depth, dimension, mean, and standard deviation.</para></listitem>
+ <listitem><para>FITS header: Displays FITS header information.</para></listitem>
+</itemizedlist>
+</sect1>
diff --git a/doc/kstars/flux.docbook b/doc/kstars/flux.docbook
new file mode 100644
index 00000000..ba24ea31
--- /dev/null
+++ b/doc/kstars/flux.docbook
@@ -0,0 +1,69 @@
+<sect1 id="ai-flux">
+
+<sect1info>
+
+<author>
+<firstname>Jasem</firstname>
+<surname>Mutlaq</surname>
+<affiliation><address>
+</address></affiliation>
+</author>
+</sect1info>
+
+<title>Flux</title>
+<indexterm><primary>Flux</primary>
+<seealso>Luminosity</seealso>
+</indexterm>
+
+<para>
+The <firstterm>flux</firstterm> is the amount of energy that passes through a unit area each second.
+</para>
+
+<para>
+Astronomers use flux to denote the apparent brightness of a celestial body. The apparent brightness is defined as the the amount of light received from a star
+above the earth atmosphere passing through a unit area each second. Therefore, the apparent brightness is simply the flux we receive from a star.
+</para>
+
+<para>
+The flux measures the <emphasis>rate of flow</emphasis> of energy that passes through each cm^2 (or any unit area) of an object's surface each second.
+The detected flux depends on the distance from the source that radiates the energy. This is because the energy has to spread over a volume of space before it reaches us.
+Let us assume that we have an imaginary balloon that encloses a star. Each dot on the balloon represents a unit of energy emitted from the star. Initially, the dots in an area
+of one cm^2 are in close proximity to each other and the flux (energy emitted per square centimeter per second) is high. After a distance d, the volume and surface area of the
+balloon increased causing the dots to <emphasis>spread away</emphasis> from each. Consequently, the number of dots (or energy) enclosed in one cm^2 has decreased as illustrated in Figure 1.
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+<imagedata fileref="flux.png" format="PNG"/>
+</imageobject>
+<caption><para><phrase>Figure 1</phrase></para></caption>
+</mediaobject>
+</para>
+
+<para>
+The flux is inversely proportional to distance by a simple r^2 relation. Therefore, if the distance is doubled, we receive 1/2^2 or 1/4th of the original flux.
+From a fundamental standpoint, the flux is the <link linkend="ai-luminosity">luminosity</link> per unit area:
+
+<mediaobject>
+<imageobject>
+<imagedata fileref="flux1.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</para>
+
+<para>
+where (4 * PI * R^2) is the surface area of a sphere (or a balloon!) with a radius R.
+Flux is measured in Watts/m^2/s or as commonly used by astronomers: Ergs/cm^2/s.
+For example, the luminosity of the sun is L = 3.90 * 10^26 W. That is, in one second the sun radiates 3.90 * 10^26 joules of energy into space. Thus, the flux we receive
+passing through one square centimeter from the sun at a distance of one AU (1.496 * 10^13 cm) is:
+</para>
+
+<para>
+<mediaobject>
+<imageobject>
+<imagedata fileref="flux2.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</para>
+</sect1>
diff --git a/doc/kstars/flux.png b/doc/kstars/flux.png
new file mode 100644
index 00000000..252c1d8d
--- /dev/null
+++ b/doc/kstars/flux.png
Binary files differ
diff --git a/doc/kstars/flux1.png b/doc/kstars/flux1.png
new file mode 100644
index 00000000..96a078a8
--- /dev/null
+++ b/doc/kstars/flux1.png
Binary files differ
diff --git a/doc/kstars/flux2.png b/doc/kstars/flux2.png
new file mode 100644
index 00000000..aacdaea0
--- /dev/null
+++ b/doc/kstars/flux2.png
Binary files differ
diff --git a/doc/kstars/fovdialog.png b/doc/kstars/fovdialog.png
new file mode 100644
index 00000000..0135a21c
--- /dev/null
+++ b/doc/kstars/fovdialog.png
Binary files differ
diff --git a/doc/kstars/geocoords.docbook b/doc/kstars/geocoords.docbook
new file mode 100644
index 00000000..5dd04a8c
--- /dev/null
+++ b/doc/kstars/geocoords.docbook
@@ -0,0 +1,56 @@
+<sect1 id="ai-geocoords">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Geographic Coordinates</title>
+<indexterm><primary>Geographic Coordinate System</primary></indexterm>
+<indexterm><primary>Longitude</primary><see>Geographic Coordinate System</see></indexterm>
+<indexterm><primary>Latitude</primary><see>Geographic Coordinate System</see></indexterm>
+<para>
+Locations on Earth can be specified using a spherical coordinate system.
+The geographic (<quote>earth-mapping</quote>) coordinate system is aligned
+with the spin axis of the Earth. It defines two angles measured from
+the center of the Earth. One angle, called the <firstterm>Latitude</firstterm>,
+measures the angle between any point and the Equator. The other angle, called
+the <firstterm>Longitude</firstterm>, measures the angle
+<emphasis>along</emphasis> the Equator from an arbitrary point on the Earth
+(Greenwich, England is the accepted zero-longitude point in most modern
+societies).
+</para><para>
+By combining these two angles, any location on Earth can be specified.
+For example, Baltimore, Maryland (USA) has a latitude of 39.3 degrees
+North, and a longitude of 76.6 degrees West. So, a vector drawn from
+the center of the Earth to a point 39.3 degrees above the Equator and
+76.6 degrees west of Greenwich, England will pass through Baltimore.
+</para><para>
+The Equator is obviously an important part of this coordinate system; it
+represents the <emphasis>zeropoint</emphasis> of the latitude angle, and the
+halfway point between the poles. The Equator is the <firstterm>Fundamental
+Plane</firstterm> of the geographic coordinate system. <link
+linkend="ai-skycoords">All Spherical Coordinate Systems</link> define such a
+Fundamental Plane.
+</para><para>
+Lines of constant Latitude are called <firstterm>Parallels</firstterm>. They
+trace circles on the surface of the Earth, but the only parallel that is a <link
+linkend="ai-greatcircle">Great Circle</link> is the Equator (Latitude=0
+degrees). Lines of constant Longitude are called
+<firstterm>Meridians</firstterm>. The Meridian passing through Greenwich is the
+<firstterm>Prime Meridian</firstterm> (longitude=0 degrees). Unlike Parallels,
+all Meridians are great circles, and Meridians are not parallel: they intersect
+at the north and south poles.
+</para>
+<tip>
+<para>Exercise:</para>
+<para>
+What is the longitude of the North Pole? Its latitude
+is 90 degrees North.
+</para>
+<para>
+This is a trick question. The Longitude is meaningless at the north pole (and the
+south pole too). It has all longitudes at the same time.
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/geolocator.png b/doc/kstars/geolocator.png
new file mode 100644
index 00000000..65c29015
--- /dev/null
+++ b/doc/kstars/geolocator.png
Binary files differ
diff --git a/doc/kstars/greatcircle.docbook b/doc/kstars/greatcircle.docbook
new file mode 100644
index 00000000..109fba45
--- /dev/null
+++ b/doc/kstars/greatcircle.docbook
@@ -0,0 +1,27 @@
+<sect1 id="ai-greatcircle">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Great Circles</title>
+<indexterm><primary>Great Circles</primary>
+<seealso>Celestial Sphere</seealso>
+</indexterm>
+<para>
+Consider a sphere, such as the Earth, or the
+<link linkend="ai-csphere">Celestial Sphere</link>. The intersection
+of any plane with the sphere will result in a circle on the surface of
+the sphere. If the plane happens to contain the center of the sphere,
+the intersection circle is a <firstterm>Great Circle</firstterm>.
+Great circles are the largest circles that can be drawn on a sphere.
+Also, the shortest path between any two points on a sphere is always
+along a great circle.
+</para><para>
+Some examples of great circles on the celestial sphere include: the
+<link linkend="ai-horizon">Horizon</link>, the
+<link linkend="ai-cequator">Celestial Equator</link>, and the
+<link linkend="ai-ecliptic">Ecliptic</link>.
+</para>
+</sect1>
diff --git a/doc/kstars/horizon.docbook b/doc/kstars/horizon.docbook
new file mode 100644
index 00000000..23f61610
--- /dev/null
+++ b/doc/kstars/horizon.docbook
@@ -0,0 +1,25 @@
+<sect1 id="ai-horizon">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>The Horizon</title>
+<indexterm><primary>Horizon</primary>
+<seealso>Horizontal Coordinates</seealso>
+</indexterm>
+<para>
+The <firstterm>Horizon</firstterm> is the line that separates Earth from Sky.
+More precisely, it is the line that divides all of the directions you can
+possibly look into two categories: those which intersect the Earth,
+and those which do not. At many locations, the Horizon is
+obscured by trees, buildings, mountains, &etc;. However, if you are on
+a ship at sea, the Horizon is strikingly apparent.
+</para><para>
+The horizon is the <firstterm>Fundamental Plane</firstterm> of the <link
+linkend="horizontal">Horizontal Coordinate System</link>. In other
+words, it is the locus of points which have an <firstterm>Altitude</firstterm>
+of zero degrees.
+</para>
+</sect1>
diff --git a/doc/kstars/hourangle.docbook b/doc/kstars/hourangle.docbook
new file mode 100644
index 00000000..fc327446
--- /dev/null
+++ b/doc/kstars/hourangle.docbook
@@ -0,0 +1,33 @@
+<sect1 id="ai-hourangle">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Hour Angle</title>
+<indexterm><primary>Hour Angle</primary>
+<seealso>Local Meridian</seealso>
+<seealso>Sidereal Time</seealso>
+</indexterm>
+<para>
+As explained in the <link linkend="ai-sidereal">Sidereal Time</link> article,
+the <firstterm>Right Ascension</firstterm> of an object indicates the Sidereal
+Time at which it will transit across your <link linkend="ai-meridian">Local
+Meridian</link>. An object's <firstterm>Hour Angle</firstterm> is
+defined as the difference between the current Local Sidereal Time and the Right
+Ascension of the object:
+</para><para>
+<abbrev>HA</abbrev><subscript>obj</subscript> =
+<abbrev>LST</abbrev> - <abbrev>RA</abbrev><subscript>obj</subscript>
+</para><para>
+Thus, the object's Hour Angle indicates how much Sidereal Time has passed
+since the object was on the Local Meridian. It is also the angular distance
+between the object and the meridian, measured in hours (1 hour = 15 degrees).
+For example, if an object has an hour angle of 2.5 hours, it transited across
+the Local Meridian 2.5 hours ago, and is currently 37.5 degrees West of the
+Meridian. Negative Hour Angles indicate the time until the
+<emphasis>next</emphasis> transit across the Local Meridian. Of course, an Hour
+Angle of zero means the object is currently on the Local Meridian.
+</para>
+</sect1>
diff --git a/doc/kstars/index.docbook b/doc/kstars/index.docbook
new file mode 100644
index 00000000..14ac543c
--- /dev/null
+++ b/doc/kstars/index.docbook
@@ -0,0 +1,299 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY kappname "&kstars;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY astroinfo SYSTEM "astroinfo.docbook">
+ <!ENTITY blackbody SYSTEM "blackbody.docbook">
+ <!ENTITY calc-angdist SYSTEM "calc-angdist.docbook">
+ <!ENTITY calc-apcoords SYSTEM "calc-apcoords.docbook">
+ <!ENTITY calc-ecliptic SYSTEM "calc-ecliptic.docbook">
+ <!ENTITY calc-eqgal SYSTEM "calc-eqgal.docbook">
+ <!ENTITY calc-equinox SYSTEM "calc-equinox.docbook">
+ <!ENTITY calc-horiz SYSTEM "calc-horizontal.docbook">
+ <!ENTITY calc-planetcoords SYSTEM "calc-planetcoords.docbook">
+ <!ENTITY calc-precess SYSTEM "calc-precess.docbook">
+ <!ENTITY calc-geodetic SYSTEM "calc-geodetic.docbook">
+ <!ENTITY calc-dayduration SYSTEM "calc-dayduration.docbook">
+ <!ENTITY calc-julian SYSTEM "calc-julianday.docbook">
+ <!ENTITY calc-sidereal SYSTEM "calc-sidereal.docbook">
+ <!ENTITY calculator SYSTEM "calculator.docbook">
+ <!ENTITY cequator SYSTEM "cequator.docbook">
+ <!ENTITY colorandtemp SYSTEM "colorandtemp.docbook">
+ <!ENTITY commands SYSTEM "commands.docbook">
+ <!ENTITY config SYSTEM "config.docbook">
+ <!ENTITY contents SYSTEM "ai-contents.docbook">
+ <!ENTITY cpoles SYSTEM "cpoles.docbook">
+ <!ENTITY credits SYSTEM "credits.docbook">
+ <!ENTITY csphere SYSTEM "csphere.docbook">
+ <!ENTITY darkmatter SYSTEM "darkmatter.docbook">
+ <!ENTITY dumpmode SYSTEM "dumpmode.docbook">
+ <!ENTITY ecliptic SYSTEM "ecliptic.docbook">
+ <!ENTITY ellipgal SYSTEM "ellipticalgalaxies.docbook">
+ <!ENTITY equinox SYSTEM "equinox.docbook">
+ <!ENTITY faq SYSTEM "faq.docbook">
+ <!ENTITY flux SYSTEM "flux.docbook">
+ <!ENTITY geocoords SYSTEM "geocoords.docbook">
+ <!ENTITY greatcircle SYSTEM "greatcircle.docbook">
+ <!ENTITY horizon SYSTEM "horizon.docbook">
+ <!ENTITY hourangle SYSTEM "hourangle.docbook">
+ <!ENTITY indi SYSTEM "indi.docbook">
+ <!ENTITY install SYSTEM "install.docbook">
+ <!ENTITY julianday SYSTEM "julianday.docbook">
+ <!ENTITY leapyear SYSTEM "leapyear.docbook">
+ <!ENTITY lightcurves SYSTEM "lightcurves.docbook">
+ <!ENTITY luminosity SYSTEM "luminosity.docbook">
+ <!ENTITY magnitude SYSTEM "magnitude.docbook">
+ <!ENTITY meridian SYSTEM "meridian.docbook">
+ <!ENTITY parallax SYSTEM "parallax.docbook">
+ <!ENTITY precession SYSTEM "precession.docbook">
+ <!ENTITY quicktour SYSTEM "quicktour.docbook">
+ <!ENTITY retrograde SYSTEM "retrograde.docbook">
+ <!ENTITY sidereal SYSTEM "sidereal.docbook">
+ <!ENTITY skycoords SYSTEM "skycoords.docbook">
+ <!ENTITY spiralgal SYSTEM "spiralgalaxies.docbook">
+ <!ENTITY stars SYSTEM "stars.docbook">
+ <!ENTITY timezones SYSTEM "timezones.docbook">
+ <!ENTITY tool-aavso SYSTEM "lightcurves.docbook">
+ <!ENTITY tool-altvstime SYSTEM "altvstime.docbook">
+ <!ENTITY tool-calculator SYSTEM "calculator.docbook">
+ <!ENTITY tool-details SYSTEM "details.docbook">
+ <!ENTITY tool-whatsup SYSTEM "wut.docbook">
+ <!ENTITY tool-scriptbuilder SYSTEM "scriptbuilder.docbook">
+ <!ENTITY tool-solarsys SYSTEM "solarsys.docbook">
+ <!ENTITY tool-jmoons SYSTEM "jmoons.docbook">
+ <!ENTITY tool-observinglist SYSTEM "observinglist.docbook">
+ <!ENTITY tool-fitsviewer SYSTEM "fitsviewer.docbook">
+ <!ENTITY tools SYSTEM "tools.docbook">
+ <!ENTITY utime SYSTEM "utime.docbook">
+ <!ENTITY zenith SYSTEM "zenith.docbook">
+ <!ENTITY % addindex "INCLUDE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+<title>The &kstars; Handbook</title>
+<bookinfo>
+
+<authorgroup>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+<affiliation>
+<address><email>&Jason.Harris.mail;</email></address>
+</affiliation>
+</author>
+
+<othercredit role="developer">
+<firstname>Heiko</firstname>
+<surname>Evermann</surname>
+<affiliation>
+<address><email>&Heiko.Evermann.mail;</email></address>
+</affiliation>
+<contrib>Core Developer</contrib>
+</othercredit>
+
+<othercredit role="developer">
+<firstname>Thomas</firstname>
+<surname>Kabelmann</surname>
+<affiliation>
+<address><email>&Thomas.Kabelmann.mail;</email></address>
+</affiliation>
+<contrib>Core Developer</contrib>
+</othercredit>
+
+<othercredit role="developer">
+<firstname>Pablo</firstname>
+<surname>de Vicente</surname>
+<affiliation>
+<address><email>&Pablo.de.Vicente.mail;</email></address>
+</affiliation>
+<contrib>Core Developer</contrib>
+</othercredit>
+
+<othercredit role="developer">
+<firstname>Jasem</firstname>
+<surname>Mutlaq</surname>
+<affiliation>
+<address><email>mutlaqja@ikarustech.com</email></address>
+</affiliation>
+<contrib>Core Developer</contrib>
+</othercredit>
+
+<othercredit role="developer">
+<firstname>Carsten</firstname>
+<surname>Niehaus</surname>
+<affiliation>
+<address><email>cniehaus@gmx.de</email></address>
+</affiliation>
+<contrib>Core Developer</contrib>
+</othercredit>
+
+<othercredit role="developer">
+<firstname>Mark</firstname>
+<surname>Holloman</surname>
+<affiliation>
+<address><email>&Mark.Holloman.mail;</email></address>
+</affiliation>
+<contrib>Core Developer</contrib>
+</othercredit>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2001</year><year>2002</year><year>2003</year>
+<holder>&Jason.Harris; and the &kstars; Team</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2002-10-08</date>
+<releaseinfo>1.0</releaseinfo>
+
+<abstract>
+<para>
+&kstars; is a graphical desktop planetarium for &kde;. It depicts an
+accurate simulation of the night sky, including stars, constellations,
+star clusters, nebulae, galaxies, all planets, the Sun, the Moon,
+comets and asteroids. You can see the sky as it appears
+from any location on Earth, on any date. The user interface is highly
+intuitive and flexible; the display can be panned and zoomed with the
+mouse, and you can easily identify objects, and track their motion
+across the sky. &kstars; includes many powerful features, yet the
+interface is clean and simple, and fun to use.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>Astronomy</keyword>
+<keyword>KStars</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>
+&kstars; lets you explore the night sky from
+the comfort of your computer chair. It provides an accurate graphical
+representation of the night sky for any date, from any location on
+Earth. The display includes 126,000 stars to 9th magnitude (well below
+the naked-eye limit), 13,000 deep-sky objects (Messier, NGC, and IC
+catalogs), all planets, the Sun and Moon, hundreds of comets and
+asteroids, the Milky Way, 88 constellations, and guide lines such as
+the <link linkend="ai-cequator">celestial equator</link>,
+the <link linkend="ai-horizon">horizon</link> and
+the <link linkend="ai-ecliptic">ecliptic</link>.
+</para>
+<para>
+However, &kstars; is more than a simple night-sky simulator. The
+display provides a compelling interface to a number of tools with
+which you can learn more about astronomy and the night sky. There is
+a context-sensitive <link linkend="popup-menu">popup menu</link>
+attached to each displayed object, which displays object-specific
+information and actions. Hundreds of objects provide links in their
+popup menus to informative web pages and beautiful images taken by the
+Hubble Space Telescope and other observatories.
+</para><para>
+From an object's popup menu, you can open its <link
+linkend="tool-details">Detailed Information Window</link>, where
+you can examine positional data about the object, and query a huge
+treasury of online databases for professional-grade astronomical data
+and literature references about the object. You can even attach your
+own Internet links, images and text notes, making &kstars; a graphical
+front-end to your observing logs and your personal astronomical notebook.
+</para>
+<para>
+Our <link linkend="tool-calculator">Astrocalculator</link> tool
+provides direct access to many of the algorithms the program uses
+behind the scenes, including coordinate converters and time
+calculators. The <link linkend="tool-aavso">AAVSO Lightcurve
+Generator</link> tool will download a lightcurve for any of the 6000+
+variable stars monitored by the American Association of Variable Star
+Observers (AAVSO). The lightcurves are generated <quote>on the
+fly</quote> by querying the AAVSO server directly, ensuring that you
+have the very latest data points.
+</para>
+<para>
+You can plan an observing session using our <link
+linkend="tool-altvstime">Altitude vs. Time</link> tool, which will
+plot curves representing the Altitude as a function of time for any
+group of objects. If that is too much detail, we also provide a
+<link linkend="tool-whatsup">What's Up Tonight?</link> tool that
+summarizes the objects that you will be able to see from your location
+on any given night. You can add your favorite objects to the <link
+linkend="tool-observinglist">Observing List</link> tool, which
+provides convenient access to common actions for a list of objects.
+</para>
+<para>
+&kstars; also provides a <link linkend="tool-solarsys">Solar System
+Viewer</link>, which shows the current configuration of the major
+planets in our solar system. There is also a <link
+linkend="tool-jmoons">Jupiter Moons Tool</link> which shows the positions
+of Jupiter's four largest moons as a function of time.
+</para>
+<para>
+Our primary goal is to make &kstars; an interactive educational tool for
+learning about astronomy and the night sky. To this end, the &kstars;
+Handbook includes the <link linkend="astroinfo">AstroInfo
+Project</link>, a series of short, hyperlinked articles on astronomical
+topics that can be explored with &kstars;. In addition, &kstars;
+includes &DCOP; functions that allow you to <link
+linkend="tool-scriptbuilder">write complex scripts</link>, making &kstars;
+a powerful "demo engine" for classroom use or general illustration of
+astronomical topics.
+</para>
+<para>
+However, &kstars; is not just for students. You can control telescopes
+and cameras with &kstars;, using the elegant and powerful <link
+linkend="indi">INDI</link> protocol. &kstars; supports several popular
+telescopes including Meade's LX200 family and Celestron GPS. Several
+popular CCD cameras, webcams, and computerized focusers are also supported.
+Simple slew/track commands are integrated directly into the main window's
+popup menu, and the INDI Control Panel provides full access to all of
+your telescope's functions. Many of these actions can also be scripted
+through &kde;'s &DCOP; mechanism (our own <link
+linkend="tool-scriptbuilder">Script Builder</link> tool provides a simple
+point-and-click interface for these scripts). INDI's Client/Server
+architecture allows for seamless control of any number of <link
+linkend="indi-kstars-setup">local</link> or <link
+linkend="indi-remote-control">remote</link> telescopes using a single
+&kstars; session.
+</para>
+<para>
+We are very interested in your feedback; please report bugs or
+feature requests to the &kstars; development mailing list:
+<email>kstars-devel@kde.org</email>. You can also use
+the automated bug reporting tool, accessible from the Help menu.
+</para>
+</chapter>
+
+&quicktour; <!--A Quick Tour of KStars-->
+&config; <!--Configuring KStars-->
+&commands; <!--Command Reference-->
+&astroinfo; <!--AstroInfo Articles-->
+&tools; <!--KStars Tools-->
+&dumpmode; <!--Command-line image-dump mode-->
+&indi; <!-- INDI-->
+&faq; <!--Questions and Answers-->
+&credits; <!--Credits and License-->
+&install; <!--Installation-->
+
+<index id='doc-index'></index>
+<!-- For DocBook 4.2, remove the above line and use this instead
+&documentation.index;
+-->
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
diff --git a/doc/kstars/indi.docbook b/doc/kstars/indi.docbook
new file mode 100644
index 00000000..4d26b856
--- /dev/null
+++ b/doc/kstars/indi.docbook
@@ -0,0 +1,835 @@
+<chapter id="indi">
+<title>Astronomical Device Control with <acronym>INDI</acronym></title>
+<indexterm><primary>INDI Control</primary>
+<secondary>Overview</secondary>
+</indexterm>
+
+<para>KStars provides an interface to configure and control astronomical instruments via
+the <acronym><link linkend="what-is-indi">INDI</link></acronym> protocol.</para>
+
+<para>The <acronym>INDI</acronym> protocol supports a variety of astronomical instruments
+such as CCD cameras and focusers. Currently, KStars supports the following
+devices:</para>
+
+<table id="device-table" pgwide="1" frame="all">
+<title>Supported Telescopes</title>
+<tgroup cols="3" colsep="1" rowsep="1">
+<thead>
+<row>
+<entry>Telescope</entry>
+<entry>Device driver</entry>
+<entry>Version</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry>LX200 8"-12" Classic</entry>
+<entry>lx200classic</entry>
+<entry>1.0</entry>
+</row>
+<row>
+<entry>Autostar based telescopes</entry>
+<entry>lx200autostar</entry>
+<entry>1.0</entry>
+</row>
+<row>
+<entry>LX200 GPS 8"-16"</entry>
+<entry>lx200gps</entry>
+<entry>1.0</entry>
+</row>
+<row>
+<entry>LX200 Classic 16"</entry>
+<entry>lx200_16</entry>
+<entry>1.0</entry>
+</row>
+<row>
+<entry>NexStar GPS, CGE, AS-GT</entry>
+<entry>celestrongps</entry>
+<entry>0.9</entry>
+</row>
+<row>
+<entry>New GT, NexStar 5i/8i</entry>
+<entry>celestrongps</entry>
+<entry>0.9</entry>
+</row>
+<row>
+<entry>Takahashi Temma</entry>
+<entry>temma</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>Astro-Physics AP</entry>
+<entry>apmount</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>Astro-Electronic FS-2</entry>
+<entry>lx200basic</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>Argo Navis</entry>
+<entry>lx200basic</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>Losmandy Gemini</entry>
+<entry>lx200basic</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>Mel Bartels Controllers</entry>
+<entry>lx200basic</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>Sky Commander</entry>
+<entry>skycommander</entry>
+<entry>0.1</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+<table id="focuser-table" pgwide="1" frame="all">
+<title>Supported Focusers</title>
+<tgroup cols="3" colsep="1" rowsep="1">
+<thead>
+<row>
+<entry>Focuser</entry>
+<entry>Device driver</entry>
+<entry>Version</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry>Meade LX200GPS Microfocuser</entry>
+<entry>lx200gps</entry>
+<entry>0.9</entry>
+</row>
+<row>
+<entry>Meade 1206 Primary Mirror Focuser</entry>
+<entry>lx200generic</entry>
+<entry>0.9</entry>
+</row>
+<row>
+<entry>JMI NGF Series</entry>
+<entry>lx200generic</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>JMI MOTOFOCUS</entry>
+<entry>lx200generic</entry>
+<entry>0.1</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table id="ccd-table" pgwide="1" frame="all">
+<title>Supported CCDs</title>
+<tgroup cols="3" colsep="1" rowsep="1">
+<thead>
+<row>
+<entry>CCD</entry>
+<entry>Device driver</entry>
+<entry>Version</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry>Finger Lakes Instruments CCDs</entry>
+<entry>fliccd</entry>
+<entry>1.0</entry>
+</row>
+<row>
+<entry>Santa Barbara Instrument CCDs</entry>
+<entry>sbigccd</entry>
+<entry>0.1</entry>
+</row>
+<row>
+<entry>Apogee CCDs</entry>
+<entry>apogee_ppi, apogee_pci, apogee_isa, apogee_usb</entry>
+<entry>0.1</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+
+<table id="filter-table" pgwide="1" frame="all">
+ <title>Supported Filter Wheels</title>
+ <tgroup cols="3" colsep="1" rowsep="1">
+ <thead>
+ <row>
+ <entry>Filter Wheel</entry>
+ <entry>Device driver</entry>
+ <entry>Version</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>FLI Filter Wheels</entry>
+ <entry>fliwheel</entry>
+ <entry>0.9</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+<table id="video-table" pgwide="1" frame="all">
+<title>Supported Webcams</title>
+<tgroup cols="3" colsep="1" rowsep="1">
+<thead>
+<row>
+<entry>Webcam</entry>
+<entry>Device driver</entry>
+<entry>Version</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry>Any Video4Linux compatible device</entry>
+<entry>v4ldriver</entry>
+<entry>1.0</entry>
+</row>
+<row>
+<entry>Philips webcam</entry>
+<entry>v4lphilips</entry>
+<entry>1.0</entry>
+</row>
+<row>
+<entry>Meade Lunar Planetary Imager</entry>
+<entry>meade_lpi</entry>
+<entry>0.1</entry>
+</row>
+
+</tbody>
+</tgroup>
+</table>
+
+<sect1 id="indi-kstars-setup">
+<title>INDI Setup</title>
+<indexterm><primary>INDI</primary>
+<secondary>Setup</secondary>
+</indexterm>
+<para>
+KStars can control local and remote devices seamlessly via the <link linkend="what-is-indi">INDI</link> server/client architecture. INDI devices may be run in three different modes:</para>
+
+<orderedlist>
+<listitem><para>Local: The local mode is the most common and is used to control local device (&ie; a device attached to your machine).</para></listitem>
+<listitem><para>Server: The server mode establishes an INDI server for a particular device and waits for connections from remote clients. You cannot operate server devices, you can only start and shut them down.</para></listitem>
+<listitem><para>Client: The client mode is used to connect to remote INDI servers running INDI devices. You can control remote devices seamlessly like local devices.</para></listitem>
+</orderedlist>
+
+<para>You can run local device, establish INDI servers, and connect to remote clients from the <guimenuitem>Device Manager</guimenuitem> in the <guimenu>Devices</guimenu> menu.</para>
+
+<para>Here is a screenshot of the <guilabel>Device Manager</guilabel>
+window:</para>
+
+<screenshot>
+<screeninfo>Running device drivers</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="devicemanager.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Start device drivers</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>You can run devices by browsing the device tree, selecting a specific device, and then clicking on the <guibutton>Run Service button</guibutton>. You can select the operation mode, either local or server as defined above.</para>
+
+<para>To control remove devices, refer to the <link linkend="indi-remote-control">remote device control</link> section.</para>
+</sect1>
+
+<sect1 id="indi-telescope-setup">
+<title>Telescope Setup</title>
+<indexterm><primary>INDI</primary>
+<secondary>Setup</secondary>
+</indexterm>
+
+<para>Most telescopes are equipped with <hardware>RS232</hardware> interface
+for remote control. Connect the RS232 jack in your telescope to your
+computer's <hardware>Serial/USB</hardware> port. Traditionally, the RS232
+connects to the serial port of your computer, but since many new laptops
+abandoned the serial port in favor of <hardware>USB/FireWire</hardware>
+ports, you might need to obtain a Serial to USB adaptor to use with new
+laptops.</para>
+
+<para>After connecting your telescope to the Serial/USB port, turn your
+telescope on. It is <emphasis>highly</emphasis> recommended that you
+download and install the latest firmware for your telescope
+controller.</para>
+
+<para>The telescope needs to be aligned before it can be used properly.
+Align your telescope (one or two stars alignment) as illustrated in your
+telescope manual.</para>
+
+<para>&kstars; needs to verify time and location settings before connecting to the telescope. This insures proper tracking and synchronization between the telescope and &kstars;. The following steps will enable you to connect to a device that is connected to your computer. To connect and control remote devices, please refer to <link linkend="indi-remote-control">remote device control</link> section.</para>
+
+<para>You can use the Telescope Setup Wizard and it will verify all the required information in the process. It can automatically scan ports for attached telescopes. You can run the wizard by selecting <guimenuitem>Telescope Setup Wizard</guimenuitem> from the <guimenu>Devices</guimenu> menu.</para>
+
+<para>Alternatively, you can connect to a local telescope by performing the following
+steps:</para>
+
+<orderedlist>
+<listitem><para>Set your geographical location. Open the <guilabel>Geographic...</guilabel> window by selecting
+<guimenuitem>Set Geographic Location...</guimenuitem> from the
+<guimenu>Settings</guimenu> menu, or by pressing the <guiicon>Globe</guiicon> icon in the toolbar, or by pressing <keycombo
+action="simul">&Ctrl;<keycap>g</keycap></keycombo>.</para>
+</listitem>
+<listitem><para>Set your local time and date. You can change to any time or
+date by selecting <guimenuitem>Set Time...</guimenuitem> from the <guimenu>Time</guimenu> menu, or by
+pressing the <guiicon>time</guiicon> icon in the toolbar. The <guilabel>Set Time</guilabel> window uses a standard &kde; Date Picker widget, coupled with three spinboxes for setting the hours, minutes and seconds. If you ever need to reset the clock back to the current time, just select <guimenuitem>Set Time to Now</guimenuitem> from the <guimenu>Time</guimenu> menu.</para>
+</listitem>
+<listitem>
+<para>Click on the <guimenu>Devices</guimenu> menu and select the
+<guimenuitem>Device Manager</guimenuitem>.</para>
+</listitem>
+<listitem>
+<para>Under the <guilabel>Device</guilabel> column, select your telescope model.</para>
+</listitem>
+<listitem>
+<para> <mousebutton>Right</mousebutton>-click on the device and select
+<guilabel>Run Service</guilabel>.</para>
+</listitem>
+<listitem>
+<para>Click <guibutton>Ok</guibutton> to close the Device Manager
+Dialog.</para>
+</listitem>
+</orderedlist>
+
+<note id="geo-time-note">
+<title>Frequent Settings</title>
+<para>You do not need to set the geographic location and time every time you connect to a telescope. Only adjust the settings as needed.</para></note>
+
+<para>You are now ready to use the device features, &kstars; conveniently provides two interchangeable GUI interfaces for controlling telescopes:</para>
+
+<orderedlist>
+<title>Controlling your telescope</title>
+<listitem>
+<para>
+<guilabel>Sky map Control</guilabel>: For each device you run in the <guilabel>Device Manager</guilabel>, a corresponding entry will show up in popup menu that allows you to control the properties of the device. You can
+issue commands like <command>Slew, Sync,</command> and
+<command>Track</command> directly from the sky map.
+</para>
+<para>Here is a screenshot of the popup menu with an active LX200 Classic
+device:</para>
+<screenshot>
+<screeninfo>Controlling devices from sky map</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="skymapdevice.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</screenshot>
+</listitem>
+
+<listitem>
+<para>
+<guilabel>INDI Control Panel</guilabel>: The panel offers the user with all the
+features supported by a device.
+</para>
+
+<para>The panel is divided into three main sections:</para>
+<itemizedlist>
+<listitem>
+<para>
+<guilabel>Device tabs</guilabel>: Each additional active device occupies a
+tab in the INDI panel. Multiple devices can run simultaneously without
+affecting the operation of other devices.
+</para>
+</listitem>
+<listitem>
+<para>
+<guilabel>Property view</guilabel>: Properties are the key element in INDI
+architecture. Each device defines a set of properties to communicate with
+the client. The current position of the telescope is an example of a
+property. Semantically similar properties are usually contained in logical
+blocks or groupings.
+</para>
+</listitem>
+<listitem>
+<para>
+<guilabel>Log viewers</guilabel>: Devices report their status and acknowledge commands by sending INDI messages. Each device has its own log view, and all devices share one generic log viewer. A device usually sends messages to its device driver only, but a device is permitted to send a generic message when appropriate.
+</para>
+</listitem>
+</itemizedlist>
+<screenshot>
+<screeninfo>INDI Control Panel</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="indicontrolpanel.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</screenshot>
+</listitem>
+</orderedlist>
+
+<para>You are not restricted on using one interface over another as they can be both used simultaneously. Actions from the <guilabel>Sky map</guilabel> are automatically reflected in the <guilabel>INDI Control Panel</guilabel>
+and vice versa.</para>
+
+<para>To connect to your telescope, you can either select <guimenuitem>Connect</guimenuitem> from your device popup menu or
+alternatively, you can press <guibutton>Connect</guibutton> under your device tab in the <guilabel>INDI Control Panel</guilabel>.</para>
+
+<important><para>By default, KStars will try to connect to the <constant>/dev/ttyS0</constant>
+port. To change the connection port, select <guilabel>INDI Control Panel</guilabel> from the <guimenu>Devices</guimenu> menu and change the port under your device tab.</para></important>
+
+<para>&kstars; automatically updates the telescope's longitude, latitude, and
+time based on current settings in &kstars;. You can enable/disable these
+updates from <guimenuitem>Configure INDI</guimenuitem> dialog under the
+<guimenu>Devices</guimenu> menu.
+</para>
+
+<para>If &kstars; communicates successfully with the telescope, it will retrieve the current <abbrev>RA</abbrev> and <abbrev>DEC</abbrev> from the telescope and will display a crosshair on the sky map indicating the telescope position.</para>
+
+<note id="indi-sync">
+<title>Synchronizing your telescope</title>
+<para>If you aligned your telescope and the last alignment star was, for example, Vega, then the crosshair should be centered around Vega. If the crosshair was off target, then you can <mousebutton>right</mousebutton>-click Vega from the sky map and select
+<command>Sync</command> from your telescope menu. This action will instruct the telescope to synchronize its internal coordinates to match those of Vega, and the telescope's crosshair should now be centered around Vega.
+</para>
+</note>
+
+<para>That is it: your telescope is ready to explore the heavens.</para>
+
+<warning>
+<title>WARNING</title>
+<para>Never use the telescope to look at the sun. Looking at the sun might cause irreversible damage to your eyes and as well as your equipment.</para>
+</warning>
+</sect1>
+
+<sect1 id="indi-other-setup">
+<title>CCD and Video-Capture Setup</title>
+<indexterm><primary>CCD Video Control</primary>
+<secondary>Setup</secondary>
+</indexterm>
+
+<para>KStars supports the following imaging devices:</para>
+<itemizedlist>
+ <listitem><para>Finger Lakes instruments CCDs</para></listitem>
+ <listitem><para>Apogee CCDs: Parallel, ISA, PCI, and USB modes are supported. You need to install <ulink url="http://indi.sf.net/apogee_kernel.tar.gz">Apogee kernel drivers</ulink> for your specific mode (for USB mode, you only need libusb).</para></listitem>
+ <listitem><para><ulink url="http://www.exploits.org/v4l/">Video4Linux</ulink> compatible devices. Philips webcam extended features are supported as well.</para></listitem>
+</itemizedlist>
+
+<para>You can run CCD and Video Capture devices from the <guimenuitem>Device Manager</guimenuitem> in the <guimenu>Devices</guimenu> menu. Like all INDI devices, some of the device controls will be accessible from the skymap. The device can be controlled fully from the <guimenuitem>INDI Control Panel.</guimenuitem></para>
+
+<para>The standard format for image capture is FITS. Once an image is captured and downloaded, it will be automatically displayed in the KStars <link linkend="tool-fitsviewer">FITS Viewer</link>. To capture a sequence of images, use the <guimenuitem>Capture Image Sequence</guimenuitem> tool from the <guimenu>Devices</guimenu> menu. This tool is inactive until you establish a connection to an image device.</para>
+
+<important>
+<para>The FLICCD driver requires root privileges in order to operate properly. Note that running the driver as root is considered a security risk</para>
+</important>
+</sect1>
+
+<sect1 id="indi-capture">
+<title>Capture Image Sequence</title>
+<indexterm><primary>Capture</primary>
+<secondary>Image</secondary>
+</indexterm>
+
+<para>The Capture Image Sequence tool can be used to aquire images from cameras and CCDs in interactive and batch modes. Furthermore, you can select which filter, if any, you want to use for your images. The capture tool remains disabled until you establish a connection to an imaging device.</para>
+
+<screenshot>
+<screeninfo>Capture Image Sequence</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="indicapture.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</screenshot>
+
+<para>The above screenshot depicts a sample capture session. The tool provides the following options:</para>
+<itemizedlist>
+ <listitem><para>Camera/CCD</para>
+ <itemizedlist>
+ <listitem><para><option>Device:</option> The desired imaging device.</para></listitem>
+ <listitem><para><option>Prefix:</option> The image prefix which will be prepended to each captured filename.</para></listitem>
+ <listitem><para><option>Exposure:</option> The number of seconds to expose each frame.</para></listitem>
+ <listitem><para><option>Count:</option> The number of images to aquire.</para></listitem>
+ <listitem><para><option>Delay:</option> The delay in seconds between consecutive images.</para></listitem>
+ <listitem><para><option>ISO 8601 time stamp:</option> Append ISO 8601 time stamp to the filename. (e.g. image_01_20050427T09:48:05).</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Filter</para>
+ <itemizedlist>
+ <listitem><para><option>Device:</option> The desired filter device.</para></listitem>
+ <listitem><para><option>Filter:</option> The desired filter slot. You can assign color values to slot numbers using the <link linkend="indi-configure">Configure INDI</link> window (e.g. Slot #1 = Red, Slot #2 = Blue..etc).</para></listitem>
+ </itemizedlist>
+ </listitem>
+</itemizedlist>
+
+<para>After you fill in the desired options, you can begin the capture procedure by pressing the <guibutton>Start</guibutton> button. You may cancel at any time using the <guibutton>Stop</guibutton> button. All captured images will be saved to the default FITS directory which can be specified in the <link linkend="indi-configure">Configure INDI</link> window.</para>
+
+<para>If you have more complex capturing requirements and conditions to fulfil, it is recommended to create a script to meet your specific needs using the <link linkend="tool-scriptbuilder">Script Builder</link> tool in the <guimenu>Tools</guimenu> menu.</para>
+</sect1>
+
+<sect1 id="indi-configure">
+<title>Configure INDI</title>
+<indexterm><primary>Configure</primary>
+<secondary>INDI</secondary>
+</indexterm>
+
+<para>The Configure INDI window allows you to modify <emphasis>Client side</emphasis> INDI specific options. The window is divided into four main categories: General, Automatic device updates, Display, and Filter Wheel:</para>
+
+ <itemizedlist>
+ <listitem><para>General</para>
+ <itemizedlist>
+ <listitem><para><option>Default FITS directory:</option> Specify the directory where all captured FITS images will be saved to. If no directory is specified, images will be stored in $HOME.</para></listitem>
+ <listitem><para><option>Automatic Display of FITS upon capture:</option> When checked, KStars will display captured FITS in KStars <link linkend="tool-fitsviewer">FITS Viewer</link> tool. If you use the <link linkend="indi-capture">Capture Image Sequence</link> tool, all captured images will be saved to disk regardless of this option.</para></listitem>
+ <listitem><para><option>Telescope port:</option> The default telescope port. When you connect to a local or remote telescope service, KStars will automatically fill the telescope's device port with the specified default port.</para></listitem>
+ <listitem><para><option>Video port:</option> The default video port. When you connect to a local or remote video service, KStars will automatically fill the webcam's device port with the specified default port.</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Automatic device updates</para>
+ <itemizedlist>
+ <listitem><para><option>Time:</option> Update the telescope's date and time, if supported, upon connection.</para></listitem>
+ <listitem><para><option>Geographic location:</option> Update the telescope's geographical location information (current longitude and latitude), if supported, upon connection.</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Display</para>
+ <itemizedlist>
+ <listitem><para><option>Device target crosshair:</option> When checked, KStars displays the telescope's target crosshair on the sky map. The crosshair is displayed upon a successful connection to the telescope and its location is updated periodically. The telescope's name is displayed next to the crosshair. KStars displays one crosshair per each connected telescope. To change the color of the telescope's crosshair, open the <link linkend="viewops">Configure KStars</link> window. Select the <guilabel>Colors</guilabel> tab, and then change the color of the <emphasis>Target Indicator</emphasis> item to the desired color.</para></listitem>
+ <listitem><para><option>INDI messages in status bar:</option> When checked, KStars displays INDI status messages in the KStars status bar.</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Filter Wheel: Assign color codes to the filter wheel slots (e.g. Slot #0 Red, Slot #1 Blue..etc). You can assign color codes for up to 10 filter slots (0 to 9). To assign a color code, select a slot number from the drop down combo box, and then type the corresponding color code in the edit field. Repeat the process for all desired slots and then press OK.</para>
+ </listitem>
+ </itemizedlist>
+
+</sect1>
+
+<sect1 id="indi-concepts">
+<title>INDI Concepts</title>
+<indexterm><primary>Telescope Control</primary>
+<secondary>Concepts</secondary>
+</indexterm>
+
+<para>
+The main key concept in INDI is that devices have the ability to describe themselves. This is accomplished by using XML to describe a generic hierarchy that can represent both canonical and non-canonical devices. In INDI, all <emphasis>devices</emphasis> may contain one or more <emphasis>properties</emphasis>. Any <emphasis>property</emphasis> may contain one or more <emphasis>elements</emphasis>. There are four types of INDI properties:</para>
+<itemizedlist>
+<listitem><para>Text property.</para></listitem>
+<listitem><para>Number property.</para></listitem>
+<listitem><para>Switch property (Represented in GUI by buttons and checkboxes).</para></listitem>
+<listitem><para>Light property (Represented in GUI by colored LEDs).</para></listitem>
+</itemizedlist>
+
+<para>For example, all INDI devices share the CONNECTION standard switch <emphasis>property</emphasis>. The CONNECTION property has two elements: CONNECT and DISCONNECT switches. KStars parses the generic XML description of properties and builds a GUI representation suitable for direct human interaction.</para>
+
+<para>The INDI control panel offers many device properties not accessible from the sky map. The properties offered differ from one device to another. Nevertheless, all properties share common features that constrains how they are displayed and used:</para>
+
+<itemizedlist>
+<listitem>
+<para>
+Permission: All properties can either be read-only, write-only, or read and
+write enabled. An example of a read-write property is the telescope's Right
+Ascension. You can enter a new Right Ascension and the telescope, based on
+current settings, will either slew or sync to the new input. Furthermore,
+when the telescope slews, its Right Ascension gets updated and sent back to
+the client.</para>
+</listitem>
+<listitem>
+<para>State: Prefixed to each property is a state indicator (round LED).
+Each property has a state and an associated color code:</para>
+<table frame="top"><title>INDI State color code</title>
+<tgroup cols="3" colsep="1" rowsep="1">
+<thead>
+<row>
+<entry>State</entry>
+<entry>Color</entry>
+<entry>Description</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry>Idle</entry>
+<entry>Gray</entry>
+<entry>Device is performing no action with respect to this property</entry>
+</row>
+<row>
+<entry>Ok</entry>
+<entry>Green</entry>
+<entry>Last operation performed on this property was successful and
+active</entry>
+</row>
+<row>
+<entry>Busy</entry>
+<entry>Yellow</entry>
+<entry>The property is performing an action</entry>
+</row>
+<row>
+<entry>Alert</entry>
+<entry>Red</entry>
+<entry>The property is in critical condition and needs immediate
+attention</entry>
+ </row>
+ </tbody>
+</tgroup>
+</table>
+
+<para>The device driver updates the property state in real-time when
+necessary. For example, if the telescope is in the process of slewing to a
+target, then the RA/DEC properties will be signaled as
+<guilabel>Busy</guilabel>. When the slew process is completed successfully,
+the properties will be signaled as
+<guilabel>Ok</guilabel>.</para>
+</listitem>
+<listitem>
+<para>
+Context: Numerical properties can accept and process numbers in two formats:
+decimal and sexagesimal. The sexagesimal format is convenient when expressing
+time or equatorial/geographical coordinates. You can use any format at your
+convenience. For example, all the following numbers are equal:</para>
+<itemizedlist>
+<listitem><para>-156.40</para></listitem>
+<listitem><para>-156:24:00</para></listitem>
+<listitem><para>-156:24</para></listitem>
+</itemizedlist>
+</listitem>
+<listitem>
+<para>
+Time: The standard time for all INDI-related communications is Universal Time UTC specified as YYYY-MM-DDTHH:MM:SS in accord with ISO 8601. &kstars; communicates the correct UTC time with device drivers automatically. You can enable/disable automatic time updates from the <guimenuitem>Configure INDI</guimenuitem> dialog under the <guimenu>Devices</guimenu> menu.
+</para>
+</listitem>
+</itemizedlist>
+</sect1>
+
+<sect1 id="indi-remote-control">
+<title>Remote Device Control</title>
+<indexterm><primary>Telescope Control</primary>
+<secondary>Remote Devices</secondary>
+</indexterm>
+
+<para>KStars provides a simple yet powerful layer for remote device control.
+A detailed description of the layer is described in the INDI <ulink
+url="http://www.clearskyinstitute.com/INDI/INDI.pdf">white
+paper</ulink>.</para>
+
+<para>You need to configure both the server and client machines for remote
+control:</para>
+
+<orderedlist>
+<listitem>
+<para>Server: To prepare a device for remote control, follow the same steps in the <link linkend="indi-kstars-setup">local/server</link> setup. When you start a device service in the <guimenu>Device Manager</guimenu>, a port number is displayed under the <guilabel>Listening port</guilabel> column. In addition to the port number, you also need the hostname or IP address of your server.
+</para>
+
+</listitem>
+<listitem>
+<para>Client: Select the <guimenuitem>Device Manager</guimenuitem> from the <guimenu>Device</guimenu> menu and click on the <guilabel>Client</guilabel> tab. You can add, modify, or delete hosts under the <guilabel>Client</guilabel> tab. Add a host by clicking on the <guibutton>Add</guibutton> button. Enter the hostname/IP address of the server in the <guilabel>Host</guilabel> field, and enter the port number obtained from the <emphasis>server</emphasis> machine in step 1.
+</para>
+</listitem>
+</orderedlist>
+
+<screenshot>
+<screeninfo>INDI Client</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="indiclient.png" format="PNG"/>
+</imageobject>
+</mediaobject>
+</screenshot>
+
+<para>After you add a host, right click on the host to
+<guimenuitem>Connect</guimenuitem> or <guimenuitem>Disconnect</guimenuitem>.
+If a connection is established, you can control the telescope from the
+<guilabel>Sky map</guilabel> or <guilabel>INDI Control Panel</guilabel>
+exactly as described in the <link linkend="indi-kstars-setup">local/server</link> section. It is as easy at that.
+</para>
+
+<sect2 id="indi-commandline">
+<title>Running an INDI server from the command line</title>
+<para>While &kstars; allows you to easily deploy an INDI server; you can launch an INDI server from the command line.
+</para>
+
+<para>
+Since INDI is an independent backend component, you can run an INDI server on a host without KStars. INDI can be compiled separately to run on remote hosts. Furthermore, device drivers log messages to <constant>stderr</constant> and that can be helpful in a debugging situation. The syntax for INDI server is
+as following:</para>
+
+<para>$ <command>indiserver</command> [options] [<filename>driver</filename>
+...]</para>
+
+<para>Options:</para>
+<para> -p p : alternate IP port, default 7624</para>
+<para> -r n : max restart attempts, default 2</para>
+<para> -v : more verbose to stderr</para>
+
+<para>For example, if you want to start an INDI server running an LX200 GPS
+driver and listening to connections on port 8000, you would run the
+following command:</para>
+
+<para>$ <command>indiserver</command> -p 8000 <filename>lx200gps</filename></para>
+</sect2>
+
+<sect2 id="indi-secure-remote">
+<title>Secure Remote Operation</title>
+
+<para>Suppose we want to run an indiserver with INDI drivers on a remote host,
+<constant>remote_host</constant>, and connect them to &kstars; running on the local machine.</para>
+
+<para>From the local machine log onto the remote host, <constant>remote_host</constant>, by typing:</para>
+
+<para>$ <command>ssh</command> -L <varname>local_port</varname>:<constant>remote_host</constant>:<varname>remote_port</varname></para>
+
+<para>This binds the <varname>local_port</varname> on the local machine to the <varname>remote_port</varname> on the <constant>remote_host</constant>. After logging in, run indiserver on the remote host:</para>
+
+<para>$ <command>indiserver</command> -p <varname>remote_port</varname> [<filename>driver</filename>...]</para>
+
+<para>Back on the local machine, start &kstars; then open the <guimenuitem>Device Manager</guimenuitem> and add a host under the <guilabel>Client</guilabel> tab. The host should be the local host (usually 127.0.0.1) and the port number should be the <varname>local_port</varname> used in the steps above. <mousebutton>Right</mousebutton>-click on the host and select <guimenuitem>Connect</guimenuitem> from the popup menu. &kstars; will connect to the remote INDI server securely. The host information will be saved for future sessions.</para>
+</sect2>
+</sect1>
+
+<sect1 id="indi-faq">
+<title>INDI Frequently Asked Questions</title>
+<indexterm><primary>Telescope Control</primary>
+<secondary><acronym>FAQ</acronym></secondary>
+</indexterm>
+
+<qandaset defaultlabel="qanda">
+<qandaentry>
+<question id="what-is-indi">
+<para>What is INDI?</para>
+</question>
+<answer>
+<para> <acronym>INDI</acronym> is the <ulink url="http://indi.sourceforge.net"> Instrument-Neutral-Distributed-Interface</ulink> control protocol developed by <author><firstname>Elwood</firstname><surname>C.
+Downey</surname></author> of <ulink url="http://www.clearskyinstitute.com/">ClearSky Institute</ulink>. &kstars; employs device drivers that are compatible with the INDI protocol. INDI has many advantages including loose coupling between hardware devices and
+software drivers. Clients that use the device drivers (like &kstars;) are completely unaware of the device capabilities. In run time, &kstars; communicates with the device drivers and builds a completely dynamical GUI based on services provided by the device. Therefore, new device drivers can be written or updated and KStars can take full advantage of them without any changes on the client side.</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>
+Do you plan to support more devices?
+</para>
+</question>
+<answer>
+<para>
+Yes. We plan to support major CCD cameras and focusers and extend support
+for more telescopes. If you would like INDI to support a particular device,
+please send an email to <email>indi-devel@lists.sourceforge.net</email>
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>
+What operations does KStars provide to control the telescope?
+</para>
+</question>
+<answer>
+<para>
+It depends on the particular telescope you're running, but the minimum three operations are <command>Slew</command>, <command>Track</command>, and <command>Sync</command>, which you can issue directly from the sky map. Your telescope must be aligned for those operations to perform correctly. Some telescopes offer you more operations like site management, slew modes, focusing, parking, and more. You can access the telescopes extended features from the INDI Control Panel in the Devices Menu.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>
+What's the difference between <command>Slew</command>, <command>Track</command>, and <command>Sync</command> exactly?
+</para>
+</question>
+<answer>
+<para>
+The command <command>Slew</command> orders the telescope to move to a particular target, and once the telescope reaches its target, the telescope keeps tracking that target at a <emphasis>sidereal</emphasis> rate (i.e. the rate at which stars move across the sky). This works well for stars, Messier objects, and about everything outside our solar system. But solar system objects travel differently across the sky and so the telescope must <command>Track</command> the objects as they move.
+</para>
+<para>
+Therefore, you need to issue a track command if you want to track an object with non-sidereal motion. On the other hand, <command>Sync</command> is used to synchronize the telescope's internal coordinates with that of an object you select.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>
+Can I control my telescope remotely?
+</para>
+</question>
+<answer>
+<para>
+Yes. You can start an INDI server on the machine connected to your telescope and the server will listen to requests from &kstars; clients. Once you're connected, you can control your telescope directly from the sky map. This procedure is described in detail in the <link linkend="indi-remote-control">Remote device control</link> section.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>
+When I try to <guibutton>Connect</guibutton>, &kstars; reports that the
+telescope is not connected to the serial/USB port. What can I do?
+</para>
+</question>
+<answer>
+<para>This message is triggered when &kstars; cannot communicate with the telescope. Here are few things you can do:</para>
+
+ <orderedlist>
+ <listitem>
+<para>Check that you have both reading and writing permission for the port you are trying to connect to.</para>
+ </listitem>
+ <listitem>
+<para>Check the connection cable, make sure it is in good condition and test it with other applications.</para>
+ </listitem>
+ <listitem>
+<para>Check your telescope power, make sure the power is on and that the telescope is getting enough power.</para>
+ </listitem>
+ <listitem>
+<para>Set the correct port in the <guilabel>INDI Control Panel</guilabel>
+under the <guimenu>Devices</guimenu> menu. The default device is
+<constant>/dev/ttyS0</constant></para>
+ </listitem>
+ <listitem>
+ <para>Restart &kstars; and retry again.</para>
+ </listitem>
+ </orderedlist>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>&kstars; reports that the telescope is online and ready, but I cannot find the telescope's crosshair, where is it?</para>
+</question>
+<answer>
+<para>&kstars; retrieves the telescopes RA and DEC coordinates upon connection. If your alignment was performed correctly, then you should see the crosshair around your target in the Sky Map. However, the RA and DEC coordinates provided by the telescope may be incorrect (even below the horizon) and you need to <link linkend="indi-sync">Sync</link> your telescope to your current target. You can use the right-click menu to center and track the telescope crosshair in the sky map.</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>The telescope is moving erratically or not moving at all. What can I do?</para>
+</question>
+<answer>
+<para>This behavior is mostly due to incorrect settings, please verify the following check list:</para>
+<orderedlist>
+<listitem>
+<para>Is the telescope aligned?</para>
+</listitem>
+<listitem>
+<para>Is the telescope alignment mode correct? Use <guilabel>INDI Control Panel</guilabel> to check and change these settings (<constant>Alt/Az,Polar, Land</constant>).</para>
+</listitem>
+<listitem>
+<para>Are the telescope's time and date settings correct?</para>
+</listitem>
+<listitem>
+<para>Are the telescope's longitude and latitude settings correct?</para>
+</listitem>
+<listitem>
+<para>Is the telescope's UTC offset correct?</para>
+</listitem>
+<listitem>
+<para>Are the telescope's RA and DEC axis locked firmly?</para>
+</listitem>
+<listitem>
+<para>Is the telescope's N/S switch (when applicable) setup correctly for your hemisphere?</para>
+</listitem>
+<listitem>
+<para>Is the cable between the telescope and computer in good condition?</para>
+</listitem>
+</orderedlist>
+
+<para>If you think all settings are correct but the telescope still moves erratically or not at all, then please send a report to
+<email>kstars-devel@kde.org</email></para>
+</answer>
+</qandaentry>
+</qandaset>
+</sect1>
+</chapter>
+
diff --git a/doc/kstars/indicapture.png b/doc/kstars/indicapture.png
new file mode 100644
index 00000000..f99192dc
--- /dev/null
+++ b/doc/kstars/indicapture.png
Binary files differ
diff --git a/doc/kstars/indiclient.png b/doc/kstars/indiclient.png
new file mode 100644
index 00000000..1cb15a93
--- /dev/null
+++ b/doc/kstars/indiclient.png
Binary files differ
diff --git a/doc/kstars/indicontrolpanel.png b/doc/kstars/indicontrolpanel.png
new file mode 100644
index 00000000..b206c047
--- /dev/null
+++ b/doc/kstars/indicontrolpanel.png
Binary files differ
diff --git a/doc/kstars/indiscript.png b/doc/kstars/indiscript.png
new file mode 100644
index 00000000..41e21d2c
--- /dev/null
+++ b/doc/kstars/indiscript.png
Binary files differ
diff --git a/doc/kstars/install.docbook b/doc/kstars/install.docbook
new file mode 100644
index 00000000..a45cfa76
--- /dev/null
+++ b/doc/kstars/install.docbook
@@ -0,0 +1,105 @@
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kstars">
+<title>How to obtain &kstars;</title>
+<para>
+&kstars; is distributed with &kde; as part of the kdeedu "Edutainment"
+module.
+</para>
+<para>
+We also occasionally make an independent release. These independent
+releases will be available as a gzipped tar archive from the following
+website:
+<ulink
+ url="http://prdownloads.sourceforge.net/kstars/">http://prdownloads.sourceforge.net/kstars/</ulink>.
+</para>
+<para>
+Independent releases are announced through the
+<email>kstars-announce@lists.sourceforge.net</email> mailing list.
+Releases are also posted to <ulink url="http://edu.kde.org/kstars">the
+&kstars; home page</ulink>,
+<ulink url="http://www.kde-apps.org/content/show.php?content=9862">kde-apps.org</ulink>, and
+<ulink url="http://freshmeat.net/projects/kstars">freshmeat.net</ulink>.
+</para>
+<para>
+&kstars; is been packaged by many Linux/BSD distributions, including Redhat, Suse,
+and Mandrake. Some distributions package &kstars; as a separate application, some
+just provide a kdeedu package, which includes &kstars;.
+</para><para>
+If you would like the latest CVS development version of &kstars;, please
+follow <ulink url="http://edu.kde.org/kstars/cvs.html">these instructions</ulink>.
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Requirements</title>
+<para>
+In order to successfully run &kstars;, you need &kde; >=3.2 and
+&Qt;>=3.2.
+</para>
+<para>
+To compile &kstars;, you will also have to have the following packages
+installed:
+<itemizedlist>
+<listitem><para>kdelibs-devel</para></listitem>
+<listitem><para>qt-devel</para></listitem>
+<listitem><para>zlib-devel</para></listitem>
+<listitem><para>fam-devel</para></listitem>
+<listitem><para>png-devel</para></listitem>
+<listitem><para>jpeg-devel</para></listitem>
+<listitem><para>autoconf (>=2.5)</para></listitem>
+</itemizedlist></para>
+
+<para>
+On my system, &kstars; uses about 60 MB of system memory with the
+default settings. Most of this usage is due to the loaded object
+databases. You can dramatically reduce the memory footprint by
+reducing the faint limit for stars in the Configuration Window, or
+eliminating catalogs of objects (NGC, IC, comets, asteroids, &etc;).
+If &kstars; is idling, it uses very little <acronym>CPU</acronym>;
+but it will use as much as you have got when panning or zooming.
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+<para>
+In order to compile and install &kstars; on your system, type the
+following in the base folder of the unpacked &kstars; distribution:
+<screen width="40">
+<prompt>%</prompt> <userinput>./configure --prefix=$KDEDIR</userinput>
+<prompt>%</prompt> <userinput>make</userinput>
+<prompt>%</prompt> <userinput>make install</userinput>
+</screen>
+</para><para>
+Please do not forget the prefix argument to configure. If your <envar>KDEDIR</envar>
+variable is not set, set prefix to whatever folder &kde; is installed in: this is
+usually either <filename class="directory">/usr</filename>,
+<filename class="directory">/opt/kde</filename>, or
+<filename class="directory">/opt/kde3</filename>.
+Also, make sure you do the
+last step as <systemitem class="username">root</systemitem>.
+</para><para>
+&kstars; uses <command>autoconf</command> and <command>automake</command>,
+so you should not have trouble compiling it. Should you run into problems
+please report them to the &kstars; mailing list
+<email>kstars-devel@kde.org</email>.
+</para>
+</sect1>
+
+<sect1 id="configuration">
+<title>Configuration</title>
+<para>
+At this point, there are no special configuration options or
+requirements. If &kstars; complains that there are missing data files,
+become <systemitem class="username">root</systemitem> and manually copy
+all files in <filename class="directory">kstars/data/</filename> to
+<filename class="directory">$(KDEDIR)/apps/kstars/</filename> (If you
+do not have <systemitem class="username">root</systemitem> privileges,
+copy them to
+<filename class="directory">~/.kde/share/apps/kstars/.</filename>)
+</para>
+</sect1>
+</appendix>
diff --git a/doc/kstars/jmoons.docbook b/doc/kstars/jmoons.docbook
new file mode 100644
index 00000000..40a7d7b7
--- /dev/null
+++ b/doc/kstars/jmoons.docbook
@@ -0,0 +1,38 @@
+<sect1 id="tool-jmoons">
+<title>Jupiter Moons Tool</title>
+<indexterm><primary>Tools</primary>
+<secondary>Jupiter Moons Tool</secondary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Jupiter Moons Tool
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="jmoons.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Jupiter Moons Tool</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This tool displays the positions of Jupiter's four largest
+moons (Io, Europa, Ganymede, and Callisto) relative to Jupiter,
+as a function of time. Time is plotted vertically; the units are days
+and <quote>time=0.0</quote> corresponds to the current simulation time.
+The horizontal axis displays the angular offset from Jupiter's position,
+in arcminutes. The offset is measured along the direction of Jupiter's
+equator. Each moon's position as a function of time traces a sinusoidal
+path in the plot, as the moon orbits around Jupiter. Each track is
+assigned a different color to distinguish it from the others; the name
+labels at the top of the window indicate the color used by each moon.
+</para><para>
+The plot can be manipulated with the keyboard. The time axis can be
+expanded or compressed using the <keycap>+</keycap> and
+<keycap>-</keycap> keys. The time displayed at the center of the window
+can be changed with the <keycap>[</keycap> and <keycap>]</keycap> keys.
+</para>
+</sect1>
diff --git a/doc/kstars/jmoons.png b/doc/kstars/jmoons.png
new file mode 100644
index 00000000..235ae39f
--- /dev/null
+++ b/doc/kstars/jmoons.png
Binary files differ
diff --git a/doc/kstars/julianday.docbook b/doc/kstars/julianday.docbook
new file mode 100644
index 00000000..03ae53c3
--- /dev/null
+++ b/doc/kstars/julianday.docbook
@@ -0,0 +1,58 @@
+<sect1 id="ai-julianday">
+<sect1info>
+<author>
+<firstname>John</firstname>
+<surname>Cirillo</surname>
+</author>
+</sect1info>
+<title>Julian Day</title>
+<indexterm><primary>Julian Day</primary>
+</indexterm>
+<para>
+Julian Days are a way of reckoning the current date by a simple count of
+the number of days that have passed since some remote, arbitrary date. This
+number of days is called the <firstterm>Julian Day</firstterm>,
+abbreviated as <abbrev>JD</abbrev>. The starting point, <abbrev>JD=0</abbrev>,
+is January 1, 4713 BC (or -4712 January 1, since there was no year '0'). Julian
+Days are very useful because they make it easy to determine the number of days
+between two events by simply subtracting their Julian Day numbers.
+Such a calculation is difficult for the standard (Gregorian) calendar, because
+days are grouped into months, which contain a variable number of days, and
+there is the added complication of <link linkend="ai-leapyear">Leap
+Years</link>.
+</para><para>
+Converting from the standard (Gregorian) calendar to Julian Days and vice versa
+is best left to a special program written to do this, such as the &kstars;
+<link linkend="tool-calculator">Astrocalculator</link>. However, for those
+interested, here is a simple example of a Gregorian to Julian day converter:
+</para><para>
+<abbrev>JD</abbrev> = <abbrev>D</abbrev> - 32075 + 1461*( <abbrev>Y</abbrev> +
+4800 + ( <abbrev>M</abbrev> - 14 ) / 12 ) / 4 + 367*( <abbrev>M</abbrev> - 2 -
+( <abbrev>M</abbrev> - 14 ) / 12 * 12 ) / 12 - 3*( ( <abbrev>Y</abbrev> + 4900 +
+( <abbrev>M</abbrev> - 14 ) / 12 ) / 100 ) / 4
+</para><para>
+where <abbrev>D</abbrev> is the day (1-31), <abbrev>M</abbrev> is the Month
+(1-12), and <abbrev>Y</abbrev> is the year (1801-2099). Note that this formula
+only works for dates between 1801 and 2099. More remote dates require a more
+complicated transformation.
+</para><para>
+An example Julian Day is: <abbrev>JD</abbrev> 2440588, which corresponds to
+1 Jan, 1970.
+</para><para>
+Julian Days can also be used to tell time; the time of day is expressed as a
+fraction of a full day, with 12:00 noon (not midnight) as the zero point. So,
+3:00 pm on 1 Jan 1970 is <abbrev>JD</abbrev> 2440588.125 (since 3:00 pm is 3
+hours since noon, and 3/24 = 0.125 day). Note that the Julian Day is always
+determined from <link linkend="ai-utime">Universal Time</link>, not Local Time.
+</para><para>
+Astronomers use certain Julian Day values as important reference points, called
+<firstterm>Epochs</firstterm>. One widely-used epoch is called J2000; it is the
+Julian Day for 1 Jan, 2000 at 12:00 noon = <abbrev>JD</abbrev> 2451545.0.
+</para><para>
+Much more information on Julian Days is available on the internet. A good
+starting point is the <ulink
+url="http://aa.usno.navy.mil/faq/docs/JD_Formula.html">U.S. Naval
+Observatory</ulink>. If that site is not available when you read this, try
+searching for <quote>Julian Day</quote> with your favorite search engine.
+</para>
+</sect1>
diff --git a/doc/kstars/kepler2nd.png b/doc/kstars/kepler2nd.png
new file mode 100644
index 00000000..2734fcf9
--- /dev/null
+++ b/doc/kstars/kepler2nd.png
Binary files differ
diff --git a/doc/kstars/kepler3d.png b/doc/kstars/kepler3d.png
new file mode 100644
index 00000000..aaab7107
--- /dev/null
+++ b/doc/kstars/kepler3d.png
Binary files differ
diff --git a/doc/kstars/lambda_ex.png b/doc/kstars/lambda_ex.png
new file mode 100644
index 00000000..1a95ba9c
--- /dev/null
+++ b/doc/kstars/lambda_ex.png
Binary files differ
diff --git a/doc/kstars/lambda_max.png b/doc/kstars/lambda_max.png
new file mode 100644
index 00000000..81ede73b
--- /dev/null
+++ b/doc/kstars/lambda_max.png
Binary files differ
diff --git a/doc/kstars/leapyear.docbook b/doc/kstars/leapyear.docbook
new file mode 100644
index 00000000..899115ae
--- /dev/null
+++ b/doc/kstars/leapyear.docbook
@@ -0,0 +1,65 @@
+<sect1 id="ai-leapyear">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Leap Years</title>
+<indexterm><primary>Leap Years</primary>
+</indexterm>
+<para>
+The Earth has two major components of motion. First, it spins on its rotational
+axis; a full spin rotation takes one <firstterm>Day</firstterm> to complete.
+Second, it orbits around the Sun; a full orbital rotation takes one
+<firstterm>Year</firstterm> to complete.
+</para><para>
+There are normally 365 days in one <emphasis>calendar</emphasis> year, but it
+turns out that a <emphasis>true</emphasis> year (&ie;, a full orbit of the Earth
+around the Sun; also called a <firstterm>tropical year</firstterm>) is a little
+bit longer than 365 days. In other words, in the time it takes the Earth to
+complete one orbital circuit, it completes 365.24219 spin rotations. Do not be
+too surprised by this; there is no reason to expect the spin and orbital motions
+of the Earth to be synchronized in any way. However, it does make marking
+calendar time a bit awkward....
+</para><para>
+What would happen if we simply ignored the extra 0.24219 rotation at the end of
+the year, and simply defined a calendar year to always be 365.0 days long? The
+calendar is basically a charting of the Earth's progress around the Sun. If we
+ignore the extra bit at the end of each year, then with every passing year, the
+calendar date lags a little more behind the true position of Earth around the
+Sun. In just a few decades, the dates of the solstices and equinoxes will have
+drifted noticeably.
+</para><para>
+In fact, it used to be that all years <emphasis>were</emphasis> defined to have
+365.0 days, and the calendar <quote>drifted</quote> away from the true seasons
+as a result. In the year 46 <abbrev>BCE</abbrev>, Julius Caeser established the
+<firstterm>Julian Calendar</firstterm>, which implemented the world's first
+<firstterm>leap years</firstterm>: He decreed that every 4th year would be 366
+days long, so that a year was 365.25 days long, on average. This basically
+solved the calendar drift problem.
+</para><para>
+However, the problem wasn't completely solved by the Julian calendar, because a
+tropical year isn't 365.25 days long; it's 365.24219 days long. You still have
+a calendar drift problem, it just takes many centuries to become
+noticeable. And so, in 1582, Pope Gregory XIII instituted the
+<firstterm>Gregorian calendar</firstterm>, which was largely the same as the
+Julian Calendar, with one more trick added for leap years: even Century years
+(those ending with the digits <quote>00</quote>) are only leap years if they are divisible by
+400. So, the years 1700, 1800, and 1900 were not leap years (though they would
+have been under the Julian Calendar), whereas the year 2000
+<emphasis>was</emphasis> a leap year. This change makes the average length of a
+year 365.2425 days. So, there is still a tiny calendar drift, but it amounts to
+an error of only 3 days in 10,000 years. The Gregorian calendar is still used as
+a standard calendar throughout most of the world.
+</para>
+<note>
+<para>
+Fun Trivia: When Pope Gregory instituted the Gregorian Calendar, the Julian
+Calendar had been followed for over 1500 years, and so the calendar date had
+already drifted by over a week. Pope Gregory re-synchronized the calendar by
+simply <emphasis>eliminating</emphasis> 10 days: in 1582, the day after October
+4th was October 15th!
+</para>
+</note>
+</sect1>
diff --git a/doc/kstars/lightcurve.png b/doc/kstars/lightcurve.png
new file mode 100644
index 00000000..bb02d1a4
--- /dev/null
+++ b/doc/kstars/lightcurve.png
Binary files differ
diff --git a/doc/kstars/lightcurves.docbook b/doc/kstars/lightcurves.docbook
new file mode 100644
index 00000000..344ecc82
--- /dev/null
+++ b/doc/kstars/lightcurves.docbook
@@ -0,0 +1,176 @@
+<sect1 id="tool-aavso">
+
+<sect1info>
+<author>
+<firstname>Aaron</firstname>
+<surname>Price</surname>
+<affiliation><address>
+<email>aavso@aavso.org</email>
+</address></affiliation>
+</author>
+</sect1info>
+
+<title>AAVSO Light Curves</title>
+<indexterm><primary>Tools</primary>
+<secondary>AAVSO Lightcurve Generator</secondary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The AAVSO Lightcurves Tool
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="aavso.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>AAVSO Lightcurves</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<sect2 id="aavso-intro">
+<title>Introduction</title>
+<para>
+&kstars; can display light curves for variable stars from the observing
+program of the <ulink url="http://www.aavso.org">American Association
+of Variable Star Observers</ulink> (<abbrev>AAVSO</abbrev>). This
+program monitors over 6,000 variable stars and consists of 10 million
+observations going back almost a century. &kstars; downloads the very
+latest data directly from the <abbrev>AAVSO</abbrev> database via the
+Internet, so a network connection is required to use this tool.
+</para>
+<para>
+To use the tool, select a variable star either by
+<firstterm>designation</firstterm> or name in the left panel, and
+set the start and end dates to be plotted. In the right panel,
+select the type of data that should be plotted (see below). When you have
+made you selections, press the <guibutton>Retrieve Curve</guibutton>
+button. &kstars; will automatically connect to the AAVSO server,
+which will generate the lightcurve plot and send it to your computer for
+display. A sample lightcurve plot is shown below:
+</para>
+
+<screenshot>
+<screeninfo>
+A Sample Lightcurve
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="lightcurve.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Sample Lightcurve</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+Please not these light curves should <emphasis>NEVER</emphasis> be used
+in research, papers, presentations, publications, &etc;. They are only
+meant to be used as a source of info for &kstars;. They have not been
+validated and passed the <abbrev>AAVSO</abbrev>'s strict quality control
+measures. We will be glad to give you good raw data simply by requesting
+it at <ulink url="http://www.aavso.org/adata/onlinedata/">http://www.aavso.org/adata/onlinedata/</ulink>.
+</para>
+<para>
+Specific questions about the data in the light curves can be sent to
+<email>aavso@aavso.org</email>.
+</para>
+</sect2>
+
+<sect2 id="aavso-about">
+<title>About Variable Stars</title>
+<para>
+<firstterm>Variable stars</firstterm> are stars that change in
+brightness. A <firstterm>light curve</firstterm> is a plot of a
+variable star's brightness over time. By looking at a light curve you
+can see how the star has behaved in the past and try to predict how it
+will behave in the future. Astronomers also use this data to model
+astrophysical processes in the star. This important to help us
+understand how stars work.
+</para>
+</sect2>
+
+<sect2 id="aavso-data">
+<title>The Data</title>
+
+<para>
+Here is a summary of the various types of data available in the light
+curves:
+
+<itemizedlist>
+<listitem><para><firstterm>Visual Observation</firstterm>:
+This is an observation of a variable star by an observer with a
+regular telescope. It means that an observer saw the star at Y
+brightness on X date and time.</para></listitem>
+
+<listitem><para><firstterm>Fainter than</firstterm>:
+Sometimes the star is too faint to be seen by the observer. When that
+happens, the observer reports the faintest star seen in the field.
+These are called <quote>fainter thans</quote> because the variable star
+was fainter than the brightness reported.</para></listitem>
+
+<listitem><para><firstterm>Average</firstterm>:
+This is a computed running average of all the data reported. The
+<firstterm>bin</firstterm> number tells the computer how many days to
+use in each average calculation. This will need to be adjusted based on
+the frequency of observations. The error bars represent the 1 sigma
+standard deviation of error.</para></listitem>
+
+<listitem><para><firstterm>CCDV</firstterm>:
+These are observations reported using a <abbrev>CCD</abbrev> with a
+Johnson <abbrev>V</abbrev> filter. <abbrev>CCDV</abbrev> observations
+tend to be more accurate than visual (but not
+always).</para></listitem>
+
+<listitem><para><firstterm>CCDB</firstterm>:
+<abbrev>CCD</abbrev> observations with a Johnson <abbrev>B</abbrev>
+filter.</para></listitem>
+
+<listitem><para><firstterm>CCDI</firstterm>:
+<abbrev>CCD</abbrev> observations with a Cousins <abbrev>Ic</abbrev>
+filter.</para></listitem>
+
+<listitem><para><firstterm>CCDR</firstterm>:
+<abbrev>CCD</abbrev> observations with a Cousins <abbrev>R</abbrev>
+filter.</para></listitem>
+
+<listitem><para><firstterm>Discrepant Data</firstterm>:
+This is data that has been flagged by an <abbrev>AAVSO</abbrev> staff
+member as being discrepant following <abbrev>HQ</abbrev> rules for
+data validation. Contact <email>aavso@aavso.org</email> for more
+information.</para></listitem>
+
+<listitem><para><firstterm>Dates</firstterm>:
+The observational database the light curves are based on is updated
+every 10 minutes so you can get data in near real-time. Right now
+light curve data is only available back to 1961, but this will likely
+be expanded further back in time in the future.</para></listitem>
+
+</itemizedlist>
+</para>
+</sect2>
+
+<sect2 id="aavso-update">
+<title>Updating your local copy of Variable Stars</title>
+<para>
+The <abbrev>AAVSO</abbrev> publishes the
+<ulink url="http://www.aavso.org/valnam.txt">full list of variable
+stars</ulink> in their monitoring program. This file is updated
+monthly with newly discovered variable stars. To sync the list that
+&kstars; uses with the <abbrev>AAVSO</abbrev> master list, click
+on the <guibutton>Update List</guibutton> button in the
+<abbrev>AAVSO</abbrev> dialog. &kstars; will then attempt to
+connect to the <abbrev>AAVSO</abbrev> database and download the
+latest list.
+</para>
+<note>
+<para>
+The customized data stream provided by the AAVSO was implemented for
+&kstars; by Aaron Price. Thank you, Aaron!
+</para>
+</note>
+</sect2>
+</sect1>
+
diff --git a/doc/kstars/luminosity.docbook b/doc/kstars/luminosity.docbook
new file mode 100644
index 00000000..3a312ed7
--- /dev/null
+++ b/doc/kstars/luminosity.docbook
@@ -0,0 +1,54 @@
+<sect1 id="ai-luminosity">
+
+<sect1info>
+
+<author>
+<firstname>Jasem</firstname>
+<surname>Mutlaq</surname>
+<affiliation><address>
+</address></affiliation>
+</author>
+</sect1info>
+
+<title>Luminosity</title>
+<indexterm><primary>Luminosity</primary>
+<seealso>Flux</seealso>
+</indexterm>
+
+<para>
+<firstterm>Luminosity</firstterm> is the amount of energy emitted by a star each second.
+</para>
+
+<para>
+All stars radiate light over a broad range of frequencies in the electromagnetic spectrum from the low energy radio waves up to the highly energetic gamma rays. A star that emits predominately in the ultra-violet region of the spectrum produces a total amount of energy magnitudes larger than that produced in a star that emits principally in the infrared.
+Therefore, luminosity is a measure of energy emitted by a star over all wavelengths. The relationship between wavelength and energy was quantified by Einstein as
+E = h * v
+where v is the frequency, h is the Planck constant, and E is the photon energy in joules.
+That is, shorter wavelengths (and thus higher frequencies) correspond to higher energies.
+</para>
+
+<para>
+For example, a wavelength of lambda = 10 meter lies in the radio region of the electromagnetic spectrum and has a frequency of
+
+f = c / lambda = 3 * 10^8 m/s / 10 = 30 MHz
+
+where c is the speed of light.
+The energy of this photon is
+
+E = h * v = 6.625 * 10^-34 J s * 30 Mhz = 1.988 * 10^-26 joules.
+
+On the other hand, visible light has much shorter wavelengths and higher frequencies. A photon that has a wavelength of lambda = 5 * 10^-9 meters (A greenish photon) has an energy
+E = 3.975 * 10^-17 joules which is over a billion times higher than the energy of a radio photon. Similarly, a photon of red light (wavelength lambda = 700 nm) has less energy
+than a photon of violet light (wavelength lambda = 400 nm).
+</para>
+
+<para>
+Luminosity depends both on temperature and surface area. This makes sense because a burning log radiates more energy than a match, even though both have the same temperature.
+Similarly, an iron rod heated to 2000 degrees emits more energy than when it is heated to only 200 degrees.
+</para>
+
+<para>
+Luminosity is a very fundamental quantity in Astronomy and Astrophysics. Much of what is learnt about celestial objects comes from analyzing their light. This is because the physical processes that occur inside stars gets recorded and transmitted by light.
+Luminosity is measured in units of energy per second. Astronomers prefer to use Ergs, rather than Watts, when quantifying luminosity.
+</para>
+</sect1>
diff --git a/doc/kstars/luminosity.png b/doc/kstars/luminosity.png
new file mode 100644
index 00000000..b3b0324a
--- /dev/null
+++ b/doc/kstars/luminosity.png
Binary files differ
diff --git a/doc/kstars/luminosity_ex.png b/doc/kstars/luminosity_ex.png
new file mode 100644
index 00000000..a8dc9f82
--- /dev/null
+++ b/doc/kstars/luminosity_ex.png
Binary files differ
diff --git a/doc/kstars/magnitude.docbook b/doc/kstars/magnitude.docbook
new file mode 100644
index 00000000..b38963cd
--- /dev/null
+++ b/doc/kstars/magnitude.docbook
@@ -0,0 +1,80 @@
+<sect1 id="ai-magnitude">
+<sect1info>
+<author>
+<firstname>Girish</firstname> <surname>V</surname>
+</author>
+</sect1info>
+<title>Magnitude Scale</title>
+<indexterm><primary>Magnitude Scale</primary>
+<seealso>Flux</seealso>
+<seealso>Star Colors and Temperatures</seealso>
+</indexterm>
+<para>
+2500 years ago, the ancient Greek astronomer Hipparchus classified the
+brightnesses of visible stars in the sky on a scale from 1 to 6. He
+called the very brightest stars in the sky <quote>first magnitude</quote>, and the
+very faintest stars he could see <quote>sixth magnitude</quote>. Amazingly, two
+and a half millenia later, Hipparchus's classification scheme is still
+widely used by astronomers, although it has since been modernized and
+quantified.</para>
+<note><para>The magnitude scale runs backwards to what you
+might expect: brighter stars have <emphasis>smaller</emphasis>
+magnitudes than fainter stars.
+</para>
+</note>
+<para>
+The modern magnitude scale is a quantitative measurement of the
+<firstterm>flux</firstterm> of light coming from a star, with a
+logarithmic scaling:
+</para><para>
+m = m_0 - 2.5 log (F / F_0)
+</para><para>
+If you do not understand the math, this just says that the magnitude
+of a given star (m) is different from that of some standard star (m_0)
+by 2.5 times the logarithm of their flux ratio. The 2.5 *log factor
+means that if the flux ratio is 100, the difference in magnitudes is 5
+mag. So, a 6th magnitude star is 100 times fainter than a 1st magnitude
+star. The reason Hipparchus's simple classification translates to a
+relatively complex function is that the human eye responds
+logarithmically to light.
+</para><para>
+There are several different magnitude scales in use, each of which serves
+a different purpose. The most common is the apparent magnitude scale;
+this is just the measure of how bright stars (and other objects) look
+to the human eye. The apparent magnitude scale defines the star Vega
+to have magnitude 0.0, and assigns magnitudes to all other objects using
+the above equation, and a measure of the flux ratio of each object to
+Vega.
+</para><para>
+It is difficult to understand stars using just the apparent magnitudes.
+Imagine two stars in the sky with the same apparent magnitude, so they
+appear to be equally bright. You cannot know just by looking if the
+two have the same <emphasis>intrinsic</emphasis> brightness; it is
+possible that one star is intrinsically brighter, but further away.
+If we knew the distances to the stars (see the <link
+linkend="ai-parallax">parallax</link> article), we could account for
+their distances and assign <firstterm>Absolute magnitudes</firstterm>
+which would reflect their true, intrinsic brightness. The absolute
+magnitude is defined as the apparent magnitude the star would have if
+observed from a distance of 10 parsecs (1 parsec is 3.26 light-years,
+or 3.1 x 10^18 cm). The absolute magnitude (M) can be determined
+from the apparent magnitude (m) and the distance in parsecs (d)
+using the formula:
+</para><para>
+M = m + 5 - 5 * log(d) (note that M=m when d=10).
+</para><para>
+The modern magnitude scale is no longer based on the
+human eye; it is based on photographic plates and photoelectric
+photometers. With telescopes, we can see objects much fainter than
+Hipparchus could see with his unaided eyes, so the magnitude scale has
+been extended beyond 6th magnitude. In fact, the Hubble Space Telescope
+can image stars nearly as faint as 30th magnitude, which is one
+<emphasis>trillion</emphasis> times fainter than Vega.
+</para><para>
+A final note: the magnitude is usually measured through a color filter
+of some kind, and these magnitudes are denoted by a subscript
+describing the filter (&ie;, m_V is the magnitude through a <quote>visual</quote>
+filter, which is greenish; m_B is the magnitude through a blue filter;
+m_pg is the photographic plate magnitude, &etc;).
+</para>
+</sect1>
diff --git a/doc/kstars/man-celestrongps.1.docbook b/doc/kstars/man-celestrongps.1.docbook
new file mode 100644
index 00000000..a362a549
--- /dev/null
+++ b/doc/kstars/man-celestrongps.1.docbook
@@ -0,0 +1,84 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>celestrongps</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>celestrongps</command></refname>
+<refpurpose>Celestrong GPS driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>celestrongps</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>celestrongps</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>celestrongps</command> was written by &Jasem.Mutlaq;</para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-fliccd.1.docbook b/doc/kstars/man-fliccd.1.docbook
new file mode 100644
index 00000000..de6f7550
--- /dev/null
+++ b/doc/kstars/man-fliccd.1.docbook
@@ -0,0 +1,86 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>fliccd</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>fliccd</command></refname>
+<refpurpose>Finger Lakes Instruments CCD driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>fliccd</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>fliccd</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>fliccd</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-indiserver.1.docbook b/doc/kstars/man-indiserver.1.docbook
new file mode 100644
index 00000000..8e54ceb4
--- /dev/null
+++ b/doc/kstars/man-indiserver.1.docbook
@@ -0,0 +1,136 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>indiserver</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>indiserver</command></refname>
+<refpurpose>INDI server for telescope control by KStars</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>indiserver</command>
+<group choice="opt"><option>-p <replaceable>port</replaceable></option></group>
+<group choice="opt"><option>-r
+<replaceable>attempts</replaceable></option></group>
+<group><option>-vv</option></group>
+<group choice="req" rep="repeat"><option><replaceable>driver</replaceable></option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the INDI protocol.
+<command>indiserver</command> is a server that sits between the &kstars;
+user interface and the low-level hardware drivers.</para>
+<para>The <acronym>INDI</acronym> server is a network server, int hat either
+local or remote clients may connect to it to control astronomical
+instruments. The <acronym>INDI</acronym> server must be running on the
+machine that is physically connected to the astronomical instruments.</para>
+<note><para>There is usually no need to run the <acronym>INDI</acronym>
+server directly. Using the &kstars; device manager, you can set up
+astronomical instruments and start or stop the <acronym>INDI</acronym>
+server all from within &kstars;</para></note>
+<para>Much more detailed information is available in the &kstars; handbook,
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde;, and forms part
+of the &kde; edutainment module.</para>
+
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry>
+<term><option>-p <replaceable>port</replaceable></option></term>
+<listitem><para>Alternate IP port. The default is 7624.</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><option>-r
+<replaceable>attempts</replaceable></option></term>
+<listitem><para>Maximum attempts to restart, in case of a problem. The
+default is 2.</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><option>-vv</option></term>
+<listitem><para>Be more verbose with output to stderr.</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><option><replaceable>driver</replaceable></option></term>
+<listitem><para>The names of the <acronym>INDI</acronym> drivers to
+run.</para>
+<para>Currently available are:</para>
+<itemizedlist>
+<listitem><para><parameter>celestrongps</parameter> (Celestron
+GPS)</para></listitem>
+<listitem><para><parameter>fliccd</parameter> (Finger Lakes Instruments
+CCD)</para></listitem>
+<listitem><para><parameter>lx200_16</parameter> (LX200 16")</para>
+</listitem>
+<listitem><para><parameter>lx200autostar</parameter> (LX200 Autostar)</para>
+</listitem>
+<listitem><para><parameter>lx200classic</parameter> (LX200 Classic)</para>
+</listitem>
+<listitem><para><parameter>lx200generic</parameter> (LX200 Generic)</para>
+</listitem>
+<listitem><para><parameter>lx200gps</parameter> (LX200 GPS)</para>
+</listitem>
+<listitem><para><parameter>temma</parameter> (Temma Takahashi)</para>
+</listitem>
+<listitem><para><parameter>v4ldriver</parameter> (Video4Linux
+Generic)</para>
+</listitem>
+<listitem><para><parameter>v4lphilips</parameter> (Philips Webcam)</para>
+</listitem>
+</itemizedlist>
+</listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+
+<para>celestrongps(1), fliccd(1), lx200_16(1), lx200autostar(1), lx200classic(1), lx200generic(1), lx200gps(1), kstars(1), temma(1), v4ldriver(1), v4lphilips(1)</para>
+
+<para>More detailed user documentation is available in the &kstars;
+handbook, which you can reach from <ulink url="help:/kstars">help:/kstars</ulink> (either enter this
+<acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command> <parameter>help:/kstars</parameter></userinput>).</para>
+</refsect1>
+
+<refsect1>
+<title>Examples</title>
+<para>To start an <acronym>INDI</acronym> server running an LX200 GPS
+driver, and listening to connections on port 8000:</para>
+<screen><userinput><command>indiserver</command> <option>-p</option> <parameter>8000</parameter> <parameter>lx200gps</parameter></userinput></screen>
+</refsect1>
+<refsect1>
+<title>Authors</title>
+<!--FIXME: Who wrote the indiserver? -->
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+</refentry>
diff --git a/doc/kstars/man-lx200_16.1.docbook b/doc/kstars/man-lx200_16.1.docbook
new file mode 100644
index 00000000..453d519b
--- /dev/null
+++ b/doc/kstars/man-lx200_16.1.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>lx200_16</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>lx200_16</command></refname>
+<refpurpose>LX200 16" driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>lx200_16</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>lx200_16</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>lx200_16</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-lx200autostar.1.docbook b/doc/kstars/man-lx200autostar.1.docbook
new file mode 100644
index 00000000..394aaf9c
--- /dev/null
+++ b/doc/kstars/man-lx200autostar.1.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>lx200autostar</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>lx200autostar</command></refname>
+<refpurpose>LX200 Autostar driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>lx200autostar</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>lx200autostar</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>lx200autostar</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-lx200classic.1.docbook b/doc/kstars/man-lx200classic.1.docbook
new file mode 100644
index 00000000..ca7fb7ee
--- /dev/null
+++ b/doc/kstars/man-lx200classic.1.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>lx200classic</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>lx200classic</command></refname>
+<refpurpose>LX200 Classic driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>lx200classic</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>lx200classic</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>lx200classic</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-lx200generic.1.docbook b/doc/kstars/man-lx200generic.1.docbook
new file mode 100644
index 00000000..a501500a
--- /dev/null
+++ b/doc/kstars/man-lx200generic.1.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>lx200gps</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>lx200gps</command></refname>
+<refpurpose>LX200 GPS driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>lx200gps</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>lx200gps</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>lx200gps</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-temma.1.docbook b/doc/kstars/man-temma.1.docbook
new file mode 100644
index 00000000..fd6e2e23
--- /dev/null
+++ b/doc/kstars/man-temma.1.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>temma</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>temma</command></refname>
+<refpurpose>Temma Takahashi driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>temma</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>temma</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>temma</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-v4ldriver.1.docbook b/doc/kstars/man-v4ldriver.1.docbook
new file mode 100644
index 00000000..42bfaf43
--- /dev/null
+++ b/doc/kstars/man-v4ldriver.1.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>v4ldriver</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>v4ldriver</command></refname>
+<refpurpose>Video4Linux Generic driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>v4ldriver</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>v4ldriver</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>v4ldriver</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/man-v4lphilips.1.docbook b/doc/kstars/man-v4lphilips.1.docbook
new file mode 100644
index 00000000..302fbd19
--- /dev/null
+++ b/doc/kstars/man-v4lphilips.1.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>May 25, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>v4lphilips</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>v4lphilips</command></refname>
+<refpurpose>Video4Linux Philips Webcam driver for INDI telescope control</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>v4lphilips</command>
+<group><option>-v</option></group>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&kstars; allows you to configure and control astronomical instruments
+such as telescopes and focusers via the <acronym>INDI</acronym> protocol.
+<command>v4lphilips</command> is a device driver for supporting particular
+types of external hardware.</para>
+<para>This driver is not intended to be run directly. Instead you should
+use &kstars; to configure and operate your astronomical instruments. Most
+operations can be found under the <guimenu>Devices</guimenu> menu in
+&kstars;.</para>
+<para>&kstars; will start the <acronym>INDI</acronym> server internally, and
+the <acronym>INDI</acronym> server will in turn start this device
+driver.</para>
+<para>Much more detailed information can be found in the &kstars; handbook
+as described below.</para>
+<para>&kstars; is a graphical desktop planetarium for &kde; and forms part
+of the official &kde; edutainment module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry><term><option>-v</option></term>
+<listitem><para>Write more verbose output to stderr</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>indiserver(1), kstars(1)</para>
+
+<para>More detailed user documentation is available from <ulink
+url="help:/kstars">help:/kstars</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/kstars</parameter></userinput>).</para>
+
+<para>There is also further information available at <ulink
+url="http://edu.kde.org/kstars/">the &kde; Edutainment
+website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para><command>v4lphilips</command> was written by &Jasem.Mutlaq;</para>
+<para>This man page based on the one written for Debian by <personname><firstname>Ben</firstname><surname>Burton</surname></personname> <email>bab@debian.org</email></para>
+</refsect1>
+
+</refentry>
diff --git a/doc/kstars/meridian.docbook b/doc/kstars/meridian.docbook
new file mode 100644
index 00000000..e6859127
--- /dev/null
+++ b/doc/kstars/meridian.docbook
@@ -0,0 +1,28 @@
+<sect1 id="ai-meridian">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>The Local Meridian</title>
+<indexterm><primary>Local Meridian</primary>
+<seealso>Hour Angle</seealso>
+<seealso>Celestial Sphere</seealso>
+</indexterm>
+<para>
+The Local Meridian is an imaginary <link linkend="ai-greatcircle">Great Circle</link>
+on the <link linkend="ai-csphere">Celestial Sphere</link> that is perpendicular
+to the local <link linkend="ai-horizon">Horizon</link>. It passes through the
+North point on the Horizon, through the <link linkend="ai-cpoles">Celestial
+Pole</link>, up to the <link linkend="ai-zenith">Zenith</link>, and through the
+South point on the Horizon.
+</para><para>
+Because it is fixed to the local Horizon, stars will appear to drift past
+the Local Meridian as the Earth spins. You can use an object's <link
+linkend="equatorial">Right Ascension</link> and the <link
+linkend="ai-sidereal">Local Sidereal Time</link> to determine when it will
+cross your Local Meridian (see <link linkend="ai-hourangle">Hour Angle</link>).
+</para>
+</sect1>
+
diff --git a/doc/kstars/newfov.png b/doc/kstars/newfov.png
new file mode 100644
index 00000000..37264dbd
--- /dev/null
+++ b/doc/kstars/newfov.png
Binary files differ
diff --git a/doc/kstars/observinglist.docbook b/doc/kstars/observinglist.docbook
new file mode 100644
index 00000000..7a39610d
--- /dev/null
+++ b/doc/kstars/observinglist.docbook
@@ -0,0 +1,99 @@
+<sect1 id="tool-observinglist">
+<title>Observing List Tool</title>
+<indexterm><primary>Tools</primary>
+<secondary>Observing List Tool</secondary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Observing List Tool
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="observinglist.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Observing List Tool</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The purpose of the Observing List Tool is to provide convenient
+access to some common functions for a list of objects chosen by
+you. Objects are added to the list by using the <quote>Add to
+List</quote> action in the <link linkend="popup-menu">popup
+menu</link>, or by simply pressing the <keycap>O</keycap> key
+to add the currently-selected object.
+</para>
+<para>
+Objects in the list can be sorted by any of the data columns
+(Name, Right Ascension, Declination, Magnitude, and Type).
+To perform an action on an object, highlight it in the list,
+and then press one of the Action buttons at the top of the
+window. Some actions can be performed while multiple objects
+are selected; others only operate when one object is selected.
+The available actions are:
+
+<variablelist>
+<varlistentry>
+<term>Center</term>
+<listitem>
+<para>
+Center the display on the selected object, and begin Tracking
+it.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Scope</term>
+<listitem>
+<para>
+Point your <link linkend="indi">telescope</link> at the
+selected object.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Alt vs. Time</term>
+<listitem>
+<para>
+Open the <link linkend="tool-altvstime">Altitude vs. Time
+Tool</link>, with the selected object(s) preloaded
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Details</term>
+<listitem>
+<para>
+Open the <link linkend="tool-details">Detailed Information
+Window</link> for the selected object.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Remove</term>
+<listitem>
+<para>
+Remove the selected object(s) from the observing list.
+</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</para>
+
+<note>
+<para>
+The Observing List tool is a new feature and is still under
+development. We are planning to add more features, such as
+adding objects to the list by selecting a region in the sky, and
+the ability to save observing lists to disk.
+</para>
+</note>
+</sect1>
diff --git a/doc/kstars/observinglist.png b/doc/kstars/observinglist.png
new file mode 100644
index 00000000..3e14772d
--- /dev/null
+++ b/doc/kstars/observinglist.png
Binary files differ
diff --git a/doc/kstars/parallax.docbook b/doc/kstars/parallax.docbook
new file mode 100644
index 00000000..688dd334
--- /dev/null
+++ b/doc/kstars/parallax.docbook
@@ -0,0 +1,65 @@
+<sect1 id="ai-parallax">
+<sect1info>
+<author>
+<firstname>James</firstname> <surname>Lindenschmidt</surname>
+</author>
+</sect1info>
+<title>Parallax</title>
+<indexterm><primary>Parallax</primary></indexterm>
+<indexterm><primary>Astronomical Unit</primary><see>Parallax</see></indexterm>
+<indexterm><primary>Parsec</primary><see>Parallax</see></indexterm>
+ <para>
+ <firstterm>Parallax</firstterm> is the apparent change of an observed
+ object's position caused by a shift in the observer's position. As an
+ example, hold your hand in front of you at arm's length, and observe
+ an object on the other side of the room behind your hand. Now tilt
+ your head to your right shoulder, and your hand will appear on the
+ left side of the distant object. Tilt your head to your left
+ shoulder, and your hand will appear to shift to the right side of the
+ distant object.
+ </para>
+ <para>
+ Because the Earth is in orbit around the Sun, we observe the sky from
+ a constantly moving position in space. Therefore, we should expect
+ to see an <firstterm>annual parallax</firstterm> effect, in which the
+ positions of nearby objects appear to <quote>wobble</quote> back and forth in
+ response to our motion around the Sun. This does in fact happen, but
+ the distances to even the nearest stars are so great that you need to
+ make careful observations with a telescope to detect
+ it<footnote><para>The ancient Greek astronomers knew about parallax;
+ because they could not observe an annual parallax in the positions of
+ stars, they concluded that the Earth could not be in motion around
+ the Sun. What they did not realize was that the stars are millions of
+ times further away than the Sun, so the parallax effect is impossible
+ to see with the unaided eye.</para></footnote>.
+ </para>
+ <para>
+ Modern telescopes allow astronomers to use the annual parallax to
+ measure the distance to nearby stars, using triangulation. The
+ astronomer carefully measures the position of the star on two dates,
+ spaced six months apart. The nearer the star is to the Sun, the
+larger
+ the apparent shift in its position will be between the two dates.
+ </para>
+ <para>
+ Over the six-month period, the Earth has moved through half its orbit
+ around the Sun; in this time its position has changed by 2
+ <firstterm>Astronomical Units</firstterm> (abbreviated AU; 1 AU is
+ the distance from the Earth to the Sun, or about 150 million
+ kilometers). This sounds like a really long distance, but even the
+ nearest star to the Sun (alpha Centauri) is about 40
+ <emphasis>trillion</emphasis> kilometers away. Therefore, the annual
+ parallax is very small, typically smaller than one
+ <firstterm>arcsecond</firstterm>, which is only 1/3600 of one degree.
+ A convenient distance unit for nearby stars is the
+ <firstterm>parsec</firstterm>, which is short for "parallax
+ arcsecond". One parsec is the distance a star would have if its
+ observed parallax angle was one arcsecond. It is equal to 3.26
+ light-years, or 31 trillion kilometers<footnote><para>Astronomers
+ like this unit so much that they now use <quote>kiloparsecs</quote> to measure
+ galaxy-scale distances, and <quote>Megaparsecs</quote> to measure intergalactic
+ distances, even though these distances are much too large to have an
+ actual, observable parallax. Other methods are required to determine
+ these distances</para></footnote>.
+ </para>
+</sect1>
diff --git a/doc/kstars/popup.png b/doc/kstars/popup.png
new file mode 100644
index 00000000..d3741c08
--- /dev/null
+++ b/doc/kstars/popup.png
Binary files differ
diff --git a/doc/kstars/precession.docbook b/doc/kstars/precession.docbook
new file mode 100644
index 00000000..2e092263
--- /dev/null
+++ b/doc/kstars/precession.docbook
@@ -0,0 +1,54 @@
+<sect1 id="ai-precession">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Precession</title>
+<indexterm><primary>Precession</primary>
+</indexterm>
+<para>
+<firstterm>Precession</firstterm> is the gradual change in the direction of the
+Earth's spin axis. The spin axis traces a cone, completing a full circuit in
+26,000 years. If you have ever spun a top or a dreidel, the
+<quote>wobbling</quote> rotation of the top as it spins is precession.
+</para><para>
+Because the direction of the Earth's spin axis changes, so does the location of
+the <link linkend="ai-cpoles">Celestial Poles</link>.
+</para><para>
+The reason for the Earth's precession is complicated. The Earth is not a
+perfect sphere, it is a bit flattened, meaning the
+<link linkend="ai-greatcircle">Great Circle</link> of the equator is longer
+than a <quote>meridonal</quote> great circle that
+passes through the poles. Also, the Moon and Sun lie outside the Earth's
+Equatorial plane. As a result, the gravitational pull of the Moon and Sun on
+the oblate Earth induces a slight <emphasis>torque</emphasis> in addition to a
+linear force. This torque on the spinning body of the Earth leads to the
+precessional motion.
+</para>
+<tip>
+<para>Exercise:</para>
+<para>
+Precession is easiest to see by observing the <link
+linkend="ai-cpoles">Celestial Pole</link>. To find the pole, first switch to
+Equatorial Coordinates in the <guilabel>Configure &kstars;</guilabel> window, and
+then hold down the <keycap>Up arrow</keycap> key until the display stops
+scrolling. The declination displayed in the center of the
+<guilabel>Info Panel</guilabel> should be +90 degrees, and the bright star
+Polaris should be nearly at the center of the screen. Try slewing with the left
+and right arrow keys. Notice that the sky appears to rotate around the Pole.
+</para><para>
+We will now demonstrate Precession by changing the Date to a very remote year,
+and observing that the location of the Celestial Pole is no longer near Polaris.
+Open the <guilabel>Set Time</guilabel> window
+(<keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>), and set the date
+to the year 8000 (currently, &kstars; cannot handle dates much more remote than
+this, but this date is sufficient for our purposes). Notice that the sky
+display is now centered at a point between the constellations Cygnus and
+Cepheus. Verify that this is actually the pole by slewing left and right: the
+sky rotates about this point; in the year 8000, the North celestial pole will no
+longer be near Polaris.
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/quicktour.docbook b/doc/kstars/quicktour.docbook
new file mode 100644
index 00000000..551eedb6
--- /dev/null
+++ b/doc/kstars/quicktour.docbook
@@ -0,0 +1,376 @@
+<chapter id="using-kstars">
+<title>A Quick Tour of &kstars;</title>
+
+<para>
+This chapter presents a guided tour of &kstars;, introducing
+many of its important features.
+</para>
+
+<screenshot>
+<screeninfo>
+Here is a screenshot of the &kstars; main window:
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="screen1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Main Window</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The above screenshot shows a typical view of the KStars program. You
+can see the sky display centered on Betelgeuse, the brightest star in
+the constellation Orion. Orion has just risen above the eastern horizon.
+Stars are displayed with <link linkend="ai-colorandtemp">realistic
+colors</link> and relative brightnesses. If you look closely, you can
+also see the Moon near the left edge of the window. In three corners
+of the sky display, there are on-screen text labels displaying data on
+the current time (<quote>LT: 16:41:39 22 Jan 2005</quote>), the current
+Geographic Location (<quote>Tucson, Arizona, USA</quote>), and the
+current object in the center of the display (<quote>Focused on: Betelgeuse
+(alpha Orionis)</quote>). Above the sky display, there are two toolbars.
+The main toolbar contains shortcuts for
+<link linkend="kstars-menus">menu functions</link>, as well as a
+time-step widget which controls how fast the simulation clock runs.
+The view toolbar contains buttons that toggle the display of different
+kinds of objects in the sky. At the bottom of the window, there is a
+status bar which displays the name of any object you click on, and the
+<link linkend="ai-skycoords">sky coordinates</link> (both
+Right Ascension/Declination and Azimuth/Altitude) of the mouse cursor.
+</para>
+
+<sect1 id="startwizard">
+<title>The Setup Wizard</title>
+<para>
+<indexterm><primary>Setup Wizard</primary></indexterm>
+The first time you run KStars, you will be presented with a Setup Wizard,
+which allows you to easily set your geographic location and download some
+extra data files. You can press the <guilabel>Finish</guilabel> button
+at any time to exit the Setup Wizard.
+</para>
+
+<para>
+The first page of the Setup Wizard allows you to choose the starting
+geographic location, by selecting from the list of the 2500+ known
+locations on the right side of the window. The list of locations can be
+filtered to match the text you enter in the <guilabel>City</guilabel>,
+<guilabel>Province</guilabel>, and <guilabel>Country</guilabel> edit
+boxes. If your desired location is not present in the list, you can
+select a nearby city instead for now. Later on, you can add your
+precise location manually using the <link linkend="setgeo">Set Geographic
+Location tool</link>. Once you have selected a starting location, press
+the <guilabel>Next</guilabel> button.
+</para>
+
+<para>
+The second page of the Setup Wizard allows you to download extra data
+that are not included with the standard distribution of &kstars;.
+Simply press the <guilabel>Download Extra Data</guilabel> button to open
+the <guilabel>Get New Stuff</guilabel> tool. When you are all done,
+press the <guilabel>Finish</guilabel> button in the Setup Wizard to
+start exploring &kstars;.
+</para>
+
+<note>
+<para>
+The Download Extra Data tool is only available if you have KDE 3.3.x
+installed.
+</para>
+</note>
+</sect1>
+
+<sect1 id="lookaround">
+<title>Have a Look Around</title>
+<para>
+<indexterm><primary>Navigation Controls</primary>
+<secondary>Basics</secondary></indexterm>
+Now that we have the time and location set, let us have a look around.
+You can pan the display using the arrow keys. If you hold down the
+&Shift; key before panning, the scrolling speed is increased. The
+display can also be panned by clicking and dragging with the mouse.
+Note that while the display is scrolling, not all objects are
+displayed. This is done to cut down on the <acronym>CPU</acronym> load
+of recomputing object positions, which makes the scrolling smoother
+(you can configure what gets hidden while scrolling in the <link
+linkend="config">Configure &kstars;</link> window).
+
+There are seven ways to change the magnification (or
+<firstterm>Zoom level</firstterm>) of the display:</para>
+
+<orderedlist>
+<listitem>
+ <para>Use the <keycap>+</keycap> and
+ <keycap>-</keycap> keys</para>
+</listitem>
+<listitem>
+ <para>Press the Zoom In/Zoom Out buttons in the toolbar</para>
+</listitem>
+<listitem>
+ <para>Select
+ <guimenuitem>Zoom In</guimenuitem>/<guimenuitem>Zoom Out</guimenuitem>
+ from the <guimenu>View</guimenu> menu</para>
+</listitem>
+<listitem>
+ <para>Select <guimenuitem>Zoom to Angular Size...</guimenuitem> from
+ the <guimenu>View</guimenu> menu. This allows you to specify the
+ the field-of-view angle for the display, in degrees.</para>
+</listitem>
+<listitem>
+ <para>Use the scroll wheel on your mouse</para>
+</listitem>
+<listitem>
+ <para>Drag the mouse up and down with the &MMB; pressed.</para>
+</listitem>
+<listitem>
+ <para>Hold down &Ctrl; while dragging the mouse. This
+ will allow you to define a rectangle in the map. When you release the mouse
+ button, the display will zoom to match the rectangle.</para>
+</listitem>
+</orderedlist>
+
+<para>Notice that as you zoom in, you can see fainter stars than at
+lower zoom settings.</para>
+
+<para>
+Zoom out until you can see a green curve; this represents your local
+<link linkend="ai-horizon">horizon</link>. If you have not adjusted
+the default &kstars; configuration, the display will be solid green
+below the horizon, representing the solid ground of the Earth. There
+is also a white curve, which represents the <link
+linkend="ai-cequator">celestial equator</link>, and a tan curve, which
+represents the <link linkend="ai-ecliptic">Ecliptic</link>, the path
+that the Sun appears to follow across the sky over the course of a
+year. The Sun is always found somewhere along the Ecliptic, and the
+planets are never far from it.
+</para>
+</sect1>
+
+<sect1 id="skyobjects">
+<title>Objects in the Sky</title>
+<para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Overview</secondary></indexterm>
+&kstars; displays thousands of celestial objects: stars, planets,
+comets, asteroids, clusters, nebulae and galaxies. You can interact
+with displayed objects to perform actions on them or obtain more
+information about them. Clicking on an object will identify it in the
+status bar, and simply hovering the mouse cursor on an object will label
+it temporarily in the map. Double-clicking will recenter the display on
+the object and begin tracking it (so that it will remain centered as
+time passes). <mousebutton>Right</mousebutton> clicking an object opens
+the object's popup menu, which provides more options.
+</para>
+
+<sect2 id="popupquick">
+<title>The Popup Menu</title>
+<indexterm><primary>Popup Menu</primary><secondary>Example</secondary></indexterm>
+
+<para>
+Here is an example of the <mousebutton>right</mousebutton> click popup
+menu, for the Orion Nebula:
+</para>
+
+<screenshot>
+<screeninfo>Popup Menu for M 42</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="popup.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Popup Menu for M 42</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The appearance of the popup menu depends somewhat on the kind of
+object you <mousebutton>right</mousebutton>-click on, but the basic
+structure is listed below. You can get
+<link linkend="popup-menu">more detailed information about the popup
+menu</link>.
+</para>
+
+<para>
+The top section contains information labels (which are not selectable).
+The top one to three labels display the object's name(s) and object
+type. The next three labels show the object's rise, transit, and
+set times. If the rise and set times say "circumpolar", it means that
+the object is always above the horizon for the present location.
+</para>
+<para>
+The middle section contains items for performing actions on the
+object, such as <guimenuitem>Center and Track</guimenuitem>,
+<guimenuitem>Details...</guimenuitem>, and
+<guimenuitem>Attach Label</guimenuitem>. See the <link
+linkend="popup-menu">popup menu description</link> for a full list
+and description of each action.
+</para>
+<para>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Internet Links</secondary>
+<seealso>Popup Menu</seealso></indexterm>
+The bottom section contains links to images and/or informative webpages
+about the selected object. If you know of an additional &URL; with
+information or an image of the object, you can add a custom link to the
+object's popup menu using the <guimenuitem>Add Link...</guimenuitem>
+item.
+</para>
+</sect2>
+
+<sect2 id="findobjects">
+<title>Finding Objects</title>
+<indexterm><primary>Find Object Tool</primary></indexterm>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Finding by Name</secondary></indexterm>
+<para>
+You can search for named objects using the <guilabel>Find
+Object</guilabel> tool, which can be opened by clicking on the
+<guiicon>search</guiicon> icon in the toolbar, by selecting
+<guimenuitem>Find Object...</guimenuitem> from the
+<guimenu>Pointing</guimenu> menu, or by pressing
+<keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo>.
+The <guilabel>Find Object</guilabel> window is shown below:
+
+<screenshot>
+<screeninfo>Find Object Window</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="find.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Find Object Window</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+</para>
+
+<para>
+The window contains a list of all the named objects that &kstars; is
+aware of. Many of the objects only have a numeric catalog name (for
+example, NGC 3077), but some objects have a common name as well (for
+example, Whirlpool Galaxy). You can filter the list by name and
+by object type. To filter by name, enter a string in the edit box
+at the top of the window; the list will then only contain names
+which start with that string. To filter by type, select a type
+from the combo box at the bottom of the window.
+</para><para>
+To center the display on an object, highlight the desired object in
+the list, and press <guibutton>Ok</guibutton>. Note that if the
+object is below the horizon, the program will warn you that you may
+not see anything except the ground (you can make the ground invisible
+in the <guilabel>Display Options</guilabel> window, or by pressing the
+<guiicon>Ground</guiicon> button in the View toolbar).
+</para>
+</sect2>
+
+<sect2 id="centertrack">
+<title>Centering and Tracking</title>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Tracking</secondary></indexterm>
+<para>
+&kstars; will automatically begin tracking on an object whenever one
+is centered in the display, either by using the <guilabel>Find
+Object</guilabel> window, by double-clicking on it, or by
+selecting <guimenuitem>Center and Track</guimenuitem> from its
+<mousebutton>right</mousebutton>-click popup menu. You can disengage
+tracking by panning the display, pressing the <guiicon>Lock</guiicon>
+icon in the Main toolbar, or selecting <guimenuitem>Track
+Object</guimenuitem> from the <guimenu>Pointing</guimenu> menu.
+</para>
+
+<note>
+<para>
+<indexterm><primary>Orbit Trails</primary>
+<secondary>Attached to centered object</secondary>
+</indexterm>
+When tracking on a Solar System body, &kstars; will automatically
+attach an <quote>orbit trail</quote>, showing the path of the body
+across the sky. You will likely need to change the clock's timestep
+to a large value (such as <quote>1 day</quote>) to see the trail.
+</para>
+</note>
+</sect2>
+
+<sect2 id="objectactions">
+<title>Keyboard Actions</title>
+<indexterm><primary>Objects in the Sky</primary>
+<secondary>Keyboard Actions</secondary></indexterm>
+<para>
+
+When you click on an object in the map, it becomes the
+<firstterm>selected object</firstterm>, and its name is identified in
+the statusbar. There are a number of quick key commands available
+which act on the selected object:
+
+<variablelist>
+<varlistentry>
+<term><keycap>C</keycap></term>
+<listitem>
+<para>Center and Track on the selected object</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>D</keycap></term>
+<listitem>
+<para>Show the <link linkend="tool-details">Details window</link>
+for the selected object</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>L</keycap></term>
+<listitem>
+<para>Toggle a visible name label on the selected object</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>O</keycap></term>
+<listitem>
+<para>Add the selected object to the
+<link linkend="tool-observinglist">Observing List</link></para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>T</keycap></term>
+<listitem>
+<para>Toggle a visible curve on the sky, showing the path of the
+object across the sky (only applicable to Solar System bodies)
+</para>
+</listitem>
+</varlistentry>
+
+</variablelist>
+</para>
+
+<note>
+<para>
+By holding down the <keycap>Alt</keycap> key, you can perform
+these actions on the centered object, rather than the selected
+object.
+</para>
+</note>
+</sect2> <!--object actions-->
+</sect1> <!--objects in the sky-->
+
+<sect1 id="endtour">
+<title>End of the Tour</title>
+<para>
+This concludes the tour of &kstars;, although we have only scratched
+the surface of the available features. &kstars; includes many useful
+<link linkend="tools">astronomy tools</link>, it can directly
+<link linkend="indi">control your telescope</link>, and it offers a
+wide variety of <link linkend="config">configuration and
+customization options</link>. In addition, this Handbook includes the
+<link linkend="astroinfo">AstroInfo Project</link>, a series of short,
+interlinked articles explaining some of the celestial and astrophysical
+concepts behind &kstars;.
+</para>
+</sect1>
+
+</chapter>
diff --git a/doc/kstars/retrograde.docbook b/doc/kstars/retrograde.docbook
new file mode 100644
index 00000000..00f200ab
--- /dev/null
+++ b/doc/kstars/retrograde.docbook
@@ -0,0 +1,44 @@
+<sect1 id="ai-retrograde">
+<sect1info>
+<author>
+<firstname>John</firstname>
+<surname>Cirillo</surname>
+</author>
+</sect1info>
+<title>Retrograde Motion</title>
+<indexterm><primary>Retrograde Motion</primary>
+</indexterm>
+
+<para>
+<firstterm>Retrograde Motion</firstterm> is the orbital motion of a body in a
+direction opposite that which is normal to spatial bodies within a given system.
+</para><para>
+When we observe the sky, we expect most objects to appear to move in a
+particular direction with the passing of time. The apparent motion of
+most bodies in the sky is from east to west. However it is possible to
+observe a body moving west to east, such as an artificial satellite or
+space shuttle that is orbiting eastward. This orbit is
+considered Retrograde Motion.
+</para><para>
+Retrograde Motion is most often used in reference to the
+motion of the outer planets (Mars, Jupiter, Saturn, and so forth).
+Though these planets appear to move from east to west on a nightly
+basis in response to the spin of the Earth, they are actually drifting
+slowly eastward with respect to the stationary stars, which can be
+observed by noting the position of these planets for several nights in a
+row. This motion is normal for these planets, however, and not
+considered Retrograde Motion. However, since the Earth completes its
+orbit in a shorter period of time than these outer planets, we
+occasionally overtake an outer planet, like a faster car on a
+multiple-lane highway. When this occurs, the planet we are passing will
+first appear to stop its eastward drift, and it will then
+appear to drift back toward the west. This is Retrograde Motion, since
+it is in a direction opposite that which is typical for planets. Finally,
+as the Earth swings past the the planet in its orbit, they appear to
+resume their normal west-to-east drift on successive nights.
+</para><para>
+This Retrograde Motion of the planets puzzled ancient Greek
+astronomers, and was one reason why they named these bodies <quote>planets</quote>
+which in Greek means <quote>wanderers</quote>.
+</para>
+</sect1>
diff --git a/doc/kstars/screen1.png b/doc/kstars/screen1.png
new file mode 100644
index 00000000..da20c085
--- /dev/null
+++ b/doc/kstars/screen1.png
Binary files differ
diff --git a/doc/kstars/scriptbuilder.docbook b/doc/kstars/scriptbuilder.docbook
new file mode 100644
index 00000000..3a2f57ce
--- /dev/null
+++ b/doc/kstars/scriptbuilder.docbook
@@ -0,0 +1,300 @@
+<sect1 id="tool-scriptbuilder">
+<title>The Script Builder Tool</title>
+<indexterm><primary>Tools</primary>
+<secondary>Script Builder</secondary>
+</indexterm>
+
+<para>
+KDE applications can be controlled externally from another program,
+from a console prompt, or from a shell script using the Desktop
+COmmunication Protocol (<abbrev>DCOP</abbrev>). KStars takes
+advantage of this feature to allow rather complex behaviors to be
+scripted and played back at any time. This can be used, for example,
+to create a classroom demo to illustrate an astronomical concept.
+</para>
+<para>
+The problem with DCOP scripts is, writing them is a bit like
+programming, and can seem a daunting task to those who do not have
+programming experience. The Script Builder Tool provides a
+<abbrev>GUI</abbrev> point-and-click interface for constructing
+KStars DCOP scripts, making it very easy to create complex scripts.
+</para>
+
+<sect2 id="sb-intro">
+<title>Introduction to the Script Builder</title>
+
+<para>
+Before explaining how to use the Script Builder, I provide a very
+brief introduction to all of the <abbrev>GUI</abbrev> components;
+for more infomation, use the "What's This?" function.
+</para>
+
+<screenshot>
+<screeninfo>
+The Script Builder Tool
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="scriptbuilder.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Script Builder Tool</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The Script Builder is shown in the above screenshot. The box on the
+left is the <firstterm>Current Script box</firstterm>; it shows the
+list of commands that comprise the current working script. The box
+on the right is the <firstterm>Function Browser</firstterm>; it
+displays the list of all available script functions. Below the
+Function Browser, there is a small panel which will display short
+documentation about the script function highlighted in the Function
+Browser. The panel below the Current Script box is the
+<firstterm>Function Arguments panel</firstterm>; when a function is
+highlighted in the Current Script box, this panel will contain items
+for specifying values for any arguments that the highlighted function
+requires.
+</para><para>
+Along the top of the window, there is a row of buttons which operate
+on the script as a whole. From left to right, they are:
+<guibutton>New Script</guibutton>, <guibutton>Open Script</guibutton>,
+<guibutton>Save Script</guibutton>, <guibutton>Save Script
+As...</guibutton>, and <guibutton>Test Script</guibutton>. The
+function of these buttons should be obvious, except perhaps the last
+button. Pressing <guibutton>Test Script</guibutton> will attempt to
+run the current script in the main KStars window. You should move
+the Script Builder window out of the way before pressing this, so you
+can see the results.
+</para><para>
+In the center of the window, there is a column of buttons which operate
+on individual script functions. From top to bottom, they are:
+<guibutton>Add Function</guibutton>, <guibutton>Remove
+Function</guibutton>, <guibutton>Copy Function</guibutton>,
+<guibutton>Move Up</guibutton>, and <guibutton>Move Down</guibutton>.
+<guibutton>Add Function</guibutton> adds the currently-highlighted
+function in the Function Browser to the Current Script box (you can
+also add a function by double-clicking on it). The rest of the
+buttons operate on the function highlighted in the Current Script box,
+either removing it, duplicating it, or changing its position in the
+current script.
+</para>
+</sect2>
+
+<sect2 id="sb-using">
+<title>Using the Script Builder</title>
+<para>
+In order to illustrate using the Script Builder, we present a small
+tutorial example where we make a script that tracks the Moon while
+the clock runs at an accelerated rate.
+</para><para>
+If we are going to track the Moon, we will need to point the display
+at it first. The <firstterm>lookToward</firstterm> function
+is used to do this. Highlight this function in the Function Browser,
+and note the documentation displayed in the panel below the Browser.
+Press the <guibutton>Add Function</guibutton> button to add this
+function to the Current Script box. The Function Arguments panel
+will now contain a combobox labeled <quote>dir</quote>, short for
+direction. This is the direction in which the display should
+be pointed. The combobox contains only the cardinal compass points,
+not the Moon or any other objects. You can either enter
+<quote>Moon</quote> in the box manually, or press the
+<guibutton>Object</guibutton> button to use the <guilabel>Find
+Object</guilabel> window to select the Moon from the list of named
+objects. Note that, as usual, centering on an object automatically
+engages object-tracking mode, so there is no need to add the
+<firstterm>setTracking</firstterm> function after lookToward.
+</para><para>
+Now that we have taken care of pointing at the Moon, we next want to
+make time pass at an accelerated rate. Use the
+<firstterm>setClockScale</firstterm> function for this. Add it to
+the script by double-clicking on it in the Function Browser. The
+Function Arguments panel contains a timestep spinbox for setting the
+desired time step for the simulation clock. Change the timestep to
+3 hours.
+</para><para>
+OK, we have pointed at the Moon and accelerated the clock. Now we just
+want the script to wait for several seconds while the display tracks
+on the Moon. Add the <firstterm>waitFor</firstterm> function to the
+script, and use the Function Arguments panel to specify that it should
+wait for 20 seconds before continuing.
+</para><para>
+To finish up, let us reset the clock's timestep to the normal value
+of 1 second. Add another instance of setClockScale, and set its value
+to 1 sec.
+</para><para>
+Actually, we are not quite done yet. We should probably make sure that
+the display is using Equatorial coordinates before the script tracks
+the Moon with an accelerated time step. Otherwise, if the display is
+using Horizontal coordinates, it will rotate very quickly through
+large angles as the Moon rises and sets. This can be very confusing,
+and is avoided by setting the View Option
+<firstterm>UseAltAz</firstterm> to <quote>false</quote>. To change
+any View Option, use the <firstterm>changeViewOption</firstterm>
+function. Add this function to the script, and examine the Function
+Arguments panel. There is a combobox which contains the list of all
+options which can be adjusted by changeViewOption. Since we know
+we want the UseAltAz option, we could simply select it from the
+combobox. However, the list is quite long, and there is no
+explanation of what each item is for. It therefore may be easier to
+press the <guibutton>Browse Tree</guibutton> button, which will open
+a window containing a tree view of the available options, organized by
+topic. In addition, each item has a short explanation of what the
+option does, and the data type of the option's value. We find
+UseAltAz under the <guilabel>Skymap options</guilabel> category.
+Just highlight this item and press <guibutton>OK</guibutton>, and it
+will be selected in the combobox of the Function Arguments panel.
+Finally, make its value <quote>false</quote> or <quote>0</quote>.
+</para><para>
+One more step: changing UseAltAz at the end of the script does us no
+good; we need this to be changed before anything else happens. So,
+make sure this function is highlighted in the Current Script box,
+and press the <guibutton>Move Up</guibutton> button until it is the
+first function.
+</para><para>
+Now that we have finished the script, we should save it to disk.
+Press the <guibutton>Save Script</guibutton> button. This will first
+open a window in which you can provide a name for the script, and fill
+in your name as the author. Enter <quote>Tracking the Moon</quote>
+for a name, and your name as the author, and press
+<guibutton>OK</guibutton>. Next, you will see the standard &kde; Save
+File dialog. Specify a filename for the script and press
+<guibutton>OK</guibutton> to save the script. Note that if your
+filename does not end with <quote>.kstars</quote>, this suffix
+will be automatically attached. If you are curious, you can examine the
+script file with any text editor.
+</para><para>
+Now that we have a completed script, we can run it in a couple of ways.
+From a console prompt, you can simply execute the script as long as an
+instance of KStars is currently running. Alternatively, you can execute
+the script from within KStars using the <guimenuitem>Run
+Script</guimenuitem> item in the <guimenu>File</guimenu> menu.
+</para>
+</sect2>
+
+<sect2 id="sb-indi">
+ <title>Device Automation with INDI</title>
+ <para>
+ Device scheduling and automation is supported for all <link linkend="what-is-indi">INDI</link>-compliant devices. You can coordinate any number of devices to perform complex operations using &kstars; <link linkend="sb-intro">Script Builder</link>. This can be accomplished by using &kstars; INDI DCOP interface, which provides different classes of functions to suit your tasks. The INDI DCOP functions can be decomposed into five different classes. The following is a review of the functions and their arguments as supported in KStars. It it highly recommended to read the <link linkend="indi-concepts">INDI Concepts</link> section as we will employ key INDI concepts throughout this tutorial.</para>
+ <orderedlist>
+ <listitem><para>Generic Device Functions: Functions to establish/shutdown devices..etc.</para>
+ <itemizedlist>
+ <listitem><para><function>startINDI (QString deviceName, bool useLocal)</function> : Establish an INDI service either as local or server.</para></listitem>
+ <listitem><para><function>shutdownINDI (QString deviceName)</function> : Shutdown the INDI service.</para></listitem>
+ <listitem><para><function>switchINDI(QString deviceName, bool turnOn)</function> : Connect or Disconnect an INDI device.</para></listitem>
+ <listitem><para><function>setINDIPort(QString deviceName, QString port)</function> : Set the device's connection port.</para></listitem>
+ <listitem><para><function>setINDIAction(QString deviceName, QString action)</function> : Activate an INDI action. The action can be any <emphasis>element</emphasis> of a <emphasis>switch property</emphasis></para></listitem>
+ <listitem><para><function>waitForINDIAction(QString deviceName, QString action)</function> : Pause script execution until the specified action <emphasis>property</emphasis> returns with OK status.</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Telescope Functions: Functions to control the telescope motion and status.</para>
+ <itemizedlist>
+ <listitem><para><function>setINDIScopeAction(QString deviceName, QString action)</function> : Set the telescope mode or action. Available options are SLEW, TRACK, SYNC, PARK, and ABORT.</para></listitem>
+ <listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function> : Set the telescope JNow target coordinates to <emphasis>RA</emphasis> and <emphasis>DEC</emphasis>.</para></listitem>
+ <listitem><para><function>setINDITargetName(QString deviceName, QString objectName)</function> : Set the telescope JNow target coordinates to the coordinates of <emphasis>objectName</emphasis>. KStars will lookup the object name in its database and will fetch RA and Dec once found.</para></listitem>
+ <listitem><para><function>setINDIGeoLocation(QString deviceName, double
+longitude, double latitude)</function> : Set the telescope geographical
+location to the longitude and latitude as specified. The longitude is measured
+from Greenwich, UK, to the East. However, while it is common to use negative
+longitudes for the Western hemisphere, INDI requires longitude values between
+0 and 360 degrees. So if you have a negative longitude, simply add 360
+degrees to get the value that INDI expects. For example, Calgary, Canada
+coordinates in &kstars; are longitude: -114 04 58; latitude: 51 02 58. So
+INDI's would need longitude = 360 - 114.083 = 245.917
+degrees.</para></listitem>
+ <listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function> : Set the telescope UTC Date and Time in ISO 8601 format. The format is YYYY-MM-DDTHH:MM:SS (e.g. 2004-07-12T22:05:32).</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Camera/CCD Functions: Functions to control the camera/CCD properties and status.</para>
+ <itemizedlist>
+ <listitem><para><function>setINDICCDTemp(QString deviceName, int temp)</function> : Set the CCD chip target temperature in degrees celsius.</para></listitem>
+ <listitem><para><function>setINDIFrameType(QString deviceName, QString type)</function> : Set the CCD frame type. Available options are FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, and FRAME_FLAT.</para></listitem>
+ <listitem><para><function>startINDIExposure(QString deviceName, int timeout)</function> : Start the CCD/Camera exposure for the duration specified by <emphasis>timeout</emphasis> in seconds.</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Focuser Functions: Functions to control the focuser motion and status.</para>
+ <itemizedlist>
+ <listitem><para><function>setINDIFocusSpeed(QString deviceName, QString action)</function> : Set the focuser speed. Available options are FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, and FOCUS_FAST.</para></listitem>
+ <listitem><para><function>setINDIFocusTimeout(QString deviceName, int timeout)</function> : Set the duration in seconds for any subsequent startINDIFocus operations.</para></listitem>
+ <listitem><para><function>startINDIFocus(QString deviceName, int focusDir)</function> : Move the focuser either inward (focusDir = 0) or outward (focusDir = 1). The speed and duration of this operation is set by the <function>setINDIFocusSpeed()</function> and <function>setINDIFocusTimeout()</function> functions.</para></listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem><para>Filter Functions: Functions to control the filter position.</para>
+ <itemizedlist>
+ <listitem><para><function>setINDIFilterNum(QString deviceName, int filter_num)</function> : Change the filter position to <varname>filter_num</varname>. The user can assign aliases to filter numbers in the <guimenuitem>Configure INDI</guimenuitem> dialog box under the <guimenu>Devices</guimenu> menu (e.g. Filter 1 = Red, Filter 2 = Green..etc).</para></listitem>
+ </itemizedlist>
+ </listitem>
+
+ </orderedlist>
+
+<para>
+Note that the device name is the first argument of all INDI functions. This permits different commands that are sent to different INDI devices to be intermixed together in one script. The Script Builder tool provides two options to facilitate the creation and editing of INDI scripts:</para>
+<itemizedlist>
+ <listitem><para><option>Append waitForINDIAction after any INDI action</option> : When checked, the Script Builder tool will automatically add <function>waitForINDIAction()</function> after any action it recognizes. For example, If you add <function>switchINDI()</function> function to the script and this option was checked, the Script Builder will add "waitForINDIAction CONNECTION" in the script file just after <function>switchINDI()</function>. This will cause the script to pause after it issues <function>switchINDI()</function> until <function>switchINDI()</function> returns with OK status (&ie; device connection was successful). It is critically important to know that the Script Builder cannot automatically add <function>waitForINDIAction()</function> for generic actions added using the <function>setINDIAction()</function> function. This is because KStars cannot determine the parent property of generic actions. Therefore, you must manually add <function>waitForINDIAction()</function> after generic actions when desired.</para>
+ </listitem>
+ <listitem><para><option>Reuse INDI device name</option> : When checked, the device name field of all subsequent functions is automatically filled with the last device name. The last device name is set every time <function>startINDI()</function> function is added to the current script. When working with multiple devices, it is recommended to have this option off.</para>
+ </listitem>
+</itemizedlist>
+
+<para>Now we are ready to create a demo script that controls LX200 GPS telescope, in addition to Finger Lakes CCD camera. Our task is simple. We will ask the telescope to slew and track Mars, then we will ask the camera to take three shots 10 seconds each separated by 20 seconds.</para>
+<important><para>Since there is no direct feedback from the INDI DCOP interface about the progress, value, or status of the device operations and parameters (except for <function>waitForINDIAction()</function>), device automation in KStars is similar to an open-loop control system. In such a system, there is usually no direct feedback to measure the progress of the system and to correct for errors. Consequently, you must design your device automation scripts with careful consideration. All automation scripts must be subjected to rigorous testing before deployment.</para></important>
+
+<screenshot>
+ <screeninfo>
+ The Script Builder Tool
+ </screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="indiscript.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Script Builder Tool</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>The demo script is shown in the above screenshot. Note that we checked <option>"Append waitForINDIAction after any INDI action"</option> and unchecked <option>"Reuse INDI device name"</option>. The first function to add is <function>startINDI()</function> as shown above. We want to run our devices as local, so we will not change the service mode provided in the function arguments window. We type in our device name, starting with the telescope "LX200 GPS". We repeat the same operation again for "FLI CCD". There is a <function>waitFor()</function> function after that. It is generally recommended to use <function>waitFor()</function> function immediately after <function>startINDI()</function> to pause the script for 1-5 seconds. This will ensure that all properties are built and are ready to receive command. It is also useful for controlling remote devices because retrieving and building properties might take some time. In the next function, <function>switchINDI()</function>, we connect to each device.</para>
+
+<para>Since <option>"Append waitForINDIAction after any INDI action"</option> is checked, we do not need to add <function>waitForINDIAction()</function> after <function>switchINDI()</function> to insure that we only continue executing the script after we successfully connect. This is because the Script Builder tool will do this automatically for us when we save the script. Now let us set the telescope mode to tracking, click on the <function>setINDIScopeAction()</function> function and select TRACK. Note that we need to set the telescope to tracking <emphasis>before</emphasis> issuing the coordinates it needs to track. The <function>setINDIScopeAction()</function> function is provided for convenience; since in this example, it simply issues a generic <function>setINDIAction()</function> function followed by the keyword TRACK. However, the benefit of using <function>setINDIScopeAction()</function> is that KStars can automatically append <function>waitForINDIAction()</function> after it when required. This facility is not automatically available to generic actions as we discussed before.</para>
+
+<para>Next we use the <function>setINDITargetName()</function> function and set it to Mars. Finally, the last few steps involve capturing an image for 10 seconds which can be done by using <function>startINDIExposure()</function> function, and waiting for 20 seconds in between which can be done by using <function>waitFor()</function> function with a value of 20.</para>
+
+<para>We can now save our script and execute it at any time. The saved script will be similar to this:</para>
+<blockquote><programlisting>
+ #!/bin/bash
+ #KStars DCOP script: Demo Script
+ #by Jasem Mutlaq
+ #last modified: Thu Jan 6 2005 09:58:26
+ #
+ KSTARS=`dcopfind -a 'kstars*'`
+ MAIN=KStarsInterface
+ CLOCK=clock#1
+ dcop $KSTARS $MAIN startINDI "LX200 GPS" true
+ dcop $KSTARS $MAIN startINDI "FLI CCD" true
+ dcop $KSTARS $MAIN waitFor 3
+ dcop $KSTARS $MAIN switchINDI "LX200 GPS" true
+ dcop $KSTARS $MAIN waitForINDIAction "LX200 GPS" CONNECTION
+ dcop $KSTARS $MAIN switchINDI "FLI CCD" true
+ dcop $KSTARS $MAIN waitForINDIAction "FLI CCD" CONNECTION
+ dcop $KSTARS $MAIN setINDIScopeAction "LX200 GPS" TRACK
+ dcop $KSTARS $MAIN waitForINDIAction "LX200 GPS" ON_COORD_SET
+ dcop $KSTARS $MAIN setINDITargetName "LX200 GPS" Mars
+ dcop $KSTARS $MAIN waitForINDIAction "LX200 GPS" EQUATORIAL_EOD_COORD
+ dcop $KSTARS $MAIN startINDIExposure "FLI CCD" 10
+ dcop $KSTARS $MAIN waitForINDIAction "FLI CCD" EXPOSE_DURATION
+ dcop $KSTARS $MAIN waitFor 20
+ dcop $KSTARS $MAIN startINDIExposure "FLI CCD" 10
+ dcop $KSTARS $MAIN waitForINDIAction "FLI CCD" EXPOSE_DURATION
+ dcop $KSTARS $MAIN waitFor 20
+ dcop $KSTARS $MAIN startINDIExposure "FLI CCD" 10
+ dcop $KSTARS $MAIN waitForINDIAction "FLI CCD" EXPOSE_DURATION
+</programlisting>
+</blockquote>
+
+<note>
+<para>The INDI Library provides robust scripting tools that enable developers to orchestrate very complex scripts. For more details, refer to the <ulink url="http://indi.sourceforge.net/manual/book1.html">INDI Developer Manual</ulink>.</para>
+</note>
+</sect2>
+</sect1>
+
diff --git a/doc/kstars/scriptbuilder.png b/doc/kstars/scriptbuilder.png
new file mode 100644
index 00000000..2ada4982
--- /dev/null
+++ b/doc/kstars/scriptbuilder.png
Binary files differ
diff --git a/doc/kstars/sidereal.docbook b/doc/kstars/sidereal.docbook
new file mode 100644
index 00000000..a60ab44d
--- /dev/null
+++ b/doc/kstars/sidereal.docbook
@@ -0,0 +1,80 @@
+<sect1 id="ai-sidereal">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Sidereal Time</title>
+<indexterm><primary>Sidereal Time</primary>
+<seealso>Hour Angle</seealso>
+</indexterm>
+<para>
+<firstterm>Sidereal Time</firstterm> literally means <quote>star time</quote>.
+The time we are used to using in our everyday lives is Solar Time. The
+fundamental unit of Solar Time is a <firstterm>Day</firstterm>: the time it
+takes the Sun to travel 360 degrees around the sky, due to the rotation of the
+Earth. Smaller units of Solar Time are just divisions of a Day:
+</para><para>
+<itemizedlist>
+<listitem><para>1/24 Day = 1 Hour</para></listitem>
+<listitem><para>1/60 Hour = 1 Minute</para></listitem>
+<listitem><para>1/60 Minute = 1 Second</para></listitem>
+</itemizedlist>
+</para><para>
+However, there is a problem with Solar Time. The Earth does not actually
+spin around 360 degrees in one Solar Day. The Earth is in orbit around the
+Sun, and over the course of one day, it moves about one Degree along its
+orbit (360 degrees/365.25 Days for a full orbit = about one Degree per
+Day). So, in 24 hours, the direction toward the Sun changes by about a
+Degree. Therefore, the Earth has to spin 361 degrees to make
+the Sun look like it has traveled 360 degrees around the Sky.
+</para><para>
+In astronomy, we are concerned with how long it takes the Earth to spin
+with respect to the <quote>fixed</quote> stars, not the Sun. So, we would like a
+timescale that removes the complication of Earth's orbit around the Sun,
+and just focuses on how long it takes the Earth to spin 360 degrees with
+respect to the stars. This rotational period is called a <firstterm>Sidereal
+Day</firstterm>. On average, it is 4 minutes shorter than a Solar Day, because
+of the extra 1 degree the Earth spins in a Solar Day.
+Rather than defining a Sidereal Day to be 23 hours, 56 minutes, we define
+Sidereal Hours, Minutes and Seconds that are the same fraction of a Day as
+their Solar counterparts. Therefore, one Solar Second = 1.00278 Sidereal
+Seconds.
+</para><para>
+The Sidereal Time is useful for determining where the stars are at any
+given time. Sidereal Time divides one full spin of the Earth into 24
+Sidereal Hours; similarly, the map of the sky is divided into 24 Hours
+of <firstterm>Right Ascension</firstterm>. This is no
+coincidence; Local Sidereal Time (<acronym>LST</acronym>) indicates the Right
+Ascension on the sky that is currently crossing the <link
+linkend="ai-meridian">Local Meridian</link>. So, if a star has a Right
+Ascension of 05h 32m 24s, it will be on your meridian at LST=05:32:24. More
+generally, the difference between an object's <acronym>RA</acronym> and the Local
+Sidereal Time tells you how far from the Meridian the object is. For example,
+the same object at LST=06:32:24 (one Sidereal Hour later), will be one Hour of
+Right Ascension west of your meridian, which is 15 degrees. This angular
+distance from the meridian is called the object's <link
+linkend="ai-hourangle">Hour Angle</link>.
+</para>
+<tip>
+<para>
+The Local Sidereal Time is displayed by &kstars; in the <guilabel>Time Info
+Box</guilabel>, with the label <quote>ST</quote> (you have to
+<quote>unshade</quote> the box by double-clicking it in order to see the
+sidereal time). Note that the changing sidereal seconds are not synchronized
+with the changing Local Time and Universal Time seconds. In fact, if you watch
+the clocks for a while, you will notice that the Sidereal seconds really are
+slightly shorter than the LT and UT seconds.
+</para><para>
+Point to the <link linkend="ai-zenith">Zenith</link> (press <keycap>Z</keycap>
+or select <guimenuitem>Zenith</guimenuitem> from the
+<guimenu>Pointing</guimenu>
+menu). The Zenith is the point on the sky where you are looking <quote>straight
+up</quote> from the ground, and it is a point on your <link
+linkend="ai-meridian">Local Meridian</link>. Note the Right Ascension of the
+Zenith: it is exactly the same as your Local Sidereal Time.
+</para>
+</tip>
+</sect1>
+
diff --git a/doc/kstars/skycoords.docbook b/doc/kstars/skycoords.docbook
new file mode 100644
index 00000000..1017be06
--- /dev/null
+++ b/doc/kstars/skycoords.docbook
@@ -0,0 +1,152 @@
+<sect1 id="ai-skycoords">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Celestial Coordinate Systems</title>
+<para>
+<indexterm><primary>Celestial Coordinate Systems</primary>
+<secondary>Overview</secondary></indexterm>
+A basic requirement for studying the heavens is determining where in the
+sky things are. To specify sky positions, astronomers have developed
+several <firstterm>coordinate systems</firstterm>. Each uses a coordinate grid
+projected on the <link linkend="ai-csphere">Celestial Sphere</link>, in
+analogy to the <link linkend="ai-geocoords">Geographic coordinate
+system</link> used on the surface of the Earth. The coordinate systems
+differ only in their choice of the <firstterm>fundamental plane</firstterm>,
+which divides the sky into two equal hemispheres along a <link
+linkend="ai-greatcircle">great circle</link>. (the fundamental plane of the
+geographic system is the Earth's equator). Each coordinate system is named for
+its choice of fundamental plane.
+</para>
+
+<sect2 id="equatorial">
+<title>The Equatorial Coordinate System</title>
+<indexterm><primary>Celestial Coordinate Systems</primary>
+<secondary>Equatorial Coordinates</secondary>
+<seealso>Celestial Equator</seealso>
+<seealso>Celestial Poles</seealso>
+<seealso>Geographic Coordinate System</seealso>
+</indexterm>
+<indexterm><primary>Right Ascension</primary><see>Equatorial Coordinates</see></indexterm>
+<indexterm><primary>Declination</primary><see>Equatorial Coordinates</see></indexterm>
+
+<para>
+The <firstterm>Equatorial coordinate system</firstterm> is probably the most
+widely used celestial coordinate system. It is also the most closely related
+to the <link linkend="ai-geocoords">Geographic coordinate system</link>, because
+they use the same fundamental plane, and the same poles. The projection of the
+Earth's equator onto the celestial sphere is called the
+<link linkend="ai-cequator">Celestial Equator</link>.
+Similarly, projecting the geographic Poles onto the celestial sphere defines the
+North and South <link linkend="ai-cpoles">Celestial Poles</link>.
+</para><para>
+However, there is an important difference between the equatorial and
+geographic coordinate systems: the geographic system is fixed to the
+Earth; it rotates as the Earth does. The Equatorial system is
+fixed to the stars<footnote id="fn-precess"><para>actually, the equatorial
+coordinates are not quite fixed to the stars. See <link
+linkend="ai-precession">precession</link>. Also, if <link
+linkend="ai-hourangle">Hour Angle</link> is used in place of Right
+Ascension, then the Equatorial system is fixed to the Earth, not to the
+stars.</para></footnote>, so it appears to rotate across the sky with the stars,
+but of course it is really the Earth rotating under the fixed sky.
+</para><para>
+The <firstterm>latitudinal</firstterm> (latitude-like) angle of the Equatorial
+system is called <firstterm>Declination</firstterm> (Dec for short). It
+measures the angle of an object above or below the Celestial Equator. The
+<firstterm>longitudinal</firstterm> angle is called the <firstterm>Right
+Ascension</firstterm> (<acronym>RA</acronym> for short). It measures the angle of an object East
+of the <link linkend="ai-equinox">Vernal Equinox</link>. Unlike longitude,
+Right Ascension is usually measured in hours instead of degrees, because the
+apparent rotation of the Equatorial coordinate system is closely related to
+<link linkend="ai-sidereal">Sidereal Time</link> and <link
+linkend="ai-hourangle">Hour Angle</link>. Since a full rotation of the sky
+takes 24 hours to complete, there are (360 degrees / 24 hours) = 15 degrees in
+one Hour of Right Ascension.
+</para>
+</sect2>
+
+<sect2 id="horizontal">
+<title>The Horizontal Coordinate System</title>
+
+<indexterm><primary>Celestial Coordinate Systems</primary>
+<secondary>Horizontal Coordinates</secondary>
+<seealso>Horizon</seealso>
+<seealso>Zenith</seealso>
+</indexterm>
+<indexterm><primary>Azimuth</primary><see>Horizontal Coordinates</see></indexterm>
+<indexterm><primary>Altitude</primary><see>Horizontal Coordinates</see></indexterm>
+<para>
+The Horizontal coordinate system uses the observer's local <link
+linkend="ai-horizon">horizon</link> as the Fundamental Plane. This conveniently
+divides the sky into the upper hemisphere that you can see, and the lower
+hemisphere that you can't (because the Earth is in the way). The pole of the
+upper hemisphere is called the <link linkend="ai-zenith">Zenith</link>. The
+pole of the lower hemisphere is called the <firstterm>nadir</firstterm>. The
+angle of an object above or below the horizon is called the
+<firstterm>Altitude</firstterm> (Alt for short). The angle of an object around
+the horizon (measured from the North point, toward the East) is called the
+<firstterm>Azimuth</firstterm>. The Horizontal Coordinate System is sometimes
+also called the Alt/Az Coordinate System.
+</para><para>
+The Horizontal Coordinate System is fixed to the Earth, not the Stars.
+Therefore, the Altitude and Azimuth of an object changes with time, as the
+object appears to drift across the sky. In addition, because the Horizontal
+system is defined by your local horizon, the same object viewed from different
+locations on Earth at the same time will have different values of Altitude and
+Azimuth.
+</para><para>
+Horizontal coordinates are very useful for determining the Rise and Set times of
+an object in the sky. When an object has Altitude=0 degrees, it is either
+Rising (if its Azimuth is &lt; 180 degrees) or Setting (if its Azimuth is &gt;
+180 degrees).
+</para>
+</sect2>
+
+<sect2 id="ecliptic">
+<title>The Ecliptic Coordinate System</title>
+
+<indexterm><primary>Celestial Coordinate Systems</primary>
+<secondary>Ecliptic Coordinates</secondary>
+<seealso>Ecliptic</seealso>
+</indexterm>
+<para>
+The Ecliptic coordinate system uses the <link
+linkend="ai-ecliptic">Ecliptic</link> for its Fundamental Plane. The
+Ecliptic is the path that the Sun appears to follow across the sky over
+the course of a year. It is also the projection of the Earth's
+orbital plane onto the Celestial Sphere. The latitudinal angle is
+called the <firstterm>Ecliptic Latitude</firstterm>, and the longitudinal angle
+is called the <firstterm>Ecliptic Longitude</firstterm>. Like Right Ascension
+in the Equatorial system, the zeropoint of the Ecliptic Longitude is the <link
+linkend="ai-equinox">Vernal Equinox</link>.
+</para><para>
+What do you think such a coordinate system would be useful for? If you
+guessed charting solar system objects, you are right! Each of the
+planets (except Pluto) orbits the Sun in roughly the same plane, so they always
+appear to be somewhere near the Ecliptic (&ie;, they always have small ecliptic
+latitudes).
+</para>
+</sect2>
+
+<sect2 id="galactic">
+<title>The Galactic Coordinate System</title>
+
+<indexterm><primary>Celestial Coordinate Systems</primary>
+<secondary>Galactic Coordinates</secondary>
+</indexterm>
+<para>
+<indexterm><primary>Milky Way</primary></indexterm>
+The Galactic coordinate system uses the <firstterm>Milky Way</firstterm> as its
+Fundamental Plane. The latitudinal angle is called the <firstterm>Galactic
+Latitude</firstterm>, and the longitudinal angle is called the
+<firstterm>Galactic Longitude</firstterm>. This coordinate system is useful for
+studying the Galaxy itself. For example, you might want to know how the density
+of stars changes as a function of Galactic Latitude, to how much the disk of the
+Milky Way is flattened.
+</para>
+</sect2>
+</sect1>
diff --git a/doc/kstars/skymapdevice.png b/doc/kstars/skymapdevice.png
new file mode 100644
index 00000000..b4a2f661
--- /dev/null
+++ b/doc/kstars/skymapdevice.png
Binary files differ
diff --git a/doc/kstars/solarsys.docbook b/doc/kstars/solarsys.docbook
new file mode 100644
index 00000000..b3a5a07b
--- /dev/null
+++ b/doc/kstars/solarsys.docbook
@@ -0,0 +1,53 @@
+<sect1 id="tool-solarsys">
+<title>Solar System Viewer</title>
+<indexterm><primary>Tools</primary>
+<secondary>Solar System Viewer</secondary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The Solar System Viewer
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="solarsystem.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Solar System Viewer</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+This tool displays a model of our solar system as seen from
+above. The Sun is drawn as a yellow dot in the center of the
+plot, and the orbits of the planets are drawn as ellipses with
+the correct shapes and orientations. The current position
+of each planet along its orbit is drawn as a colored dot, along
+with a name label. The display can be zoomed in and out with
+the <keycap>+</keycap> and <keycap>-</keycap> keys, and the
+display can be recentered with the arrow keys, or by
+double-clicking anywhere in the window with the mouse. You can
+also center on a planet with the <keycap>0&ndash;9</keycap> keys
+(<keycap>0</keycap> is the Sun; <keycap>9</keycap> is Pluto).
+If you center on a planet, it will be tracked as time passes in
+the tool.
+</para>
+<para>
+The Solar System Viewer has its own clock, independent of the
+clock in the main &kstars; window. There is a timestep control
+widget here, similar to the one in the main window's toolbar.
+However, this control defaults to a timestep of 1 day (so that
+the motions of the planets can be seen), and it starts out with
+the clock paused when the tool is opened.
+</para>
+<note>
+<para>
+The current model used for Pluto's orbit is only good for dates
+within about 100 years of the present date. If you let the Solar
+System clock advance beyond this range, you will see Pluto behave
+very strangely! We are aware of this issue, and will try to
+improve Pluto's orbit model soon.
+</para>
+</note>
+</sect1>
diff --git a/doc/kstars/solarsystem.png b/doc/kstars/solarsystem.png
new file mode 100644
index 00000000..3b4d37cb
--- /dev/null
+++ b/doc/kstars/solarsystem.png
Binary files differ
diff --git a/doc/kstars/spiralgalaxies.docbook b/doc/kstars/spiralgalaxies.docbook
new file mode 100644
index 00000000..01bcf1a8
--- /dev/null
+++ b/doc/kstars/spiralgalaxies.docbook
@@ -0,0 +1,91 @@
+<sect1 id="ai-spiralgal">
+
+<sect1info>
+<author>
+<firstname>Mike</firstname>
+<surname>Choatie</surname>
+</author>
+</sect1info>
+
+<title>Spiral Galaxies</title>
+<indexterm><primary>Spiral Galaxies</primary>
+</indexterm>
+
+<para>
+Spiral galaxies are huge collections of billions of stars, most of
+which are flattened into a disk shape, with a bright, spherical bulge
+of stars at its center. Within the disk, there are
+typically bright arms where the youngest, brightest stars are
+found. These arms wind out from the center in a spiral pattern, giving
+the galaxies their name. Spiral galaxies look a bit like hurricanes,
+or like water flowing down a drain. They are some of the most beautiful
+objects in the sky.
+</para>
+<para>
+Galaxies are classified using a <quote>tuning fork diagram</quote>.
+The end of the fork classifies <link linkend="ai-ellipgal">elliptical
+galaxies</link> on a scale from the roundest, which is an E0, to
+those that appear most flattened, which is rated as E7. The
+<quote>tines</quote> of the tuning fork are where the two types of
+spiral galaxies are classified: normal spirals, and
+<quote>barred</quote> spirals. A barred spiral is one whose nuclear
+bulge is stretched out into a line, so it literally looks like it has
+a <quote>bar</quote> of stars in its center.
+</para><para>
+Both types of spiral galaxies are sub-classified according to the
+prominence of their central <quote>bulge</quote> of stars, their overall
+surface brightness, and how tightly their spiral arms are wound. These
+characteristics are related, so that an Sa galaxy has a large central bulge,
+a high surface brightness, and tightly-wound spiral arms. An Sb galaxy
+has a smaller bulge, a dimmer disk, and looser arms than an Sa, and so on
+through Sc and Sd. Barred galaxies use the same classification scheme,
+indicated by types SBa, SBb, SBc, and SBd.
+</para><para>
+There is another class of galaxy called S0, which is morphologically a
+transitional type between true spirals and ellipticals. Its spiral arms are
+so tightly wound as to be indistinguishable; S0 galaxies have disks with a
+uniform brightness. They also have an extremely dominant bulge.
+</para><para>
+The Milky Way galaxy, which is home to earth and all of the stars in our
+sky, is a Spiral Galaxy, and is believed to be a barred spiral. The name
+<quote>Milky Way</quote> refers to a band of very faint stars in the sky.
+This band is the result of looking in the plane of our galaxy's disk from
+our perspective inside it.
+</para><para>
+Spiral galaxies are very dynamic entities. They are hotbeds of star
+formation, and contain many young stars in their disks. Their central
+bulges tend to be made of older stars, and their diffuse halos are
+made of the very oldest stars in the Universe. Star formation is active
+in the disks because that is where the gas and dust are most concentrated;
+gas and dust are the building blocks of star formation.
+</para><para>
+Modern telescopes have revealed that many Spiral galaxies harbor
+supermassive black holes at their centers, with masses that can exceed
+that of a billion Suns. Both elliptical and spiral galaxies are known
+to contain these exotic objects; in fact many astronomers now believe
+that <emphasis>all</emphasis> large galaxies contain a supermassive
+black hole in their nucleus. Our own Milky Way is known to harbor
+a black hole in its core with a mass millions of times bigger than a
+star's mass.
+</para>
+
+<tip>
+<para>
+There are many fine examples of spiral galaxies to be found in
+&kstars;, and many have beautiful images available in their
+<link linkend="popup-menu">popup menu</link>. You can find them
+by using the <link linkend="findobjects">Find Object</link> window.
+Here is a list of some spiral galaxies with nice images available:
+<itemizedlist>
+<listitem><para>M 64, the Black-Eye Galaxy (type Sa)</para></listitem>
+<listitem><para>M 31, the Andromeda Galaxy (type Sb)</para></listitem>
+<listitem><para>M 81, Bode's Galaxy (type Sb)</para></listitem>
+<listitem><para>M 51, the Whirlpool Galaxy (type Sc)</para></listitem>
+<listitem><para>NGC 300 (type Sd) [use DSS image link]</para></listitem>
+<listitem><para>M 83 (type SBa)</para></listitem>
+<listitem><para>NGC 1530 (type SBb)</para></listitem>
+<listitem><para>NGC 1073 (type SBc)</para></listitem>
+</itemizedlist>
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/star_colors.png b/doc/kstars/star_colors.png
new file mode 100644
index 00000000..f017e3ed
--- /dev/null
+++ b/doc/kstars/star_colors.png
Binary files differ
diff --git a/doc/kstars/stars.docbook b/doc/kstars/stars.docbook
new file mode 100644
index 00000000..777a636c
--- /dev/null
+++ b/doc/kstars/stars.docbook
@@ -0,0 +1,134 @@
+<sect1 id="ai-stars">
+<sect1info>
+<author>
+<firstname>Jason</firstname> <surname>Harris</surname>
+</author>
+</sect1info>
+<title>Stars: An Introductory <acronym>FAQ</acronym></title>
+<indexterm><primary>Stars</primary></indexterm>
+
+<qandaset id="stars-faq">
+
+<qandaentry>
+<question>
+<para>What are the stars?</para>
+</question>
+<answer>
+<para>
+<firstterm>Stars</firstterm> are gigantic, self-gravitating spheres
+of (mostly) Hydrogen gas. Stars are also thermonuclear engines;
+nuclear fusion takes place deep in the cores of stars, where the
+density is extreme and the temperature reaches tens of millions
+of degrees Celsius.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>Is the Sun a star?</para>
+</question>
+<answer>
+<para>
+Yes, the Sun is a star. It is the dominant centerpiece of our
+solar system. Compared to other stars, our Sun is rather ordinary;
+it appears to be so much bigger and brighter to us
+because it is millions of times closer than any other star.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>Why do stars shine?</para>
+</question>
+<answer>
+<para>
+The short answer is: star shine because they are very hot. It is
+really no more complicated than that. Any object heated to
+thousands of degrees will radiate light, just like stars do.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>The obvious next question is: why are stars so hot?</para>
+</question>
+<answer>
+<para>
+This is a tougher question. The usual answer is that stars get
+their heat from the thermonuclear fusion reactions in their cores.
+However, this cannot be the ultimate cause for the stars' heat,
+because a star must be hot in the first place for nuclear fusion to be
+triggered. Fusion can only sustain the hot temperature; it cannot
+make a star hot. A more correct answer is that stars are hot because
+they have collapsed. Stars form from diffuse gaseous nebulae; as the
+nebulous gas condenses to form a star, the gravitational potential
+energy of the material is released, first as kinetic energy, and
+ultimately as heat as the density increases.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>Are stars all the same?</para>
+</question>
+<answer>
+<para>
+Stars have many things in common: they are all collapsed spheres of
+hot, dense gas (mostly Hydrogen), and nuclear fusion reactions are
+occurring at or near the centers of every star in the sky.
+</para><para>
+However, stars also show a great diversity in some properties.
+The brightest stars shine almost 100 million times as brightly as the
+faintest stars. Stars range in surface temperature from only a few
+thousand degrees to almost 50,000 degrees Celsius. These differences
+are largely due to differences in mass: massive stars are both hotter
+and brighter than lower-mass stars. The temperature and Luminosity
+also
+depend on the <emphasis>evolutionary state</emphasis>
+of the star.
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>What is the Main Sequence?</para>
+</question>
+<answer>
+<para><indexterm><primary>Main sequence</primary></indexterm>
+The main sequence is the evolutionary state of a star when it is
+fusing Hydrogen in its core. This is the first (and longest) stage
+of a star's life (not including protostar phases). What happens to a
+star after it runs out of core Hydrogen is addressed in the stellar
+evolution article (coming soon).
+</para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para>How long do stars last?</para>
+</question>
+<answer>
+<para>
+The lifetime of a star depends very much on its mass. More massive
+stars are hotter and shine much more brightly, causing them to
+consume their nuclear fuel much more rapidly. The largest
+stars (roughly 100 times as massive as the Sun), will run out of
+fuel in only a few million years; while the smallest stars (roughly
+ten percent the mass of the Sun), with their much more frugal
+consumption rate, will shine on (albeit dimly) for
+<emphasis>trillions</emphasis> of years. Note that this is much
+longer than the Universe has yet been in existence.
+</para>
+</answer>
+</qandaentry>
+
+</qandaset>
+</sect1>
+
+
diff --git a/doc/kstars/timezones.docbook b/doc/kstars/timezones.docbook
new file mode 100644
index 00000000..6f20ef9d
--- /dev/null
+++ b/doc/kstars/timezones.docbook
@@ -0,0 +1,44 @@
+<sect1 id="ai-timezones">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Time Zones</title>
+<indexterm><primary>Time Zones</primary>
+</indexterm>
+<para>
+The Earth is round, and it is always half-illuminated by the Sun. However,
+because the Earth is spinning, the half that is illuminated is always changing.
+We experience this as the passing of days wherever we are on the Earth's
+surface. At any given instant, there are places on the Earth passing from the
+dark half into the illuminated half (which is seen as <emphasis>dawn</emphasis>
+on the surface). At the same instant, on the opposite side of the Earth, points
+are passing from the illuminated half into darkness (which is seen as
+<emphasis>dusk</emphasis> at those locations). So, at any given time, different
+places on Earth are experiencing different parts of the day. Thus, Solar time
+is defined locally, so that the clock time at any location describes the part of
+the day consistently.
+</para><para>
+This localization of time is accomplished by dividing the globe into 24 vertical
+slices called <firstterm>Time Zones</firstterm>. The Local Time is the same
+within any given zone, but the time in each zone is one Hour
+<emphasis>earlier</emphasis> than the time in the neighboring Zone to the East.
+Actually, this is a idealized simplification; real Time Zone boundaries are not
+straight vertical lines, because they often follow national boundaries and other
+political considerations.
+</para><para>
+Note that because the Local Time always increases by an hour when moving between
+Zones to the East, by the time you move through all 24 Time Zones, you are a
+full day ahead of where you started. We deal with this paradox by defining the
+<firstterm>International Date Line</firstterm>, which is a Time Zone boundary in
+the Pacific Ocean, between Asia and North America. Points just to the East of
+this line are 24 hours behind the points just to the West of the line. This
+leads to some interesting phenomena. A direct flight from Australia to
+California arrives before it departs. Also, the islands of Fiji straddle the
+International Date Line, so if you have a bad day on the West side of Fiji, you
+can go over to the East side of Fiji and have a chance to live the same day all
+over again.
+</para>
+</sect1>
diff --git a/doc/kstars/tools.docbook b/doc/kstars/tools.docbook
new file mode 100644
index 00000000..ec4eda21
--- /dev/null
+++ b/doc/kstars/tools.docbook
@@ -0,0 +1,33 @@
+<chapter id="tools">
+<title>KStars Tools</title>
+<para>
+<indexterm><primary>Tools</primary></indexterm>
+&kstars; comes with a number of tools that allow you to explore
+some more advanced aspects of astronomy and the night sky.
+</para>
+
+<itemizedlist>
+<listitem><para><link linkend="tool-details">Object Details</link></para></listitem>
+<listitem><para><link linkend="tool-calculator">Astrocalculator</link></para></listitem>
+<listitem><para><link linkend="tool-aavso">AAVSO Lightcurves</link></para></listitem>
+<listitem><para><link linkend="tool-altvstime">Altitude vs. Time Plotter</link></para></listitem>
+<listitem><para><link linkend="tool-whatsup">What's Up Tonight?</link></para></listitem>
+<listitem><para><link linkend="tool-scriptbuilder">Script Builder</link></para></listitem>
+<listitem><para><link linkend="tool-solarsys">Solar System Viewer</link></para></listitem>
+<listitem><para><link linkend="tool-jmoons">Jupiter Moons Tool</link></para></listitem>
+<listitem><para><link linkend="tool-observinglist">Observing List Tool</link></para></listitem>
+<listitem><para><link linkend="tool-fitsviewer">FITS Viewer</link></para></listitem>
+</itemizedlist>
+
+&tool-details;
+&tool-calculator;
+&tool-aavso;
+&tool-altvstime;
+&tool-whatsup;
+&tool-scriptbuilder;
+&tool-solarsys;
+&tool-jmoons;
+&tool-observinglist;
+&tool-fitsviewer;
+
+</chapter>
diff --git a/doc/kstars/utime.docbook b/doc/kstars/utime.docbook
new file mode 100644
index 00000000..c8c47375
--- /dev/null
+++ b/doc/kstars/utime.docbook
@@ -0,0 +1,49 @@
+<sect1 id="ai-utime">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>Universal Time</title>
+<indexterm><primary>Universal Time</primary>
+<seealso>Time Zones</seealso>
+</indexterm>
+<para>
+The time on our clocks is essentially a measurement of the current position of
+the Sun in the sky, which is different for places at different Longitudes
+because the Earth is round (see <link linkend="ai-timezones">Time Zones</link>).
+</para><para>
+However, it is sometimes necessary to define a global time, one that is the same
+for all places on Earth. One way to do this is to pick a place on the Earth,
+and adopt the Local Time at that place as the <firstterm>Universal
+Time</firstterm>, abbreviated <abbrev>UT</abbrev>. (The name is a bit of a
+misnomer, since Universal Time has little to do with the Universe. It would
+perhaps be better to think of it as <emphasis>global time</emphasis>).
+</para><para>
+The geographic location chosen to represent Universal Time is Greenwich,
+England. The choice is arbitrary and historical. Universal Time became an
+important concept when European ships began to sail the wide open seas, far from
+any known landmarks. A navigator could reckon the ship's longitude by comparing
+the Local Time (as measured from the Sun's position) to the time back at the
+home port (as kept by an accurate clock on board the ship). Greenwich was home
+to England's Royal Observatory, which was charged with keeping time
+very accurately, so that ships in port could re-calibrate their clocks before
+setting sail.
+</para>
+<tip>
+<para>Exercise:</para>
+<para>
+Set the geographic location to <quote>Greenwich, England</quote> using the
+<guilabel>Set Location</guilabel> window
+(<keycombo action="simul">&Ctrl;<keycap>G</keycap></keycombo>). Note that the
+Local Time (<abbrev>LT</abbrev>)and the Universal Time (<abbrev>UT</abbrev>) are
+now the same.
+</para><para>
+Further Reading: The history behind the construction of the first clock
+that was accurate and stable enough to be used on ships to keep Universal Time
+is a fascinating tale, and one told expertly in the book
+<quote>Longitude</quote>, by Dava Sobel.
+</para>
+</tip>
+</sect1>
diff --git a/doc/kstars/viewops.png b/doc/kstars/viewops.png
new file mode 100644
index 00000000..bfc6d375
--- /dev/null
+++ b/doc/kstars/viewops.png
Binary files differ
diff --git a/doc/kstars/wut.docbook b/doc/kstars/wut.docbook
new file mode 100644
index 00000000..90c03c60
--- /dev/null
+++ b/doc/kstars/wut.docbook
@@ -0,0 +1,58 @@
+<sect1 id="tool-whatsup">
+<title>What's Up Tonight? Tool</title>
+<indexterm><primary>Tools</primary>
+<secondary>What's Up Tonight? Tool</secondary>
+</indexterm>
+
+<screenshot>
+<screeninfo>
+The What's Up Tonight Tool
+</screeninfo>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="wut.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>What's Up Tonight?</phrase>
+ </textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+The <quote>What's Up Tonight?</quote> (WUT) tool displays a list of
+objects that will be visible at night from any location, on any date.
+By default, the Date and Location are taken from the current settings
+in the main window, but you can change either value using the
+<guibutton>Change Date</guibutton> and <guibutton>Change
+Location</guibutton> buttons at the top of the WUT window.
+</para>
+<para>
+The WUT tool also displays a short almanac of data for the selected
+date: the rise and set times for the Sun and moon, the duration of
+the night, and the Moon's illumination fraction.
+</para>
+<para>
+Below the almanac is where the object information is displayed. The
+objects are organized into type categories. Select an object type
+in the box labeled <guilabel>Choose a Category</guilabel>, and all
+objects of that type which are above the horizon on the selected
+night will be displayed in the box labeled <guilabel>Matching
+Objects</guilabel>. For example, in the screenshot, the
+<guilabel>Planets</guilabel> category has been selected, and four
+planets which are up on the selected night are displayed (Mars,
+Neptune, Pluto, and Uranus). When an object in the list is selected,
+its rise, set and transit times are displayed in the lower-right
+panel. In addition, you can press the <guibutton>Object
+Details...</guibutton> button to open the <link
+linkend="tool-details">Object Details window</link> for that
+object.
+</para>
+<para>
+By default, the WUT will display objects which are above the horizon
+between sunset and midnight (i.e., <quote>in the evening</quote>).
+You can choose to show objects which are up between midnight and dawn
+(<quote>in the morning</quote>), or between dusk and dawn (<quote>any
+time tonight</quote>) using the combobox near the top of the window.
+</para>
+</sect1>
+
diff --git a/doc/kstars/wut.png b/doc/kstars/wut.png
new file mode 100644
index 00000000..a65a10f2
--- /dev/null
+++ b/doc/kstars/wut.png
Binary files differ
diff --git a/doc/kstars/zenith.docbook b/doc/kstars/zenith.docbook
new file mode 100644
index 00000000..f0d80ea2
--- /dev/null
+++ b/doc/kstars/zenith.docbook
@@ -0,0 +1,31 @@
+<sect1 id="ai-zenith">
+<sect1info>
+<author>
+<firstname>Jason</firstname>
+<surname>Harris</surname>
+</author>
+</sect1info>
+<title>The Zenith</title>
+<indexterm><primary>Zenith</primary>
+<seealso>Horizontal Coordinates</seealso>
+</indexterm>
+<para>
+The Zenith is the point in the sky where you are looking when you look
+<quote>straight up</quote> from the ground. More precisely, it is the point on
+the sky with an <firstterm>Altitude</firstterm> of +90 Degrees; it is the Pole
+of the <link linkend="horizontal">Horizontal Coordinate
+System</link>. Geometrically, it is the point on the <link
+linkend="ai-csphere">Celestial Sphere</link> intersected by a line drawn from
+the center of the Earth through your location on the Earth's surface.
+</para><para>
+The Zenith is, by definition, a point along the <link
+linkend="ai-meridian">Local Meridian</link>.
+</para>
+<tip>
+<para>Exercise:</para>
+<para>
+You can point to the Zenith by pressing <keycap>Z</keycap> or by selecting
+<guimenuitem>Zenith</guimenuitem> from the <guimenu>Pointing</guimenu> menu.
+</para>
+</tip>
+</sect1>
diff --git a/doc/ktouch/Makefile.am b/doc/ktouch/Makefile.am
new file mode 100644
index 00000000..bafa3f6c
--- /dev/null
+++ b/doc/ktouch/Makefile.am
@@ -0,0 +1,5 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
+
diff --git a/doc/ktouch/color_options.png b/doc/ktouch/color_options.png
new file mode 100644
index 00000000..cb1998ae
--- /dev/null
+++ b/doc/ktouch/color_options.png
Binary files differ
diff --git a/doc/ktouch/general_options.png b/doc/ktouch/general_options.png
new file mode 100644
index 00000000..d4a5638d
--- /dev/null
+++ b/doc/ktouch/general_options.png
Binary files differ
diff --git a/doc/ktouch/index.docbook b/doc/ktouch/index.docbook
new file mode 100644
index 00000000..cdad9917
--- /dev/null
+++ b/doc/ktouch/index.docbook
@@ -0,0 +1,910 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY ktouch "<application>KTouch</application>">
+ <!ENTITY kappname "&ktouch;"><!-- replace kapp here -->
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &ktouch; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Håvard</firstname><surname>Frøiland</surname>
+<affiliation>
+<address><email>&Haavard.Froeiland.mail;</email></address>
+</affiliation>
+</author>
+
+<author>
+<firstname>Andreas</firstname><surname>Nicolai</surname>
+<affiliation>
+<address><email>Andreas.nicolai@gmx.net</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>1999-2005</year>
+<holder>Håvard Frøiland, Andreas Nicolai</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2005-06-19</date>
+<releaseinfo>1.5</releaseinfo>
+
+<abstract>
+<para>&ktouch; is a program for learning to touch type. &ktouch;
+provides you with text to train on and adjusts to different levels
+depending on how good you are. It displays which key to press next
+and the correct finger to use.</para>
+
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>touchwriting</keyword>
+<keyword>touchtyping</keyword>
+<keyword>typing</keyword>
+<keyword>typewriting</keyword>
+<keyword>education</keyword>
+<keyword>ktouch</keyword>
+<keyword>touch</keyword>
+<keyword>type</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="using_ktouch">
+<title>Using &ktouch;</title>
+
+<sect1 id="introduction">
+<title>Introduction</title>
+
+<sect2>
+<title>What is &ktouch;?</title>
+<para>&ktouch; is a program for learning to touch type.</para>
+<para>&ktouch; provides you with text to train on and adjusts to
+different levels depending on how good you are. It shows your keyboard
+and indicates which key to press next and the correct finger to use.</para>
+
+<screenshot>
+<screeninfo>The main screen of &ktouch;</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="main_screen_default_color.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>The main screen of &ktouch;</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>&ktouch; is an excellent touch typing tutor. You learn typing
+with all fingers, step by step, without having to look down
+at the keyboard all the time to find your keys (which slows you down a lot).
+It is convenient for all ages
+and the perfect typing tutor for schools, universities and individuals.
+It is free and licensed under the &GNU; Public License, so you will
+never have to pay anything for the program or any update.
+</para>
+</sect2>
+
+<sect2>
+<title>Features </title>
+
+<para>In its current version, &ktouch; 1.5 has quite a number of helpful
+features, such as:</para>
+<itemizedlist>
+<listitem><simpara>Support for many different training lectures in many
+languages including language specific text fonts and a comfortable lecture
+editor</simpara></listitem>
+<listitem><simpara>Support for different keyboard layouts with the ability to
+use user-defined layouts</simpara></listitem>
+<listitem><simpara>During your training session comprehensive statistical
+information is obtained to help you (or your teacher) analyse your
+progress</simpara></listitem>
+</itemizedlist>
+<para>
+Many other features are included and will be discussed in the appropriate
+chapters of this manual.
+</para>
+
+</sect2>
+</sect1>
+
+
+<sect1 id="learning">
+<title>Learning touch typing with &ktouch;</title>
+
+<para>Here's another screenshot of &ktouch; in action, this time with a german
+keyboard and training lecture:</para>
+
+<screenshot>
+<screeninfo>Main screen of &ktouch;</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="main_window_german.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Main screen of &ktouch;</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>Even though learning touch typing with &ktouch; and using the program
+should be very simple we will look a bit closer@&ktouch; in the following
+sections.</para>
+
+<sect2 id="getting_started">
+<title>Getting started</title>
+
+<para>When you start &ktouch; you can see the screen shown above. The main
+program window shows three main sections:
+</para>
+<orderedlist>
+<listitem><simpara>Some typing statistics in info boxes@the
+top</simpara></listitem>
+<listitem><simpara>The text you need to type (in the teacher's line) and the
+text that you have typed so far (in the student's line)</simpara></listitem>
+<listitem><simpara>The keyboard (that hopefully looks like
+yours)</simpara></listitem>
+</orderedlist>
+<para>We look@these sections later again.</para>
+<para>
+Ok, the first time you start &ktouch; it will open a default lecture and
+select a default keyboard layout. Before you start typing you should adjust
+the keyboard layout so that it matches yours. Go to
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Keyboard
+Layouts...</guimenuitem></menuchoice> and select the country you're in (or
+some country which uses the same keyboard layout as you). If your keyboard is
+not included, you can always define your own keyboard (see <link
+linkend="create_keyboards">Creating your own keyboard</link>).
+</para>
+<para>
+Once you have your keyboard selected, choose your training lecture. The first
+line in your corrent lecture and level is shown in the teacher's line. You can
+select any of the default lectures via
+<menuchoice><guimenu>Training</guimenu><guimenuitem>Default
+Lectures...</guimenuitem></menuchoice> or open a user defined lecture file
+(&eg; if your teacher gives you a special lecture to practice on) with
+<menuchoice><guimenu>File</guimenu><guimenuitem>Open
+Lecture...</guimenuitem></menuchoice>. You may even create your own lecture
+(see <link linkend="create_lectures">Creating your own lecture</link>). When
+you have selected keyboard and lecture you can start typing.
+</para>
+<para>
+Place your hand on the keyboard as indicated by the 8 marked finger keys
+(thumbs over the space bar) and start typing the text shown in the teacher's
+line. Each key you need to press is highlighted on the keyboard and if you
+need to move a finger from its resting position the target key and the
+appropriate finger key is highlighted. Try to move your hands as little as
+possible and after you typed a character always try to return your fingers to
+their resting positions.
+</para>
+<tip><para>The key colors indicate which finger needs to press which
+key.</para></tip>
+<para>
+While you type you may make mistakes and hit the wrong key. In that case the
+student's line will change its color (per default to red) and you have to hit
+Backspace to erase the wrong character (or characters) again.
+</para>
+<para>
+When you have successfully completed a line of text you need to press the
+Enter key to advance to the next line.
+</para>
+</sect2>
+
+<sect2 id="lectures_and_levels">
+<title>Lectures and levels</title>
+<para>
+As already mentioned above you need to select a training lecture which
+contains all the text you want to practice. Usually the difficulty of the text
+is gradually increasing and so most lectures contain various difficulty
+levels. However, some lectures may just contain a single level and text (&eg;
+a newspaper article to test your skills).
+</para>
+<para>
+In the info boxes@top of the &ktouch; main window you see the current
+level@the left. The small buttons to the right allow you to manually switch
+levels. Normally this happens automatically (more about this in the section
+<link linkend="training_options">Training Options</link>). The right info box
+shows a brief information text about the level. Usually it gives you a list of
+characters that are new in this level. The middle two info boxes show your
+current typing speed (in characters per minute) and your correctness. These
+values are Level Statistics and whenever you start a new level these values
+are resetted. However, the program still remembers your previous statistics
+(see section <link linkend="statistics">Statistics in &ktouch;</link>).
+</para>
+</sect2>
+
+<sect2 id="starting_stopping">
+<title>Starting and stopping a training session</title>
+<para>
+While you type the text of a training lecture you are in a practice session.
+You can start a new practice session using
+<menuchoice><guimenu>Training</guimenu><guimenuitem>Start New
+Session</guimenuitem></menuchoice> or the appropriate button in the toolbar.
+Level changes (automatic or manual) do not change your training session. You
+stay in this training session until you start a new training session, select a
+new lecture (which automatically starts a new training session) or quit the
+program.
+</para>
+<para>
+If you open any dialog in &ktouch; while you are in a training session the
+training is paused and the timer is stopped until you hit the next key. You
+can manually pause the session using
+<menuchoice><guimenu>Training</guimenu><guimenuitem>Pause
+Session</guimenuitem></menuchoice> or the appropriate button in the toolbar.
+</para>
+</sect2>
+
+</sect1>
+
+<sect1 id="statistics">
+<title>Statistics in &ktouch;</title>
+<para>&ktouch; remembers you! Basically whatever you type is recorded and some
+useful (and sometimes just interesting) statistics are created. &ktouch;
+stores statistical data based on the lecture file you use for training. For
+every lecture file a separate history is kept. &ktouch; also distinguishes
+between level and practice session statistics. This is important to prevent
+cheating :-).
+</para>
+
+<sect2>
+<title>Training Session Statistics</title>
+<screenshot>
+<screeninfo>Current Training Statistics</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="statistics_dialog.png"
+format="PNG"/></imageobject>
+<textobject><phrase>Current Training Statistics</phrase></textobject>
+</mediaobject>
+</screenshot>
+<para>Whenever you start a new training session a new statistics record is
+started. &ktouch; remembers several things to assess your skill and to help
+you identify problem keys:
+</para>
+<itemizedlist>
+<listitem><simpara>How many keys were pressed in total?</simpara></listitem>
+<listitem><simpara>How many were correctly pressed?</simpara></listitem>
+<listitem><simpara>Which keys where missed and how often?</simpara></listitem>
+<listitem><simpara>How many correct words did you type?</simpara></listitem>
+<listitem><simpara>How much time did you need?</simpara></listitem>
+</itemizedlist>
+<para>Using training session statistics you and &ktouch; can evaluate your
+overall performance and skill in a certain training lecture.</para>
+</sect2>
+
+<sect2>
+<title>Level Statistics</title>
+<para>For each level in your training session (&ie; all levels you typed text
+in) the same statistics as for the training session are obtained. Using level
+statistics data you can investigate your progress in each level of a training
+lecture (and you will notice how your skill increases level by level and you
+can concentrate on the levels which still cause problems).
+</para>
+</sect2>
+
+<sect2>
+<title>The Statistics Dialog</title>
+<para><menuchoice><guimenu>Training</guimenu><guimenuitem>Lecture
+Statistics</guimenuitem></menuchoice> or the statistics button in the toolbar
+opens the statistics dialog. It displays your current training and level
+statistics and shows a graphical history of previous training sessions.
+</para>
+<para>
+When you open the statistics dialog you can select a Session Statistics Page
+and a Level Statistics Page. The first page gives you a summary about
+everything you typed so far. The Level Statistics Page only contains the stats
+for the current level. This is useful to distinguish between overall
+performance and skill in certain levels.
+</para>
+<para>
+The third statistics page gives you a graphical overview of your typing skill
+by offering several choices. A note about the time scaling option. Whenever a
+session or level statistic is obtained, also the date is stored. So you can
+also see how your skill dropped in long training breaks and when you last
+practiced a certain lecture or level.
+</para>
+<screenshot>
+<screeninfo>Training Statistics Chart</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="statistics_dialog_chart.png"
+format="PNG"/></imageobject>
+<textobject><phrase>Training Statistics Chart</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+</sect2>
+</sect1>
+</chapter>
+
+<chapter id="ui_guide">
+<title>The &ktouch; main menu and program dialogs</title>
+<para>In this chapter we look@some of the details in the program.
+<tip><para>You can use the <quote>What's this?</quote> feature (the little
+question mark besides the minimize/maximize window buttons) in many dialogs of
+the program.</para></tip>
+</para>
+
+<sect1 id="main_menu">
+<title>The menu of &ktouch;</title>
+<para>Pretty much everything in the &ktouch; menu should be self-explanatory.
+The file menu contains options to load a user defined lecture and edit
+lectures. The training menu contains training options and the settings menu
+contains options to setup the program. The various options in the
+configuration dialog are explained in the next section.</para>
+</sect1>
+
+<sect1 id="program_settings">
+<title>Configuration options for &ktouch;</title>
+<para>You can customize &ktouch; quite a bit. The settings are always stored
+for the current user of the program. Open the configuration dialog via
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &ktouch;
+...</guimenuitem></menuchoice>.</para>
+
+<sect2 id="general_options">
+<title>General Options</title>
+<para>In this dialog you can change general options that control the behaviour
+of &ktouch;.
+</para>
+<screenshot>
+<screeninfo>General options</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="general_options.png"
+format="PNG"/></imageobject>
+<textobject><phrase>General options</phrase></textobject>
+</mediaobject>
+</screenshot>
+<para>First of all you can switch the sound on or off (might be useful in
+class rooms). You can also set the sliding speed of the teacher's and
+student's line.
+</para>
+<para>Most important, however, might be the selection of the lecture font.
+When showing the teacher's text &ktouch; will normally use the font specified
+in the lecture file. But if this font doesn't exist on your system or none has
+been specified, &ktouch; uses a default system font. What if this font does
+not contain all characters needed for your lecture? In such cases you can
+override the choice of the font and specify any font you like.
+<note><para>&ktouch; distinguishes between lecture and keyboard fonts.
+Overriding the lecture font does not automatically adjust the keyboard font as
+well. Use the appropriate option in the Keyboard Options configuration
+page.</para></note>
+</para>
+</sect2>
+
+<sect2 id="training_options">
+<title>Training Options</title>
+<para>In this dialog you can select the options that control how &ktouch;
+changes difficulty levels based on the user's skill.</para>
+<screenshot>
+<screeninfo>Training options</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="training_options.png"
+format="PNG"/></imageobject>
+<textobject><phrase>Training options</phrase></textobject>
+</mediaobject>
+</screenshot>
+<para>If <guibutton>Automatic level adjustment</guibutton> is enabled,
+&ktouch; checks the given limits@the end of each level and decides whether to
+increase or decrease the level or stay in the level for another run. Level
+changes occur always@the end of a level (&ie; when the user has finished the
+last line of a level). If the typing speed (in characters per seconds) and
+accuracy (correctness) are <emphasis>both</emphasis> above or equal to the
+<quote>Limits to increase level</quote> &ktouch; will jump to the next higher
+level. If <emphasis>either</emphasis> typing speed or accuracy falls below the
+<quote>Limits to decrease level</quote> &ktouch; will jump back to the
+previous lower level.
+</para>
+<para>
+On this configuration page you can also select that the program remembers your
+current level when you quit the program and jumps back to it when you restart
+&ktouch;.
+</para>
+</sect2>
+
+<sect2 id="keyboard_options">
+<title>Keyboard Options</title>
+<para>In this dialog you can select keyboard specific options.</para>
+<screenshot>
+<screeninfo>Keyboard options</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="keyboard_options.png"
+format="PNG"/></imageobject>
+<textobject><phrase>Keyboard options</phrase></textobject>
+</mediaobject>
+</screenshot>
+<para>
+This dialog controls the appearance and functionality of the keyboard. Similar
+to the <quote>Override lecture font</quote> option in the general settings
+configuration page, you can here specify your own keyboard font. The option
+<quote>Highlight keys on keyboard</quote> can be used to increase the
+difficulty of the training. <tip><para>Once you are familiar with the keyboard
+you may want to turn keyboard highlighting off so it won't distract you when
+you concentrate on the teacher's text.</para></tip>
+</para>
+</sect2>
+
+
+<sect2 id="color_options">
+<title>Color Options</title>
+<para>In this dialog you can tweak the appearance of &ktouch;.</para>
+<screenshot>
+<screeninfo>Color options</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="color_options.png"
+format="PNG"/></imageobject>
+<textobject><phrase>Color options</phrase></textobject>
+</mediaobject>
+</screenshot>
+<para>
+This configuration page does not need much explaination. You can choose among
+four predefined color schemes for the keyboard. Alternatively you can switch
+the color schemes <quote>on the fly</quote> using the menu option
+<menuchoice><guimenu>Settings</guimenu><guimenuitem>Keyboard Color
+Schemes</guimenuitem></menuchoice>.
+</para>
+</sect2>
+
+</sect1>
+</chapter>
+
+
+<chapter id="extending">
+<title>Extending &ktouch;</title>
+
+<sect1 id="create_lectures">
+<title>Creating your own lecture</title>
+<para>You can easily create your own training lecture using the built-in
+&ktouch; lecture editor. When you select
+<menuchoice><guimenu>File</guimenu><guimenuitem>Edit
+Lecture...</guimenuitem></menuchoice> the <quote>Open Request Dialog</quote>
+will open and ask you to select a lecture. You can choose either edit the
+current lecture, any of the predefined lectures (if you have write access to
+the installation directoy) or create an empty lecture from scratch.</para>
+
+<sect2>
+<title>Creating a lecture</title>
+<para>
+Let's assume you want to create a new lecture. There are a few guidelines you
+may want to consider:
+</para>
+<itemizedlist>
+
+
+<listitem><para>
+For the first 20 keys or so, only add 2 keys@a time to a new level. Let the
+user practice the keys alone first in different combinations and then use the
+new keys in words and mixed with already known words.
+</para></listitem>
+
+<listitem><para>Add@least a few levels to the lecture in order to allow the
+user to see some progress while training</para></listitem>
+
+<listitem><para>
+Don't make the levels too long.
+</para></listitem>
+
+<listitem><para>
+Try to increase the difficulty of the text gradually and test your text
+yourself.
+</para></listitem>
+
+<listitem><para>
+After the first keys have been learned include a recap lecture.
+</para></listitem>
+</itemizedlist>
+
+</sect2>
+
+<sect2>
+<title>Things to know about lectures</title>
+<para>
+The lecture title is important for the quick-select menu entry in the training
+menu and for the statistics. The comment should be used to include information
+about the lecture author and source of lecture data if any.
+</para>
+<para>
+For each level you can specify the new characters/keys in the lecture. The
+text you enter there will be shown as level information text in the top right
+info box of the &ktouch; main window.
+</para>
+<para>You can also specify a default font for the lecture which will be used
+in the teacher's and student's line and of course in the edit lecture dialog
+using the <guibutton>Change Font...</guibutton> button.
+</para>
+</sect2>
+
+</sect1>
+
+<sect1 id="create_keyboards">
+<title>Creating your own keyboard</title>
+<para>You can create your own keyboards by creating keyboard files. Currently
+&ktouch; doesn't have a keyboard editor but it is still pretty easy to define
+your own keyboard. It doesn't require much more than a little math to work out
+the geometry and some time. Best is to start with an existing keyboard file,
+create a copy for your keyboard layout and simply adjust the lines.</para>
+<para>
+Currently keyboard files are plain UTF-8 encoded text files. In one of the
+next version of &ktouch; keyboard data will be stored in &XML; files, too.
+Therefore I'll only briefly explain the structure of a keyboard file.
+</para>
+<para>A keyboard file usually starts with a header including some information
+about the author and type of the keyboard.</para>
+<programlisting>
+####################################################
+# KTouch
+# Keybord layout file for german keybord layout
+# Code=UTF-8
+####################################################
+</programlisting>
+<para>
+All lines starting with a hash character '#' are considered comments. After
+the header section a block of so called <quote>finger keys</quote> follows,
+indicating the resting positions for all 8 fingers.
+</para>
+<programlisting>
+#
+# Unicode KeyChar x y
+#
+FingerKey 97 A 18 20
+FingerKey 115 S 28 20
+FingerKey 100 D 38 20
+FingerKey 102 F 48 20
+FingerKey 106 J 78 20
+FingerKey 107 K 88 20
+FingerKey 108 L 98 20
+FingerKey 246 Ö 108 20
+</programlisting>
+<para>Keys have the default dimensions of 8 units, so using a grid of 10 units
+gives a normal looking keyboard. The first number is the unicode character
+code as decimal number. The KeyText is the text printed on the key encoded as
+UTF-8 (automatic under newer &Linux; versions, just make sure your editor saves
+files as UTF-8 format).</para>
+<para>The next section contains special keys, which are - apart from BackSpace
+and Enter - just decorative.</para>
+<programlisting>
+#
+# Unicode KeyText x y Width Height
+#
+ControlKey 260 Tab 0 10 15 10
+ControlKey 13 Enter 138 20 12 10
+ControlKey 258 Shift 123 30 27 10
+ControlKey 264 AltGr 120 40 15 10
+ControlKey 265 Ctrl 135 40 15 10
+ControlKey 263 Alt 15 40 15 10
+ControlKey 262 Strg 0 40 15 10
+ControlKey 32 Leertaste 30 40 90 10
+ControlKey 257 Shift 0 30 13 10
+ControlKey 259 CapsLock 0 20 18 10
+ControlKey 8 BackSpace 130 0 20 10
+</programlisting>
+<para>
+ The text you specify for the key is printed completely on the keyboard.
+However, for the keytexts <quote>Shift</quote>, <quote>CapsLock</quote>,
+<quote>Tab</quote>, <quote>BackSpace</quote> and <quote>Enter</quote> &ktouch;
+draws the appropriate symbols. Hence you can use these keytexts regardless of
+the language. The other keytexts like Ctrl or Alt need to be translated
+though. The geometry of the control keys can be any rectangle, defined by
+upper left x and y coordinates and width and height.</para>
+<para>The next section contains all characters on the keyboard (except the
+already defined finger keys) that can be typed <emphasis>without</emphasis>
+pressing shift.</para>
+<programlisting>
+#
+# Unicode KeyChar x y FingerKeyUnicode
+#
+NormalKey 94 ^ 0 0 97
+NormalKey 49 1 10 0 97
+NormalKey 50 2 20 0 115
+NormalKey 51 3 30 0 100
+NormalKey 52 4 40 0 102
+NormalKey 53 5 50 0 102
+NormalKey 54 6 60 0 102
+.
+.
+.
+NormalKey 46 . 103 30 108
+NormalKey 45 - 113 30 246
+</programlisting>
+<para>The definition of these primary keys or chars is pretty much the same as
+for the finger keys, but they include an additional property. The last unicode
+character code identifies the associated finger key. Basically which finger
+has to be used to press this key.</para>
+<para>
+The next and last section in a keyboard layout defines all keys that are
+pressed by using a modifier key such as the shift key.
+</para>
+<programlisting>
+#
+# Unicode TargetUnicode FingerUnicode ControllUnicode
+Comment
+#
+HiddenKey 65 97 97 258 #A
+HiddenKey 66 98 102 258 #B
+HiddenKey 67 99 100 258 #C
+HiddenKey 68 100 100 258 #D
+.
+.
+.
+HiddenKey 124 60 97 264 #|
+HiddenKey 64 113 97 264 #@
+</programlisting>
+<para>The <quote>hidden keys</quote> are really controlling what should happen
+on the keyboard when you type a certain character. The first unicode number is
+the character code of the character you define. The second number is the
+character code of the key on the keyboard (one of the already defined normal
+keys). The third number indicates a finger key (where does the finger rest
+that is needed to type the key) and the last number indicates the modifier key
+you need to press to get this character.
+</para>
+<para>Let's look@an example:</para>
+<para>You want to define the uppercase 'R' character. It has the unicode 82.
+The character obtained when the 'R' key is pressed without modifier is the
+small 'r' with the unicode 114. The finger for the 'R' rests over the 'f' key
+which has the unicode 102. And in order to get the 'R' you need to press the
+right (or left) shift key which has the code 264 (this is actually not a
+unicode but the code obtained from a keypress event of QT). Note that the
+identification of controll keys will likely change in the next version of
+&ktouch;. But for now you can use the codes used in other keyboard files.
+</para>
+
+</sect1>
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="ktouch-mainwindow">
+<title>Menus and shortcut keys</title>
+
+<sect2>
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Open Lecture...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Open</action> a new training lecture
+file</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Edit Lecture...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Open</action> the lecture editor to allow you to
+change the current training file </para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quit</action> &ktouch;</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+
+
+<sect2>
+<title>The <guimenu>Training</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Training</guimenu>
+<guimenuitem>Start New Session</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Start</action> a new typing session and ask you if you
+want to start@the same level</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Training</guimenu>
+<guimenuitem>Pause Session</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Pause</action> the current session: statistics are on
+hold</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Training</guimenu>
+<guimenuitem>Lecture Statistics</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Open</action> the current session statistics
+dialog</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Training</guimenu>
+<guisubmenu>Default Lectures</guisubmenu>
+<guimenuitem>English (auto-generated)</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> what languagee you want to learn touch
+typing in</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show /HideToolbar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the Toolbar</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Keyboard Layouts</guisubmenu>
+<guimenuitem>number.keyboard</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the keyboard layout you want to use,
+here the number keyboard</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Keyboard Color Schemes</guisubmenu>
+<guimenuitem>Black'n White</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the keyboard color layout in black in
+white: all keys are white and the one you should type is
+black</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Keyboard Color Schemes</guisubmenu>
+<guimenuitem>Classic</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the classic keyboard color layout:
+each column of keys has a different color</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Keyboard Color Schemes</guisubmenu>
+<guimenuitem>Deep Blue</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the deep blue keyboard color layout:
+each column of keys has a different color in a shade of blue</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guisubmenu>Keyboard Color Schemes</guisubmenu>
+<guimenuitem>Stripy</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Choose</action> the stripy keyboard color layout: in
+blue and grey</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> the shortcuts you want to associate
+with some actions
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> the items you want to put in the
+toolbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure &ktouch;...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Display</action> the &ktouch; settings dialog
+</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>The <guimenu>Help</guimenu> Menu</title>
+&help.menu.documentation;
+</sect2>
+</sect1>
+</chapter>
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+<para>&ktouch;</para>
+<para>
+&ktouch;, Copyright 1999-2005 by</para>
+<itemizedlist>
+<listitem><simpara>Håvard Frøiland <email>haavard@users.sourceforge DOT
+net</email></simpara></listitem>
+<listitem><simpara>Andreas Nicolai <email>andreas.nicolai@gmx DOT
+net</email></simpara></listitem>
+</itemizedlist>
+
+<para> Contributors:</para>
+<itemizedlist>
+<listitem><simpara>Frank Quotschalla, German keyboard and german training file and
+ translation.</simpara></listitem>
+<listitem><simpara>Ernesto Hern&aacute;ndez-Novich, Latinamerican
+ keyboard</simpara></listitem>
+<listitem><simpara>Jo&atilde;o Miguel Neves, Portuguese keyboard</simpara></listitem>
+<listitem><simpara>Henri Girard, Frence keyboard</simpara></listitem>
+</itemizedlist>
+<para><emphasis>Special thanks to all the other (here not mentioned) contributors of keyboard and lecture files.</emphasis>
+</para>
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove -->
+&underGPL; <!-- GPL License -->
+
+</chapter>
+
+<appendix id="installation">
+<title>How to obtain and install &ktouch;</title>
+
+<para>&ktouch; has its own home page <ulink
+url="http://ktouch.sourceforge.net">http://ktouch.sourceforge.net</ulink>. Please refer to the instructions on the home page since they will contain up-to-date information about how to obtain &ktouch;.
+</para>
+<para>&ktouch; can also be found
+on <ulink url="http://edu.kde.org/ktouch">The &kde; Edutainment - &ktouch; home page</ulink>
+and is part of the &kde;-Edutainment project. </para>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+
+// vim:ts=2:sw=2:tw=78:noet
+-->
diff --git a/doc/ktouch/keyboard_options.png b/doc/ktouch/keyboard_options.png
new file mode 100644
index 00000000..27754a32
--- /dev/null
+++ b/doc/ktouch/keyboard_options.png
Binary files differ
diff --git a/doc/ktouch/main_screen_default_color.png b/doc/ktouch/main_screen_default_color.png
new file mode 100644
index 00000000..3f2fce1f
--- /dev/null
+++ b/doc/ktouch/main_screen_default_color.png
Binary files differ
diff --git a/doc/ktouch/main_window_german.png b/doc/ktouch/main_window_german.png
new file mode 100644
index 00000000..dfca3b03
--- /dev/null
+++ b/doc/ktouch/main_window_german.png
Binary files differ
diff --git a/doc/ktouch/man-ktouch.1.docbook b/doc/ktouch/man-ktouch.1.docbook
new file mode 100644
index 00000000..a1bdc73d
--- /dev/null
+++ b/doc/ktouch/man-ktouch.1.docbook
@@ -0,0 +1,79 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<title>KDE User's Manual</title>
+<author><personname>
+<firstname>Ben</firstname>
+<surname>Burton</surname>
+</personname>
+<email>bab@debian.org</email></author>
+<date>30 May, 2005</date>
+<productname>K Desktop Environment</productname>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>ktouch</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>ktouch</command></refname>
+<refpurpose>a typing tutor for KDE</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>ktouch</command>
+<group choice="opt"><option>URL</option></group>
+<arg choice="opt">KDE Generic Options</arg>
+<arg choice="opt">Qt Generic Options</arg>
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+<para>&ktouch; is a program for learning touch typing. It helps you learn
+to type on a keyboard quickly and correctly. Every finger has it's place on
+the keyboard with associated keys to press.</para>
+<para>&ktouch; helps you learn to touch type by providing you with text to
+train on, and adjusts to different levels depending on how good you are. It
+can display which key to press next, and correct finger to use.</para>
+<para>This application is part of the official &kde; edutainment
+module.</para>
+</refsect1>
+
+<refsect1>
+<title>Options</title>
+<variablelist>
+<varlistentry>
+<term><option>URL</option></term>
+<listitem><para>The training file to open</para></listitem>
+</varlistentry>
+</variablelist>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+<para>More detailed user documentation is available from <ulink
+url="help:/ktouch">help:/ktouch</ulink>
+(either enter this <acronym>URL</acronym> into &konqueror;, or run
+<userinput><command>khelpcenter</command>
+<parameter>help:/ktouch</parameter></userinput>).</para>
+
+<para>There is also further information available at the <ulink
+url="http://edu.kde.org/ktouch/">&kde; edutainment website</ulink>.</para>
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+<para>KTouch was written by <personname><firstname>Haavard</firstname><surname>Froeiland</surname></personname> <email>haavard@users.sourceforge.net</email> and <personname><firstname>Andreas</firstname><surname>Nicolai</surname></personname> <email>Andreas.Nicolai@gmx.net</email>.This manual page based on the one prepared for Debian by <personname>
+<firstname>Ben</firstname><surname>Burton</surname></personname>
+</para>
+</refsect1>
+
+</refentry>
diff --git a/doc/ktouch/statistics_dialog.png b/doc/ktouch/statistics_dialog.png
new file mode 100644
index 00000000..1d56257f
--- /dev/null
+++ b/doc/ktouch/statistics_dialog.png
Binary files differ
diff --git a/doc/ktouch/statistics_dialog_chart.png b/doc/ktouch/statistics_dialog_chart.png
new file mode 100644
index 00000000..0ed06c3e
--- /dev/null
+++ b/doc/ktouch/statistics_dialog_chart.png
Binary files differ
diff --git a/doc/ktouch/training_options.png b/doc/ktouch/training_options.png
new file mode 100644
index 00000000..057a2a35
--- /dev/null
+++ b/doc/ktouch/training_options.png
Binary files differ
diff --git a/doc/kturtle/Makefile.am b/doc/kturtle/Makefile.am
new file mode 100644
index 00000000..41691557
--- /dev/null
+++ b/doc/kturtle/Makefile.am
@@ -0,0 +1,3 @@
+KDE_LANG = en
+KDE_DOCS = AUTO
+
diff --git a/doc/kturtle/forward.png b/doc/kturtle/forward.png
new file mode 100644
index 00000000..1dfc6c2e
--- /dev/null
+++ b/doc/kturtle/forward.png
Binary files differ
diff --git a/doc/kturtle/getting-started.docbook b/doc/kturtle/getting-started.docbook
new file mode 100644
index 00000000..8d8ed12f
--- /dev/null
+++ b/doc/kturtle/getting-started.docbook
@@ -0,0 +1,147 @@
+<!--Dear translator: please NEVER translate the id or anything inside the tags as they are needed in english by the application
+ Thanks a lot in advance.-->
+<chapter id="getting-started">
+<title>Getting Started</title>
+<para>When you start &kturtle; you will see something like this:
+<screenshot>
+ <screeninfo>Here is a screenshot of &kturtle; when you start it for the first time</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="mainwindow.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kturtle; Main window</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+In this Getting Started guide we assume that the language of the &logo; commands is English. You can change this language in <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kturtle;...</guimenuitem></menuchoice> in the <guilabel>Language</guilabel> section. Be aware that the language you set here for &kturtle; is the one you use to type the &logo; commands.</para>
+
+<sect1 id="first-steps">
+<title>First steps with &logo;: meet the Turtle!</title>
+<para>You must have noticed the turtle in the middle of the canvas: you are just about to learn how to control it using commands in the code editor.</para>
+
+<sect2 id="the-turtle-moves">
+<title>The Turtle Moves</title>
+<para>Let us start by getting the turtle moving. Our turtle can do 3 types of moves, (1) it can go forwards and backwards, (2) it can turn left and right and (3) it can go directly to a position on the screen. Try this for example:</para>
+<para>
+<screen>
+forward 100
+turnleft 90
+</screen>
+Type or copy-paste the code to the code editor and execute it (using <link linkend="file-execute"><menuchoice><guimenu>File</guimenu><guimenuitem>Execute Commands</guimenuitem></menuchoice></link>) to see the result.</para>
+
+<para>When you typed and executed the commands like above in the code editor you might have noticed one or more of the following things:</para>
+<orderedlist>
+<listitem><para>That &mdash; after executing the commands &mdash; the turtle moves up, draws a line, and then turns a quarter turn to the left. This because you have used the <link linkend="forward"><userinput>forward</userinput></link> and the <link linkend="turnleft"><userinput>turnleft</userinput></link> commands.</para>
+</listitem>
+<listitem>
+<para>That the color of the code changed while you where typing it: this feature is called <emphasis>intuitive highlighting</emphasis> &mdash; different types of commands are highlighted differently. This makes reading large blocks of code more easy.</para>
+</listitem>
+<listitem>
+<para>That the turtle draws a thin black line.</para>
+</listitem>
+<listitem>
+<para>Maybe you got an error message. This could simply mean two things: you could have made a mistake while copying the commands, or you should still set the correct language for the &logo; commands (you can do that by choosing <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kturtle;...</guimenuitem></menuchoice>, in the <guilabel>Language</guilabel> section).</para>
+</listitem>
+</orderedlist>
+
+<para>You will likely understand that <userinput>forward 100</userinput> commanded the turtle to move forward leaving a line, and that <userinput>turnleft 90</userinput> commanded the turtle to turn 90 <glossterm linkend="degrees">degrees</glossterm> to the left.</para>
+
+<para>Please see the following links to the reference manual for a complete explanation of the new commands: <userinput>forward</userinput>, <userinput>backward</userinput>, <userinput>turnleft</userinput>, and <userinput>turnright</userinput>.</para>
+</sect2>
+
+<sect2 id="more-examples">
+<title>More examples</title>
+<para>The first example was very simple, so let us go on!</para>
+
+<para>
+<!--translators: if it's not already there, you can copy/paste the translated code below and save it in arrow.logo in your examples folder: kde-i18n/language-code/data/kdeedu/kturtle/ -->
+<screen>
+canvassize 200,200
+canvascolor 0,0,0
+pencolor 255,0,0
+penwidth 5
+clear
+
+go 20,20
+direction 135
+
+forward 200
+turnleft 135
+forward 100
+turnleft 135
+forward 141
+turnleft 135
+forward 100
+turnleft 45
+
+go 40, 100
+</screen>
+Again you can type or copy-paste the code to the code editor or open the <filename>arrow.logo</filename> file in the <guimenu>Open Examples</guimenu> folder and execute it (using <link linkend="file-execute"><menuchoice><guimenu>File</guimenu><guimenuitem>Execute Commands</guimenuitem></menuchoice></link>) to see the result. In the next examples you are expected to know the drill.</para>
+
+<para>You might have noticed that this second example uses a lot more code. You have also seen a couple of new commands. Here a short explanation of all the new commands:</para>
+
+<para><userinput>canvassize 200,200</userinput> sets the canvas width and height to 200 <glossterm linkend="pixels">pixels</glossterm>. The width and the height are equal, so the canvas will be a square.</para>
+
+<para><userinput>canvascolor 0,0,0</userinput> makes the canvas black. <userinput>0,0,0</userinput> is a <glossterm linkend="rgb">RGB-combination</glossterm> where all values are set to <userinput>0</userinput>, which results in black.</para>
+
+<para><userinput>pencolor 255,0,0</userinput> sets the color of the pen to red. <userinput>255,0,0</userinput> is a <glossterm linkend="rgb">RGB-combination</glossterm> where only the red value is set to <userinput>255</userinput> (fully on) while the others (green and blue) are set to <userinput>0</userinput> (fully off). This results in a bright shade of red.</para>
+
+<para>If you do not understand the color values, be sure to read the glossary on <glossterm linkend="rgb">RGB-combination</glossterm>s</para>
+
+<para><userinput>penwidth 5</userinput> sets the width (the size) of the pen to <userinput>5</userinput> <glossterm linkend="pixels">pixels</glossterm>. From now on every line the turtle draw will have a thickness of <userinput>5</userinput>, until we change the <userinput>penwidth</userinput> to something else.</para>
+
+<para><userinput>clear</userinput> clear the canvas, that is all it does.</para>
+
+<para><userinput>go 20,20</userinput> commands the turtle to go to a certain place on the canvas. Counted from the upper left corner, this place is 20 <glossterm linkend="pixels">pixels</glossterm> across from the left, and 20 <glossterm linkend="pixels">pixels</glossterm> down from the top of the canvas. Note that using the <userinput>go</userinput> command the turtle will not draw a line.</para>
+
+<para><userinput>direction 135</userinput> set the turtle's direction. The <userinput>turnleft</userinput> and <userinput>turnright</userinput> commands change the turtle's angle starting from its current direction. The <userinput>direction</userinput> command changes the turtle's angle from zero, and thus is not relative to the turtle previous direction.</para>
+
+<para>After the <userinput>direction</userinput> command a lot of <userinput>forward</userinput> and <userinput>turnleft</userinput> commands follow. These command do the actual drawing.</para>
+
+<para>At last another <userinput>go</userinput> command is used to move the turtle aside.</para>
+
+<para>Make sure you follow the links to the reference. The reference explains each command more thoroughly.</para>
+
+
+</sect2>
+</sect1>
+
+
+
+<!-- EXTRA SECTIONS CAN BE ADDED TO THE "GETTING STARTED"
+
+<sect1 id="calculations">
+<title>Simple Calculations</title>
+<para>
+Not yet written
+</para>
+</sect1>
+<sect1 id="using_variables">
+<title>Using Variables: creating 'number containers'</title>
+<para>
+Not yet written
+</para>
+</sect1>
+<sect1 id="using_strings">
+<title>Using strings: creating 'text containers'</title>
+<para>
+Not yet written
+</para>
+</sect1>
+<sect1 id="logic">
+<title>Logic: asking the computer simple questions</title>
+<para>
+Not yet written
+</para>
+</sect1>
+<sect1 id="recursion">
+<title>Recursion: the Turtle is using itself</title>
+<para>
+Draw a maze for example
+</para>
+</sect1>
+-->
+
+
+</chapter>
diff --git a/doc/kturtle/glossary.docbook b/doc/kturtle/glossary.docbook
new file mode 100644
index 00000000..c4405fe6
--- /dev/null
+++ b/doc/kturtle/glossary.docbook
@@ -0,0 +1,173 @@
+<!--Dear translator: please NEVER translate the id or anything inside the tags as they are needed in english by the application
+ Thanks a lot in advance.-->
+<chapter id="Glossary">
+<title>Glossary</title>
+
+<para>In this chapter you will find an explanation of most of the <quote>uncommon</quote> words that are used in the handbook.</para>
+
+<glosslist>
+<glossentry id="degrees">
+<glossterm>degrees</glossterm>
+<glossdef><para>Degrees are units to measure angles or turns. A full turn is 360 degrees, a half turn 180 degrees and a quarter turn 90 degrees. The commands <userinput>turnleft</userinput>, <userinput>turnright</userinput> and <userinput>direction</userinput> need an input in degrees.</para></glossdef>
+</glossentry>
+
+<glossentry id="input-output">
+<glossterm>input and output of commands</glossterm>
+<glossdef><para>Some commands take input, some commands give output, some commands take input <emphasis>and</emphasis> give output and some commands neither take input nor give output.</para>
+<para>Some examples of commands that only take input are:
+<screen>
+forward 50
+pencolor 255,0,0
+print "Hello!"
+</screen>
+The <userinput>forward</userinput> command takes <userinput>50</userinput> as input. <userinput>forward</userinput> needs this input to know how many <glossterm linkend="pixels">pixels</glossterm> it should go forward. <userinput>pencolor</userinput> takes a color as input and <userinput>print</userinput> takes a string (a piece of text) as input. Please note that the input can also be a container. The next example illustrates this:
+<screen>
+x = 50
+print x
+str = "hello!"
+print str
+</screen></para>
+
+<para>Now some examples of commands that give output:
+<screen>
+x = inputwindow "Please type something and press OK... thanks!"
+r = random 1,100
+</screen>
+The <userinput>inputwindow</userinput> command takes a string as input, and outputs the number or string that is entered. As you can see, the output of <userinput>inputwindow</userinput> is stored in the container <userinput>x</userinput>. The <userinput>random</userinput> command also gives output. In this case it outputs a number between 1 and 100. The output of the random is again stored in a container, named <userinput>r</userinput>. Note that the containers <userinput>x</userinput> and <userinput>r</userinput> are not used in the example code above.</para>
+
+<para>There are also commands that neither need input nor give output. Here are some examples:
+<screen>
+clear
+penup
+wrapon
+hide
+</screen>
+</para></glossdef>
+</glossentry>
+
+<glossentry id="intuitive-highlighting">
+<glossterm>intuitive highlighting</glossterm>
+<glossdef><para>This is a feature of &kturtle; that makes coding even easier. With intuitive highlighting the code that you write gets a color that indicates what type of code it is. In the next list you will find the different types of code and the color they get in <link linkend="the-code-editor">the code editor</link>.
+<table>
+<title>Different types of code and their highlight color</title>
+<tgroup cols="3">
+<tbody>
+<row>
+<entry>regular commands</entry>
+<entry>dark green</entry>
+<entry>The regular commands are described <link linkend="commands">here</link>.</entry>
+</row>
+<row>
+<entry>execution controllers</entry>
+<entry>black (bold)</entry>
+<entry>The special commands control execution, read more on them <link linkend="controlling-execution">here</link>.</entry>
+</row>
+<row>
+<entry>comments</entry>
+<entry>dark yellow</entry>
+<entry>Lines that are commented start with a comment characters (#). These lines are ignored when the code is executed. Comments allow the programmer to explain a bit about his code or can be used to temporarily prevent a certain piece of code from executing.</entry>
+</row>
+<row>
+<entry>brackets [, ]</entry>
+<entry>light green (bold)</entry>
+<entry>Brackets are used to group portions of code. Brackets are often used together with <link linkend="controlling-execution">execution controllers</link>.</entry>
+</row>
+<row>
+<entry>the <link linkend="learn">learn</link> command</entry>
+<entry>light green (bold)</entry>
+<entry>The <link linkend="learn">learn</link> command is used to create new commands.</entry>
+</row>
+<row>
+<entry>numbers</entry>
+<entry>blue</entry>
+<entry>Numbers, well not much to say about them.</entry>
+</row>
+<row>
+<entry>strings</entry>
+<entry>dark red</entry>
+<entry>Not much to say about (text) strings either, except that they always start and end with the double quotes (").</entry>
+</row>
+<row>
+<entry>mathematical characters</entry>
+<entry>grey</entry>
+<entry>These are the mathematical characters: +, -, *, /, (, and ). Read more about them <link linkend="math">here</link>.</entry>
+</row>
+<row>
+<entry>questions characters</entry>
+<entry>blue (bold)</entry>
+<entry>Read more about questions <link linkend="questions">here</link>.</entry>
+</row>
+<row>
+<entry>question glue-words</entry>
+<entry>pink</entry>
+<entry>Read more about the question glue-words (and, or, not) <link linkend="question-glue">here</link>.</entry>
+</row>
+<row>
+<entry>regular text</entry>
+<entry>black</entry>
+<entry></entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+</para></glossdef>
+</glossentry>
+
+<glossentry id="pixels">
+<glossterm>pixels</glossterm>
+<glossdef><para>A pixel is a dot on the screen. If you look very close you will see that the screen of your monitor uses pixels. All images on the screen are built with these pixels. A pixel is the smallest thing that can be drawn on the screen.</para>
+<para>A lot of commands need a number of pixels as input. These commands are: <userinput>forward</userinput>, <userinput>backward</userinput>, <userinput>go</userinput>, <userinput>gox</userinput>, <userinput>goy</userinput>, <userinput>canvassize</userinput> and <userinput>penwidth</userinput>.</para></glossdef>
+</glossentry>
+
+<glossentry id="rgb">
+<glossterm>RGB combinations (color codes)</glossterm>
+<glossdef><para>RGB combinations are used to describe colors. The <quote>R</quote> stand for <quote>red</quote>, the <quote>G</quote> stands for <quote>green</quote> and the <quote>B</quote> stands for <quote>blue</quote>. An example of an RGB combination is <userinput>255,0,0</userinput>: the first value (<quote>red</quote>) is 255 and the others are 0, so this represents a bright shade of red. Each value of an RGB combination has to be in the range 0 to 255. Here a small list of some often used colors:
+<table frame="none">
+<title>Often used RGB combinations</title>
+<tgroup cols="2" colsep="5" rowsep="1">
+<colspec colname="c1"/>
+<tbody>
+<row><entry><userinput>0,0,0</userinput></entry><entry>black</entry></row>
+<row><entry><userinput>255,255,255</userinput></entry><entry>white</entry></row>
+<row><entry><userinput>255,0,0</userinput></entry><entry>red</entry></row>
+<row><entry><userinput>150,0,0</userinput></entry><entry>dark red</entry></row>
+<row><entry><userinput>0,255,0</userinput></entry><entry>green</entry></row>
+<row><entry><userinput>0,0,255</userinput></entry><entry>blue</entry></row>
+<row><entry><userinput>0,255,255</userinput></entry><entry>light blue</entry></row>
+<row><entry><userinput>255,0,255</userinput></entry><entry>pink</entry></row>
+<row><entry><userinput>255,255,0</userinput></entry><entry>yellow</entry></row>
+</tbody>
+</tgroup>
+</table>
+</para>
+<para>To easily find the RGB combinations of a color you should try the color picker! You can open the color picker using <link linkend="tools-color-picker"><menuchoice><guimenu>Tools</guimenu><guimenuitem>Color Picker</guimenuitem></menuchoice></link>.</para>
+<para>Two commands need an RGB combination as input: these commands are <userinput>canvascolor</userinput> and <userinput>pencolor</userinput>.</para></glossdef>
+</glossentry>
+
+<glossentry id="sprite">
+<glossterm>sprite</glossterm>
+<glossdef><para>A sprite is a small picture that can be moved around the screen. Our beloved turtle, for instance, is a sprite.</para>
+<para>Note: with this version of &kturtle; the sprite cannot be changed from a turtle into something else. Future versions of &kturtle; will be able to do this.</para></glossdef>
+</glossentry>
+
+<glossentry id="wrapping">
+<glossterm>wrapping</glossterm>
+<glossdef><para>Wrapping is what happens when the turtle draws something that is to big to fix in on the canvas and wrapping is set <quote>on</quote>.
+<screenshot>
+ <screeninfo>This is what happens when wrapping is <quote>on</quote></screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="wrapping.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>An example of wrapping</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+When the turtle moves off a border of the canvas it is instantly taken to the opposite border so it can continue its move. This way the turtle will always stay on the screen while it moves. This happens when wrapping is on.</para>
+<para>Wrapping can be turned on and off with the <userinput>wrapon</userinput> and <userinput>wrapoff</userinput> commands. When &kturtle; starts wrapping is turned on by default.</para></glossdef>
+</glossentry>
+
+</glosslist>
+
+</chapter> \ No newline at end of file
diff --git a/doc/kturtle/index.docbook b/doc/kturtle/index.docbook
new file mode 100644
index 00000000..79477b3c
--- /dev/null
+++ b/doc/kturtle/index.docbook
@@ -0,0 +1,243 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
+"dtd/kdex.dtd" [
+ <!ENTITY kappname "&kturtle;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY logo "Logo">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+ <!ENTITY using-kturtle SYSTEM "using-kturtle.docbook">
+ <!ENTITY getting-started SYSTEM "getting-started.docbook">
+ <!ENTITY programming-reference SYSTEM "programming-reference.docbook">
+ <!ENTITY translator-guide SYSTEM "translator-guide.docbook">
+ <!ENTITY glossary SYSTEM "glossary.docbook">
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kturtle; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Cies</firstname>
+<surname>Breijs</surname>
+<affiliation>
+<address><email>cies AT kde DOT nl</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Anne-Marie</firstname>
+<surname>Mahfouf</surname>
+<affiliation>
+<address><email>annma AT kde DOT org</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+
+<copyright>
+<year>2004</year>
+<holder>Cies Breijs</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2005-12-10</date>
+<releaseinfo>0.6</releaseinfo>
+
+<abstract>
+<para>
+&kturtle; is an educational programming environment using the &logo; programming language. The unique quality of LOGO is that the programming commands are translated to the language of the 'programmer' so he/she can program in his/her native language.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>KTurtle</keyword>
+<keyword>education</keyword>
+<keyword>language</keyword>
+<keyword>native</keyword>
+<keyword>programming</keyword>
+<keyword>code</keyword>
+<keyword>&logo;</keyword>
+<keyword>instructions</keyword>
+<keyword>turtle</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>&kturtle; is an educational programming environment using the
+<link linkend="what-is-logo">&logo;</link> programming language. The goal of &kturtle; is to make programming as easy and accessible as possible. This makes &kturtle; suitable for teaching kids the basics of math, geometry and... programming. The commands used to program are in the style of the &logo; programming language. The unique feature of the &logo; programming language is that the commands are often translated into the speaking language of the programmer.</para>
+
+<para>&kturtle; is named after <quote>the turtle</quote> that plays a central role in the programming environment. The user programs the turtle, using the &logo; commands, to draw a picture on <link linkend="the-canvas">the canvas</link>.</para>
+
+<sect1 id="what-is-logo">
+<title>What is &logo;?</title>
+<para>The first version &logo; programming language was created by Seymour
+Papert of MIT Artificial Intelligence Laboratory in 1967 as an offshoot of the
+LISP programming language. From then many versions of &logo; have been released.
+By 1980 &logo; was gaining momentum, with versions for MSX, Commodore, Atari,
+Apple II and IBM PC systems. These versions were mainly for educational
+purposes. LCSI released <application>&Mac;&logo;</application> in 1985 as a tool
+for professional programmers, but it never caught on. MIT is still maintaining a
+site on &logo; which can be found on <ulink
+url="http://el.media.mit.edu/logo-foundation/">http://el.media.mit.edu/logo-
+foundation/</ulink>.</para>
+
+<para>Today there are several versions of &logo; around which can easily be found on <ulink url="http://el.media.mit.edu/logo-foundation/">MIT's &logo; site</ulink> and by a simple <ulink url="http://www.google.com/search?q=logo+programming+kids">Google search</ulink>. This version of &logo; (&kturtle;) is only focused on the educational qualities of the programming language and will not try to suit professional programmers' needs.</para>
+</sect1>
+
+<sect1 id="features-of-kturtle">
+<title>Features of &kturtle;</title>
+<para>&kturtle; has some nice features that make starting to program a breeze. See here some of the highlights of &kturtle; feature set:
+<itemizedlist>
+<listitem><para>
+An integrated &logo; interpreter (no extra dependencies) that uses &XML; files for the command translations, supports user defined functions and dynamic type switching.
+</para></listitem>
+<listitem><para>
+The execution can be slown down, paused or stopped at any time.
+</para></listitem>
+<listitem><para>
+A powerful editor for the &logo; commands with intuitive syntax highlighting, line numbering and more.
+</para></listitem>
+<listitem><para>
+<link linkend="the-canvas">The canvas</link> can be saved as an image or printed.
+</para></listitem>
+<listitem><para>
+<link linkend="the-canvas">The canvas</link> has a wrapping mode (which is on by default) so the turtle cannot get lost too easily.
+</para></listitem>
+<listitem><para>
+Context help for all &logo; commands: Just press <keysym>F2</keysym>.
+</para></listitem>
+<listitem><para>
+The &logo; commands are fully translatable (at the moment of writing Brazilian Portuguese, Dutch, French, German, Italian, Slovenian, Serbian (Cyrillic and Latin), Spanish and Swedish are in &kde;).
+</para></listitem>
+<listitem><para>
+An error dialog that links the error messages to the mistakes in the program.
+</para></listitem>
+<listitem><para>
+Simplified programming terminology.
+</para></listitem>
+<listitem><para>
+Full-screen mode.
+</para></listitem>
+<listitem><para>
+Many integrated, internationalized example &logo; programs make it easy to get started.
+</para></listitem>
+</itemizedlist>
+</para>
+</sect1>
+</chapter>
+
+&using-kturtle;
+
+&getting-started;
+
+&programming-reference;
+
+&glossary;
+
+&translator-guide;
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+
+<para>
+&kturtle;
+</para>
+<para>Program copyright 2003-2005 Cies Breijs <email>cies AT kde DOT nl</email></para>
+<para>
+Contributors:
+<itemizedlist>
+<listitem><para>Coding help, editor part: &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;</para>
+</listitem>
+<listitem><para>Author of <application>WSBASIC</application> (<ulink url="http://wsbasic.sourceforge.net">http://wsbasic.sourceforge.net</ulink>) which is the base for the interpreter of &kturtle;: Walter Schreppers <email>Walter DOT Schreppers AT ua DOT ac DOT be</email></para>
+</listitem>
+<listitem><para>German Data Files: Matthias Me&szlig;mer <email>bmlmessmer AT web DOT de</email></para>
+</listitem>
+<listitem><para>German Data Files: Burkhard L&uuml;ck <email>lueck AT hube-lueck DOT de</email></para>
+</listitem>
+<listitem><para>Swedish Data Files: Stefan Asserh&#228;ll <email>stefan DOT asserhal AT telia DOT com</email></para>
+</listitem>
+<listitem><para>Slovenian Data Files: Jure Repinc <email>jlp@holodeck1.com</email></para>
+</listitem>
+<listitem><para>Serbian (Cyrillic and Latin) Data Files: Chusslove Illich <email>caslav.ilic@gmx.net</email></para>
+</listitem>
+<listitem><para>Italian Data Files: Pino Toscano <email>toscano.pino@tiscali.it</email></para>
+</listitem>
+<listitem><para>English GB Data Files: Andy Potter <email>A.J.Potter@rhul.ac.uk</email></para>
+</listitem>
+<listitem><para>Spanish Data Files: Rafael Beccar <email>rafael.beccar@kdemail.net</email></para>
+</listitem>
+<listitem><para>Brazilian Portuguese Data Files: Riverson Rios <email>riverson@ccv.ufc.br</email></para>
+</listitem>
+<listitem><para>Norwegian Nynorsk and Bokmål Data Files: Karl Ove Hufthammer <email>karl@huftis.org</email></para>
+</listitem>
+<listitem><para>Parser Cyrillic support: Albert Astals Cid <email>astals11@terra.es</email></para>
+</listitem>
+</itemizedlist>
+</para>
+
+<para>
+Documentation copyright 2004
+<itemizedlist>
+<listitem><para>
+Cies Breijs <email>cies AT kde DOT nl</email>
+</para></listitem>
+<listitem><para>
+&Anne-Marie.Mahfouf; <email>annma AT kde DOT org</email>
+</para></listitem>
+<listitem><para>Some proofreading changes by &Philip.Rodrigues; &Philip.Rodrigues.mail;</para>
+</listitem>
+<listitem><para>Updated translation how-to and some proofreading changes by Andrew Coles <email>andrew_coles AT yahoo DOT co DOT uk</email></para>
+</listitem>
+
+</itemizedlist>
+</para>
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL;
+
+&underGPL; <!-- GPL License -->
+
+</chapter>
+
+
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kturtle">
+<title>How to obtain &kturtle;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
diff --git a/doc/kturtle/mainwindow.png b/doc/kturtle/mainwindow.png
new file mode 100644
index 00000000..86a2d37f
--- /dev/null
+++ b/doc/kturtle/mainwindow.png
Binary files differ
diff --git a/doc/kturtle/mainwindow_flower_nrs.png b/doc/kturtle/mainwindow_flower_nrs.png
new file mode 100644
index 00000000..fdf2e7c9
--- /dev/null
+++ b/doc/kturtle/mainwindow_flower_nrs.png
Binary files differ
diff --git a/doc/kturtle/print.png b/doc/kturtle/print.png
new file mode 100644
index 00000000..cdd61e7e
--- /dev/null
+++ b/doc/kturtle/print.png
Binary files differ
diff --git a/doc/kturtle/programming-reference.docbook b/doc/kturtle/programming-reference.docbook
new file mode 100644
index 00000000..12cd86db
--- /dev/null
+++ b/doc/kturtle/programming-reference.docbook
@@ -0,0 +1,822 @@
+<!--Dear translator: please NEVER translate the id or anything inside the tags as they are needed in english by the application
+ Thanks a lot in advance.-->
+<chapter id="reference">
+<title>&kturtle;'s &logo; Programming Reference</title>
+<para>This is the reference for the &kturtle;'s &logo;. In this chapter we first briefly touch all the <link linkend="different-instructions">different instruction types</link>. Then the <link linkend="commands">commands</link> are explained one by one. Then <link linkend="containers">containers</link>, <link linkend="math">math</link>, <link linkend="questions">questions</link> and <link linkend="controlling-execution">execution controllers</link> are explained. At last you are shown how to create you own commands with <link linkend="learn">learn</link>.</para>
+
+<sect1 id="different-instructions">
+<title>Different Instruction Types</title>
+<para>As in any language, LOGO has different types of words and symbols. Here the differences between the types are briefly explained.</para>
+
+<sect2 id="command">
+<title>Commands</title>
+<para>Using commands you tell the turtle or &kturtle; to do something. Some commands need input, some give output.
+<screen>
+# forward is a command that needs input, in this case the number 100:
+forward 100
+</screen>
+</para>
+<para>For a detailed overview of all commands that &kturtle; supports go <link linkend="commands">here</link>.</para>
+</sect2>
+
+<sect2 id="number">
+<title>Numbers</title>
+<para>Most likely you already know quite a bit about numbers. The way numbers are used in &kturtle; is not much different from spoken language, or math. </para>
+<para>We have the so called natural numbers: <userinput>0</userinput>, <userinput>1</userinput>, <userinput>2</userinput>, <userinput>3</userinput>, <userinput>4</userinput>, <userinput>5</userinput>, etc. The negative numbers: <userinput>-1</userinput>, <userinput>-2</userinput>, <userinput>-3</userinput>, etc. And the numbers with decimals, or dot-numbers, for example: <userinput>0.1</userinput>, <userinput>3.14</userinput>, <userinput>33.3333</userinput>, <userinput>-5.05</userinput>, <userinput>-1.0</userinput>.
+</para>
+<para>Numbers can be used in <link linkend="math">mathematical calculations</link> and <link linkend="questions">questions</link>. They can also be put in <link linkend="containers">containers</link>.</para>
+<para>Numbers are <glossterm>highlighted</glossterm> with blue in the <link linkend="the-code-editor">code editor</link>.</para>
+</sect2>
+
+<sect2 id="string">
+<title>Strings</title>
+<para>First an example:
+<screen>
+print "Hello, I'm a string."
+</screen>
+In this example <userinput>print</userinput> is a command where <userinput>"Hello, I'm a string."</userinput> is a string. Strings start and end with the <userinput>"</userinput> mark, by these marks &kturtle; knows it is a string.</para>
+<para>Strings can be put in <link linkend="containers">containers</link>. Yet they cannot be used in <link linkend="math">mathematical calculations</link> and <link linkend="questions">questions</link>.</para>
+<para>Strings are <glossterm>highlighted</glossterm> with dark red in the <link linkend="the-code-editor">code editor</link>.</para>
+</sect2>
+
+
+<sect2 id="name">
+<title>Names</title>
+<para>When using the &logo; programming language you create new things. If you write a program you will often need <link linkend="containers">containers</link> and in some cases you need <link linkend="learn">learn</link> to create new commands. When making a <link linkend="containers">container</link> or a new command with <link linkend="learn">learn</link> you will have to specify a name.</para>
+<para>You can choose any name, as long as it does not already have a meaning. For instance you cannot name a container <link linkend="forward">forward</link>, since that name is already used for a command, and thus has a meaning.
+<screen>
+# here forward is used as a container, but it already has a meaning
+# so this will produce an error:
+forward = 20
+
+# this works:
+forward 20
+</screen>
+Names can contain only letters, numbers and underscores (_). Yet they have to start with a letter.
+</para>
+<para>
+Please read the documentation on <link linkend="containers">containers</link> and the <link linkend="learn">learn</link> command for a better explanation and more examples.
+</para>
+</sect2>
+
+<sect2 id="assignment">
+<title>Assignments</title>
+<para>Assignment are done with the <userinput>=</userinput> symbol. In programming languages it is better to read the single <userinput>=</userinput> not as 'equals' but as 'becomes'. The word 'equals' is more appropriate for the <userinput>==</userinput> which is a <link linkend="questions">question</link>.</para>
+<para>Assignments are generally use for two reasons, (1) to add content <link linkend="containers">containers</link>, and (2) to modify the content of a container. For example:
+<screen>
+x = 10
+# the container x now contains the number 10
+W = "My age is: "
+# the container W now contains the string "My age is: "
+# this prints the content of the containers 'W' and 'x' on the canvas
+print W + x
+</screen>
+</para>
+<para>For more examples see the section that explains <link linkend="containers">containers</link>.</para>
+</sect2>
+
+<sect2 id="math-symbols">
+<title>Math Symbols</title>
+<para>&kturtle; supports all basic math symbols: add (<userinput>+</userinput>), substract (<userinput>-</userinput>), multiply (<userinput>*</userinput>), divide (<userinput>/</userinput>) and the brackets <userinput>(</userinput> and <userinput>)</userinput>.</para>
+<para>For a complete explanation and more examples see the <link linkend="math">math</link> section.</para>
+</sect2>
+
+<sect2 id="question">
+<title>Questions</title>
+<para>We can ask simple questions on which the answer will be 'true' or 'false'.</para>
+<para>Using questions is extensively explained in the <link linkend="questions">questions</link> section.</para>
+</sect2>
+
+<sect2 id="questions-glue">
+<title>Question Glue-Words</title>
+<para>Questions can be glued together with so called 'question glue'. The glue words are <userinput>and</userinput>, <userinput>or</userinput>, and a special glue-word: <userinput>not</userinput>.</para>
+<para>Using question-glue is explained in the <link linkend="question-glue">Question Glue</link> section.</para>
+</sect2>
+
+
+<sect2 id="comment">
+<title>Comments</title>
+<para>Comments are lines that start with a <userinput>#</userinput>. For example:
+<screen>
+# this is a comment!
+print "this is not a comment"
+# the previous line is not a comment, but the next line is:
+# print "this is not a comment"
+</screen>
+We can add comments to the code for ourselves or for someone else to read. Comments are used for: (1) adding a small description to the program, (2) explaining how a piece of code works if it is a bit cryptic, and (3) to 'comment-out' lines of code that should be (temporarily) ignored (see the last line of the example).</para>
+<para>Commented lines are <glossterm>highlighted</glossterm> with dark yellow in the <link linkend="the-code-editor">code editor</link>.</para>
+</sect2>
+
+</sect1>
+
+
+<sect1 id="commands">
+<title>Commands</title>
+<para>Using commands you tell the turtle or &kturtle; to do something. Some commands need input, some give output. In this section we explain all the commands that can be used in &kturtle;. Please note that all build in commands we discuss here are <glossterm>highlighted</glossterm> with dark green in the <link linkend="the-code-editor">code editor</link>, this can help you to distinguish them.</para>
+
+<sect2 id="moving-the-turtle">
+<title>Moving the turtle</title>
+<para>There are several commands to move the turtle over the screen.</para>
+
+<sect3 id="forward">
+ <title>forward (fw)</title>
+ <variablelist>
+ <varlistentry>
+ <term>forward</term>
+ <listitem><para><screen>forward X</screen>
+ <userinput>forward</userinput> moves the turtle forward by the amount of X pixels. When the pen is down the turtle will leave a trail. <userinput>forward</userinput> can be abbreviated to <userinput>fw</userinput></para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="backward">
+ <title>backward (bw)</title>
+ <variablelist>
+ <varlistentry>
+ <term>backward</term>
+ <listitem><para><screen>backward X</screen>
+ <userinput>backward</userinput> moves the turtle backward by the amount of X pixels. When the pen is down the turtle will leave a trail. <userinput>backward</userinput> can be abbreviated to <userinput>bw</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="turnleft">
+ <title>turnleft (tl)</title>
+ <variablelist>
+ <varlistentry>
+ <term>turnleft</term>
+ <listitem><para><screen>turnleft X</screen>
+ <userinput>turnleft</userinput> commands the turtle to turn an amount of X degrees to the left. <userinput>turnleft</userinput> can be abbreviated to <userinput>tl</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="turnright">
+ <title>turnright (tr)</title>
+ <variablelist>
+ <varlistentry>
+ <term>turnright</term>
+ <listitem><para><screen>turnright X</screen>
+ <userinput>turnright</userinput>the turtle to turn an amount of X degrees to the right. <userinput>turnright</userinput> can be abbreviated to <userinput>tr</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="direction">
+ <title>direction (dir)</title>
+ <variablelist>
+ <varlistentry>
+ <term>direction</term>
+ <listitem><para><screen>direction X</screen>
+ <userinput>direction</userinput> set the turtle's direction to an amount of X degrees counting from zero, and thus is not relative to the turtle's previous direction. <userinput>direction</userinput> can be abbreviated to <userinput>dir</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="center">
+ <title>center</title>
+ <variablelist>
+ <varlistentry>
+ <term>center</term>
+ <listitem><para><screen>center</screen>
+ <userinput>center</userinput> moves the turtle to the center on the canvas.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="go">
+ <title>go</title>
+ <variablelist>
+ <varlistentry>
+ <term>go</term>
+ <listitem><para><screen>go X,Y</screen>
+ <userinput>go</userinput> commands the turtle to go to a certain place on the canvas. This place is X <glossterm linkend="pixels">pixels</glossterm> from the left of the canvas, and Y <glossterm linkend="pixels">pixels</glossterm> form the top of the canvas. Note that using the <userinput>go</userinput> command the turtle will not draw a line.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="gox">
+ <title>gox</title>
+ <variablelist>
+ <varlistentry>
+ <term>gox</term>
+ <listitem><para><screen>gox X</screen>
+ <userinput>gox</userinput> using this command the turtle will move to X <glossterm linkend="pixels">pixels</glossterm> from the left of the canvas whilst staying at the same height.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="goy">
+ <title>goy</title>
+ <variablelist>
+ <varlistentry>
+ <term>goy</term>
+ <listitem><para><screen>goy Y</screen>
+ <userinput>gox</userinput> using this command the turtle will move to Y <glossterm linkend="pixels">pixels</glossterm> from the top of the canvas whilst staying at the same distance from the left border of the canvas.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+<sect2 id="pen">
+<title>The turtle has a pen</title>
+<para>The turtle has a pen that draws a line when the turtle moves. There are a few commands to control the pen. In this section we explain these commands.</para>
+<sect3 id="penup">
+ <title>penup (pu)</title>
+ <variablelist>
+ <varlistentry>
+ <term>penup</term>
+ <listitem><para><screen>penup</screen>
+ <userinput>penup</userinput> lifts the pen from the canvas. When the pen is <quote>up</quote> no line will be drawn when the turtle moves. See also <userinput>pendown</userinput>. <userinput>penup</userinput> can be abbreviated to <userinput>pu</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="pendown">
+ <title>pendown (pd)</title>
+ <variablelist>
+ <varlistentry>
+ <term>pendown</term>
+ <listitem><para><screen>pendown</screen>
+ <userinput>pendown</userinput> presses the pen down on the canvas. When the pen is press <quote>down</quote> on the canvas a line will be drawn when the turtle moves. See also <userinput>penup</userinput>. <userinput>pendown</userinput> can be abbreviated to <userinput>pd</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="setpenwidth">
+ <title>penwidth (pw)</title>
+ <variablelist>
+ <varlistentry>
+ <term>penwidth</term>
+ <listitem><para><screen>penwidth X</screen>
+ <userinput>penwidth</userinput> sets the width of the pen (the line width) to an amount of X <glossterm linkend="pixels">pixels</glossterm>. <userinput>penwidth</userinput> can be abbreviated to <userinput>pw</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="setfgcolor">
+ <title>pencolor (pc)</title>
+ <variablelist>
+ <varlistentry>
+ <term>pencolor</term>
+ <listitem><para><screen>pencolor R,G,B</screen>
+ <userinput>pencolor</userinput> sets the color of the pen. <userinput>pencolor</userinput> takes an <glossterm linkend="rgb">RGB combination</glossterm> as input. <userinput>pencolor</userinput> can be abbreviated to <userinput>pc</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+<sect2 id="canvas">
+<title>Commands to control the canvas</title>
+<para>There are several commands to control the canvas.</para>
+<sect3 id="resizecanvas">
+ <title>canvassize (cs)</title>
+ <variablelist>
+ <varlistentry>
+ <term>canvassize</term>
+ <listitem><para><screen>canvassize X,Y</screen>
+ With the <userinput>canvassize</userinput> command you can set the size of the canvas. It takes X and Y as input, where X is the new canvas width in <glossterm linkend="pixels">pixels</glossterm>, and Y is the new height of the canvas in <glossterm linkend="pixels">pixels</glossterm>. <userinput>canvassize</userinput> can be abbreviated to <userinput>cs</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="setbgcolor">
+ <title>canvascolor (cc)</title>
+ <variablelist>
+ <varlistentry>
+ <term>canvascolor</term>
+ <listitem><para><screen>canvascolor R,G,B</screen>
+ <userinput>canvascolor</userinput> set the color of the canvas. <userinput>canvascolor</userinput> takes an <glossterm linkend="rgb">RGB combination</glossterm> as input. <userinput>canvascolor</userinput> can be abbreviated to <userinput>cc</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="wrapon">
+ <title>wrapon</title>
+ <variablelist>
+ <varlistentry>
+ <term>wrapon</term>
+ <listitem><para><screen>wrapon</screen>
+ With the <userinput>wrapon</userinput> command you can set <glossterm linkend="wrapping">wrapping</glossterm> <quote>on</quote> for the canvas. Please see the glossary if you want to know what <glossterm linkend="wrapping">wrapping</glossterm> is.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="wrapoff">
+ <title>wrapoff</title>
+ <variablelist>
+ <varlistentry>
+ <term>wrapoff</term>
+ <listitem><para><screen>wrapoff</screen>
+ With the <userinput>wrapoff</userinput> command you can set <glossterm linkend="wrapping">wrapping</glossterm> <quote>off</quote> for the canvas: this means the turtle can move off the canvas and can get <quote>lost</quote>. Please see the glossary if you want to know what <glossterm linkend="wrapping">wrapping</glossterm> is.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+<sect2 id="clean">
+<title>Commands to clean up</title>
+<para>There are two commands to clean up the canvas after you have made a mess.</para>
+<sect3 id="clear">
+ <title>clear (cr)</title>
+ <variablelist>
+ <varlistentry>
+ <term>clear</term>
+ <listitem><para><screen>clear</screen>
+ With <userinput>clear</userinput> you can clean all drawings from the canvas. All other things remain: the position and angle of the turtle, the canvascolor, the visibility of the turtle, and the canvas size. <userinput>clear</userinput> can be abbreviated to <userinput>cr</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="reset">
+ <title>reset</title>
+ <variablelist>
+ <varlistentry>
+ <term>reset</term>
+ <listitem><para><screen>reset</screen>
+ <userinput>reset</userinput> cleans much more thoroughly than the <userinput>clear</userinput> command. After a <userinput>reset</userinput> command everything is like is was when you had just started &kturtle;. The turtle is positioned at the middle of the screen, the canvas color is white, and the turtle draws a black line on the canvas.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+<sect2 id="sprites">
+<title>The turtle is a sprite</title>
+<para>First a brief explanation of what sprites are: sprites are small pictures that can be moved around the screen, like we often see in computer games. Our turtle is also a sprite. For more info see the glossary on <glossterm linkend="sprites">sprites</glossterm>. </para>
+<para>Next you will find a full overview on all commands to work with sprites.</para>
+<para>[The current version of &kturtle; does not yet support the use of sprites other than the turtle. With future versions you will be able to change the turtle into something of your own design]</para>
+<sect3 id="spriteshow">
+ <title>show</title>
+ <variablelist>
+ <varlistentry>
+ <term>show (ss)</term>
+ <listitem><para><screen>show</screen>
+ <userinput>show</userinput> makes the turtle visible again after it has been hidden. <userinput>show</userinput> can be abbreviated to <userinput>ss</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="spritehide">
+ <title>hide (sh)</title>
+ <variablelist>
+ <varlistentry>
+ <term>hide</term>
+ <listitem><para><screen>hide</screen>
+ <userinput>hide</userinput> hides the turtle. This can be used if the turtle does not fit in your drawing. <userinput>hide</userinput> can be abbreviated to <userinput>sh</userinput>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+<sect2 id="writing">
+<title>Can the turtles write?</title>
+<para>The answer is: <quote>yes</quote>. The turtle can write: it writes just about everything you command it to.</para>
+<sect3 id="print">
+ <title>print</title>
+ <variablelist>
+ <varlistentry>
+ <term>print</term>
+ <listitem><para><screen>print X</screen>
+ The <userinput>print</userinput> command is used to command the turtle to write something on the canvas. <userinput>print</userinput> takes numbers and strings as input. You can <userinput>print</userinput> various numbers and strings using the <quote>+</quote> symbol. See here a small example:
+<screen>
+year = 2003
+author = "Cies"
+print author + " started the KTurtle project in " + year + " and still enjoys working on it!"
+</screen>
+ </para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="fontsize">
+ <title>fontsize</title>
+ <variablelist>
+ <varlistentry>
+ <term>fontsize</term>
+ <listitem><para><screen>fontsize X</screen>
+ <userinput>fontsize</userinput> sets the size of the font that is used by <userinput>print</userinput>. <userinput>fontsize</userinput> takes one input which should be a number. The size is set in <glossterm linkend="pixels">pixels</glossterm>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+<sect2 id="random">
+<title>A command that rolls dice for you</title>
+<para>There is one command that rolls dice for you, it is called <userinput>random</userinput>, and it is very useful for some unexpected results.</para>
+ <variablelist>
+ <varlistentry>
+ <term>random</term>
+ <listitem><para><screen>random X,Y</screen>
+ <userinput>random</userinput> is a command that takes input and gives output. As input are required two numbers, the first (X) sets the minimum output, the second (Y) sets the maximum. The output is a randomly chosen number that is equal or greater then the minimum and equal or smaller than the maximum. Here a small example:
+ <screen>
+repeat 500 [
+ x = random 1,20
+ forward x
+ turnleft 10 - x
+]
+</screen>
+ Using the <userinput>random</userinput> command you can add a bit of chaos to your program.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="dialogs">
+<title>Input and feedback though dialogs</title>
+<para>A dialog is a small pop-up window that provides some feedback or asks for some input. &kturtle; has two commands for dialogs, namely: <userinput>message</userinput> and <userinput>inputwindow</userinput></para>
+<sect3 id="message">
+ <title>message</title>
+ <variablelist>
+ <varlistentry>
+ <term>message</term>
+ <listitem><para><screen>message X</screen>
+ The <userinput>message</userinput> command takes a <link linkend="string">string</link> as input. It shows a pop-up dialog containing the text from the <link linkend="string">string</link>.
+<screen>
+year = 2003
+author = "Cies"
+print author + " started the KTurtle project in " + year + " and still enjoys working on it!"
+</screen>
+ </para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="inputwindow">
+ <title>inputwindow</title>
+ <variablelist>
+ <varlistentry>
+ <term>inputwindow</term>
+ <listitem><para><screen>inputwindow X</screen>
+ <userinput>inputwindow</userinput> takes a <link linkend="string">string</link> as input. It shows a pop-up dialog containing the text from the string, just like the <link linkend="message">message</link>. But in addition to it also puts an input field on the dialog. Through this input filed the user can enter a <link linkend="number">number</link> or a <link linkend="string">string</link> which can be stored in a <link linkend="containers">container</link>. For example
+<screen>
+in = inputwindow "What is you age?"
+out = 2003 - in
+print "In 2003 you where " + out + " years old at some point."
+</screen>
+ When a user cancels the input dialog, or does not enter anything at all the <link linkend="containers">container</link> is emptied.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+</sect1>
+
+
+
+<sect1 id="containers">
+<title>Containers</title>
+<para>Containers are letters or words that can be used by the programmer to store a number or a text. Containers that contain a number are called <link linkend="variables">variables</link>, containers that can contain text are called <link linkend="string">string</link>.</para>
+
+<para>Containers that are not used contain nothing. An example:
+<screen>
+print N
+</screen>
+This will print nothing. If we try to do <link linkend="math">math</link> with empty containers we will get errors.
+</para>
+
+<sect2 id="variables">
+<title>Variables: number containers</title>
+<para>Let us start with an example:
+<screen>
+x = 3
+print x
+</screen>
+In the first line the letter <userinput>x</userinput> made into a variable (number container). As you see the value of the variable <userinput>x</userinput> is set to 3. On the second line the value is printed.</para>
+<para> Note that if we wanted to print an <quote>x</quote> that we should have written
+<screen>
+print "x"
+</screen>
+</para>
+<para>That was easy, now a bit harder example:
+<screen>
+A = 2004
+B = 25
+C = A + B
+
+# the next command prints "2029"
+print C
+backward 30
+# the next command prints "2004 plus 25"
+print A + " plus " + B
+backward 30
+# the next command prints "1979"
+print A - B
+</screen>
+In the first two lines the variables <userinput>A</userinput> and <userinput>B</userinput> are set to 2004 and 25. On the third line the variable <userinput>C</userinput> is set to <userinput>A + B</userinput>, which is 2029. The rest of the example consists of 3 <userinput>print</userinput> commands with <userinput>backward 30</userinput> in between. The <userinput>backward 30</userinput> is there to make sure every output is on a new line. In this example you also see that variables can be used in <link linkend="math">mathematical calculations</link>.</para>
+</sect2>
+
+<sect2 id="strings">
+<title>Containers that contain text (strings)</title>
+<para>In programming code the regular text is usually started and ended with quotes. As we have already seen:
+<screen>
+print "Hello programmer!"
+</screen>
+The regular is delimited with quotes. These pieces of regular text we call <link linkend="strings">strings</link>.</para>
+<para>Strings can also be stored in <link linkend="containers">containers</link> just like <link linkend="number">numbers</link>
+Strings are a lot like variables. The biggest difference is that they contain text in stead of numbers. For this reason strings cannot be used in <link linkend="math">mathematical calculations</link> and <link linkend="questions">questions</link>. An example of the use of strings:
+<screen>
+x = "Hello "
+name = inputwindow "Please enter your name..."
+print x + name + ", how are you?"
+</screen>
+On the first line the string <userinput>x</userinput> is set to <quote>Hello </quote>. On the second line the string <userinput>name</userinput> is set to the output of the <userinput>inputwindow</userinput> command. On the third line the program prints a composition of three strings on the canvas.</para>
+<para>This program ask you to enter your name. When you, for instance, enter the name <quote>Paul</quote>, the program prints <quote>Hello Paul, how are you?</quote>. Please note that the plus (+) is the only math symbol that you can use with strings.</para>
+</sect2>
+</sect1>
+
+<sect1 id="math">
+<title>Can the Turtle do math?</title>
+<para>Yes, &kturtle; will do your math. You can add (+), substract (-), multiply (*), and divide (/). Here is an example in which we use all of them:
+<screen>
+a = 20 - 5
+b = 15 * 2
+c = 30 / 30
+d = 1 + 1
+print "a: "+a+", b: "+b+", c: "+c+", d: "+d
+</screen>
+Do you know what value a, b, c and d have? Please note the use of the <link linkend="assignment">assignment</link> symbol <userinput>=</userinput>.</para>
+<para>If you just want a simple calculation to be done you can do something like this:
+<screen>
+print 2004-12
+</screen></para>
+<para>Now an example with parentheses:
+<screen>
+print ( ( 20 - 5 ) * 2 / 30 ) + 1
+</screen>
+The expressions inside parentheses will be calculated first. In this example, 20-5 will be calculated, then multiplied by 2, divided by 30, and then 1 is added (giving 2).</para>
+</sect1>
+
+<sect1 id="questions">
+<title>Asking questions, getting answers...</title>
+<para><link linkend="if"><userinput>if</userinput></link> and <link linkend="while"><userinput>while</userinput></link> are <link linkend="controlling-execution">execution controllers</link> that we will discuss in the next section. In this section we use the <link linkend="if"><userinput>if</userinput></link> command to explain questions.</para>
+<sect2 id="q">
+<title>Questions</title>
+<para>A simple example of a question:
+<screen>
+x = 6
+if x &gt; 5 [
+ print "hello"
+]
+</screen>
+
+In this example the question is the <userinput>x &gt; 5</userinput> part. If the answer to this question is 'true' the code between the brackets will be executed. Questions are an important part of programming and often used together with <link linkend="controlling-execution">execution controllers</link>, like <link linkend="if"><userinput>if</userinput></link>. All numbers and <link linkend="variables">variables</link> (number containers) can be compared to each other with questions.</para>
+<para>
+Here are all possible questions:
+<table>
+<title>Types of questions</title>
+<tgroup cols="3">
+<tbody>
+<row>
+<entry><userinput>a == b</userinput></entry>
+<entry>equals</entry>
+<entry>answer is <quote>true</quote> if <userinput>a</userinput> equals <userinput>b</userinput></entry>
+</row>
+<row>
+<entry><userinput>a != b</userinput></entry>
+<entry>not-equal</entry>
+<entry>answer is <quote>true</quote> if <userinput>a</userinput> does not equal <userinput>b</userinput></entry>
+</row>
+<row>
+<entry><userinput>a &gt; b</userinput></entry>
+<entry>greater than</entry>
+<entry>answer is <quote>true</quote> if <userinput>a</userinput> is greater than <userinput>b</userinput></entry>
+</row>
+<row>
+<entry><userinput>a &lt; b</userinput></entry>
+<entry>smaller than</entry>
+<entry>answer is <quote>true</quote> if <userinput>a</userinput> is smaller than <userinput>b</userinput></entry>
+</row>
+<row>
+<entry><userinput>a &gt;= b</userinput></entry>
+<entry>greater than or equals</entry>
+<entry>answer is <quote>true</quote> if <userinput>a</userinput> is greater than or equals <userinput>b</userinput></entry>
+</row>
+<row>
+<entry><userinput>a &lt;= b</userinput></entry>
+<entry>smaller than or equals</entry>
+<entry>answer is <quote>true</quote> if <userinput>a</userinput> is smaller than or equals <userinput>b</userinput></entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+</para>
+<para>Questions are <glossterm>highlighted</glossterm> with light blue in the <link linkend="the-code-editor">code editor</link>.</para>
+</sect2>
+
+<sect2 id="question-glue">
+<title>Question Glue</title>
+<para>
+Question glue-words enable us to glue questions into one big question.
+<screen>
+a = 1
+b = 5
+if (a &lt; 5) and (b == 5) [
+ print "hello"
+]
+</screen>
+In this example the glue-word <userinput>and</userinput> is used to glue 2 questions (<userinput>a &lt; 5</userinput>, <userinput>b == 5</userinput>) together. If one side of the <userinput>and</userinput> would answer <quote>false</quote> the whole question would answer <quote>false</quote>, because with the glue-word <userinput>and</userinput> both sides need to be <quote>true</quote> in order to answer <quote>true</quote>. Please do not forget to use the brackets around the questions!</para>
+
+<para>
+Here is a schematic overview; a more detailed explanation follows below:
+<table>
+<title>Question glue-words</title>
+<tgroup cols="2">
+<tbody>
+<row>
+<entry><userinput>and</userinput></entry>
+<entry>Both sides need to be 'true' in order to answer 'true'</entry>
+</row>
+<row>
+<entry><userinput>or</userinput></entry>
+<entry>If one of the sides is 'true' the answer is 'true'</entry>
+</row>
+<row>
+<entry><userinput>not</userinput></entry>
+<entry>Special case: only works on one question! Changes 'true' into 'false' and 'false' into 'true'.</entry>
+</row>
+</tbody>
+</tgroup>
+</table>
+</para>
+<para>Question glue-words are <glossterm>highlighted</glossterm> with purple in the <link linkend="the-code-editor">code editor</link>.</para>
+
+<sect3 id="and">
+<title>and</title>
+<para>When two questions are glued together with <userinput>and</userinput>, both sides of the <userinput>and</userinput> have to be 'true' in order to result in 'true'. An example:
+<screen>
+a = 1
+b = 5
+if ((a &lt; 10) and (b == 5)) and (a &lt; b) [
+ print "hello"
+]
+</screen>
+In this example you see a glued question glued onto an other question.</para>
+</sect3>
+
+<sect3 id="or">
+<title>or</title>
+<para>If one of the two questions that are glued together with <userinput>or</userinput> is 'true' the result will be 'true'. An example:
+<screen>
+a = 1
+b = 5
+if ((a &lt; 10) or (b == 10)) or (a == 0) [
+ print "hello"
+]
+</screen>
+In this example you see a glued question glued onto an other question.</para>
+</sect3>
+
+<sect3 id="not">
+<title>not</title>
+<para><userinput>not</userinput> is a special question glue-word because it only works for one question at the time. <userinput>not</userinput> changes 'true' into 'false' and 'false' into 'true'. An example:
+<screen>
+a = 1
+b = 5
+if not ((a &lt; 10) and (b == 5)) [
+ print "hello"
+]
+else
+[
+ print "not hello ;-)"
+]
+</screen>
+In this example the glued question is 'true' yet the <userinput>not</userinput> changes it to 'false'. So in the end <userinput>"not hello ;-)"</userinput> is printed on the <link linkend="the-canvas">canvas</link>.</para>
+</sect3>
+
+</sect2>
+
+</sect1>
+
+<sect1 id="controlling-execution">
+<title>Controlling execution</title>
+<para>The execution controllers enable you &mdash; as their name implies &mdash; to control execution.</para>
+<para>Execution controlling commands are <glossterm>highlighted</glossterm> with dark green in a bold font type. The square brackets are mostly used together with execution controllers and they are <glossterm>highlighted</glossterm> with light green.</para>
+
+<sect2 id="wait">
+<title>Have the turtle wait</title>
+<para>If you have done some programming in &kturtle; you have might noticed that the turtle can be very quick at drawing. This command makes the turtle wait for a given amount of time.</para>
+ <variablelist>
+ <varlistentry>
+ <term>wait</term>
+ <listitem><para><screen>wait X</screen>
+ <userinput>wait</userinput> makes the turtle wait for X seconds.
+<screen>
+repeat 36 [
+ forward 5
+ turnright 10
+ wait 0.5
+]
+</screen>
+ This code draws a circle, but the turtle will wait half a second
+ after each step. This gives the impression of a slow-moving turtle.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="if">
+<title>Execute "if"</title>
+ <variablelist>
+ <varlistentry>
+ <term>if</term>
+ <listitem><para><screen>if <link linkend="questions">question</link> [ ... ]</screen>
+ The code that is placed between the brackets will only be executed <userinput>if</userinput> the answer to the <link linkend="questions">question</link> is <quote>true</quote>. Please read for more information on <link linkend="questions">questions</link> in the <link linkend="questions">question section</link>.
+ <screen>
+x = 6
+if x &gt; 5 [
+ print "x is greater than five!"
+]
+</screen>
+ On the first line <userinput>x</userinput> is set to 6. On the second line the <link linkend="questions">question</link> <userinput>x &gt; 5</userinput> is asked. Since the answer to this question is <quote>true</quote> the execution controller <userinput>if</userinput> will allow the code between the brackets to be executed</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="while">
+<title>The "while" loop</title>
+ <variablelist>
+ <varlistentry>
+ <term>while</term>
+ <listitem><para><screen>while <link linkend="questions">question</link> [ ... ]</screen>
+ The execution controller <userinput>while</userinput> is a lot like <link linkend="if"><userinput>if</userinput></link>. The difference is that <userinput>while</userinput> keeps repeating (looping) the code between the brackets until the answer to the <link linkend="questions">question</link> is <quote>false</quote>.
+ <screen>
+x = 1
+while x &lt; 5 [
+ forward 10
+ wait 1
+ x = x + 1
+]
+</screen>
+ On the first line <userinput>x</userinput> is set to 1. On the second line the <link linkend="questions">question</link> <userinput>x &lt; 5</userinput> is asked. Since the answer to this question is <quote>true</quote> the execution controller <userinput>while</userinput> starts executing the code between the brackets until the answer to the <link linkend="questions">question</link> is <quote>false</quote>. In this case the code between the brackets will be executed 4 times, because every time the fifth line is executed <userinput>x</userinput> increases by 1.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="else">
+<title>If not, in other words: "else"</title>
+ <variablelist>
+ <varlistentry>
+ <term>else</term>
+ <listitem><para><screen>if question [ ... ] else [ ... ]</screen>
+ <userinput>else</userinput> can be used in addition to the execution controller <link linkend="if"><userinput>if</userinput></link>. The code between the brackets after <userinput>else</userinput> is only executed if the answer to the <link linkend="questions">question</link> that is asked is <quote>false</quote>.
+ <screen>
+reset
+x = 4
+if x &gt; 5 [
+ print "x is greater than five!"
+]
+else
+[
+ print "x is smaller than six!"
+]
+</screen>
+ The <link linkend="questions">question</link> asks if <userinput>x</userinput> is greater than 5. Since <userinput>x</userinput> is set to 4 on the first line the answer to the question is <quote>false</quote>. This means the code between the brackets after <userinput>else</userinput> gets executed.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="for">
+<title>The "for" loop, a counting loop</title>
+ <variablelist>
+ <varlistentry>
+ <term>for</term>
+ <listitem><para><screen>for <userinput>start point</userinput> to <userinput>end point</userinput> [ ... ]</screen>
+ The <userinput>for</userinput> loop is a <quote>counting loop</quote>, &ie; it keeps count for you.
+ <screen>
+for x = 1 to 10 [
+ print x * 7
+ forward 15
+]
+</screen>
+ Every time the code between the brackets is executed the <userinput>x</userinput> is increased by 1, until <userinput>x</userinput> reaches the value of 10. The code between the brackets prints the <userinput>x</userinput> multiplied by 7. After this program finishes its execution you will see the times table of 7 on the canvas.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+</sect1>
+
+
+<sect1 id="learn">
+<title>Create your own commands with <quote>learn</quote></title>
+<para><userinput>learn</userinput> is a very special command, because it is used to create your own commands. The command you create can take <glossterm linkend="input-output">input</glossterm> and return <glossterm linkend="input-output">output</glossterm>. Let us take a look at how a new command is created:
+<screen>
+learn circle x [
+ repeat 36 [
+ forward x
+ turnleft 10
+ ]
+]
+</screen>
+The new command is called <userinput>circle</userinput>. <userinput>circle</userinput> takes one <glossterm linkend="input-output">input</glossterm>, a number, to set the size of the circle. <userinput>circle</userinput> returns no <glossterm linkend="input-output">output</glossterm>. The <userinput>circle</userinput> command can now be used like a normal command in the rest of the code. See this example:
+<screen>
+learn circle X [
+ repeat 36 [
+ forward X
+ turnleft 10
+ ]
+]
+
+go 30,30
+circle 20
+
+go 40,40
+circle 50
+</screen>
+</para>
+<para>In the next example, a command with a return value is created.
+<screen>
+reset
+
+learn multiplyBySelf n [
+ r = n * 1
+ r = n * n
+ return r
+]
+i = inputwindow "Please enter a number and press OK"
+print i + " multiplied by itself is: " + multiplyBySelf i
+</screen>
+In this example a new command called <userinput>multiplyBySelf</userinput> is created. The input of this command is multiplied by itself and then returned, using the <anchor id="return" /><userinput>return</userinput> command. The <userinput>return</userinput> command is the way to output a value from a function you have created.
+</para>
+</sect1>
+
+</chapter>
diff --git a/doc/kturtle/translator-guide.docbook b/doc/kturtle/translator-guide.docbook
new file mode 100644
index 00000000..4a257998
--- /dev/null
+++ b/doc/kturtle/translator-guide.docbook
@@ -0,0 +1,128 @@
+<chapter id="translators">
+<title>Translator's Guide to &kturtle;</title>
+<para>As you probably already know, the unique feature of the &logo; programming language is that the &logo; commands are often translated to language of the programmer. This takes away a barrier for some learners to understand the basics of programming.
+When translating &kturtle; to a new language some more files have to be translated in addition to the usual strings and documentation. Yet most it is autogenerated by Rafael Beccar's scripts. These scripts can be found in <userinput>kdeedu/kturtle/scripts</userinput>, the files that needs translation can be found in <userinput>kdeedu/kturtle/data</userinput>, in those directories you also find README files which contains instructions for using/translating them.
+</para>
+<para>
+
+</para>
+<sect1 id="make_directory">
+<title>Creating a Directory to hold the Translated Files</title>
+<para>
+First, you need to create a directory to store the translated files.
+
+Create a directory called
+
+<filename class="directory">kde-i18n/<replaceable>code</replaceable>/data/kdeedu/kturtle/</filename>
+
+in your KDE CVS directory, where <replaceable>code</replaceable> is your country code (the 2- or 4- letter <acronym>ISO</acronym> code).
+</para>
+<para>
+Copy the <filename>Makefile.am</filename> file from <filename class="directory">kdeedu/kturtle/data/</filename> into this directory. Open it using your favorite text editor, replace all instances of <quote>en_US</quote> in the file with your country code (the one used above), and save the file.
+</para>
+</sect1>
+<sect1 id="commands_trans">
+<title>How To Translate the &logo; Keywords (commands)</title>
+<para>
+<itemizedlist>
+<listitem><para>
+Copy the <filename>logokeywords.en_US.xml</filename> file from <filename class="directory">kdeedu/kturtle/data/</filename> to the directory you have just created, and rename it to <filename>logokeywords.<replaceable>code</replaceable>.xml</filename>
+where <replaceable>code</replaceable> is your country code (the 2- or 4- letter <acronym>ISO</acronym> code).
+</para>
+</listitem>
+<listitem><para>Translate the contents of the <sgmltag class="starttag">keyword</sgmltag> tag (&ie;
+the information between <sgmltag class="starttag">keyword</sgmltag>
+and <sgmltag class="endtag">keyword</sgmltag>) into your own language
+wherever possible. Also, translate the contents of the <sgmltag class="starttag">alias</sgmltag> tag, (&ie; the information between the <sgmltag class="starttag">alias</sgmltag> and <sgmltag class="endtag">alias</sgmltag>): these are used as shortcuts for the keyword.</para>
+<para>
+For example, translate <quote>while</quote> in: <sgmltag class="starttag">keyword</sgmltag>while<sgmltag class="endtag">keyword</sgmltag>
+</para>
+<para>
+Please do not translate anything else and do not translate the English words in <sgmltag class="starttag">command name="english_word"</sgmltag>: these must stay in English.
+</para>
+<para>
+Last bit: do not change the order of this file, this is needed for Rafael Beccar's automatic translation generation scripts.
+</para>
+</listitem>
+<listitem><para>Save your file as <acronym>UTF-8</acronym> (in &kate;, use <guimenuitem>Save As...</guimenuitem> and change to <guilabel>utf8</guilabel> in the box on the right of the file name).
+</para>
+</listitem>
+<listitem><para>Commit your file (add your filename in the <filename>Makefile.am</filename>) or send it to Anne-Marie.
+</para>
+</listitem>
+<listitem><para>In case of any doubt, please contact Anne-Marie Mahfouf <email>annemarie.mahfouf@free.fr</email> for more information.</para>
+</listitem>
+</itemizedlist>
+</para>
+</sect1>
+
+<sect1 id="examples_syntax">
+<title>How To Translate the Syntax Highlighting Files</title>
+<para>
+Translating the <filename>logohighlightstyle.en_US.xml</filename> is a breeze when using Rafael Beccar's script in <filename class="directory">kdeedu/kturtle/data/</filename>. Please make sure to read the README file in that directory.
+</para>
+<para>
+For backward compatibility with all people who do not want to the perl scripted blessing mentioned in the previous paragraph, here the old fashioned way of doing it:
+<itemizedlist>
+<listitem><para>Copy the <filename>logohighlightstyle.en_US.xml</filename> file from <filename class="directory">kdeedu/kturtle/data/</filename> to the directory you created to store the translated keywords file, and rename it to <filename>logohighlightstyle.<replaceable>code</replaceable>.xml</filename>
+where <replaceable>code</replaceable> is your country code (the 2- or 4- letter <acronym>ISO</acronym> code).
+</para>
+</listitem>
+<listitem><para>In line 4 of the file, there is
+<sgmltag class="starttag">language name="en_US"</sgmltag>...: here you change <quote>en_US</quote> to your language's <acronym>ISO</acronym> code (2 or 4 letters).
+</para></listitem>
+<listitem><para>Translate into your own language the content of the <sgmltag class="starttag">item</sgmltag> tag (&ie; the information between <sgmltag class="starttag">item</sgmltag> and <sgmltag class="endtag">item</sgmltag>). This content must match the <filename>logokeyword</filename> file.
+For example, translate <quote>while</quote> in: <sgmltag class="starttag">item</sgmltag> while <sgmltag class="endtag">item</sgmltag> and leave the spaces as they are (one at the beginning and one at the end).
+Please do not translate anything else.
+</para></listitem>
+<listitem><para>Save your file as <acronym>UTF-8</acronym> (in &kate;, use <guimenuitem>Save As...</guimenuitem> and change to <guilabel>utf8</guilabel> in the box on the right of the file name).
+</para></listitem>
+<listitem><para>Commit your file (add your filename in the <filename>Makefile.am</filename>) or send it to Anne-Marie.
+</para></listitem>
+<listitem><para>In case of any doubt, please contact Anne-Marie Mahfouf <email>annemarie.mahfouf@free.fr</email> for more information.
+</para></listitem>
+</itemizedlist>
+</para>
+</sect1>
+
+<sect1 id="examples_trans">
+<title>How To Translate the Examples</title>
+<para>
+Again this task is simplified a lot by Rafael Beccar's script in <filename class="directory">kdeedu/kturtle/data/</filename>. Please make sure to read the README file in that directory, since some work still has to be done after the example logo files are autotranslated.
+</para>
+<para>
+When you followed the instructions, given in the README file that you found in the scripts directory, you should now be almost ready. Please do not forget to test the translated example logo code you created, since it is very common that an error sneaks in. Also make sure the <userinput>Makefile.am</userinput> in <filename class="directory">kde-i18n/<replaceable>code</replaceable>/data/kdeedu/kturtle/</filename> is updated according to the new files. For the Dutch the <userinput>Makefile.am</userinput> should look like this:
+<screen>
+txt_DATA = advertentie.logo driehoeken.logo krullen.logo tafels.logo \
+bloem.logo driehoek.logo logohighlightstyle.nl.xml pijl.logo vierkanten.logo \
+kleuren.logo logokeywords.nl.xml randomnaam.logo vierkant.logo
+txtdir = $(kde_datadir)/kturtle/examples/nl
+
+xml_DATA = logohighlightstyle.nl.xml
+xmldir = $(kde_datadir)/katepart/syntax
+
+keywords_DATA = logokeywords.nl.xml
+keywordsdir = $(kde_datadir)/kturtle/data
+EXTRA_DIST = $(txt_DATA) $(xml_DATA) $(keywords_DATA)
+</screen>
+</para>
+<para>
+Here a description of how to do the translation WITHOUT the use of Rafael's perl scripts:
+<itemizedlist>
+<listitem><para>Copy the English example files from <filename class="directory">kdeedu/kturtle/data/</filename> to the directory used to store the translated keyword and hilighting files. Translate the filenames of the examples in your directory: this will allow users to easily and quickly understand what the example is about.</para>
+</listitem>
+<listitem><para>Translate the keywords in the examples, using those in the <filename>logokeywords.xml</filename> for your language. The keywords file file must be done, first, before translating the examples.</para>
+</listitem>
+<listitem><para>Save your file as <acronym>UTF-8</acronym> (in &kate;, use <guimenuitem>Save As...</guimenuitem> and change to <guilabel>utf8</guilabel> in the box on the right of the file name)</para>
+</listitem>
+<listitem><para>Commit your folder (add a <filename>Makefile.am</filename> inside) or send it to Anne-Marie.</para>
+</listitem>
+<listitem><para>In case of any doubt, please contact Anne-Marie Mahfouf, <email>annemarie.mahfouf@free.fr</email> for more information.</para>
+</listitem>
+<listitem><para>Finally, if you want, you can add your own examples in this folder.</para>
+</listitem>
+</itemizedlist>
+</para>
+</sect1>
+
+</chapter>
diff --git a/doc/kturtle/using-kturtle.docbook b/doc/kturtle/using-kturtle.docbook
new file mode 100644
index 00000000..2fb49547
--- /dev/null
+++ b/doc/kturtle/using-kturtle.docbook
@@ -0,0 +1,590 @@
+<!--Dear translator: please NEVER translate the id or anything inside the tags as they are needed in english by the application
+ Thanks a lot in advance.-->
+<chapter id="using-kturtle">
+<title>Using &kturtle;</title>
+
+<screenshot>
+ <screeninfo>Here is a screenshot of &kturtle; in action</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="mainwindow_flower_nrs.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>&kturtle; Main Window</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>The main window of &kturtle; has two main parts: <link linkend="the-code-editor">the code editor</link> (3) on the left where you type the &logo; commands, and <link linkend="the-canvas">the canvas</link> (4) on the right where the instructions are visualized. <link linkend="the-canvas">The canvas</link> is the turtle's playground: it is on the canvas that the turtle actually moves and draws. The three other places on the main window are: <link linkend="the-menubar">the menu bar</link> (1) from where all the actions can be reached, <link linkend="the-toolbar">the toolbar</link> (2) that allows you to quickly select the most used actions, and <link linkend="the-statusbar">the statusbar</link> (5) where you will find feedback on the state of &kturtle;.</para>
+
+<sect1 id="the-code-editor">
+<title>The Code Editor</title>
+<para>In the code editor you type the &logo; commands. It has all of the features you would expect from a modern editor. Most of its features are found in the <link linkend="the-edit-menu">Edit</link> and the <link linkend="the-tools-menu">Tools</link> menus. The code editor can be docked on each border of the main window or it can be detached and placed anywhere on your desktop.</para>
+<para>
+You have several ways to get some code in the editor. The easiest way is to use an already-made example: choose <menuchoice><guimenu>File</guimenu><guimenuitem>Open Examples</guimenuitem>
+</menuchoice> in the <link linkend="the-file-menu">File menu</link> and click on a file. The filename will tell you what the example is about (&eg; <filename>square.logo</filename> will draw a square). The file you choose will be opened in the <link linkend="the-code-editor">the code editor</link>, you can then use <menuchoice><guimenu>File</guimenu><guimenuitem>Execute Commands</guimenuitem>
+</menuchoice> to run the code if you like.</para>
+<para>You can open &logo; files by choosing <menuchoice><guimenu>File</guimenu><guimenuitem>Open...</guimenuitem>
+</menuchoice>.</para>
+<para>The third way is to directly type your own code in the editor or to copy/paste some code from this user guide.
+</para>
+<para>
+The cursor position is indicated in <link linkend="the-statusbar">the statusbar</link>, on the right with the Line number and Column number.
+</para>
+</sect1>
+
+<sect1 id="the-canvas">
+<title>The Canvas</title>
+<para>
+The canvas is the area where the commands are visualized, where the commands <quote>draw</quote> a picture. In other words, it is the turtle's playground. After getting some code in the <link linkend="the-code-editor">the code editor</link>, and executing it using <menuchoice><guimenu>File</guimenu><guimenuitem>Execute Commands</guimenuitem>
+</menuchoice>, two things can happen: either the code executes fine, and will you most likely see something change on the canvas; or you have made an error in your code and there will be a message telling you what error you made.</para>
+<para>This message should help you to resolve the error.</para>
+<para>The picture that is drawn can be saved as an image (using <menuchoice><guimenu>File</guimenu><guimenuitem>Save Canvas</guimenuitem>
+</menuchoice>) or printed (using <menuchoice><guimenu>File</guimenu><guimenuitem>Print...</guimenuitem>
+</menuchoice>).</para>
+</sect1>
+
+<sect1 id="the-menubar">
+<title>The Menubar</title>
+<para>In the menubar you find all the actions of &kturtle;. They are in the following groups: <guimenu>File</guimenu>, <guimenu>Edit</guimenu>, <guimenu>View</guimenu>, <guimenu>Tools</guimenu>, <guimenu>Settings</guimenu>, and <guimenu>Help</guimenu>. This section describes them all.</para>
+
+<sect2 id="the-file-menu">
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<sect3 id="file-new">
+<title>New</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>N</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>New</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Creates a new, empty &logo; file.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-open">
+<title>Open</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>O</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Open...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Opens a &logo; file.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-open-recent">
+<title>Open Recent</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>File</guimenu>
+ <guimenuitem>Open Recent</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Opens a &logo; file that has been opened recently.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-open-examples">
+<title>Open Examples</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>E</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Open Examples</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Show the folder with examples &logo; programs. The examples should be in your favorite language that you can choose in <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kturtle;...</guimenuitem>
+</menuchoice>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-save">
+<title>Save</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>S</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Save</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Saves the currently opened &logo; file.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-save-as">
+<title>Save As</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>File</guimenu>
+ <guimenuitem>Save As...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Saves the currently opened &logo; file on a specified location.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-save-canvas">
+<title>Save Canvas</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>File</guimenu>
+ <guimenuitem>Save Canvas</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Saves the current drawing on canvas into an image.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-speed">
+<title>Execution Speed</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>File</guimenu>
+ <guimenuitem>Execution Speed</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Present a list of possible execution speeds, consisting of: Full Speed, Slow, Slower and Slowest. When the execution speed is set to 'Full Speed' (default) we can barely keep up with what is happening. Sometimes this behavior is wanted, but sometimes we want to keep track of the execution. In the latter case you want to set the execution speed to 'Slow', 'Slower' or 'Slowest'. When one of the slow modes is selected the current position of the executor will be shown in the editor.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-execute">
+<title>Execute</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Alt;<keysym>Return</keysym></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Execute Commands</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Starts the execution of the commands in the code editor.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-pause">
+<title>Pause</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo><keysym>Pause</keysym></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Pause Execution</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Pauses the execution. This action is only enabled when the commands are actually executing.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-stop">
+<title>Stop</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo><keysym>Escape</keysym></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Stop Execution</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Stops the execution. This action is only enabled when the commands are actually executing.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-print">
+<title>Print</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>P</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Print...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Prints either the current code in the editor or the current drawing on the canvas.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+<sect3 id="file-quit">
+<title>Quit</title>
+ <variablelist>
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>Q</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Quit</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Quits &kturtle;.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect3>
+</sect2>
+
+<sect2 id="the-edit-menu">
+ <title>The <guimenu>Edit</guimenu> Menu</title>
+ <variablelist>
+ <anchor id="edit-undo" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Undo</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Undoes the last change to code. &kturtle; has unlimited undos.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="edit-redo" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;&Shift;<keycap>Z</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Redo</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Redoes an undone change to the code.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="edit-cut" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>X</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Cut</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Cuts the selected text from the code editor to the clipboard.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="edit-copy" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>C</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Copy</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Copies the selected text from the code editor to the clipboard.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="edit-paste" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>V</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Paste</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Pastes the text from the clipboard to the editor.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="edit-find" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>F</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Find...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>With this action you can find phrases in the code.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="edit-find-next" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo><keysym>F3</keysym></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Find Next</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Use this to find the next occurrence of the phrase.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="edit-replace" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>R</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Replace...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>With this action you can replace phrases in the code.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="the-view-menu">
+ <title>The <guimenu>View</guimenu> Menu</title>
+ <variablelist>
+ <anchor id="view-fullscreen" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;&Shift;<keycap>F</keycap></keycombo>
+ </shortcut>
+ <guimenu>View</guimenu>
+ <guimenuitem>Full Screen Mode</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>With this action you toggle the full screen mode.</para>
+ <para>Note: When code is executed while in full screen mode everything but the canvas is hidden. This makes it possible to write <quote>full screen</quote> programs in &kturtle;.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="view-linenumbers" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo><keysym>F11</keysym></keycombo>
+ </shortcut>
+ <guimenu>View</guimenu>
+ <guimenuitem>Show Line Numbers</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>With this action you can show the line numbers in the code editor. This can be handy for finding errors.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="the-tools-menu">
+ <title>The <guimenu>Tools</guimenu> Menu</title>
+ <variablelist>
+ <anchor id="tools-color-picker" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Alt;<keycap>C</keycap></keycombo>
+ </shortcut>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Color Picker</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This action opens the color picker. Using the color picker you can easily select a <glossterm linkend="rgb">color code</glossterm> and insert it in <link linkend="the-code-editor">the code editor</link>.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="tools-indent" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>I</keycap></keycombo>
+ </shortcut>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Indent</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This action <quote>indents</quote> (adds white space at the beginning of) the lines that are selected. When <quote>indentation</quote> is used properly this can make code much easier to read. All examples use indentation, please check them out.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="tools-unindent" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;&Shift;<keycap>I</keycap></keycombo>
+ </shortcut>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Unindent</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This action <quote>unindents</quote> (removes the white space at the beginning of) the lines that are selected.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="tools-clean-indent" />
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Clean Indentation</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This action cleans <quote>indentation</quote> (removes all the white space at the beginning of) the lines that are selected.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="tools-comment" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;<keycap>D</keycap></keycombo>
+ </shortcut>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Comment</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This action add comment characters (#) in from of the lines that are selected. Lines that start with a comment character are ignored when the code is executed. Comments allow the programmer to explain a bit about his code or they can be used to temporarily prevent a certain piece of code from being executed.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="tools-uncomment" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Ctrl;&Shift;<keycap>D</keycap></keycombo>
+ </shortcut>
+ <guimenu>Tools</guimenu>
+ <guimenuitem>Uncomment</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This action removes the comment characters from the selected lines.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+<sect2 id="the-setting-menu">
+ <title>The <guimenu>Settings</guimenu> Menu</title>
+ <variablelist>
+ <anchor id="toggle-toolbar" />
+ <varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show/Hide Toolbar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the Main Toolbar</para></listitem>
+</varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="toggle-statusbar" />
+ <varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show/Hide Statusbar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Toggle</action> the Statusbar</para></listitem>
+</varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="tools-advanced" />
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Settings</guimenu>
+ <guisubmenu>Advanced Settings</guisubmenu>
+ </menuchoice></term>
+ <listitem><para>Here you can change things you normally do not need to change. The <guisubmenu>Advanced Settings</guisubmenu> submenu has three items: <guimenuitem>Configure Editor...</guimenuitem> (the standard &kate; editor settings dialog), <guimenuitem>Configure Shortcuts...</guimenuitem> (the standard &kde; shortcut settings dialog), and <guimenuitem>Configure Toolbars...</guimenuitem> (the standard &kde; toolbars setting dialog).</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="settings-configure" />
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure &kturtle;...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This is used to configure &kturtle;. Here you can change the language of the &logo; commands or set a new initial canvas size.</para></listitem>
+ </varlistentry>
+ </variablelist>
+
+</sect2>
+
+<sect2 id="the-help-menu">
+ <title>The <guimenu>Help</guimenu> Menu</title>
+ <variablelist>
+ <anchor id="help-handbook" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo><keysym>F1</keysym></keycombo>
+ </shortcut>
+ <guimenu>Help</guimenu>
+ <guimenuitem>&kturtle; Handbook</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This action shows the handbook that you are currently reading.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="help-whats-this" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo>&Shift;<keysym>F1</keysym></keycombo>
+ </shortcut>
+ <guimenu>Help</guimenu>
+ <guimenuitem>What's This?</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>After activating this action the mouse arrow will be changed into a <quote>question mark arrow</quote>. When this arrow is used to click on parts of &kturtle; main window, a description of the particular part pops-up.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="help-context-help" />
+ <varlistentry>
+ <term><menuchoice>
+ <shortcut>
+ <keycombo><keysym>F2</keysym></keycombo>
+ </shortcut>
+ <guimenu>Help</guimenu>
+ <guimenuitem>Help on: ...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>This is a very useful function: it provides help on the code where the cursor in the code editor is at. So, &eg;, you have used the <userinput>print</userinput> command in your code, and you want to read and to know what the handbook says on this command. You just move your cursor so it is in the <userinput>print</userinput> command and you press <keysym>F2</keysym>. The handbook will then show all info on the <userinput>print</userinput> command.</para>
+ <para>This function is very important while learning programming.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="help-report-bug" />
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Help</guimenu>
+ <guimenuitem>Report Bug...</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Use this to report a problem with &kturtle; to the developers. These reports can be used to make future versions of &kturtle; even better.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="help-about-kturtle" />
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Help</guimenu>
+ <guimenuitem>About &kturtle;</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Here you find information on &kturtle;, like the authors and the license it comes with.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <anchor id="help-about-kde" />
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Help</guimenu>
+ <guimenuitem>About &kde;</guimenuitem>
+ </menuchoice></term>
+ <listitem><para>Here you can find information on &kde;. If you do not know yet what &kde; is, this is a place you should not miss.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</sect2>
+
+</sect1>
+
+<sect1 id="the-toolbar">
+<title>The Toolbar</title>
+<para>Here you can quickly reach the most used actions. By default, you will find here all main useful commands ending with the <guiicon>Execute Commands</guiicon> and <guiicon>Stop Execution</guiicon> icons.</para>
+<para>You can configure the toolbar using <menuchoice><guimenu>Settings</guimenu><guimenuitem>Advanced Settings</guimenuitem><guimenuitem>Configure Toolbars...</guimenuitem></menuchoice></para>
+</sect1>
+
+<sect1 id="the-statusbar">
+<title>The Statusbar</title>
+<para>On the status bar you get feedback of the state of &kturtle;. On the left side it shows the feedback on the last action. On the right side you find the current location of the cursor (line and column numbers). In the middle of the Status bar is indicated the current language used for the commands.</para>
+</sect1>
+
+</chapter>
diff --git a/doc/kturtle/wrapping.png b/doc/kturtle/wrapping.png
new file mode 100644
index 00000000..55aa4069
--- /dev/null
+++ b/doc/kturtle/wrapping.png
Binary files differ
diff --git a/doc/kverbos/Makefile.am b/doc/kverbos/Makefile.am
new file mode 100644
index 00000000..085981d9
--- /dev/null
+++ b/doc/kverbos/Makefile.am
@@ -0,0 +1,4 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+
diff --git a/doc/kverbos/anterior.png b/doc/kverbos/anterior.png
new file mode 100644
index 00000000..f1945f54
--- /dev/null
+++ b/doc/kverbos/anterior.png
Binary files differ
diff --git a/doc/kverbos/borrar.png b/doc/kverbos/borrar.png
new file mode 100644
index 00000000..373b87bd
--- /dev/null
+++ b/doc/kverbos/borrar.png
Binary files differ
diff --git a/doc/kverbos/cancelar.png b/doc/kverbos/cancelar.png
new file mode 100644
index 00000000..fc3d71bd
--- /dev/null
+++ b/doc/kverbos/cancelar.png
Binary files differ
diff --git a/doc/kverbos/cerrar.png b/doc/kverbos/cerrar.png
new file mode 100644
index 00000000..af4eda1f
--- /dev/null
+++ b/doc/kverbos/cerrar.png
Binary files differ
diff --git a/doc/kverbos/continuar.png b/doc/kverbos/continuar.png
new file mode 100644
index 00000000..0316cb7c
--- /dev/null
+++ b/doc/kverbos/continuar.png
Binary files differ
diff --git a/doc/kverbos/corregir.png b/doc/kverbos/corregir.png
new file mode 100644
index 00000000..5d1a89b4
--- /dev/null
+++ b/doc/kverbos/corregir.png
Binary files differ
diff --git a/doc/kverbos/editar.png b/doc/kverbos/editar.png
new file mode 100644
index 00000000..15b5c54e
--- /dev/null
+++ b/doc/kverbos/editar.png
Binary files differ
diff --git a/doc/kverbos/index.docbook b/doc/kverbos/index.docbook
new file mode 100644
index 00000000..f60e6060
--- /dev/null
+++ b/doc/kverbos/index.docbook
@@ -0,0 +1,954 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY package "kdeedu">
+ <!ENTITY kappname "&kverbos;">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kverbos; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Arnold</firstname>
+<surname>Kraschinski</surname>
+<affiliation>
+<address><email>&Arnold.Kraschinski.mail;</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>2001</year>
+<year>2002</year>
+<holder>&Arnold.Kraschinski;</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2002-05-23</date>
+<releaseinfo>3.0.8</releaseinfo>
+
+<abstract>
+<para>
+&kverbos; is an application specially designed to study Spanish verbforms.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeutils</keyword>
+<keyword>Kapp</keyword>
+<keyword>verb</keyword>
+<keyword>spanish</keyword>
+</keywordset>
+
+</bookinfo>
+
+
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<para>With &kverbos; the user can learn the forms of Spanish verbs. The
+program suggests a verb and a time and the user enters the different
+forms. The program corrects the user input an gives a feedback. The
+user can edit the list of the verbs that can be studied. The program
+can built regular verb forms by itself. Irregular verb forms have to
+be entered by the user. If a form of a verb is uncertain then the
+internet offers good sources:
+<ulink url="http://csgrs6k1.uwaterloo.ca/~dmg/lando/verbos/con-jugador.html">
+http://csgrs6k1.uwaterloo.ca/~dmg/lando/verbos/con-jugador.html</ulink>
+</para>
+
+<para>
+The most interesting feature in the recent release is the use of
+&kfeeder;. This is a separate program that
+the user has to install separately if he wants to use it. If it is
+installed then the learning progress will be shown in the &kfeeder;
+application. A dog is running around and will be fed with bones if
+you are a good learner. Otherwise he will be lying around most of the
+time.
+</para>
+</chapter>
+
+<chapter id="using-kverbos">
+<title>Using &kverbos;</title>
+
+<screenshot>
+<screeninfo>Here's a screenshot of &kverbos;</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="mainscreen-leer.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>This window can be seen when the user starts the program.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>When the user starts the program he can see this window. This is
+the main window of the application where the user can train verb
+forms. At the moment no verb file is loaded. So the program cannot
+suggest a verb. First the user has to open a file either with the menu
+<menuchoice><guimenu>File</guimenu><guimenuitem>Open</guimenuitem></menuchoice>
+or with the menubar or he has to enter some verbs with
+<menuchoice><guimenu>Edit</guimenu>
+<guimenuitem>Enter</guimenuitem></menuchoice>new verb.</para>
+
+<screenshot>
+<screeninfo>Here's a screenshot of &kverbos; with a loaded verb
+file</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="mainscreen1.png" format="PNG"/>
+</imageobject>
+<textobject>
+<phrase>Here you see the main window with a loaded verb file.</phrase>
+</textobject>
+</mediaobject>
+</screenshot>
+
+<para>Once the user has opened a file with verbs the program suggests
+one of them and a time. The user can type the solution into the textboxes.
+</para>
+
+<variablelist>
+<varlistentry>
+<term><inlinemediaobject>
+<imageobject>
+<imagedata fileref="limpiar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+<listitem><para>This button wipes out all user input.</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="corregir.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+<listitem><para>The user can test his input with this
+button. Incorrect forms will be underlined. Then the user has the
+chance to do it better and correct the forms another time. If one of
+the forms wasn't correct the verb cannot be counted as correct
+anymore. </para></listitem>
+</varlistentry>
+<varlistentry>
+ <term><inlinemediaobject>
+<imageobject>
+<imagedata fileref="solucion.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+<listitem><para>If the user wants to see the solution he can use <guiicon>show
+solution</guiicon>. Then the correct solution is displayed in the editboxes. If
+the user uses this button the verb cannot be counted as correct
+anymore.</para></listitem>
+</varlistentry>
+<varlistentry>
+<term><inlinemediaobject>
+<imageobject>
+<imagedata fileref="continuar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+<listitem>
+<para>The last button in this row can have two functions.</para>
+
+<para>If the user presses this button and the verb forms haven't been
+corrected yet the button behaves like the 'corregir' button. The verb
+forms are corrected and the user can see if his input was correct. If
+the user wants to go on he has to press the button again.</para>
+
+<para>If the button is pressed and the verbs already have been
+corrected the program goes on to the next verb. That means another
+verb is selected and presented to the user.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+
+<para>A second line of buttons <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="letters.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject>
+allows the user enter special spanish characters which probably cannot be entered by keyboard.
+</para>
+
+<para>
+In the status bar of the program the user gets information about his
+work. He can see how many verbs he has trained and how many of them
+have been correct. He can see how many verbs are stored in the opened
+file and which username has been entered, too.
+</para>
+
+<para>
+The progress bar is another feedback for the user. He can see his
+correct answers as a percentage of trained verbs.
+</para>
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="kverbos-mainwindow">
+<title>The main &kverbos; window</title>
+<para>
+<screenshot>
+<screeninfo>Here's a screenshot of &kverbos; with a loaded verb file</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="mainscreen1.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here you see the main window with a loaded verb file.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+
+<!-- The File Menu ................................................................ -->
+<sect2>
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+
+<!-- File->New -->
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>New</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Creates a new document. That means that the verbs
+ in the actual list are deleted. The number of verbs is set to 0.</action></para></listitem>
+</varlistentry>
+
+<!-- File->Open -->
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Open</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens a verb file.</action> The file dialog opens and
+the user can select one of the verb files. The user has to make sure,
+that it is a verb file. There isn't a default verb file that comes
+with the program. The user has to enter his own verbs or he has to
+download a verb file from the &kverbos; website.</para></listitem>
+</varlistentry>
+
+<!-- File->Open Standard Verb File -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Open Standard Verb File</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens a verb file</action> that is delivered
+with &kverbos;. The user can use this file if he doesn't want to enter
+his own verbs.</para></listitem>
+</varlistentry>
+
+<!-- File->Save -->
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Save</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Saves the document.</action> The file name
+dialog opens and the user can choose a name for the verb file. If the
+file name end with <literal role="extension">.htm</literal> or
+<literal role="extension">.html</literal> the verb list is saved as a
+&HTML; file.</para></listitem>
+</varlistentry>
+
+<!-- File->Save As -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Save As</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Saves the document.</action> The file name
+dialog opens and the user can choose a name for the verb file. If the
+file name end with <literal role="extension">.htm</literal> or
+<literal role="extension">.html</literal> the verb list is saved as a
+&HTML; file.</para></listitem>
+</varlistentry>
+
+<!-- File->Close -->
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>W</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Close</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Terminates the program.</action></para></listitem>
+</varlistentry>
+
+<!-- File->New Window -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>New Window</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Starts a new instance of the program.</action></para></listitem>
+</varlistentry>
+
+<!-- File->Quit -->
+<varlistentry>
+<term><menuchoice>
+<shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+</shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Quits</action> &kverbos;</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<!-- The Edit Menu ................................................................ -->
+<sect2>
+<title>The <guimenu>Edit</guimenu> Menu</title>
+
+<variablelist>
+
+<!-- Edit->Enter new verb -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>Edit</guimenu>
+<guimenuitem>Enter new verb</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens the dialog new verbs where you can add
+new verbs to the verb list. This dialog is described in another
+chapter of this documentation. </action></para></listitem>
+</varlistentry>
+
+<!-- Edit->Edit verblist -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>Edit</guimenu>
+<guimenuitem>Edit verblist</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens a dialog with a list of all the verbs that are in the actual
+verb list. You can edit this verb list. This dialog is described in another chapter of this
+documentation.</action></para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<!-- The User Menu ................................................................ -->
+<sect2>
+<title>The <guimenu>User</guimenu> Menu</title>
+
+<variablelist>
+
+<!-- User->username -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>User</guimenu>
+<guimenuitem>username</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens a small dialog where you can enter your username.
+ </action></para></listitem>
+</varlistentry>
+
+<!-- User->results -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>User</guimenu>
+<guimenuitem>results</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens a dialog where a user can see the number of training
+ sessions he has done with the program and the latest ten results.</action></para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<!-- The settings menu -->
+<sect2>
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+
+<!-- Settings->Show toolbar -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show toolbar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>The user can decide whether he wants to see the toolbar or not.
+He can set it here.</action></para></listitem>
+</varlistentry>
+
+<!-- Settings->Show status bar -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show statusbar</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>The user can decide whether he wants to see the status bar or not.
+In the status bar are shown information like the number of trained verbs and the user name.
+</action></para></listitem>
+</varlistentry>
+
+<!-- Settings->options -->
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>options</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Opens a dialog where a user can select the times he wants to train
+and the correction mode. More details see the chapter about this dialog.
+</action></para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<!-- The Help Menu ................................................................ -->
+<sect2>
+<title>The Help Menu</title>
+
+&help.menu.documentation;
+
+</sect2>
+</sect1>
+
+<!-- ................................................................ -->
+<!-- The New Verb Dialog ............................................ -->
+<sect1 id="new-verb-dialog">
+<title>The New Verb Dialog</title>
+
+<screenshot>
+<screeninfo>Here's a screenshot of the New Verb dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="newverb.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here you can see the new verb dialog where the user can enter new verbs.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+Use this dialog if you want to make your own verb list or if you want
+to append some new verbs to an existing verb list. Here you can enter
+the infinitive of the spanish verb and its meaning in a foreign
+language. Important is, that you tell the program if it is a regular
+verb or one of the spanish group verbs or an irregular one. If it is
+irregular you have to enter the irregular forms, too. Be careful with
+this dialog and the verb forms you enter because the program uses this
+data to generate forms automatically.
+</para>
+
+<variablelist>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="input.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem><para>Some of the Edit boxes where you can enter the verb information.
+ There are similar Edit Boxes for the gerund and participle form and all the other forms
+ if needed.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="type.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem><para>With this Combo Box you select which type of verb you have entered. Do
+ this carfully because it is important information for the program to do its work properly.
+ </para>
+ <para>
+ The Spanish language knows three types of regular conjugation. These are the conjugation
+ pattern for the verbs ending on -er, -ar, and -ir. A lot of verbs are not regular in all
+ forms but they aren't completely irregular. This verbs are called group verbs and can
+ be divided in several groups. The program can generate the forms for the regular verbs
+ and the ones for the group verbs itself. It only needs the information to which group
+ the verb belongs. Other verbs are irregular and the irregular forms have to be entered.
+ Select the group in the Combo Box.
+ <variablelist>
+ <varlistentry>
+ <term>regular</term>
+ <listitem><para>Chose this if it is a completely regular verb of one of the
+ patterns -ar, -er or -ir.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>irregular</term>
+ <listitem><para>Select this if the verbs doesn't belong to one of the groups
+ described below. The Tab View will be activated and you can enter all the
+ irregular forms.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>e &gt; ie</term>
+ <listitem><para>Chose this for stem changing verbs where the e in the stem changes to ie.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>o &gt; ue</term>
+ <listitem><para>Chose this for stem changing verbs where the o in the stem changes to ue.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>u &gt; ue</term>
+ <listitem><para>Chose this for stem changing verbs where the u in the stem changes to ue.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>e &gt; i</term>
+ <listitem><para>Chose this for stem changing verbs where the e in the stem changes to i.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>c &gt; qu</term>
+ <listitem><para>A verb with orthografic irregularity. If a <quote>c</quote> comes before an <quote>e</quote>
+ the <quote>c</quote> changes to <quote>qu</quote>. Examples: colocar, atacar</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>g &gt; gu</term>
+ <listitem><para>A verb with orthografic irregularity. If a <quote>g</quote> comes before an <quote>e</quote>
+ the <quote>g</quote> changes to <quote>gu</quote>. Example: pagar</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>z &gt; c</term>
+ <listitem><para>A verb with orthografic irregularity. If a <quote>z</quote> comes before an <quote>e</quote>
+ the <quote>z</quote> changes to <quote>c</quote>. Examples: cazar, alzar</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>gu &gt; gu</term>
+ <listitem><para>A verb with orthografic irregularity. If a <quote>gu</quote> comes before an <quote>e</quote>
+ the <quote>gu</quote> changes to <quote>gu</quote>. Example: averiguar</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>c &gt; z</term>
+ <listitem><para>A verb with orthografic irregularity. If a <quote>c</quote> comes before an <quote>o</quote>
+ or <quote>a</quote> the <quote>c</quote> changes to <quote>z</quote>. Examples: vencer, zurcir</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>g &gt; j</term>
+ <listitem><para>A verb with orthografic irregularity. If a <quote>g</quote> comes before an <quote>o</quote>
+ or <quote>a</quote> the <quote>g</quote> changes to <quote>j</quote>. Examples: coger, dirigir</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>gu &gt; g</term>
+ <listitem><para>A verb with orthografic irregularity. If <quote>gu</quote> comes before an <quote>o</quote>
+ or <quote>a</quote> the <quote>gu</quote> changes to <quote>g</quote>. Example: distinguir</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>qu &gt; c</term>
+ <listitem><para>A verb with
+ orthografic irregularity. If
+ <quote>qu</quote> comes before an
+ <quote>o</quote> or <quote>a</quote>
+ the <quote>qu</quote> changes to
+ <quote>c</quote>. Example:
+ delinquir</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>accent like <quote>enviar</quote></term>
+ <listitem><para>A verb where the accent changes in some forms. Example: enviar
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>accent like <quote>continuar</quote></term>
+ <listitem><para>A verb where the accent changes in some forms. Example: continuar
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>missing i</term>
+ <listitem><para>Some verbs lose the instressed <quote>i</quote> in some forms. Examples:
+ taner, grunir, bullir</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="times.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem><para>If you enter an irregular verb the tab view will be activated and
+ you can select the tab with the irregular forms.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="limpiarpagina.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem>
+ <para>You have entered some incorrect information and want to delete them. With this
+ button you can wipe out the data in the Edit box of one single tab.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="letters.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem>
+ <para>This buttons insert the displayed spanish characters to the Edit box that has the
+ focus. Often these characters cannot be entered with the keyboard.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="limpiar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem>
+ <para>You want to wipe out all information in all Edit Boxes on all tabs. Then use this
+ button.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="anterior.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem>
+ <para>Selects the verb before the actual verb in the verb list into the dialog. You can
+ read an change the information for this verb. If the actual verb is the first one then
+ the last one is loaded into the dialog.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="siguiente.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem>
+ <para>Selects the verb behind the actual verb in the verb list into the dialog. You can
+ read an change the information for this verb. If the actual verb is the last one then the
+ first one is loaded.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="cerrar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem>
+ <para>Closes the dialog and returns to the main program or the Edit Verblist Dialog
+ depending from where the dialog was opened.
+ </para>
+ </listitem>
+ </varlistentry>
+</variablelist>
+</sect1>
+
+<!-- ................................................................ -->
+<!-- The Verblist Dialog ............................................ -->
+<sect1 id="editverblist-dialog">
+<title>The Edit Verblist Dialog</title>
+<para>
+<screenshot>
+<screeninfo>Here's a screenshot of the Edit Verblist dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="verblist.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here you can see the Edit verblist dialog where the user can edit the list
+ of the verbs.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+</para>
+<para>
+In the list view of this dialog you can see all the verbs of the opened verb file. If there
+aren't any verbs in the file or if there isn't a file open the list view will be empty.
+You can select a verb from the list and edit this verb or you select and delete one of them.
+</para>
+
+<variablelist>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="borrar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem><para>This button deletes the selected verb from the list of verbs.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="cancelar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem><para>With this button you can leave the dialog. All changes that have been
+ made until this moment will not affect the verb list of the main program. That means
+ that the list of the main program will be unchanged.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="editar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem><para>The selected verb will be edited. The new verb dialog opens and the
+ selected verb is loaded to the edit boxes. You can make your changes. If you make a
+ double click on a verb this has the same effect than this button.
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="cerrar.png" format="PNG"/>
+ </imageobject>
+ </inlinemediaobject></term>
+ <listitem>
+ <para>With this button you can close the dialog. The changes that have been made are
+ stored in the verb list of the main program.
+ </para>
+ </listitem>
+ </varlistentry>
+</variablelist>
+</sect1>
+
+<!-- ................................................................ -->
+<!-- The Username Dialog ............................................ -->
+<sect1 id="username-dialog">
+<title>The Username Dialog</title>
+
+<screenshot>
+<screeninfo>Here's a screenshot of the Username Dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="username.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here you can see the Username Dialog where the user can enter his name.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+Enter your name here. The name is set as the new username of the program. It will be
+displayed in the programs status bar. Use the
+<guibutton>OK</guibutton> Button to confirm your input. The
+<guibutton>Cancel</guibutton> button leaves the user name unchanged.
+</para>
+<para>
+The program will store some information about your learning progress. The number of training
+sessions, the result of the last ten sessions and lists with the verbs that you entered
+right or wrong recently.
+</para>
+<para>
+You can have a look at this information in the
+<menuchoice><guimenu>User</guimenu><guimenuitem>Results</guimenuitem></menuchoice>
+dialog.
+</para>
+</sect1>
+
+<!-- ................................................................ -->
+<!-- The User Result Dialog ......................................... -->
+<sect1 id="userresult-dialog">
+<title>The User Result Dialog</title>
+
+<screenshot>
+<screeninfo>Here's a screenshot of the User Result Dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="result.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here you can see the User Result Dialog where the user can see his results.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+In this dialog you can see the information that the program stores about you under
+your username. On the left you can see the results of the latest ten sessions and on the
+right are lists with the word that you entered right or wrong recently. A verb remains in the
+list of the right verbs for some time then it changes to the status unlearned again. The
+verbs that are in the wrong list will appear more frequently. They stay in the list until
+you enter them correctly. Then they will return to the list of the unlearned verbs.
+</para>
+</sect1>
+
+<!-- ................................................................ -->
+<!-- The Settings Options Dialog .................................... -->
+<sect1 id="settingsoptions-dialog">
+<title>The Settings Options Dialog</title>
+
+<screenshot>
+<screeninfo>Here's a screenshot of the Settings Options Dialog</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="options.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>Here you can see the Settings Options Dialog where the user can change
+ some options of the program.</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+In this dialog you can select the tenses that should be trained. So if you want to study a
+specific tense or if you haven't learned how to build the forms of a specific tense yet so
+you can select or deselect the tenses here. Your selection is stored to the properties file
+of the program.
+</para>
+<para>
+You can select a correction mode too. If you select <guilabel>correct
+strictly</guilabel> then every missing accent is regarded as an
+error. You can make it easier with <guilabel>ignore accent</guilabel>
+then a missing accent isn't an error.
+</para>
+<para>
+At last you can control the use of &kfeeder; if this application is
+installed. You can decide if the learning results will be shown with
+&kfeeder;, if the splash screen can be seen when the program is
+starting and what type of food animations are used. The last points
+needs a further explanation. &kfeeder; displays an animal that is
+running around. When you enter a correct solution your points will be
+send to &kfeeder;. The dog gets bones for each point. If you chose
+<guilabel>move food automatically</guilabel> then the bones move down
+from the ceiling and one point is one bone. Otherwise every point is
+only a move for a bone. So you will need more points until the dog can
+reach the bone. Really the option <guilabel>move food
+automatically</guilabel> is more interesting.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="developers">
+<title>Developer's Guide to &kverbos;</title>
+
+<para>
+At the moment it is not possible to program any plugins for &kverbos;.
+</para>
+
+</chapter>
+
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+&reporting.bugs;
+&updating.documentation;
+
+<para>Until now nobody had a question that could be answered here.</para>
+</chapter>
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+
+<para>
+&kverbos;
+</para>
+<para>
+Program Copyright 2002 &Arnold.Kraschinski; <email>&Arnold.Kraschinski.mail;</email>
+</para>
+<!--<para>
+Contributors:
+<itemizedlist>
+<listitem><para>-<email>-</email></para>
+</listitem>
+<listitem><para>-<email>-</email></para>
+</listitem>
+</itemizedlist>
+</para>-->
+
+<para>
+Documentation Copyright 2002 &Arnold.Kraschinski; <email>&Arnold.Kraschinski.mail;</email>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+&underFDL;
+&underGPL;
+
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kverbos">
+<title>How to obtain &kverbos;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="requirements">
+<title>Requirements</title>
+
+<para>
+In order to successfully use &kverbos;, you need &kde; 3.x.x. The program is distributed
+without a verblist file. So you have to enter the verbs yourself or you can download a
+verbfile.
+</para>
+
+<para>
+A verblist file and &kverbos; itself can be found
+on <ulink url="http://members.tripod.de/arnoldk67/computer/kverbos/kverbos.htm">
+The &kverbos; home page</ulink>.
+</para>
+
+<para>
+You can find a list of changes at <ulink
+url="http://edu.kde.org/kverbos/">http://edu.kde.org/kverbos/</ulink>.
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
diff --git a/doc/kverbos/input.png b/doc/kverbos/input.png
new file mode 100644
index 00000000..520b61c7
--- /dev/null
+++ b/doc/kverbos/input.png
Binary files differ
diff --git a/doc/kverbos/letters.png b/doc/kverbos/letters.png
new file mode 100644
index 00000000..00050749
--- /dev/null
+++ b/doc/kverbos/letters.png
Binary files differ
diff --git a/doc/kverbos/limpiar.png b/doc/kverbos/limpiar.png
new file mode 100644
index 00000000..0e459c8f
--- /dev/null
+++ b/doc/kverbos/limpiar.png
Binary files differ
diff --git a/doc/kverbos/limpiarpagina.png b/doc/kverbos/limpiarpagina.png
new file mode 100644
index 00000000..9ec55dd6
--- /dev/null
+++ b/doc/kverbos/limpiarpagina.png
Binary files differ
diff --git a/doc/kverbos/mainscreen-leer.png b/doc/kverbos/mainscreen-leer.png
new file mode 100644
index 00000000..504054b1
--- /dev/null
+++ b/doc/kverbos/mainscreen-leer.png
Binary files differ
diff --git a/doc/kverbos/mainscreen1.png b/doc/kverbos/mainscreen1.png
new file mode 100644
index 00000000..6eaf31dd
--- /dev/null
+++ b/doc/kverbos/mainscreen1.png
Binary files differ
diff --git a/doc/kverbos/newverb.png b/doc/kverbos/newverb.png
new file mode 100644
index 00000000..ffe638f8
--- /dev/null
+++ b/doc/kverbos/newverb.png
Binary files differ
diff --git a/doc/kverbos/options.png b/doc/kverbos/options.png
new file mode 100644
index 00000000..032e3a44
--- /dev/null
+++ b/doc/kverbos/options.png
Binary files differ
diff --git a/doc/kverbos/result.png b/doc/kverbos/result.png
new file mode 100644
index 00000000..1d2f8399
--- /dev/null
+++ b/doc/kverbos/result.png
Binary files differ
diff --git a/doc/kverbos/siguiente.png b/doc/kverbos/siguiente.png
new file mode 100644
index 00000000..a6c68260
--- /dev/null
+++ b/doc/kverbos/siguiente.png
Binary files differ
diff --git a/doc/kverbos/solucion.png b/doc/kverbos/solucion.png
new file mode 100644
index 00000000..780f3454
--- /dev/null
+++ b/doc/kverbos/solucion.png
Binary files differ
diff --git a/doc/kverbos/times.png b/doc/kverbos/times.png
new file mode 100644
index 00000000..5570a51e
--- /dev/null
+++ b/doc/kverbos/times.png
Binary files differ
diff --git a/doc/kverbos/type.png b/doc/kverbos/type.png
new file mode 100644
index 00000000..0f965b05
--- /dev/null
+++ b/doc/kverbos/type.png
Binary files differ
diff --git a/doc/kverbos/username.png b/doc/kverbos/username.png
new file mode 100644
index 00000000..a8928558
--- /dev/null
+++ b/doc/kverbos/username.png
Binary files differ
diff --git a/doc/kverbos/verblist.png b/doc/kverbos/verblist.png
new file mode 100644
index 00000000..280ff44d
--- /dev/null
+++ b/doc/kverbos/verblist.png
Binary files differ
diff --git a/doc/kvoctrain/Makefile.am b/doc/kvoctrain/Makefile.am
new file mode 100644
index 00000000..666bade5
--- /dev/null
+++ b/doc/kvoctrain/Makefile.am
@@ -0,0 +1,29 @@
+KDE_LANG = en
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
+
+check-local:
+ $(MEINPROC) --check index.docbook
+
+convert-local:
+ $(MEINPROC) $(srcdir)/index.docbook
+
+# needs pngcrush which reduces files size about 20%
+# brute-crush takes _very_ long time
+crush:
+ mkdir -p crushed
+ for i in *.png; do \
+ pngcrush $$i crushed/$$i;\
+ done
+ mv *.png /tmp
+ mv crushed/*.png .
+ rm -r crushed
+
+brute-crush:
+ mkdir -p crushed
+ for i in *.png; do \
+ pngcrush -brute $$i crushed/$$i;\
+ done
+ mv *.png /tmp
+ mv crushed/*.png .
+ rm -r crushed
diff --git a/doc/kvoctrain/art-query-dlg.png b/doc/kvoctrain/art-query-dlg.png
new file mode 100644
index 00000000..6ce6a993
--- /dev/null
+++ b/doc/kvoctrain/art-query-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/comp-query-dlg.png b/doc/kvoctrain/comp-query-dlg.png
new file mode 100644
index 00000000..3c4eca29
--- /dev/null
+++ b/doc/kvoctrain/comp-query-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/docprop1-dlg.png b/doc/kvoctrain/docprop1-dlg.png
new file mode 100644
index 00000000..bafb3c02
--- /dev/null
+++ b/doc/kvoctrain/docprop1-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/docprop2-dlg.png b/doc/kvoctrain/docprop2-dlg.png
new file mode 100644
index 00000000..bb0bca6c
--- /dev/null
+++ b/doc/kvoctrain/docprop2-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/docprop6-dlg.png b/doc/kvoctrain/docprop6-dlg.png
new file mode 100644
index 00000000..cc282e6d
--- /dev/null
+++ b/doc/kvoctrain/docprop6-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/entry1-dlg.png b/doc/kvoctrain/entry1-dlg.png
new file mode 100644
index 00000000..9af291bd
--- /dev/null
+++ b/doc/kvoctrain/entry1-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/entry2-dlg.png b/doc/kvoctrain/entry2-dlg.png
new file mode 100644
index 00000000..29a23e9a
--- /dev/null
+++ b/doc/kvoctrain/entry2-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/entry3-dlg.png b/doc/kvoctrain/entry3-dlg.png
new file mode 100644
index 00000000..456a060e
--- /dev/null
+++ b/doc/kvoctrain/entry3-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/entry4-dlg.png b/doc/kvoctrain/entry4-dlg.png
new file mode 100644
index 00000000..721e8b6b
--- /dev/null
+++ b/doc/kvoctrain/entry4-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/entry5-dlg.png b/doc/kvoctrain/entry5-dlg.png
new file mode 100644
index 00000000..8bf65b0c
--- /dev/null
+++ b/doc/kvoctrain/entry5-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/entry6-dlg.png b/doc/kvoctrain/entry6-dlg.png
new file mode 100644
index 00000000..ceb354b0
--- /dev/null
+++ b/doc/kvoctrain/entry6-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/entry7-dlg.png b/doc/kvoctrain/entry7-dlg.png
new file mode 100644
index 00000000..63d0070c
--- /dev/null
+++ b/doc/kvoctrain/entry7-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/get-new-stuff.png b/doc/kvoctrain/get-new-stuff.png
new file mode 100644
index 00000000..90af8066
--- /dev/null
+++ b/doc/kvoctrain/get-new-stuff.png
Binary files differ
diff --git a/doc/kvoctrain/index.docbook b/doc/kvoctrain/index.docbook
new file mode 100644
index 00000000..1a26833d
--- /dev/null
+++ b/doc/kvoctrain/index.docbook
@@ -0,0 +1,2777 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+ <!ENTITY package "kdeedu">
+ <!ENTITY kappname "&kvoctrain;">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"> <!-- change language only here -->
+]>
+
+<book lang="&language;">
+<bookinfo>
+<title>The &kvoctrain; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Ewald</firstname>
+<surname>Arnold</surname>
+<affiliation><address>&Ewald.Arnold.mail;
+</address></affiliation>
+</author>
+
+<othercredit role="reviewer">
+<firstname>Eric</firstname>
+<surname>Bischoff</surname>
+<affiliation><address>&Eric.Bischoff.mail;
+</address></affiliation>
+<contrib>Reviewer</contrib>
+</othercredit>
+
+<author>
+<firstname>Anne-Marie</firstname>
+<surname>Mahfouf</surname>
+<affiliation><address>&Anne-Marie.Mahfouf.mail;
+</address></affiliation>
+</author>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+<copyright>
+<year>1999</year><year>2000</year><year>2001</year><year>2002</year>
+<holder>&Ewald.Arnold;</holder>
+</copyright>
+<copyright>
+<year>2005</year>
+<holder>&Anne-Marie.Mahfouf;</holder>
+</copyright>
+<legalnotice>&FDLNotice;</legalnotice>
+
+<date>2005-06-06</date>
+<releaseinfo>0.8.3</releaseinfo>
+
+<abstract><para>&kvoctrain; is a &kde; vocabulary program to help you train your vocabulary,
+when you are trying to learn a foreign language for example.</para></abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>KVocTrain</keyword>
+<keyword>vocabulary</keyword>
+<keyword>training</keyword>
+<keyword>learning</keyword>
+</keywordset>
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<sect1 id="what-is-it">
+<title>What is it?</title>
+
+<para>&kvoctrain; is a &kde; vocabulary program to help you train your vocabulary,
+when you are trying to learn a foreign language for example. You can create your
+own files with the words you need.</para>
+
+<para>It is intended as a replacement for index (flash) cards.</para>
+
+<para>You probably remember flashcards from school. The teacher would
+write the original expression on the front side of the card and the
+translation on the back. Then look at the cards one after another. If
+you knew the translation, you could put it away. If you failed, you
+put it back to try again.</para>
+
+<para>&kvoctrain; is not intended to teach you grammar or other
+sophisticated things. This is, and probably will stay, beyond the scope
+of this application.</para>
+
+</sect1>
+
+</chapter>
+
+<chapter id="quick-start">
+<title>Quick Start to &kvoctrain;</title>
+
+<para>Here is &kvoctrain; the first time you run it, either from the <menuchoice><guimenu>&kmenu;</guimenu> <guisubmenu>Edutainment</guisubmenu> <guimenuitem>Languages</guimenuitem></menuchoice> or with <keycombo action="simul">&Alt;<keycap>F2</keycap></keycombo> and type <command>kvoctrain</command> in the field.</para>
+<screenshot>
+<screeninfo>&kvoctrain; main window</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="quick-1.png" format="PNG" /></imageobject>
+<textobject><phrase>&kvoctrain; main window</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+You can study a file in the examples by using the <menuchoice><guimenu>File</guimenu> <guimenuitem>Open Example...</guimenuitem></menuchoice> menu. There are 2 files here for you to learn how to use &kvoctrain;. The file <filename>sample-en.kvtml</filename> shows you some vocabulary words in English, German and French.
+</para>
+
+<para>
+You can also get vocabulary files through the Internet using <guimenu>File</guimenu> <guimenuitem>Get New Vocabularies...</guimenuitem> The <guilabel>Get Hot New Stuff</guilabel> dialog will open with a list of available documents.
+</para>
+
+<screenshot>
+<screeninfo>Get Vocabularies dialog</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="quick-2.png" format="PNG" /></imageobject>
+<textobject><phrase>Get Vocabularies dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>Here I choose the Katakana file to learn Japanese and with a click on the <guibutton>Install</guibutton> button in the dialog, the file is installed. Click on the <guibutton>Close</guibutton> button to exit the dialog. The Katakana vocabulary file is opened in the &kvoctrain; window.</para>
+
+<screenshot>
+<screeninfo>The Katakana file</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="quick-3.png" format="PNG" /></imageobject>
+<textobject><phrase>The Katakana file</phrase></textobject>
+</mediaobject>
+</screenshot>
+<para>This file consists in 26 lessons and should allow me to learn Katakana writing for the basics letters and syllables. So lets start with lesson 1. Open <guimenuitem>Configure &kvoctrain;... </guimenuitem> in the <guimenu>Settings</guimenu> menu and go to the <guilabel>Thresholds</guilabel> page. You can set which lessons you want to learn. We highlight Lesson 1 and click on <guibutton>Apply</guibutton> to save the Setting and on <guibutton>OK</guibutton> to close the dialog.</para>
+
+<screenshot>
+<screeninfo>Configure your lesson</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="quick-4.png" format="PNG" /></imageobject>
+<textobject><phrase>Configure your lesson</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>
+In the <guimenu>Learning</guimenu> menu, choose what you want to learn. For example I choose <guimenuitem>ri</guimenuitem> as I want to learn the Katakana signs associated with Romaji. I then choose <guimenuitem>Create Multiple Choice</guimenuitem> <guimenuitem>From jp</guimenuitem> and the following dialog appears:
+</para>
+
+<screenshot>
+<screeninfo>Lesson 1 - Multiple choice query</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="quick-5.png" format="PNG" /></imageobject>
+<textobject><phrase>Lesson 1 - Multiple choice query</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<!-- This chapter should tell the user how to quickly start using your app. It should include screenshots
+with short explanations in a Step 1, Step 2 way maybe.-->
+</chapter>
+
+<chapter id="usage">
+<title>Using &kvoctrain;</title>
+
+<sect1 id="overview">
+<title>Overview</title>
+
+<para>As you can see below, the entries of the vocabulary are arranged
+similar to a spreadsheet. Each column represents an expression or word
+in one language or some other information. The leftmost column contains
+the name of the lesson
+this entry belongs to. The second describes the state of the line and the
+third is always the original word. The
+others to the right of it represent the respective
+translations.</para>
+
+<screenshot>
+<mediaobject>
+<imageobject><imagedata fileref="mainview.png" format="PNG" /></imageobject>
+<textobject><phrase>[main view]</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>In the picture above, you can see that several properties of
+the vocabulary have a visual representation:</para>
+
+<itemizedlist>
+
+<listitem><para>Colors show the grade (Level 1 to 7) of your
+knowledge</para></listitem>
+<listitem><para>A green check mark in the second columns means that this
+line is in use for a query (when you did not finish last time) whereas a
+red cross appears when you deactivated the line.</para></listitem>
+
+<listitem><para>If you mark a range of entries to work with, they
+appear with a different background.</para></listitem>
+</itemizedlist>
+
+<para>The color in the column with the original will vary if you have
+two or more columns with translations. If the cursor is in one of the
+translations the color represents its grade <quote>to the
+original</quote>. See section <link linkend="entry6-dlg">entry
+dialog</link> for more on this.</para>
+
+<para>Of course it is also possible to use it as an ordinary dictionary
+and <link linkend="smart-search">lookup manually</link>.</para>
+
+<para>On the bottom of the main window you also see the status line
+which usually contains the three areas that show important properties of the
+current expression if available:</para>
+
+<variablelist>
+<varlistentry>
+<term>T:</term>
+<listitem><para>the <link linkend="types">type</link> of this
+word</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>P:</term>
+<listitem><para>how to pronounce this expression. If you have a
+font installed, that contains <acronym>IPA</acronym> characters you can also use the characters from
+the phonetic alphabet. See more about this in the according
+<link linkend="opt-dlg-ipa">options dialog page</link>.
+</para></listitem>
+</varlistentry>
+
+<varlistentry><term>R:</term>
+<listitem><para>your personal remarks</para></listitem>
+</varlistentry>
+</variablelist>
+
+<para>While &kvoctrain; is loading, saving a large file or otherwise
+busy doing something time consuming, you will see a progress bar on the right in this
+status line.</para>
+
+</sect1>
+
+<!--<sect1 id="inline-edit">
+<title>Inline editing</title>
+<para>
+ There are two modes that allow you to modify the content of the
+ cells in the main view. You can select the desired mode in the
+ <link linkend="opt-menu">options menu</link>.
+</para>
+
+<variablelist>
+<varlistentry>
+<term>Inline editing enabled</term>
+<listitem><para>When this mode is enabled you can modify the lesson or
+the state of a table row by selecting it from a listbox. The listbox appears
+after clicking on it with the mouse or pressing space while the cursor is
+in the cell.</para>
+<para>To modify a word or an expression just start typing and press
+<keycap>Return</keycap>
+when you have finished.</para>
+
+<note><para>You cannot invoke the <link linkend="entry-dlg">entry dialog window</link> in this mode.
+</para></note></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>Inline editing disabled</term>
+<listitem><para>When inline editing is disabled you must press
+<keycap>F2</keycap> to open a
+listbox or an edit field to make you changes.</para>
+
+<para>To invoke the
+<link linkend="entry-dlg">entry dialog window</link> just press
+<keycap>Return</keycap> when the cursor in the cell
+or double click on it.
+</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect1>-->
+
+<sect1 id="keyboard">
+<title>Using the keyboard</title>
+
+<para>I tried to optimize the work flow for the use with the keyboard.
+So all of the important functions are reachable this way.</para>
+
+<variablelist id="smart-search">
+<varlistentry>
+<term><keycap>Tab</keycap></term>
+<listitem><para>The cursor is moved to the smart search input field. If
+you start typing an expression in this field, &kvoctrain; will search
+the next best match after each key. The cursor in the vocabulary is then
+moved to this location.</para>
+
+<para>If you press <keycap>Return</keycap> it will move to the next
+match.</para>
+
+<para>If you only want entries that match from the <emphasis>beginning</emphasis>
+of the expression you must press <keycombo action="simul">&Ctrl;
+<keycap>Return</keycap></keycombo>.</para>
+
+<para>Pressing <keycombo action="simul">&Shift;
+<keycap>Tab</keycap></keycombo> or <keycap>Tab</keycap> will move back
+to the vocabulary.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>Left Arrow</keycap></term>
+<listitem><para>The cursor in the vocabulary is moved one column
+to the left. If it has reached the leftmost column, nothing
+happens.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>Right Arrow</keycap></term>
+<listitem><para>The cursor in the vocabulary is moved one column
+to the right. If it has reached the rightmost column, nothing
+happens.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>Up Arrow</keycap></term>
+<listitem><para>The cursor in the vocabulary is moved one row upwards.
+ If
+it has reached the topmost row, nothing happens.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>Down Arrow</keycap></term>
+<listitem><para>The cursor in the vocabulary is moved one row
+downwards. If it has reached the bottommost row, nothing
+happens.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>Page Up</keycap></term>
+<listitem><para>The cursor in the vocabulary is moved one page (the
+amount of visible lines -1) upwards. If the cursor would exceed the
+first possible row, nothing happens.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycap>Page Down</keycap></term>
+<listitem><para>The cursor in the vocabulary is moved one page
+downwards. If the cursor would exceed the last possible row, nothing
+happens.</para></listitem>
+</varlistentry>
+
+<varlistentry id="key-enter">
+<term><keycombo action="simul">&Ctrl;<keycap>Return</keycap></keycombo></term>
+<listitem><para>Invoke the <guilabel>Edit Properties</guilabel> dialog for modification of this
+entry.</para></listitem>
+</varlistentry>
+
+<varlistentry id="key-insert">
+<term><keycap>Ins</keycap></term>
+<listitem><para>Appends a new row at the end of the vocabulary.
+The cursor is moved to the entry in the <guilabel>Original</guilabel> row. Edit the items
+in place or invoke the <guilabel>Edit Properties</guilabel> dialog for modification of this
+entry. </para>
+<para>If you have selected smart appending you are prompted to enter
+originals and their translations until you stop by pressing the ESC
+key.</para></listitem>
+</varlistentry>
+
+<varlistentry id="key-delete">
+<term><keycap>Del</keycap></term>
+<listitem><para>After confirmation of a safety dialog,
+the currently selected row or selection is removed from the
+vocabulary.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><keycombo action="simul">&Ctrl;<keycap>+</keycap></keycombo> or <keycombo action="simul">&Ctrl;<keycap>-</keycap></keycombo></term>
+<listitem><para>By pressing &Ctrl; and one of the two number pad
+keys, <keycap>+</keycap> or <keycap>-</keycap>, you can choose the
+previous or next item in the combo box determining the current
+lesson. If you do not have a number pad you may also use the normal
+<keycap>+</keycap> or <keycap>-</keycap> keys.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+<!-- FIXME: Re-implement??
+<para>The buttons on top of the rows are accessible by the keyboard. To
+avoid clashes with the shortcuts for the main menu you have to press
+<keycombo action="simul">&Shift;&Alt;</keycombo> and the key of
+underlined letter in the button text. Then the corresponding <link
+linkend="header-menu">header menu</link> will pop up.</para>
+-->
+
+</sect1>
+
+<sect1 id="mouse">
+<title>Using the mouse</title>
+
+<para>Double clicking an expression in the table lets you edit this items
+in place.</para>
+
+<para><mousebutton>Left</mousebutton> mouse click in of the header
+buttons will sort this column in ascending order. The next click will
+sort in descending order. When the column is sorted you can see a triangle
+in the button that shows the direction.</para>
+
+<para>Keeping pressed the <mousebutton>left</mousebutton> mouse button
+for about 1 second in on of the table header buttons will pop up its
+<link linkend="header-menu">header menu</link>.</para>
+
+</sect1>
+
+<sect1 id="selections">
+<title>Working on selections</title>
+<!-- FIXME this seems to be outdates lueck 01.07.2006-->
+<para>It is possible to mark a range of expressions. You can then modify one
+or more properties from the selection or save them as a new
+file.</para>
+
+<para>If you click on an entry, the whole row is marked for further processing.</para>
+
+<para>If you keep the &Ctrl; key pressed while clicking on an entry,
+the whole row is added to yoor selection. </para>
+
+<para>When you additionally press a &Shift; key when clicking on an
+entry, the selection will be extended from the current entry to the
+previously selected entry.</para>
+
+<para>You invoke the edit dialog to modify the selection by pressing
+<keycombo action="simul">&Ctrl;<keycap>Return</keycap></keycombo>. In this case the dialog
+appears differently. Some properties are disabled. For example it does
+not make sense to edit the expression itself or the remark of a
+whole range.</para>
+
+<para>All selectable fields are empty at the beginning to represent
+the unmodified state. Once you have modified a property there will be
+contents in its field and only those properties are altered in your
+selection when you confirm the dialog.</para>
+
+</sect1>
+
+<sect1 id="file-formats">
+<title>Available file formats</title>
+
+<para>&kvoctrain; can read and write the following file formats:</para>
+
+<itemizedlist>
+<listitem><para>Its native xml-style document type with the extension
+<literal role="extension">.kvtml</literal>.</para>
+
+<para>If you want to share documents with others use this one as it is
+the only file format that is capable of containing
+<emphasis>all</emphasis> the properties in
+&kvoctrain;.</para></listitem>
+
+<listitem><para>Simple text files with special delimiters between the
+entries which are also used by simple database programs. The
+extension is <literal role="extension">csv</literal> in this
+case. &kvoctrain; also detects if those files are encoded in UTF8
+since such files are also available to preserve the correct characters,
+see more about this in the section about <link
+linkend="encodings">encodings and charsets.</link></para>
+
+<para>There are a lot of files on the Internet which use the
+tabular character or one or two colons to separate the different
+languages. To select this separator use the tab for setting the <link
+linkend="options4-dlg"><guilabel> Copy &amp; Paste</guilabel> options</link> in the <guimenu>Settings</guimenu> <guimenuitem>Configure &kvoctrain;...</guimenuitem> dialog.</para></listitem>
+
+</itemizedlist>
+
+<para>&kvoctrain; reads the first few bytes from a file and makes a
+guess about the file format. When none of the special types like
+<literal role="extension">kvtml</literal> or <literal
+role="extension">lex</literal> are recognized, it uses the <literal
+role="extension">csv</literal> format.</para>
+
+</sect1>
+
+<sect1 id="types">
+<title>Available word types</title>
+
+<para>&kvoctrain; has the following internal word types. Furthermore
+every document can contain user defined types.</para>
+
+<informaltable><tgroup cols="3">
+<thead>
+<row>
+<entry>Type name</entry>
+<entry>Description</entry>
+<entry>Example</entry>
+</row>
+</thead>
+
+<tbody>
+<row>
+<entry>Adjective</entry>
+<entry>describing the properties of things or persons</entry>
+<entry>expensive, good</entry>
+</row>
+
+<row>
+<entry>Adverb</entry>
+<entry>tells you when, how, where .. something is happening</entry>
+<entry>today, strongly</entry>
+</row>
+
+<row>
+<entry><para>Article
+ <itemizedlist>
+ <listitem><para>definite article</para></listitem>
+ <listitem><para>indefinite article</para></listitem>
+ </itemizedlist></para></entry>
+<entry><para><!-- empty description --></para></entry>
+<entry><para>
+ <itemizedlist>
+ <listitem><para>a, an</para></listitem>
+ <listitem><para>the</para></listitem>
+ </itemizedlist></para></entry>
+</row>
+
+<row>
+<entry><para>Conjunction</para></entry>
+<entry><para>serves to bind words or sentences</para></entry>
+<entry><para>and, but</para></entry>
+</row>
+
+<row>
+<entry><para>Proper Noun</para></entry>
+<!-- This was name - does this need changing in the app too? -->
+<entry><para>name of a person, a creature, sometimes a
+ thing</para></entry>
+<entry><para>Big Ben, Tom</para></entry>
+</row>
+
+<row>
+<entry><para>Noun
+ <itemizedlist>
+ <listitem><para>male</para></listitem>
+ <listitem><para>female</para></listitem>
+ <listitem><para>neutral</para></listitem>
+ </itemizedlist></para></entry>
+<entry><para>naming of things, feelings</para></entry>
+<entry><para>table, coffee (English does not distinguish
+ here)</para></entry>
+</row>
+
+<row>
+<entry><para>Numeral
+ <itemizedlist>
+ <listitem><para>ordinal</para></listitem>
+ <listitem><para>cardinal</para></listitem>
+ </itemizedlist></para></entry>
+<entry><para>counting or numbering of things</para></entry>
+<entry><para>
+ <itemizedlist>
+ <listitem><para>first, second</para></listitem>
+ <listitem><para>one, two</para></listitem>
+ </itemizedlist></para></entry>
+</row>
+
+<row>
+<entry><para>Phrase</para></entry>
+<entry><para>special combination of words</para></entry>
+<entry><para>to kill two birds with one stone</para></entry>
+</row>
+
+<row>
+<entry><para>Preposition</para></entry>
+<entry><para>tells you about the relationship or location</para></entry>
+<entry><para>behind, between</para></entry>
+</row>
+
+<row>
+<entry><para>Pronoun
+ <itemizedlist>
+ <listitem><para>Possessive pronoun</para></listitem>
+ <listitem><para>Personal pronoun</para></listitem>
+ </itemizedlist></para></entry>
+<entry><para>
+ <itemizedlist>
+ <listitem><para>tells about the ownership of
+ something</para></listitem>
+ <listitem><para>stands as a replacement for a
+ noun</para></listitem>
+ </itemizedlist></para></entry>
+<entry><para>
+ <itemizedlist>
+ <listitem><para>my, your</para></listitem>
+ <listitem><para>you, she</para></listitem>
+ </itemizedlist></para></entry>
+</row>
+
+<row>
+<entry><para>Interrogatory</para></entry>
+<entry><para>introduces questions</para></entry>
+<entry><para>who, what</para></entry>
+</row>
+
+<row>
+<entry><para>Verb
+ <itemizedlist>
+ <listitem><para>regular verb</para></listitem>
+ <listitem><para>irregular verb</para></listitem>
+ </itemizedlist></para></entry>
+<entry><para>who is doing something or what is happening</para></entry>
+<entry><para>
+ <itemizedlist>
+ <listitem><para>to cook, cooked, cooked</para></listitem>
+ <listitem><para>to go, went, gone</para></listitem>
+ </itemizedlist></para></entry>
+</row>
+
+</tbody>
+</tgroup></informaltable>
+</sect1>
+
+<sect1 id="encodings">
+<title>About charsets, encodings, unicode and such strange
+ things</title>
+
+<para>Every human-readable text file is represented by a sequence of
+<quote>bytes</quote> or <quote>octets</quote>. The actual meaning of
+those bytes can happen in a lot of different ways, depending on the
+system where it is displayed or which language the text is intended
+for.</para>
+
+<para>Since usually a <quote>byte</quote> is the smallest common unit
+for data on computers each <quote>character</quote> you see on a
+screen is represented by exactly one byte. Each byte can stand for a
+value from 0 to 255 and therefore you are able to display up to 256
+different characters within one file.</para>
+
+<para>Usually you have the <quote>ascii</quote> characters, &eg; a
+through z, A through Z, 0 through 9 and additional language dependent
+characters. For example, the German umlauts &auml; or &uuml; or a lot
+of other special symbols from Russian, Greek, Hebrew or even
+Chinese. All this tots up to far more than 256 different
+symbols.</para>
+
+<para>At this point it should be obvious that you have to take care to
+select the correct <quote>charset</quote>, which is needed on a lot of
+computer systems to display
+the bytes in the same way as they are intended.</para>
+
+<para>A better approach is to combine two ore more bytes into a
+representation for a single character on the screen. This is for
+example what <quote>Unicode</quote> does. Unicode is a standard that
+currently uses a range from 0 to 65535 (and even more) to designate a
+given symbol. Almost each symbol
+of almost any language on earth (and even a lot more, &eg; well known
+icons or klingon) is assigned a unique and unambiguous number.</para>
+
+<para>Unfortunately the handling of Unicode is a bit more complicated
+and does not work with most of the current tools. Texts in unicode
+might also be longer. A compromise is to use UTF-8 which uses 7 bits
+(8 bits form one byte) for the most common characters from the ascii
+set and switches to 2, 3 or even 4 or more bytes if needed.</para>
+
+<para>Every vocabulary file for &kvoctrain; is basically such a simple
+text file using Unicode.</para>
+
+<para>To support as many languages as possible &kvoctrain; version 0.7
+offered the possibility to choose a special charset for each language.
+If you have saved your files
+in the former <quote>8Bit-Mode</quote> you might see the wrong characters
+when you load with version 0.8 and higher.
+Contact <ulink url="mailto:kvoctrain@ewald-arnold.de">me</ulink> in this case.
+</para>
+
+<para>If you want to learn more about this issue you should visit the
+following links:</para>
+
+<itemizedlist>
+<listitem><para>
+<ulink
+url="http://www.hut.fi/u/jkorpela/chars.html">http://www.hut.fi/u/jkorpe
+la/chars.html</ulink>
+</para></listitem>
+<listitem><para>
+<ulink
+ url="http://linuxdoc.org/HOWTO/Unicode-HOWTO.html">http://linuxdoc.org/
+HOWTO/Unicode-HOWTO.html</ulink>
+</para></listitem>
+<listitem><para>
+<ulink
+ url="http://czyborra.com/charsets/codepages.html">http://czyborra.com/c
+harsets/codepages.html</ulink>
+</para></listitem>
+</itemizedlist>
+
+</sect1>
+
+<sect1 id="learning">
+<title>And how should I learn?</title>
+
+<para>The usual way to learn with &kvoctrain; is to use one of its
+ random
+query functions.</para>
+
+<para>It keeps track of your knowledge of the expressions by assigning
+them one of seven grades ranging from <quote>Level 1</quote> to
+<quote>Level 7</quote>.</para>
+
+<para>Several possibilities are implemented which can be configured in
+the dialog for the query options.</para>
+
+<itemizedlist>
+<listitem><para>To keep the amount of expressions reasonable, restrict
+the query to a lesson and/or a word type. I personally prefer about 50
+words per cycle and subdivide the lessons accordingly.</para></listitem>
+
+<listitem><para>Furthermore, the range for the query can depend on the
+current grade, the number of queries and the last query
+date.</para></listitem>
+
+<listitem><para>Learning is efficient, if you do not repeat the words
+for a certain length of time, depending on the current
+grade.</para>
+
+<para>There is a blocking and expiring mechanism for that
+case, so you are not obliged to modify the settings after each
+cycle. The known expression is blocked at least for the given time and
+will be shown after the expiration time.</para></listitem>
+
+<listitem><para>The direction of the learning can be changed randomly
+to avoid one way learning.</para></listitem>
+
+<listitem><para>For your personal taste or just for becoming
+acquainted with a new word, you can choose a query that shows the
+solution together with several other randomly chosen words (called
+multiple choice).</para></listitem>
+
+<listitem><para>Special word types need special queries.</para>
+<para>For this reason there are queries for the conjugation of verbs,
+comparison form of adjectives and the articles of
+nouns.</para></listitem>
+</itemizedlist>
+
+<para>All these settings can be summarized into
+<link linkend="profiles">profiles</link> and retained
+under an arbitrarily name.</para>
+
+<para>When querying &kvoctrain; shows the expressions in random order
+until you confirm all as <quote>known</quote>. If you did not select a
+special lesson, all lessons are queried one after the other.</para>
+
+<para>Remaining expressions of a currently running query are
+accordingly stored when you leave &kvoctrain;. After a later restart
+you can resume the query (currently this does not apply to special queries
+with verbs, articles and comparisons). Those expressions are marked with a
+green check mark in the <link linkend="overview">main view</link>.</para>
+
+</sect1>
+</chapter>
+
+
+
+<chapter id="dialogs">
+<title>Dialogs</title>
+
+<sect1 id="docprop-dlg">
+<title><guilabel>Document Properties</guilabel> dialog</title>
+
+<para>Open this dialog with <menuchoice><guimenu>Vocabulary</guimenu>
+<guimenuitem>Document Properties</guimenuitem></menuchoice>. This dialog
+also consists of several pages the determine properties that belong
+only to the current document. They are stored with the vocabulary.</para>
+
+<sect2 id="docprop1-dlg">
+<title><guilabel>General</guilabel> properties</title>
+
+<screenshot>
+<screeninfo><guilabel>General Document Properties</guilabel> screenshot</screeninfo>
+<mediaobject>
+<imageobject>
+<imagedata fileref="docprop1-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>General Document Properties</guilabel></phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Title</guilabel></term>
+<listitem><para>Here you enter the title of the document which is
+displayed in the window's title bar.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Authors</guilabel></term>
+<listitem><para>Usually you will enter your name in this field. If
+there are more than one author you might use a line for each
+person.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>License</guilabel></term>
+<listitem><para>If you want to restrict (or better allow) the use
+of you vocabulary you should enter the according permission or license
+here.</para>
+<para>I recommend something like the
+<ulink url="http://www.gnu.org/philosophy/using-gfdl.html">Free Document License</ulink>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Remark</guilabel></term>
+<listitem><para>This field should contain things that do not fall in
+one of the other categories.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="docprop2-dlg">
+<title><guilabel>Lesson</guilabel> descriptions</title>
+
+<screenshot>
+<screeninfo><guilabel>Lesson</guilabel> descriptions dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="docprop2-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Lesson</guilabel> descriptions</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>Here you add, modify or delete descriptions of your
+ lessons.</para>
+
+<para>The buttons should be pretty selfexplanatory except
+ <guibutton>Clean Up</guibutton>. This one will remove all lesson
+ descriptions that are unused in the current document.</para>
+
+</sect2>
+
+<sect2 id="docprop3-dlg">
+<title><guilabel>Types</guilabel> descriptions</title>
+
+<para>Similar to the previous section about lessons, you can edit your
+own expression types on this page.</para>
+
+<para>Since the dialog page looks the same as the one before there is
+no picture.</para>
+
+</sect2>
+
+<sect2 id="docprop4-dlg">
+<title><guilabel>Tenses</guilabel></title>
+
+<para>On the next page you may add the tenses you need.</para>
+
+</sect2>
+
+<sect2 id="docprop5-dlg">
+<title><guilabel>Usage</guilabel> labels</title>
+
+<para>The last page provides the possibility to enter your own usage
+ labels.</para>
+
+<important><para>If you think an important item is missing (from the
+above tense, type or usage label section) you should tell me, so I can
+include them in the application as standard item.</para>
+<para>This way all the other users can benefit.</para></important>
+
+</sect2>
+
+<sect2 id="docprop6-dlg">
+<title><guilabel>Document Options</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>Document Options</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="docprop6-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Document Options</guilabel></phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Allow sorting</guilabel></term>
+<listitem><para>If you have created your vocabulary with a certain
+ order, you can use this check box to turn sorting off for this document. A click
+in the header button will then no longer sort the row.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+<para>Version 0.7 of &kvoctrain; additionally offered the choice to either use
+<quote>8Bit</quote> or <quote>Unicode</quote> to store the vocabulary files.
+This is no more supported. The files are always stored
+in Unicode to prevent wrong rendering of characters.</para>
+<para>Unfortunately there is no backwards
+compatibility to versions below 0.6 any more but I think the benefit is worth it.</para>
+
+</sect2>
+</sect1>
+
+<sect1 id="langprop-dlg">
+<title><guilabel>Language Properties</guilabel> dialog</title>
+
+<para>Open this dialog with <menuchoice><guimenu>Vocabulary</guimenu>
+<guimenuitem>Language Properties</guimenuitem></menuchoice>.</para>
+
+<screenshot>
+<screeninfo><guilabel>Language Properties</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="lang1-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Language Elements</guilabel></phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>The following pages of this dialog determine for each language
+of this dictionary several elements that are used in the according
+queries.</para>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Articles</guilabel></term>
+<listitem><para>For every gender you enter here the definite and the
+indefinite article. If there is none for this language, you leave the
+field empty.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Conjugation</guilabel></term>
+<listitem><para>In the similar manner you input the descriptor for the
+first, second and third person each in plural and singular.</para>
+<para>Because many languages do not distinguish in the third person
+ plural, there is a check box to determine this.</para>
+<para>Leave the unneccessary fields empty.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+<para>Version 0.7 of &kvoctrain; also offered the choice for a special
+<link linkend="encodings">charset.</link>
+In &Qt; version 3 there is no need for this any more.</para>
+<para>
+If you have important files that are rendered wrong in the new version
+you may contact
+<ulink url="mailto:kvoctrain@ewald-arnold.de">me</ulink>
+since it might be worth the effort
+to create some conversion tool.
+</para>
+
+</sect1>
+
+<sect1 id="options-dlg">
+<title>Settings dialog</title>
+
+<para>Open this dialog with <menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Configure &kvoctrain;...</guimenuitem></menuchoice>.
+The settings in this dialog are global and affect all vocabularies
+equally.</para>
+
+<sect2 id="settings1-dlg">
+<title><guilabel>General</guilabel></title>
+
+<screenshot>
+<screeninfo>General settings dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="options1-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>General Settings Dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Save vocabularies automatically on close and quit</guilabel></term>
+<listitem><para>If you check this option, &kvoctrain; will automatically save the document if it
+was modified when you use the close button or when you quit &kvoctrain;.</para>
+<para>As a side effect it also does not ask for confirmation to save
+ when quitting with modified data but saves the vocabulary without
+ asking.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Create a backup every 15 minutes</guilabel></term>
+<listitem><para>&kvoctrain; will automatically save the document if it
+was modified after the period you enter here when the option is
+checked.</para>
+<para>As a side effect it also does not ask for confirmation to save
+ when quitting with modified data but saves the vocabulary without
+ asking.</para>
+<para>An interval of 0 also stops this behavior.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Smart appending</guilabel></term>
+<listitem><para>If this feature is activated, you will repeatedly be
+prompted with the entry dialog. After entering the first original you
+have to enter the corresponding translations. Afterwards you proceed
+with the next original and its translations until you stop by pressing
+the &Esc; key.</para>
+<para>When you are in this mode and modify the lesson in the dialog it
+has the same meaning as selecting the lesson in the toolbar. This way
+it is preselected when the next entry dialog appears.</para>
+<para>The required lessons will have to be created in advance in the
+document settings.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Apply changes without asking</guilabel></term>
+<listitem><para>When checked, all options are save upon termination
+of &kvoctrain;. Otherwise you have to select the appropriate menu
+item.</para></listitem>
+</varlistentry>
+
+
+<varlistentry>
+<term><guilabel>Column Resizing</guilabel></term>
+<listitem><para>When you resize your main window it is convenient,
+if the columns resize automatically, too.</para>
+<para>This is possible in two manners:
+ <variablelist>
+ <varlistentry>
+ <term><guilabel>Automatic</guilabel></term>
+ <listitem><para>&kvoctrain; makes each columns the same width except
+ the leftmost with the lesson names which has half the size of the
+ others. The second column which contains the picture that describes the
+ state of the row has a fixed width.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><guilabel>Percentage</guilabel></term>
+ <listitem><para>
+ The widths of the columns are altered with the same
+ factor the main window grew or shrunk.
+ </para></listitem>
+ </varlistentry>
+ </variablelist></para>
+
+<para>If the last button labeled <guilabel>Fixed</guilabel> is set, no resizing of
+the columns is done.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="settings2-dlg">
+<title><guilabel>Languages</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>Language Settings</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="options2-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Language Settings</guilabel> dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Language code</guilabel></term>
+<listitem><para>Each column can be assigned a
+language. This is internally done with the usual <ulink
+url="http://www.loc.gov/standards/iso639-2/englangn.html">international
+language codes</ulink> &eg; <literal>en</literal>, <literal>de</literal>,
+<literal>it</literal>. These codes are also stored with the document.</para>
+<para>You should always use the correct codes to be able to share
+vocabularies with others. Merging vocabularies also relies on the
+ correct language codes.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Alternative code</guilabel></term>
+<listitem><para>Sometimes it may be useful to have a second language
+ code because some languages have the usual short code and one or two longer
+codes. For German for example it is common to use <literal>de</literal>
+but either <literal>deu</literal> or <literal>ger</literal> is also
+possible according to ISO639-2.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Language name</guilabel></term>
+<listitem><para>Here you can give the language code a descriptive name
+in your own language which is shown in the header buttons in the
+<link linkend="overview">main view</link>.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Picture</guilabel></term>
+<listitem><para>Additionally you can add a nice icon to your language
+which is shown in the table header button.</para>
+<para>&kde; 2 stores those pixmaps under
+<filename>$<envar>KDEDIR</envar>/share/locale/l10n/<replaceable>language
+-code</replaceable></filename>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Keybord Layout</guilabel></term>
+<listitem><para>To be written.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>Delete</guibutton></term>
+<listitem><para>Clicking an this button deletes the currently selected language code in the
+list.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>Add</guibutton></term>
+<listitem><para>After entering a new language code in the field to its left,
+you use this button to append it to your list. After that you need to
+fill in the fields for the long name and the picture for the header
+button.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Add Language Data From KDE Database</guilabel></term>
+<listitem><para>Clicking on this drop down box opens a list that contains all the countries
+that are known in your &kde; installation. Ordered by country you can add your
+desired language properties to your personal list.</para>
+
+<para>Maybe you want to change the
+language name or the according picture but I strongly recommend you keep at least the
+2-byte language code and its 3-byte alternative if you do not have a special reason.
+This is to achieve compatible document files that can be shared among all users.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Add Language Data From ISO639-1</guilabel></term>
+<listitem><para>Clicking on this drop down box opens a list that contains all the language codes
+that are covered by <quote>ISO639-1</quote>.</para>
+
+</listitem>
+</varlistentry>
+
+</variablelist>
+
+<para>Basically the previous two drop down boxes provide the same data. The former contains
+the language codes known in &kde; sorted by country whereas the second contains
+<emphasis>all</emphasis> <quote>ISO639-1</quote> codes sorted alphabetically.</para>
+
+</sect2>
+
+<sect2 id="settings3-dlg">
+<title><guilabel>View</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>View Settings</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="options3-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>View Settings</guilabel> dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Table font</guilabel></term>
+<listitem><para>Lets you choose a font to display the vocabulary
+in the
+<link linkend="overview">main view</link>.
+</para>
+</listitem>
+</varlistentry>
+
+<varlistentry id="opt-dlg-ipa">
+<term><guilabel>IPA font</guilabel></term>
+<listitem><para>Lets you choose a font to display the characters from the international
+phonetic alphabet. This is used to show the pronunciation of the expression
+on the bottom in the statusbar.</para>
+<para>Probably you do not have an IPA enabled font since those characters are seldom used.
+You may download a free font from
+<ulink url="http://bibliofile.mc.duke.edu/gww/fonts/Unicode.html">http://bibliofile.mc.duke.edu/gww/fonts/Unicode.html
+</ulink> or
+<ulink url="http://www.hclrss.demon.co.uk/unicode/fonts.html">http://www.hclrss.demon.co.uk/unicode/fonts.html
+</ulink>. Install these fonts for example with kfontinst.</para>
+
+<para>If you have <application>StarOffice</application> installed you probably
+have the font <quote>Lucida Sans Unicode</quote> which also contains most of the
+needed characters (but be sure to select the font which ends with
+<quote>Unicode</quote>).</para>
+
+<para>I also found a <ulink url="http://esl.about.com/library/weekly/aa040998.htm">
+Reference and Introduction to Phonetic Symbols</ulink> that explains a bit about
+the background. There is also
+<ulink url="http://www2.arts.gla.ac.uk/IPA/ipa.html">
+The International Phonetic Association</ulink> where you can find even more information.
+</para>
+
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Grade Colors</guilabel></term>
+<listitem><para>Every grade can be assigned an individual color. For
+example I prefer green for best grade and red for worst.</para>
+<para>If you do not want any colors but just black on white, uncheck the
+<guilabel>Use Colors</guilabel> check box.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="options4-dlg">
+<title><guilabel>Copy &amp; Paste</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>Copy &amp; Paste Settings</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="options4-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Copy &amp; Paste Settings</guilabel> dialog </phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry id="cut-n-paste">
+<term><guilabel>Separator</guilabel></term>
+<listitem><para>This is a sequence of one ore more characters which
+divide the parts of an expression when transferring data from or to an
+other application over the clipboard.</para>
+<para>The most common item is <keycap>TAB</keycap> which uses the tabulator
+character. Another possibility is to use the semicolon, if you want to
+export data to a database file in <literal role="extension">CSV</literal>
+ format.This character is also used to read such files correctly.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Order</guilabel></term>
+<listitem><para>When pasting via the clipboard &kvoctrain; does not know
+which languages the different fields belong to and just would insert
+them from left to right.</para>
+<para>To facilitate correct behavior, if you arranged your vocabulary
+ in an other way, you can determine your desired order with this area.</para>
+<para>The buttons right to the list box move the current language up or
+down. <guibutton>Skip</guibutton> will insert a hole which means that
+ the later calculated field from the clipboard is skipped.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Use current document</guilabel></term>
+<listitem><para>When checked, the items in the clipboard are assumed to
+be in the same language order as the current document.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+<sect2 id="options5-dlg">
+<title><guilabel>Query</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>Query Settings</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="options5-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Query Settings</guilabel> dialog </phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Time Per Query</guilabel></term>
+<listitem><para>Here you can influence the behavior of &kvoctrain;
+when you do not know the answer in time.
+ <itemizedlist>
+ <listitem><para>You may set a time limit &kvoctrain; grants you to
+ remember the correct answer.</para></listitem>
+ <listitem><para>Additionally you can tell &kvoctrain; what to do
+ when this limit is reached. Besides of waiting unlimited time you may
+ select to be shown the solution or to continue immediately with the next
+ question.</para></listitem>
+ <listitem><para>Furthermore you can activate a little progress bar to
+ show the remaining time for the current answer.</para></listitem>
+ </itemizedlist>
+</para>
+<para>If you exceed the time limit several times in series in continuous mode
+&kvoctrain; will assume that there is currently no person in front of the screen
+and stop the query.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Swap direction randomly</guilabel></term>
+<listitem><para>Usually a query is only in one direction, depending on
+ the column you used to start the query. With this check box you can
+ determine, that the directions are altered randomly.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Use alternative learning method</guilabel></term>
+<listitem><para>The normal learning style is to learn a single lesson
+at a time, and when you answer correctly the first time it is removed
+from the current learning list.</para>
+
+<para>The alternative method was developed by Sebastian Leitner in his
+book "So lernt man lernen, Angewandte Lernpsychologie - ein Weg zum
+Erfolg" (Freiburg: Heider, 1972) (English: Learn how to learn, applied
+learning psychology - A way to success).</para>
+
+<para>The idea of Leitner's method is to try learn those questions you
+have a hard time to learn, and do not bother you with those that you do
+know. This is accomplished by requiring you to answer correctly to each
+question four times in a row.</para>
+
+<para>In real life it works by creating four rows of cards. Each row,
+above the bottom one, can only hold a certain number of cards. The top
+row can hold seven cards, the others can hold two cards. (In the
+original game, the bottom row can only hold three card, thus limiting
+the number of cards in the game to 20. This "limitation" is not
+present in &kvoctrain;.)</para>
+
+<para>In the bottom row are the questions that have yet to be asked
+and the questions that have previously been answered incorrectly. When
+a question is answered correctly, it is removed from the row it was in
+and moved to the back of row above. If answered incorrectly, the card
+is moved to the back of the bottom row. If the row a card is placed in
+exceed the maximum number of cards for that row, the next question is
+taken from the front of that row, else the question is taken from the
+front of the bottom row. A card is removed from the game when it would
+otherwise be moved to the fifth row, &ie; it has been answering
+correctly while located in the top row.</para>
+<!-- FIXME Random Query Options missing lueck 01.07.2006-->
+</listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="options6-dlg">
+<title><guilabel>Thresholds</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>Thresholds Settings</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="options6-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Thresholds Settings</guilabel> dialog </phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para id="thresholds">With this dialog you determine which entries are
+included in the next selection for random query.</para>
+
+<important><para>If you have activated the blocking mechanism on the next dialog
+page, the thresholds from
+<guilabel>Grade</guilabel>,
+<guilabel>Query count</guilabel>,
+<guilabel>Bad count</guilabel> and
+<guilabel>Last query</guilabel>
+are disabled and not taken into account.</para>
+</important>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Lesson</guilabel></term>
+<listitem><para>Designate which lessons to include or leave out. An
+arbitrary number of lessons can be selected for the calculation.</para>
+<para>For convenience there are two additional buttons to selected all
+entries or none.</para>
+<para>Starting with version 0.7.0 this part is stored with the document
+instead of storing globally.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Word type</guilabel></term>
+<listitem><para>Select the word type. &kvoctrain; does not pay any
+attention to subtypes.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Grade</guilabel></term>
+<listitem><para>The same for the grade.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Query count</guilabel></term>
+<listitem><para>Choose how often the selection must be
+queried.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Bad count</guilabel></term>
+<listitem><para>The same for the amount of times the entry was not
+known.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Last query</guilabel></term>
+<listitem><para>Include queries before or within the given time
+ span.</para>
+<para>Entries which have not been queried yet are always included if you
+choose <emphasis>before</emphasis>.</para></listitem>
+</varlistentry>
+</variablelist>
+
+<para>Entries are only included if all conditions are fulfilled. If you
+want a property to be ignored, choose <guilabel>Do not care </guilabel>for it.</para>
+
+</sect2>
+
+<sect2 id="options7-dlg">
+<title><guilabel>Blocking</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>Blocking Settings</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="options7-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Blocking Settings</guilabel> dialog </phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>On this page you select the time, an known entry is excluded from
+queries resp. when it must be queried at the latest.</para>
+
+<para>There are two conditions which must be fulfilled, otherwise you
+will be shown an according warning:</para>
+
+<itemizedlist>
+<listitem><para>The time must increase from level to level</para></listitem>
+
+<listitem><para>The time for blocking must be less than for expiring in
+the same level.</para></listitem>
+</itemizedlist>
+
+<para>If at least one of blocking or expiring is active, the thresholds from
+<guilabel>Grade</guilabel>,
+<guilabel>Query count</guilabel>,
+<guilabel>Bad count</guilabel> and
+<guilabel>Last query</guilabel>
+on the previous dialog page are not taken into account.</para>
+
+</sect2>
+
+<sect2 id="profiles">
+<title><guilabel>Profiles</guilabel></title>
+<para>
+A Profile is a set of settings (settings related to queries) which you can save/load in order to use again later.
+This <guibutton>Profiles...</guibutton> button at the bottom of the <guilabel>Configure &kvoctrain;</guilabel>
+dialog allows you to see existing profiles, to load a new profile and to save your current settings in a new profile.
+</para>
+<para>Clicking on the <guibutton>Profiles...</guibutton> button will display the following dialog.</para>
+<screenshot>
+<screeninfo><guilabel>Profiles</guilabel> dialog</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="profiles.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Profiles</guilabel> dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Save</guilabel></term>
+<listitem><para>Saves the current query settings under the
+current name.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Load</guilabel></term>
+<listitem><para>Load the settings from the profile in the
+listbox.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>New</guilabel></term>
+<listitem><para>Creates a new profile with the current
+settings.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Delete</guilabel></term>
+<listitem><para>Removes the current profile.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Close</guilabel></term>
+<listitem><para>Closes the <guilabel>Profiles</guilabel> dialog.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+</sect1>
+
+<sect1 id="entry-dlg">
+<title>Entry dialog</title>
+
+<sect2 id="entry1-dlg">
+<title><guilabel>Common Properties</guilabel></title>
+
+<para>Here you enter a new expression into a table cell or modify
+existing entries and their properties. This dialog is accessed when a cell
+is chosen and you select <menuchoice><guimenu>Edit</guimenu> <guimenuitem>Edit Selected Area...</guimenuitem></menuchoice> from the menu or the <guibutton>Edit Expression...</guibutton> button in the <guilabel>Random Query</guilabel>.</para>
+
+<screenshot>
+<screeninfo>Entry dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="entry1-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Entry dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Expression</guilabel></term>
+<listitem><para>Contains your words.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Lesson</guilabel></term>
+<listitem><para>Selects the desired lesson.</para>
+<para>The button on the right also invokes the
+<guilabel>Edit Lesson Names</guilabel> dialog where you can edit lessons.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Pronunciation</guilabel></term>
+<listitem><para>In this field you can describe how the word is
+pronounced.</para>
+<para>This is possible either by using simple ascii characters and maybe an fancy
+and very personal phonetic description or better by using the international
+phonetic alphabet.
+The button on the right invokes a
+<link linkend="pron-window">dialog</link> where you can select
+all the characters that belong to this alphabet.</para>
+
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Type</guilabel></term>
+<listitem><para>Lets you choose one of the predefined types for your
+expression. If you change the type for an entry, all the other entries
+in that row will be assigned the new type.</para>
+<para>See the table for all <link linkend="types">available
+types</link>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Subtype</guilabel></term>
+<listitem><para>Some types also include subtypes. If there is no subtype
+available this field is disabled.</para>
+<para>Every entry in a row can have a different subtype. This is
+useful for nouns as the gender of a noun may be different in different
+languages.</para>
+<para>The button to the right of this field invokes the <guilabel>Edit User Defined Types</guilabel> dialog so you can edit the <guilabel>Type Descriptions</guilabel>
+immediately.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Usage Labels</guilabel></term>
+<listitem><para>One or more usage labels can be selected to describe
+the usual usage of the expression, &eg; medicine or chemistry.</para>
+<para>The button on the right invokes the the <guilabel>Edit User-Defined Usage
+Labels</guilabel> dialog to enter a new usage label.</para></listitem>
+</varlistentry>
+</variablelist>
+
+<sect3 id="pron-window">
+<title>Selecting from the international phonetic alphabet</title>
+
+<para>If you have an IPA-enabled font installed your dialog
+should look like this:</para>
+
+<screenshot>
+<screeninfo>IPA dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="pron-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>International phonetic alphabet dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>If you do not have such a font you can find a link to a free one in the section
+about the <link linkend="opt-dlg-ipa">view options</link>.</para>
+</sect3>
+
+<!-- FIXME Active option missing lueck 01.07.2006-->
+</sect2>
+<sect2 id="entry2-dlg">
+<title><guilabel>Additional Properties</guilabel></title>
+
+<para>For most of these fields there are special queries, too.</para>
+
+<screenshot>
+<screeninfo>Additional entry dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="entry2-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Additional entry dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Synonyms</guilabel></term>
+<listitem><para>Here you may enter words that have the same
+meaning as the expression. There is also a query type for this
+expression.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Antonyms</guilabel></term>
+<listitem><para>This is for words that have the opposite meaning. This
+field can also be queried.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Example</guilabel></term>
+<listitem><para>Additionally you may enter here an example sentence
+for the expression. There is a simple query type which prompts you
+with the content of this field but with dots instead of the word in
+question.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Remark</guilabel></term>
+<listitem><para>This is an optional field to store additional
+information.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Paraphrase</guilabel></term>
+<listitem><para>Here you may enter a description in different words.
+ There is also a query type for this expression.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="entry3-dlg">
+<title><guilabel>Suggestions For Multiple Choice Query</guilabel></title>
+
+<screenshot>
+<screeninfo>Multiple choice dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="entry3-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Multiple choice dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>If you want to create an efficient multiple choice query it
+is good to offer expressions that are similar to the solution to make
+it more difficult. If you do not offer them, &kvoctrain; has only
+the possibility
+to create such queries with randomly chosen expressions which are rather
+easy to guess.
+You can enter up to five expressions for this purpose.</para>
+
+</sect2>
+
+<sect2 id="entry4-dlg">
+<title>Additional properties for verbs</title>
+
+<para>You can edit the entries on the <guilabel>Conjugation</guilabel> page only
+when you selected <guilabel>verb</guilabel> as word type.</para>
+
+<screenshot>
+<screeninfo>Verb entry dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="entry4-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Verb entry dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>For every tense &kvoctrain; knows you can enter the conjugations
+of the verb for the different persons. The tense can be selected from
+ the list. After doing this the entry fields are updated accordingly.</para>
+
+<para>Because some languages do not distinguish in the 3rd person of the
+plural you may use the according check box.</para>
+
+<para><guibutton>Next</guibutton> searches for the next tense with
+already entered conjugations.</para>
+
+</sect2>
+
+<sect2 id="entry5-dlg">
+<title>Additional properties for adjectives</title>
+
+<para>You can edit the entries on the <guilabel>Comparison</guilabel> page only
+when you selected <guilabel>adjective</guilabel> as word type.</para>
+
+<screenshot>
+<screeninfo>Comparison entry dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="entry5-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Comparison entry dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>Here you enter the the comparison forms of the
+ adjective.</para>
+
+</sect2>
+
+<sect2 id="entry6-dlg">
+<title>Properties from or to the original</title>
+
+<para>For some properties it is possible to set up values
+<emphasis>from</emphasis> the original or <emphasis>to</emphasis> the
+original. For example you can have a grade when querying the translation
+(=> from the original). The opposite is the grade when querying the original when
+one of the translations is given (=> to the original).</para>
+
+<screenshot>
+<screeninfo>From/to entry dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="entry6-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>From/to entry dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Grade</guilabel></term>
+<listitem><para>Contains the current grade of this
+expression.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>False friend</guilabel></term>
+<listitem><para>Sometimes there is a word in a foreign language that
+looks like a word in your native language so you think it must have the
+same meaning. But in fact, it is not.</para>
+<para>Enter such words in this field.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Last Query Date</guilabel></term>
+<listitem><para>This is the date when this entry was
+last queried. If it was never queried yet you only see
+<computeroutput>&#150;&#150;</computeroutput>.</para>
+<para>For convenience reasons there are two buttons to set the current
+date or reset to <quote>never queried</quote>.</para>
+<para>Due to internal reasons, it is not possible to store dates before
+August 12 1999 with every version of &kvoctrain;. Versions 0.8 and later
+are no more affected.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Altogether</guilabel></term>
+<listitem><para>Designates how often this entry was queried.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guilabel>Wrong</guilabel></term>
+<listitem><para>Shows the amount of times you did not know the right
+answer.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2>
+<title>Docking to the main window</title>
+
+<screenshot>
+<screeninfo>Docking buttons</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="entry7-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Docking buttons</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>If you have to enter or change a lot of words you may want to place the main
+window next to the entry dialog and occupy the whole screen.
+
+You may do this manually or use one of the two
+buttons in the bottom (see picture above). The left one resizes the windows to an optimal
+height and places them one upon the other. The second places them accordingly
+side by side.</para>
+
+<para>After closing the entry dialog the main window returns to its previous
+position and size.</para>
+
+</sect2>
+</sect1>
+
+<sect1 id="query-dlg">
+<title>Query dialogs</title>
+
+<sect2 id="norm-query-dlg">
+<title>Normal <guilabel>Random Query</guilabel></title>
+
+<para>After selecting <guimenuitem>Create Random Query</guimenuitem>
+the main window disappears.</para>
+
+<para>Then all entries that match your current <link
+linkend="thresholds">thresholds</link> are put into a list and shown
+in random order with the following dialog box.</para>
+
+<screenshot>
+<screeninfo><guilabel>Random Query</guilabel> dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="query-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Random Query</guilabel> dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>In the dialog area with the original expression there are some properties
+you can enable to give you some hints. You have to enter the solution in the
+according text field.</para>
+
+<variablelist>
+<varlistentry>
+<term><guilabel>Show All</guilabel></term>
+<listitem><para>Shows the complete solution in the translation
+field.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>Show More</guibutton></term>
+<listitem><para>Each click on this button will show one more character
+of the solution to give you a little help.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>Verify</guibutton></term>
+<listitem><para>Compares your answer with the correct solution. Currently
+your solution must match exactly to be accepted. If the answer was correct the
+color of the translation changes to green, otherwise to red</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>Do Not Know</guibutton></term>
+<listitem><para>Tells &kvoctrain; that you did not know the answer and
+that the according grade must be lowered.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>I Know It</guibutton></term>
+<listitem><para>Click this button to tell &kvoctrain; that you
+knew the answer correctly. This entry is then removed from the current<quote>bad
+list</quote>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>Edit Expression...</guibutton></term>
+<listitem><para>If you find a mistake with a query you can invoke the
+edit dialog immediately and correct it.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guibutton>Stop Query</guibutton></term>
+<listitem><para>Stop query mode and show vocabulary
+again.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+<para>In the right bottom corner you see two progressbars that indicate
+the remaining time and the amount of queries to come.</para>
+
+<para>The query of the current lesson is repeated until all its
+expressions are known. The amount of retries of the current lesson is
+shown below the progress indicator. Once the current lesson is
+finished &kvoctrain; continues with the next (provided that you have set up
+the <link linkend="thresholds">query options</link> accordingly).</para>
+
+<para>I regret to admit, but usually I don`t know the solution. For
+this reason the <keycap>Return</keycap> key has special behavior,
+which I found convenient:
+
+<itemizedlist>
+<listitem><para>First pressing <keycap>Return</keycap> shows the
+ complete solution (at the beginning the button <guibutton>Show More</guibutton>
+is the default button) and makes <guibutton>Do not know</guibutton>
+the default button.</para></listitem>
+
+<listitem><para>Pressing <keycap>Return</keycap> the second time
+will leave this dialog and tell &kvoctrain; that you did not know the
+answer.</para></listitem>
+</itemizedlist></para>
+
+<para>At the moment you must decide for yourself, if you knew the answer
+or failed. Later versions may provide a more or less smart algorithm to
+make this decision from the answer you entered.</para>
+
+<para>If you knew the correct answer, the grade is increased by one
+step. If you did not know it, the grade is reset to level 1 which is worst.</para>
+
+</sect2>
+
+<sect2 id="mu-query-dlg">
+<title>Random query with <guilabel>Multiple Choice</guilabel></title>
+
+<screenshot>
+<screeninfo><guilabel>Multiple Choice</guilabel> query dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="mu-query-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Multiple Choice</guilabel> query dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>This type of query works similar to the previous one. The solution
+is shown together with random other expressions and you have to choose
+one answer from the five provided.</para>
+
+<para>This query works most efficiently if you provide similar solutions on the
+<link linkend="entry2-dlg">according entry dialog pages</link>. Additionally
+<link linkend="entry6-dlg">a false friend</link>
+is added if available.</para>
+
+</sect2>
+
+<sect2 id="verb-query-dlg">
+<title>Query of conjugations</title>
+
+<screenshot>
+<screeninfo><guilabel>Verb Training</guilabel> dialog</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="verb-query-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase><guilabel>Verb Training</guilabel> dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>This dialog appears after starting the query of the verbs with <menuchoice><guimenu>Learning</guimenu>
+<guisubmenu><replaceable>Language Names</replaceable></guisubmenu> <guimenuitem>Verbs</guimenuitem></menuchoice>.</para>
+
+<para>All tenses are queried that have definitions for conjugations. Of
+course you must know all of them for a successful result.</para>
+
+</sect2>
+
+<sect2 id="art-query-dlg">
+<title>Query of articles</title>
+
+<screenshot>
+<screeninfo>Article query dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="art-query-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Article query dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>This dialog appears after starting the query of articles with <menuchoice><guimenu>Learning</guimenu> <guisubmenu><replaceable>Language Names</replaceable></guisubmenu> <guimenuitem>Articles</guimenuitem></menuchoice>.</para>
+<para>In this dialog the article of the noun is queried.</para>
+
+<para>It is important to having selected the correct subtype in the
+<link linkend="entry1-dlg">entry dialog</link>.</para>
+
+</sect2>
+
+<sect2 id="comp-query-dlg">
+<title>Query of comparison forms</title>
+
+<screenshot>
+<screeninfo>Comparison query dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="comp-query-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Comparison query dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>All expressions that contain also
+<link linkend="entry5-dlg">comparison forms</link> are shown. One
+word is chosen randomly and you must complete the remaining two.</para>
+
+</sect2>
+
+<sect2 id="syn-query-dlg">
+<title>Query of synonyms, antonyms, paraphrases and example
+ sentences.</title>
+
+<screenshot>
+<screeninfo>Synonym query dialog screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="syn-query-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Synonym query dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>The queries for the above mentioned additional properties of your
+expression look basically the same for all types.</para>
+
+<para>You are prompted the expression and have to enter the according
+property. Querying by <guilabel>example</guilabel> is a bit different
+since &kvoctrain; takes the expression and replaces it by some dots so
+this is mainly useful when your expression is a single word.</para>
+
+</sect2>
+</sect1>
+
+<sect1 id="stat-dlg">
+<title><guilabel>Document Statistics</guilabel> dialog</title>
+
+<sect2 id="stat1-dlg">
+<title><guilabel>General</guilabel></title>
+
+<screenshot>
+<screeninfo>General document statistics screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="stat1-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>General document statistics</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>On this page you find the most important general information about
+your document:</para>
+
+<itemizedlist>
+<listitem><para>The <guilabel>Filename</guilabel></para></listitem>
+<listitem><para>The <guilabel>Title</guilabel></para></listitem>
+<listitem><para>The name of the <guilabel>Author</guilabel></para></listitem>
+<listitem><para>and the number of <guilabel>Entries</guilabel> and <guilabel>Lessons</guilabel>.</para></listitem>
+</itemizedlist>
+
+</sect2>
+
+<sect2 id="stat2-dlg">
+<title>All languages in the dictionary</title>
+
+<screenshot>
+<screeninfo>Per language statistics screenshot</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="stat2-dlg.png" format="PNG" /></imageobject>
+<textobject><phrase>Per language statistics</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>Depending on the amount of translations your document contains,
+you will have none, one or more additional pages. Each page contains
+two pictures for each lesson describing the amount of entries per grade
+in each lesson.</para>
+
+<para>A click with the &RMB; on one of the pixmaps will
+popup a menu which shows the exact numbers.</para>
+
+</sect2>
+</sect1>
+</chapter>
+
+<chapter id="dictionaries">
+<title>Sharing files and downloading dictionaries</title>
+
+<sect1 id="dictionary">
+<title>Contributing your files to &kvoctrain;</title>
+
+<para>If you have created a kvtml file, please send an email to
+&Anne-Marie.Mahfouf.mail; with the file attached and I will put the file in the <ulink url="http://edu.kde.org/contrib/kvtml.php">contributed kvtml files</ulink> on <ulink url="http://edu.kde.org">the &kde;-Edu website</ulink> so other people will be able to use it.</para>
+
+<para>If you modify existing files or create
+new files based on copyrighted material you must ask the author for
+permission. Even taking literal examples from schoolbooks might be
+problematic! The files must be licensed under a free license, please indicate it in your mail when you send the file.</para>
+
+</sect1>
+
+<sect1 id="new-stuff">
+<title>Downloading and installing existing files</title>
+
+<para>&kvoctrain; is shipped with only two examples files. But you can easily get and install existing files using the <menuchoice><guimenu>File</guimenu> <guimenuitem>Get New Vocabularies...</guimenuitem> </menuchoice> menu, provided you have an Internet connection. The following dialog is then displayed:</para>
+
+<screenshot>
+<screeninfo>Get New Vocabularies... dialog</screeninfo>
+<mediaobject>
+<imageobject><imagedata fileref="get-new-stuff.png" format="PNG" /></imageobject>
+<textobject><phrase>Get New Vocabularies... dialog</phrase></textobject>
+</mediaobject>
+</screenshot>
+
+<para>Choose the file you want to get. The <guibutton>Details</guibutton> button will give you more details about the content of the highlighted file. Click the <guibutton>Install</guibutton> button. The file is then downloaded from its location on the Internet, saved on your hard disk and opened in &kvoctrain; current window.
+</para>
+
+<note><para>The files you download are saved in your home folder in the <filename>Vocabularies</filename> folder.</para></note>
+</sect1>
+
+<sect1 id="other-dict">
+<title>Other dictionaries on the web</title>
+
+<itemizedlist>
+<listitem><para>If you are German an want to learn English
+(or vice versa) you can download the monthly vocabulary
+list provided by the German magazine <ulink url="http://www.spotlight-online.de">Spotlight-Online</ulink>.</para>
+<para>The &kvoctrain; distribution contains an executable called
+<command>spotlight2kvtml</command> to transform those lists
+in kvtml format. The original files come as &Windows; Word DOC-files
+so you have to save them as ANSI-TXT files before starting
+conversion. <application>StarOffice</application> or <application>kword</application>
+can do this job.</para>
+<para><command>spotlight2kvtml</command> needs the 3 parameters
+<parameter>filename</parameter>, <parameter>month</parameter> and
+<parameter>year</parameter> and produces a file in the same folder
+with the same name and the extension <literal role="extension">kvtml</literal>:</para>
+<para><userinput><command>spotlight2kvtml</command>
+<replaceable>0199.txt 01 99</replaceable></userinput></para></listitem>
+
+<listitem>
+<para>Thanks to a contribution by Andreas Neuper you
+can download files from
+<ulink url="http://www.vokabeln.de/files.htm">Langenscheidt</ulink>.
+This is a german site and contains files in several languages.
+This distribution contains his perl script
+<command>langen2kvtml</command> to transform those lists
+in kvtml format.</para>
+
+<para><command>langen2kvtml</command> needs only the original filename as parameter
+and tries to extract as much information as possible from the source file.
+For example is keeps the lesson names, conjugations and articles.</para>
+
+<para>It produces a file in the same folder
+with the same name and the extension <literal role="extension">kvtml</literal>.</para>
+</listitem>
+
+<listitem><para>Files in kvtml format are available at:</para>
+ <itemizedlist>
+<listitem><para>
+ <ulink
+ url="http://edu.kde.org/contrib/kvtml.php">
+ &kde;-Edu Contributed Learning Files</ulink>
+ </para></listitem>
+</itemizedlist>
+</listitem>
+
+<listitem><para>Dictionaries in ascii-format are for example available
+ at:</para>
+ <itemizedlist>
+ <listitem><para>
+ <ulink
+ url="ftp://ftp.gwdg.de/pub/misc/dictionary/english/words.gz">ftp.gwdg.d
+e/pub/misc/dictionary/english/words.gz</ulink> (approx. 1035 kB)
+ </para></listitem>
+ </itemizedlist>
+</listitem>
+
+<listitem><para>Dictionaries from the
+<ulink url="http://www3.futureware.at/kquick.htm">*Quick project</ulink> in
+<quote>CSV</quote> format but encoded in <quote>UTF8</quote> so you should have
+all characters rendered correctly. The files are available from its
+<ulink url="http://www3.futureware.at/1dim.htm">download section</ulink>.
+They are in compressed &Windows; <literal role="extension">.EXE</literal>
+format so you have
+to use <application>unzip</application> to extract the files.</para>
+</listitem>
+
+</itemizedlist>
+
+<para>If you know another source please tell
+<ulink url="mailto:annma@kde.org">me</ulink>
+to include it here.</para>
+</sect1>
+
+<sect1 id="translators">
+<title>Translator applications</title>
+
+<para>If you do not want to learn but just need quick translations of
+expressions in larger dictionaries you might be unhappy with &kvoctrain;
+if your computer doesn't have much memory and MHz. A 150000 entry
+file consumes about 60M and takes ages to load if your system is short of memory.</para>
+
+<para>In this case you might want to try one of the following:</para>
+<itemizedlist>
+<listitem><para>
+<ulink url="http://www.franken.de/users/duffy1/rjakob/">kdsing</ulink>
+ (&kde;).
+</para></listitem>
+
+<listitem><para>
+<ulink
+ url="http://www.tm.informatik.uni-frankfurt.de/~razi/steak/steak.html">
+steak/xsteak</ulink> (console/X).
+</para></listitem>
+
+<listitem><para>
+<ulink
+ url="http://dict.tu-chemnitz.de/">Ding</ulink>
+ (TCL).
+</para></listitem>
+
+</itemizedlist>
+
+</sect1>
+</chapter>
+
+<chapter id="links">
+<title>Interesting links</title>
+
+<sect1 id="similar">
+<title>Similar projects</title>
+
+<para>You might also want to try one of the other vocabulary trainers
+I have found (sorted by the time when I found them):</para>
+<itemizedlist>
+<listitem><para><ulink
+url="http://edu.kde.org/kwordquiz/">&kwordquiz;</ulink> (&kde;)</para></listitem>
+
+<listitem><para><ulink
+url="http://members.tripod.com/~planetphil/svt.html">SVT</ulink>
+(console)</para></listitem>
+</itemizedlist>
+</sect1>
+
+<sect1 id="other-links">
+<title>Other interesting links</title>
+
+<para>Maybe you are interested in the one or the other links I found
+while working on &kvoctrain;.</para>
+<itemizedlist>
+<listitem><para><ulink url="http://czyborra.com/unifont/">&GNU; Unifont
+Projekt</ulink></para></listitem>
+
+<listitem><para><ulink url="http://www.seul.org/edu/projects.html">SEUL
+Educational Projects</ulink></para></listitem>
+
+<listitem><para><ulink url="http://esl.about.com/library/weekly/aa040998.htm">
+Reference and Introduction to Phonetic Symbols</ulink></para></listitem>
+
+<listitem><para><ulink url="http://www2.arts.gla.ac.uk/IPA/ipa.html">
+The International Phonetic Association</ulink></para></listitem>
+
+</itemizedlist>
+
+</sect1>
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="kapp-mainwindow">
+<title>The Main &kvoctrain; Window</title>
+
+<sect2 id="file-menu">
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term>
+<menuchoice><shortcut>
+<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>New</guimenuitem>
+</menuchoice>
+</term>
+<listitem><para><action>Creates</action> a new
+ document.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><shortcut>
+<keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Open...</guimenuitem></menuchoice></term>
+<listitem><para><action>Opens an existing document.</action>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>File</guimenu>
+<guisubmenu>Open Recent...</guisubmenu></menuchoice></term>
+<listitem><para><action>Opens one of the recently opened
+ documents.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Open Example...</guimenuitem></menuchoice></term>
+<listitem><para><action>Opens an example file</action> shipped with &kvoctrain;
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><shortcut>
+<keycombo action="simul">&Ctrl;<keycap>G</keycap></keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Get New Vocabularies...</guimenuitem></menuchoice></term>
+<listitem><para><action>Opens</action> the <guilabel>Get Hot New Stuff</guilabel> dialog to allow you to install new &kde;-Edu vocabulary files via the Internet.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>File</guimenu>
+<guimenuitem>Merge..</guimenuitem></menuchoice></term>
+<listitem><para><action>Merges another vocabulary to the
+ current.</action></para>
+<para>Only those parts of the second vocabulary are merged, that have
+ the same
+<ulink url="http://www.loc.gov/standards/iso639-2/englangn.html">
+ international
+language code</ulink> as your current one.</para>
+<para>So always use the correct codes. This helps you share vocabularies
+with others. &kvoctrain; supports you in this and offers all codes in the
+according <link linkend="settings2-dlg">options page</link>
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut><keycombo
+ action="simul">&Ctrl;<keycap>S</keycap></keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Save</guimenuitem></menuchoice></term>
+<listitem><para><action>Saves the document.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>File</guimenu>
+<guimenuitem>Save As...</guimenuitem></menuchoice></term>
+<listitem><para><action>Saves the document under another
+ name.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+ <term><menuchoice>
+ <guimenu>File</guimenu>
+ <guimenuitem>Save Entries in Query As...</guimenuitem></menuchoice></term>
+ <listitem><para><action>Saves the entries marked in query as a new vocabulary.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut><keycombo
+ action="simul">&Ctrl;<keycap>P</keycap></keycombo></shortcut>
+<guimenu>File</guimenu>
+<guimenuitem>Print...</guimenuitem></menuchoice></term>
+<listitem><para><action>Opens</action> the standard &kde; print dialog</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>File</guimenu>
+<guimenuitem>Quit</guimenuitem></menuchoice></term>
+<listitem><para><action>Exits</action> &kvoctrain;.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="edit-menu">
+<title>The <guimenu>Edit</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut><keycombo action="simul">
+&Ctrl;<keycap>C</keycap></keycombo></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Copy</guimenuitem></menuchoice></term>
+<listitem><para><action>Copies the current row to the
+ clipboard.</action> The entries are separated by a special sequence of
+ characters which can be chosen in the <link
+ linkend="options4-dlg">options dialog</link>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut><keycombo action="simul">
+&Ctrl;<keycap>V</keycap></keycombo></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Paste</guimenuitem></menuchoice></term>
+<listitem><para><action>Pastes from clipboard.</action> The entries are
+ divided by
+the above mentioned <link linkend="cut-n-paste">separator</link>
+character and inserted as a new row with one or more columns. You can
+also <link linkend="options4-dlg">adjust the order</link> in which the
+columns are concatenated before copying all to the clipboard.</para>
+<para>Pasting multiple lines (&eg; from a <literal role="extension">CSV</literal>
+ data base file) will
+ append them all as new rows one after another.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut><keycombo action="simul">
+&Ctrl;<keycap>A</keycap></keycombo></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Select All</guimenuitem></menuchoice></term>
+<listitem><para><action>Marks the whole vocabulary</action> as
+ <quote>selected</quote>
+ for further processing.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<shortcut><keycombo action="simul">&Ctrl;
+&Shift;<keycap>A</keycap></keycombo></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Deselect</guimenuitem></menuchoice></term>
+<listitem><para><action>Removes all multiple selection
+ marks.</action></para></listitem>
+</varlistentry>
+
+
+<varlistentry>
+<term><menuchoice><shortcut>
+<keycombo action="simul">&Ctrl;<keycap>F</keycap></keycombo></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Find...</guimenuitem></menuchoice></term>
+<listitem><para><action>Searches</action> for the clipboard content in the vocabulary file using the search field in the toolbar.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<shortcut><keycap>Insert</keycap></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Append New Entry</guimenuitem></menuchoice></term>
+<listitem><para><action>Appends one or more new expressions.</action>
+ See
+<link linkend="key-insert">Insert key</link> section for more
+information.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice><shortcut>
+<keycombo action="simul">&Ctrl;<keycap>Return</keycap></keycombo></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Edit Selected Area...</guimenuitem></menuchoice></term>
+<listitem><para><action>Edits current expression.</action> See <link
+linkend="key-enter">Enter key</link> section for more
+information.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><shortcut><keycap>Delete</keycap></shortcut>
+<guimenu>Edit</guimenu>
+<guimenuitem>Remove Selected Area</guimenuitem></menuchoice></term>
+<listitem><para><action>Removes selection.</action> See <link
+ linkend="key-delete">Delete
+key</link> for more information.</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<sect2 id="voc-menu">
+<title>The <guimenu>Vocabulary</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guimenuitem>Show Statistics</guimenuitem></menuchoice></term>
+<listitem><para>Invokes the <link linkend="stat-dlg">statistics
+dialog</link> to <action>display the most important facts about your
+vocabulary.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guimenuitem>Assign Lessons...</guimenuitem></menuchoice></term>
+<listitem><para><action>Searches the vocabulary for entries that are
+not yet assigned a lesson.</action> They are randomly assigned new
+lessons.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guimenuitem>Clean Up</guimenuitem></menuchoice></term>
+<listitem><para><action>Searches for entries which are exactly the
+ same</action>
+(original and all translations) and removes all but
+ one.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guisubmenu>Append Language</guisubmenu></menuchoice></term>
+<listitem><para><action>Appends a new column</action> (a new
+ language).</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guisubmenu>Set Language</guisubmenu></menuchoice></term>
+<listitem><para><action>Sets the language code and name for a column</action>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guisubmenu>Remove Language</guisubmenu></menuchoice></term>
+<listitem><para><action>Removes one of the
+ translations.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guimenuitem>Document Properties</guimenuitem></menuchoice></term>
+<listitem><para>Invokes the <link linkend="docprop-dlg">document
+properties dialog</link>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Vocabulary</guimenu>
+<guimenuitem>Language Properties</guimenuitem></menuchoice></term>
+<listitem><para>Invokes the <link linkend="langprop-dlg">language
+properties dialog</link>.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="learn-menu">
+<title>The <guimenu>Learning</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>Learning</guimenu>
+<guisubmenu><replaceable>Language Names</replaceable></guisubmenu>
+</menuchoice></term>
+<listitem><para>Provides a submenu for each language with all the
+query dialogs. Exactly the same as the menu appearing in a <link
+linkend="header-menu">table header button</link>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice>
+<guimenu>Learning</guimenu>
+<guimenuitem>Resume Query</guimenuitem></menuchoice></term>
+<listitem><para><action>Resumes the previous random query if you
+ terminated one
+before.</action> Remaining entries appear with a green check mark.
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Learning</guimenu><guimenuitem>Resume Multiple
+ Choice</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Resumes the previous random query with multiple
+choice.</action></para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+
+<sect2 id="opt-menu">
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Show/Hide Toolbar</guimenuitem></menuchoice></term>
+<listitem><para><action>Toggles the visibility of the toolbar
+buttons.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term>
+<menuchoice><guimenu>Settings</guimenu>
+<guimenuitem>Show/Hide Statusbar</guimenuitem></menuchoice></term>
+<listitem><para><action>Toggles on or off the status line at the
+bottom.</action></para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Shortcuts...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> the keyboard keys you use to access the different actions.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure Toolbars...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Configure</action> the items you want to put in the toolbar
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><menuchoice>
+<guimenu>Settings</guimenu>
+<guimenuitem>Configure &kvoctrain;...</guimenuitem>
+</menuchoice></term>
+<listitem><para><action>Display</action> the &kvoctrain; settings dialog
+</para></listitem>
+</varlistentry>
+
+</variablelist>
+
+</sect2>
+
+<sect2 id="help-menu">
+<title>The <guimenu>Help</guimenu> menu</title>
+
+&help.menu.documentation;
+
+</sect2>
+
+<sect2 id="header-menu">
+<title>Table Header Menu</title>
+
+<para>The following context menu will appear when you keep the
+third button (your original expressions) in the table header
+pressed for about a second.</para>
+
+<variablelist>
+<varlistentry>
+<term><guimenuitem>Create Random Query</guimenuitem></term>
+<listitem><para>Creates a <link linkend="query-dlg">random query</link>
+on this column with all unknown expressions according to your <link
+linkend="thresholds">thresholds</link>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Create Multiple Choice</guimenuitem></term>
+<listitem><para>Creates a <link linkend="mu-query-dlg">random multiple
+choice query</link> on this column with all unknown expressions
+ according to your <link
+ linkend="thresholds">thresholds</link>.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Train Verbs</guimenuitem></term>
+<listitem><para>All of the verbs with its conjugations are
+queried.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Article Training</guimenuitem></term>
+<listitem><para>Queries the articles if the gender of the nouns is
+defined.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Comparison Training</guimenuitem></term>
+<listitem><para>Queries comparison forms.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Synonyms</guimenuitem></term>
+<listitem><para>Queries the synonyms.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Antonyms</guimenuitem></term>
+<listitem><para>Queries the antonyms.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Examples</guimenuitem></term>
+<listitem><para>Queries the examples.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Paraphrase</guimenuitem></term>
+<listitem><para>Queries the paraphrases.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Sort alphabetically</guimenuitem></term>
+<listitem><para>Sorts this row in ascending resp. descending
+order.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Set Language</guimenuitem></term>
+<listitem><para>Chooses a language for this column. If your desired
+language does not yet exists in this menu, you have to add it with the
+<link linkend="settings2-dlg">options dialog</link>.</para></listitem>
+</varlistentry>
+</variablelist>
+
+<para>The following two topics only appear if you keep a header button pressed
+that belongs to a translation.
+</para>
+
+<variablelist>
+<varlistentry>
+<term><guimenuitem>Reset Grades</guimenuitem></term>
+<listitem><para>Resets the properties of all the selected entries to
+their initial state as if you just had appended them.</para>
+<para>If you have chosen a lesson in the appropriate box in the toolbar,
+then only those lesson members are reset. Otherwise all entries are
+affected.</para></listitem>
+</varlistentry>
+
+<varlistentry>
+<term><guimenuitem>Remove Column</guimenuitem></term>
+<listitem><para>Removes this column and all its
+ entries.</para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect2>
+</sect1>
+
+</chapter>
+
+<chapter id="credits-and-license">
+<title>Credits and License</title>
+
+<sect1 id="credits">
+<title>Thanks</title>
+
+<para>&kvoctrain; is my first &GUI; application for &kde;, so I had to
+borrow a lot of code from other applications. The biggest chunks are
+taken from</para>
+<itemizedlist>
+<listitem><para>&klpq; (table functionality in versions up to 0.7)</para></listitem>
+<listitem><para>&kontour; (&XML; reading/writing).</para></listitem>
+<listitem><para>&khexedit; (<quote>about</quote> dialog in versions up to
+0.7).</para></listitem>
+</itemizedlist>
+
+<para>I'd like to thank the following people personally for their
+contribution to &kvoctrain;:</para>
+<itemizedlist>
+<listitem><para>Andrea Marconi for localization to
+ Italian</para></listitem>
+<listitem><para>Hans Kottman for localization to
+ French</para></listitem>
+<listitem><para>Grzegorz Ilczuk for localization to
+ Polish</para></listitem>
+<listitem><para>Eric Bischoff for converting the documentation to
+DocBook</para></listitem>
+</itemizedlist>
+
+<para>I also want to thank all the other unnamed persons, especially the
+whole &kde; team,
+for their help, constructive criticism, suggestions or bug-reports.</para>
+
+</sect1>
+
+<sect1 id="copyright">
+<title>Copyright</title>
+
+<para>&kvoctrain; Program copyright 1999-2003 &Ewald.Arnold;
+&Ewald.Arnold.mail;
+2004-2005 Peter Hedlund <email>peter@peterandlinda.com</email>
+</para>
+
+<para>Documentation copyright 1999-2000 &Ewald.Arnold;
+&Ewald.Arnold.mail;
+2005 &Anne-Marie.Mahfouf;
+&Anne-Marie.Mahfouf.mail;
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL;
+&underGPL;
+
+</sect1>
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="obtaining">
+<title>How to obtain kvoctrain</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="requirements">
+<title>Requirements</title>
+
+<para>In order to successfully compile &kvoctrain;,
+you need the &kde; libraries as well as the &Qt; C++
+library. All required libraries can be found on <ulink
+url="ftp://ftp.kde.org/pub/kde/">ftp.kde.org/pub/kde/</ulink>.</para>
+
+<para>&kvoctrain; is tested with &kde; 3.0 and &Qt; 3.0. It should also
+basically run under &kde; 2.x and &Qt; 2.x if compiled accordingly
+but I cannot promise.</para>
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+</appendix>
+
+&documentation.index;
+
+</book>
diff --git a/doc/kvoctrain/lang1-dlg.png b/doc/kvoctrain/lang1-dlg.png
new file mode 100644
index 00000000..c9a1d84b
--- /dev/null
+++ b/doc/kvoctrain/lang1-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/mainview.png b/doc/kvoctrain/mainview.png
new file mode 100644
index 00000000..e416f03c
--- /dev/null
+++ b/doc/kvoctrain/mainview.png
Binary files differ
diff --git a/doc/kvoctrain/man-spotlight2kvtml.1.docbook b/doc/kvoctrain/man-spotlight2kvtml.1.docbook
new file mode 100644
index 00000000..d6cf7136
--- /dev/null
+++ b/doc/kvoctrain/man-spotlight2kvtml.1.docbook
@@ -0,0 +1,71 @@
+<?xml version="1.0" ?>
+<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
+<!ENTITY % English "INCLUDE">
+]>
+
+<refentry lang="&language;">
+<refentryinfo>
+<author><personname><firstname>Ben</firstname><surname>Burton</surname></personname><email>bab@debian.org</email></author>
+<date>April 7, 2003</date>
+</refentryinfo>
+
+<refmeta>
+<refentrytitle><command>spotlight2kvtml</command></refentrytitle>
+<manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+<refname><command>spotlight2kvtml</command></refname>
+<refpurpose>Convert a Spotlight Online vocabularly list to a &kvoctrain; data file.</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<cmdsynopsis>
+<command>spotlight2kvtml</command>
+
+<group><option><replaceable>spotfile</replaceable> <replaceable>month</replaceable> <replaceable>year</replaceable></option></group>
+<group><option>KDE Generic Options</option></group>
+<group><option>Qt Generic Options</option></group>
+
+</cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+<title>Description</title>
+
+<para><command>spotlight2kvtml</command> is used to convert a
+Spotlight Online vocabulary list to a &kvoctrain; data file (<literal
+role="extension">*.kvtml</literal>).</para>
+
+<para>The given vocabulary list (spotfile) must be in plain text
+format (&ie;, you will need to convert the downloaded RTF or Word
+document into a plain text file). The name of the new &kvoctrain; data
+file will be derived from the given spotfile.</para>
+
+<para>The given month and year will be used in the title and lesson
+names in the new &kvoctrain; data file.</para>
+
+<para>Note that Spotlight Online changes its vocabulary list format
+from time to time, so <command>spotlight2kvtml</command> might be out
+of date and might not behave correctly.</para>
+
+<para>This package is part of the official KDE edutainment module.</para>
+
+</refsect1>
+
+<refsect1>
+<title>See Also</title>
+
+<para>kvoctrain(1), langen2kvtml(1)</para>
+
+</refsect1>
+
+<refsect1>
+<title>Authors</title>
+
+<para><command>spotlight2kvtml</command> was written by &Ewald.Arnold;
+&Ewald.Arnold.mail;.</para> <para>This manual page was prepared by
+<personname><firstname>Ben</firstname><surname>Burton</surname></personname><email>bab@debian.org</email>
+</para> </refsect1>
+
+</refentry>
diff --git a/doc/kvoctrain/mu-query-dlg.png b/doc/kvoctrain/mu-query-dlg.png
new file mode 100644
index 00000000..fbb3dbc9
--- /dev/null
+++ b/doc/kvoctrain/mu-query-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/options1-dlg.png b/doc/kvoctrain/options1-dlg.png
new file mode 100644
index 00000000..f9c73381
--- /dev/null
+++ b/doc/kvoctrain/options1-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/options2-dlg.png b/doc/kvoctrain/options2-dlg.png
new file mode 100644
index 00000000..a2fb463c
--- /dev/null
+++ b/doc/kvoctrain/options2-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/options3-dlg.png b/doc/kvoctrain/options3-dlg.png
new file mode 100644
index 00000000..13c0a34e
--- /dev/null
+++ b/doc/kvoctrain/options3-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/options4-dlg.png b/doc/kvoctrain/options4-dlg.png
new file mode 100644
index 00000000..0001fe4d
--- /dev/null
+++ b/doc/kvoctrain/options4-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/options5-dlg.png b/doc/kvoctrain/options5-dlg.png
new file mode 100644
index 00000000..5013846d
--- /dev/null
+++ b/doc/kvoctrain/options5-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/options6-dlg.png b/doc/kvoctrain/options6-dlg.png
new file mode 100644
index 00000000..52c166e7
--- /dev/null
+++ b/doc/kvoctrain/options6-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/options7-dlg.png b/doc/kvoctrain/options7-dlg.png
new file mode 100644
index 00000000..6f25d8f4
--- /dev/null
+++ b/doc/kvoctrain/options7-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/profiles.png b/doc/kvoctrain/profiles.png
new file mode 100644
index 00000000..ef973f36
--- /dev/null
+++ b/doc/kvoctrain/profiles.png
Binary files differ
diff --git a/doc/kvoctrain/pron-dlg.png b/doc/kvoctrain/pron-dlg.png
new file mode 100644
index 00000000..016eb770
--- /dev/null
+++ b/doc/kvoctrain/pron-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/query-dlg.png b/doc/kvoctrain/query-dlg.png
new file mode 100644
index 00000000..5014fb51
--- /dev/null
+++ b/doc/kvoctrain/query-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/quick-1.png b/doc/kvoctrain/quick-1.png
new file mode 100644
index 00000000..7fe1072a
--- /dev/null
+++ b/doc/kvoctrain/quick-1.png
Binary files differ
diff --git a/doc/kvoctrain/quick-2.png b/doc/kvoctrain/quick-2.png
new file mode 100644
index 00000000..939c61bc
--- /dev/null
+++ b/doc/kvoctrain/quick-2.png
Binary files differ
diff --git a/doc/kvoctrain/quick-3.png b/doc/kvoctrain/quick-3.png
new file mode 100644
index 00000000..1892c8ec
--- /dev/null
+++ b/doc/kvoctrain/quick-3.png
Binary files differ
diff --git a/doc/kvoctrain/quick-4.png b/doc/kvoctrain/quick-4.png
new file mode 100644
index 00000000..39fb4e1e
--- /dev/null
+++ b/doc/kvoctrain/quick-4.png
Binary files differ
diff --git a/doc/kvoctrain/quick-5.png b/doc/kvoctrain/quick-5.png
new file mode 100644
index 00000000..1a9d9547
--- /dev/null
+++ b/doc/kvoctrain/quick-5.png
Binary files differ
diff --git a/doc/kvoctrain/stat1-dlg.png b/doc/kvoctrain/stat1-dlg.png
new file mode 100644
index 00000000..bb926029
--- /dev/null
+++ b/doc/kvoctrain/stat1-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/stat2-dlg.png b/doc/kvoctrain/stat2-dlg.png
new file mode 100644
index 00000000..d0231489
--- /dev/null
+++ b/doc/kvoctrain/stat2-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/syn-query-dlg.png b/doc/kvoctrain/syn-query-dlg.png
new file mode 100644
index 00000000..4015518d
--- /dev/null
+++ b/doc/kvoctrain/syn-query-dlg.png
Binary files differ
diff --git a/doc/kvoctrain/verb-query-dlg.png b/doc/kvoctrain/verb-query-dlg.png
new file mode 100644
index 00000000..2d61a56d
--- /dev/null
+++ b/doc/kvoctrain/verb-query-dlg.png
Binary files differ
diff --git a/doc/kwordquiz/Makefile.am b/doc/kwordquiz/Makefile.am
new file mode 100644
index 00000000..d915949a
--- /dev/null
+++ b/doc/kwordquiz/Makefile.am
@@ -0,0 +1,5 @@
+
+KDE_LANG = en
+KDE_DOCS = AUTO
+
+kde_docs_KDEDOCS = kwq-dlg-configure-characters.png
diff --git a/doc/kwordquiz/index.docbook b/doc/kwordquiz/index.docbook
new file mode 100644
index 00000000..74e57a9b
--- /dev/null
+++ b/doc/kwordquiz/index.docbook
@@ -0,0 +1,1523 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN"
+ "dtd/kdex.dtd" [
+ <!ENTITY kappname "&kwordquiz;">
+ <!ENTITY package "kdeedu">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+]>
+
+<book lang="&language;">
+
+<bookinfo>
+<title>The &kwordquiz; Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Peter</firstname>
+<surname>Hedlund</surname>
+<affiliation>
+<address><email>peter.hedlund@kdemail.net</email></address>
+</affiliation>
+</author>
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+</authorgroup>
+
+
+<copyright>
+ <year>2003</year>
+ <year>2004</year>
+ <year>2005</year>
+ <holder>Peter B. Hedlund</holder>
+</copyright>
+
+<legalnotice>&FDLNotice;</legalnotice>
+
+
+<date>2006-02-24</date>
+<releaseinfo>0.8.1</releaseinfo>
+
+<abstract>
+<para>
+&kwordquiz; is a flashcard and vocabulary learning program for &kde;.
+</para>
+</abstract>
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kdeedu</keyword>
+<keyword>KWordQuiz</keyword>
+<keyword>flashcard</keyword>
+<keyword>vocabulary</keyword>
+<keyword>language</keyword>
+<keyword>education</keyword>
+<keyword>school</keyword>
+<keyword>college</keyword>
+<keyword>university</keyword>
+</keywordset>
+
+</bookinfo>
+
+<chapter id="introduction">
+<title>Introduction</title>
+<para>
+&kwordquiz; is a tool that gives you a powerful way to master new vocabularies. It may be a language or any other kind of terminology.
+</para>
+<sect1 id="easy-to-use">
+<title>Easy to use</title>
+
+<para>
+With &kwordquiz; you build your own vocabulary documents in a simple and intuitive way. The basic layout is a two-column spreadsheet where you type vocabulary entries in one form that you know and in another form that you want to learn. You change the titles of the columns to reflect what you are practicing.
+</para>
+
+<sect2 id="practice-modes">
+<title>Practice modes</title>
+
+<para>Before you start a quiz you select how you want to practice. &kwordquiz; offers five different modes to make practicing more efficient. The different modes make it possible to have the quiz go through your vocabulary in sequential or random order in one or both directions.</para>
+</sect2>
+<sect2 id="quiz-types">
+<title>Quiz types</title>
+
+<para>When you have entered your vocabulary and selected a mode you are ready to start a quiz. The vocabulary document is hidden during the quiz so you cannot cheat. Maybe you want to start with a flashcard session, then you can move on to a multiple choice quiz or do the powerful question and answer quiz. You get instant feedback on correct and incorrect answers and you have the option to repeat any errors, further improving your learning efficiency. If you need a little extra help you can use the hint function.</para>
+</sect2>
+<sect2 id="vocabulary-documents">
+<title>Vocabulary documents</title>
+<para>
+&kwordquiz; can open several types of vocabulary data. Supported are .kvtml used by other &kde; programs such as &kvoctrain;, .wql used by WordQuiz for &Windows;, .csv files with comma-separated text, and .xml.gz files created by Pauker (http://pauker.sourceforge.net). You can automatically combine several documents to one large list if you need to practice for &eg; a final exam.
+</para>
+<para>
+&kwordquiz; can save your vocabulary documents several different formats. The default is the .kvtml format used by other &kde; programs. Other available options are the .wql format used by WordQuiz for &Windows; allowing exchange with &Windows; users, .csv, and .html.
+</para>
+<para>
+You can have several files open at the same time and easily copy or move entries between files.
+</para>
+</sect2>
+</sect1>
+</chapter>
+
+<chapter id="commands">
+<title>Command Reference</title>
+
+<sect1 id="file_menu">
+<title>The <guimenu>File</guimenu> Menu</title>
+
+<variablelist>
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>New</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>New</action> creates a new blank vocabulary document
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Open...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Open</action> one or more existing vocabulary documents. Several documents can be combined to one larger list.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+<!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>File</guimenu>
+ <guimenuitem>Open Recent</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Open</action> a recently used vocabulary document
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>G</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Get New Vocabularies...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Downloads</action> new vocabularies.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Save</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Save</action> the active vocabulary document to disk
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>File</guimenu>
+ <guimenuitem>Save As...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Save</action> the active vocabulary document with a new name
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>P</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Print...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Print</action> the active vocabulary document. &kwordquiz; provides several options for <link linkend="printing">printing</link> your vocabularies.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>W</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Close</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Close</action> the active vocabulary document
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
+ </shortcut>
+ <guimenu>File</guimenu>
+ <guimenuitem>Quit</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Quit</action> &kwordquiz;
+ </para>
+ </listitem>
+ </varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="edit-menu">
+<title>The <guimenu>Edit</guimenu> Menu</title>
+
+<variablelist>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Undo</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Undo</action> the last command. The name of this item will change to reflect what will be undone.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>X</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Cut</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Cut</action> the current selection and place it on the clipboard
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Copy</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Copy</action> the current selection and place it on the clipboard
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>V</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Paste</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Paste</action> the content of the clipboard to the current selection. If only one cell is selected &kwordquiz; will activate smart pasting and calculate the space required for pasting and add rows if necessary.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Clear</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Clear</action> the current selection
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>I</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Insert Row</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Insert</action> a new row at the current selection. If the selection extends over more than one row, an equal number of rows will be inserted.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>K</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Delete Row</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Delete</action> the selected row. If the selection extends over more than one row, all selected rows will be deleted.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>M</keycap></keycombo>
+ </shortcut>
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Mark as Blank</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Mark as Blank</action> marks selected text (or the word where the caret is) as a blank for a <link linkend="fill-in-the-blank">'Fill-in-the-blank'</link> quiz, &ie; it's enclosed in brackets. Only available if <link linkend="dlg-config-editor">Fill-in-the-blank</link> is enabled.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>M</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Edit</guimenu>
+ <guimenuitem>Unmark Blanks</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Unmark Blanks</action> clears previously assigned blanks, &ie; brackets are removed. Only available if <link linkend="dlg-config-editor">Fill-in-the-blank</link> is enabled.
+ </para>
+ </listitem>
+ </varlistentry>
+
+
+</variablelist>
+</sect1>
+
+<sect1 id="go-to-menu">
+<title>The <guimenu>Go to</guimenu> Menu</title>
+
+<variablelist>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul"><keycap>F6</keycap></keycombo>
+ </shortcut>
+ <guimenu>Go to</guimenu>
+ <guimenuitem>Editor</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Activate</action> the vocabulary <link linkend="editor">editor</link>
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul"><keycap>F7</keycap></keycombo>
+ </shortcut>
+ <guimenu>Go to</guimenu>
+ <guimenuitem>Flashcard</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Start</action> a <link linkend="flashcard">flashcard</link> session
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul"><keycap>F8</keycap></keycombo>
+ </shortcut>
+ <guimenu>Go to</guimenu>
+ <guimenuitem>Multiple Choice</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Start</action> a <link linkend="multiple">multiple choice</link> quiz
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul"><keycap>F9</keycap></keycombo>
+ </shortcut>
+ <guimenu>Go to</guimenu>
+ <guimenuitem>Question &amp; Answer</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Start</action> a <link linkend="question-and-answer">question &amp; answer</link> quiz
+ </para>
+ </listitem>
+ </varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="vocabulary-menu">
+<title>The <guimenu>Vocabulary</guimenu> Menu</title>
+
+<variablelist>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>L</keycap></keycombo>
+ </shortcut>
+ <guimenu>Vocabulary</guimenu>
+ <guimenuitem>Column Titles...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Define</action> the titles of the two columns in the vocabulary. Displays a <link linkend="dlg-languages">dialog</link>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>X</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Vocabulary</guimenu>
+ <guimenuitem>Font...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Change</action> the font used to display the vocabulary. If you are in flashcard session the font used to diplay the card will be changed. Displays the standard &kde; font dialog.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <!-- <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>
+ </shortcut>
+ <guimenu>Vocabulary</guimenu>
+ <guimenuitem>Special Characters...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Select</action> a special character for insertion in the vocabulary. Displays a <link linkend="dlg-special-characters">dialog</link>.
+ </para>
+ </listitem>
+ </varlistentry>-->
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>V</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Vocabulary</guimenu>
+ <guimenuitem>Rows/Columns...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Specify</action> the number of rows in the vocabulary, or define the height of selected rows or the width of selected columns. Displays a <link linkend="dlg-rows-columns">dialog</link>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Vocabulary</guimenu>
+ <guimenuitem>Sort...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Sort</action> the vocabulary entries. Displays a <link linkend="dlg-sort">dialog</link>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>I</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Vocabulary</guimenu>
+ <guimenuitem>Shuffle</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Shuffle</action> the vocabulary entries in a random order
+ </para>
+ </listitem>
+ </varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="mode-menu">
+<title>The <guimenu>Mode</guimenu> Menu</title>
+<para>
+The menu provides five different modes for the quiz.</para>
+<para>
+Note that the menu names will change to reflect the column titles of the currently active vocabulary document. The mode must be selected before a quiz is started. The selected mode will apply to Flashcard, Multiple Choice and Question &amp; Answer.
+</para>
+<variablelist>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Mode</guimenu>
+ <guimenuitem>Column 1 -&gt; Column 2 In Order</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ During the quiz you will be given the entries of Column 1 and asked to provide the corresponding Column 2 entries. This will be done in the order the entries appear in the vocabulary document.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Mode</guimenu>
+ <guimenuitem>Column 2 -&gt; Column 1 In Order</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ During the quiz you will be given the entries of Column 2 and asked to provide the corresponding Column 1 entries. This will be done in the order the entries appear in the vocabulary document.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Mode</guimenu>
+ <guimenuitem>Column 1 -&gt; Column 2 Randomly</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ During the quiz you will be given the entries of Column 1 and asked to provide the corresponding Column 2 entries. This will be done in a random order, but each entry will be asked once.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Mode</guimenu>
+ <guimenuitem>Column 2 -&gt; Column 1 Randomly</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ During the quiz you will be given the entries of Column 2 and asked to provide the corresponding Column 1 entries. This will be done in random order, but each entry will be asked once.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <!-- <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
+ </shortcut> -->
+ <guimenu>Mode</guimenu>
+ <guimenuitem>Column 1 &lt;-&gt; Column 2 Randomly</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ During the quiz you will be given an entry of either Column 1 or Column 2 and asked to provide the corresponding entry in the other column. This will be done in a random order for both column and entry. Each possible combination will be asked once.
+ </para>
+ </listitem>
+ </varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="quiz-menu">
+<title>The <guimenu>Quiz</guimenu> Menu</title>
+
+<variablelist>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul"><keycap>Return</keycap></keycombo>
+ </shortcut>
+ <guimenu>Quiz</guimenu>
+ <guimenuitem>Check</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Check</action> if your answer is correct
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul"><keycap>K</keycap></keycombo>
+ </shortcut>
+ <guimenu>Quiz</guimenu>
+ <guimenuitem>I Know</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Count</action> as correct during a flashcard session.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul"><keycap>D</keycap></keycombo>
+ </shortcut>
+ <guimenu>Quiz</guimenu>
+ <guimenuitem>I Do Not Know</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Count</action> as error during a flashcard session. You can later repeat these cards by selecting <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Repeat Errors</guimenuitem></menuchoice>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>H</keycap></keycombo>
+ </shortcut>
+ <guimenu>Quiz</guimenu>
+ <guimenuitem>Hint</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Get</action> the next correct letter during a Question &amp; Answer session.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>R</keycap></keycombo>
+ </shortcut>
+ <guimenu>Quiz</guimenu>
+ <guimenuitem>Restart</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Restart</action> the quiz session from the beginning. Will reset the scores.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <shortcut>
+ <keycombo action="simul">&Ctrl;<keycap>E</keycap></keycombo>
+ </shortcut>
+ <guimenu>Quiz</guimenu>
+ <guimenuitem>Repeat Errors</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Repeat</action> any questions you answered incorrectly. Becomes available once you have answered all questions once.
+ </para>
+ </listitem>
+ </varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="settings-menu">
+<title>The <guimenu>Settings</guimenu> Menu</title>
+
+<variablelist>
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Toolbars</guimenuitem>
+ <guimenuitem>Main Toolbar (KWordQuiz)</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Toggle</action> the Main Toolbar
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Toolbars</guimenuitem>
+ <guimenuitem>Go to (KWordQuiz)</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Toggle</action> the Go to Toolbar
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Toolbars</guimenuitem>
+ <guimenuitem>Quiz (KWordQuiz)</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Toggle</action> the Quiz Toolbar
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Toolbars</guimenuitem>
+ <guimenuitem>Special Characters (KWordQuiz)</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Toggle</action> the Special Characters Toolbar
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Show/Hide Statusbar</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Toggle</action> the Statusbar
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure Shortcuts...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Configure</action> the keyboard keys you use to access the different actions.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure Toolbars...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Configure</action> the items you want to put in the toolbar
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure Notifications...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Configure</action> notifications for certain events in &kwordquiz;
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <menuchoice>
+ <guimenu>Settings</guimenu>
+ <guimenuitem>Configure &kwordquiz;...</guimenuitem>
+ </menuchoice>
+ </term>
+ <listitem>
+ <para>
+ <action>Configure</action> preferences for the vocabulary editor and the quizzes. Displays a <link linkend="dlg-config-editor">dialog</link>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+</variablelist>
+</sect1>
+
+<sect1 id="help-menu">
+<title>The <guimenu>Help</guimenu> Menu</title>
+&help.menu.documentation;
+</sect1>
+</chapter>
+
+<chapter id="editor">
+<title>The Vocabulary Editor</title>
+
+<para>
+The vocabulary document area has the appearance of a spreadsheet-like grid. The grid consists of cells organized in two columns and a number of rows. Each column and row has a header. The column headers are used to specify the titles of the vocabulary document. They can be set by selecting <menuchoice><guimenu>Vocabulary</guimenu><guimenuitem>Column Titles...</guimenuitem></menuchoice>. The row headers number the rows consecutively.
+</para>
+<para>
+You can click in a cell of the grid to make it the active cell. You can select several cells for copying or other editing by dragging over them with the left mouse button down. To select entire rows or columns click in the headers.
+</para>
+
+
+<screenshot>
+ <screeninfo>The Vocabulary Editor</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-editor.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>The Vocabulary Editor</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<para>
+In the document you build a vocabulary of pair-wise entries in the two columns. You can enter text into the active cell simply by starting to type. The cell will now be in edit mode and you can select all or part of the text. You can also edit a cell by double-clicking it or pressing F2 and make changes directly in the cell.
+</para>
+<para>
+When you have finished typing one entry, press the return key and the next cell will automatically become active. Hence, it's easy to quickly type several entries. You can customize this behavior by selecting <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kwordquiz;...</guimenuitem></menuchoice>. When you reach the bottom row of the grid, a new row will be added as you press return, so you can just continue to type. When a new window is created it has 50 rows, but there is really no limit to the number of rows you can have in a document.
+</para>
+</chapter>
+
+<chapter id="flashcard">
+
+<title>Flashcard Session</title>
+
+<para>Select <menuchoice><guimenu>Go to</guimenu><guimenuitem>Flashcard</guimenuitem></menuchoice> to start a flashcard session on the entries of the active vocabulary document. The mode selected in the <guimenu>Mode</guimenu> menu will be used. If you change mode during a session, the session will be restarted.</para>
+
+<para>If you are working with long expressions the window can be resized to make more space available. The font size will also influence how much will fit in the different parts of the window. By selecting <menuchoice><guimenu>Vocabulary</guimenu><guimenuitem>Font</guimenuitem></menuchoice> you can specify the font used for the flashcards.
+</para>
+
+<screenshot>
+ <screeninfo>Flashcard Session</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-flashcard.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Flashcard Session</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Initially the front of the card is displayed. Use <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Check</guimenuitem></menuchoice> to see the other side.
+</para>
+<para>
+To move on to the next card either select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>I Know</guimenuitem></menuchoice> to count the card as correct or <guimenu>Quiz</guimenu><guimenuitem>I Don't Know</guimenuitem> to count the card as incorrect.
+</para>
+<para>
+Select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Repeat Errors</guimenuitem></menuchoice> to repeat the cards you have counted as incorrect.
+</para>
+<para>
+Select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Restart</guimenuitem></menuchoice> to start the session from the beginning again. If you are using a random mode the cards will be reshuffled.
+</para>
+<para>
+The score sections at the bottom of the screen shows the number of cards, the number of cards you have seen, the number of cards counted as correct, and the number counted as incorrect.
+</para>
+
+<tip>
+<para>All items on the <guimenu>Quiz</guimenu> menu are available on the Quiz toolbar that is displayed on the right by default.</para>
+</tip>
+
+</chapter>
+
+<chapter id="multiple">
+
+<title>Multiple Choice Session</title>
+
+<para>
+Select <menuchoice><guimenu>Go to</guimenu><guimenuitem>Multiple Choice</guimenuitem></menuchoice> to start a multiple choice quiz on the entries in the active vocabulary document. The mode selected in the <guimenu>Mode</guimenu> menu will be used. If you change mode during a session, the session will be restarted.
+</para>
+<para>
+If you are working with long expressions the window can be resized to make more room. The font size (selected for the editor) will also influence how much will fit in the different parts of the window.
+</para>
+<para>
+In the example below the user gave an incorrect answer to the previous question. He/she is now about to answer the next question.
+</para>
+
+<screenshot>
+ <screeninfo>Multiple Choice Session</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-multiple.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Multiple Choice Session</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Your choices are shown on the top left. Select the one you think is correct. Use <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Check</guimenuitem></menuchoice> to see if the answer is correct. If you have activated the automatic mode in <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kwordquiz;...</guimenuitem></menuchoice> your selection is checked immediately.
+</para>
+<para>
+The previous question is shown below the current. The answer you gave is also displayed. If you answered incorrectly the correct answer is shown.
+</para>
+<para>
+Select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Repeat Errors</guimenuitem></menuchoice> to repeat the questions you answered incorrectly.
+</para>
+<para>
+Select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Restart</guimenuitem></menuchoice> to start the session from the beginning again. If you are using a random mode the questions will be reshuffled.
+</para>
+<para>
+The score sections at the bottom of the screen shows the number of questions, the number of questions you have answered, the number of correct answers, and the number of incorrect answers.
+</para>
+
+<tip>
+<para>All items on the <guimenu>Quiz</guimenu> menu are available on the Quiz toolbar that is displayed on the right by default.</para>
+</tip>
+</chapter>
+
+
+<chapter id="question-and-answer">
+
+<title>Question &amp; Answer Session</title>
+<para>
+Select <menuchoice><guimenu>Go to</guimenu><guimenuitem>Question &amp; Answer</guimenuitem></menuchoice> to start a question &amp; answer session on the entries in the active vocabulary. The mode selected in the <guimenu>Mode</guimenu> menu will be used. If you change mode during a session, the session will be restarted.
+</para>
+<para>
+If you are working with long expressions the window can be resized to make more room. The font size (selected for the editor) will also influence how much will fit in the different parts of the window.
+</para>
+<para>
+In the example below the user gave a correct answer to the previous question (to see how incorrect answers are handled, see the <link linkend="multiple">Multiple Choice</link> chapter). He/she is now about to answer the next question.
+</para>
+
+<screenshot>
+ <screeninfo>Question &amp; Answer Session</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-qanda.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Question &amp; Answer Session</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Your question is shown on the top left. Type your answer in the edit field. Use <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Check</guimenuitem></menuchoice> or <keycap>Enter</keycap> to see if the answer is correct.
+</para>
+<para>
+The previous question is shown below the current. The answer you gave is also displayed. If you answered incorrectly the correct answer is shown.
+</para>
+<para>
+Select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Hint</guimenuitem></menuchoice> to get the next correct letter of the answer. In <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kwordquiz;...</guimenuitem></menuchoice> you can select that questions where you use the hint function are always counted as incorrect.
+</para>
+<para>
+Select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Repeat Errors</guimenuitem></menuchoice> to repeat the questions you answered incorrectly.
+</para>
+<para>
+Select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Restart</guimenuitem></menuchoice> to start the session from the beginning again. If you are using a random mode the questions will be reshuffled.
+</para>
+<para>
+The score sections at the bottom of the screen shows the number of questions, the number of questions you have answered, the number of correct answers, and the number of incorrect answers.
+</para>
+
+<tip>
+<para>All items on the <guimenu>Quiz</guimenu> menu are available on the Quiz toolbar that is displayed on the right by default.</para>
+</tip>
+</chapter>
+
+<chapter id="fill-in-the-blank">
+<title>Fill-in-the-blank</title>
+
+<para>
+'Fill-in-the-blank' is a powerful way to practice in &kwordquiz;. It is a special kind of question and answer quiz that needs to be described in more detail. In order to use this feature you must turn it on in the <link linkend="dlg-config-editor">configuration dialog</link>.
+</para>
+
+<para>
+Consider the following table. It could be a vocabulary in &kwordquiz;:
+</para>
+
+<informaltable><tgroup cols="3">
+<thead>
+<row>
+<entry>English</entry>
+<entry>German</entry>
+</row>
+</thead>
+
+<tbody>
+<row>
+<entry>1</entry>
+<entry>We own a computer</entry>
+<entry>Wir besitzen einen Computer</entry>
+</row>
+
+<row>
+<entry>2</entry>
+<entry>We own a computer</entry>
+<entry>Wir [besitzen] einen Computer</entry>
+</row>
+
+<row>
+<entry>3</entry>
+<entry>We own a computer</entry>
+<entry>Wir [besitzen einen] Computer</entry>
+</row>
+
+<row>
+<entry>4</entry>
+<entry>We own a computer</entry>
+<entry>Wir [besitzen] einen [Computer]</entry>
+</row>
+</tbody>
+</tgroup>
+</informaltable>
+
+<para>
+The important thing to note is the placement of the brackets. They tell &kwordquiz; how the quiz should be performed.
+</para>
+<para>
+In 1. there are no brackets. Assuming English is the question and German the answer you have to give the entire expression 'Wir besitzen einen Computer' for a correct answer.
+</para>
+<para>
+In 2. &kwordquiz; would display the question but also 'Wir ........ einen Computer'. For a correct answer it is sufficient to write 'besitzen'.
+</para>
+<para>
+3. shows that a blank can consist of more than one word. The correct answer is 'besitzen einen'.
+</para>
+<para>
+In 4. there are two separate blanks. To specify that in the answer you have to write 'besitzen; Computer', i.e separate the blanks with a semicolon in order to get a correct answer.
+</para>
+<para>
+Marked blanks are only of relevance if they appear in the answer. Otherwise the brackets are ignored. Furthermore, brackets have no effect in multiple choice quizzes. To simplify the creation of 'Fill-in-the-blank' vocabularies there are toolbar and menu commands to mark and unmark blanks. Of course you can also just type the brackets. &kwordquiz; checks the syntax. If the text appears in red there is something wrong with the brackets and a quiz cannot be started.
+</para>
+<para>
+The 'Fill-in-the-blank' features can be turned on and off in the Options dialog. Turning them of will make it possible to use fonts that map other characters to the positions of the brackets. It will also speed up performance slightly.
+</para>
+</chapter>
+
+<chapter id="printing">
+<title>Printing</title>
+<para>
+&kwordquiz; provides the ability to print vocabulary documents in several different ways. When selecting <menuchoice><guimenu>File</guimenu><guimenuitem>Print...</guimenuitem></menuchoice> you are presented with the standard &kde; print dialog. In order to get access to the special &kwordquiz; features you need to click on the <guibutton>Options&gt;&gt;</guibutton> to see the Vocabulary Options tab. On this tab you can select to print the document as a vocabulary list (&ie; as displayed in the editor), a vocabulary exam, or as flashcards.
+</para>
+<screenshot>
+ <screeninfo>Vocabulary Printing Options</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-print-type.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Vocabulary Printing Options</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<formalpara>
+<title>Vocabulary list</title>
+<para>The vocabulary will be printed as displayed in the editor. This includes font, row heights, and column widths. Make sure that the columns are narrow enough to fit on the page.</para>
+</formalpara>
+<screenshot>
+ <screeninfo>Print Vocabulary List</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-print-list.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Print Vocabulary List</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<formalpara>
+<title>Vocabulary exam</title>
+<para>The vocabulary will be printed as displayed in the editor, except that the right column will be left empty and a third column for scoring is added. Settings used include font, row heights, and column widths. Make sure that the columns are narrow enough to fit on the page.</para>
+</formalpara>
+<screenshot>
+ <screeninfo>Print Vocabulary Exam</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-print-exam.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Print Vocabulary Exam</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+<formalpara>
+<title>Flashcard</title>
+<para> Two 3" x 5" cards per page. The cards will always be printed in landscape.</para>
+</formalpara>
+<screenshot>
+ <screeninfo>Print Flashcards</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-print-flashcard.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Print Flashcards</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+
+</chapter>
+
+<chapter id="dialogs">
+<title>Dialogs</title>
+<sect1 id="dlg-config-editor">
+<title>Configure Editor</title>
+<screenshot>
+ <screeninfo>Configure Editor</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-configure-editor.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Configure Editor</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+You can configure the behavior of the <keycap>Enter</keycap> key when working in the editor.
+</para>
+<para>
+You can also select if the functions for <link linkend="fill-in-the-blank">Fill-in-the-blank</link> should be activated. Turning them off will speed up performance a little.
+</para>
+<para>
+Select <guibutton>Defaults</guibutton> to restore all settings to predefined defaults. Select <guibutton>Apply</guibutton> to make your changes without closing the dialog. Select <guibutton>OK</guibutton> to make your changes and close the dialog. Select <guibutton>Cancel</guibutton> to close the dialog without making any changes.
+</para>
+</sect1>
+
+<sect1 id="dlg-config-quiz">
+<title>Configure Quiz</title>
+<screenshot>
+ <screeninfo>Configure Quiz</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-configure-quiz.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Configure Quiz</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+For flashcard sessions you can select if the cards should be flipped automatically, and if they should be counted as correct or incorrect. Enter a time delay in seconds for the automatic flipping.
+</para>
+<para>
+For multiple choice sessions you can select if your choice should be checked immediately or if you have to select <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Check</guimenuitem></menuchoice> first.
+</para>
+<para>
+For question &amp; answer sessions you can select if questions where you use <menuchoice><guimenu>Quiz</guimenu><guimenuitem>Hint</guimenuitem></menuchoice> should be counted as incorrect.
+</para>
+<para>
+For all sessions you can select if the scores should be displayed as percent instead of absolute numbers.
+</para>
+<para>
+Select <guibutton>Defaults</guibutton> to restore all settings to predefined defaults. Select <guibutton>Apply</guibutton> to make your changes without closing the dialog. Select <guibutton>OK</guibutton> to make your changes and close the dialog. Select <guibutton>Cancel</guibutton> to close the dialog without making any changes.
+</para>
+
+</sect1>
+
+<sect1 id="dlg-config-appearance">
+<title>Configure Flashcard Appearance</title>
+<screenshot>
+ <screeninfo>Configure Flashcard Appearance</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-configure-appearance.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Configure Flashcard Appearance</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+For flashcard sessions you can select the <guilabel>Font:</guilabel> and the colors of text, card and frames. Click the <guibutton>Flip</guibutton> to switch between the <guilabel>Front</guilabel> and the <guilabel>Back</guilabel> of the cards.
+</para>
+<para>Select <guibutton>Defaults</guibutton> to restore all settings to predefined defaults. Select <guibutton>Apply</guibutton> to make your changes without closing the dialog. Select <guibutton>OK</guibutton> to make your changes and close the dialog. Select <guibutton>Cancel</guibutton> to close the dialog without making any changes.
+</para>
+
+</sect1>
+
+<sect1 id="dlg-config-characters">
+<title>Configure Special Characters</title>
+<screenshot>
+ <screeninfo>Configure Special Characters</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-configure-characters.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Configure Special Characters</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Nine configurable actions are available for insertion of special characters into the vocabulary. Select one of the actions in the list and then click the <guibutton>Character...</guibutton> button to <link linkend="dlg-special-characters">select</link> a character for that action. A larger preview of the current character is displayed.
+</para>
+<para>
+Changing the keyboard shortcut associated with each action can be done by selecting <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure Shortcuts...</guimenuitem></menuchoice>.
+</para>
+
+<para>
+Select <guibutton>Defaults</guibutton> to restore all settings to predefined defaults. Select <guibutton>Apply</guibutton> to make your changes without closing the dialog. Select <guibutton>OK</guibutton> to make your changes and close the dialog. Select <guibutton>Cancel</guibutton> to close the dialog without making any changes.
+</para>
+
+</sect1>
+
+<sect1 id="dlg-languages">
+<title>Column Titles</title>
+<screenshot>
+ <screeninfo>Column Titles</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-languages.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Column Titles</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Use this dialog to define the column titles of the vocabulary. Select <guibutton>OK</guibutton> to make your changes or <guibutton>Cancel</guibutton> to discard any changes.
+</para>
+</sect1>
+
+<sect1 id="dlg-special-characters">
+<title>Special Characters</title>
+<screenshot>
+ <screeninfo>Special Characters</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-characters.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Special Characters</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Use this dialog to select any special character you want to associate with the current special character <link linkend="dlg-config-characters">action</link>.
+</para>
+
+</sect1>
+
+<sect1 id="dlg-rows-columns">
+<title>Rows/Columns</title>
+<screenshot>
+ <screeninfo>Rows/Columns</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-rowscolumns.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Rows/Columns</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Use this dialog to specify the number of rows you want in the vocabulary. You can also adjust the width (in pixels) of the selected columns and the height (in pixels) of the selected rows. Select <guibutton>OK</guibutton> to make your changes or <guibutton>Cancel</guibutton> to discard any changes.
+</para>
+<warning>
+<para>
+Specifying a number of rows lower than what currently is in the vocabulary may lead to loss of data.
+</para>
+</warning>
+
+</sect1>
+
+<sect1 id="dlg-sort">
+<title>Sort</title>
+<screenshot>
+ <screeninfo>Sort</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="kwq-dlg-sort.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>Sort</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot>
+<para>
+Use this dialog to sort the vocabulary alphabetically. You can specify if the sort should be based on the left (French in this example) or right (English in this example) column and if it should be in ascending or descending order. Select <guibutton>OK</guibutton> to do the sort or <guibutton>Cancel</guibutton> to leave the vocabulary unchanged.
+</para>
+</sect1>
+
+</chapter>
+
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+
+ <qandaentry>
+ <question>
+ <para>
+ Can I combine several vocabularies to one.
+ </para>
+ </question>
+ <answer>
+ <para>
+ Yes, when you select <menuchoice><guimenu>File</guimenu><guimenuitem>Open...</guimenuitem></menuchoice> you can highlight more than one file in the dialog. By default they will be opened in separate windows, but if you select the check box <guibutton>Join selected files into one list</guibutton>, then the data in all files will be combined into one new list.
+ </para>
+ </answer>
+ </qandaentry>
+
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<title>Credits and License</title>
+
+<para>
+&kwordquiz;
+</para>
+<para>
+Program copyright 2003-2004 Peter B. Hedlund <email>peter.hedlund@kdemail.net</email>
+</para>
+
+<para>
+Documentation copyright 2003-2004 Peter B. Hedlund <email>peter.hedlund@kdemail.net</email>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove -->
+&underGPL; <!-- GPL License -->
+
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kwordquiz">
+<title>How to obtain &kwordquiz;</title>
+
+&install.intro.documentation;
+
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and installation</title>
+
+&install.compile.documentation;
+
+</sect1>
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes: nil
+sgml-general-insert-case: lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
diff --git a/doc/kwordquiz/kwq-dlg-characters.png b/doc/kwordquiz/kwq-dlg-characters.png
new file mode 100644
index 00000000..9bd0ae0b
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-characters.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-configure-appearance.png b/doc/kwordquiz/kwq-dlg-configure-appearance.png
new file mode 100644
index 00000000..649d6cde
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-configure-appearance.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-configure-characters.png b/doc/kwordquiz/kwq-dlg-configure-characters.png
new file mode 100644
index 00000000..e355e089
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-configure-characters.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-configure-editor.png b/doc/kwordquiz/kwq-dlg-configure-editor.png
new file mode 100644
index 00000000..e137dc3f
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-configure-editor.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-configure-quiz.png b/doc/kwordquiz/kwq-dlg-configure-quiz.png
new file mode 100644
index 00000000..562cc8e5
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-configure-quiz.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-languages.png b/doc/kwordquiz/kwq-dlg-languages.png
new file mode 100644
index 00000000..b29d2fd3
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-languages.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-print-exam.png b/doc/kwordquiz/kwq-dlg-print-exam.png
new file mode 100644
index 00000000..9cb219be
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-print-exam.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-print-flashcard.png b/doc/kwordquiz/kwq-dlg-print-flashcard.png
new file mode 100644
index 00000000..210e977b
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-print-flashcard.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-print-list.png b/doc/kwordquiz/kwq-dlg-print-list.png
new file mode 100644
index 00000000..fbfe58e7
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-print-list.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-print-type.png b/doc/kwordquiz/kwq-dlg-print-type.png
new file mode 100644
index 00000000..c4ce370d
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-print-type.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-rowscolumns.png b/doc/kwordquiz/kwq-dlg-rowscolumns.png
new file mode 100644
index 00000000..40621e7a
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-rowscolumns.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-dlg-sort.png b/doc/kwordquiz/kwq-dlg-sort.png
new file mode 100644
index 00000000..2dd52b57
--- /dev/null
+++ b/doc/kwordquiz/kwq-dlg-sort.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-editor.png b/doc/kwordquiz/kwq-editor.png
new file mode 100644
index 00000000..1fb34c76
--- /dev/null
+++ b/doc/kwordquiz/kwq-editor.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-flashcard.png b/doc/kwordquiz/kwq-flashcard.png
new file mode 100644
index 00000000..7f7a4ee9
--- /dev/null
+++ b/doc/kwordquiz/kwq-flashcard.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-multiple.png b/doc/kwordquiz/kwq-multiple.png
new file mode 100644
index 00000000..b48b8a3f
--- /dev/null
+++ b/doc/kwordquiz/kwq-multiple.png
Binary files differ
diff --git a/doc/kwordquiz/kwq-qanda.png b/doc/kwordquiz/kwq-qanda.png
new file mode 100644
index 00000000..9e1d189d
--- /dev/null
+++ b/doc/kwordquiz/kwq-qanda.png
Binary files differ