summaryrefslogtreecommitdiff
path: root/support/tcltexed
diff options
context:
space:
mode:
Diffstat (limited to 'support/tcltexed')
-rw-r--r--support/tcltexed/INSTALL42
-rw-r--r--support/tcltexed/README16
-rw-r--r--support/tcltexed/bht/RCS/amscd.bht,v32
-rw-r--r--support/tcltexed/bht/RCS/amsfonts.bht,v33
-rw-r--r--support/tcltexed/bht/RCS/amsmath.bht,v66
-rw-r--r--support/tcltexed/bht/RCS/amssymb.bht,v91
-rw-r--r--support/tcltexed/bht/RCS/amsthm.bht,v34
-rw-r--r--support/tcltexed/bht/RCS/epsf.bht,v33
-rw-r--r--support/tcltexed/bht/RCS/graphics.bht,v38
-rw-r--r--support/tcltexed/bht/RCS/latex.bht,v164
-rw-r--r--support/tcltexed/bht/RCS/latex209.bht,v45
-rw-r--r--support/tcltexed/bht/RCS/latex_math.bht,v105
-rw-r--r--support/tcltexed/bht/RCS/latex_other.bht,v77
-rw-r--r--support/tcltexed/bht/RCS/notiz.bht,v42
-rw-r--r--support/tcltexed/bht/RCS/picture.bht,v57
-rw-r--r--support/tcltexed/bht/RCS/tabelle.bht,v41
-rw-r--r--support/tcltexed/bht/amscd.bht8
-rw-r--r--support/tcltexed/bht/amsfonts.bht10
-rw-r--r--support/tcltexed/bht/amsmath.bht43
-rw-r--r--support/tcltexed/bht/amssymb.bht68
-rw-r--r--support/tcltexed/bht/amsthm.bht10
-rw-r--r--support/tcltexed/bht/epsf.bht9
-rw-r--r--support/tcltexed/bht/graphics.bht15
-rw-r--r--support/tcltexed/bht/latex.bht141
-rw-r--r--support/tcltexed/bht/latex209.bht21
-rw-r--r--support/tcltexed/bht/latex_math.bht82
-rw-r--r--support/tcltexed/bht/latex_other.bht54
-rw-r--r--support/tcltexed/bht/notiz.bht18
-rw-r--r--support/tcltexed/bht/picture.bht33
-rw-r--r--support/tcltexed/bht/tabelle.bht17
-rw-r--r--support/tcltexed/bin/RCS/makehelp.tcl,v197
-rw-r--r--support/tcltexed/bin/RCS/makespell.tcl,v311
-rw-r--r--support/tcltexed/bin/RCS/tcltexed.tcl,v2358
-rw-r--r--support/tcltexed/bin/makehelp.tcl79
-rw-r--r--support/tcltexed/bin/makespell.tcl136
-rw-r--r--support/tcltexed/bin/tcltexed.tcl1109
-rw-r--r--support/tcltexed/etc/default.tex7
-rw-r--r--support/tcltexed/etc/tcltexed.ini1
-rw-r--r--support/tcltexed/etc/tcltexed.sp11
-rw-r--r--support/tcltexed/etc/tcltexed_own.sp01
-rw-r--r--support/tcltexed/etc/tcltexed_own.sp11
-rw-r--r--support/tcltexed/etc/umlaut.sty67
-rw-r--r--support/tcltexed/gif/Delta_big.gifbin0 -> 1141 bytes
-rw-r--r--support/tcltexed/gif/Downarrow_big.gifbin0 -> 234 bytes
-rw-r--r--support/tcltexed/gif/Gamma_big.gifbin0 -> 1117 bytes
-rw-r--r--support/tcltexed/gif/Im_big.gifbin0 -> 1211 bytes
-rw-r--r--support/tcltexed/gif/Lambda_big.gifbin0 -> 1157 bytes
-rw-r--r--support/tcltexed/gif/Leftarrow_big.gifbin0 -> 1117 bytes
-rw-r--r--support/tcltexed/gif/Leftrightarrow_big.gifbin0 -> 1163 bytes
-rw-r--r--support/tcltexed/gif/Longleftarrow_big.gifbin0 -> 1269 bytes
-rw-r--r--support/tcltexed/gif/Longleftrightarrow_big.gifbin0 -> 1359 bytes
-rw-r--r--support/tcltexed/gif/Longrightarrow_big.gifbin0 -> 414 bytes
-rw-r--r--support/tcltexed/gif/Omega_big.gifbin0 -> 1219 bytes
-rw-r--r--support/tcltexed/gif/Phi_big.gifbin0 -> 1193 bytes
-rw-r--r--support/tcltexed/gif/Pi_big.gifbin0 -> 1141 bytes
-rw-r--r--support/tcltexed/gif/Re_big.gifbin0 -> 1239 bytes
-rw-r--r--support/tcltexed/gif/Rightarrow_big.gifbin0 -> 239 bytes
-rw-r--r--support/tcltexed/gif/Sigma_big.gifbin0 -> 1177 bytes
-rw-r--r--support/tcltexed/gif/Theta_big.gifbin0 -> 1209 bytes
-rw-r--r--support/tcltexed/gif/Uparrow_big.gifbin0 -> 236 bytes
-rw-r--r--support/tcltexed/gif/Updownarrow_big.gifbin0 -> 355 bytes
-rw-r--r--support/tcltexed/gif/Upsilon_big.gifbin0 -> 1147 bytes
-rw-r--r--support/tcltexed/gif/Xi_big.gifbin0 -> 1139 bytes
-rw-r--r--support/tcltexed/gif/acute.gifbin0 -> 1175 bytes
-rw-r--r--support/tcltexed/gif/aleph.gifbin0 -> 1193 bytes
-rw-r--r--support/tcltexed/gif/alpha.gifbin0 -> 1157 bytes
-rw-r--r--support/tcltexed/gif/amalg.gifbin0 -> 1143 bytes
-rw-r--r--support/tcltexed/gif/angle.gifbin0 -> 1107 bytes
-rw-r--r--support/tcltexed/gif/approx.gifbin0 -> 1141 bytes
-rw-r--r--support/tcltexed/gif/ast.gifbin0 -> 1119 bytes
-rw-r--r--support/tcltexed/gif/asymp.gifbin0 -> 1135 bytes
-rw-r--r--support/tcltexed/gif/atop.gifbin0 -> 1181 bytes
-rw-r--r--support/tcltexed/gif/backslash.gifbin0 -> 1121 bytes
-rw-r--r--support/tcltexed/gif/bar.gifbin0 -> 1162 bytes
-rw-r--r--support/tcltexed/gif/beta.gifbin0 -> 1189 bytes
-rw-r--r--support/tcltexed/gif/bigcirc.gifbin0 -> 1163 bytes
-rw-r--r--support/tcltexed/gif/bigtriangledown.gifbin0 -> 368 bytes
-rw-r--r--support/tcltexed/gif/bigtriangleup.gifbin0 -> 1179 bytes
-rw-r--r--support/tcltexed/gif/bot.gifbin0 -> 177 bytes
-rw-r--r--support/tcltexed/gif/bowtie.gifbin0 -> 1179 bytes
-rw-r--r--support/tcltexed/gif/breve.gifbin0 -> 1185 bytes
-rw-r--r--support/tcltexed/gif/bullet.gifbin0 -> 1095 bytes
-rw-r--r--support/tcltexed/gif/cap.gifbin0 -> 1117 bytes
-rw-r--r--support/tcltexed/gif/cdot.gifbin0 -> 1055 bytes
-rw-r--r--support/tcltexed/gif/cdots.gifbin0 -> 1085 bytes
-rw-r--r--support/tcltexed/gif/check.gifbin0 -> 1159 bytes
-rw-r--r--support/tcltexed/gif/chi.gifbin0 -> 1157 bytes
-rw-r--r--support/tcltexed/gif/choose.gifbin0 -> 1386 bytes
-rw-r--r--support/tcltexed/gif/circ.gifbin0 -> 1109 bytes
-rw-r--r--support/tcltexed/gif/clubsuit.gifbin0 -> 1195 bytes
-rw-r--r--support/tcltexed/gif/cong.gifbin0 -> 1157 bytes
-rw-r--r--support/tcltexed/gif/coprod.gifbin0 -> 1153 bytes
-rw-r--r--support/tcltexed/gif/cup.gifbin0 -> 83 bytes
-rw-r--r--support/tcltexed/gif/dagger.gifbin0 -> 1113 bytes
-rw-r--r--support/tcltexed/gif/dashv.gifbin0 -> 164 bytes
-rw-r--r--support/tcltexed/gif/ddagger.gifbin0 -> 1147 bytes
-rw-r--r--support/tcltexed/gif/ddot.gifbin0 -> 1179 bytes
-rw-r--r--support/tcltexed/gif/ddots.gifbin0 -> 1083 bytes
-rw-r--r--support/tcltexed/gif/delta.gifbin0 -> 1173 bytes
-rw-r--r--support/tcltexed/gif/diamondsuit.gifbin0 -> 1189 bytes
-rw-r--r--support/tcltexed/gif/div.gifbin0 -> 1093 bytes
-rw-r--r--support/tcltexed/gif/dot.gifbin0 -> 1180 bytes
-rw-r--r--support/tcltexed/gif/doteq.gifbin0 -> 1069 bytes
-rw-r--r--support/tcltexed/gif/downarrow.gifbin0 -> 227 bytes
-rw-r--r--support/tcltexed/gif/ell.gifbin0 -> 1147 bytes
-rw-r--r--support/tcltexed/gif/emptyset.gifbin0 -> 1175 bytes
-rw-r--r--support/tcltexed/gif/epsilon.gifbin0 -> 1113 bytes
-rw-r--r--support/tcltexed/gif/equiv.gifbin0 -> 1073 bytes
-rw-r--r--support/tcltexed/gif/eta.gifbin0 -> 1165 bytes
-rw-r--r--support/tcltexed/gif/exists.gifbin0 -> 1107 bytes
-rw-r--r--support/tcltexed/gif/flat.gifbin0 -> 1121 bytes
-rw-r--r--support/tcltexed/gif/forall.gifbin0 -> 1155 bytes
-rw-r--r--support/tcltexed/gif/frac.gifbin0 -> 1209 bytes
-rw-r--r--support/tcltexed/gif/frown.gifbin0 -> 233 bytes
-rw-r--r--support/tcltexed/gif/gamma.gifbin0 -> 1131 bytes
-rw-r--r--support/tcltexed/gif/ge.gifbin0 -> 350 bytes
-rw-r--r--support/tcltexed/gif/gg.gifbin0 -> 593 bytes
-rw-r--r--support/tcltexed/gif/grave.gifbin0 -> 1173 bytes
-rw-r--r--support/tcltexed/gif/hat.gifbin0 -> 1163 bytes
-rw-r--r--support/tcltexed/gif/hbar.gifbin0 -> 1175 bytes
-rw-r--r--support/tcltexed/gif/heartsuit.gifbin0 -> 1181 bytes
-rw-r--r--support/tcltexed/gif/hookleftarrow.gifbin0 -> 1127 bytes
-rw-r--r--support/tcltexed/gif/hookrightarrow.gifbin0 -> 350 bytes
-rw-r--r--support/tcltexed/gif/imath.gifbin0 -> 1111 bytes
-rw-r--r--support/tcltexed/gif/in.gifbin0 -> 246 bytes
-rw-r--r--support/tcltexed/gif/infty.gifbin0 -> 1197 bytes
-rw-r--r--support/tcltexed/gif/int.gifbin0 -> 1113 bytes
-rw-r--r--support/tcltexed/gif/iota.gifbin0 -> 1083 bytes
-rw-r--r--support/tcltexed/gif/jmath.gifbin0 -> 1129 bytes
-rw-r--r--support/tcltexed/gif/kappa.gifbin0 -> 1147 bytes
-rw-r--r--support/tcltexed/gif/lambda.gifbin0 -> 1147 bytes
-rw-r--r--support/tcltexed/gif/lceil.gifbin0 -> 205 bytes
-rw-r--r--support/tcltexed/gif/ldots.gifbin0 -> 1103 bytes
-rw-r--r--support/tcltexed/gif/le.gifbin0 -> 1127 bytes
-rw-r--r--support/tcltexed/gif/leftarrow.gifbin0 -> 1109 bytes
-rw-r--r--support/tcltexed/gif/leftharpoondown.gifbin0 -> 169 bytes
-rw-r--r--support/tcltexed/gif/leftharpoonup.gifbin0 -> 1081 bytes
-rw-r--r--support/tcltexed/gif/leftrightarrow.gifbin0 -> 1159 bytes
-rw-r--r--support/tcltexed/gif/lfloor.gifbin0 -> 1122 bytes
-rw-r--r--support/tcltexed/gif/ll.gifbin0 -> 1215 bytes
-rw-r--r--support/tcltexed/gif/longleftarrow.gifbin0 -> 1275 bytes
-rw-r--r--support/tcltexed/gif/longleftrightarrow.gifbin0 -> 1353 bytes
-rw-r--r--support/tcltexed/gif/longrightarrow.gifbin0 -> 409 bytes
-rw-r--r--support/tcltexed/gif/mapsto.gifbin0 -> 1129 bytes
-rw-r--r--support/tcltexed/gif/masteroff.gifbin0 -> 1088 bytes
-rw-r--r--support/tcltexed/gif/masteron.gifbin0 -> 1464 bytes
-rw-r--r--support/tcltexed/gif/mid.gifbin0 -> 1087 bytes
-rw-r--r--support/tcltexed/gif/models.gifbin0 -> 1109 bytes
-rw-r--r--support/tcltexed/gif/mp.gifbin0 -> 1117 bytes
-rw-r--r--support/tcltexed/gif/mu.gifbin0 -> 1157 bytes
-rw-r--r--support/tcltexed/gif/nabla.gifbin0 -> 1179 bytes
-rw-r--r--support/tcltexed/gif/natural.gifbin0 -> 1109 bytes
-rw-r--r--support/tcltexed/gif/nearrow.gifbin0 -> 1137 bytes
-rw-r--r--support/tcltexed/gif/neg.gifbin0 -> 1051 bytes
-rw-r--r--support/tcltexed/gif/neq.gifbin0 -> 1149 bytes
-rw-r--r--support/tcltexed/gif/ni.gifbin0 -> 1141 bytes
-rw-r--r--support/tcltexed/gif/nu.gifbin0 -> 1127 bytes
-rw-r--r--support/tcltexed/gif/nwarrow.gifbin0 -> 357 bytes
-rw-r--r--support/tcltexed/gif/odot.gifbin0 -> 1179 bytes
-rw-r--r--support/tcltexed/gif/oint.gifbin0 -> 1139 bytes
-rw-r--r--support/tcltexed/gif/omega.gifbin0 -> 1145 bytes
-rw-r--r--support/tcltexed/gif/ominus.gifbin0 -> 1173 bytes
-rw-r--r--support/tcltexed/gif/oplus.gifbin0 -> 1195 bytes
-rw-r--r--support/tcltexed/gif/oslash.gifbin0 -> 1195 bytes
-rw-r--r--support/tcltexed/gif/otimes.gifbin0 -> 1215 bytes
-rw-r--r--support/tcltexed/gif/overbrace.gifbin0 -> 1496 bytes
-rw-r--r--support/tcltexed/gif/overline.gifbin0 -> 1396 bytes
-rw-r--r--support/tcltexed/gif/parallel.gifbin0 -> 1109 bytes
-rw-r--r--support/tcltexed/gif/partial.gifbin0 -> 1189 bytes
-rw-r--r--support/tcltexed/gif/perp.gifbin0 -> 1099 bytes
-rw-r--r--support/tcltexed/gif/phi.gifbin0 -> 1177 bytes
-rw-r--r--support/tcltexed/gif/pi.gifbin0 -> 1135 bytes
-rw-r--r--support/tcltexed/gif/pm.gifbin0 -> 1123 bytes
-rw-r--r--support/tcltexed/gif/prec.gifbin0 -> 1117 bytes
-rw-r--r--support/tcltexed/gif/preceq.gifbin0 -> 1123 bytes
-rw-r--r--support/tcltexed/gif/prime.gifbin0 -> 1085 bytes
-rw-r--r--support/tcltexed/gif/prod.gifbin0 -> 1145 bytes
-rw-r--r--support/tcltexed/gif/propto.gifbin0 -> 1161 bytes
-rw-r--r--support/tcltexed/gif/psi.gifbin0 -> 1181 bytes
-rw-r--r--support/tcltexed/gif/rceil.gifbin0 -> 204 bytes
-rw-r--r--support/tcltexed/gif/rfloor.gifbin0 -> 206 bytes
-rw-r--r--support/tcltexed/gif/rho.gifbin0 -> 1147 bytes
-rw-r--r--support/tcltexed/gif/rhoi.gifbin0 -> 1147 bytes
-rw-r--r--support/tcltexed/gif/rightarrow.gifbin0 -> 234 bytes
-rw-r--r--support/tcltexed/gif/rightharpoondown.gifbin0 -> 168 bytes
-rw-r--r--support/tcltexed/gif/rightharpoonup.gifbin0 -> 170 bytes
-rw-r--r--support/tcltexed/gif/rightleftharpoons.gifbin0 -> 1135 bytes
-rw-r--r--support/tcltexed/gif/searrow.gifbin0 -> 356 bytes
-rw-r--r--support/tcltexed/gif/setminus.gifbin0 -> 1121 bytes
-rw-r--r--support/tcltexed/gif/sharp.gifbin0 -> 1131 bytes
-rw-r--r--support/tcltexed/gif/sigma.gifbin0 -> 1123 bytes
-rw-r--r--support/tcltexed/gif/sim.gifbin0 -> 221 bytes
-rw-r--r--support/tcltexed/gif/simeq.gifbin0 -> 1131 bytes
-rw-r--r--support/tcltexed/gif/slaveoff.gifbin0 -> 791 bytes
-rw-r--r--support/tcltexed/gif/slaveon.gifbin0 -> 1129 bytes
-rw-r--r--support/tcltexed/gif/smile.gifbin0 -> 1107 bytes
-rw-r--r--support/tcltexed/gif/sonder_strich.gifbin0 -> 1105 bytes
-rw-r--r--support/tcltexed/gif/spadesuit.gifbin0 -> 1179 bytes
-rw-r--r--support/tcltexed/gif/sqcap.gifbin0 -> 1087 bytes
-rw-r--r--support/tcltexed/gif/sqcup.gifbin0 -> 175 bytes
-rw-r--r--support/tcltexed/gif/sqrt.gifbin0 -> 1306 bytes
-rw-r--r--support/tcltexed/gif/sqrtn.gifbin0 -> 1339 bytes
-rw-r--r--support/tcltexed/gif/sqsubseteq.gifbin0 -> 1083 bytes
-rw-r--r--support/tcltexed/gif/sqsupseteq.gifbin0 -> 175 bytes
-rw-r--r--support/tcltexed/gif/stackrel.gifbin0 -> 1162 bytes
-rw-r--r--support/tcltexed/gif/subset.gifbin0 -> 80 bytes
-rw-r--r--support/tcltexed/gif/subseteq.gifbin0 -> 1111 bytes
-rw-r--r--support/tcltexed/gif/succ.gifbin0 -> 241 bytes
-rw-r--r--support/tcltexed/gif/succeq.gifbin0 -> 241 bytes
-rw-r--r--support/tcltexed/gif/sum.gifbin0 -> 1161 bytes
-rw-r--r--support/tcltexed/gif/supset.gifbin0 -> 81 bytes
-rw-r--r--support/tcltexed/gif/supseteq.gifbin0 -> 239 bytes
-rw-r--r--support/tcltexed/gif/surd.gifbin0 -> 1165 bytes
-rw-r--r--support/tcltexed/gif/swarrow.gifbin0 -> 354 bytes
-rw-r--r--support/tcltexed/gif/tau.gifbin0 -> 1101 bytes
-rw-r--r--support/tcltexed/gif/theta.gifbin0 -> 1193 bytes
-rw-r--r--support/tcltexed/gif/tilde.gifbin0 -> 1181 bytes
-rw-r--r--support/tcltexed/gif/times.gifbin0 -> 1139 bytes
-rw-r--r--support/tcltexed/gif/top.gifbin0 -> 175 bytes
-rw-r--r--support/tcltexed/gif/triangle.gifbin0 -> 1161 bytes
-rw-r--r--support/tcltexed/gif/underbrace.gifbin0 -> 1523 bytes
-rw-r--r--support/tcltexed/gif/underline.gifbin0 -> 1399 bytes
-rw-r--r--support/tcltexed/gif/uparrow.gifbin0 -> 231 bytes
-rw-r--r--support/tcltexed/gif/updownarrow.gifbin0 -> 350 bytes
-rw-r--r--support/tcltexed/gif/uplus.gifbin0 -> 1159 bytes
-rw-r--r--support/tcltexed/gif/upsilon.gifbin0 -> 1139 bytes
-rw-r--r--support/tcltexed/gif/varepsilon.gifbin0 -> 1123 bytes
-rw-r--r--support/tcltexed/gif/varphi.gifbin0 -> 1153 bytes
-rw-r--r--support/tcltexed/gif/varpi.gifbin0 -> 1171 bytes
-rw-r--r--support/tcltexed/gif/varrho.gifbin0 -> 1143 bytes
-rw-r--r--support/tcltexed/gif/varsigma.gifbin0 -> 1107 bytes
-rw-r--r--support/tcltexed/gif/vartheta.gifbin0 -> 1175 bytes
-rw-r--r--support/tcltexed/gif/vdash.gifbin0 -> 163 bytes
-rw-r--r--support/tcltexed/gif/vec.gifbin0 -> 1194 bytes
-rw-r--r--support/tcltexed/gif/vee.gifbin0 -> 349 bytes
-rw-r--r--support/tcltexed/gif/wedge.gifbin0 -> 1137 bytes
-rw-r--r--support/tcltexed/gif/widehat.gifbin0 -> 1418 bytes
-rw-r--r--support/tcltexed/gif/widetilde.gifbin0 -> 1412 bytes
-rw-r--r--support/tcltexed/gif/wp.gifbin0 -> 1177 bytes
-rw-r--r--support/tcltexed/gif/wr.gifbin0 -> 1107 bytes
-rw-r--r--support/tcltexed/gif/xi.gifbin0 -> 1159 bytes
-rw-r--r--support/tcltexed/gif/zeta.gifbin0 -> 1157 bytes
-rw-r--r--support/tcltexed/gif/{.gifbin0 -> 1341 bytes
-rw-r--r--support/tcltexed/gif/}.gifbin0 -> 235 bytes
-rw-r--r--support/tcltexed/hlp/RCS/index,v25
-rw-r--r--support/tcltexed/hlp/bre/Breaking.txt145
-rw-r--r--support/tcltexed/hlp/bre/Characters.txt31
-rw-r--r--support/tcltexed/hlp/bre/Contents.txt53
-rw-r--r--support/tcltexed/hlp/bre/Counters.txt113
-rw-r--r--support/tcltexed/hlp/bre/Definitions.txt82
-rw-r--r--support/tcltexed/hlp/bre/Document.txt56
-rw-r--r--support/tcltexed/hlp/bre/Environments.txt943
-rw-r--r--support/tcltexed/hlp/bre/Footnotes.txt47
-rw-r--r--support/tcltexed/hlp/bre/Input.txt53
-rw-r--r--support/tcltexed/hlp/bre/Layout.txt36
-rw-r--r--support/tcltexed/hlp/bre/Lengths.txt74
-rw-r--r--support/tcltexed/hlp/bre/Letters.txt133
-rw-r--r--support/tcltexed/hlp/bre/Margin.txt20
-rw-r--r--support/tcltexed/hlp/bre/Math.txt87
-rw-r--r--support/tcltexed/hlp/bre/Modes.txt39
-rw-r--r--support/tcltexed/hlp/bre/Overview.txt68
-rw-r--r--support/tcltexed/hlp/bre/Paragraphs.txt32
-rw-r--r--support/tcltexed/hlp/bre/Parameters.txt484
-rw-r--r--support/tcltexed/hlp/bre/RCS/Breaking.txt,v169
-rw-r--r--support/tcltexed/hlp/bre/RCS/Characters.txt,v55
-rw-r--r--support/tcltexed/hlp/bre/RCS/Contents.txt,v77
-rw-r--r--support/tcltexed/hlp/bre/RCS/Counters.txt,v137
-rw-r--r--support/tcltexed/hlp/bre/RCS/Definitions.txt,v106
-rw-r--r--support/tcltexed/hlp/bre/RCS/Document.txt,v80
-rw-r--r--support/tcltexed/hlp/bre/RCS/Environments.txt,v967
-rw-r--r--support/tcltexed/hlp/bre/RCS/Footnotes.txt,v71
-rw-r--r--support/tcltexed/hlp/bre/RCS/Input.txt,v77
-rw-r--r--support/tcltexed/hlp/bre/RCS/Layout.txt,v60
-rw-r--r--support/tcltexed/hlp/bre/RCS/Lengths.txt,v98
-rw-r--r--support/tcltexed/hlp/bre/RCS/Letters.txt,v157
-rw-r--r--support/tcltexed/hlp/bre/RCS/Margin.txt,v44
-rw-r--r--support/tcltexed/hlp/bre/RCS/Math.txt,v111
-rw-r--r--support/tcltexed/hlp/bre/RCS/Modes.txt,v63
-rw-r--r--support/tcltexed/hlp/bre/RCS/Overview.txt,v92
-rw-r--r--support/tcltexed/hlp/bre/RCS/Paragraphs.txt,v56
-rw-r--r--support/tcltexed/hlp/bre/RCS/Parameters.txt,v508
-rw-r--r--support/tcltexed/hlp/bre/RCS/References.txt,v71
-rw-r--r--support/tcltexed/hlp/bre/RCS/Sectioning.txt,v72
-rw-r--r--support/tcltexed/hlp/bre/RCS/Spaces.txt,v264
-rw-r--r--support/tcltexed/hlp/bre/RCS/Starting.txt,v46
-rw-r--r--support/tcltexed/hlp/bre/RCS/Styles.txt,v140
-rw-r--r--support/tcltexed/hlp/bre/RCS/Terminal.txt,v54
-rw-r--r--support/tcltexed/hlp/bre/RCS/Typefaces.txt,v172
-rw-r--r--support/tcltexed/hlp/bre/RCS/amscd.txt,v64
-rw-r--r--support/tcltexed/hlp/bre/RCS/amsfonts.txt,v45
-rw-r--r--support/tcltexed/hlp/bre/RCS/amsmath.txt,v155
-rw-r--r--support/tcltexed/hlp/bre/RCS/amssymb.txt,v32
-rw-r--r--support/tcltexed/hlp/bre/RCS/amsthm.txt,v61
-rw-r--r--support/tcltexed/hlp/bre/RCS/copyright_hlp.txt,v43
-rw-r--r--support/tcltexed/hlp/bre/RCS/editor_hlp.txt,v226
-rw-r--r--support/tcltexed/hlp/bre/RCS/editort_hlp.txt,v133
-rw-r--r--support/tcltexed/hlp/bre/RCS/epsf.txt,v36
-rw-r--r--support/tcltexed/hlp/bre/RCS/gpl_hlp.txt,v449
-rw-r--r--support/tcltexed/hlp/bre/RCS/readme_hlp.txt,v69
-rw-r--r--support/tcltexed/hlp/bre/RCS/sonder.txt,v38
-rw-r--r--support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt,v162
-rw-r--r--support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt~,v129
-rw-r--r--support/tcltexed/hlp/bre/References.txt47
-rw-r--r--support/tcltexed/hlp/bre/Sectioning.txt48
-rw-r--r--support/tcltexed/hlp/bre/Spaces.txt240
-rw-r--r--support/tcltexed/hlp/bre/Starting.txt22
-rw-r--r--support/tcltexed/hlp/bre/Styles.txt116
-rw-r--r--support/tcltexed/hlp/bre/Terminal.txt30
-rw-r--r--support/tcltexed/hlp/bre/Typefaces.txt148
-rw-r--r--support/tcltexed/hlp/bre/amscd.txt40
-rw-r--r--support/tcltexed/hlp/bre/amsfonts.txt21
-rw-r--r--support/tcltexed/hlp/bre/amsmath.txt131
-rw-r--r--support/tcltexed/hlp/bre/amssymb.txt9
-rw-r--r--support/tcltexed/hlp/bre/amsthm.txt38
-rw-r--r--support/tcltexed/hlp/bre/copyright_hlp.txt19
-rw-r--r--support/tcltexed/hlp/bre/editor_hlp.txt243
-rw-r--r--support/tcltexed/hlp/bre/editort_hlp.txt124
-rw-r--r--support/tcltexed/hlp/bre/epsf.txt12
-rw-r--r--support/tcltexed/hlp/bre/gpl_hlp.txt425
-rw-r--r--support/tcltexed/hlp/bre/readme_hlp.txt51
-rw-r--r--support/tcltexed/hlp/bre/sonder.txt14
-rw-r--r--support/tcltexed/hlp/bre/tcltexed_hlp.txt143
-rw-r--r--support/tcltexed/hlp/eng/Breaking.txt145
-rw-r--r--support/tcltexed/hlp/eng/Characters.txt31
-rw-r--r--support/tcltexed/hlp/eng/Contents.txt53
-rw-r--r--support/tcltexed/hlp/eng/Counters.txt113
-rw-r--r--support/tcltexed/hlp/eng/Definitions.txt82
-rw-r--r--support/tcltexed/hlp/eng/Document.txt56
-rw-r--r--support/tcltexed/hlp/eng/Environments.txt943
-rw-r--r--support/tcltexed/hlp/eng/Footnotes.txt47
-rw-r--r--support/tcltexed/hlp/eng/Input.txt53
-rw-r--r--support/tcltexed/hlp/eng/Layout.txt36
-rw-r--r--support/tcltexed/hlp/eng/Lengths.txt74
-rw-r--r--support/tcltexed/hlp/eng/Letters.txt133
-rw-r--r--support/tcltexed/hlp/eng/Margin.txt20
-rw-r--r--support/tcltexed/hlp/eng/Math.txt87
-rw-r--r--support/tcltexed/hlp/eng/Modes.txt39
-rw-r--r--support/tcltexed/hlp/eng/Overview.txt68
-rw-r--r--support/tcltexed/hlp/eng/Paragraphs.txt32
-rw-r--r--support/tcltexed/hlp/eng/Parameters.txt484
-rw-r--r--support/tcltexed/hlp/eng/RCS/Breaking.txt,v169
-rw-r--r--support/tcltexed/hlp/eng/RCS/Characters.txt,v55
-rw-r--r--support/tcltexed/hlp/eng/RCS/Contents.txt,v77
-rw-r--r--support/tcltexed/hlp/eng/RCS/Counters.txt,v137
-rw-r--r--support/tcltexed/hlp/eng/RCS/Definitions.txt,v106
-rw-r--r--support/tcltexed/hlp/eng/RCS/Document.txt,v80
-rw-r--r--support/tcltexed/hlp/eng/RCS/Environments.txt,v967
-rw-r--r--support/tcltexed/hlp/eng/RCS/Footnotes.txt,v71
-rw-r--r--support/tcltexed/hlp/eng/RCS/Input.txt,v77
-rw-r--r--support/tcltexed/hlp/eng/RCS/Layout.txt,v60
-rw-r--r--support/tcltexed/hlp/eng/RCS/Lengths.txt,v98
-rw-r--r--support/tcltexed/hlp/eng/RCS/Letters.txt,v157
-rw-r--r--support/tcltexed/hlp/eng/RCS/Margin.txt,v44
-rw-r--r--support/tcltexed/hlp/eng/RCS/Math.txt,v111
-rw-r--r--support/tcltexed/hlp/eng/RCS/Modes.txt,v63
-rw-r--r--support/tcltexed/hlp/eng/RCS/Overview.txt,v92
-rw-r--r--support/tcltexed/hlp/eng/RCS/Paragraphs.txt,v56
-rw-r--r--support/tcltexed/hlp/eng/RCS/Parameters.txt,v508
-rw-r--r--support/tcltexed/hlp/eng/RCS/References.txt,v71
-rw-r--r--support/tcltexed/hlp/eng/RCS/Sectioning.txt,v72
-rw-r--r--support/tcltexed/hlp/eng/RCS/Spaces.txt,v264
-rw-r--r--support/tcltexed/hlp/eng/RCS/Starting.txt,v46
-rw-r--r--support/tcltexed/hlp/eng/RCS/Styles.txt,v140
-rw-r--r--support/tcltexed/hlp/eng/RCS/Terminal.txt,v54
-rw-r--r--support/tcltexed/hlp/eng/RCS/Typefaces.txt,v172
-rw-r--r--support/tcltexed/hlp/eng/RCS/amscd.txt,v64
-rw-r--r--support/tcltexed/hlp/eng/RCS/amsfonts.txt,v45
-rw-r--r--support/tcltexed/hlp/eng/RCS/amsmath.txt,v155
-rw-r--r--support/tcltexed/hlp/eng/RCS/amssymb.txt,v32
-rw-r--r--support/tcltexed/hlp/eng/RCS/amsthm.txt,v61
-rw-r--r--support/tcltexed/hlp/eng/RCS/copyright_hlp.txt,v43
-rw-r--r--support/tcltexed/hlp/eng/RCS/editor_hlp.txt,v226
-rw-r--r--support/tcltexed/hlp/eng/RCS/editort_hlp.txt,v133
-rw-r--r--support/tcltexed/hlp/eng/RCS/epsf.txt,v36
-rw-r--r--support/tcltexed/hlp/eng/RCS/gpl_hlp.txt,v449
-rw-r--r--support/tcltexed/hlp/eng/RCS/readme_hlp.txt,v69
-rw-r--r--support/tcltexed/hlp/eng/RCS/sonder.txt,v38
-rw-r--r--support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt,v162
-rw-r--r--support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt~,v129
-rw-r--r--support/tcltexed/hlp/eng/References.txt47
-rw-r--r--support/tcltexed/hlp/eng/Sectioning.txt48
-rw-r--r--support/tcltexed/hlp/eng/Spaces.txt240
-rw-r--r--support/tcltexed/hlp/eng/Starting.txt22
-rw-r--r--support/tcltexed/hlp/eng/Styles.txt116
-rw-r--r--support/tcltexed/hlp/eng/Terminal.txt30
-rw-r--r--support/tcltexed/hlp/eng/Typefaces.txt148
-rw-r--r--support/tcltexed/hlp/eng/amscd.txt40
-rw-r--r--support/tcltexed/hlp/eng/amsfonts.txt21
-rw-r--r--support/tcltexed/hlp/eng/amsmath.txt131
-rw-r--r--support/tcltexed/hlp/eng/amssymb.txt9
-rw-r--r--support/tcltexed/hlp/eng/amsthm.txt38
-rw-r--r--support/tcltexed/hlp/eng/copyright_hlp.txt19
-rw-r--r--support/tcltexed/hlp/eng/editor_hlp.txt185
-rw-r--r--support/tcltexed/hlp/eng/editort_hlp.txt110
-rw-r--r--support/tcltexed/hlp/eng/epsf.txt12
-rw-r--r--support/tcltexed/hlp/eng/gpl_hlp.txt425
-rw-r--r--support/tcltexed/hlp/eng/readme_hlp.txt45
-rw-r--r--support/tcltexed/hlp/eng/sonder.txt14
-rw-r--r--support/tcltexed/hlp/eng/tcltexed_hlp.txt116
-rw-r--r--support/tcltexed/hlp/ger/RCS/Seitenformat.txt,v86
-rw-r--r--support/tcltexed/hlp/ger/RCS/amscd.txt,v64
-rw-r--r--support/tcltexed/hlp/ger/RCS/amsfonts.txt,v48
-rw-r--r--support/tcltexed/hlp/ger/RCS/amsmath.txt,v162
-rw-r--r--support/tcltexed/hlp/ger/RCS/amssymb.txt,v31
-rw-r--r--support/tcltexed/hlp/ger/RCS/amsthm.txt,v60
-rw-r--r--support/tcltexed/hlp/ger/RCS/begin.txt,v84
-rw-r--r--support/tcltexed/hlp/ger/RCS/bezug.txt,v55
-rw-r--r--support/tcltexed/hlp/ger/RCS/copyright_hlp.txt,v43
-rw-r--r--support/tcltexed/hlp/ger/RCS/counter.txt,v105
-rw-r--r--support/tcltexed/hlp/ger/RCS/documentclass.txt,v58
-rw-r--r--support/tcltexed/hlp/ger/RCS/editor_hlp.txt,v236
-rw-r--r--support/tcltexed/hlp/ger/RCS/editort_hlp.txt,v141
-rw-r--r--support/tcltexed/hlp/ger/RCS/epsf.txt,v36
-rw-r--r--support/tcltexed/hlp/ger/RCS/format.txt,v223
-rw-r--r--support/tcltexed/hlp/ger/RCS/gleit.txt,v72
-rw-r--r--support/tcltexed/hlp/ger/RCS/gpl_hlp.txt,v449
-rw-r--r--support/tcltexed/hlp/ger/RCS/graphics.txt,v94
-rw-r--r--support/tcltexed/hlp/ger/RCS/graphicx.txt,v115
-rw-r--r--support/tcltexed/hlp/ger/RCS/if.txt,v47
-rw-r--r--support/tcltexed/hlp/ger/RCS/index.txt,v148
-rw-r--r--support/tcltexed/hlp/ger/RCS/input.txt,v61
-rw-r--r--support/tcltexed/hlp/ger/RCS/latexbox.txt,v82
-rw-r--r--support/tcltexed/hlp/ger/RCS/math.txt,v182
-rw-r--r--support/tcltexed/hlp/ger/RCS/notiz.txt,v56
-rw-r--r--support/tcltexed/hlp/ger/RCS/pagenumbering.txt,v34
-rw-r--r--support/tcltexed/hlp/ger/RCS/pagestyle.txt,v38
-rw-r--r--support/tcltexed/hlp/ger/RCS/picture.txt,v116
-rw-r--r--support/tcltexed/hlp/ger/RCS/readme_hlp.txt,v66
-rw-r--r--support/tcltexed/hlp/ger/RCS/sonder.txt,v45
-rw-r--r--support/tcltexed/hlp/ger/RCS/tabbing.txt,v38
-rw-r--r--support/tcltexed/hlp/ger/RCS/tabelle.txt,v95
-rw-r--r--support/tcltexed/hlp/ger/RCS/tcltexed_hlp.txt,v172
-rw-r--r--support/tcltexed/hlp/ger/RCS/titlepage.txt,v36
-rw-r--r--support/tcltexed/hlp/ger/RCS/usepackage.txt,v46
-rw-r--r--support/tcltexed/hlp/ger/RCS/verbatim.txt,v39
-rw-r--r--support/tcltexed/hlp/ger/Seitenformat.txt62
-rw-r--r--support/tcltexed/hlp/ger/amscd.txt40
-rw-r--r--support/tcltexed/hlp/ger/amsfonts.txt24
-rw-r--r--support/tcltexed/hlp/ger/amsmath.txt138
-rw-r--r--support/tcltexed/hlp/ger/amssymb.txt8
-rw-r--r--support/tcltexed/hlp/ger/amsthm.txt37
-rw-r--r--support/tcltexed/hlp/ger/begin.txt60
-rw-r--r--support/tcltexed/hlp/ger/bezug.txt32
-rw-r--r--support/tcltexed/hlp/ger/copyright_hlp.txt19
-rw-r--r--support/tcltexed/hlp/ger/counter.txt81
-rw-r--r--support/tcltexed/hlp/ger/documentclass.txt34
-rw-r--r--support/tcltexed/hlp/ger/editor_hlp.txt196
-rw-r--r--support/tcltexed/hlp/ger/editort_hlp.txt118
-rw-r--r--support/tcltexed/hlp/ger/epsf.txt13
-rw-r--r--support/tcltexed/hlp/ger/format.txt199
-rw-r--r--support/tcltexed/hlp/ger/gleit.txt49
-rw-r--r--support/tcltexed/hlp/ger/gpl_hlp.txt425
-rw-r--r--support/tcltexed/hlp/ger/graphics.txt70
-rw-r--r--support/tcltexed/hlp/ger/graphicx.txt91
-rw-r--r--support/tcltexed/hlp/ger/if.txt23
-rw-r--r--support/tcltexed/hlp/ger/index.txt124
-rw-r--r--support/tcltexed/hlp/ger/input.txt37
-rw-r--r--support/tcltexed/hlp/ger/latexbox.txt58
-rw-r--r--support/tcltexed/hlp/ger/math.txt158
-rw-r--r--support/tcltexed/hlp/ger/notiz.txt32
-rw-r--r--support/tcltexed/hlp/ger/pagenumbering.txt11
-rw-r--r--support/tcltexed/hlp/ger/pagestyle.txt14
-rw-r--r--support/tcltexed/hlp/ger/picture.txt92
-rw-r--r--support/tcltexed/hlp/ger/readme_hlp.txt43
-rw-r--r--support/tcltexed/hlp/ger/sonder.txt22
-rw-r--r--support/tcltexed/hlp/ger/tabbing.txt15
-rw-r--r--support/tcltexed/hlp/ger/tabelle.txt72
-rw-r--r--support/tcltexed/hlp/ger/tcltexed_hlp.txt124
-rw-r--r--support/tcltexed/hlp/ger/titlepage.txt12
-rw-r--r--support/tcltexed/hlp/ger/usepackage.txt22
-rw-r--r--support/tcltexed/hlp/ger/verbatim.txt16
-rw-r--r--support/tcltexed/hlp/index1
-rw-r--r--support/tcltexed/lib/RCS/arg.tcl,v245
-rw-r--r--support/tcltexed/lib/RCS/backslash.tcl,v173
-rw-r--r--support/tcltexed/lib/RCS/bindings.tcl,v609
-rw-r--r--support/tcltexed/lib/RCS/color.tcl,v151
-rw-r--r--support/tcltexed/lib/RCS/complition.tcl,v219
-rw-r--r--support/tcltexed/lib/RCS/events.tcl,v65
-rw-r--r--support/tcltexed/lib/RCS/file.tcl,v450
-rw-r--r--support/tcltexed/lib/RCS/help.tcl,v407
-rw-r--r--support/tcltexed/lib/RCS/helpmanual.tcl,v480
-rw-r--r--support/tcltexed/lib/RCS/linebreak.tcl,v206
-rw-r--r--support/tcltexed/lib/RCS/options.tcl,v164
-rw-r--r--support/tcltexed/lib/RCS/search.tcl,v372
-rw-r--r--support/tcltexed/lib/RCS/spelling.tcl,v229
-rw-r--r--support/tcltexed/lib/RCS/syntax.tcl,v147
-rw-r--r--support/tcltexed/lib/RCS/translate0.tcl,v332
-rw-r--r--support/tcltexed/lib/RCS/translate1.tcl,v361
-rw-r--r--support/tcltexed/lib/RCS/translate2.tcl,v170
-rw-r--r--support/tcltexed/lib/RCS/translate3.tcl,v143
-rw-r--r--support/tcltexed/lib/RCS/umlaut.tcl,v130
-rw-r--r--support/tcltexed/lib/RCS/undo.tcl,v311
-rw-r--r--support/tcltexed/lib/arg.tcl79
-rw-r--r--support/tcltexed/lib/backslash.tcl67
-rw-r--r--support/tcltexed/lib/bindings.tcl273
-rw-r--r--support/tcltexed/lib/color.tcl56
-rw-r--r--support/tcltexed/lib/complition.tcl90
-rw-r--r--support/tcltexed/lib/events.tcl13
-rw-r--r--support/tcltexed/lib/file.tcl193
-rw-r--r--support/tcltexed/lib/help.tcl185
-rw-r--r--support/tcltexed/lib/helpmanual.tcl210
-rw-r--r--support/tcltexed/lib/linebreak.tcl69
-rw-r--r--support/tcltexed/lib/menu/Akzente.itm16
-rw-r--r--support/tcltexed/lib/menu/Alphabet.itm15
-rw-r--r--support/tcltexed/lib/menu/Document.itm33
-rw-r--r--support/tcltexed/lib/menu/Funktionen.itm15
-rw-r--r--support/tcltexed/lib/menu/Gliederung.itm21
-rw-r--r--support/tcltexed/lib/menu/Grundbefehle.itm11
-rw-r--r--support/tcltexed/lib/menu/Operatoren.itm11
-rw-r--r--support/tcltexed/lib/menu/Pfeile.itm19
-rw-r--r--support/tcltexed/lib/menu/RCS/Akzente.itm,v58
-rw-r--r--support/tcltexed/lib/menu/RCS/Alphabet.itm,v57
-rw-r--r--support/tcltexed/lib/menu/RCS/Document.itm,v84
-rw-r--r--support/tcltexed/lib/menu/RCS/Funktionen.itm,v57
-rw-r--r--support/tcltexed/lib/menu/RCS/Gliederung.itm,v69
-rw-r--r--support/tcltexed/lib/menu/RCS/Grundbefehle.itm,v53
-rw-r--r--support/tcltexed/lib/menu/RCS/Operatoren.itm,v53
-rw-r--r--support/tcltexed/lib/menu/RCS/Pfeile.itm,v61
-rw-r--r--support/tcltexed/lib/menu/RCS/Schrift.itm,v88
-rw-r--r--support/tcltexed/lib/menu/RCS/Symbole.itm,v61
-rw-r--r--support/tcltexed/lib/menu/RCS/Umgebung.itm,v53
-rw-r--r--support/tcltexed/lib/menu/RCS/menu,v47
-rw-r--r--support/tcltexed/lib/menu/Schrift.itm37
-rw-r--r--support/tcltexed/lib/menu/Symbole.itm19
-rw-r--r--support/tcltexed/lib/menu/Umgebung.itm11
-rw-r--r--support/tcltexed/lib/menu/menu6
-rw-r--r--support/tcltexed/lib/options.tcl49
-rw-r--r--support/tcltexed/lib/search.tcl158
-rw-r--r--support/tcltexed/lib/spelling.tcl95
-rw-r--r--support/tcltexed/lib/syntax.tcl54
-rw-r--r--support/tcltexed/lib/translate0.tcl116
-rw-r--r--support/tcltexed/lib/translate1.tcl118
-rw-r--r--support/tcltexed/lib/translate2.tcl116
-rw-r--r--support/tcltexed/lib/translate3.tcl118
-rw-r--r--support/tcltexed/lib/umlaut.tcl37
-rw-r--r--support/tcltexed/lib/undo.tcl129
536 files changed, 39824 insertions, 0 deletions
diff --git a/support/tcltexed/INSTALL b/support/tcltexed/INSTALL
new file mode 100644
index 0000000000..2a7f6f7a2a
--- /dev/null
+++ b/support/tcltexed/INSTALL
@@ -0,0 +1,42 @@
+################################################################
+# Recommended extern programms:
+tcl 8.x
+tk 8.x
+################################################################
+# If you wanna use latex you should have latex ;-)
+latex2e
+ with packets babel.sty amsmath.sty amsfonts.sty amscd.sty
+ amssymb.sty grafics.sty graficx.sty
+ (umlaut.sty for useage of ae oe ue, you will find an version
+ of this file under ./etc/ , to make use of this version you have
+ to place it in the path of latex [which one I don't know])
+# for Windows NT or 95 or 97 MikTeX is a good joice
+
+makeindex (belongs to latex2e distribution)
+xdvi (unix) or Yap if you use MikTeX
+dvips
+ghostview & ghostscript
+-------------------------------------------------------------------
+tcltexed version 2.8 | 02. Nov 2006 | Martin Strauss
+Copyright (C) 2000 - Martin Strauss -
+Usage under the terms of Gnu General Public License.
+
+The file bin/tcltexed.tcl should be executable
+
+You must edit the first part of the file tcltexed.tcl
+ Control that the path to the tcl/tk interpreter "wish" is correkt
+ (first line of the file) (unix and linux only)
+
+ If it does not find it's path by itself set the basepath variable on
+ the path you used as base of your installation of this program.
+
+ Control the path to the extern progams (latex, xdvi [any viewer for dvi]
+ dvips, ghostview [any viewer for postscript format], makeindex)
+
+-------------------------------------------------------------------
+
+Further description for usage, etc., is implemented in Tcltexed self.
+
+-------------------------------------------------------------------
+Changes since 2.7:
+ thanx to Aaron Mueller it now works under tcl/tk 8.4
diff --git a/support/tcltexed/README b/support/tcltexed/README
new file mode 100644
index 0000000000..9a411f4b1f
--- /dev/null
+++ b/support/tcltexed/README
@@ -0,0 +1,16 @@
+date:
+Wed Aug 16 11:57:49 CEST 2000
+
+description:
+TclTexEd is an editor written in the scripting language Tcl/Tk
+and is highly specialized on writing LaTeX documents.
+
+compatibility:
+Works both on unix and windows if a Tcl/Tk interpreter (>8.0) is installed.
+
+Licensing terms:
+GPL ... GNU General Public Licence
+
+Author:
+Martin Strau\ss
+mys@faveve.uni-stuttgart.de
diff --git a/support/tcltexed/bht/RCS/amscd.bht,v b/support/tcltexed/bht/RCS/amscd.bht,v
new file mode 100644
index 0000000000..ea5af04647
--- /dev/null
+++ b/support/tcltexed/bht/RCS/amscd.bht,v
@@ -0,0 +1,32 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amscd "\\usepackage{amscd}\n" amscd 0
+
+I CD "\\begin{CD}\n\\end{CD}\n" CD 9
+@
diff --git a/support/tcltexed/bht/RCS/amsfonts.bht,v b/support/tcltexed/bht/RCS/amsfonts.bht,v
new file mode 100644
index 0000000000..69b54d8f13
--- /dev/null
+++ b/support/tcltexed/bht/RCS/amsfonts.bht,v
@@ -0,0 +1,33 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amsfonts "\\usepackage{amsfonts}\n" amsfonts 0
+
+I mathbb "\\mathbb{}" mathbb 1
+I mathfrak "\\mathfrak{}" mathfrak 1
+I boldsymbol "\\boldsymbol{}" boldsymbol 1@
diff --git a/support/tcltexed/bht/RCS/amsmath.bht,v b/support/tcltexed/bht/RCS/amsmath.bht,v
new file mode 100644
index 0000000000..655a9ee2ac
--- /dev/null
+++ b/support/tcltexed/bht/RCS/amsmath.bht,v
@@ -0,0 +1,66 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amsmath "\\usepackage{amsmath}\n" amsmath 0
+
+# Formelunterstruktur
+I split "\\begin{split}\n&=\\\\\n&=\n\\end{split}\n" split 20
+I multline "\\begin{multline}\n\\\\\n\n\\end{multline}\n" multline 19
+I gather "\\begin{gather}\n\\\\\n\n\\end{gather}\n" gather 17
+I align "\\begin{align}\n&= &=\\\\\n&= &=\n\\end{align}\n" align 26
+I subequation "\\begin{subequation}\n\n\\end{subequation}\n" subequation 19
+I intertext "\\intertext{}\n" intertext 2
+
+# Matrizen
+I matrix "\\begin{matrix} & & \\\\\n & & \\\\\n & & \\end{matrix}\n" matrix 39
+I pmatrix "\\begin{pmatrix} & & \\\\\n & & \\\\\n & & \\end{pmatrix}\n" pmatrix 40
+I bmatrix "\\begin{bmatrix} & & \\\\\n & & \\\\\n & & \\end{bmatrix}\n" bmatrix 40
+I vmatrix "\\begin{vmatrix} & & \\\\\n & & \\\\\n & & \\end{vmatrix}\n" vmatrix 40
+I Vmatrix "\\begin{Vmatrix} & & \\\\\n & & \\\\\n & & \\end{Vmatrix}\n" Vmatrix 40
+I cases "\\begin{cases} & \\\\\n & \\\\\n & \\end{cases}\n" cases 29
+
+# Klammern
+I bigl "\\bigl" bigl 0
+I bigr "\\bigr" bigr 0
+I Bigl "\\Bigl" Bigl 0
+I Bigr "\\Bigr" Bigr 0
+I biggl "\\biggl" biggl 0
+I biggr "\\biggr" biggr 0
+I Biggl "\\Biggl" Biggl 0
+I Biggr "\\Biggr" Biggr 0
+
+# Operatoren
+I substack "\\substack{}" substack 1
+I sideset "\\sideset{}{}" sideset 3
+I boxed "\\boxed{}" boxed 1
+I cfrac "\\cfrac{}{}" cfrac 3
+I xleftarrow "\\xleftarrow[]{}" xleftarrow 3
+I xrightarrow "\\xrightarrow[]{}" xrightarrow 3
+
+#
+I DeclareMathOperator "\\DeclareMathOperator{}{}\n" DeclareMathOperator 4@
diff --git a/support/tcltexed/bht/RCS/amssymb.bht,v b/support/tcltexed/bht/RCS/amssymb.bht,v
new file mode 100644
index 0000000000..74e48e3479
--- /dev/null
+++ b/support/tcltexed/bht/RCS/amssymb.bht,v
@@ -0,0 +1,91 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amssymb "\\usepackage{amssymb}\n" amssymb 0
+
+set LISTE [list \
+dotplus ltimes rtims smallsetminus barwedge boxminus divideontimes\
+curlywedge circledast intercal veebar\
+boxtimes leftthreetimes curlyvee\
+circledcirc rtimes doublebarwedge boxplus\
+rightthreetimes circleddash centerdot\
+checkmark maltese yen ulcorner urcorner\
+llcorner lrcorner dashrightarrow dashleftarrow\
+digamma varkappa beth gimel daleth hslash vartriangle\
+triangledown square lozenge backprime varnothing\
+blacktriangle blacktriangledown blacksquare blacklozenge\
+circledS bigstar sphericalangle measureangle nexists\
+mho complement eth diagup diagdown\
+leqq geqq leqslant gepslant eqslantless eqslantgtr\
+lesssim gtrsim lessapprox gtrapprox approxeq lessdot\
+gtrdot lll ggg lessgtr gtrless lesseqqless\
+eqcirc risingdotseq circeq fallingdotseq triangleq\
+backsim thicksim backsimeq thickapprox subseteqq supseteqq\
+sqsubset sqsupset preccurlyeq succurlyeq\
+curclyeqprec curlyeqsucc precsim succsim precapprox succapprox\
+vartriangleleft vartriangleright trianglelefteq\
+trianglerighteq smallsmile smallfrown\
+shortmid shartparallel bumpeq between pitchfork\
+varpropto backepsilon blacktriangleleft blacktriangleright\
+therefore because\
+leftleftarrows rightrightarrows leftrightarrows\
+rightleftarrows\
+twoheadleftarrow twoheadrightarrow leftarrowtail\
+rightarrowtail looparrowleft looparrowright\
+curvearrowleft\
+curvearrowright circlearrowleft circlearrowright\
+upuparrows\
+downdownarrows upharpoonleft upharpoonright\
+downharpoonleft downharpoonright multimap\
+leftrightsquigarrow rightsquigarrow nleftarrow\
+nrightarrow\
+nleftrightarrow\
+nless ngtr nleq ngeq nleqslant ngeqslant\
+nleqq ngeqq lneq gneq lneqq gneqq\
+lvertneqq gvertneqq lnsim gnsim lnapprox gnapprox\
+nprec nsucc npreceq nsucceq precneqq succneqq\
+precnsim succnsim precnapprox succnapprox nsim ncong\
+nshartmid nshortparallel nmid nparallel nvdash nvDash\
+ntriangleleft ntriangleright ntrianglelefteq ntrianglerighteq\
+nsubseteq nsupseteq nsubseteqq nsupseteqq subsetneq supsetneq\
+varsubsetneq varsupsetneq subsetneqq supsetneqq varsubsetneqq varsupsetneqq]
+foreach x $LISTE {I $x "\\$x" $x 0}
+
+set LISTE [list Finv Game Bbbk Subset Supset Vvdash Bumpeq Lsh Rsh nLeftrightarrow\
+Cap Cup Doteq Vdash Lleftarrow Rrightarrow]
+set big _big
+foreach x $LISTE {I $x "\\$x" $x$big 0}
+
+set LISTE [list vDash nVdash nLeftarrow nRightarrow]
+set big _big2
+foreach x $LISTE {I $x "\\$x" $x$big 0}
+unset big
+
+I nVDash "\\nVDash" nvdash_big23 0
+I circledR "\\circledR" circledR_big8 0
+unset LISTE@
diff --git a/support/tcltexed/bht/RCS/amsthm.bht,v b/support/tcltexed/bht/RCS/amsthm.bht,v
new file mode 100644
index 0000000000..93d30acbeb
--- /dev/null
+++ b/support/tcltexed/bht/RCS/amsthm.bht,v
@@ -0,0 +1,34 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amsthm "\\usepackage{amsthm}\n" amsthm 0
+
+I newtheorem "\\newtheorem{}{}\n" newtheorem 4
+I theoremstyle "\\theoremstyle{}\n" theoremstyle 2
+I swapnumbers "\\swapnumbers\n" swapnumbers 0
+@
diff --git a/support/tcltexed/bht/RCS/epsf.bht,v b/support/tcltexed/bht/RCS/epsf.bht,v
new file mode 100644
index 0000000000..20ca2ec2a4
--- /dev/null
+++ b/support/tcltexed/bht/RCS/epsf.bht,v
@@ -0,0 +1,33 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I epsf "\\usepackage{epsf}\n" epsf 0
+
+I epsfxsize "\\epsfxsize" epsf 0
+I epsfbox "\\epsfbox{}" epsf 0
+@
diff --git a/support/tcltexed/bht/RCS/graphics.bht,v b/support/tcltexed/bht/RCS/graphics.bht,v
new file mode 100644
index 0000000000..71d9db6f2c
--- /dev/null
+++ b/support/tcltexed/bht/RCS/graphics.bht,v
@@ -0,0 +1,38 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I graphics "\\usepackage\[dvips\]{graphics}\n" graphics 0
+I graphicx "\\usepackage\[dvips\]{graphicx}\n" graphicx 0
+I includegraphics "\\includegraphics{}\n" includegraphics 2
+I scalebox "\\scalebox{}{}" scalebox 3
+I resizebox "\\resizebox{}{}{}" resizebox 5
+I rotatebox "\\rotatebox{}{}" rotatebox 3
+I ExecuteOptions "\\ExecuteOptions{}\n" ExecuteOptions 2
+I graphicspath "\\graphicspath{}\n" graphicspath 2
+I DeclareGraphicsExtensions "\\DeclareGraphicsExtensions{}\n" DeclareGraphicsExtensions 2
+I DeclareGraphicsRule "\\DeclareGraphicsRule{}{}{}{´}\n" DeclareGraphicsRule 9@
diff --git a/support/tcltexed/bht/RCS/latex.bht,v b/support/tcltexed/bht/RCS/latex.bht,v
new file mode 100644
index 0000000000..e870a0383b
--- /dev/null
+++ b/support/tcltexed/bht/RCS/latex.bht,v
@@ -0,0 +1,164 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+
+################################
+# Grundlegendes
+I begin "\\begin{}\n\\end{}\n" begin 9
+I end "\\end{}\n" end 2
+I today "\\today" today 0
+I LaTeX "\\LaTeX" LaTeX 0
+I LaTeX2e "\\LaTeX2e" LaTeX2e 0
+I document "\\begin{document}\n\\end{document}\n" document 15
+I documentclass "\\documentclass\[\]{}\n" documentclass 4
+I usepackage "\\usepackage{}\n" usepackage 2
+I pagestyle "\\pagestyle{}\n" pagestyle 2
+I thispagestyle "\\thispagestyle{}\n" thispagestyle 2
+I pagenumbering "\\pagenumbering{}\n" pagenumbering 2
+
+I newcounter "\\newcounter{}\[\]\n" newcounter 4
+I setcounter "\\setcounter{}{}\n" setcounter 4
+I newlength "\\newlength{}\n" newlength 2
+I setlength "\\setlength{}{}\n" setlength 4
+I settowidth "\\settowidth{}{}\n" settowidth 4
+I addtolength "\\addtolength{}{}\n" addtolength 4
+I value "\\value{}" value 1
+I stepcounter "\\stepcounter{}" stepcounter f1
+I newcommand "\\newcommand{}\[\]{}\n" newcommand 6
+I renewcommand "\\newcommand{}\[\]{}\n" renewcommand 6
+I newenviroment "\\newenviroment{}\[\]{}{}\n" newenviroment 8
+I renewenviroment "\\renewenviroment{}\[\]{}{}\n" renewenviroment 8
+I title "\\title{}\n" title 1
+I titlepage "\\begin{titlepage}\n\\end{titlepage}\n" titlepage 16
+I author "\\author{}\n" author 1
+I date "\\date{}\n" date 1
+I thanks "\\thanks{}\n" thanks 1
+I maketitle "\\maketitle\n" maketitle 0
+I verbatim "\\begin{verbatim}\\end{verbatim}\n" verbatim 15
+I fill "\\fill" fill 0
+I stretch "\\stretch{}" stretch 1
+
+# Aufteilungen
+I chapter "\\chapter{}\n" chapter 2
+I section "\\section{}\n" section 2
+I subsection "\\subsection{}\n" subsection 2
+I subsubsection "\\subsubsection{}\n" subsubsection 2
+I paragraph "\\paragraph{}\n" paragraph 2
+I subparagraph "\\subparagraph{}\n" subparagraph 2
+I part "\\part{}\n" part 2
+
+# Anhang Inhalt
+I appendix "\\begin{appendix}\n\\end{appendix}\n" appendix 15
+I tableofcontents "\\tableofcontents" "table of contents" 0
+I addcontentsline "\\addcontentsline{}{}{}" "add contentsline" 5
+I addtocontents "\\addtocontents{}{}" "add to contents" 3
+I listoffigures "\\listoffigures" "list of figures" 0
+I listoftables "\\listoftables" "list of tables" 0
+
+
+# Zwischenraeume
+I hspace "\\hspace{}" hspace 1
+I hfill "\\hspace{\\fill}" hspace 0
+I quad "\\quad" quad 0
+I qquad "\\qquad" qquad 0
+I dotfill "\\dotfill" dotfill 0
+I hrulefill "\\hrulefill" hrulefill 0
+I linebreak "\\linebreak[]\n" linebreak 2
+I nolinebreak "\\nolinebreak[]\n" nolinebreak 2
+I vspace "\\vspace{}\n" vspace 2
+I vfill "\\vspace{\\fill}" vspace 0
+I indent "\\indent" indent 0
+I noindent "\\noindent" noindent 0
+I pagebreak "\\pagebreak[]\n" pagebreak 2
+I nopagebreak "\\nopagebreak[]\n" nopagebreak 2
+I newpage "\\newpage\n" newpage 0
+I clearpage "\\clearpage\n" clearpage 0
+I cleardoublepage "\\cleardoublepage\n" cleardoublepage 0
+I samepage "\\begin{samepage}\n\n\\end{samepage}\n" samepage 16
+I discretionary "\\discretionary{}{}{}" discretionary 5
+I hypentation "\\hypentation{}\n" hypentation 2
+I sloppy "\\sloppy\n" sloppy 0
+I fussy "\\fussy\n" fussy 0
+I sloopypar "\\{sloopypar}\n\n\\end{sloopypar}\n" sloopypar 17
+I fussypar "\\begin{fussypar}\n\n\\end{fussypar}\n" fussypar 16
+
+# Schriftarten
+I bfseries "\\bfseries" "Boldface Series" 0
+I mdseries "\\mdseries" "Standart Series" 0
+I itshape "\\itshape" "Italic Shape" 0
+I upshape "\\upshape" "Standart Shape" 0
+I scshape "\\scshape" "SMALL CAPS Shape" 0
+I slshape "\\slshape" "Slanted Shape" 0
+I rmfamily "\\rmfamily" "Roman Family" 0
+I sffamily "\\sffamily" "Sans Serif Family" 0
+I ttfamily "\\ttfamily" "Typewriter Family" 0
+
+# Schriftgroessen
+I tiny "\\tiny" tiny 0
+I scriptsize "\\scriptsize" scriptsize 0
+I footnotesize "\\footnotesize" footnotesize 0
+I small "\\small" small 0
+I normalsize "\\normalsize" normalsize 0
+I large "\\large" large 0
+I Large "\\Large" Large 0
+I LARGE "\\LARGE" LARGE 0
+I huge "\\huge" huge 0
+I Huge "\\Huge" Huge 0
+
+# Textstrukturierung
+I center "\\begin{center}\n\\end{center}\n" center 13
+I centering "\\centering" centering 0
+I quote "\\begin{quote}\n\\end{quote}\n" quote 12
+I quotation "\\begin{quotation}\n\\end{quotation}\n" quotation 16
+I flushleft "\\begin{flushleft}\n\\end{flushleft}\n" flushleft 16
+I flushright "\\begin{flushright}\n\\end{flushright}\n" flushright 19
+
+# Aufzaehlungen
+I item "\\item" item 0
+I itemize "\\begin{itemize}\n \\item \n\\end{itemize}\n" itemize 15
+I enumerate "\\begin{enumerate}\n \\item \n\\end{enumerate}\n" enumerate 17
+I description "\\begin{description}\n \\item\[\] \n\\end{description}\n" description 21
+
+# Linien
+I vline "\\vline" tabelle 0
+I hline "\\hline" tabelle 0
+
+
+# gleitendes
+I table "\\begin{table}\n\\end{table}\n" table 12
+I figure "\\begin{figure}\n\\end{figure}\n" figure 13
+I caption "\\caption{}\n" caption 2
+
+
+# Bezug
+I label "\\label{}" label 1
+I ref "\\ref{}" ref 1
+I pageref "\\pageref{}" pageref 1
+
+# sonderbares
+I percent "\\%" sonder 0@
diff --git a/support/tcltexed/bht/RCS/latex209.bht,v b/support/tcltexed/bht/RCS/latex209.bht,v
new file mode 100644
index 0000000000..c7d226a4da
--- /dev/null
+++ b/support/tcltexed/bht/RCS/latex209.bht,v
@@ -0,0 +1,45 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+
+################################
+# Grundlegendes
+I documentstyle "\\documentstyle\[\]{}\n" documentstyle 4
+
+
+# Schriftarten
+I bf "\\bf" Boldface 0
+I it "\\it" Italic 0
+I rm "\\rm" Roman 0
+I em "\\em" Emphasize 0
+I sc "\\sc" "SMALL CAPS" 0
+I sl "\\sl" "Slanted" 0
+I sf "\\sf" "Sans Serif" 0
+I tt "\\tt" Typewriter 0
+
+@
diff --git a/support/tcltexed/bht/RCS/latex_math.bht,v b/support/tcltexed/bht/RCS/latex_math.bht,v
new file mode 100644
index 0000000000..cf3a02645c
--- /dev/null
+++ b/support/tcltexed/bht/RCS/latex_math.bht,v
@@ -0,0 +1,105 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+set LISTE [list alpha beta gamma delta epsilon varepsilon zeta eta theta \
+ vartheta iota kappa lambda mu nu xi pi varpi rho varrho sigma varsigma \
+ tau upsilon phi varphi chi psi omega\
+ pm mp times div cdot ast dagger ddagger amalg cap cup\
+ uplus sqcap sqcup vee wedge setminus wr circ bullet oslash odot\
+ bigcirc bigtriangleup bigtriangledown oplus ominus otimes\
+ le ge models \
+ ll gg neq\
+ subset supset doteq\
+ subseteq supseteq approx\
+ sqsubseteq sqsupseteq cong\
+ in ni equiv\
+ vdash dashv perp\
+ smile frown parallel\
+ prec succ sim\
+ preceq succeq simeq\
+ asymp bowtie mid\
+ leftarrow rightarrow uparrow downarrow\
+ leftrightarrow updownarrow\
+ leftharpoonup rightharpoonup hookleftarrow hookrightarrow\
+ leftharpoondown rightharpoondown rightleftharpoons mapsto\
+ nwarrow nearrow swarrow searrow\
+ longleftarrow longrightarrow\
+ longleftrightarrow\
+ list aleph hbar wp\
+ imath jmath ell\
+ sonder_strich\
+ nabla partial prime\
+ top bot surd\
+ neg\
+ exists forall emptyset\
+ natural sharp flat\
+ angle backslash infty\
+ clubsuit diamondsuit\
+ spadesuit heartsuit triangle mod \
+ arccos arcsin arctan arg cos cosh cot coth csc deg det dim\
+ exp gcd hom inf ker lg lim liminf limsub ln log max min Pr sec\
+ sin sinh sup tan tanh\
+ vdots nonumber ldots left right]
+foreach x $LISTE {I $x "\\$x" $x 0}
+
+# Alles mit einem grossen Buchstaben am Anfang
+set LISTE [list Gamma Delta Theta Lambda Xi Pi \
+ Sigma Upsilon Phi Omega Re Im Longleftrightarrow\
+ Leftarrow Rightarrow Uparrow Downarrow\
+ Longleftarrow Longrightarrow\
+ Leftrightarrow Updownarrow]
+ set big _big
+foreach x $LISTE {I $x "\\$x" $x$big 0}
+ unset big
+
+# Alles mit einer einfachen Klammer
+set LISTE [list sqrt\
+ hat breve grave bar dot\
+ check acute tilde vec ddot\
+ overline overbrace widehat\
+ underline underbrace widetilde\
+ stackrel pmod]
+foreach x $LISTE {I $x "\\$x{}" $x 1}
+
+# Alles individuelles
+I sqrtn "\\sqrt\[\]{}" sqrtn 3
+I frac "\\frac{}{}" frac 3
+I int "\\int\\limits" int 0
+I oint "\\oint" oint 0
+I sum "\\sum\\limits" sum 0
+I prod "\\prod\\limits" prod 0
+I coprod "\\coprod\\limits" coprod 0
+I atop "{ \\atop }" atop 7
+I choose "{ \\choose }" choose 9
+I math "\$\$" math 1
+I displaymath "\\\[\\\]\n" displaymath 3
+I equation "\\begin{equation}\n \n\\end{equation}\n" equation 17
+
+I text "\\text{}" text 1
+
+unset LISTE@
diff --git a/support/tcltexed/bht/RCS/latex_other.bht,v b/support/tcltexed/bht/RCS/latex_other.bht,v
new file mode 100644
index 0000000000..09dbb023c7
--- /dev/null
+++ b/support/tcltexed/bht/RCS/latex_other.bht,v
@@ -0,0 +1,77 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+
+I ifthenelse "\\ifthenelse{}{}{}\n" ifthenelse 6
+I whiledo "\\whiledo{}{}\n" whiledo 4
+
+# Seitenformatierung
+set LISTE [list oddsidemargin evensidemargin topmargin headheight\
+headsep topskip textheight textwidth footheight footskip\
+voffset hoffset\
+columnsep columnseprule]
+foreach x $LISTE {I $x "\\$x" $x 0}
+
+
+# Stichwortverzeichnisse
+I index "\\index{}" index 1
+I makeindex "\\makeindex" make 0
+I printindex "\\printindex" print 0
+I theindex "\\begin{theindex}\n \\item\n\\end{theindex}\n" the 15
+I subitem "\\subitem" subitem 0
+I subsubitem "\\subitem" subsubitem 0
+I indexspace "\\indexspace" indexspace 0
+
+
+
+# Literatur
+I thebibliography "\\begin{thebibliography}\n \\bibitem{}\n\\end{thebibliography}\n" thebibliography 24
+I bibitem "\\bibitem{}\n" bibitem 2
+I cite "\\cite{}" cite 1
+I nocite "\\nocite{}\n" nocite 2
+
+# tabbing
+I tabbing "\\begin{tabbing}\n\\end{tabbing}\n" tabbing 15
+
+# Boxen
+I mbox "\\mbox{}" latexbox 1
+I fbox "\\fbox{}" latexbox 1
+I makebox "\\makebox\[\]\[\]{}" latexbox 5
+I framebox "\\framebox\[\]\[\]{}" latexbox 5
+I parbox "\\parbox\[\]{}{}" latexbox 5
+I minipage "\\begin{minipage}\[\]{}\n\\end{minipage}\n" latexbox 19
+I rule "\\rule\[\]{}{}" latexbox 5
+
+I input "\\input{}\n" input 2
+I include "\\include{}\n" include 2
+I includeonly "\\includeonly{}\n" includeonly 2
+I typeout "\\typeout{}\n" typeout 2
+I typein "\\typein{}\n" typein 2
+
+
+unset LISTE@
diff --git a/support/tcltexed/bht/RCS/notiz.bht,v b/support/tcltexed/bht/RCS/notiz.bht,v
new file mode 100644
index 0000000000..55c3b08c58
--- /dev/null
+++ b/support/tcltexed/bht/RCS/notiz.bht,v
@@ -0,0 +1,42 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+# Fussnoten
+I footnote "\footnote{}\n" footnote 2
+I footnotesep "\\setlength{\\footnotesep}{}\n" footnotesep 2
+I footnotemark "\footnotemark" footnotemark 0
+I footnotetext "\footnotetext{}\n" footnotetext 2
+I footnoterule "\footnoterule\n" footnoterule 0
+
+# Randen
+I marginpar "\\marginpar{}\n" marginpar 2
+I marginparpush "\\setlength{\\marginparpush}{}\n" marginparpush 2
+I marginparwidth "\\setlength{\\marginparwidth}{}\n" marginparwidth 2
+I marginparsep "\\setlength{\\marginparsep}{}\n" marginparsep 2
+
+@
diff --git a/support/tcltexed/bht/RCS/picture.bht,v b/support/tcltexed/bht/RCS/picture.bht,v
new file mode 100644
index 0000000000..ea67a3ffd1
--- /dev/null
+++ b/support/tcltexed/bht/RCS/picture.bht,v
@@ -0,0 +1,57 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I picture "\\begin{picture}(,)\n\n\\end{picture}\n" picture 18
+
+# Parameter
+I unitlength "\\setlength{\setunitlength}{}\n" picture 2
+I thicklines "\\thicklines" picture 0
+I thinlines "\\thinlines" picture 0
+I linethickness "\\linethickness{}\n" picture 2
+
+# Positionierung
+I put "\\put(,){}\n" picture 5
+I multiput "\\multiput(,)(,){}{}\n" picture 10
+
+# Rahmen
+I dashbox "\\dashbox{}(,)\[\]{}" picture 8
+
+#
+I line "\\line(,){}" picture 4
+I vector "\\vector(,){}" picture 4
+
+I circle "\\circle{}" picture 1
+I oval "\\oval(,)" picture 2
+I bezier "\\bezier{50}(,)(,)(,)" picture 8
+I shortstack "\\shortstack\[\]{}" picture 3
+
+# Speichern
+I newsavebox "\\newsavebox{\\}\n" picture 2
+I savebox "\\savebox{\\}(,)\[\]{}\n" picture 9
+I usebox "\\usebox{\\}" picture 1
+@
diff --git a/support/tcltexed/bht/RCS/tabelle.bht,v b/support/tcltexed/bht/RCS/tabelle.bht,v
new file mode 100644
index 0000000000..9d03dac2cd
--- /dev/null
+++ b/support/tcltexed/bht/RCS/tabelle.bht,v
@@ -0,0 +1,41 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.08.06; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Hilfsfile $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I array "\\begin{array}\[\]{}\n\\end{array}\n" tabelle 16
+I tabular "\\begin{tabular}\[\]{}\n\\end{tabular}\n" tabelle 18
+
+# Parameter
+I tabcolsep "\\setlength{\\tabcolsep}{}\n" tabelle 2
+I arraycolsep "\\setlength{\\arraycolsep}{}\n" tabelle 2
+I arrayrulewidth "\\setlength{\\arrayrulewidth}{}\n" tabelle 2
+I doublerulesep "\\setlength{\\tabcolsep}{}\n" tabelle 2
+I arraystretch "\\renewcommand{\\arraystretch}{}\n" tabelle 2
+
+I cline "\\cline{-}" tabelle 2
+I multicolumn "\\multicolumn{}{}{}" tabelle 5
+@
diff --git a/support/tcltexed/bht/amscd.bht b/support/tcltexed/bht/amscd.bht
new file mode 100644
index 0000000000..14afa7cf49
--- /dev/null
+++ b/support/tcltexed/bht/amscd.bht
@@ -0,0 +1,8 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amscd "\\usepackage{amscd}\n" amscd 0
+
+I CD "\\begin{CD}\n\\end{CD}\n" CD 9
diff --git a/support/tcltexed/bht/amsfonts.bht b/support/tcltexed/bht/amsfonts.bht
new file mode 100644
index 0000000000..9193fe17f6
--- /dev/null
+++ b/support/tcltexed/bht/amsfonts.bht
@@ -0,0 +1,10 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amsfonts "\\usepackage{amsfonts}\n" amsfonts 0
+
+I mathbb "\\mathbb{}" mathbb 1
+I mathfrak "\\mathfrak{}" mathfrak 1
+I boldsymbol "\\boldsymbol{}" boldsymbol 1 \ No newline at end of file
diff --git a/support/tcltexed/bht/amsmath.bht b/support/tcltexed/bht/amsmath.bht
new file mode 100644
index 0000000000..a8182f53da
--- /dev/null
+++ b/support/tcltexed/bht/amsmath.bht
@@ -0,0 +1,43 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amsmath "\\usepackage{amsmath}\n" amsmath 0
+
+# Formelunterstruktur
+I split "\\begin{split}\n&=\\\\\n&=\n\\end{split}\n" split 20
+I multline "\\begin{multline}\n\\\\\n\n\\end{multline}\n" multline 19
+I gather "\\begin{gather}\n\\\\\n\n\\end{gather}\n" gather 17
+I align "\\begin{align}\n&= &=\\\\\n&= &=\n\\end{align}\n" align 26
+I subequation "\\begin{subequation}\n\n\\end{subequation}\n" subequation 19
+I intertext "\\intertext{}\n" intertext 2
+
+# Matrizen
+I matrix "\\begin{matrix} & & \\\\\n & & \\\\\n & & \\end{matrix}\n" matrix 39
+I pmatrix "\\begin{pmatrix} & & \\\\\n & & \\\\\n & & \\end{pmatrix}\n" pmatrix 40
+I bmatrix "\\begin{bmatrix} & & \\\\\n & & \\\\\n & & \\end{bmatrix}\n" bmatrix 40
+I vmatrix "\\begin{vmatrix} & & \\\\\n & & \\\\\n & & \\end{vmatrix}\n" vmatrix 40
+I Vmatrix "\\begin{Vmatrix} & & \\\\\n & & \\\\\n & & \\end{Vmatrix}\n" Vmatrix 40
+I cases "\\begin{cases} & \\\\\n & \\\\\n & \\end{cases}\n" cases 29
+
+# Klammern
+I bigl "\\bigl" bigl 0
+I bigr "\\bigr" bigr 0
+I Bigl "\\Bigl" Bigl 0
+I Bigr "\\Bigr" Bigr 0
+I biggl "\\biggl" biggl 0
+I biggr "\\biggr" biggr 0
+I Biggl "\\Biggl" Biggl 0
+I Biggr "\\Biggr" Biggr 0
+
+# Operatoren
+I substack "\\substack{}" substack 1
+I sideset "\\sideset{}{}" sideset 3
+I boxed "\\boxed{}" boxed 1
+I cfrac "\\cfrac{}{}" cfrac 3
+I xleftarrow "\\xleftarrow[]{}" xleftarrow 3
+I xrightarrow "\\xrightarrow[]{}" xrightarrow 3
+
+#
+I DeclareMathOperator "\\DeclareMathOperator{}{}\n" DeclareMathOperator 4 \ No newline at end of file
diff --git a/support/tcltexed/bht/amssymb.bht b/support/tcltexed/bht/amssymb.bht
new file mode 100644
index 0000000000..35be615da1
--- /dev/null
+++ b/support/tcltexed/bht/amssymb.bht
@@ -0,0 +1,68 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amssymb "\\usepackage{amssymb}\n" amssymb 0
+
+set LISTE [list \
+dotplus ltimes rtims smallsetminus barwedge boxminus divideontimes\
+curlywedge circledast intercal veebar\
+boxtimes leftthreetimes curlyvee\
+circledcirc rtimes doublebarwedge boxplus\
+rightthreetimes circleddash centerdot\
+checkmark maltese yen ulcorner urcorner\
+llcorner lrcorner dashrightarrow dashleftarrow\
+digamma varkappa beth gimel daleth hslash vartriangle\
+triangledown square lozenge backprime varnothing\
+blacktriangle blacktriangledown blacksquare blacklozenge\
+circledS bigstar sphericalangle measureangle nexists\
+mho complement eth diagup diagdown\
+leqq geqq leqslant gepslant eqslantless eqslantgtr\
+lesssim gtrsim lessapprox gtrapprox approxeq lessdot\
+gtrdot lll ggg lessgtr gtrless lesseqqless\
+eqcirc risingdotseq circeq fallingdotseq triangleq\
+backsim thicksim backsimeq thickapprox subseteqq supseteqq\
+sqsubset sqsupset preccurlyeq succurlyeq\
+curclyeqprec curlyeqsucc precsim succsim precapprox succapprox\
+vartriangleleft vartriangleright trianglelefteq\
+trianglerighteq smallsmile smallfrown\
+shortmid shartparallel bumpeq between pitchfork\
+varpropto backepsilon blacktriangleleft blacktriangleright\
+therefore because\
+leftleftarrows rightrightarrows leftrightarrows\
+rightleftarrows\
+twoheadleftarrow twoheadrightarrow leftarrowtail\
+rightarrowtail looparrowleft looparrowright\
+curvearrowleft\
+curvearrowright circlearrowleft circlearrowright\
+upuparrows\
+downdownarrows upharpoonleft upharpoonright\
+downharpoonleft downharpoonright multimap\
+leftrightsquigarrow rightsquigarrow nleftarrow\
+nrightarrow\
+nleftrightarrow\
+nless ngtr nleq ngeq nleqslant ngeqslant\
+nleqq ngeqq lneq gneq lneqq gneqq\
+lvertneqq gvertneqq lnsim gnsim lnapprox gnapprox\
+nprec nsucc npreceq nsucceq precneqq succneqq\
+precnsim succnsim precnapprox succnapprox nsim ncong\
+nshartmid nshortparallel nmid nparallel nvdash nvDash\
+ntriangleleft ntriangleright ntrianglelefteq ntrianglerighteq\
+nsubseteq nsupseteq nsubseteqq nsupseteqq subsetneq supsetneq\
+varsubsetneq varsupsetneq subsetneqq supsetneqq varsubsetneqq varsupsetneqq]
+foreach x $LISTE {I $x "\\$x" $x 0}
+
+set LISTE [list Finv Game Bbbk Subset Supset Vvdash Bumpeq Lsh Rsh nLeftrightarrow\
+Cap Cup Doteq Vdash Lleftarrow Rrightarrow]
+set big _big
+foreach x $LISTE {I $x "\\$x" $x$big 0}
+
+set LISTE [list vDash nVdash nLeftarrow nRightarrow]
+set big _big2
+foreach x $LISTE {I $x "\\$x" $x$big 0}
+unset big
+
+I nVDash "\\nVDash" nvdash_big23 0
+I circledR "\\circledR" circledR_big8 0
+unset LISTE \ No newline at end of file
diff --git a/support/tcltexed/bht/amsthm.bht b/support/tcltexed/bht/amsthm.bht
new file mode 100644
index 0000000000..34a93004f4
--- /dev/null
+++ b/support/tcltexed/bht/amsthm.bht
@@ -0,0 +1,10 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I amsthm "\\usepackage{amsthm}\n" amsthm 0
+
+I newtheorem "\\newtheorem{}{}\n" newtheorem 4
+I theoremstyle "\\theoremstyle{}\n" theoremstyle 2
+I swapnumbers "\\swapnumbers\n" swapnumbers 0
diff --git a/support/tcltexed/bht/epsf.bht b/support/tcltexed/bht/epsf.bht
new file mode 100644
index 0000000000..ce7e49cda3
--- /dev/null
+++ b/support/tcltexed/bht/epsf.bht
@@ -0,0 +1,9 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I epsf "\\usepackage{epsf}\n" epsf 0
+
+I epsfxsize "\\epsfxsize" epsf 0
+I epsfbox "\\epsfbox{}" epsf 0
diff --git a/support/tcltexed/bht/graphics.bht b/support/tcltexed/bht/graphics.bht
new file mode 100644
index 0000000000..811074152f
--- /dev/null
+++ b/support/tcltexed/bht/graphics.bht
@@ -0,0 +1,15 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I graphics "\\usepackage\[dvips\]{graphics}\n" graphics 0
+I graphicx "\\usepackage\[dvips\]{graphicx}\n" graphicx 0
+I includegraphics "\\includegraphics{}\n" includegraphics 2
+I scalebox "\\scalebox{}{}" scalebox 3
+I resizebox "\\resizebox{}{}{}" resizebox 5
+I rotatebox "\\rotatebox{}{}" rotatebox 3
+I ExecuteOptions "\\ExecuteOptions{}\n" ExecuteOptions 2
+I graphicspath "\\graphicspath{}\n" graphicspath 2
+I DeclareGraphicsExtensions "\\DeclareGraphicsExtensions{}\n" DeclareGraphicsExtensions 2
+I DeclareGraphicsRule "\\DeclareGraphicsRule{}{}{}{´}\n" DeclareGraphicsRule 9 \ No newline at end of file
diff --git a/support/tcltexed/bht/latex.bht b/support/tcltexed/bht/latex.bht
new file mode 100644
index 0000000000..293cbf8f41
--- /dev/null
+++ b/support/tcltexed/bht/latex.bht
@@ -0,0 +1,141 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+
+################################
+# Grundlegendes
+I begin "\\begin{}\n\\end{}\n" begin 9
+I end "\\end{}\n" end 2
+I today "\\today" today 0
+I LaTeX "\\LaTeX" LaTeX 0
+I LaTeX2e "\\LaTeX2e" LaTeX2e 0
+I document "\\begin{document}\n\\end{document}\n" document 15
+I documentclass "\\documentclass\[\]{}\n" documentclass 4
+I usepackage "\\usepackage{}\n" usepackage 2
+I pagestyle "\\pagestyle{}\n" pagestyle 2
+I thispagestyle "\\thispagestyle{}\n" thispagestyle 2
+I pagenumbering "\\pagenumbering{}\n" pagenumbering 2
+
+I newcounter "\\newcounter{}\[\]\n" newcounter 4
+I setcounter "\\setcounter{}{}\n" setcounter 4
+I newlength "\\newlength{}\n" newlength 2
+I setlength "\\setlength{}{}\n" setlength 4
+I settowidth "\\settowidth{}{}\n" settowidth 4
+I addtolength "\\addtolength{}{}\n" addtolength 4
+I value "\\value{}" value 1
+I stepcounter "\\stepcounter{}" stepcounter f1
+I newcommand "\\newcommand{}\[\]{}\n" newcommand 6
+I renewcommand "\\newcommand{}\[\]{}\n" renewcommand 6
+I newenviroment "\\newenviroment{}\[\]{}{}\n" newenviroment 8
+I renewenviroment "\\renewenviroment{}\[\]{}{}\n" renewenviroment 8
+I title "\\title{}\n" title 1
+I titlepage "\\begin{titlepage}\n\\end{titlepage}\n" titlepage 16
+I author "\\author{}\n" author 1
+I date "\\date{}\n" date 1
+I thanks "\\thanks{}\n" thanks 1
+I maketitle "\\maketitle\n" maketitle 0
+I verbatim "\\begin{verbatim}\\end{verbatim}\n" verbatim 15
+I fill "\\fill" fill 0
+I stretch "\\stretch{}" stretch 1
+
+# Aufteilungen
+I chapter "\\chapter{}\n" chapter 2
+I section "\\section{}\n" section 2
+I subsection "\\subsection{}\n" subsection 2
+I subsubsection "\\subsubsection{}\n" subsubsection 2
+I paragraph "\\paragraph{}\n" paragraph 2
+I subparagraph "\\subparagraph{}\n" subparagraph 2
+I part "\\part{}\n" part 2
+
+# Anhang Inhalt
+I appendix "\\begin{appendix}\n\\end{appendix}\n" appendix 15
+I tableofcontents "\\tableofcontents" "table of contents" 0
+I addcontentsline "\\addcontentsline{}{}{}" "add contentsline" 5
+I addtocontents "\\addtocontents{}{}" "add to contents" 3
+I listoffigures "\\listoffigures" "list of figures" 0
+I listoftables "\\listoftables" "list of tables" 0
+
+
+# Zwischenraeume
+I hspace "\\hspace{}" hspace 1
+I hfill "\\hspace{\\fill}" hspace 0
+I quad "\\quad" quad 0
+I qquad "\\qquad" qquad 0
+I dotfill "\\dotfill" dotfill 0
+I hrulefill "\\hrulefill" hrulefill 0
+I linebreak "\\linebreak[]\n" linebreak 2
+I nolinebreak "\\nolinebreak[]\n" nolinebreak 2
+I vspace "\\vspace{}\n" vspace 2
+I vfill "\\vspace{\\fill}" vspace 0
+I indent "\\indent" indent 0
+I noindent "\\noindent" noindent 0
+I pagebreak "\\pagebreak[]\n" pagebreak 2
+I nopagebreak "\\nopagebreak[]\n" nopagebreak 2
+I newpage "\\newpage\n" newpage 0
+I clearpage "\\clearpage\n" clearpage 0
+I cleardoublepage "\\cleardoublepage\n" cleardoublepage 0
+I samepage "\\begin{samepage}\n\n\\end{samepage}\n" samepage 16
+I discretionary "\\discretionary{}{}{}" discretionary 5
+I hypentation "\\hypentation{}\n" hypentation 2
+I sloppy "\\sloppy\n" sloppy 0
+I fussy "\\fussy\n" fussy 0
+I sloopypar "\\{sloopypar}\n\n\\end{sloopypar}\n" sloopypar 17
+I fussypar "\\begin{fussypar}\n\n\\end{fussypar}\n" fussypar 16
+
+# Schriftarten
+I bfseries "\\bfseries" "Boldface Series" 0
+I mdseries "\\mdseries" "Standart Series" 0
+I itshape "\\itshape" "Italic Shape" 0
+I upshape "\\upshape" "Standart Shape" 0
+I scshape "\\scshape" "SMALL CAPS Shape" 0
+I slshape "\\slshape" "Slanted Shape" 0
+I rmfamily "\\rmfamily" "Roman Family" 0
+I sffamily "\\sffamily" "Sans Serif Family" 0
+I ttfamily "\\ttfamily" "Typewriter Family" 0
+
+# Schriftgroessen
+I tiny "\\tiny" tiny 0
+I scriptsize "\\scriptsize" scriptsize 0
+I footnotesize "\\footnotesize" footnotesize 0
+I small "\\small" small 0
+I normalsize "\\normalsize" normalsize 0
+I large "\\large" large 0
+I Large "\\Large" Large 0
+I LARGE "\\LARGE" LARGE 0
+I huge "\\huge" huge 0
+I Huge "\\Huge" Huge 0
+
+# Textstrukturierung
+I center "\\begin{center}\n\\end{center}\n" center 13
+I centering "\\centering" centering 0
+I quote "\\begin{quote}\n\\end{quote}\n" quote 12
+I quotation "\\begin{quotation}\n\\end{quotation}\n" quotation 16
+I flushleft "\\begin{flushleft}\n\\end{flushleft}\n" flushleft 16
+I flushright "\\begin{flushright}\n\\end{flushright}\n" flushright 19
+
+# Aufzaehlungen
+I item "\\item" item 0
+I itemize "\\begin{itemize}\n \\item \n\\end{itemize}\n" itemize 15
+I enumerate "\\begin{enumerate}\n \\item \n\\end{enumerate}\n" enumerate 17
+I description "\\begin{description}\n \\item\[\] \n\\end{description}\n" description 21
+
+# Linien
+I vline "\\vline" tabelle 0
+I hline "\\hline" tabelle 0
+
+
+# gleitendes
+I table "\\begin{table}\n\\end{table}\n" table 12
+I figure "\\begin{figure}\n\\end{figure}\n" figure 13
+I caption "\\caption{}\n" caption 2
+
+
+# Bezug
+I label "\\label{}" label 1
+I ref "\\ref{}" ref 1
+I pageref "\\pageref{}" pageref 1
+
+# sonderbares
+I percent "\\%" sonder 0 \ No newline at end of file
diff --git a/support/tcltexed/bht/latex209.bht b/support/tcltexed/bht/latex209.bht
new file mode 100644
index 0000000000..4f80a0aed4
--- /dev/null
+++ b/support/tcltexed/bht/latex209.bht
@@ -0,0 +1,21 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+
+################################
+# Grundlegendes
+I documentstyle "\\documentstyle\[\]{}\n" documentstyle 4
+
+
+# Schriftarten
+I bf "\\bf" Boldface 0
+I it "\\it" Italic 0
+I rm "\\rm" Roman 0
+I em "\\em" Emphasize 0
+I sc "\\sc" "SMALL CAPS" 0
+I sl "\\sl" "Slanted" 0
+I sf "\\sf" "Sans Serif" 0
+I tt "\\tt" Typewriter 0
+
diff --git a/support/tcltexed/bht/latex_math.bht b/support/tcltexed/bht/latex_math.bht
new file mode 100644
index 0000000000..9132d0e575
--- /dev/null
+++ b/support/tcltexed/bht/latex_math.bht
@@ -0,0 +1,82 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+set LISTE [list alpha beta gamma delta epsilon varepsilon zeta eta theta \
+ vartheta iota kappa lambda mu nu xi pi varpi rho varrho sigma varsigma \
+ tau upsilon phi varphi chi psi omega\
+ pm mp times div cdot ast dagger ddagger amalg cap cup\
+ uplus sqcap sqcup vee wedge setminus wr circ bullet oslash odot\
+ bigcirc bigtriangleup bigtriangledown oplus ominus otimes\
+ le ge models \
+ ll gg neq\
+ subset supset doteq\
+ subseteq supseteq approx\
+ sqsubseteq sqsupseteq cong\
+ in ni equiv\
+ vdash dashv perp\
+ smile frown parallel\
+ prec succ sim\
+ preceq succeq simeq\
+ asymp bowtie mid\
+ leftarrow rightarrow uparrow downarrow\
+ leftrightarrow updownarrow\
+ leftharpoonup rightharpoonup hookleftarrow hookrightarrow\
+ leftharpoondown rightharpoondown rightleftharpoons mapsto\
+ nwarrow nearrow swarrow searrow\
+ longleftarrow longrightarrow\
+ longleftrightarrow\
+ list aleph hbar wp\
+ imath jmath ell\
+ sonder_strich\
+ nabla partial prime\
+ top bot surd\
+ neg\
+ exists forall emptyset\
+ natural sharp flat\
+ angle backslash infty\
+ clubsuit diamondsuit\
+ spadesuit heartsuit triangle mod \
+ arccos arcsin arctan arg cos cosh cot coth csc deg det dim\
+ exp gcd hom inf ker lg lim liminf limsub ln log max min Pr sec\
+ sin sinh sup tan tanh\
+ vdots nonumber ldots left right]
+foreach x $LISTE {I $x "\\$x" $x 0}
+
+# Alles mit einem grossen Buchstaben am Anfang
+set LISTE [list Gamma Delta Theta Lambda Xi Pi \
+ Sigma Upsilon Phi Omega Re Im Longleftrightarrow\
+ Leftarrow Rightarrow Uparrow Downarrow\
+ Longleftarrow Longrightarrow\
+ Leftrightarrow Updownarrow]
+ set big _big
+foreach x $LISTE {I $x "\\$x" $x$big 0}
+ unset big
+
+# Alles mit einer einfachen Klammer
+set LISTE [list sqrt\
+ hat breve grave bar dot\
+ check acute tilde vec ddot\
+ overline overbrace widehat\
+ underline underbrace widetilde\
+ stackrel pmod]
+foreach x $LISTE {I $x "\\$x{}" $x 1}
+
+# Alles individuelles
+I sqrtn "\\sqrt\[\]{}" sqrtn 3
+I frac "\\frac{}{}" frac 3
+I int "\\int\\limits" int 0
+I oint "\\oint" oint 0
+I sum "\\sum\\limits" sum 0
+I prod "\\prod\\limits" prod 0
+I coprod "\\coprod\\limits" coprod 0
+I atop "{ \\atop }" atop 7
+I choose "{ \\choose }" choose 9
+I math "\$\$" math 1
+I displaymath "\\\[\\\]\n" displaymath 3
+I equation "\\begin{equation}\n \n\\end{equation}\n" equation 17
+
+I text "\\text{}" text 1
+
+unset LISTE \ No newline at end of file
diff --git a/support/tcltexed/bht/latex_other.bht b/support/tcltexed/bht/latex_other.bht
new file mode 100644
index 0000000000..096562ffe2
--- /dev/null
+++ b/support/tcltexed/bht/latex_other.bht
@@ -0,0 +1,54 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+
+I ifthenelse "\\ifthenelse{}{}{}\n" ifthenelse 6
+I whiledo "\\whiledo{}{}\n" whiledo 4
+
+# Seitenformatierung
+set LISTE [list oddsidemargin evensidemargin topmargin headheight\
+headsep topskip textheight textwidth footheight footskip\
+voffset hoffset\
+columnsep columnseprule]
+foreach x $LISTE {I $x "\\$x" $x 0}
+
+
+# Stichwortverzeichnisse
+I index "\\index{}" index 1
+I makeindex "\\makeindex" make 0
+I printindex "\\printindex" print 0
+I theindex "\\begin{theindex}\n \\item\n\\end{theindex}\n" the 15
+I subitem "\\subitem" subitem 0
+I subsubitem "\\subitem" subsubitem 0
+I indexspace "\\indexspace" indexspace 0
+
+
+
+# Literatur
+I thebibliography "\\begin{thebibliography}\n \\bibitem{}\n\\end{thebibliography}\n" thebibliography 24
+I bibitem "\\bibitem{}\n" bibitem 2
+I cite "\\cite{}" cite 1
+I nocite "\\nocite{}\n" nocite 2
+
+# tabbing
+I tabbing "\\begin{tabbing}\n\\end{tabbing}\n" tabbing 15
+
+# Boxen
+I mbox "\\mbox{}" latexbox 1
+I fbox "\\fbox{}" latexbox 1
+I makebox "\\makebox\[\]\[\]{}" latexbox 5
+I framebox "\\framebox\[\]\[\]{}" latexbox 5
+I parbox "\\parbox\[\]{}{}" latexbox 5
+I minipage "\\begin{minipage}\[\]{}\n\\end{minipage}\n" latexbox 19
+I rule "\\rule\[\]{}{}" latexbox 5
+
+I input "\\input{}\n" input 2
+I include "\\include{}\n" include 2
+I includeonly "\\includeonly{}\n" includeonly 2
+I typeout "\\typeout{}\n" typeout 2
+I typein "\\typein{}\n" typein 2
+
+
+unset LISTE \ No newline at end of file
diff --git a/support/tcltexed/bht/notiz.bht b/support/tcltexed/bht/notiz.bht
new file mode 100644
index 0000000000..07328153ef
--- /dev/null
+++ b/support/tcltexed/bht/notiz.bht
@@ -0,0 +1,18 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+# Fussnoten
+I footnote "\footnote{}\n" footnote 2
+I footnotesep "\\setlength{\\footnotesep}{}\n" footnotesep 2
+I footnotemark "\footnotemark" footnotemark 0
+I footnotetext "\footnotetext{}\n" footnotetext 2
+I footnoterule "\footnoterule\n" footnoterule 0
+
+# Randen
+I marginpar "\\marginpar{}\n" marginpar 2
+I marginparpush "\\setlength{\\marginparpush}{}\n" marginparpush 2
+I marginparwidth "\\setlength{\\marginparwidth}{}\n" marginparwidth 2
+I marginparsep "\\setlength{\\marginparsep}{}\n" marginparsep 2
+
diff --git a/support/tcltexed/bht/picture.bht b/support/tcltexed/bht/picture.bht
new file mode 100644
index 0000000000..11056a5bfc
--- /dev/null
+++ b/support/tcltexed/bht/picture.bht
@@ -0,0 +1,33 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I picture "\\begin{picture}(,)\n\n\\end{picture}\n" picture 18
+
+# Parameter
+I unitlength "\\setlength{\setunitlength}{}\n" picture 2
+I thicklines "\\thicklines" picture 0
+I thinlines "\\thinlines" picture 0
+I linethickness "\\linethickness{}\n" picture 2
+
+# Positionierung
+I put "\\put(,){}\n" picture 5
+I multiput "\\multiput(,)(,){}{}\n" picture 10
+
+# Rahmen
+I dashbox "\\dashbox{}(,)\[\]{}" picture 8
+
+#
+I line "\\line(,){}" picture 4
+I vector "\\vector(,){}" picture 4
+
+I circle "\\circle{}" picture 1
+I oval "\\oval(,)" picture 2
+I bezier "\\bezier{50}(,)(,)(,)" picture 8
+I shortstack "\\shortstack\[\]{}" picture 3
+
+# Speichern
+I newsavebox "\\newsavebox{\\}\n" picture 2
+I savebox "\\savebox{\\}(,)\[\]{}\n" picture 9
+I usebox "\\usebox{\\}" picture 1
diff --git a/support/tcltexed/bht/tabelle.bht b/support/tcltexed/bht/tabelle.bht
new file mode 100644
index 0000000000..58cc1af7a2
--- /dev/null
+++ b/support/tcltexed/bht/tabelle.bht
@@ -0,0 +1,17 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################################
+# I $Name $Latexbefehl $Hilfsfile $Buttontext/Giffile $Curserrueckverschiebung #
+################################################################################
+
+I array "\\begin{array}\[\]{}\n\\end{array}\n" tabelle 16
+I tabular "\\begin{tabular}\[\]{}\n\\end{tabular}\n" tabelle 18
+
+# Parameter
+I tabcolsep "\\setlength{\\tabcolsep}{}\n" tabelle 2
+I arraycolsep "\\setlength{\\arraycolsep}{}\n" tabelle 2
+I arrayrulewidth "\\setlength{\\arrayrulewidth}{}\n" tabelle 2
+I doublerulesep "\\setlength{\\tabcolsep}{}\n" tabelle 2
+I arraystretch "\\renewcommand{\\arraystretch}{}\n" tabelle 2
+
+I cline "\\cline{-}" tabelle 2
+I multicolumn "\\multicolumn{}{}{}" tabelle 5
diff --git a/support/tcltexed/bin/RCS/makehelp.tcl,v b/support/tcltexed/bin/RCS/makehelp.tcl,v
new file mode 100644
index 0000000000..58168e1b94
--- /dev/null
+++ b/support/tcltexed/bin/RCS/makehelp.tcl,v
@@ -0,0 +1,197 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.22.34.50; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.47; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@#!/usr/bin/wish8.0
+# Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+set Tcltexed_Version 2.3
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1998 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+# set basepath /usr/local/app/tcltexed-2.2
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set hlppath $basepath/hlp
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+
+
+
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+label .l -text "This program produces\n the index of help issues"
+label .echo
+button .b -text "do it !" -command {DOIT}
+proc DOIT {} {
+ global hlppath
+ cd $hlppath
+ set FILES [glob */*.txt]
+ set file ""
+ foreach file $FILES {
+ .echo configure -text $file
+ update
+ set f [open $file r]
+ set Text [read $f]
+ close $f
+ set pos [string first "::" $Text]
+ while {$pos!=-1} {
+ set Text [string range $Text [expr $pos + 2] end]
+ set pos [string first "::" $Text]
+ set posn [string first "\n" $Text]
+ if {$posn>$pos} {
+ if {[string length [string range $Text 0 [expr $pos -1]]] > 0} {
+ lappend L([string range $Text 0 [expr $pos -1]]) $file
+ }}}
+ }
+ set f [open $hlppath/index w]
+ puts $f [array get L]
+ close $f
+ .echo configure -text Done
+}
+
+pack .l .echo .b
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 79
+a79 79
+#!/usr/bin/wish8.0
+# Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+set Tcltexed_Version 2.3
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1998 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+# set basepath /usr/local/app/tcltexed-2.2
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set hlppath $basepath/hlp
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+
+
+
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+label .l -text "This program produces\n the index of help issues"
+label .echo
+button .b -text "do it !" -command {DOIT}
+proc DOIT {} {
+ global hlppath
+ cd $hlppath
+ set FILES [glob */*.txt]
+ set file ""
+ foreach file $FILES {
+ .echo configure -text $file
+ update
+ set f [open $file r]
+ set Text [read $f]
+ close $f
+ set pos [string first "::" $Text]
+ while {$pos!=-1} {
+ set Text [string range $Text [expr $pos + 2] end]
+ set pos [string first "::" $Text]
+ set posn [string first "\n" $Text]
+ if {$posn>$pos} {
+ if {[string length [string range $Text 0 [expr $pos -1]]] > 0} {
+ lappend L([string range $Text 0 [expr $pos -1]]) $file
+ }}}
+ }
+ set f [open $hlppath/index w]
+ puts $f [array get L]
+ close $f
+ .echo configure -text Done
+}
+
+pack .l .echo .b
+@
+
diff --git a/support/tcltexed/bin/RCS/makespell.tcl,v b/support/tcltexed/bin/RCS/makespell.tcl,v
new file mode 100644
index 0000000000..b585c71435
--- /dev/null
+++ b/support/tcltexed/bin/RCS/makespell.tcl,v
@@ -0,0 +1,311 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.22.34.50; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.47; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@#!/usr/bin/wish8.0
+# Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+set Tcltexed_Version 2.3
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1998 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+# set basepath /usr/local/app/tcltexed-2.2
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set etcpath $basepath/etc
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+#######################################################################
+# Where to save options, this should work in the most cases
+# without interferring
+switch $tcl_platform(platform) unix {
+ set spellfileown $env(HOME)/.tcltexed_spell
+ set spellfile $etcpath/tcltexed.sp
+} windows {
+ switch $tcl_platform(os) "Windows 95" {
+ set spellfileown $etcpath/tcltexed_own.sp
+ set spellfile $etcpath/tcltexed.sp
+ } "Windows NT" {
+ set spellfileown $env(USERPROFILE)/tcltexed.sp
+ set spellfile $etcpath/tcltexed.sp
+ }
+}
+#######################################################################
+# What not to have within a word to spell
+# [-0123456789&$^\[\]?\\+*/%=_]
+set spell_not "\[-0123456789&$^\\\[\\\]\\\\+*/%=_\]"
+set spell_yes "\[ \n\t.,:;!?\\\[\\\]\{\}()\]"
+
+
+
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+label .l -text "This program adds\n new words for a language\nto current dictionary of tcltexed\n and saves the result.\n english -> 0\ngerman -> 1"
+set language 1
+tk_optionMenu .m language 0 1
+frame .f1
+entry .f1.e
+.f1.e insert 0 sourcefile
+button .f1.b -text browse -command {
+ .f1.e delete 0 end
+ .f1.e insert 0 [tk_getOpenFile]
+}
+pack .f1.e .f1.b -side left
+
+frame .f2
+entry .f2.e
+.f2.e insert 0 $spellfileown
+button .f2.b -text browse -command {
+ .f2.e delete 0 end
+ .f2.e insert 0 [tk_getSaveFile]
+}
+pack .f2.e .f2.b -side left
+
+button .b -text "do it !" -command {
+set file [.f1.e get]
+set savefile [.f2.e get]
+
+if [file exists $file] then {
+
+ set f [open $file r]
+ set Text [read $f]
+ close $f
+
+ if [file exists $spellfile$language] then {
+ set f [open $spellfile$language r]
+ set LISTE [gets $f]
+ close $f
+ # foreach I $LISTE {set spell_array($I) G}
+ }
+ if [file exists $spellfileown$language] then {
+ set f [open $spellfileown$language r]
+ set LISTE [gets $f]
+ close $f
+ # foreach I $LISTE {set spell_array($I) O}
+ }
+ set anz 0
+ set last ""
+ set LISTE [lsort [split $Text $spell_yes]]
+ foreach I $LISTE {
+ if {[string compare $last $I]!=0} {
+ if {[regexp -- $spell_not $I] == 0} {
+ if {![info exists spell_array($I)]} {
+ if {$I != ""} {
+ set spell_array($I) O
+ incr anz
+ }}}}
+ set last $I
+ }
+ set LISTE ""
+ set L [array get spell_array]
+ foreach {I V} $L {lappend LISTE $I}
+ set f [open $savefile$language w]
+ puts $f [lsort $LISTE]
+ close $f
+ tk_messageBox -type ok -message "$anz words added\n from\t$file \n \t$spellfile$language \n\t $spellfileown$language\n to\t $savefile$language"
+} { tk_messageBox -type ok -message "$file not found"
+}
+}
+
+pack .l .m .f1 .f2 .b
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 136
+a136 136
+#!/usr/bin/wish8.0
+# Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+set Tcltexed_Version 2.3
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1998 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+# set basepath /usr/local/app/tcltexed-2.2
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set etcpath $basepath/etc
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+#######################################################################
+# Where to save options, this should work in the most cases
+# without interferring
+switch $tcl_platform(platform) unix {
+ set spellfileown $env(HOME)/.tcltexed_spell
+ set spellfile $etcpath/tcltexed.sp
+} windows {
+ switch $tcl_platform(os) "Windows 95" {
+ set spellfileown $etcpath/tcltexed_own.sp
+ set spellfile $etcpath/tcltexed.sp
+ } "Windows NT" {
+ set spellfileown $env(USERPROFILE)/tcltexed.sp
+ set spellfile $etcpath/tcltexed.sp
+ }
+}
+#######################################################################
+# What not to have within a word to spell
+# [-0123456789&$^\[\]?\\+*/%=_]
+set spell_not "\[-0123456789&$^\\\[\\\]\\\\+*/%=_\]"
+set spell_yes "\[ \n\t.,:;!?\\\[\\\]\{\}()\]"
+
+
+
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+label .l -text "This program adds\n new words for a language\nto current dictionary of tcltexed\n and saves the result.\n english -> 0\ngerman -> 1"
+set language 1
+tk_optionMenu .m language 0 1
+frame .f1
+entry .f1.e
+.f1.e insert 0 sourcefile
+button .f1.b -text browse -command {
+ .f1.e delete 0 end
+ .f1.e insert 0 [tk_getOpenFile]
+}
+pack .f1.e .f1.b -side left
+
+frame .f2
+entry .f2.e
+.f2.e insert 0 $spellfileown
+button .f2.b -text browse -command {
+ .f2.e delete 0 end
+ .f2.e insert 0 [tk_getSaveFile]
+}
+pack .f2.e .f2.b -side left
+
+button .b -text "do it !" -command {
+set file [.f1.e get]
+set savefile [.f2.e get]
+
+if [file exists $file] then {
+
+ set f [open $file r]
+ set Text [read $f]
+ close $f
+
+ if [file exists $spellfile$language] then {
+ set f [open $spellfile$language r]
+ set LISTE [gets $f]
+ close $f
+ # foreach I $LISTE {set spell_array($I) G}
+ }
+ if [file exists $spellfileown$language] then {
+ set f [open $spellfileown$language r]
+ set LISTE [gets $f]
+ close $f
+ # foreach I $LISTE {set spell_array($I) O}
+ }
+ set anz 0
+ set last ""
+ set LISTE [lsort [split $Text $spell_yes]]
+ foreach I $LISTE {
+ if {[string compare $last $I]!=0} {
+ if {[regexp -- $spell_not $I] == 0} {
+ if {![info exists spell_array($I)]} {
+ if {$I != ""} {
+ set spell_array($I) O
+ incr anz
+ }}}}
+ set last $I
+ }
+ set LISTE ""
+ set L [array get spell_array]
+ foreach {I V} $L {lappend LISTE $I}
+ set f [open $savefile$language w]
+ puts $f [lsort $LISTE]
+ close $f
+ tk_messageBox -type ok -message "$anz words added\n from\t$file \n \t$spellfile$language \n\t $spellfileown$language\n to\t $savefile$language"
+} { tk_messageBox -type ok -message "$file not found"
+}
+}
+
+pack .l .m .f1 .f2 .b
+@
+
diff --git a/support/tcltexed/bin/RCS/tcltexed.tcl,v b/support/tcltexed/bin/RCS/tcltexed.tcl,v
new file mode 100644
index 0000000000..096e6aab72
--- /dev/null
+++ b/support/tcltexed/bin/RCS/tcltexed.tcl,v
@@ -0,0 +1,2358 @@
+head 1.11;
+access;
+symbols;
+locks
+ mys:1.11; strict;
+comment @# @;
+
+
+1.11
+date 2006.11.02.20.02.09; author mys; state Exp;
+branches;
+next 1.10;
+
+1.10
+date 2001.01.23.21.19.59; author mys; state Exp;
+branches;
+next 1.9;
+
+1.9
+date 2001.01.23.21.16.36; author mys; state Exp;
+branches;
+next 1.8;
+
+1.8
+date 2000.11.26.18.20.18; author mys; state Exp;
+branches;
+next 1.7;
+
+1.7
+date 2000.10.12.15.07.20; author mys; state Exp;
+branches;
+next 1.6;
+
+1.6
+date 2000.08.15.23.03.37; author mys; state Exp;
+branches;
+next 1.5;
+
+1.5
+date 2000.08.15.22.39.01; author mys; state Exp;
+branches;
+next 1.4;
+
+1.4
+date 2000.08.15.22.34.50; author mys; state Exp;
+branches;
+next 1.3;
+
+1.3
+date 2000.08.15.21.27.00; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.21.41.13; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.47; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.11
+log
+@*** empty log message ***
+@
+text
+@#!/usr/bin/wish8.4
+# Tcltexed | Version 2.8 | 02. Nov 2006 | Martin Strauss
+set Tcltexed_Version 2.8
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1999 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+set basepath /usr/local/app/tcltexed-2.8
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set menupath $basepath/lib/menu
+set txtpath $basepath/txt
+set hlppath $basepath/hlp
+set gifpath $basepath/gif
+set bhtpath $basepath/bht
+set etcpath $basepath/etc
+set libpath $basepath/lib
+#######################################################################
+# Where to save options, this should work in the most cases
+# without interferring
+switch $tcl_platform(platform) unix {
+ set inifile $env(HOME)/.tcltexed
+ set spellfileown $env(HOME)/.tcltexed_spell
+ set spellfile $etcpath/tcltexed.sp
+} windows {
+ switch $tcl_platform(os) "Windows 95" {
+ set inifile $etcpath/tcltexed.ini
+ set spellfileown $etcpath/tcltexed_own.sp
+ set spellfile $etcpath/tcltexed.sp
+ } "Windows NT" {
+ set inifile $env(USERPROFILE)/tcltexed.ini
+ set spellfileown $env(USERPROFILE)/tcltexed.sp
+ set spellfile $etcpath/tcltexed.sp
+ }
+}
+#######################################################################
+# If your colors make problems like ignoring all grey colors etc
+# try to set this flag to 1, if it works with 0 it will be faster
+set COLOR_flag 0
+###############################################################
+# If you get tired of the welcome-message on the beginning
+# set the value of readme_flag to 0 (else back to 1)
+set readme_flag 1
+# but you will use this window later anyway ...
+###############################################################
+# If you want to have the stdout messages of latex/dvips shown
+# as default, then change this flag to 1
+set log_flag 0
+#######################################################################
+#######################################################################
+# defaultvalue for the language
+# englisch 0 , german 1 , indonesia 2, brazilian 3
+set language 0
+
+#######################################################################
+##########################################################################
+# extern Commands make for sure you've the rigth path here
+switch $tcl_platform(platform) unix {
+ # unix und linux Programme
+ set latex_exec "latex"
+ set xdvi_exec "xdvi"
+ set dvips_exec "dvips"
+ set ghostview_exec "ghostview"
+ set makeindex_exec "makeindex"
+ set ispell_exec "ispell"
+} windows {
+ # Windows 9x and NT
+ set latex_exec "latex"
+ set xdvi_exec "yap"
+ set dvips_exec "dvips"
+ set ghostview_exec "C:/gstools/gsview/gsview32"
+ set makeindex_exec "makeindex"
+ set ispell_exec "ispell"
+} default {exit}
+# interested Mac users should contact me !
+
+##########################################################################
+####### There is no point to "repair" anything beyond this line ##########
+##########################################################################
+# Maximal length of the memory in bytes spend for the UNDO function
+# for each window.
+set max_undo 10240
+#######################################################################
+# nown packetes, first named the file (.bth) to load, then the name to
+# display
+set PLISTE [list latex latex latex_math "+math" latex_other "+more" picture "+picture" tabelle "+tabular/array" notiz "+footnote/marginpar" latex209 "+latex 2.09" amsmath amsmath amssymb amssymb amsfonts amsfonts amscd amscd amsthm amsthm epsf epsf graphics "graphics/x"]
+#######################################################################
+# "My Own", number of selfdefined buttons
+set myown_max 10
+#######################################################################
+# complition by mouse, number of lines shown at once
+set erg2_max 10
+#######################################################################
+# help on LaTeX-commands, number of lines shown at once
+set wlatex_max 20
+#######################################################################
+# help on Tcltexed, number of lines shown at once
+set wTcltexed_max 6
+#######################################################################
+# number of chars after a line is forced to break
+set line_breaking_chars 80
+#######################################################################
+
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+#######################################################################
+# default font size
+set tft_size 12
+#######################################################################
+# event Delete sei BackSpace
+set Delete2BackSpace_flag 0
+#######################################################################
+# What not to have within a word to spell
+# [-0123456789&$^\[\]?\\+*/%=_]
+set spell_not "\[-0123456789&$^\\\[\\\]\\\\+*/%=_\]"
+set spell_yes "\[ \n\t.,:;!?\\\[\\\]\{\}()\]"
+# number of lines shown at once for nearly matched words
+set wspell_max 10
+#######################################################################
+# switch between this letters
+set umlaut_with {\
+\\\"a ä \\\"A Ä \\\"o ö \\\"O Ö \\\"u ü \\\"U Ü\
+\\c\{C\} Ç \\'e é \\^a â \\`a à\
+\\c\{c\} ç \\"e ë \\^e ê \\`e è \\'E É\
+\\^o ô \\`o ò \\^u û \\`u ù \\'a á \\'o ó \\'u ú \\~n ñ \\~N Ñ\
+}
+foreach {i j} {\\\\ss ß \\\\aa å \\\\\\\"\\\\i ï \\\\\\\^\\\\i î \\\\\\\`\\\\i ì \\\\\\\'\\\\i í \\\\AA Å \\\\ae æ \\\\AE Æ} {
+ set umlaut_with "$umlaut_with \"$i \" $j \\{$i\\} $j \"$i\\\\ \" \"$j \" $i\\\\ $j\\\\ $i\\n $j\\n $i\\t $j\\t"
+}
+set umlaut_without {\
+ä \\\"a Ä \\\"A ö \\\"o Ö \\\"O ü \\\"u Ü \\\"U Ç\
+\\c\{C\} é \\'e â \\^a à \\`a ç\
+\\c\{c\} ë \\"e ê \\^e è \\`e É \\'E ô\
+\\^o ò \\`o û \\^u ù \\`u á \\'a ó \\'o ú \\'u ñ \\~n Ñ \\~N\
+}
+foreach {i j} {\\\\ss ß \\\\aa å \\\\\\\"\\\\i ï \\\\\\\^\\\\i î \\\\\\\`\\\\i ì \\\\\\\'\\\\i í \\\\AA Å \\\\ae æ \\\\AE Æ} {
+ set umlaut_without "$umlaut_without $j\\t $i\\t $j\\n $i\\n $j\\\\ $i\\\\ \"$j \" \"$i\\\\ \" $j \"$i \""
+}
+set umlautgerman_with {\"a ä \"A Ä \"o ö \"O Ö \"u ü \"U Ü \"s ß}
+set umlautgerman_without {ä \"a Ä \"A ö \"o Ö \"O ü \"u Ü \"U ß \"s}
+#######################################################################
+# which ispell dictionary for which language ?
+set ispell_dictionary(0) english
+set ispell_dictionary(1) deutsch
+set ispell_dictionary(2) indo-spell
+set ispell_dictionary(3) brazilian
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+# Testwindow
+# eval "toplevel .test\nlabel .test.t1\nlabel .test.t2\npack .test.t1 .test.t2"
+
+ # Editor
+ set EDITORNUMMER 0
+ # Focus
+ set FocusEditorFlag 0
+ set FocusEditor ""
+ # Filenamen
+ set FilenameArray(scratch) "scratch"
+ set ModifiedArray(scratch) 0
+ set UpToDateArray(scratch) 0
+ set GotoArray(scratch) ""
+ set UndoArray(scratch) ""
+ # Block
+ set BlockBeginFlag 0
+ set BlockEndFlag 0
+ set BlockEditor ""
+ # Projekt
+ set MasterFlag 0
+ set Master ""
+ set Masterfile ""
+ image create photo MasterBildSlaveOn -file "$gifpath/slaveon.gif"
+ image create photo MasterBildSlaveOff -file "$gifpath/slaveoff.gif"
+ image create photo MasterBildMasterOn -file "$gifpath/masteron.gif"
+ image create photo MasterBildMasterOff -file "$gifpath/masteroff.gif"
+ # Search
+ set wsearch_gb 1
+ # Klammern automatische
+ set KlammerFlag 1
+ # fuer .wlatex ein ABC
+set ABC [list A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z]
+ # Syntax
+ set syntax_flag 1
+ # Startverzeichnis in das gespeichert wird
+ set directory [pwd]
+ # Spelling
+ set spell_flag 1
+ # help
+ set hlpfile ""
+#######################################################################
+# tclversion mindestens 8
+if {[lindex [split tk_version .] 0] < 8} {
+ exit
+}
+#######################################################################
+# tag Farben
+# wrong Spelling
+set SpellColorRed "#800000"
+# Syntax Highlightning
+set SyntaxColorBlue Blue
+set SyntaxColorRed Red
+set SyntaxColorGreen "#007300"
+# LaTeX-Befehlsergaenzung
+set ErgaenzungGray Gray
+# Block
+set BlockColor "#e0e0e0"
+#######################################################################
+# set several default values
+source $libpath/arg.tcl
+
+#######################################################################
+proc I {name befehl txt back} {
+ global T I_befehl I_txt I_back I_state I_flag I_file
+ switch $I_flag 2 {
+ if [info exists I_befehl($name)] {
+ tk_messageBox -message $T(BHTERROR1)$I_file$T(BHTERROR2)$name$T(BHTERROR3)$befehl -icon error -type ok
+ } {
+ set I_befehl($name) $befehl
+ set I_txt($name) $txt
+ set I_back($name) $back
+ }
+ } 0 {
+ unset I_state($name)
+ } 1 {
+ set I_state($name) 1
+ }
+}
+#######################################################################
+# Options
+source $libpath/options.tcl
+
+LoadOptions
+#######################################################################
+# set several default fonts
+font create tft -family Courier -size $tft_size
+
+#######################################################################
+# language
+source $libpath/translate$language.tcl
+#######################################################################
+# virtuelle events
+source $libpath/events.tcl
+
+#######################################################################
+# Umdefinition des Defaultverhaltens fuer Text-variablen
+source $libpath/bindings.tcl
+
+#######################################################################
+# Default Color
+source $libpath/color.tcl
+
+#######################################################################
+# line breaking
+source $libpath/linebreak.tcl
+
+#######################################################################
+# Oh no, again someone very nosey around !
+#######################################################################
+# Mainwindow
+frame .mb
+
+set LISTE [glob $menupath/*.itm]
+set MenuModus 1
+set MenuItemList ""
+source $menupath/menu
+foreach i $LISTE {
+ source $i
+ lappend ItemList $i
+ lappend MenuItemList "$ItemList"
+}
+frame .mb.menu
+foreach i [lsort $MenuItemList] {
+ if [lindex $i 1] {
+ .mb.menu.button[lindex $i 0].m add command -label [lindex [lindex $i 2] $language] -command "makeWindow .menu[lindex $i 0]Item[lindex $i 1] \"[lindex $i 3]\""
+ } else {
+ menubutton .mb.menu.button[lindex $i 0] -text [lindex [lindex $i 2] $language] -relief raised -menu .mb.menu.button[lindex $i 0].m
+ menu .mb.menu.button[lindex $i 0].m
+ pack .mb.menu.button[lindex $i 0] -side left -padx 2m -fill x -expand yes
+ }
+}
+
+
+
+menubutton .mb.button1 -text $T(MW-File) -relief raised -menu .mb.button1.m
+menubutton .mb.button2 -text $T(MW-Edit) -relief raised -menu .mb.button2.m
+menubutton .mb.button3 -text $T(MW-Options) -relief raised -menu .mb.button3.m
+menubutton .mb.button4 -text $T(MW-Help) -relief raised -menu .mb.button4.m
+
+pack .mb.button1 .mb.button2 .mb.button3 .mb.menu .mb.button4 -side left -padx 2m -fill x -expand yes
+
+menu .mb.button1.m
+menu .mb.button2.m
+menu .mb.button3.m
+menu .mb.button4.m
+
+
+# Neues EditorFenster
+.mb.button1.m add command -label $T(MW-New) -command {NewFile}
+.mb.button1.m add command -label $T(MW-Load) -command {LoadFile}
+.mb.button1.m add command -label $T(MW-Append) -command {
+ if $FocusEditorFlag then {AppendFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-Save) -command {
+ if $FocusEditorFlag then {SaveFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-SaveAs) -command {
+ if $FocusEditorFlag then {SaveAsFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-Quit) -command {ALLQUIT}
+
+.mb.button2.m add command -label $T(MW-Clear) -command {CLEAR}
+menu .mb.button2.m.m1
+.mb.button2.m.m1 add command -label $T(LB-all) -command \
+{if {$FocusEditorFlag} {Line_breaking_switch $FocusEditor.te.edit1 all}}
+.mb.button2.m.m1 add command -label $T(LB-section) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 section}}
+.mb.button2.m.m1 add command -label $T(LB-line) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 line}}
+.mb.button2.m.m1 add command -label $T(LB-unall) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unall}}
+.mb.button2.m.m1 add command -label $T(LB-unsection) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unsection}}
+.mb.button2.m.m1 add command -label $T(LB-unline) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unline}}
+.mb.button2.m add cascade -label $T(LB-breakline) -menu .mb.button2.m.m1
+.mb.button2.m add command -label $T(MW-Spelling) -command \
+{if $FocusEditorFlag {spell $FocusEditor.te.edit1 show 1.0 end}}
+.mb.button2.m add command -label $T(MW-Spell) -command {if $FocusEditorFlag {spell $FocusEditor.te.edit1 add 1.0 end}}
+.mb.button2.m add command -label $T(MW-Umlaut_with) -command {umlaut $umlaut_with}
+.mb.button2.m add command -label $T(MW-Umlaut_without) -command {umlaut $umlaut_without}
+.mb.button2.m add command -label $T(MW-UmlautGerman_with) -command {umlaut $umlautgerman_with}
+.mb.button2.m add command -label $T(MW-UmlautGerman_without) -command {umlaut $umlautgerman_without}
+.mb.button2.m add command -label $T(MW-Search) -command {InitSearch}
+.mb.button2.m add command -label $T(MW-MyOwn) -command {InitMyOwn}
+
+.mb.button3.m add checkbutton -variable KlammerFlag -label $T(MW-AutoKlammerZu)
+.mb.button3.m add checkbutton -variable syntax_flag -label $T(MW-Syntax)
+.mb.button3.m add checkbutton -variable log_flag -label $T(MW-log)
+menu .mb.button3.m.m1
+foreach {i n} $PLISTE {
+ set I_file $bhtpath/$i.bht
+ set I_flag 2
+ source $bhtpath/$i.bht
+ .mb.button3.m.m1 add checkbutton -variable Package($i) -label $n -command "set I_file $bhtpath/\$i.bht\nset I_flag \$Package($i)\nsource $bhtpath/$i.bht"
+}
+set LISTE [lsort [array names I_befehl]]
+set wlatex_LISTE ""
+foreach i $ABC {
+ lappend wlatex_LISTE [lsearch -glob $LISTE $i*]
+}
+unset LISTE
+.mb.button3.m add cascade -label $T(MW-Packages) -menu .mb.button3.m.m1
+menu .mb.button3.m.m2
+.mb.button3.m.m2 add radiobutton -variable language -value 0 -label $T(MW-english) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m.m2 add radiobutton -variable language -value 1 -label $T(MW-german) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m.m2 add radiobutton -variable language -value 2 -label $T(MW-indonesia) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m.m2 add radiobutton -variable language -value 3 -label $T(MW-bre) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m add cascade -label $T(MW-language) -menu .mb.button3.m.m2
+menu .mb.button3.m.m3
+
+ foreach i {6 8 10 12 14 16 18 20 22 24} {
+ .mb.button3.m.m3 add radiobutton -variable tft_size -value $i -label $i -command "font configure tft -size $i"
+ }
+.mb.button3.m add cascade -label $T(MW-size) -menu .mb.button3.m.m3
+.mb.button3.m add command -label $T(MW-SaveOptions) -command {SaveOptions}
+
+.mb.button4.m add command -label $T(MW-Version) -command {InitVersion}
+.mb.button4.m add command -label $T(MW-Tcltexed) -command {InitTcltexed}
+.mb.button4.m add command -label $T(MW-LaTeX) -command {InitListen}
+
+wm resizable . 0 0
+wm protocol . WM_DELETE_WINDOW {ALLQUIT}
+#######################################################################
+proc CLEAR {} {
+ global FocusEditorFlag T FocusEditor
+ if $FocusEditorFlag then {
+ if {[winfo exists .wclear] == 0} then {
+ set sp [tk_messageBox -icon question -message $T(MW-Clear-msg) -type okcancel]
+ switch $sp ok {
+ $FocusEditor.te.edit1 delete 1.0 end
+}}}}
+
+proc ALLQUIT {} {
+ global ModifiedArray T
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ if $ModifiedArray([array nextelement ModifiedArray $ID]) then {
+ set Flag 0
+ }
+ }
+ array donesearch ModifiedArray $ID
+ if {$Flag == 0} then {
+ switch [tk_messageBox -message $T(ALLQUIT1) -icon question -type yesnocancel] yes {
+ switch [tk_messageBox -message $T(ALLQUIT2) -icon question -type yesnocancel] yes {
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID]} {
+ set E [array nextelement ModifiedArray $ID]
+ if $ModifiedArray($E) then {
+ set ed [string range $E 0 [expr [string length $E] - 10]]
+ focus $ed
+ SaveFile $ed
+ }}
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ if $ModifiedArray([array nextelement ModifiedArray $ID]) then {
+ set Flag 0
+ }
+ }
+ if $Flag then {destroy .}
+ } no {
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ set E [array nextelement ModifiedArray $ID]
+ if $ModifiedArray($E) then {
+ set ed [string range $E 0 [expr [string length $E] - 10]]
+ focus $ed
+ switch [tk_messageBox -parent $ed -message $T(ALLQUIT3)[wm title $ed] -icon question -type yesnocancel] yes {
+ SaveFile $ed
+ } no {} cancel {
+ set Flag 0
+ }
+ }}
+ if $Flag then {destroy .}
+ } cancel {}
+ } no {destroy .} cancel {}
+ } else {destroy .}
+ spell_save
+}
+#######################################################################
+proc makeWindow {NAME S} {
+ global T language
+ global packstring
+ if {[winfo exists $NAME] == 0} then {
+ set MenuModus 0
+ toplevel $NAME
+ set packstring ""
+ source $S
+ button $NAME.q -text $T(Quit) -command "destroy $NAME"
+ pack $NAME.q
+ bind $NAME <Control-c> {
+ destroy %W
+ }
+ bind $NAME <<Help>> "set ksp \[winfo containing -displayof $NAME \[winfo pointerx $NAME\] \[winfo pointery $NAME\]\]\n if {\$ksp != \"\"} then {event generate \$ksp <<HelpHelp>>}"
+
+ bind $NAME <Button-3> "set ksp \[winfo containing -displayof $NAME \[winfo pointerx $NAME\] \[winfo pointery $NAME\]\]\n if {\$ksp != \"\"} then {event generate \$ksp <<HelpHelp>>}"
+
+ wm resizable $NAME 0 0
+ COLOR $NAME
+ } else {focus $NAME}
+}
+
+
+
+ pack .mb -pady 2m -fill x
+ COLOR .
+#######################################################################
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+#######################################################################
+proc Master {E} {
+ global MasterFlag Master
+ if $MasterFlag then {
+ if [string compare $Master $E] then {
+ $Master.todo.master configure -image MasterBildSlaveOff
+ set Master $E
+ $Master.todo.master configure -image MasterBildMasterOn
+ } else {
+ set MasterFlag 0
+ $Master.todo.master configure -image MasterBildSlaveOn
+ }} else {
+ set MasterFlag 1
+ set Master $E
+ $Master.todo.master configure -image MasterBildMasterOn
+ }
+}
+proc MasterFocus {NEW OLD} {
+ global MasterFlag Master
+ global FocusEditorFlag FocusEditor
+ if $MasterFlag then {
+ if [string compare $Master $NEW] then {
+ $NEW.todo.master configure -image MasterBildSlaveOn
+ } else {
+ $NEW.todo.master configure -image MasterBildMasterOn
+ }
+ if $FocusEditorFlag then {
+ if [string compare $NEW $OLD] then {
+ if [string compare $Master $OLD] then {
+ $OLD.todo.master configure -image MasterBildSlaveOff
+ } else {
+ $OLD.todo.master configure -image MasterBildMasterOff
+ }}}
+ } else {
+ $NEW.todo.master configure -image MasterBildSlaveOn
+ if [string compare $NEW $OLD] then {
+ if $FocusEditorFlag then { $OLD.todo.master configure -image MasterBildSlaveOff}
+ }}
+ set FocusEditorFlag 1
+ set FocusEditor $NEW
+}
+proc MasterBefehl {E BEFEHL} {
+ global latex_exec xdvi_exec dvips_exec ghostview_exec makeindex_exec ispell_exec
+ global MasterFlag Master
+ global FilenameArray UpToDateArray
+ global tcl_platform
+ global ispell_dictionary language
+ global log_flag
+ if $MasterFlag then {
+ set Q $Master
+ } else {
+ set Q $E
+ }
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+
+ # Setzt Pfad fuer die Bearbeitung
+ set nowpath [pwd]
+ cd [file dirname $FilenameArray($Q)]
+
+ switch $tcl_platform(platform) unix {
+ switch $BEFEHL latex {
+ SaveFile $E
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+ # Setzt Pfad fuer die Bearbeitung
+ set nowpath [pwd]
+ cd [file dirname $FilenameArray($Q)]
+ catch {exec xterm -e $latex_exec "$FILE.tex"} error
+ if { $log_flag } then {
+ if [file exists $FILE.log] then {
+ set f [open $FILE.log r]
+ set error [read $f]
+ set t [close $f]
+ }
+ }
+ if [file exists $FILE.idx] then {
+ catch {exec xterm -e $makeindex_exec "$FILE.idx"} error2
+ set error "$error\n\n$error2"
+ }
+ if { $log_flag } then {
+ Init_wmsg $Q "$error"
+ }
+ } xdvi {
+ catch {exec $xdvi_exec "$FILE.dvi" &} error
+ } dvips {
+ catch {set error [exec $dvips_exec "$FILE.dvi" -o "$FILE.ps"]} error
+ if { $log_flag } then {
+ Init_wmsg $Q "$error"
+ }
+ } ghostview {
+ catch {exec $ghostview_exec "$FILE.ps" &} error
+ } ispell {
+ SaveFile $E
+ catch {exec xterm -e $ispell_exec -t -d $ispell_dictionary($language) "$FILE.tex"} error
+ ReLoadFileArg $E "$FILE.tex"
+ }
+ } windows {
+ switch $BEFEHL latex {
+ SaveFile $E
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+ # Setzt Pfad fuer die Bearbeitung
+ set nowpath [pwd]
+ cd [file dirname $FilenameArray($Q)]
+ catch {exec xterm -e $latex_exec "$FILE.tex"} error
+ catch {exec $latex_exec "$FILE.tex"} error
+ if [file exists $FILE.idx] then {
+ catch {exec $makeindex_exec "$FILE.idx"} error2
+ set error "$error\n\n$error2"
+ }
+ Init_wmsg $Q "$error"
+ } xdvi {
+ catch {exec $xdvi_exec "$FILE.dvi" &} error
+ } dvips {
+ catch {exec $dvips_exec "$FILE.dvi" -o "$FILE.ps"} error
+ Init_wmsg $Q "$error"
+ } ghostview {
+ catch {exec $ghostview_exec "$FILE.ps" &} error
+ } ispell {
+ }
+ } default {}
+
+ # Setzt Pfad zurueck
+ cd $nowpath
+}
+proc Init_wmsg {E error} {
+ global T
+
+ if ![winfo exists $E.wmsg] then {
+ toplevel $E.wmsg
+ frame $E.wmsg.f
+ scrollbar $E.wmsg.f.vscroll -relief sunken -command "$E.wmsg.f.l yview"
+
+ text $E.wmsg.f.l -yscroll "$E.wmsg.f.vscroll set"
+ pack $E.wmsg.f.vscroll -side right -fill y
+ pack $E.wmsg.f.l -expand yes -fill both
+ button $E.wmsg.butQ -text $T(quit) -command "destroy $E.wmsg"
+
+ pack $E.wmsg.f $E.wmsg.butQ
+ wm title $E.wmsg $T(wmsg-titel)
+ COLOR $E.wmsg
+ bind $E.wmsg.f.l <Button> "Line_wmsg $E"
+ }
+ $E.wmsg.f.l configure -state normal
+ $E.wmsg.f.l delete 1.0 end
+ $E.wmsg.f.l insert 1.0 $error
+ $E.wmsg.f.l configure -state disabled
+ $E.wmsg.f.l see end
+ focus $E.wmsg
+}
+proc Line_wmsg E {
+ if {[string compare [$E.wmsg.f.l get "insert linestart"] "!"]==0} {
+ set lpos [$E.wmsg.f.l index "insert linestart + 1 l"]
+ } {
+ set lpos [$E.wmsg.f.l search -backwards -regexp "^l\\..* .*" insert]
+ }
+ $E.wmsg.f.l see $lpos
+ set txt [$E.wmsg.f.l get $lpos "$lpos lineend"]
+ if [string match "l.* *" $txt] {
+ set pos [string first " " $txt]
+ $E.te.edit1 mark set insert "[string range $txt 2 [expr $pos -1]].[expr [string length $txt] - $pos]"
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+ update
+ }
+}
+proc EDITORQUIT {E} {
+ global ModifiedArray T
+ if $ModifiedArray($E.te.edit1) then {
+ set sp [tk_messageBox -message $T(EDITORQUIT) -icon question -type yesnocancel]
+ switch $sp yes {
+ SaveFile $E
+ destroy $E
+ } no {
+ destroy $E
+ }
+ } else {destroy $E}
+}
+#######################################################################
+# Are i am in the inquisitation ??? What are you looking for ?
+#######################################################################
+proc EDITOR {} {
+ global FilenameArray UpToDateArray EDITORNUMMER ModifiedArray GotoArray UndoArray FocusEditor T
+ global BeginFlag BeginRealy
+ global erg_flag tcl_platform
+ global SpellColorRed BlockColor SyntaxColorGreen SyntaxColorRed SyntaxColorBlue ErgaenzungGray
+ global Delete2BackSpace_flag
+ global have_ispell_flag
+ incr EDITORNUMMER
+ set E ".editor$EDITORNUMMER"
+ set FilenameArray($E) scratch
+ set UpToDateArray($E) 0
+ set UndoArray($E.te.edit1) ""
+ set BeginFlag($E.te.edit1) 0
+ set BeginRealy($E.te.edit1) 0
+ set erg_flag($E.te.edit1) 0
+ set GotoArray($E.te.edit1) ""
+ set var$E.wcurser ""
+ toplevel $E
+ frame $E.todo
+ button $E.todo.master -image MasterBildSlaveOn -command "Master $E"
+
+ button $E.todo.save -text $T(Save) -command "SaveFile $E"
+
+ button $E.todo.saveas -text $T(SaveAs) -command "SaveAsFile $E"
+
+ button $E.todo.latex -text $T(EDITOR-latex) -command "MasterBefehl $E latex"
+ button $E.todo.xdvi -text $T(EDITOR-xdvi) -command "MasterBefehl $E xdvi"
+ button $E.todo.dvips -text $T(EDITOR-dvips) -command "MasterBefehl $E dvips"
+ button $E.todo.gv -text $T(EDITOR-ghostview) -command "MasterBefehl $E ghostview"
+ button $E.todo.ispell -text $T(EDITOR-ispell) -command "MasterBefehl $E ispell"
+
+ button $E.todo.pos -text "$T(EDITOR-ZS) END" -width 12 -command "Init_curser $E"
+ button $E.todo.syntax -text $T(EDITOR-Syntax) -command "Syntax $E.te.edit1 1.0 end"
+ button $E.todo.quit -text $T(Quit) -command "EDITORQUIT $E"
+
+ pack $E.todo.master $E.todo.save $E.todo.saveas $E.todo.latex $E.todo.xdvi $E.todo.dvips $E.todo.gv $E.todo.ispell $E.todo.syntax $E.todo.quit $E.todo.pos -side left -fill x
+ pack $E.todo -fill x
+
+ frame $E.te -relief raised -borderwidth 2
+ scrollbar $E.te.vscroll -relief sunken -command "$E.te.edit1 yview"
+ text $E.te.edit1 -font tft -yscroll "$E.te.vscroll set"
+
+ pack $E.te.vscroll -side right -fill y
+ pack $E.te.edit1 -expand yes -fill both
+ pack $E.te -expand yes -fill both
+ bind $E.te.edit1 <Control-d> {}
+ bind $E <Enter> "UpToDateFile $E"
+ bind $E.te.edit1 <<Help>> {HelpTo %W}
+ bind $E.te.edit1 <Control-k><x> "SaveFile $E"
+ bind $E.te.edit1 <Control-k><d> "SaveAsFile $E"
+ bind $E <FocusIn> "erg_proc $E.te.edit1 \n MasterFocus $E \$FocusEditor"
+ MasterFocus $E $FocusEditor
+ if {$Delete2BackSpace_flag == 0} {
+ bind $E.te.edit1 <Delete> {
+ if $erg_flag(%W) then {
+ proc_undo %W
+ set erg_flag(%W) 0
+ break
+ } else {
+ undo_switch %W {Save SelSave DeleteKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ }
+ }
+ bind $E.te.edit1 <BackSpace> {
+ undo_switch %W {Save SelSave BackSpaceKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ } else {
+ bind $E.te.edit1 <Delete> {
+ if $erg_flag(%W) then {
+ proc_undo %W
+ set erg_flag(%W) 0
+ break
+ } else {
+ undo_switch %W {Save SelSave BackSpaceKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ if {[%W tag nextrange sel 1.0 end] != ""} {
+ %W delete sel.first sel.last
+ } elseif [%W compare insert != 1.0] {
+ %W delete insert-1c
+ %W see insert
+ }
+ }
+ break
+ }
+ bind $E.te.edit1 <BackSpace> {
+ event generate %W <Delete>
+ break
+ }
+ }
+ set ModifiedArray($E.te.edit1) 0
+ bind $E.te.edit1 <<Position>> "event generate $E.te.edit1 <<Position_tail>> -when tail"
+ bind $E.te.edit1 <<Position_tail>> "$E.todo.pos configure -text \"$T(EDITOR-ZS) \[$E.te.edit1 index insert\]\"\nif \[winfo exists $E.wcurser\] {$E.wcurser.pos configure -text \"$T(EDITOR-ZS) \[$E.te.edit1 index insert\]\"}"
+ bind $E.te.edit1 <<Modified>> {
+ set ModifiedArray(%W) 1
+ }
+ bind $E.te.edit1 <<ERG>> {
+ ergaenzung %W
+ }
+ bind $E.te.edit1 <<BeginFlag>> {
+ set BeginFlag(%W) 0
+ erg_proc %W
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ bind $E.te.edit1 <<proc_undo>> {
+ undo_switch %W Save
+ event generate $FocusEditor.te.edit1 <<BeginFlag>>
+ }
+ bind $E.te.edit1 <F2> "SaveFile $E"
+ bind $E.te.edit1 <F3> {LoadFile}
+ bind $E.te.edit1 <F4> "$E.te.edit1 see insert"
+ bind $E.te.edit1 <F9> "MasterBefehl $E latex"
+ bind $E.te.edit1 <Alt-x> {ALLQUIT}
+ bind $E.te.edit1 <Alt-BackSpace> "pop_menu $E.te.edit1 Undo"
+ bind $E.te.edit1 <Shift-Delete> "pop_menu $E.te.edit1 Cut"
+ bind $E.te.edit1 <Control-Insert> "pop_menu $E.te.edit1 Copy"
+ bind $E.te.edit1 <Shift-Insert> "pop_menu $E.te.edit1 Paste"
+ bind $E.te.edit1 <Control-Delete> "pop_menu $E.te.edit1 Clear"
+ bind $E.te.edit1 <Control-l> {
+ if [winfo exists .wsearch] then {
+ .wsearch.f1.but2 invoke
+ }
+ }
+ bind $E.te.edit1 <Control-w> {ergaenzung2 %W}
+ wm protocol $E WM_DELETE_WINDOW "EDITORQUIT $E"
+ menu $E.pop_menu
+ $E.pop_menu add command -label $T(pop_menu-Undo) -command "pop_menu $E.te.edit1 Undo"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Cut) -command "pop_menu $E.te.edit1 Cut"
+ $E.pop_menu add command -label $T(pop_menu-Copy) -command "pop_menu $E.te.edit1 Copy"
+ $E.pop_menu add command -label $T(pop_menu-Paste) -command "pop_menu $E.te.edit1 Paste"
+ $E.pop_menu add command -label $T(pop_menu-Clear) -command "pop_menu $E.te.edit1 Clear"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Spell) -command "pop_menu $E.te.edit1 Spell"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Block) -command "pop_menu $E.te.edit1 Block"
+ $E.pop_menu add command -label $T(pop_menu-plus) -command "pop_menu $E.te.edit1 AusKomm"
+ $E.pop_menu add command -label $T(pop_menu-minus) -command "pop_menu $E.te.edit1 AusKommRueck"
+ $E.pop_menu add command -label $T(pop_menu-more) -command "ergaenzung2 $E.te.edit1"
+ if {[lindex [split [info tclversion] .] 0] > 7} {
+ switch $tcl_platform(platform) unix {
+ } windows {
+ $E configure -menu $E.pop_menu
+ }}
+ bind $E.te.edit1 <Button-3> "tk_popup $E.pop_menu \[winfo pointerx $E\] \[winfo pointery $E\]"
+ bind $E.te.edit1 <ssharp> {
+ if {[%W tag nextrange sel 1.0 end] != ""} {
+ undo_switch %W Save
+ %W insert sel.last "\}"
+ %W tag add undo sel.last sel.last+1c
+ %W mark set insert sel.first
+ %W insert insert "\{\\"
+ %W tag add undo insert-2c insert
+ %W tag remove sel 1.0 end
+ undo_switch %W {Save UndoMul}
+ break
+ }
+ }
+ $E.te.edit1 tag add spell 1.0 1.0
+ $E.te.edit1 tag add syntax_blue 1.0 1.0
+ $E.te.edit1 tag add syntax_red 1.0 1.0
+ $E.te.edit1 tag add syntax_green 1.0 1.0
+ $E.te.edit1 tag add BlockTag 1.0 1.0
+ $E.te.edit1 tag add erg_tag 1.0 1.0
+ $E.te.edit1 tag raise spell
+ $E.te.edit1 tag raise syntax_red
+ $E.te.edit1 tag raise syntax_green
+ $E.te.edit1 tag raise syntax_blue
+ $E.te.edit1 tag raise BlockTag
+ $E.te.edit1 tag raise erg_tag
+ $E.te.edit1 tag raise sel
+ $E.te.edit1 tag configure spell -foreground $SpellColorRed
+ $E.te.edit1 tag configure syntax_blue -foreground $SyntaxColorBlue
+ $E.te.edit1 tag configure syntax_green -foreground $SyntaxColorGreen
+ $E.te.edit1 tag configure syntax_red -foreground $SyntaxColorRed
+ $E.te.edit1 tag configure BlockTag -background $BlockColor
+ $E.te.edit1 tag configure erg_tag -background $ErgaenzungGray
+ $E.te.edit1 tag bind spell <Double-ButtonPress> "spell $E.te.edit1 add 1.0 end"
+ focus $E.te.edit1
+ COLOR $E
+ $E.te.edit1 configure -background White
+ return $E
+}
+
+proc pop_menu {E Fall} {
+ global BlockBeginFlag BlockEndFlag BlockEditor BlockColor UndoArray
+ switch $Fall Cut {
+ undo_switch $E {SelSave UndoMax}
+ tk_textCut $E
+ Syntax $E "insert linestart" "insert lineend"
+ } Copy {
+ tk_textCopy $E
+ } Paste {
+ set ksp [$E index {insert linestart}]
+ undo_switch $E {Save SelSave UndoBegin}
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ $E delete sel.first sel.last
+ }
+ tk_textPaste $E
+ undo_switch $E {UndoEnd SelMul UndoMax}
+ Syntax $E $ksp "insert lineend"
+ } Clear {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ undo_switch $E {SelSave UndoMax}
+ $E delete sel.first sel.last
+ Syntax $E "insert linestart" "insert lineend"
+ }
+ } Spell {
+ spell $E show 1.0 end
+ } Block {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ if {$BlockBeginFlag && $BlockEndFlag} then {$BlockEditor tag remove BlockTag 1.0 end}
+ set BlockBeginFlag 1
+ set BlockEndFlag 1
+ set BlockEditor $E
+ $E mark set BlockBegin [$E index sel.first]
+ $E mark set BlockEnd [$E index sel.last]
+ $E mark gravity BlockEnd left
+ $E tag add BlockTag BlockBegin BlockEnd
+ }
+ } AusKomm {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ AusKomm $E sel.first sel.last
+ }
+ } AusKommRueck {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ AusKommRueck $E sel.first sel.last
+ }
+ } Undo {
+ proc_undo $E
+ }
+}
+
+######################################################################
+# file routines (load save new saveas append)
+source $libpath/file.tcl
+
+#######################################################################
+# Setzt backslash's fuer eine Stringuebergabe ein
+source $libpath/backslash.tcl
+
+#######################################################################
+# search routine
+source $libpath/search.tcl
+
+#######################################################################
+# search routine
+source $libpath/umlaut.tcl
+
+########################################################################
+########################################################################
+# spelling
+source $libpath/spelling.tcl
+spell_load
+
+#######################################################################
+# pack-hilfe fuer buttons
+set packstring ""
+proc addpack {T} {
+ global packstring
+ lappend packstring $T
+}
+#######################################################################
+# picture-button
+proc FRLIAN {FRAME LISTE ANZ START} {
+ global txtpath gifpath hlppath
+ global I_befehl I_txt I_back
+ set ii 1
+ set fr 1
+ frame $FRAME.$START$fr
+ set i infty
+ foreach i $LISTE {
+ set x [backslash $I_befehl($i)]
+ button $FRAME.$START$fr.but$i -image [Bild $i] -command "if \$FocusEditorFlag then {focus \$FocusEditor.te.edit1 \nset ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n\$FocusEditor.te.edit1 insert insert \"$x\"\nundo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n\$FocusEditor.te.edit1 mark set insert \"insert - $I_back($i) chars\"\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Modified>>}"
+ bind $FRAME.$START$fr.but$i <<Help>> "Help $i"
+ bind $FRAME.$START$fr.but$i <<HelpHelp>> "Help $i"
+ if {$ii == $ANZ} then {
+ set ii 0
+ incr fr
+ frame $FRAME.$START$fr
+ }
+ incr ii
+ }
+ set ii 1
+ set fr 1
+ foreach i $LISTE {
+ pack $FRAME.$START$fr.but$i -side left
+ if {$ii == $ANZ} then {
+ pack $FRAME.$START$fr -side top
+ set ii 0
+ incr fr
+ }
+ incr ii
+ }
+ pack $FRAME.$START$fr -side top
+}
+
+#######################################################################
+# text-button
+proc buttonmake {NAME buttonmakecount latex} {
+ global I_befehl I_txt I_back
+ set t "[backslash "$I_befehl($latex)"]"
+
+
+ button $NAME.but$buttonmakecount -text $I_txt($latex) -command "if \$FocusEditorFlag then {\n focus \$FocusEditor.te.edit1 \n set ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n\$FocusEditor.te.edit1 insert insert \"$t\"\nundo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n\$FocusEditor.te.edit1 mark set insert \"insert - $I_back($latex) chars\"\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Modified>>}"
+ bind $NAME.but$buttonmakecount <<Help>> "Help $latex"
+ bind $NAME.but$buttonmakecount <<HelpHelp>> "Help $latex"
+ addpack $NAME.but$buttonmakecount
+}
+
+#######################################################################
+# myown Buttons
+proc InitMyOwn {} {
+ global FocusEditorFlag FocusEditor myown myown_max T
+ if ![winfo exists .wmyown] then {
+ toplevel .wmyown
+ wm title .wmyown $T(wmyown-titel)
+ for {set i 0} {$i < $myown_max} {incr i} {
+ frame .wmyown.f$i
+ entry .wmyown.f$i.text -width 20 -relief sunken -textvariable myown($i) -background White
+ button .wmyown.f$i.but -command "if \$FocusEditorFlag {focus \$FocusEditor.te.edit1\n set ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n \$FocusEditor.te.edit1 insert insert \[.wmyown.f$i.text get\]\n undo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Position_tail>> -when tail}"
+ menu .wmyown.f$i.pop_menu
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wmyown.f$i.text <<Cut>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Copy) -command "event generate .wmyown.f$i.text <<Copy>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wmyown.f$i.text <<Paste>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wmyown.f$i.text <<Clear>>"
+ bind .wmyown.f$i.text <Button-3> "tk_popup .wmyown.f$i.pop_menu \[winfo pointerx .wmyown.f$i\] \[winfo pointery .wmyown.f$i\]"
+
+
+ pack .wmyown.f$i.but .wmyown.f$i.text -side left
+ pack .wmyown.f$i
+ }
+ button .wmyown.butQ -text $T(Quit) -command {
+ destroy .wmyown
+ }
+ pack .wmyown.butQ
+ wm minsize . 1 1
+ bind .wmyown <<Help>> {Help $T(wmyown-Help)}
+ bind .wmyown <Control-c> {
+ destroy .wmyown
+ }
+ wm resizable .wmyown 0 0
+ COLOR .wmyown
+ for {set i 0} {$i < $myown_max} {incr i} {
+ .wmyown.f$i.text configure -background White
+ }
+ } else {focus .wmyown}
+}
+#######################################################################
+# Yeah, cut everything into small pieces to disturb curius people !
+#######################################################################
+# help online in the latex-text
+source $libpath/help.tcl
+HLP_load
+
+#######################################################################
+# auto complition
+source $libpath/complition.tcl
+
+#######################################################################
+# help-system of tcltexed
+source $libpath/helpmanual.tcl
+
+#######################################################################
+# undo function
+source $libpath/undo.tcl
+
+#######################################################################
+# Farbige Syntax
+source $libpath/syntax.tcl
+
+#######################################################################
+# Bilderverwaltung
+proc Bild {name} {
+ global gifpath I_txt
+ set ksp [lsearch [image names] "IMAGE$I_txt($name)"]
+ if {$ksp == -1} {
+ image create photo "IMAGE$I_txt($name)" -file "$gifpath/$I_txt($name).gif"
+ }
+ return "IMAGE$I_txt($name)"
+}
+#######################################################################
+# Goto Curser
+proc Init_curser {E} {
+ global T GotoArray
+
+ if ![winfo exists $E.wcurser] then {
+ toplevel $E.wcurser
+ label $E.wcurser.l -text $T(wcurser-gotocurser)
+ label $E.wcurser.pos -text "$T(EDITOR-ZS) [$E.te.edit1 index insert]" -width 12
+ entry $E.wcurser.text -width 6 -relief sunken -textvariable GotoArray($E.te.edit1) -background White
+ frame $E.wcurser.f
+ button $E.wcurser.f.goto -text $T(wcurser-goto) -command "if \[catch {if {\[llength \[split \$GotoArray($E.te.edit1) .\]\] == 1} {append GotoArray($E.te.edit1) \".0\"}\n$E.te.edit1 mark set insert \$GotoArray($E.te.edit1)\n$E.te.edit1 see insert\nevent generate $E.te.edit1 <<Position_tail>> -when tail\n focus $E.te.edit1}\] {set GotoArray($E.te.edit1) \[$E.te.edit1 index insert\]}"
+
+
+ button $E.wcurser.f.butQ -text $T(Quit) -command "destroy $E.wcurser"
+ pack $E.wcurser.f.goto $E.wcurser.f.butQ -side left
+ pack $E.wcurser.l $E.wcurser.pos $E.wcurser.text $E.wcurser.f
+ wm title $E.wcurser $T(wcurser-titel)
+ COLOR $E.wcurser
+ $E.wcurser.text configure -background White
+ }
+ focus $E.wcurser
+}
+#######################################################################
+# It's all folks !
+#######################################################################
+# Bei Programstart eine Message
+
+if $readme_flag {
+ Help readme_hlp
+}
+
+if {[ string compare [ info procs tkTextInsert ] tkTextInsert]} {
+ # contributed by Aaron Mueller
+ proc tkTextInsert {w s} {
+ if {$s == ""} {return}
+ catch {
+ if {[$w compare sel.first <= insert] && [$w compare sel.last >= insert]} {
+ $w tag remove sel sel.first promptEnd
+ $w delete sel.first sel.last
+ }
+ }
+ $w insert insert $s
+ $w see insert
+ }
+}
+@
+
+
+1.10
+log
+@*** empty log message ***
+@
+text
+@d1 3
+a3 3
+#!/usr/bin/wish8.0
+# Tcltexed | Version 2.6 | 16. Aug. 2000 | Martin Strauss
+set Tcltexed_Version 2.6
+d31 1
+a31 1
+set basepath /usr/local/app/tcltexed-2.6
+d381 1
+a381 1
+.mb.button3.m.m2 add radiobutton -variable language -value 3 -label $T(MW-indonesia) -command {tk_messageBox -message $T(MW-language-msg)}
+d1095 15
+@
+
+
+1.9
+log
+@+bre
++log_flag
+@
+text
+@d68 4
+a98 2
+
+set log_flag 0
+@
+
+
+1.8
+log
+@*** empty log message ***
+@
+text
+@d71 2
+a72 2
+# englisch 0 , german 1 , indonesia 2
+set language 1
+d96 1
+d172 1
+d360 1
+d379 1
+d545 1
+d562 4
+d567 6
+a572 4
+ if [file exists $FILE.log] then {
+ set f [open $FILE.log r]
+ set error [read $f]
+ set t [close $f]
+d578 3
+a580 1
+ Init_wmsg $Q "$error"
+d585 3
+a587 1
+ Init_wmsg $Q "$error"
+d598 1
+d600 3
+@
+
+
+1.7
+log
+@*** empty log message ***
+@
+text
+@d186 1
+d538 1
+a538 1
+ global FilenameArray
+d621 1
+d630 15
+d661 1
+a661 1
+ global FilenameArray EDITORNUMMER ModifiedArray GotoArray UndoArray FocusEditor T
+d670 1
+d706 1
+@
+
+
+1.6
+log
+@*** empty log message ***
+@
+text
+@d71 2
+a72 2
+# englisch 0 , german 1
+set language 0
+d170 1
+d374 1
+@
+
+
+1.5
+log
+@*** empty log message ***
+@
+text
+@d382 1
+@
+
+
+1.4
+log
+@*** empty log message ***
+@
+text
+@d2 2
+a3 2
+# Tcltexed | Version 2.5 | 11. Apr. 2000 | Martin Strauss
+set Tcltexed_Version 2.5
+d31 1
+a31 1
+set basepath /usr/local/app/tcltexed-2.5
+@
+
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@d84 1
+d92 1
+d166 4
+d532 1
+a532 1
+ global latex_exec xdvi_exec dvips_exec ghostview_exec makeindex_exec
+d536 1
+a552 1
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+d571 4
+d594 1
+d646 1
+d668 2
+a669 1
+
+d674 1
+a674 1
+ pack $E.todo.master $E.todo.save $E.todo.saveas $E.todo.latex $E.todo.xdvi $E.todo.dvips $E.todo.gv $E.todo.syntax $E.todo.quit $E.todo.pos -side left -fill x
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d162 2
+d343 2
+d712 1
+a712 1
+ bind $E.te.edit1 <Backspace> {
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 1034
+a1034 1004
+#!/usr/bin/wish8.0
+# Tcltexed | Version 2.4 | 9. Nov. 1999 | Martin Strauss
+set Tcltexed_Version 2.4
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1999 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+ set basepath ~/tcltexed-2.4
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set menupath $basepath/lib/menu
+set txtpath $basepath/txt
+set hlppath $basepath/hlp
+set gifpath $basepath/gif
+set bhtpath $basepath/bht
+set etcpath $basepath/etc
+set libpath $basepath/lib
+#######################################################################
+# Where to save options, this should work in the most cases
+# without interferring
+switch $tcl_platform(platform) unix {
+ set inifile $env(HOME)/.tcltexed
+ set spellfileown $env(HOME)/.tcltexed_spell
+ set spellfile $etcpath/tcltexed.sp
+} windows {
+ switch $tcl_platform(os) "Windows 95" {
+ set inifile $etcpath/tcltexed.ini
+ set spellfileown $etcpath/tcltexed_own.sp
+ set spellfile $etcpath/tcltexed.sp
+ } "Windows NT" {
+ set inifile $env(USERPROFILE)/tcltexed.ini
+ set spellfileown $env(USERPROFILE)/tcltexed.sp
+ set spellfile $etcpath/tcltexed.sp
+ }
+}
+#######################################################################
+# If your colors make problems like ignoring all grey colors etc
+# try to set this flag to 1, if it works with 0 it will be faster
+set COLOR_flag 0
+###############################################################
+# If you get tired of the welcome-message on the beginning
+# set the value of readme_flag to 0 (else back to 1)
+set readme_flag 1
+# but you will use this window later anyway ...
+#######################################################################
+#######################################################################
+# defaultvalue for the language
+# englisch 0 , german 1
+set language 0
+
+#######################################################################
+##########################################################################
+# extern Commands make for sure you've the rigth path here
+switch $tcl_platform(platform) unix {
+ # unix und linux Programme
+ set latex_exec "latex"
+ set xdvi_exec "xdvi"
+ set dvips_exec "dvips"
+ set ghostview_exec "ghostview"
+ set makeindex_exec "makeindex"
+} windows {
+ # Windows 9x and NT
+ set latex_exec "latex"
+ set xdvi_exec "yap"
+ set dvips_exec "dvips"
+ set ghostview_exec "C:/gstools/gsview/gsview32"
+ set makeindex_exec "makeindex"
+} default {exit}
+# interested Mac users should contact me !
+
+
+##########################################################################
+####### There is no point to "repair" anything beyond this line ##########
+##########################################################################
+# Maximal length of the memory in bytes spend for the UNDO function
+# for each window.
+set max_undo 500
+#######################################################################
+# nown packetes, first named the file (.bth) to load, then the name to
+# display
+set PLISTE [list latex latex latex_math "+math" latex_other "+more" picture "+picture" tabelle "+tabular/array" notiz "+footnote/marginpar" latex209 "+latex 2.09" amsmath amsmath amssymb amssymb amsfonts amsfonts amscd amscd amsthm amsthm epsf epsf graphics "graphics/x"]
+#######################################################################
+# "My Own", number of selfdefined buttons
+set myown_max 10
+#######################################################################
+# complition by mouse, number of lines shown at once
+set erg2_max 10
+#######################################################################
+# help on LaTeX-commands, number of lines shown at once
+set wlatex_max 20
+#######################################################################
+# help on Tcltexed, number of lines shown at once
+set wTcltexed_max 6
+#######################################################################
+# number of chars after a line is forced to break
+set line_breaking_chars 80
+#######################################################################
+
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+#######################################################################
+# default font size
+set tft_size 12
+#######################################################################
+# event Delete sei BackSpace
+set Delete2BackSpace_flag 0
+#######################################################################
+# What not to have within a word to spell
+# [-0123456789&$^\[\]?\\+*/%=_]
+set spell_not "\[-0123456789&$^\\\[\\\]\\\\+*/%=_\]"
+set spell_yes "\[ \n\t.,:;!?\\\[\\\]\{\}()\]"
+# number of lines shown at once for nearly matched words
+set wspell_max 10
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+# Testwindow
+# eval "toplevel .test\nlabel .test.t1\nlabel .test.t2\npack .test.t1 .test.t2"
+
+ # Editor
+ set EDITORNUMMER 0
+ # Focus
+ set FocusEditorFlag 0
+ set FocusEditor ""
+ # Filenamen
+ set FilenameArray(scratch) "scratch"
+ set ModifiedArray(scratch) 0
+ set GotoArray(scratch) ""
+ set UndoArray(scratch) ""
+ # Block
+ set BlockBeginFlag 0
+ set BlockEndFlag 0
+ set BlockEditor ""
+ # Projekt
+ set MasterFlag 0
+ set Master ""
+ set Masterfile ""
+ image create photo MasterBildSlaveOn -file "$gifpath/slaveon.gif"
+ image create photo MasterBildSlaveOff -file "$gifpath/slaveoff.gif"
+ image create photo MasterBildMasterOn -file "$gifpath/masteron.gif"
+ image create photo MasterBildMasterOff -file "$gifpath/masteroff.gif"
+ # Search
+ set wsearch_gb 1
+ # Klammern automatische
+ set KlammerFlag 1
+ # fuer .wlatex ein ABC
+set ABC [list A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z]
+ # Syntax
+ set syntax_flag 1
+ # Startverzeichnis in das gespeichert wird
+ set directory [pwd]
+ # Spelling
+ set spell_flag 1
+ # help
+ set hlpfile ""
+#######################################################################
+# tclversion mindestens 8
+if {[lindex [split tk_version .] 0] < 8} {
+ exit
+}
+#######################################################################
+# tag Farben
+# wrong Spelling
+set SpellColorRed "#800000"
+# Syntax Highlightning
+set SyntaxColorBlue Blue
+set SyntaxColorRed Red
+set SyntaxColorGreen "#007300"
+# LaTeX-Befehlsergaenzung
+set ErgaenzungGray Gray
+# Block
+set BlockColor "#e0e0e0"
+#######################################################################
+# set several default values
+source $libpath/arg.tcl
+
+#######################################################################
+proc I {name befehl txt back} {
+ global T I_befehl I_txt I_back I_state I_flag I_file
+ switch $I_flag 2 {
+ if [info exists I_befehl($name)] {
+ tk_messageBox -message $T(BHTERROR1)$I_file$T(BHTERROR2)$name$T(BHTERROR3)$befehl -icon error -type ok
+ } {
+ set I_befehl($name) $befehl
+ set I_txt($name) $txt
+ set I_back($name) $back
+ }
+ } 0 {
+ unset I_state($name)
+ } 1 {
+ set I_state($name) 1
+ }
+}
+#######################################################################
+# Options
+source $libpath/options.tcl
+
+LoadOptions
+#######################################################################
+# set several default fonts
+font create tft -family Courier -size $tft_size
+
+#######################################################################
+# language
+source $libpath/translate$language.tcl
+#######################################################################
+# virtuelle events
+source $libpath/events.tcl
+
+#######################################################################
+# Umdefinition des Defaultverhaltens fuer Text-variablen
+source $libpath/bindings.tcl
+
+#######################################################################
+# Default Color
+source $libpath/color.tcl
+
+#######################################################################
+# line breaking
+source $libpath/linebreak.tcl
+
+#######################################################################
+# Oh no, again someone very nosey around !
+#######################################################################
+# Mainwindow
+frame .mb
+
+set LISTE [glob $menupath/*.itm]
+set MenuModus 1
+set MenuItemList ""
+source $menupath/menu
+foreach i $LISTE {
+ source $i
+ lappend ItemList $i
+ lappend MenuItemList "$ItemList"
+}
+frame .mb.menu
+foreach i [lsort $MenuItemList] {
+ if [lindex $i 1] {
+ .mb.menu.button[lindex $i 0].m add command -label [lindex [lindex $i 2] $language] -command "makeWindow .menu[lindex $i 0]Item[lindex $i 1] \"[lindex $i 3]\""
+ } else {
+ menubutton .mb.menu.button[lindex $i 0] -text [lindex [lindex $i 2] $language] -relief raised -menu .mb.menu.button[lindex $i 0].m
+ menu .mb.menu.button[lindex $i 0].m
+ pack .mb.menu.button[lindex $i 0] -side left -padx 2m -fill x -expand yes
+ }
+}
+
+
+
+menubutton .mb.button1 -text $T(MW-File) -relief raised -menu .mb.button1.m
+menubutton .mb.button2 -text $T(MW-Edit) -relief raised -menu .mb.button2.m
+menubutton .mb.button3 -text $T(MW-Options) -relief raised -menu .mb.button3.m
+menubutton .mb.button4 -text $T(MW-Help) -relief raised -menu .mb.button4.m
+
+pack .mb.button1 .mb.button2 .mb.button3 .mb.menu .mb.button4 -side left -padx 2m -fill x -expand yes
+
+menu .mb.button1.m
+menu .mb.button2.m
+menu .mb.button3.m
+menu .mb.button4.m
+
+
+# Neues EditorFenster
+.mb.button1.m add command -label $T(MW-New) -command {NewFile}
+.mb.button1.m add command -label $T(MW-Load) -command {LoadFile}
+.mb.button1.m add command -label $T(MW-Append) -command {
+ if $FocusEditorFlag then {AppendFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-Save) -command {
+ if $FocusEditorFlag then {SaveFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-SaveAs) -command {
+ if $FocusEditorFlag then {SaveAsFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-Quit) -command {ALLQUIT}
+
+.mb.button2.m add command -label $T(MW-Clear) -command {CLEAR}
+menu .mb.button2.m.m1
+.mb.button2.m.m1 add command -label $T(LB-all) -command \
+{if {$FocusEditorFlag} {Line_breaking_switch $FocusEditor.te.edit1 all}}
+.mb.button2.m.m1 add command -label $T(LB-section) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 section}}
+.mb.button2.m.m1 add command -label $T(LB-line) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 line}}
+.mb.button2.m.m1 add command -label $T(LB-unall) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unall}}
+.mb.button2.m.m1 add command -label $T(LB-unsection) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unsection}}
+.mb.button2.m.m1 add command -label $T(LB-unline) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unline}}
+.mb.button2.m add cascade -label $T(LB-breakline) -menu .mb.button2.m.m1
+.mb.button2.m add command -label $T(MW-Spelling) -command \
+{if $FocusEditorFlag {spell $FocusEditor.te.edit1 show 1.0 end}}
+.mb.button2.m add command -label $T(MW-Spell) -command {if $FocusEditorFlag {spell $FocusEditor.te.edit1 add 1.0 end}}
+.mb.button2.m add command -label $T(MW-Search) -command {InitSearch}
+.mb.button2.m add command -label $T(MW-MyOwn) -command {InitMyOwn}
+
+.mb.button3.m add checkbutton -variable KlammerFlag -label $T(MW-AutoKlammerZu)
+.mb.button3.m add checkbutton -variable syntax_flag -label $T(MW-Syntax)
+menu .mb.button3.m.m1
+foreach {i n} $PLISTE {
+ set I_file $bhtpath/$i.bht
+ set I_flag 2
+ source $bhtpath/$i.bht
+ .mb.button3.m.m1 add checkbutton -variable Package($i) -label $n -command "set I_file $bhtpath/\$i.bht\nset I_flag \$Package($i)\nsource $bhtpath/$i.bht"
+}
+set LISTE [lsort [array names I_befehl]]
+set wlatex_LISTE ""
+foreach i $ABC {
+ lappend wlatex_LISTE [lsearch -glob $LISTE $i*]
+}
+unset LISTE
+.mb.button3.m add cascade -label $T(MW-Packages) -menu .mb.button3.m.m1
+menu .mb.button3.m.m2
+.mb.button3.m.m2 add radiobutton -variable language -value 0 -label $T(MW-english) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m.m2 add radiobutton -variable language -value 1 -label $T(MW-german) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m add cascade -label $T(MW-language) -menu .mb.button3.m.m2
+menu .mb.button3.m.m3
+
+ foreach i {6 8 10 12 14 16 18 20 22 24} {
+ .mb.button3.m.m3 add radiobutton -variable tft_size -value $i -label $i -command "font configure tft -size $i"
+ }
+.mb.button3.m add cascade -label $T(MW-size) -menu .mb.button3.m.m3
+.mb.button3.m add command -label $T(MW-SaveOptions) -command {SaveOptions}
+
+.mb.button4.m add command -label $T(MW-Tcltexed) -command {InitTcltexed}
+.mb.button4.m add command -label $T(MW-LaTeX) -command {InitListen}
+
+wm resizable . 0 0
+wm protocol . WM_DELETE_WINDOW {ALLQUIT}
+#######################################################################
+proc CLEAR {} {
+ global FocusEditorFlag T FocusEditor
+ if $FocusEditorFlag then {
+ if {[winfo exists .wclear] == 0} then {
+ set sp [tk_messageBox -icon question -message $T(MW-Clear-msg) -type okcancel]
+ switch $sp ok {
+ $FocusEditor.te.edit1 delete 1.0 end
+}}}}
+
+proc ALLQUIT {} {
+ global ModifiedArray T
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ if $ModifiedArray([array nextelement ModifiedArray $ID]) then {
+ set Flag 0
+ }
+ }
+ array donesearch ModifiedArray $ID
+ if {$Flag == 0} then {
+ switch [tk_messageBox -message $T(ALLQUIT1) -icon question -type yesnocancel] yes {
+ switch [tk_messageBox -message $T(ALLQUIT2) -icon question -type yesnocancel] yes {
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID]} {
+ set E [array nextelement ModifiedArray $ID]
+ if $ModifiedArray($E) then {
+ set ed [string range $E 0 [expr [string length $E] - 10]]
+ focus $ed
+ SaveFile $ed
+ }}
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ if $ModifiedArray([array nextelement ModifiedArray $ID]) then {
+ set Flag 0
+ }
+ }
+ if $Flag then {destroy .}
+ } no {
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ set E [array nextelement ModifiedArray $ID]
+ if $ModifiedArray($E) then {
+ set ed [string range $E 0 [expr [string length $E] - 10]]
+ focus $ed
+ switch [tk_messageBox -parent $ed -message $T(ALLQUIT3)[wm title $ed] -icon question -type yesnocancel] yes {
+ SaveFile $ed
+ } no {} cancel {
+ set Flag 0
+ }
+ }}
+ if $Flag then {destroy .}
+ } cancel {}
+ } no {destroy .} cancel {}
+ } else {destroy .}
+ spell_save
+}
+#######################################################################
+proc makeWindow {NAME S} {
+ global T language
+ global packstring
+ if {[winfo exists $NAME] == 0} then {
+ set MenuModus 0
+ toplevel $NAME
+ set packstring ""
+ source $S
+ button $NAME.q -text $T(Quit) -command "destroy $NAME"
+ pack $NAME.q
+ bind $NAME <Control-c> {
+ destroy %W
+ }
+ bind $NAME <<Help>> "set ksp \[winfo containing -displayof $NAME \[winfo pointerx $NAME\] \[winfo pointery $NAME\]\]\n if {\$ksp != \"\"} then {event generate \$ksp <<HelpHelp>>}"
+
+ bind $NAME <Button-3> "set ksp \[winfo containing -displayof $NAME \[winfo pointerx $NAME\] \[winfo pointery $NAME\]\]\n if {\$ksp != \"\"} then {event generate \$ksp <<HelpHelp>>}"
+
+ wm resizable $NAME 0 0
+ COLOR $NAME
+ } else {focus $NAME}
+}
+
+
+
+ pack .mb -pady 2m -fill x
+ COLOR .
+#######################################################################
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+#######################################################################
+proc Master {E} {
+ global MasterFlag Master
+ if $MasterFlag then {
+ if [string compare $Master $E] then {
+ $Master.todo.master configure -image MasterBildSlaveOff
+ set Master $E
+ $Master.todo.master configure -image MasterBildMasterOn
+ } else {
+ set MasterFlag 0
+ $Master.todo.master configure -image MasterBildSlaveOn
+ }} else {
+ set MasterFlag 1
+ set Master $E
+ $Master.todo.master configure -image MasterBildMasterOn
+ }
+}
+proc MasterFocus {NEW OLD} {
+ global MasterFlag Master
+ global FocusEditorFlag FocusEditor
+ if $MasterFlag then {
+ if [string compare $Master $NEW] then {
+ $NEW.todo.master configure -image MasterBildSlaveOn
+ } else {
+ $NEW.todo.master configure -image MasterBildMasterOn
+ }
+ if $FocusEditorFlag then {
+ if [string compare $NEW $OLD] then {
+ if [string compare $Master $OLD] then {
+ $OLD.todo.master configure -image MasterBildSlaveOff
+ } else {
+ $OLD.todo.master configure -image MasterBildMasterOff
+ }}}
+ } else {
+ $NEW.todo.master configure -image MasterBildSlaveOn
+ if [string compare $NEW $OLD] then {
+ if $FocusEditorFlag then { $OLD.todo.master configure -image MasterBildSlaveOff}
+ }}
+ set FocusEditorFlag 1
+ set FocusEditor $NEW
+}
+proc MasterBefehl {E BEFEHL} {
+ global latex_exec xdvi_exec dvips_exec ghostview_exec makeindex_exec
+ global MasterFlag Master
+ global FilenameArray
+ global tcl_platform
+ if $MasterFlag then {
+ set Q $Master
+ } else {
+ set Q $E
+ }
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+
+ # Setzt Pfad fuer die Bearbeitung
+ set nowpath [pwd]
+ cd [file dirname $FilenameArray($Q)]
+
+ switch $tcl_platform(platform) unix {
+ switch $BEFEHL latex {
+ SaveFile $E
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+ catch {exec xterm -e $latex_exec "$FILE.tex"} error
+ if [file exists $FILE.log] then {
+ set f [open $FILE.log r]
+ set error [read $f]
+ set t [close $f]
+ }
+ if [file exists $FILE.idx] then {
+ catch {exec xterm -e $makeindex_exec "$FILE.idx"} error2
+ set error "$error\n\n$error2"
+ }
+ Init_wmsg $Q "$error"
+ } xdvi {
+ catch {exec $xdvi_exec "$FILE.dvi" &} error
+ } dvips {
+ catch {set error [exec $dvips_exec "$FILE.dvi" -o "$FILE.ps"]} error
+ Init_wmsg $Q "$error"
+ } ghostview {
+ catch {exec $ghostview_exec "$FILE.ps" &} error
+ }
+ } windows {
+ switch $BEFEHL latex {
+ SaveFile $E
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+ catch {exec xterm -e $latex_exec "$FILE.tex"} error
+ catch {exec $latex_exec "$FILE.tex"} error
+ if [file exists $FILE.idx] then {
+ catch {exec $makeindex_exec "$FILE.idx"} error2
+ set error "$error\n\n$error2"
+ }
+ Init_wmsg $Q "$error"
+ } xdvi {
+ catch {exec $xdvi_exec "$FILE.dvi" &} error
+ } dvips {
+ catch {exec $dvips_exec "$FILE.dvi" -o "$FILE.ps"} error
+ Init_wmsg $Q "$error"
+ } ghostview {
+ catch {exec $ghostview_exec "$FILE.ps" &} error
+ }
+ } default {}
+
+ # Setzt Pfad zurueck
+ cd $nowpath
+}
+proc Init_wmsg {E error} {
+ global T
+
+ if ![winfo exists $E.wmsg] then {
+ toplevel $E.wmsg
+ frame $E.wmsg.f
+ scrollbar $E.wmsg.f.vscroll -relief sunken -command "$E.wmsg.f.l yview"
+
+ text $E.wmsg.f.l -yscroll "$E.wmsg.f.vscroll set"
+ pack $E.wmsg.f.vscroll -side right -fill y
+ pack $E.wmsg.f.l -expand yes -fill both
+ button $E.wmsg.butQ -text $T(quit) -command "destroy $E.wmsg"
+
+ pack $E.wmsg.f $E.wmsg.butQ
+ wm title $E.wmsg $T(wmsg-titel)
+ COLOR $E.wmsg
+ }
+ $E.wmsg.f.l configure -state normal
+ $E.wmsg.f.l delete 1.0 end
+ $E.wmsg.f.l insert 1.0 $error
+ $E.wmsg.f.l configure -state disabled
+ $E.wmsg.f.l see end
+ focus $E.wmsg
+}
+proc EDITORQUIT {E} {
+ global ModifiedArray T
+ if $ModifiedArray($E.te.edit1) then {
+ set sp [tk_messageBox -message $T(EDITORQUIT) -icon question -type yesnocancel]
+ switch $sp yes {
+ SaveFile $E
+ destroy $E
+ } no {
+ destroy $E
+ }
+ } else {destroy $E}
+}
+#######################################################################
+# Are i am in the inquisitation ??? What are you looking for ?
+#######################################################################
+proc EDITOR {} {
+ global FilenameArray EDITORNUMMER ModifiedArray GotoArray UndoArray FocusEditor T
+ global BeginFlag BeginRealy
+ global erg_flag tcl_platform
+ global SpellColorRed BlockColor SyntaxColorGreen SyntaxColorRed SyntaxColorBlue ErgaenzungGray
+ global Delete2BackSpace_flag
+ incr EDITORNUMMER
+ set E ".editor$EDITORNUMMER"
+ set FilenameArray($E) scratch
+ set UndoArray($E.te.edit1) ""
+ set BeginFlag($E.te.edit1) 0
+ set BeginRealy($E.te.edit1) 0
+ set erg_flag($E.te.edit1) 0
+ set GotoArray($E.te.edit1) ""
+ set var$E.wcurser ""
+ toplevel $E
+ frame $E.todo
+ button $E.todo.master -image MasterBildSlaveOn -command "Master $E"
+
+ button $E.todo.save -text $T(Save) -command "SaveFile $E"
+
+ button $E.todo.saveas -text $T(SaveAs) -command "SaveAsFile $E"
+
+ button $E.todo.latex -text $T(EDITOR-latex) -command "MasterBefehl $E latex"
+ button $E.todo.xdvi -text $T(EDITOR-xdvi) -command "MasterBefehl $E xdvi"
+ button $E.todo.dvips -text $T(EDITOR-dvips) -command "MasterBefehl $E dvips"
+ button $E.todo.gv -text $T(EDITOR-ghostview) -command "MasterBefehl $E ghostview"
+
+ button $E.todo.pos -text "$T(EDITOR-ZS) END" -width 12 -command "Init_curser $E"
+ button $E.todo.syntax -text $T(EDITOR-Syntax) -command "Syntax $E.te.edit1 1.0 end"
+ button $E.todo.quit -text $T(Quit) -command "EDITORQUIT $E"
+
+ pack $E.todo.master $E.todo.save $E.todo.saveas $E.todo.latex $E.todo.xdvi $E.todo.dvips $E.todo.gv $E.todo.syntax $E.todo.quit $E.todo.pos -side left -fill x
+ pack $E.todo -fill x
+
+ frame $E.te -relief raised -borderwidth 2
+ scrollbar $E.te.vscroll -relief sunken -command "$E.te.edit1 yview"
+ text $E.te.edit1 -font tft -yscroll "$E.te.vscroll set"
+
+ pack $E.te.vscroll -side right -fill y
+ pack $E.te.edit1 -expand yes -fill both
+ pack $E.te -expand yes -fill both
+ bind $E.te.edit1 <Control-d> {}
+ bind $E.te.edit1 <<Help>> {HelpTo %W}
+ bind $E.te.edit1 <Control-k><x> "SaveFile $E"
+ bind $E.te.edit1 <Control-k><d> "SaveAsFile $E"
+ bind $E <FocusIn> "erg_proc $E.te.edit1 \n MasterFocus $E \$FocusEditor"
+ MasterFocus $E $FocusEditor
+ if {$Delete2BackSpace_flag == 0} {
+ bind $E.te.edit1 <Delete> {
+ if $erg_flag(%W) then {
+ proc_undo %W
+ set erg_flag(%W) 0
+ break
+ } else {
+ undo_switch %W {Save SelSave DeleteKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ }
+ }
+ bind $E.te.edit1 <BackSpace> {
+ undo_switch %W {Save SelSave BackSpaceKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ } else {
+ bind $E.te.edit1 <Delete> {
+ if $erg_flag(%W) then {
+ proc_undo %W
+ set erg_flag(%W) 0
+ break
+ } else {
+ undo_switch %W {Save SelSave BackSpaceKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ if {[%W tag nextrange sel 1.0 end] != ""} {
+ %W delete sel.first sel.last
+ } elseif [%W compare insert != 1.0] {
+ %W delete insert-1c
+ %W see insert
+ }
+ }
+ break
+ }
+ bind $E.te.edit1 <Backspace> {
+ event generate %W <Delete>
+ break
+ }
+ }
+ set ModifiedArray($E.te.edit1) 0
+ bind $E.te.edit1 <<Position>> "event generate $E.te.edit1 <<Position_tail>> -when tail"
+ bind $E.te.edit1 <<Position_tail>> "$E.todo.pos configure -text \"$T(EDITOR-ZS) \[$E.te.edit1 index insert\]\"\nif \[winfo exists $E.wcurser\] {$E.wcurser.pos configure -text \"$T(EDITOR-ZS) \[$E.te.edit1 index insert\]\"}"
+ bind $E.te.edit1 <<Modified>> {
+ set ModifiedArray(%W) 1
+ }
+ bind $E.te.edit1 <<ERG>> {
+ ergaenzung %W
+ }
+ bind $E.te.edit1 <<BeginFlag>> {
+ set BeginFlag(%W) 0
+ erg_proc %W
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ bind $E.te.edit1 <<proc_undo>> {
+ undo_switch %W Save
+ event generate $FocusEditor.te.edit1 <<BeginFlag>>
+ }
+ bind $E.te.edit1 <F2> "SaveFile $E"
+ bind $E.te.edit1 <F3> {LoadFile}
+ bind $E.te.edit1 <F4> "$E.te.edit1 see insert"
+ bind $E.te.edit1 <F9> "MasterBefehl $E latex"
+ bind $E.te.edit1 <Alt-x> {ALLQUIT}
+ bind $E.te.edit1 <Alt-BackSpace> "pop_menu $E.te.edit1 Undo"
+ bind $E.te.edit1 <Shift-Delete> "pop_menu $E.te.edit1 Cut"
+ bind $E.te.edit1 <Control-Insert> "pop_menu $E.te.edit1 Copy"
+ bind $E.te.edit1 <Shift-Insert> "pop_menu $E.te.edit1 Paste"
+ bind $E.te.edit1 <Control-Delete> "pop_menu $E.te.edit1 Clear"
+ bind $E.te.edit1 <Control-l> {
+ if [winfo exists .wsearch] then {
+ .wsearch.f1.but2 invoke
+ }
+ }
+ bind $E.te.edit1 <Control-w> {ergaenzung2 %W}
+ wm protocol $E WM_DELETE_WINDOW "EDITORQUIT $E"
+ menu $E.pop_menu
+ $E.pop_menu add command -label $T(pop_menu-Undo) -command "pop_menu $E.te.edit1 Undo"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Cut) -command "pop_menu $E.te.edit1 Cut"
+ $E.pop_menu add command -label $T(pop_menu-Copy) -command "pop_menu $E.te.edit1 Copy"
+ $E.pop_menu add command -label $T(pop_menu-Paste) -command "pop_menu $E.te.edit1 Paste"
+ $E.pop_menu add command -label $T(pop_menu-Clear) -command "pop_menu $E.te.edit1 Clear"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Spell) -command "pop_menu $E.te.edit1 Spell"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Block) -command "pop_menu $E.te.edit1 Block"
+ $E.pop_menu add command -label $T(pop_menu-plus) -command "pop_menu $E.te.edit1 AusKomm"
+ $E.pop_menu add command -label $T(pop_menu-minus) -command "pop_menu $E.te.edit1 AusKommRueck"
+ $E.pop_menu add command -label $T(pop_menu-more) -command "ergaenzung2 $E.te.edit1"
+ if {[lindex [split [info tclversion] .] 0] > 7} {
+ switch $tcl_platform(platform) unix {
+ } windows {
+ $E configure -menu $E.pop_menu
+ }}
+ bind $E.te.edit1 <Button-3> "tk_popup $E.pop_menu \[winfo pointerx $E\] \[winfo pointery $E\]"
+ bind $E.te.edit1 <ssharp> {
+ if {[%W tag nextrange sel 1.0 end] != ""} {
+ undo_switch %W Save
+ %W insert sel.last "\}"
+ %W tag add undo sel.last sel.last+1c
+ %W mark set insert sel.first
+ %W insert insert "\{\\"
+ %W tag add undo insert-2c insert
+ %W tag remove sel 1.0 end
+ undo_switch %W {Save UndoMul}
+ break
+ }
+ }
+ $E.te.edit1 tag add spell 1.0 1.0
+ $E.te.edit1 tag add syntax_blue 1.0 1.0
+ $E.te.edit1 tag add syntax_red 1.0 1.0
+ $E.te.edit1 tag add syntax_green 1.0 1.0
+ $E.te.edit1 tag add BlockTag 1.0 1.0
+ $E.te.edit1 tag add erg_tag 1.0 1.0
+ $E.te.edit1 tag raise spell
+ $E.te.edit1 tag raise syntax_red
+ $E.te.edit1 tag raise syntax_green
+ $E.te.edit1 tag raise syntax_blue
+ $E.te.edit1 tag raise BlockTag
+ $E.te.edit1 tag raise erg_tag
+ $E.te.edit1 tag raise sel
+ $E.te.edit1 tag configure spell -foreground $SpellColorRed
+ $E.te.edit1 tag configure syntax_blue -foreground $SyntaxColorBlue
+ $E.te.edit1 tag configure syntax_green -foreground $SyntaxColorGreen
+ $E.te.edit1 tag configure syntax_red -foreground $SyntaxColorRed
+ $E.te.edit1 tag configure BlockTag -background $BlockColor
+ $E.te.edit1 tag configure erg_tag -background $ErgaenzungGray
+ $E.te.edit1 tag bind spell <Double-ButtonPress> "spell $E.te.edit1 add 1.0 end"
+ focus $E.te.edit1
+ COLOR $E
+ $E.te.edit1 configure -background White
+ return $E
+}
+
+proc pop_menu {E Fall} {
+ global BlockBeginFlag BlockEndFlag BlockEditor BlockColor UndoArray
+ switch $Fall Cut {
+ undo_switch $E {SelSave UndoMax}
+ tk_textCut $E
+ Syntax $E "insert linestart" "insert lineend"
+ } Copy {
+ tk_textCopy $E
+ } Paste {
+ set ksp [$E index {insert linestart}]
+ undo_switch $E {Save SelSave UndoBegin}
+ tk_textPaste $E
+ undo_switch $E {UndoEnd SelMul UndoMax}
+ Syntax $E $ksp "insert lineend"
+ } Clear {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ undo_switch $E {SelSave UndoMax}
+ $E delete sel.first sel.last
+ Syntax $E "insert linestart" "insert lineend"
+ }
+ } Spell {
+ spell $E show 1.0 end
+ } Block {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ if {$BlockBeginFlag && $BlockEndFlag} then {$BlockEditor tag remove BlockTag 1.0 end}
+ set BlockBeginFlag 1
+ set BlockEndFlag 1
+ set BlockEditor $E
+ $E mark set BlockBegin [$E index sel.first]
+ $E mark set BlockEnd [$E index sel.last]
+ $E mark gravity BlockEnd left
+ $E tag add BlockTag BlockBegin BlockEnd
+ }
+ } AusKomm {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ AusKomm $E sel.first sel.last
+ }
+ } AusKommRueck {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ AusKommRueck $E sel.first sel.last
+ }
+ } Undo {
+ proc_undo $E
+ }
+}
+
+######################################################################
+# file routines (load save new saveas append)
+source $libpath/file.tcl
+
+#######################################################################
+# Setzt backslash's fuer eine Stringuebergabe ein
+source $libpath/backslash.tcl
+
+#######################################################################
+# search routine
+source $libpath/search.tcl
+
+########################################################################
+# spelling
+source $libpath/spelling.tcl
+spell_load
+
+#######################################################################
+# pack-hilfe fuer buttons
+set packstring ""
+proc addpack {T} {
+ global packstring
+ lappend packstring $T
+}
+#######################################################################
+# picture-button
+proc FRLIAN {FRAME LISTE ANZ START} {
+ global txtpath gifpath hlppath
+ global I_befehl I_txt I_back
+ set ii 1
+ set fr 1
+ frame $FRAME.$START$fr
+ set i infty
+ foreach i $LISTE {
+ set x [backslash $I_befehl($i)]
+ button $FRAME.$START$fr.but$i -image [Bild $i] -command "if \$FocusEditorFlag then {focus \$FocusEditor.te.edit1 \nset ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n\$FocusEditor.te.edit1 insert insert \"$x\"\nundo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n\$FocusEditor.te.edit1 mark set insert \"insert - $I_back($i) chars\"\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Modified>>}"
+ bind $FRAME.$START$fr.but$i <<Help>> "Help $i"
+ bind $FRAME.$START$fr.but$i <<HelpHelp>> "Help $i"
+ if {$ii == $ANZ} then {
+ set ii 0
+ incr fr
+ frame $FRAME.$START$fr
+ }
+ incr ii
+ }
+ set ii 1
+ set fr 1
+ foreach i $LISTE {
+ pack $FRAME.$START$fr.but$i -side left
+ if {$ii == $ANZ} then {
+ pack $FRAME.$START$fr -side top
+ set ii 0
+ incr fr
+ }
+ incr ii
+ }
+ pack $FRAME.$START$fr -side top
+}
+
+#######################################################################
+# text-button
+proc buttonmake {NAME buttonmakecount latex} {
+ global I_befehl I_txt I_back
+ set t "[backslash "$I_befehl($latex)"]"
+
+
+ button $NAME.but$buttonmakecount -text $I_txt($latex) -command "if \$FocusEditorFlag then {\n focus \$FocusEditor.te.edit1 \n set ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n\$FocusEditor.te.edit1 insert insert \"$t\"\nundo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n\$FocusEditor.te.edit1 mark set insert \"insert - $I_back($latex) chars\"\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Modified>>}"
+ bind $NAME.but$buttonmakecount <<Help>> "Help $latex"
+ bind $NAME.but$buttonmakecount <<HelpHelp>> "Help $latex"
+ addpack $NAME.but$buttonmakecount
+}
+
+#######################################################################
+# myown Buttons
+proc InitMyOwn {} {
+ global FocusEditorFlag FocusEditor myown myown_max T
+ if ![winfo exists .wmyown] then {
+ toplevel .wmyown
+ wm title .wmyown $T(wmyown-titel)
+ for {set i 0} {$i < $myown_max} {incr i} {
+ frame .wmyown.f$i
+ entry .wmyown.f$i.text -width 20 -relief sunken -textvariable myown($i) -background White
+ button .wmyown.f$i.but -command "if \$FocusEditorFlag {focus \$FocusEditor.te.edit1\n set ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n \$FocusEditor.te.edit1 insert insert \[.wmyown.f$i.text get\]\n undo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Position_tail>> -when tail}"
+ menu .wmyown.f$i.pop_menu
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wmyown.f$i.text <<Cut>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Copy) -command "event generate .wmyown.f$i.text <<Copy>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wmyown.f$i.text <<Paste>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wmyown.f$i.text <<Clear>>"
+ bind .wmyown.f$i.text <Button-3> "tk_popup .wmyown.f$i.pop_menu \[winfo pointerx .wmyown.f$i\] \[winfo pointery .wmyown.f$i\]"
+
+
+ pack .wmyown.f$i.but .wmyown.f$i.text -side left
+ pack .wmyown.f$i
+ }
+ button .wmyown.butQ -text $T(Quit) -command {
+ destroy .wmyown
+ }
+ pack .wmyown.butQ
+ wm minsize . 1 1
+ bind .wmyown <<Help>> {Help $T(wmyown-Help)}
+ bind .wmyown <Control-c> {
+ destroy .wmyown
+ }
+ wm resizable .wmyown 0 0
+ COLOR .wmyown
+ for {set i 0} {$i < $myown_max} {incr i} {
+ .wmyown.f$i.text configure -background White
+ }
+ } else {focus .wmyown}
+}
+#######################################################################
+# Yeah, cut everything into small pieces to disturb curius people !
+#######################################################################
+# help online in the latex-text
+source $libpath/help.tcl
+HLP_load
+
+#######################################################################
+# auto complition
+source $libpath/complition.tcl
+
+#######################################################################
+# help-system of tcltexed
+source $libpath/helpmanual.tcl
+
+#######################################################################
+# undo function
+source $libpath/undo.tcl
+
+#######################################################################
+# Farbige Syntax
+source $libpath/syntax.tcl
+
+#######################################################################
+# Bilderverwaltung
+proc Bild {name} {
+ global gifpath I_txt
+ set ksp [lsearch [image names] "IMAGE$I_txt($name)"]
+ if {$ksp == -1} {
+ image create photo "IMAGE$I_txt($name)" -file "$gifpath/$I_txt($name).gif"
+ }
+ return "IMAGE$I_txt($name)"
+}
+#######################################################################
+# Goto Curser
+proc Init_curser {E} {
+ global T GotoArray
+
+ if ![winfo exists $E.wcurser] then {
+ toplevel $E.wcurser
+ label $E.wcurser.l -text $T(wcurser-gotocurser)
+ label $E.wcurser.pos -text "$T(EDITOR-ZS) [$E.te.edit1 index insert]" -width 12
+ entry $E.wcurser.text -width 6 -relief sunken -textvariable GotoArray($E.te.edit1) -background White
+ frame $E.wcurser.f
+ button $E.wcurser.f.goto -text $T(wcurser-goto) -command "if \[catch {if {\[llength \[split \$GotoArray($E.te.edit1) .\]\] == 1} {append GotoArray($E.te.edit1) \".0\"}\n$E.te.edit1 mark set insert \$GotoArray($E.te.edit1)\n$E.te.edit1 see insert\nevent generate $E.te.edit1 <<Position_tail>> -when tail\n focus $E.te.edit1}\] {set GotoArray($E.te.edit1) \[$E.te.edit1 index insert\]}"
+
+
+ button $E.wcurser.f.butQ -text $T(Quit) -command "destroy $E.wcurser"
+ pack $E.wcurser.f.goto $E.wcurser.f.butQ -side left
+ pack $E.wcurser.l $E.wcurser.pos $E.wcurser.text $E.wcurser.f
+ wm title $E.wcurser $T(wcurser-titel)
+ COLOR $E.wcurser
+ $E.wcurser.text configure -background White
+ }
+ focus $E.wcurser
+}
+#######################################################################
+# It's all folks !
+#######################################################################
+# Bei Programstart eine Message
+
+if $readme_flag {
+ Help readme_hlp
+}
+@
+
diff --git a/support/tcltexed/bin/makehelp.tcl b/support/tcltexed/bin/makehelp.tcl
new file mode 100644
index 0000000000..320ce97ddf
--- /dev/null
+++ b/support/tcltexed/bin/makehelp.tcl
@@ -0,0 +1,79 @@
+#!/usr/bin/wish8.0
+# Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+set Tcltexed_Version 2.3
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1998 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+# set basepath /usr/local/app/tcltexed-2.2
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set hlppath $basepath/hlp
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+
+
+
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+label .l -text "This program produces\n the index of help issues"
+label .echo
+button .b -text "do it !" -command {DOIT}
+proc DOIT {} {
+ global hlppath
+ cd $hlppath
+ set FILES [glob */*.txt]
+ set file ""
+ foreach file $FILES {
+ .echo configure -text $file
+ update
+ set f [open $file r]
+ set Text [read $f]
+ close $f
+ set pos [string first "::" $Text]
+ while {$pos!=-1} {
+ set Text [string range $Text [expr $pos + 2] end]
+ set pos [string first "::" $Text]
+ set posn [string first "\n" $Text]
+ if {$posn>$pos} {
+ if {[string length [string range $Text 0 [expr $pos -1]]] > 0} {
+ lappend L([string range $Text 0 [expr $pos -1]]) $file
+ }}}
+ }
+ set f [open $hlppath/index w]
+ puts $f [array get L]
+ close $f
+ .echo configure -text Done
+}
+
+pack .l .echo .b
diff --git a/support/tcltexed/bin/makespell.tcl b/support/tcltexed/bin/makespell.tcl
new file mode 100644
index 0000000000..f4d64a3f9d
--- /dev/null
+++ b/support/tcltexed/bin/makespell.tcl
@@ -0,0 +1,136 @@
+#!/usr/bin/wish8.0
+# Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+set Tcltexed_Version 2.3
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1998 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+# set basepath /usr/local/app/tcltexed-2.2
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set etcpath $basepath/etc
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+#######################################################################
+# Where to save options, this should work in the most cases
+# without interferring
+switch $tcl_platform(platform) unix {
+ set spellfileown $env(HOME)/.tcltexed_spell
+ set spellfile $etcpath/tcltexed.sp
+} windows {
+ switch $tcl_platform(os) "Windows 95" {
+ set spellfileown $etcpath/tcltexed_own.sp
+ set spellfile $etcpath/tcltexed.sp
+ } "Windows NT" {
+ set spellfileown $env(USERPROFILE)/tcltexed.sp
+ set spellfile $etcpath/tcltexed.sp
+ }
+}
+#######################################################################
+# What not to have within a word to spell
+# [-0123456789&$^\[\]?\\+*/%=_]
+set spell_not "\[-0123456789&$^\\\[\\\]\\\\+*/%=_\]"
+set spell_yes "\[ \n\t.,:;!?\\\[\\\]\{\}()\]"
+
+
+
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+label .l -text "This program adds\n new words for a language\nto current dictionary of tcltexed\n and saves the result.\n english -> 0\ngerman -> 1"
+set language 1
+tk_optionMenu .m language 0 1
+frame .f1
+entry .f1.e
+.f1.e insert 0 sourcefile
+button .f1.b -text browse -command {
+ .f1.e delete 0 end
+ .f1.e insert 0 [tk_getOpenFile]
+}
+pack .f1.e .f1.b -side left
+
+frame .f2
+entry .f2.e
+.f2.e insert 0 $spellfileown
+button .f2.b -text browse -command {
+ .f2.e delete 0 end
+ .f2.e insert 0 [tk_getSaveFile]
+}
+pack .f2.e .f2.b -side left
+
+button .b -text "do it !" -command {
+set file [.f1.e get]
+set savefile [.f2.e get]
+
+if [file exists $file] then {
+
+ set f [open $file r]
+ set Text [read $f]
+ close $f
+
+ if [file exists $spellfile$language] then {
+ set f [open $spellfile$language r]
+ set LISTE [gets $f]
+ close $f
+ # foreach I $LISTE {set spell_array($I) G}
+ }
+ if [file exists $spellfileown$language] then {
+ set f [open $spellfileown$language r]
+ set LISTE [gets $f]
+ close $f
+ # foreach I $LISTE {set spell_array($I) O}
+ }
+ set anz 0
+ set last ""
+ set LISTE [lsort [split $Text $spell_yes]]
+ foreach I $LISTE {
+ if {[string compare $last $I]!=0} {
+ if {[regexp -- $spell_not $I] == 0} {
+ if {![info exists spell_array($I)]} {
+ if {$I != ""} {
+ set spell_array($I) O
+ incr anz
+ }}}}
+ set last $I
+ }
+ set LISTE ""
+ set L [array get spell_array]
+ foreach {I V} $L {lappend LISTE $I}
+ set f [open $savefile$language w]
+ puts $f [lsort $LISTE]
+ close $f
+ tk_messageBox -type ok -message "$anz words added\n from\t$file \n \t$spellfile$language \n\t $spellfileown$language\n to\t $savefile$language"
+} { tk_messageBox -type ok -message "$file not found"
+}
+}
+
+pack .l .m .f1 .f2 .b
diff --git a/support/tcltexed/bin/tcltexed.tcl b/support/tcltexed/bin/tcltexed.tcl
new file mode 100644
index 0000000000..bb559ea921
--- /dev/null
+++ b/support/tcltexed/bin/tcltexed.tcl
@@ -0,0 +1,1109 @@
+#!/usr/bin/wish8.0
+# Tcltexed | Version 2.8 | 02. Nov 2006 | Martin Strauss
+set Tcltexed_Version 2.8
+# A plaintext-editor for LaTeX based on scriptlanguage tcl/tk (8.x)
+#
+# Copyright (C) 1999 - Martin Strauss -
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# My email-adress : mys@phi.faveve.uni-stuttgart.de
+#######################################################################
+# Begin of Tcltexed
+#######################################################################
+set basepath "[file dirname [info script]]/.."
+#######################################################################
+# If it doesn't work by it's own please enter here the right
+# installationpath to the base of tcltexed (not to the executable)
+# and uncommend the next line
+set basepath /usr/local/app/tcltexed-2.8
+#######################################################################
+# You propably aren't interested to mix my files locations ???
+set menupath $basepath/lib/menu
+set txtpath $basepath/txt
+set hlppath $basepath/hlp
+set gifpath $basepath/gif
+set bhtpath $basepath/bht
+set etcpath $basepath/etc
+set libpath $basepath/lib
+#######################################################################
+# Where to save options, this should work in the most cases
+# without interferring
+switch $tcl_platform(platform) unix {
+ set inifile $env(HOME)/.tcltexed
+ set spellfileown $env(HOME)/.tcltexed_spell
+ set spellfile $etcpath/tcltexed.sp
+} windows {
+ switch $tcl_platform(os) "Windows 95" {
+ set inifile $etcpath/tcltexed.ini
+ set spellfileown $etcpath/tcltexed_own.sp
+ set spellfile $etcpath/tcltexed.sp
+ } "Windows NT" {
+ set inifile $env(USERPROFILE)/tcltexed.ini
+ set spellfileown $env(USERPROFILE)/tcltexed.sp
+ set spellfile $etcpath/tcltexed.sp
+ }
+}
+#######################################################################
+# If your colors make problems like ignoring all grey colors etc
+# try to set this flag to 1, if it works with 0 it will be faster
+set COLOR_flag 0
+###############################################################
+# If you get tired of the welcome-message on the beginning
+# set the value of readme_flag to 0 (else back to 1)
+set readme_flag 1
+# but you will use this window later anyway ...
+###############################################################
+# If you want to have the stdout messages of latex/dvips shown
+# as default, then change this flag to 1
+set log_flag 0
+#######################################################################
+#######################################################################
+# defaultvalue for the language
+# englisch 0 , german 1 , indonesia 2, brazilian 3
+set language 0
+
+#######################################################################
+##########################################################################
+# extern Commands make for sure you've the rigth path here
+switch $tcl_platform(platform) unix {
+ # unix und linux Programme
+ set latex_exec "latex"
+ set xdvi_exec "xdvi"
+ set dvips_exec "dvips"
+ set ghostview_exec "ghostview"
+ set makeindex_exec "makeindex"
+ set ispell_exec "ispell"
+} windows {
+ # Windows 9x and NT
+ set latex_exec "latex"
+ set xdvi_exec "yap"
+ set dvips_exec "dvips"
+ set ghostview_exec "C:/gstools/gsview/gsview32"
+ set makeindex_exec "makeindex"
+ set ispell_exec "ispell"
+} default {exit}
+# interested Mac users should contact me !
+
+##########################################################################
+####### There is no point to "repair" anything beyond this line ##########
+##########################################################################
+# Maximal length of the memory in bytes spend for the UNDO function
+# for each window.
+set max_undo 10240
+#######################################################################
+# nown packetes, first named the file (.bth) to load, then the name to
+# display
+set PLISTE [list latex latex latex_math "+math" latex_other "+more" picture "+picture" tabelle "+tabular/array" notiz "+footnote/marginpar" latex209 "+latex 2.09" amsmath amsmath amssymb amssymb amsfonts amsfonts amscd amscd amsthm amsthm epsf epsf graphics "graphics/x"]
+#######################################################################
+# "My Own", number of selfdefined buttons
+set myown_max 10
+#######################################################################
+# complition by mouse, number of lines shown at once
+set erg2_max 10
+#######################################################################
+# help on LaTeX-commands, number of lines shown at once
+set wlatex_max 20
+#######################################################################
+# help on Tcltexed, number of lines shown at once
+set wTcltexed_max 6
+#######################################################################
+# number of chars after a line is forced to break
+set line_breaking_chars 80
+#######################################################################
+
+#######################################################################
+# a short test looking if you set your mainpath right
+if {![file exists $basepath/bin/tcltexed.tcl]} {
+ wm withdraw .
+ tk_messageBox -icon error -message "[info script] Tcltexed\nWrong path configuration !\nPlease read the INSTALL file !\n Currently the basepath is set to\n $basepath\nbut I can't find my data there."
+ exit
+}
+#######################################################################
+# default font size
+set tft_size 12
+#######################################################################
+# event Delete sei BackSpace
+set Delete2BackSpace_flag 0
+#######################################################################
+# What not to have within a word to spell
+# [-0123456789&$^\[\]?\\+*/%=_]
+set spell_not "\[-0123456789&$^\\\[\\\]\\\\+*/%=_\]"
+set spell_yes "\[ \n\t.,:;!?\\\[\\\]\{\}()\]"
+# number of lines shown at once for nearly matched words
+set wspell_max 10
+#######################################################################
+# switch between this letters
+set umlaut_with {\
+\\\"a ä \\\"A Ä \\\"o ö \\\"O Ö \\\"u ü \\\"U Ü\
+\\c\{C\} Ç \\'e é \\^a â \\`a à\
+\\c\{c\} ç \\"e ë \\^e ê \\`e è \\'E É\
+\\^o ô \\`o ò \\^u û \\`u ù \\'a á \\'o ó \\'u ú \\~n ñ \\~N Ñ\
+}
+foreach {i j} {\\\\ss ß \\\\aa å \\\\\\\"\\\\i ï \\\\\\\^\\\\i î \\\\\\\`\\\\i ì \\\\\\\'\\\\i í \\\\AA Å \\\\ae æ \\\\AE Æ} {
+ set umlaut_with "$umlaut_with \"$i \" $j \\{$i\\} $j \"$i\\\\ \" \"$j \" $i\\\\ $j\\\\ $i\\n $j\\n $i\\t $j\\t"
+}
+set umlaut_without {\
+ä \\\"a Ä \\\"A ö \\\"o Ö \\\"O ü \\\"u Ü \\\"U Ç\
+\\c\{C\} é \\'e â \\^a à \\`a ç\
+\\c\{c\} ë \\"e ê \\^e è \\`e É \\'E ô\
+\\^o ò \\`o û \\^u ù \\`u á \\'a ó \\'o ú \\'u ñ \\~n Ñ \\~N\
+}
+foreach {i j} {\\\\ss ß \\\\aa å \\\\\\\"\\\\i ï \\\\\\\^\\\\i î \\\\\\\`\\\\i ì \\\\\\\'\\\\i í \\\\AA Å \\\\ae æ \\\\AE Æ} {
+ set umlaut_without "$umlaut_without $j\\t $i\\t $j\\n $i\\n $j\\\\ $i\\\\ \"$j \" \"$i\\\\ \" $j \"$i \""
+}
+set umlautgerman_with {\"a ä \"A Ä \"o ö \"O Ö \"u ü \"U Ü \"s ß}
+set umlautgerman_without {ä \"a Ä \"A ö \"o Ö \"O ü \"u Ü \"U ß \"s}
+#######################################################################
+# which ispell dictionary for which language ?
+set ispell_dictionary(0) english
+set ispell_dictionary(1) deutsch
+set ispell_dictionary(2) indo-spell
+set ispell_dictionary(3) brazilian
+##########################################################################
+##########################################################################
+# You won't believe it what happens if you ... so leave it the way it is #
+##########################################################################
+# Testwindow
+# eval "toplevel .test\nlabel .test.t1\nlabel .test.t2\npack .test.t1 .test.t2"
+
+ # Editor
+ set EDITORNUMMER 0
+ # Focus
+ set FocusEditorFlag 0
+ set FocusEditor ""
+ # Filenamen
+ set FilenameArray(scratch) "scratch"
+ set ModifiedArray(scratch) 0
+ set UpToDateArray(scratch) 0
+ set GotoArray(scratch) ""
+ set UndoArray(scratch) ""
+ # Block
+ set BlockBeginFlag 0
+ set BlockEndFlag 0
+ set BlockEditor ""
+ # Projekt
+ set MasterFlag 0
+ set Master ""
+ set Masterfile ""
+ image create photo MasterBildSlaveOn -file "$gifpath/slaveon.gif"
+ image create photo MasterBildSlaveOff -file "$gifpath/slaveoff.gif"
+ image create photo MasterBildMasterOn -file "$gifpath/masteron.gif"
+ image create photo MasterBildMasterOff -file "$gifpath/masteroff.gif"
+ # Search
+ set wsearch_gb 1
+ # Klammern automatische
+ set KlammerFlag 1
+ # fuer .wlatex ein ABC
+set ABC [list A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z]
+ # Syntax
+ set syntax_flag 1
+ # Startverzeichnis in das gespeichert wird
+ set directory [pwd]
+ # Spelling
+ set spell_flag 1
+ # help
+ set hlpfile ""
+#######################################################################
+# tclversion mindestens 8
+if {[lindex [split tk_version .] 0] < 8} {
+ exit
+}
+#######################################################################
+# tag Farben
+# wrong Spelling
+set SpellColorRed "#800000"
+# Syntax Highlightning
+set SyntaxColorBlue Blue
+set SyntaxColorRed Red
+set SyntaxColorGreen "#007300"
+# LaTeX-Befehlsergaenzung
+set ErgaenzungGray Gray
+# Block
+set BlockColor "#e0e0e0"
+#######################################################################
+# set several default values
+source $libpath/arg.tcl
+
+#######################################################################
+proc I {name befehl txt back} {
+ global T I_befehl I_txt I_back I_state I_flag I_file
+ switch $I_flag 2 {
+ if [info exists I_befehl($name)] {
+ tk_messageBox -message $T(BHTERROR1)$I_file$T(BHTERROR2)$name$T(BHTERROR3)$befehl -icon error -type ok
+ } {
+ set I_befehl($name) $befehl
+ set I_txt($name) $txt
+ set I_back($name) $back
+ }
+ } 0 {
+ unset I_state($name)
+ } 1 {
+ set I_state($name) 1
+ }
+}
+#######################################################################
+# Options
+source $libpath/options.tcl
+
+LoadOptions
+#######################################################################
+# set several default fonts
+font create tft -family Courier -size $tft_size
+
+#######################################################################
+# language
+source $libpath/translate$language.tcl
+#######################################################################
+# virtuelle events
+source $libpath/events.tcl
+
+#######################################################################
+# Umdefinition des Defaultverhaltens fuer Text-variablen
+source $libpath/bindings.tcl
+
+#######################################################################
+# Default Color
+source $libpath/color.tcl
+
+#######################################################################
+# line breaking
+source $libpath/linebreak.tcl
+
+#######################################################################
+# Oh no, again someone very nosey around !
+#######################################################################
+# Mainwindow
+frame .mb
+
+set LISTE [glob $menupath/*.itm]
+set MenuModus 1
+set MenuItemList ""
+source $menupath/menu
+foreach i $LISTE {
+ source $i
+ lappend ItemList $i
+ lappend MenuItemList "$ItemList"
+}
+frame .mb.menu
+foreach i [lsort $MenuItemList] {
+ if [lindex $i 1] {
+ .mb.menu.button[lindex $i 0].m add command -label [lindex [lindex $i 2] $language] -command "makeWindow .menu[lindex $i 0]Item[lindex $i 1] \"[lindex $i 3]\""
+ } else {
+ menubutton .mb.menu.button[lindex $i 0] -text [lindex [lindex $i 2] $language] -relief raised -menu .mb.menu.button[lindex $i 0].m
+ menu .mb.menu.button[lindex $i 0].m
+ pack .mb.menu.button[lindex $i 0] -side left -padx 2m -fill x -expand yes
+ }
+}
+
+
+
+menubutton .mb.button1 -text $T(MW-File) -relief raised -menu .mb.button1.m
+menubutton .mb.button2 -text $T(MW-Edit) -relief raised -menu .mb.button2.m
+menubutton .mb.button3 -text $T(MW-Options) -relief raised -menu .mb.button3.m
+menubutton .mb.button4 -text $T(MW-Help) -relief raised -menu .mb.button4.m
+
+pack .mb.button1 .mb.button2 .mb.button3 .mb.menu .mb.button4 -side left -padx 2m -fill x -expand yes
+
+menu .mb.button1.m
+menu .mb.button2.m
+menu .mb.button3.m
+menu .mb.button4.m
+
+
+# Neues EditorFenster
+.mb.button1.m add command -label $T(MW-New) -command {NewFile}
+.mb.button1.m add command -label $T(MW-Load) -command {LoadFile}
+.mb.button1.m add command -label $T(MW-Append) -command {
+ if $FocusEditorFlag then {AppendFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-Save) -command {
+ if $FocusEditorFlag then {SaveFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-SaveAs) -command {
+ if $FocusEditorFlag then {SaveAsFile $FocusEditor}
+}
+.mb.button1.m add command -label $T(MW-Quit) -command {ALLQUIT}
+
+.mb.button2.m add command -label $T(MW-Clear) -command {CLEAR}
+menu .mb.button2.m.m1
+.mb.button2.m.m1 add command -label $T(LB-all) -command \
+{if {$FocusEditorFlag} {Line_breaking_switch $FocusEditor.te.edit1 all}}
+.mb.button2.m.m1 add command -label $T(LB-section) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 section}}
+.mb.button2.m.m1 add command -label $T(LB-line) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 line}}
+.mb.button2.m.m1 add command -label $T(LB-unall) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unall}}
+.mb.button2.m.m1 add command -label $T(LB-unsection) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unsection}}
+.mb.button2.m.m1 add command -label $T(LB-unline) -command {if $FocusEditorFlag {Line_breaking_switch $FocusEditor.te.edit1 unline}}
+.mb.button2.m add cascade -label $T(LB-breakline) -menu .mb.button2.m.m1
+.mb.button2.m add command -label $T(MW-Spelling) -command \
+{if $FocusEditorFlag {spell $FocusEditor.te.edit1 show 1.0 end}}
+.mb.button2.m add command -label $T(MW-Spell) -command {if $FocusEditorFlag {spell $FocusEditor.te.edit1 add 1.0 end}}
+.mb.button2.m add command -label $T(MW-Umlaut_with) -command {umlaut $umlaut_with}
+.mb.button2.m add command -label $T(MW-Umlaut_without) -command {umlaut $umlaut_without}
+.mb.button2.m add command -label $T(MW-UmlautGerman_with) -command {umlaut $umlautgerman_with}
+.mb.button2.m add command -label $T(MW-UmlautGerman_without) -command {umlaut $umlautgerman_without}
+.mb.button2.m add command -label $T(MW-Search) -command {InitSearch}
+.mb.button2.m add command -label $T(MW-MyOwn) -command {InitMyOwn}
+
+.mb.button3.m add checkbutton -variable KlammerFlag -label $T(MW-AutoKlammerZu)
+.mb.button3.m add checkbutton -variable syntax_flag -label $T(MW-Syntax)
+.mb.button3.m add checkbutton -variable log_flag -label $T(MW-log)
+menu .mb.button3.m.m1
+foreach {i n} $PLISTE {
+ set I_file $bhtpath/$i.bht
+ set I_flag 2
+ source $bhtpath/$i.bht
+ .mb.button3.m.m1 add checkbutton -variable Package($i) -label $n -command "set I_file $bhtpath/\$i.bht\nset I_flag \$Package($i)\nsource $bhtpath/$i.bht"
+}
+set LISTE [lsort [array names I_befehl]]
+set wlatex_LISTE ""
+foreach i $ABC {
+ lappend wlatex_LISTE [lsearch -glob $LISTE $i*]
+}
+unset LISTE
+.mb.button3.m add cascade -label $T(MW-Packages) -menu .mb.button3.m.m1
+menu .mb.button3.m.m2
+.mb.button3.m.m2 add radiobutton -variable language -value 0 -label $T(MW-english) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m.m2 add radiobutton -variable language -value 1 -label $T(MW-german) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m.m2 add radiobutton -variable language -value 2 -label $T(MW-indonesia) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m.m2 add radiobutton -variable language -value 3 -label $T(MW-bre) -command {tk_messageBox -message $T(MW-language-msg)}
+.mb.button3.m add cascade -label $T(MW-language) -menu .mb.button3.m.m2
+menu .mb.button3.m.m3
+
+ foreach i {6 8 10 12 14 16 18 20 22 24} {
+ .mb.button3.m.m3 add radiobutton -variable tft_size -value $i -label $i -command "font configure tft -size $i"
+ }
+.mb.button3.m add cascade -label $T(MW-size) -menu .mb.button3.m.m3
+.mb.button3.m add command -label $T(MW-SaveOptions) -command {SaveOptions}
+
+.mb.button4.m add command -label $T(MW-Version) -command {InitVersion}
+.mb.button4.m add command -label $T(MW-Tcltexed) -command {InitTcltexed}
+.mb.button4.m add command -label $T(MW-LaTeX) -command {InitListen}
+
+wm resizable . 0 0
+wm protocol . WM_DELETE_WINDOW {ALLQUIT}
+#######################################################################
+proc CLEAR {} {
+ global FocusEditorFlag T FocusEditor
+ if $FocusEditorFlag then {
+ if {[winfo exists .wclear] == 0} then {
+ set sp [tk_messageBox -icon question -message $T(MW-Clear-msg) -type okcancel]
+ switch $sp ok {
+ $FocusEditor.te.edit1 delete 1.0 end
+}}}}
+
+proc ALLQUIT {} {
+ global ModifiedArray T
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ if $ModifiedArray([array nextelement ModifiedArray $ID]) then {
+ set Flag 0
+ }
+ }
+ array donesearch ModifiedArray $ID
+ if {$Flag == 0} then {
+ switch [tk_messageBox -message $T(ALLQUIT1) -icon question -type yesnocancel] yes {
+ switch [tk_messageBox -message $T(ALLQUIT2) -icon question -type yesnocancel] yes {
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID]} {
+ set E [array nextelement ModifiedArray $ID]
+ if $ModifiedArray($E) then {
+ set ed [string range $E 0 [expr [string length $E] - 10]]
+ focus $ed
+ SaveFile $ed
+ }}
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ if $ModifiedArray([array nextelement ModifiedArray $ID]) then {
+ set Flag 0
+ }
+ }
+ if $Flag then {destroy .}
+ } no {
+ set Flag 1
+ set ID [array startsearch ModifiedArray]
+ while {[array anymore ModifiedArray $ID] && $Flag} {
+ set E [array nextelement ModifiedArray $ID]
+ if $ModifiedArray($E) then {
+ set ed [string range $E 0 [expr [string length $E] - 10]]
+ focus $ed
+ switch [tk_messageBox -parent $ed -message $T(ALLQUIT3)[wm title $ed] -icon question -type yesnocancel] yes {
+ SaveFile $ed
+ } no {} cancel {
+ set Flag 0
+ }
+ }}
+ if $Flag then {destroy .}
+ } cancel {}
+ } no {destroy .} cancel {}
+ } else {destroy .}
+ spell_save
+}
+#######################################################################
+proc makeWindow {NAME S} {
+ global T language
+ global packstring
+ if {[winfo exists $NAME] == 0} then {
+ set MenuModus 0
+ toplevel $NAME
+ set packstring ""
+ source $S
+ button $NAME.q -text $T(Quit) -command "destroy $NAME"
+ pack $NAME.q
+ bind $NAME <Control-c> {
+ destroy %W
+ }
+ bind $NAME <<Help>> "set ksp \[winfo containing -displayof $NAME \[winfo pointerx $NAME\] \[winfo pointery $NAME\]\]\n if {\$ksp != \"\"} then {event generate \$ksp <<HelpHelp>>}"
+
+ bind $NAME <Button-3> "set ksp \[winfo containing -displayof $NAME \[winfo pointerx $NAME\] \[winfo pointery $NAME\]\]\n if {\$ksp != \"\"} then {event generate \$ksp <<HelpHelp>>}"
+
+ wm resizable $NAME 0 0
+ COLOR $NAME
+ } else {focus $NAME}
+}
+
+
+
+ pack .mb -pady 2m -fill x
+ COLOR .
+#######################################################################
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+#######################################################################
+proc Master {E} {
+ global MasterFlag Master
+ if $MasterFlag then {
+ if [string compare $Master $E] then {
+ $Master.todo.master configure -image MasterBildSlaveOff
+ set Master $E
+ $Master.todo.master configure -image MasterBildMasterOn
+ } else {
+ set MasterFlag 0
+ $Master.todo.master configure -image MasterBildSlaveOn
+ }} else {
+ set MasterFlag 1
+ set Master $E
+ $Master.todo.master configure -image MasterBildMasterOn
+ }
+}
+proc MasterFocus {NEW OLD} {
+ global MasterFlag Master
+ global FocusEditorFlag FocusEditor
+ if $MasterFlag then {
+ if [string compare $Master $NEW] then {
+ $NEW.todo.master configure -image MasterBildSlaveOn
+ } else {
+ $NEW.todo.master configure -image MasterBildMasterOn
+ }
+ if $FocusEditorFlag then {
+ if [string compare $NEW $OLD] then {
+ if [string compare $Master $OLD] then {
+ $OLD.todo.master configure -image MasterBildSlaveOff
+ } else {
+ $OLD.todo.master configure -image MasterBildMasterOff
+ }}}
+ } else {
+ $NEW.todo.master configure -image MasterBildSlaveOn
+ if [string compare $NEW $OLD] then {
+ if $FocusEditorFlag then { $OLD.todo.master configure -image MasterBildSlaveOff}
+ }}
+ set FocusEditorFlag 1
+ set FocusEditor $NEW
+}
+proc MasterBefehl {E BEFEHL} {
+ global latex_exec xdvi_exec dvips_exec ghostview_exec makeindex_exec ispell_exec
+ global MasterFlag Master
+ global FilenameArray UpToDateArray
+ global tcl_platform
+ global ispell_dictionary language
+ global log_flag
+ if $MasterFlag then {
+ set Q $Master
+ } else {
+ set Q $E
+ }
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+
+ # Setzt Pfad fuer die Bearbeitung
+ set nowpath [pwd]
+ cd [file dirname $FilenameArray($Q)]
+
+ switch $tcl_platform(platform) unix {
+ switch $BEFEHL latex {
+ SaveFile $E
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+ # Setzt Pfad fuer die Bearbeitung
+ set nowpath [pwd]
+ cd [file dirname $FilenameArray($Q)]
+ catch {exec xterm -e $latex_exec "$FILE.tex"} error
+ if { $log_flag } then {
+ if [file exists $FILE.log] then {
+ set f [open $FILE.log r]
+ set error [read $f]
+ set t [close $f]
+ }
+ }
+ if [file exists $FILE.idx] then {
+ catch {exec xterm -e $makeindex_exec "$FILE.idx"} error2
+ set error "$error\n\n$error2"
+ }
+ if { $log_flag } then {
+ Init_wmsg $Q "$error"
+ }
+ } xdvi {
+ catch {exec $xdvi_exec "$FILE.dvi" &} error
+ } dvips {
+ catch {set error [exec $dvips_exec "$FILE.dvi" -o "$FILE.ps"]} error
+ if { $log_flag } then {
+ Init_wmsg $Q "$error"
+ }
+ } ghostview {
+ catch {exec $ghostview_exec "$FILE.ps" &} error
+ } ispell {
+ SaveFile $E
+ catch {exec xterm -e $ispell_exec -t -d $ispell_dictionary($language) "$FILE.tex"} error
+ ReLoadFileArg $E "$FILE.tex"
+ }
+ } windows {
+ switch $BEFEHL latex {
+ SaveFile $E
+ # Entfernt die Endung des Quellfiles (.tex)
+ set FILE [string range $FilenameArray($Q) 0 [expr [string length $FilenameArray($Q)] - 5]]
+ # Setzt Pfad fuer die Bearbeitung
+ set nowpath [pwd]
+ cd [file dirname $FilenameArray($Q)]
+ catch {exec xterm -e $latex_exec "$FILE.tex"} error
+ catch {exec $latex_exec "$FILE.tex"} error
+ if [file exists $FILE.idx] then {
+ catch {exec $makeindex_exec "$FILE.idx"} error2
+ set error "$error\n\n$error2"
+ }
+ Init_wmsg $Q "$error"
+ } xdvi {
+ catch {exec $xdvi_exec "$FILE.dvi" &} error
+ } dvips {
+ catch {exec $dvips_exec "$FILE.dvi" -o "$FILE.ps"} error
+ Init_wmsg $Q "$error"
+ } ghostview {
+ catch {exec $ghostview_exec "$FILE.ps" &} error
+ } ispell {
+ }
+ } default {}
+
+ # Setzt Pfad zurueck
+ cd $nowpath
+}
+proc Init_wmsg {E error} {
+ global T
+
+ if ![winfo exists $E.wmsg] then {
+ toplevel $E.wmsg
+ frame $E.wmsg.f
+ scrollbar $E.wmsg.f.vscroll -relief sunken -command "$E.wmsg.f.l yview"
+
+ text $E.wmsg.f.l -yscroll "$E.wmsg.f.vscroll set"
+ pack $E.wmsg.f.vscroll -side right -fill y
+ pack $E.wmsg.f.l -expand yes -fill both
+ button $E.wmsg.butQ -text $T(quit) -command "destroy $E.wmsg"
+
+ pack $E.wmsg.f $E.wmsg.butQ
+ wm title $E.wmsg $T(wmsg-titel)
+ COLOR $E.wmsg
+ bind $E.wmsg.f.l <Button> "Line_wmsg $E"
+ }
+ $E.wmsg.f.l configure -state normal
+ $E.wmsg.f.l delete 1.0 end
+ $E.wmsg.f.l insert 1.0 $error
+ $E.wmsg.f.l configure -state disabled
+ $E.wmsg.f.l see end
+ focus $E.wmsg
+}
+proc Line_wmsg E {
+ if {[string compare [$E.wmsg.f.l get "insert linestart"] "!"]==0} {
+ set lpos [$E.wmsg.f.l index "insert linestart + 1 l"]
+ } {
+ set lpos [$E.wmsg.f.l search -backwards -regexp "^l\\..* .*" insert]
+ }
+ $E.wmsg.f.l see $lpos
+ set txt [$E.wmsg.f.l get $lpos "$lpos lineend"]
+ if [string match "l.* *" $txt] {
+ set pos [string first " " $txt]
+ $E.te.edit1 mark set insert "[string range $txt 2 [expr $pos -1]].[expr [string length $txt] - $pos]"
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+ update
+ }
+}
+proc EDITORQUIT {E} {
+ global ModifiedArray T
+ if $ModifiedArray($E.te.edit1) then {
+ set sp [tk_messageBox -message $T(EDITORQUIT) -icon question -type yesnocancel]
+ switch $sp yes {
+ SaveFile $E
+ destroy $E
+ } no {
+ destroy $E
+ }
+ } else {destroy $E}
+}
+#######################################################################
+# Are i am in the inquisitation ??? What are you looking for ?
+#######################################################################
+proc EDITOR {} {
+ global FilenameArray UpToDateArray EDITORNUMMER ModifiedArray GotoArray UndoArray FocusEditor T
+ global BeginFlag BeginRealy
+ global erg_flag tcl_platform
+ global SpellColorRed BlockColor SyntaxColorGreen SyntaxColorRed SyntaxColorBlue ErgaenzungGray
+ global Delete2BackSpace_flag
+ global have_ispell_flag
+ incr EDITORNUMMER
+ set E ".editor$EDITORNUMMER"
+ set FilenameArray($E) scratch
+ set UpToDateArray($E) 0
+ set UndoArray($E.te.edit1) ""
+ set BeginFlag($E.te.edit1) 0
+ set BeginRealy($E.te.edit1) 0
+ set erg_flag($E.te.edit1) 0
+ set GotoArray($E.te.edit1) ""
+ set var$E.wcurser ""
+ toplevel $E
+ frame $E.todo
+ button $E.todo.master -image MasterBildSlaveOn -command "Master $E"
+
+ button $E.todo.save -text $T(Save) -command "SaveFile $E"
+
+ button $E.todo.saveas -text $T(SaveAs) -command "SaveAsFile $E"
+
+ button $E.todo.latex -text $T(EDITOR-latex) -command "MasterBefehl $E latex"
+ button $E.todo.xdvi -text $T(EDITOR-xdvi) -command "MasterBefehl $E xdvi"
+ button $E.todo.dvips -text $T(EDITOR-dvips) -command "MasterBefehl $E dvips"
+ button $E.todo.gv -text $T(EDITOR-ghostview) -command "MasterBefehl $E ghostview"
+ button $E.todo.ispell -text $T(EDITOR-ispell) -command "MasterBefehl $E ispell"
+
+ button $E.todo.pos -text "$T(EDITOR-ZS) END" -width 12 -command "Init_curser $E"
+ button $E.todo.syntax -text $T(EDITOR-Syntax) -command "Syntax $E.te.edit1 1.0 end"
+ button $E.todo.quit -text $T(Quit) -command "EDITORQUIT $E"
+
+ pack $E.todo.master $E.todo.save $E.todo.saveas $E.todo.latex $E.todo.xdvi $E.todo.dvips $E.todo.gv $E.todo.ispell $E.todo.syntax $E.todo.quit $E.todo.pos -side left -fill x
+ pack $E.todo -fill x
+
+ frame $E.te -relief raised -borderwidth 2
+ scrollbar $E.te.vscroll -relief sunken -command "$E.te.edit1 yview"
+ text $E.te.edit1 -font tft -yscroll "$E.te.vscroll set"
+
+ pack $E.te.vscroll -side right -fill y
+ pack $E.te.edit1 -expand yes -fill both
+ pack $E.te -expand yes -fill both
+ bind $E.te.edit1 <Control-d> {}
+ bind $E <Enter> "UpToDateFile $E"
+ bind $E.te.edit1 <<Help>> {HelpTo %W}
+ bind $E.te.edit1 <Control-k><x> "SaveFile $E"
+ bind $E.te.edit1 <Control-k><d> "SaveAsFile $E"
+ bind $E <FocusIn> "erg_proc $E.te.edit1 \n MasterFocus $E \$FocusEditor"
+ MasterFocus $E $FocusEditor
+ if {$Delete2BackSpace_flag == 0} {
+ bind $E.te.edit1 <Delete> {
+ if $erg_flag(%W) then {
+ proc_undo %W
+ set erg_flag(%W) 0
+ break
+ } else {
+ undo_switch %W {Save SelSave DeleteKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ }
+ }
+ bind $E.te.edit1 <BackSpace> {
+ undo_switch %W {Save SelSave BackSpaceKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ } else {
+ bind $E.te.edit1 <Delete> {
+ if $erg_flag(%W) then {
+ proc_undo %W
+ set erg_flag(%W) 0
+ break
+ } else {
+ undo_switch %W {Save SelSave BackSpaceKey UndoMax}
+ Syntax %W "insert linestart" "insert lineend"
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ if {[%W tag nextrange sel 1.0 end] != ""} {
+ %W delete sel.first sel.last
+ } elseif [%W compare insert != 1.0] {
+ %W delete insert-1c
+ %W see insert
+ }
+ }
+ break
+ }
+ bind $E.te.edit1 <BackSpace> {
+ event generate %W <Delete>
+ break
+ }
+ }
+ set ModifiedArray($E.te.edit1) 0
+ bind $E.te.edit1 <<Position>> "event generate $E.te.edit1 <<Position_tail>> -when tail"
+ bind $E.te.edit1 <<Position_tail>> "$E.todo.pos configure -text \"$T(EDITOR-ZS) \[$E.te.edit1 index insert\]\"\nif \[winfo exists $E.wcurser\] {$E.wcurser.pos configure -text \"$T(EDITOR-ZS) \[$E.te.edit1 index insert\]\"}"
+ bind $E.te.edit1 <<Modified>> {
+ set ModifiedArray(%W) 1
+ }
+ bind $E.te.edit1 <<ERG>> {
+ ergaenzung %W
+ }
+ bind $E.te.edit1 <<BeginFlag>> {
+ set BeginFlag(%W) 0
+ erg_proc %W
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ bind $E.te.edit1 <<proc_undo>> {
+ undo_switch %W Save
+ event generate $FocusEditor.te.edit1 <<BeginFlag>>
+ }
+ bind $E.te.edit1 <F2> "SaveFile $E"
+ bind $E.te.edit1 <F3> {LoadFile}
+ bind $E.te.edit1 <F4> "$E.te.edit1 see insert"
+ bind $E.te.edit1 <F9> "MasterBefehl $E latex"
+ bind $E.te.edit1 <Alt-x> {ALLQUIT}
+ bind $E.te.edit1 <Alt-BackSpace> "pop_menu $E.te.edit1 Undo"
+ bind $E.te.edit1 <Shift-Delete> "pop_menu $E.te.edit1 Cut"
+ bind $E.te.edit1 <Control-Insert> "pop_menu $E.te.edit1 Copy"
+ bind $E.te.edit1 <Shift-Insert> "pop_menu $E.te.edit1 Paste"
+ bind $E.te.edit1 <Control-Delete> "pop_menu $E.te.edit1 Clear"
+ bind $E.te.edit1 <Control-l> {
+ if [winfo exists .wsearch] then {
+ .wsearch.f1.but2 invoke
+ }
+ }
+ bind $E.te.edit1 <Control-w> {ergaenzung2 %W}
+ wm protocol $E WM_DELETE_WINDOW "EDITORQUIT $E"
+ menu $E.pop_menu
+ $E.pop_menu add command -label $T(pop_menu-Undo) -command "pop_menu $E.te.edit1 Undo"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Cut) -command "pop_menu $E.te.edit1 Cut"
+ $E.pop_menu add command -label $T(pop_menu-Copy) -command "pop_menu $E.te.edit1 Copy"
+ $E.pop_menu add command -label $T(pop_menu-Paste) -command "pop_menu $E.te.edit1 Paste"
+ $E.pop_menu add command -label $T(pop_menu-Clear) -command "pop_menu $E.te.edit1 Clear"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Spell) -command "pop_menu $E.te.edit1 Spell"
+ $E.pop_menu add separator
+ $E.pop_menu add command -label $T(pop_menu-Block) -command "pop_menu $E.te.edit1 Block"
+ $E.pop_menu add command -label $T(pop_menu-plus) -command "pop_menu $E.te.edit1 AusKomm"
+ $E.pop_menu add command -label $T(pop_menu-minus) -command "pop_menu $E.te.edit1 AusKommRueck"
+ $E.pop_menu add command -label $T(pop_menu-more) -command "ergaenzung2 $E.te.edit1"
+ if {[lindex [split [info tclversion] .] 0] > 7} {
+ switch $tcl_platform(platform) unix {
+ } windows {
+ $E configure -menu $E.pop_menu
+ }}
+ bind $E.te.edit1 <Button-3> "tk_popup $E.pop_menu \[winfo pointerx $E\] \[winfo pointery $E\]"
+ bind $E.te.edit1 <ssharp> {
+ if {[%W tag nextrange sel 1.0 end] != ""} {
+ undo_switch %W Save
+ %W insert sel.last "\}"
+ %W tag add undo sel.last sel.last+1c
+ %W mark set insert sel.first
+ %W insert insert "\{\\"
+ %W tag add undo insert-2c insert
+ %W tag remove sel 1.0 end
+ undo_switch %W {Save UndoMul}
+ break
+ }
+ }
+ $E.te.edit1 tag add spell 1.0 1.0
+ $E.te.edit1 tag add syntax_blue 1.0 1.0
+ $E.te.edit1 tag add syntax_red 1.0 1.0
+ $E.te.edit1 tag add syntax_green 1.0 1.0
+ $E.te.edit1 tag add BlockTag 1.0 1.0
+ $E.te.edit1 tag add erg_tag 1.0 1.0
+ $E.te.edit1 tag raise spell
+ $E.te.edit1 tag raise syntax_red
+ $E.te.edit1 tag raise syntax_green
+ $E.te.edit1 tag raise syntax_blue
+ $E.te.edit1 tag raise BlockTag
+ $E.te.edit1 tag raise erg_tag
+ $E.te.edit1 tag raise sel
+ $E.te.edit1 tag configure spell -foreground $SpellColorRed
+ $E.te.edit1 tag configure syntax_blue -foreground $SyntaxColorBlue
+ $E.te.edit1 tag configure syntax_green -foreground $SyntaxColorGreen
+ $E.te.edit1 tag configure syntax_red -foreground $SyntaxColorRed
+ $E.te.edit1 tag configure BlockTag -background $BlockColor
+ $E.te.edit1 tag configure erg_tag -background $ErgaenzungGray
+ $E.te.edit1 tag bind spell <Double-ButtonPress> "spell $E.te.edit1 add 1.0 end"
+ focus $E.te.edit1
+ COLOR $E
+ $E.te.edit1 configure -background White
+ return $E
+}
+
+proc pop_menu {E Fall} {
+ global BlockBeginFlag BlockEndFlag BlockEditor BlockColor UndoArray
+ switch $Fall Cut {
+ undo_switch $E {SelSave UndoMax}
+ tk_textCut $E
+ Syntax $E "insert linestart" "insert lineend"
+ } Copy {
+ tk_textCopy $E
+ } Paste {
+ set ksp [$E index {insert linestart}]
+ undo_switch $E {Save SelSave UndoBegin}
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ $E delete sel.first sel.last
+ }
+ tk_textPaste $E
+ undo_switch $E {UndoEnd SelMul UndoMax}
+ Syntax $E $ksp "insert lineend"
+ } Clear {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ undo_switch $E {SelSave UndoMax}
+ $E delete sel.first sel.last
+ Syntax $E "insert linestart" "insert lineend"
+ }
+ } Spell {
+ spell $E show 1.0 end
+ } Block {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ if {$BlockBeginFlag && $BlockEndFlag} then {$BlockEditor tag remove BlockTag 1.0 end}
+ set BlockBeginFlag 1
+ set BlockEndFlag 1
+ set BlockEditor $E
+ $E mark set BlockBegin [$E index sel.first]
+ $E mark set BlockEnd [$E index sel.last]
+ $E mark gravity BlockEnd left
+ $E tag add BlockTag BlockBegin BlockEnd
+ }
+ } AusKomm {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ AusKomm $E sel.first sel.last
+ }
+ } AusKommRueck {
+ if {[$E tag nextrange sel 1.0 end] != ""} {
+ AusKommRueck $E sel.first sel.last
+ }
+ } Undo {
+ proc_undo $E
+ }
+}
+
+######################################################################
+# file routines (load save new saveas append)
+source $libpath/file.tcl
+
+#######################################################################
+# Setzt backslash's fuer eine Stringuebergabe ein
+source $libpath/backslash.tcl
+
+#######################################################################
+# search routine
+source $libpath/search.tcl
+
+#######################################################################
+# search routine
+source $libpath/umlaut.tcl
+
+########################################################################
+########################################################################
+# spelling
+source $libpath/spelling.tcl
+spell_load
+
+#######################################################################
+# pack-hilfe fuer buttons
+set packstring ""
+proc addpack {T} {
+ global packstring
+ lappend packstring $T
+}
+#######################################################################
+# picture-button
+proc FRLIAN {FRAME LISTE ANZ START} {
+ global txtpath gifpath hlppath
+ global I_befehl I_txt I_back
+ set ii 1
+ set fr 1
+ frame $FRAME.$START$fr
+ set i infty
+ foreach i $LISTE {
+ set x [backslash $I_befehl($i)]
+ button $FRAME.$START$fr.but$i -image [Bild $i] -command "if \$FocusEditorFlag then {focus \$FocusEditor.te.edit1 \nset ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n\$FocusEditor.te.edit1 insert insert \"$x\"\nundo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n\$FocusEditor.te.edit1 mark set insert \"insert - $I_back($i) chars\"\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Modified>>}"
+ bind $FRAME.$START$fr.but$i <<Help>> "Help $i"
+ bind $FRAME.$START$fr.but$i <<HelpHelp>> "Help $i"
+ if {$ii == $ANZ} then {
+ set ii 0
+ incr fr
+ frame $FRAME.$START$fr
+ }
+ incr ii
+ }
+ set ii 1
+ set fr 1
+ foreach i $LISTE {
+ pack $FRAME.$START$fr.but$i -side left
+ if {$ii == $ANZ} then {
+ pack $FRAME.$START$fr -side top
+ set ii 0
+ incr fr
+ }
+ incr ii
+ }
+ pack $FRAME.$START$fr -side top
+}
+
+#######################################################################
+# text-button
+proc buttonmake {NAME buttonmakecount latex} {
+ global I_befehl I_txt I_back
+ set t "[backslash "$I_befehl($latex)"]"
+
+
+ button $NAME.but$buttonmakecount -text $I_txt($latex) -command "if \$FocusEditorFlag then {\n focus \$FocusEditor.te.edit1 \n set ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n\$FocusEditor.te.edit1 insert insert \"$t\"\nundo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n\$FocusEditor.te.edit1 mark set insert \"insert - $I_back($latex) chars\"\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Modified>>}"
+ bind $NAME.but$buttonmakecount <<Help>> "Help $latex"
+ bind $NAME.but$buttonmakecount <<HelpHelp>> "Help $latex"
+ addpack $NAME.but$buttonmakecount
+}
+
+#######################################################################
+# myown Buttons
+proc InitMyOwn {} {
+ global FocusEditorFlag FocusEditor myown myown_max T
+ if ![winfo exists .wmyown] then {
+ toplevel .wmyown
+ wm title .wmyown $T(wmyown-titel)
+ for {set i 0} {$i < $myown_max} {incr i} {
+ frame .wmyown.f$i
+ entry .wmyown.f$i.text -width 20 -relief sunken -textvariable myown($i) -background White
+ button .wmyown.f$i.but -command "if \$FocusEditorFlag {focus \$FocusEditor.te.edit1\n set ksp \[\$FocusEditor.te.edit1 index \"insert linestart\"\]\n undo_switch \$FocusEditor.te.edit1 {Save UndoBegin}\n \$FocusEditor.te.edit1 insert insert \[.wmyown.f$i.text get\]\n undo_switch \$FocusEditor.te.edit1 {UndoEnd Save}\n Syntax \$FocusEditor.te.edit1 \$ksp \"insert lineend\"\n event generate \$FocusEditor.te.edit1 <<Position_tail>> -when tail}"
+ menu .wmyown.f$i.pop_menu
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wmyown.f$i.text <<Cut>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Copy) -command "event generate .wmyown.f$i.text <<Copy>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wmyown.f$i.text <<Paste>>"
+ .wmyown.f$i.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wmyown.f$i.text <<Clear>>"
+ bind .wmyown.f$i.text <Button-3> "tk_popup .wmyown.f$i.pop_menu \[winfo pointerx .wmyown.f$i\] \[winfo pointery .wmyown.f$i\]"
+
+
+ pack .wmyown.f$i.but .wmyown.f$i.text -side left
+ pack .wmyown.f$i
+ }
+ button .wmyown.butQ -text $T(Quit) -command {
+ destroy .wmyown
+ }
+ pack .wmyown.butQ
+ wm minsize . 1 1
+ bind .wmyown <<Help>> {Help $T(wmyown-Help)}
+ bind .wmyown <Control-c> {
+ destroy .wmyown
+ }
+ wm resizable .wmyown 0 0
+ COLOR .wmyown
+ for {set i 0} {$i < $myown_max} {incr i} {
+ .wmyown.f$i.text configure -background White
+ }
+ } else {focus .wmyown}
+}
+#######################################################################
+# Yeah, cut everything into small pieces to disturb curius people !
+#######################################################################
+# help online in the latex-text
+source $libpath/help.tcl
+HLP_load
+
+#######################################################################
+# auto complition
+source $libpath/complition.tcl
+
+#######################################################################
+# help-system of tcltexed
+source $libpath/helpmanual.tcl
+
+#######################################################################
+# undo function
+source $libpath/undo.tcl
+
+#######################################################################
+# Farbige Syntax
+source $libpath/syntax.tcl
+
+#######################################################################
+# Bilderverwaltung
+proc Bild {name} {
+ global gifpath I_txt
+ set ksp [lsearch [image names] "IMAGE$I_txt($name)"]
+ if {$ksp == -1} {
+ image create photo "IMAGE$I_txt($name)" -file "$gifpath/$I_txt($name).gif"
+ }
+ return "IMAGE$I_txt($name)"
+}
+#######################################################################
+# Goto Curser
+proc Init_curser {E} {
+ global T GotoArray
+
+ if ![winfo exists $E.wcurser] then {
+ toplevel $E.wcurser
+ label $E.wcurser.l -text $T(wcurser-gotocurser)
+ label $E.wcurser.pos -text "$T(EDITOR-ZS) [$E.te.edit1 index insert]" -width 12
+ entry $E.wcurser.text -width 6 -relief sunken -textvariable GotoArray($E.te.edit1) -background White
+ frame $E.wcurser.f
+ button $E.wcurser.f.goto -text $T(wcurser-goto) -command "if \[catch {if {\[llength \[split \$GotoArray($E.te.edit1) .\]\] == 1} {append GotoArray($E.te.edit1) \".0\"}\n$E.te.edit1 mark set insert \$GotoArray($E.te.edit1)\n$E.te.edit1 see insert\nevent generate $E.te.edit1 <<Position_tail>> -when tail\n focus $E.te.edit1}\] {set GotoArray($E.te.edit1) \[$E.te.edit1 index insert\]}"
+
+
+ button $E.wcurser.f.butQ -text $T(Quit) -command "destroy $E.wcurser"
+ pack $E.wcurser.f.goto $E.wcurser.f.butQ -side left
+ pack $E.wcurser.l $E.wcurser.pos $E.wcurser.text $E.wcurser.f
+ wm title $E.wcurser $T(wcurser-titel)
+ COLOR $E.wcurser
+ $E.wcurser.text configure -background White
+ }
+ focus $E.wcurser
+}
+#######################################################################
+# It's all folks !
+#######################################################################
+# Bei Programstart eine Message
+
+if $readme_flag {
+ Help readme_hlp
+}
+
+if {[ string compare [ info procs tkTextInsert ] tkTextInsert]} {
+ # contributed by Aaron Mueller
+ proc tkTextInsert {w s} {
+ if {$s == ""} {return}
+ catch {
+ if {[$w compare sel.first <= insert] && [$w compare sel.last >= insert]} {
+ $w tag remove sel sel.first promptEnd
+ $w delete sel.first sel.last
+ }
+ }
+ $w insert insert $s
+ $w see insert
+ }
+}
diff --git a/support/tcltexed/etc/default.tex b/support/tcltexed/etc/default.tex
new file mode 100644
index 0000000000..6e7eaf89a6
--- /dev/null
+++ b/support/tcltexed/etc/default.tex
@@ -0,0 +1,7 @@
+\documentclass[12pt,a4paper]{report}
+\usepackage[german]{babel}
+\usepackage{umlaut}
+\begin{document}
+
+\end{document}
+
diff --git a/support/tcltexed/etc/tcltexed.ini b/support/tcltexed/etc/tcltexed.ini
new file mode 100644
index 0000000000..6c39545e46
--- /dev/null
+++ b/support/tcltexed/etc/tcltexed.ini
@@ -0,0 +1 @@
+2.2 1 0 1 {amsfonts 0 picture 0 notiz 0 amssymb 0 amscd 0 graphics 0 tabelle 0 latex209 0 amsthm 0 amsmath 0 epsf 0 latex 1 latex_math 1 latex_other 1} {} 1 12
diff --git a/support/tcltexed/etc/tcltexed.sp1 b/support/tcltexed/etc/tcltexed.sp1
new file mode 100644
index 0000000000..5d42926bd6
--- /dev/null
+++ b/support/tcltexed/etc/tcltexed.sp1
@@ -0,0 +1 @@
+Abschwächung Abstand Abstände Abweichung Abweichungen Allerdings Als Anregung Ansatz Ansteuerung Anzeige Apparatur Aufgrund Auflösung Aufnahme Ausgangstemperatur Ausrichtung Bereich Computer Computerprogramm Da Damit Dann Das Dazu Delta Der Diagramm Diagramme Die Durch Durchlaufe Eichung Ein Eingangsbereiches Eingangsspalt Ende Energie Energien Ergebnis Es Faktor Faktoren Fehler Filter Fokussierung Form Formel Frequenz Fällen Für GHz Gasentladung Gaslaser Gaußkurve Genauigkeit Geschwindigkeit Gleichung Grundfrequenz Größe Größen Güte Hand Hauptmode Helium Heliums Heliumtemperatur Hz Im Innerhalb K Kammer Kontakt Korrektur Kryostat L Laser Laserlichtes Lasers Laserstrahl Lichts Lichtstrahl Linie Linien Linienbreite Linsen Länge Löchern MHz Man Messung Methode Messung Meßwerte Mit Mittel Mittelwert Moden N Nach Nebenmode Neon Neons Position Probe Proben Programm Q Quelle Rahmen Raumtemperatur Rechnung Resonanzbedingung Resonator Resonators Scheibe Schrittweite Schwankungen Schwierigkeit Sichtfenster Signal Signals Somit Spaltenbreite Spaltes Spektren Spektrum Spiegel Spiegeln Spiegels Stelle Stellen Steuerung Stickstoff Strahlen Strahlengang Strecke T Tabelle Temperatur Trennung U Um Und Unregelmäßigkeit Varianz Vergleich Verstärker Verstärkers Verstärkung Verstärkungsbereiche Versuchsablauf Versuchsaufbau Versuchsauswertung Versuchsbetreuer Versuchstages Verteilung Verwendung Vorbereitung Wahlfreiheit Wellenlänge Werten Wobei Zunächst abgeschnittene abzuschätzen allgemein als also an anderen angeben angegeben angenäherten angeordneten angeregt angezeigten anzugeben arithmetischen auch auf aufgenommen aufgenommenen aus ausgemessen ausgemessenen ausgewählten automatisch befindet bei benutzt benötigte beobachtet beobachteten berechnet bessere bestimmen bestimmt beträgt bewegte bis bleibt blieb bzw c cm da damit dann darauf das dazu daß dem den der des die diese dieser direkt direktem drehenden drei durch durchläuft eigentliche ein eine einem einer eines eingesetzten eingestellt einzeln einzelnen emittieren emittierten empfangene entsprechend entsprechende entsprechender entspricht entstammt er ergeben ergibt erhalten erlaubt ermitteln ermittelten ermöglichen erstellt es evakuiert flüssigem folgenden frei für ganzen gegeben gegebenen gegenüber gemacht gemessene gemessenen geringer gestellt gestoppt gilt gleicher grob grobes größer gute günstigste hat hier hohen höher höherer im in innere ist jede jedesmal jedoch kann kleinen kommenden kommt korrigiert lagen langsamen lassen lediglich legen leichte liegt man maximale mit mittels muß mußte n nach nicht nimmt nm noch nur nächstes ohne reflektierten regelmäßig restlichen ruht schaltet schwierig sehr sein seine selbst sich sie sieden sind so soll sollten somit sowie starke starken störende störender symmetrisch t thermischen um und unter untersucht ursprünglichen vergleiche vergrößert verkleinert verliert verloren vernachlässigter verschiedenen verschoben versehentlichen verstärkt verwandt verzichten verzichtet verändert vom von vorgenommen weitere weiteren welches werde werden wesentlich wesentlichen wie wieder wiedergegeben wird wirklichen wobei womit wurde wurden zerlegt zu zum zumal zumeist zunächst zur zurückzulegen zusammenhängt zweier zweite Änderung Öffnung Über Übergang Übergangsfrequenz Übergänge Übersichtsaufnahme Übersichtsspektrum äußere über übereinstimmt übernommen
diff --git a/support/tcltexed/etc/tcltexed_own.sp0 b/support/tcltexed/etc/tcltexed_own.sp0
new file mode 100644
index 0000000000..d3f5a12faa
--- /dev/null
+++ b/support/tcltexed/etc/tcltexed_own.sp0
@@ -0,0 +1 @@
+
diff --git a/support/tcltexed/etc/tcltexed_own.sp1 b/support/tcltexed/etc/tcltexed_own.sp1
new file mode 100644
index 0000000000..280455d97b
--- /dev/null
+++ b/support/tcltexed/etc/tcltexed_own.sp1
@@ -0,0 +1 @@
+Aufbau Ausgang Auswertung Defektes Einheit Erster Fall Ferner Grund In Kernes Mangels Reparatur Rest Signale Spektrometer Spektrometers Stück Tag Teile Verfügung Verlauf Versuch Versuchstag Versuchsteil Zeit Ziel Zustand Zustandes Zweiter analog angeregten angeschlossen beiden dessen diesen direkten einen eingebaut entstanden erst fand fest geht geschaltet getrennt hin hoher indirekten innerhalb je keine keinerlei lag lieferte machen mehr möglichst oder restliche schon seiner seitens statt stehenden uns unserem verbunden verlief vor war waren weiter zeitlich zuerst
diff --git a/support/tcltexed/etc/umlaut.sty b/support/tcltexed/etc/umlaut.sty
new file mode 100644
index 0000000000..8db82590f1
--- /dev/null
+++ b/support/tcltexed/etc/umlaut.sty
@@ -0,0 +1,67 @@
+%%%
+%%% umlaute.sty
+%%%
+%
+% Karl Brodowsky (18.5.1993)
+%
+% bk1@aixfile1.urz.uni-heidelberg.de
+%
+% ACHTUNG: Diese Datei ist im BINÄRMODUS zu übertragen.
+% Sonst wird sie zerstört.
+%
+% Diese Datei dient dem TeXen von Dateien, die ISO-Umlaute enthalten.
+% Einfach \input umlaute.sty oder \include{umlaute.sty} verwenden.
+%
+% ISO-Umlaute dürfen verwendet werden, aber die Verwendung
+% der TeX-Umschreibungen bleibt zulässig.
+%
+%
+% WARNING: This file has to be transferred in binary-mode.
+% Otherwise it will be destroyed.
+%
+% This File enables TeXing of files which contain ISO-Umlaut-Characters
+% Simply use \input umlaute.sty or \include{umlaute.sty} .
+%
+% die datei wurde verkuerzt, indem die zeilen aneinandergehaengt
+% wurden. ausserdem wurde die anweisung \endinput hinzugefuegt,
+% da dadurch die datei korrekt geschlossen wird. l. dietsche, 31.3.95
+%
+\catcode`Ç=\active \defÇ{\c{C}}
+\catcode`ü=\active \defü{\"u}
+\catcode`é=\active \defé{\'e}
+\catcode`â=\active \defâ{\^a}
+\catcode`ä=\active \defä{\"a}
+\catcode`à=\active \defà{\`a}
+\catcode`å=\active \defå{{\aa}}
+\catcode`ç=\active \defç{\c{c}}
+\catcode`ê=\active \defê{\^e}
+\catcode`ë=\active \defë{\"e}
+\catcode`è=\active \defè{\`e}
+\catcode`ï=\active \defï{{\"\i}}
+\catcode`î=\active \defî{{\^\i}}
+\catcode`ì=\active \defì{{\`\i}}
+\catcode`Ä=\active \defÄ{\"A}
+\catcode`Å=\active \defÅ{{\AA}}
+
+\catcode`É=\active \defÉ{\'E}
+\catcode`æ=\active \defæ{{\ae}}
+\catcode`Æ=\active \defÆ{{\AE}}
+\catcode`ô=\active \defô{\^o}
+\catcode`ö=\active \defö{\"o}
+\catcode`ò=\active \defò{\`o}
+\catcode`û=\active \defû{\^u}
+\catcode`ù=\active \defù{\`u}
+\catcode`Ö=\active \defÖ{\"O}
+\catcode`Ü=\active \defÜ{\"U}
+\catcode`á=\active \defá{\'a}
+\catcode`í=\active \defí{{\'\i}}
+\catcode`ó=\active \defó{\'o}
+\catcode`ú=\active \defú{\'u}
+\catcode`ñ=\active \defñ{\~n}
+\catcode`Ñ=\active \defÑ{\~N}
+\catcode`ß=\active \defß{{\ss}}
+
+\endinput
+%%%
+%%% Ende von umlaute.sty
+%%%
diff --git a/support/tcltexed/gif/Delta_big.gif b/support/tcltexed/gif/Delta_big.gif
new file mode 100644
index 0000000000..cde11e3fd7
--- /dev/null
+++ b/support/tcltexed/gif/Delta_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Downarrow_big.gif b/support/tcltexed/gif/Downarrow_big.gif
new file mode 100644
index 0000000000..16cef856bc
--- /dev/null
+++ b/support/tcltexed/gif/Downarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Gamma_big.gif b/support/tcltexed/gif/Gamma_big.gif
new file mode 100644
index 0000000000..6772a176a5
--- /dev/null
+++ b/support/tcltexed/gif/Gamma_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Im_big.gif b/support/tcltexed/gif/Im_big.gif
new file mode 100644
index 0000000000..84d6334f06
--- /dev/null
+++ b/support/tcltexed/gif/Im_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Lambda_big.gif b/support/tcltexed/gif/Lambda_big.gif
new file mode 100644
index 0000000000..c795694c4b
--- /dev/null
+++ b/support/tcltexed/gif/Lambda_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Leftarrow_big.gif b/support/tcltexed/gif/Leftarrow_big.gif
new file mode 100644
index 0000000000..41f4a66410
--- /dev/null
+++ b/support/tcltexed/gif/Leftarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Leftrightarrow_big.gif b/support/tcltexed/gif/Leftrightarrow_big.gif
new file mode 100644
index 0000000000..678e15bff9
--- /dev/null
+++ b/support/tcltexed/gif/Leftrightarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Longleftarrow_big.gif b/support/tcltexed/gif/Longleftarrow_big.gif
new file mode 100644
index 0000000000..735a851737
--- /dev/null
+++ b/support/tcltexed/gif/Longleftarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Longleftrightarrow_big.gif b/support/tcltexed/gif/Longleftrightarrow_big.gif
new file mode 100644
index 0000000000..246d45b339
--- /dev/null
+++ b/support/tcltexed/gif/Longleftrightarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Longrightarrow_big.gif b/support/tcltexed/gif/Longrightarrow_big.gif
new file mode 100644
index 0000000000..ddd7f37f0b
--- /dev/null
+++ b/support/tcltexed/gif/Longrightarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Omega_big.gif b/support/tcltexed/gif/Omega_big.gif
new file mode 100644
index 0000000000..7df6865162
--- /dev/null
+++ b/support/tcltexed/gif/Omega_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Phi_big.gif b/support/tcltexed/gif/Phi_big.gif
new file mode 100644
index 0000000000..7dca2c6a08
--- /dev/null
+++ b/support/tcltexed/gif/Phi_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Pi_big.gif b/support/tcltexed/gif/Pi_big.gif
new file mode 100644
index 0000000000..6e4e5367be
--- /dev/null
+++ b/support/tcltexed/gif/Pi_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Re_big.gif b/support/tcltexed/gif/Re_big.gif
new file mode 100644
index 0000000000..a421a96862
--- /dev/null
+++ b/support/tcltexed/gif/Re_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Rightarrow_big.gif b/support/tcltexed/gif/Rightarrow_big.gif
new file mode 100644
index 0000000000..25c3f6b646
--- /dev/null
+++ b/support/tcltexed/gif/Rightarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Sigma_big.gif b/support/tcltexed/gif/Sigma_big.gif
new file mode 100644
index 0000000000..8ba8619fd2
--- /dev/null
+++ b/support/tcltexed/gif/Sigma_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Theta_big.gif b/support/tcltexed/gif/Theta_big.gif
new file mode 100644
index 0000000000..2df9542283
--- /dev/null
+++ b/support/tcltexed/gif/Theta_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Uparrow_big.gif b/support/tcltexed/gif/Uparrow_big.gif
new file mode 100644
index 0000000000..b779c65b1f
--- /dev/null
+++ b/support/tcltexed/gif/Uparrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Updownarrow_big.gif b/support/tcltexed/gif/Updownarrow_big.gif
new file mode 100644
index 0000000000..175763b58b
--- /dev/null
+++ b/support/tcltexed/gif/Updownarrow_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Upsilon_big.gif b/support/tcltexed/gif/Upsilon_big.gif
new file mode 100644
index 0000000000..b116aa8daa
--- /dev/null
+++ b/support/tcltexed/gif/Upsilon_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/Xi_big.gif b/support/tcltexed/gif/Xi_big.gif
new file mode 100644
index 0000000000..f1c0dbffad
--- /dev/null
+++ b/support/tcltexed/gif/Xi_big.gif
Binary files differ
diff --git a/support/tcltexed/gif/acute.gif b/support/tcltexed/gif/acute.gif
new file mode 100644
index 0000000000..eeff82758e
--- /dev/null
+++ b/support/tcltexed/gif/acute.gif
Binary files differ
diff --git a/support/tcltexed/gif/aleph.gif b/support/tcltexed/gif/aleph.gif
new file mode 100644
index 0000000000..4fe21e71bc
--- /dev/null
+++ b/support/tcltexed/gif/aleph.gif
Binary files differ
diff --git a/support/tcltexed/gif/alpha.gif b/support/tcltexed/gif/alpha.gif
new file mode 100644
index 0000000000..60e836510e
--- /dev/null
+++ b/support/tcltexed/gif/alpha.gif
Binary files differ
diff --git a/support/tcltexed/gif/amalg.gif b/support/tcltexed/gif/amalg.gif
new file mode 100644
index 0000000000..198edcf353
--- /dev/null
+++ b/support/tcltexed/gif/amalg.gif
Binary files differ
diff --git a/support/tcltexed/gif/angle.gif b/support/tcltexed/gif/angle.gif
new file mode 100644
index 0000000000..8e58cb31d4
--- /dev/null
+++ b/support/tcltexed/gif/angle.gif
Binary files differ
diff --git a/support/tcltexed/gif/approx.gif b/support/tcltexed/gif/approx.gif
new file mode 100644
index 0000000000..adcee8bc82
--- /dev/null
+++ b/support/tcltexed/gif/approx.gif
Binary files differ
diff --git a/support/tcltexed/gif/ast.gif b/support/tcltexed/gif/ast.gif
new file mode 100644
index 0000000000..1ee61d00fb
--- /dev/null
+++ b/support/tcltexed/gif/ast.gif
Binary files differ
diff --git a/support/tcltexed/gif/asymp.gif b/support/tcltexed/gif/asymp.gif
new file mode 100644
index 0000000000..c523d134a7
--- /dev/null
+++ b/support/tcltexed/gif/asymp.gif
Binary files differ
diff --git a/support/tcltexed/gif/atop.gif b/support/tcltexed/gif/atop.gif
new file mode 100644
index 0000000000..475fa9539c
--- /dev/null
+++ b/support/tcltexed/gif/atop.gif
Binary files differ
diff --git a/support/tcltexed/gif/backslash.gif b/support/tcltexed/gif/backslash.gif
new file mode 100644
index 0000000000..8f69b90930
--- /dev/null
+++ b/support/tcltexed/gif/backslash.gif
Binary files differ
diff --git a/support/tcltexed/gif/bar.gif b/support/tcltexed/gif/bar.gif
new file mode 100644
index 0000000000..74ec39dc9a
--- /dev/null
+++ b/support/tcltexed/gif/bar.gif
Binary files differ
diff --git a/support/tcltexed/gif/beta.gif b/support/tcltexed/gif/beta.gif
new file mode 100644
index 0000000000..e28861775d
--- /dev/null
+++ b/support/tcltexed/gif/beta.gif
Binary files differ
diff --git a/support/tcltexed/gif/bigcirc.gif b/support/tcltexed/gif/bigcirc.gif
new file mode 100644
index 0000000000..2345fc7bd4
--- /dev/null
+++ b/support/tcltexed/gif/bigcirc.gif
Binary files differ
diff --git a/support/tcltexed/gif/bigtriangledown.gif b/support/tcltexed/gif/bigtriangledown.gif
new file mode 100644
index 0000000000..6c51bf6a77
--- /dev/null
+++ b/support/tcltexed/gif/bigtriangledown.gif
Binary files differ
diff --git a/support/tcltexed/gif/bigtriangleup.gif b/support/tcltexed/gif/bigtriangleup.gif
new file mode 100644
index 0000000000..d7f7fa357a
--- /dev/null
+++ b/support/tcltexed/gif/bigtriangleup.gif
Binary files differ
diff --git a/support/tcltexed/gif/bot.gif b/support/tcltexed/gif/bot.gif
new file mode 100644
index 0000000000..8e9084e2d3
--- /dev/null
+++ b/support/tcltexed/gif/bot.gif
Binary files differ
diff --git a/support/tcltexed/gif/bowtie.gif b/support/tcltexed/gif/bowtie.gif
new file mode 100644
index 0000000000..bd6d446b3e
--- /dev/null
+++ b/support/tcltexed/gif/bowtie.gif
Binary files differ
diff --git a/support/tcltexed/gif/breve.gif b/support/tcltexed/gif/breve.gif
new file mode 100644
index 0000000000..b6a88ff759
--- /dev/null
+++ b/support/tcltexed/gif/breve.gif
Binary files differ
diff --git a/support/tcltexed/gif/bullet.gif b/support/tcltexed/gif/bullet.gif
new file mode 100644
index 0000000000..9012a05bf1
--- /dev/null
+++ b/support/tcltexed/gif/bullet.gif
Binary files differ
diff --git a/support/tcltexed/gif/cap.gif b/support/tcltexed/gif/cap.gif
new file mode 100644
index 0000000000..1f2b854efe
--- /dev/null
+++ b/support/tcltexed/gif/cap.gif
Binary files differ
diff --git a/support/tcltexed/gif/cdot.gif b/support/tcltexed/gif/cdot.gif
new file mode 100644
index 0000000000..0007b2ac41
--- /dev/null
+++ b/support/tcltexed/gif/cdot.gif
Binary files differ
diff --git a/support/tcltexed/gif/cdots.gif b/support/tcltexed/gif/cdots.gif
new file mode 100644
index 0000000000..6a9e6e989f
--- /dev/null
+++ b/support/tcltexed/gif/cdots.gif
Binary files differ
diff --git a/support/tcltexed/gif/check.gif b/support/tcltexed/gif/check.gif
new file mode 100644
index 0000000000..e64f5190d0
--- /dev/null
+++ b/support/tcltexed/gif/check.gif
Binary files differ
diff --git a/support/tcltexed/gif/chi.gif b/support/tcltexed/gif/chi.gif
new file mode 100644
index 0000000000..a27222d957
--- /dev/null
+++ b/support/tcltexed/gif/chi.gif
Binary files differ
diff --git a/support/tcltexed/gif/choose.gif b/support/tcltexed/gif/choose.gif
new file mode 100644
index 0000000000..b067661098
--- /dev/null
+++ b/support/tcltexed/gif/choose.gif
Binary files differ
diff --git a/support/tcltexed/gif/circ.gif b/support/tcltexed/gif/circ.gif
new file mode 100644
index 0000000000..b765a4efb1
--- /dev/null
+++ b/support/tcltexed/gif/circ.gif
Binary files differ
diff --git a/support/tcltexed/gif/clubsuit.gif b/support/tcltexed/gif/clubsuit.gif
new file mode 100644
index 0000000000..7ebcf81fd2
--- /dev/null
+++ b/support/tcltexed/gif/clubsuit.gif
Binary files differ
diff --git a/support/tcltexed/gif/cong.gif b/support/tcltexed/gif/cong.gif
new file mode 100644
index 0000000000..0d9f06dc2d
--- /dev/null
+++ b/support/tcltexed/gif/cong.gif
Binary files differ
diff --git a/support/tcltexed/gif/coprod.gif b/support/tcltexed/gif/coprod.gif
new file mode 100644
index 0000000000..7eb5f97751
--- /dev/null
+++ b/support/tcltexed/gif/coprod.gif
Binary files differ
diff --git a/support/tcltexed/gif/cup.gif b/support/tcltexed/gif/cup.gif
new file mode 100644
index 0000000000..971de06cae
--- /dev/null
+++ b/support/tcltexed/gif/cup.gif
Binary files differ
diff --git a/support/tcltexed/gif/dagger.gif b/support/tcltexed/gif/dagger.gif
new file mode 100644
index 0000000000..0595dea769
--- /dev/null
+++ b/support/tcltexed/gif/dagger.gif
Binary files differ
diff --git a/support/tcltexed/gif/dashv.gif b/support/tcltexed/gif/dashv.gif
new file mode 100644
index 0000000000..a68a67cb24
--- /dev/null
+++ b/support/tcltexed/gif/dashv.gif
Binary files differ
diff --git a/support/tcltexed/gif/ddagger.gif b/support/tcltexed/gif/ddagger.gif
new file mode 100644
index 0000000000..e03b70bf3c
--- /dev/null
+++ b/support/tcltexed/gif/ddagger.gif
Binary files differ
diff --git a/support/tcltexed/gif/ddot.gif b/support/tcltexed/gif/ddot.gif
new file mode 100644
index 0000000000..12e4ef7391
--- /dev/null
+++ b/support/tcltexed/gif/ddot.gif
Binary files differ
diff --git a/support/tcltexed/gif/ddots.gif b/support/tcltexed/gif/ddots.gif
new file mode 100644
index 0000000000..5c6f1d70f3
--- /dev/null
+++ b/support/tcltexed/gif/ddots.gif
Binary files differ
diff --git a/support/tcltexed/gif/delta.gif b/support/tcltexed/gif/delta.gif
new file mode 100644
index 0000000000..27aa787228
--- /dev/null
+++ b/support/tcltexed/gif/delta.gif
Binary files differ
diff --git a/support/tcltexed/gif/diamondsuit.gif b/support/tcltexed/gif/diamondsuit.gif
new file mode 100644
index 0000000000..dbf0328c3e
--- /dev/null
+++ b/support/tcltexed/gif/diamondsuit.gif
Binary files differ
diff --git a/support/tcltexed/gif/div.gif b/support/tcltexed/gif/div.gif
new file mode 100644
index 0000000000..e54a6b0a93
--- /dev/null
+++ b/support/tcltexed/gif/div.gif
Binary files differ
diff --git a/support/tcltexed/gif/dot.gif b/support/tcltexed/gif/dot.gif
new file mode 100644
index 0000000000..bb6585d9d5
--- /dev/null
+++ b/support/tcltexed/gif/dot.gif
Binary files differ
diff --git a/support/tcltexed/gif/doteq.gif b/support/tcltexed/gif/doteq.gif
new file mode 100644
index 0000000000..672ca72955
--- /dev/null
+++ b/support/tcltexed/gif/doteq.gif
Binary files differ
diff --git a/support/tcltexed/gif/downarrow.gif b/support/tcltexed/gif/downarrow.gif
new file mode 100644
index 0000000000..89016a92f5
--- /dev/null
+++ b/support/tcltexed/gif/downarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/ell.gif b/support/tcltexed/gif/ell.gif
new file mode 100644
index 0000000000..ab02f37f52
--- /dev/null
+++ b/support/tcltexed/gif/ell.gif
Binary files differ
diff --git a/support/tcltexed/gif/emptyset.gif b/support/tcltexed/gif/emptyset.gif
new file mode 100644
index 0000000000..2a949727a6
--- /dev/null
+++ b/support/tcltexed/gif/emptyset.gif
Binary files differ
diff --git a/support/tcltexed/gif/epsilon.gif b/support/tcltexed/gif/epsilon.gif
new file mode 100644
index 0000000000..9b8591c458
--- /dev/null
+++ b/support/tcltexed/gif/epsilon.gif
Binary files differ
diff --git a/support/tcltexed/gif/equiv.gif b/support/tcltexed/gif/equiv.gif
new file mode 100644
index 0000000000..a5a4346d25
--- /dev/null
+++ b/support/tcltexed/gif/equiv.gif
Binary files differ
diff --git a/support/tcltexed/gif/eta.gif b/support/tcltexed/gif/eta.gif
new file mode 100644
index 0000000000..f34907900c
--- /dev/null
+++ b/support/tcltexed/gif/eta.gif
Binary files differ
diff --git a/support/tcltexed/gif/exists.gif b/support/tcltexed/gif/exists.gif
new file mode 100644
index 0000000000..a794f3ec91
--- /dev/null
+++ b/support/tcltexed/gif/exists.gif
Binary files differ
diff --git a/support/tcltexed/gif/flat.gif b/support/tcltexed/gif/flat.gif
new file mode 100644
index 0000000000..0c2ef400b3
--- /dev/null
+++ b/support/tcltexed/gif/flat.gif
Binary files differ
diff --git a/support/tcltexed/gif/forall.gif b/support/tcltexed/gif/forall.gif
new file mode 100644
index 0000000000..cc8f5fff80
--- /dev/null
+++ b/support/tcltexed/gif/forall.gif
Binary files differ
diff --git a/support/tcltexed/gif/frac.gif b/support/tcltexed/gif/frac.gif
new file mode 100644
index 0000000000..f83f591957
--- /dev/null
+++ b/support/tcltexed/gif/frac.gif
Binary files differ
diff --git a/support/tcltexed/gif/frown.gif b/support/tcltexed/gif/frown.gif
new file mode 100644
index 0000000000..6f90236298
--- /dev/null
+++ b/support/tcltexed/gif/frown.gif
Binary files differ
diff --git a/support/tcltexed/gif/gamma.gif b/support/tcltexed/gif/gamma.gif
new file mode 100644
index 0000000000..dde47bcf31
--- /dev/null
+++ b/support/tcltexed/gif/gamma.gif
Binary files differ
diff --git a/support/tcltexed/gif/ge.gif b/support/tcltexed/gif/ge.gif
new file mode 100644
index 0000000000..a6ec3be5f3
--- /dev/null
+++ b/support/tcltexed/gif/ge.gif
Binary files differ
diff --git a/support/tcltexed/gif/gg.gif b/support/tcltexed/gif/gg.gif
new file mode 100644
index 0000000000..9e12f3f905
--- /dev/null
+++ b/support/tcltexed/gif/gg.gif
Binary files differ
diff --git a/support/tcltexed/gif/grave.gif b/support/tcltexed/gif/grave.gif
new file mode 100644
index 0000000000..b2cafb448f
--- /dev/null
+++ b/support/tcltexed/gif/grave.gif
Binary files differ
diff --git a/support/tcltexed/gif/hat.gif b/support/tcltexed/gif/hat.gif
new file mode 100644
index 0000000000..adbbf70833
--- /dev/null
+++ b/support/tcltexed/gif/hat.gif
Binary files differ
diff --git a/support/tcltexed/gif/hbar.gif b/support/tcltexed/gif/hbar.gif
new file mode 100644
index 0000000000..1eac5e7113
--- /dev/null
+++ b/support/tcltexed/gif/hbar.gif
Binary files differ
diff --git a/support/tcltexed/gif/heartsuit.gif b/support/tcltexed/gif/heartsuit.gif
new file mode 100644
index 0000000000..3f91c7ec31
--- /dev/null
+++ b/support/tcltexed/gif/heartsuit.gif
Binary files differ
diff --git a/support/tcltexed/gif/hookleftarrow.gif b/support/tcltexed/gif/hookleftarrow.gif
new file mode 100644
index 0000000000..0dcc5beba4
--- /dev/null
+++ b/support/tcltexed/gif/hookleftarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/hookrightarrow.gif b/support/tcltexed/gif/hookrightarrow.gif
new file mode 100644
index 0000000000..e4d4c875b6
--- /dev/null
+++ b/support/tcltexed/gif/hookrightarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/imath.gif b/support/tcltexed/gif/imath.gif
new file mode 100644
index 0000000000..c08e6bb874
--- /dev/null
+++ b/support/tcltexed/gif/imath.gif
Binary files differ
diff --git a/support/tcltexed/gif/in.gif b/support/tcltexed/gif/in.gif
new file mode 100644
index 0000000000..3ac341d7c2
--- /dev/null
+++ b/support/tcltexed/gif/in.gif
Binary files differ
diff --git a/support/tcltexed/gif/infty.gif b/support/tcltexed/gif/infty.gif
new file mode 100644
index 0000000000..66c8c83ad9
--- /dev/null
+++ b/support/tcltexed/gif/infty.gif
Binary files differ
diff --git a/support/tcltexed/gif/int.gif b/support/tcltexed/gif/int.gif
new file mode 100644
index 0000000000..62a23be499
--- /dev/null
+++ b/support/tcltexed/gif/int.gif
Binary files differ
diff --git a/support/tcltexed/gif/iota.gif b/support/tcltexed/gif/iota.gif
new file mode 100644
index 0000000000..24e3022964
--- /dev/null
+++ b/support/tcltexed/gif/iota.gif
Binary files differ
diff --git a/support/tcltexed/gif/jmath.gif b/support/tcltexed/gif/jmath.gif
new file mode 100644
index 0000000000..d41437fca7
--- /dev/null
+++ b/support/tcltexed/gif/jmath.gif
Binary files differ
diff --git a/support/tcltexed/gif/kappa.gif b/support/tcltexed/gif/kappa.gif
new file mode 100644
index 0000000000..a83ed7b7fe
--- /dev/null
+++ b/support/tcltexed/gif/kappa.gif
Binary files differ
diff --git a/support/tcltexed/gif/lambda.gif b/support/tcltexed/gif/lambda.gif
new file mode 100644
index 0000000000..a9bd827bdd
--- /dev/null
+++ b/support/tcltexed/gif/lambda.gif
Binary files differ
diff --git a/support/tcltexed/gif/lceil.gif b/support/tcltexed/gif/lceil.gif
new file mode 100644
index 0000000000..c50a40f1ff
--- /dev/null
+++ b/support/tcltexed/gif/lceil.gif
Binary files differ
diff --git a/support/tcltexed/gif/ldots.gif b/support/tcltexed/gif/ldots.gif
new file mode 100644
index 0000000000..3690a67738
--- /dev/null
+++ b/support/tcltexed/gif/ldots.gif
Binary files differ
diff --git a/support/tcltexed/gif/le.gif b/support/tcltexed/gif/le.gif
new file mode 100644
index 0000000000..a0da17c60e
--- /dev/null
+++ b/support/tcltexed/gif/le.gif
Binary files differ
diff --git a/support/tcltexed/gif/leftarrow.gif b/support/tcltexed/gif/leftarrow.gif
new file mode 100644
index 0000000000..11553e7d2e
--- /dev/null
+++ b/support/tcltexed/gif/leftarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/leftharpoondown.gif b/support/tcltexed/gif/leftharpoondown.gif
new file mode 100644
index 0000000000..5f29b40a25
--- /dev/null
+++ b/support/tcltexed/gif/leftharpoondown.gif
Binary files differ
diff --git a/support/tcltexed/gif/leftharpoonup.gif b/support/tcltexed/gif/leftharpoonup.gif
new file mode 100644
index 0000000000..cd1adc56cb
--- /dev/null
+++ b/support/tcltexed/gif/leftharpoonup.gif
Binary files differ
diff --git a/support/tcltexed/gif/leftrightarrow.gif b/support/tcltexed/gif/leftrightarrow.gif
new file mode 100644
index 0000000000..8052ef494a
--- /dev/null
+++ b/support/tcltexed/gif/leftrightarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/lfloor.gif b/support/tcltexed/gif/lfloor.gif
new file mode 100644
index 0000000000..b5fa01956a
--- /dev/null
+++ b/support/tcltexed/gif/lfloor.gif
Binary files differ
diff --git a/support/tcltexed/gif/ll.gif b/support/tcltexed/gif/ll.gif
new file mode 100644
index 0000000000..f7d6d9b88a
--- /dev/null
+++ b/support/tcltexed/gif/ll.gif
Binary files differ
diff --git a/support/tcltexed/gif/longleftarrow.gif b/support/tcltexed/gif/longleftarrow.gif
new file mode 100644
index 0000000000..6cf4179990
--- /dev/null
+++ b/support/tcltexed/gif/longleftarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/longleftrightarrow.gif b/support/tcltexed/gif/longleftrightarrow.gif
new file mode 100644
index 0000000000..54ed01d0a1
--- /dev/null
+++ b/support/tcltexed/gif/longleftrightarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/longrightarrow.gif b/support/tcltexed/gif/longrightarrow.gif
new file mode 100644
index 0000000000..7591741e51
--- /dev/null
+++ b/support/tcltexed/gif/longrightarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/mapsto.gif b/support/tcltexed/gif/mapsto.gif
new file mode 100644
index 0000000000..f1bcae62b0
--- /dev/null
+++ b/support/tcltexed/gif/mapsto.gif
Binary files differ
diff --git a/support/tcltexed/gif/masteroff.gif b/support/tcltexed/gif/masteroff.gif
new file mode 100644
index 0000000000..8fbf6c5c8d
--- /dev/null
+++ b/support/tcltexed/gif/masteroff.gif
Binary files differ
diff --git a/support/tcltexed/gif/masteron.gif b/support/tcltexed/gif/masteron.gif
new file mode 100644
index 0000000000..56b8f6898a
--- /dev/null
+++ b/support/tcltexed/gif/masteron.gif
Binary files differ
diff --git a/support/tcltexed/gif/mid.gif b/support/tcltexed/gif/mid.gif
new file mode 100644
index 0000000000..743eebaec9
--- /dev/null
+++ b/support/tcltexed/gif/mid.gif
Binary files differ
diff --git a/support/tcltexed/gif/models.gif b/support/tcltexed/gif/models.gif
new file mode 100644
index 0000000000..0e3a7b19d8
--- /dev/null
+++ b/support/tcltexed/gif/models.gif
Binary files differ
diff --git a/support/tcltexed/gif/mp.gif b/support/tcltexed/gif/mp.gif
new file mode 100644
index 0000000000..e2ab8000e0
--- /dev/null
+++ b/support/tcltexed/gif/mp.gif
Binary files differ
diff --git a/support/tcltexed/gif/mu.gif b/support/tcltexed/gif/mu.gif
new file mode 100644
index 0000000000..eea98d1f83
--- /dev/null
+++ b/support/tcltexed/gif/mu.gif
Binary files differ
diff --git a/support/tcltexed/gif/nabla.gif b/support/tcltexed/gif/nabla.gif
new file mode 100644
index 0000000000..7165b16b52
--- /dev/null
+++ b/support/tcltexed/gif/nabla.gif
Binary files differ
diff --git a/support/tcltexed/gif/natural.gif b/support/tcltexed/gif/natural.gif
new file mode 100644
index 0000000000..0e5ce043f5
--- /dev/null
+++ b/support/tcltexed/gif/natural.gif
Binary files differ
diff --git a/support/tcltexed/gif/nearrow.gif b/support/tcltexed/gif/nearrow.gif
new file mode 100644
index 0000000000..441e187297
--- /dev/null
+++ b/support/tcltexed/gif/nearrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/neg.gif b/support/tcltexed/gif/neg.gif
new file mode 100644
index 0000000000..105581bd73
--- /dev/null
+++ b/support/tcltexed/gif/neg.gif
Binary files differ
diff --git a/support/tcltexed/gif/neq.gif b/support/tcltexed/gif/neq.gif
new file mode 100644
index 0000000000..296a2293a1
--- /dev/null
+++ b/support/tcltexed/gif/neq.gif
Binary files differ
diff --git a/support/tcltexed/gif/ni.gif b/support/tcltexed/gif/ni.gif
new file mode 100644
index 0000000000..abda3c278a
--- /dev/null
+++ b/support/tcltexed/gif/ni.gif
Binary files differ
diff --git a/support/tcltexed/gif/nu.gif b/support/tcltexed/gif/nu.gif
new file mode 100644
index 0000000000..dd35bb8e4c
--- /dev/null
+++ b/support/tcltexed/gif/nu.gif
Binary files differ
diff --git a/support/tcltexed/gif/nwarrow.gif b/support/tcltexed/gif/nwarrow.gif
new file mode 100644
index 0000000000..2a2dd80ffb
--- /dev/null
+++ b/support/tcltexed/gif/nwarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/odot.gif b/support/tcltexed/gif/odot.gif
new file mode 100644
index 0000000000..4db93355fb
--- /dev/null
+++ b/support/tcltexed/gif/odot.gif
Binary files differ
diff --git a/support/tcltexed/gif/oint.gif b/support/tcltexed/gif/oint.gif
new file mode 100644
index 0000000000..0156aa2220
--- /dev/null
+++ b/support/tcltexed/gif/oint.gif
Binary files differ
diff --git a/support/tcltexed/gif/omega.gif b/support/tcltexed/gif/omega.gif
new file mode 100644
index 0000000000..586db41fb7
--- /dev/null
+++ b/support/tcltexed/gif/omega.gif
Binary files differ
diff --git a/support/tcltexed/gif/ominus.gif b/support/tcltexed/gif/ominus.gif
new file mode 100644
index 0000000000..3b21535003
--- /dev/null
+++ b/support/tcltexed/gif/ominus.gif
Binary files differ
diff --git a/support/tcltexed/gif/oplus.gif b/support/tcltexed/gif/oplus.gif
new file mode 100644
index 0000000000..8a24c0c48b
--- /dev/null
+++ b/support/tcltexed/gif/oplus.gif
Binary files differ
diff --git a/support/tcltexed/gif/oslash.gif b/support/tcltexed/gif/oslash.gif
new file mode 100644
index 0000000000..123101b804
--- /dev/null
+++ b/support/tcltexed/gif/oslash.gif
Binary files differ
diff --git a/support/tcltexed/gif/otimes.gif b/support/tcltexed/gif/otimes.gif
new file mode 100644
index 0000000000..49463f806b
--- /dev/null
+++ b/support/tcltexed/gif/otimes.gif
Binary files differ
diff --git a/support/tcltexed/gif/overbrace.gif b/support/tcltexed/gif/overbrace.gif
new file mode 100644
index 0000000000..533e18673b
--- /dev/null
+++ b/support/tcltexed/gif/overbrace.gif
Binary files differ
diff --git a/support/tcltexed/gif/overline.gif b/support/tcltexed/gif/overline.gif
new file mode 100644
index 0000000000..f412e6665c
--- /dev/null
+++ b/support/tcltexed/gif/overline.gif
Binary files differ
diff --git a/support/tcltexed/gif/parallel.gif b/support/tcltexed/gif/parallel.gif
new file mode 100644
index 0000000000..8c6742578e
--- /dev/null
+++ b/support/tcltexed/gif/parallel.gif
Binary files differ
diff --git a/support/tcltexed/gif/partial.gif b/support/tcltexed/gif/partial.gif
new file mode 100644
index 0000000000..5abd7be41b
--- /dev/null
+++ b/support/tcltexed/gif/partial.gif
Binary files differ
diff --git a/support/tcltexed/gif/perp.gif b/support/tcltexed/gif/perp.gif
new file mode 100644
index 0000000000..e1a61e3c26
--- /dev/null
+++ b/support/tcltexed/gif/perp.gif
Binary files differ
diff --git a/support/tcltexed/gif/phi.gif b/support/tcltexed/gif/phi.gif
new file mode 100644
index 0000000000..4f94ccf913
--- /dev/null
+++ b/support/tcltexed/gif/phi.gif
Binary files differ
diff --git a/support/tcltexed/gif/pi.gif b/support/tcltexed/gif/pi.gif
new file mode 100644
index 0000000000..cf44f64122
--- /dev/null
+++ b/support/tcltexed/gif/pi.gif
Binary files differ
diff --git a/support/tcltexed/gif/pm.gif b/support/tcltexed/gif/pm.gif
new file mode 100644
index 0000000000..ee04ee3ed7
--- /dev/null
+++ b/support/tcltexed/gif/pm.gif
Binary files differ
diff --git a/support/tcltexed/gif/prec.gif b/support/tcltexed/gif/prec.gif
new file mode 100644
index 0000000000..20edb26a12
--- /dev/null
+++ b/support/tcltexed/gif/prec.gif
Binary files differ
diff --git a/support/tcltexed/gif/preceq.gif b/support/tcltexed/gif/preceq.gif
new file mode 100644
index 0000000000..ae1bebdf7c
--- /dev/null
+++ b/support/tcltexed/gif/preceq.gif
Binary files differ
diff --git a/support/tcltexed/gif/prime.gif b/support/tcltexed/gif/prime.gif
new file mode 100644
index 0000000000..a3204b0d71
--- /dev/null
+++ b/support/tcltexed/gif/prime.gif
Binary files differ
diff --git a/support/tcltexed/gif/prod.gif b/support/tcltexed/gif/prod.gif
new file mode 100644
index 0000000000..9f9e0a206c
--- /dev/null
+++ b/support/tcltexed/gif/prod.gif
Binary files differ
diff --git a/support/tcltexed/gif/propto.gif b/support/tcltexed/gif/propto.gif
new file mode 100644
index 0000000000..fe6b12c858
--- /dev/null
+++ b/support/tcltexed/gif/propto.gif
Binary files differ
diff --git a/support/tcltexed/gif/psi.gif b/support/tcltexed/gif/psi.gif
new file mode 100644
index 0000000000..78dff3227f
--- /dev/null
+++ b/support/tcltexed/gif/psi.gif
Binary files differ
diff --git a/support/tcltexed/gif/rceil.gif b/support/tcltexed/gif/rceil.gif
new file mode 100644
index 0000000000..8a383355b8
--- /dev/null
+++ b/support/tcltexed/gif/rceil.gif
Binary files differ
diff --git a/support/tcltexed/gif/rfloor.gif b/support/tcltexed/gif/rfloor.gif
new file mode 100644
index 0000000000..9a0ac84984
--- /dev/null
+++ b/support/tcltexed/gif/rfloor.gif
Binary files differ
diff --git a/support/tcltexed/gif/rho.gif b/support/tcltexed/gif/rho.gif
new file mode 100644
index 0000000000..6ddbc61123
--- /dev/null
+++ b/support/tcltexed/gif/rho.gif
Binary files differ
diff --git a/support/tcltexed/gif/rhoi.gif b/support/tcltexed/gif/rhoi.gif
new file mode 100644
index 0000000000..6ddbc61123
--- /dev/null
+++ b/support/tcltexed/gif/rhoi.gif
Binary files differ
diff --git a/support/tcltexed/gif/rightarrow.gif b/support/tcltexed/gif/rightarrow.gif
new file mode 100644
index 0000000000..7154e3a406
--- /dev/null
+++ b/support/tcltexed/gif/rightarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/rightharpoondown.gif b/support/tcltexed/gif/rightharpoondown.gif
new file mode 100644
index 0000000000..6862d83cb3
--- /dev/null
+++ b/support/tcltexed/gif/rightharpoondown.gif
Binary files differ
diff --git a/support/tcltexed/gif/rightharpoonup.gif b/support/tcltexed/gif/rightharpoonup.gif
new file mode 100644
index 0000000000..84812d72d3
--- /dev/null
+++ b/support/tcltexed/gif/rightharpoonup.gif
Binary files differ
diff --git a/support/tcltexed/gif/rightleftharpoons.gif b/support/tcltexed/gif/rightleftharpoons.gif
new file mode 100644
index 0000000000..863158c3d0
--- /dev/null
+++ b/support/tcltexed/gif/rightleftharpoons.gif
Binary files differ
diff --git a/support/tcltexed/gif/searrow.gif b/support/tcltexed/gif/searrow.gif
new file mode 100644
index 0000000000..24cbf677a0
--- /dev/null
+++ b/support/tcltexed/gif/searrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/setminus.gif b/support/tcltexed/gif/setminus.gif
new file mode 100644
index 0000000000..8f69b90930
--- /dev/null
+++ b/support/tcltexed/gif/setminus.gif
Binary files differ
diff --git a/support/tcltexed/gif/sharp.gif b/support/tcltexed/gif/sharp.gif
new file mode 100644
index 0000000000..42442355af
--- /dev/null
+++ b/support/tcltexed/gif/sharp.gif
Binary files differ
diff --git a/support/tcltexed/gif/sigma.gif b/support/tcltexed/gif/sigma.gif
new file mode 100644
index 0000000000..675b6d519c
--- /dev/null
+++ b/support/tcltexed/gif/sigma.gif
Binary files differ
diff --git a/support/tcltexed/gif/sim.gif b/support/tcltexed/gif/sim.gif
new file mode 100644
index 0000000000..25e9e59fc0
--- /dev/null
+++ b/support/tcltexed/gif/sim.gif
Binary files differ
diff --git a/support/tcltexed/gif/simeq.gif b/support/tcltexed/gif/simeq.gif
new file mode 100644
index 0000000000..dbd3b6a4a1
--- /dev/null
+++ b/support/tcltexed/gif/simeq.gif
Binary files differ
diff --git a/support/tcltexed/gif/slaveoff.gif b/support/tcltexed/gif/slaveoff.gif
new file mode 100644
index 0000000000..195731493d
--- /dev/null
+++ b/support/tcltexed/gif/slaveoff.gif
Binary files differ
diff --git a/support/tcltexed/gif/slaveon.gif b/support/tcltexed/gif/slaveon.gif
new file mode 100644
index 0000000000..13c53f5251
--- /dev/null
+++ b/support/tcltexed/gif/slaveon.gif
Binary files differ
diff --git a/support/tcltexed/gif/smile.gif b/support/tcltexed/gif/smile.gif
new file mode 100644
index 0000000000..7434951ab7
--- /dev/null
+++ b/support/tcltexed/gif/smile.gif
Binary files differ
diff --git a/support/tcltexed/gif/sonder_strich.gif b/support/tcltexed/gif/sonder_strich.gif
new file mode 100644
index 0000000000..ad5619d86a
--- /dev/null
+++ b/support/tcltexed/gif/sonder_strich.gif
Binary files differ
diff --git a/support/tcltexed/gif/spadesuit.gif b/support/tcltexed/gif/spadesuit.gif
new file mode 100644
index 0000000000..c91aa34430
--- /dev/null
+++ b/support/tcltexed/gif/spadesuit.gif
Binary files differ
diff --git a/support/tcltexed/gif/sqcap.gif b/support/tcltexed/gif/sqcap.gif
new file mode 100644
index 0000000000..beb1ebfd9c
--- /dev/null
+++ b/support/tcltexed/gif/sqcap.gif
Binary files differ
diff --git a/support/tcltexed/gif/sqcup.gif b/support/tcltexed/gif/sqcup.gif
new file mode 100644
index 0000000000..ee72c6f5bf
--- /dev/null
+++ b/support/tcltexed/gif/sqcup.gif
Binary files differ
diff --git a/support/tcltexed/gif/sqrt.gif b/support/tcltexed/gif/sqrt.gif
new file mode 100644
index 0000000000..f56dbad7a3
--- /dev/null
+++ b/support/tcltexed/gif/sqrt.gif
Binary files differ
diff --git a/support/tcltexed/gif/sqrtn.gif b/support/tcltexed/gif/sqrtn.gif
new file mode 100644
index 0000000000..9099c17641
--- /dev/null
+++ b/support/tcltexed/gif/sqrtn.gif
Binary files differ
diff --git a/support/tcltexed/gif/sqsubseteq.gif b/support/tcltexed/gif/sqsubseteq.gif
new file mode 100644
index 0000000000..e238d62ad1
--- /dev/null
+++ b/support/tcltexed/gif/sqsubseteq.gif
Binary files differ
diff --git a/support/tcltexed/gif/sqsupseteq.gif b/support/tcltexed/gif/sqsupseteq.gif
new file mode 100644
index 0000000000..4b8c5b67dc
--- /dev/null
+++ b/support/tcltexed/gif/sqsupseteq.gif
Binary files differ
diff --git a/support/tcltexed/gif/stackrel.gif b/support/tcltexed/gif/stackrel.gif
new file mode 100644
index 0000000000..203e5400a3
--- /dev/null
+++ b/support/tcltexed/gif/stackrel.gif
Binary files differ
diff --git a/support/tcltexed/gif/subset.gif b/support/tcltexed/gif/subset.gif
new file mode 100644
index 0000000000..ef831098ad
--- /dev/null
+++ b/support/tcltexed/gif/subset.gif
Binary files differ
diff --git a/support/tcltexed/gif/subseteq.gif b/support/tcltexed/gif/subseteq.gif
new file mode 100644
index 0000000000..efe6747c58
--- /dev/null
+++ b/support/tcltexed/gif/subseteq.gif
Binary files differ
diff --git a/support/tcltexed/gif/succ.gif b/support/tcltexed/gif/succ.gif
new file mode 100644
index 0000000000..41f435c2f1
--- /dev/null
+++ b/support/tcltexed/gif/succ.gif
Binary files differ
diff --git a/support/tcltexed/gif/succeq.gif b/support/tcltexed/gif/succeq.gif
new file mode 100644
index 0000000000..de908e897a
--- /dev/null
+++ b/support/tcltexed/gif/succeq.gif
Binary files differ
diff --git a/support/tcltexed/gif/sum.gif b/support/tcltexed/gif/sum.gif
new file mode 100644
index 0000000000..fe9f7b3c88
--- /dev/null
+++ b/support/tcltexed/gif/sum.gif
Binary files differ
diff --git a/support/tcltexed/gif/supset.gif b/support/tcltexed/gif/supset.gif
new file mode 100644
index 0000000000..36d560510b
--- /dev/null
+++ b/support/tcltexed/gif/supset.gif
Binary files differ
diff --git a/support/tcltexed/gif/supseteq.gif b/support/tcltexed/gif/supseteq.gif
new file mode 100644
index 0000000000..7b39154eba
--- /dev/null
+++ b/support/tcltexed/gif/supseteq.gif
Binary files differ
diff --git a/support/tcltexed/gif/surd.gif b/support/tcltexed/gif/surd.gif
new file mode 100644
index 0000000000..b2da045a4b
--- /dev/null
+++ b/support/tcltexed/gif/surd.gif
Binary files differ
diff --git a/support/tcltexed/gif/swarrow.gif b/support/tcltexed/gif/swarrow.gif
new file mode 100644
index 0000000000..7ca6e35a02
--- /dev/null
+++ b/support/tcltexed/gif/swarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/tau.gif b/support/tcltexed/gif/tau.gif
new file mode 100644
index 0000000000..88866710de
--- /dev/null
+++ b/support/tcltexed/gif/tau.gif
Binary files differ
diff --git a/support/tcltexed/gif/theta.gif b/support/tcltexed/gif/theta.gif
new file mode 100644
index 0000000000..2c0e194697
--- /dev/null
+++ b/support/tcltexed/gif/theta.gif
Binary files differ
diff --git a/support/tcltexed/gif/tilde.gif b/support/tcltexed/gif/tilde.gif
new file mode 100644
index 0000000000..3378b4483e
--- /dev/null
+++ b/support/tcltexed/gif/tilde.gif
Binary files differ
diff --git a/support/tcltexed/gif/times.gif b/support/tcltexed/gif/times.gif
new file mode 100644
index 0000000000..895992b3ad
--- /dev/null
+++ b/support/tcltexed/gif/times.gif
Binary files differ
diff --git a/support/tcltexed/gif/top.gif b/support/tcltexed/gif/top.gif
new file mode 100644
index 0000000000..add9cf3d05
--- /dev/null
+++ b/support/tcltexed/gif/top.gif
Binary files differ
diff --git a/support/tcltexed/gif/triangle.gif b/support/tcltexed/gif/triangle.gif
new file mode 100644
index 0000000000..f336ccaf68
--- /dev/null
+++ b/support/tcltexed/gif/triangle.gif
Binary files differ
diff --git a/support/tcltexed/gif/underbrace.gif b/support/tcltexed/gif/underbrace.gif
new file mode 100644
index 0000000000..7b5cde2087
--- /dev/null
+++ b/support/tcltexed/gif/underbrace.gif
Binary files differ
diff --git a/support/tcltexed/gif/underline.gif b/support/tcltexed/gif/underline.gif
new file mode 100644
index 0000000000..9d510b7155
--- /dev/null
+++ b/support/tcltexed/gif/underline.gif
Binary files differ
diff --git a/support/tcltexed/gif/uparrow.gif b/support/tcltexed/gif/uparrow.gif
new file mode 100644
index 0000000000..27a5ec76e0
--- /dev/null
+++ b/support/tcltexed/gif/uparrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/updownarrow.gif b/support/tcltexed/gif/updownarrow.gif
new file mode 100644
index 0000000000..80e578e323
--- /dev/null
+++ b/support/tcltexed/gif/updownarrow.gif
Binary files differ
diff --git a/support/tcltexed/gif/uplus.gif b/support/tcltexed/gif/uplus.gif
new file mode 100644
index 0000000000..b7e5bfe4b1
--- /dev/null
+++ b/support/tcltexed/gif/uplus.gif
Binary files differ
diff --git a/support/tcltexed/gif/upsilon.gif b/support/tcltexed/gif/upsilon.gif
new file mode 100644
index 0000000000..33efe83ff1
--- /dev/null
+++ b/support/tcltexed/gif/upsilon.gif
Binary files differ
diff --git a/support/tcltexed/gif/varepsilon.gif b/support/tcltexed/gif/varepsilon.gif
new file mode 100644
index 0000000000..6a125a3ef8
--- /dev/null
+++ b/support/tcltexed/gif/varepsilon.gif
Binary files differ
diff --git a/support/tcltexed/gif/varphi.gif b/support/tcltexed/gif/varphi.gif
new file mode 100644
index 0000000000..92295d9fa0
--- /dev/null
+++ b/support/tcltexed/gif/varphi.gif
Binary files differ
diff --git a/support/tcltexed/gif/varpi.gif b/support/tcltexed/gif/varpi.gif
new file mode 100644
index 0000000000..1ec754f843
--- /dev/null
+++ b/support/tcltexed/gif/varpi.gif
Binary files differ
diff --git a/support/tcltexed/gif/varrho.gif b/support/tcltexed/gif/varrho.gif
new file mode 100644
index 0000000000..2a60208c58
--- /dev/null
+++ b/support/tcltexed/gif/varrho.gif
Binary files differ
diff --git a/support/tcltexed/gif/varsigma.gif b/support/tcltexed/gif/varsigma.gif
new file mode 100644
index 0000000000..3605f5f2a6
--- /dev/null
+++ b/support/tcltexed/gif/varsigma.gif
Binary files differ
diff --git a/support/tcltexed/gif/vartheta.gif b/support/tcltexed/gif/vartheta.gif
new file mode 100644
index 0000000000..7fc9642af4
--- /dev/null
+++ b/support/tcltexed/gif/vartheta.gif
Binary files differ
diff --git a/support/tcltexed/gif/vdash.gif b/support/tcltexed/gif/vdash.gif
new file mode 100644
index 0000000000..56fed956ac
--- /dev/null
+++ b/support/tcltexed/gif/vdash.gif
Binary files differ
diff --git a/support/tcltexed/gif/vec.gif b/support/tcltexed/gif/vec.gif
new file mode 100644
index 0000000000..d9df2546f7
--- /dev/null
+++ b/support/tcltexed/gif/vec.gif
Binary files differ
diff --git a/support/tcltexed/gif/vee.gif b/support/tcltexed/gif/vee.gif
new file mode 100644
index 0000000000..f8ff5f7642
--- /dev/null
+++ b/support/tcltexed/gif/vee.gif
Binary files differ
diff --git a/support/tcltexed/gif/wedge.gif b/support/tcltexed/gif/wedge.gif
new file mode 100644
index 0000000000..c76ca9e0ec
--- /dev/null
+++ b/support/tcltexed/gif/wedge.gif
Binary files differ
diff --git a/support/tcltexed/gif/widehat.gif b/support/tcltexed/gif/widehat.gif
new file mode 100644
index 0000000000..f062cb3f12
--- /dev/null
+++ b/support/tcltexed/gif/widehat.gif
Binary files differ
diff --git a/support/tcltexed/gif/widetilde.gif b/support/tcltexed/gif/widetilde.gif
new file mode 100644
index 0000000000..23206032ce
--- /dev/null
+++ b/support/tcltexed/gif/widetilde.gif
Binary files differ
diff --git a/support/tcltexed/gif/wp.gif b/support/tcltexed/gif/wp.gif
new file mode 100644
index 0000000000..156f36d949
--- /dev/null
+++ b/support/tcltexed/gif/wp.gif
Binary files differ
diff --git a/support/tcltexed/gif/wr.gif b/support/tcltexed/gif/wr.gif
new file mode 100644
index 0000000000..6e860a82ca
--- /dev/null
+++ b/support/tcltexed/gif/wr.gif
Binary files differ
diff --git a/support/tcltexed/gif/xi.gif b/support/tcltexed/gif/xi.gif
new file mode 100644
index 0000000000..8007730b85
--- /dev/null
+++ b/support/tcltexed/gif/xi.gif
Binary files differ
diff --git a/support/tcltexed/gif/zeta.gif b/support/tcltexed/gif/zeta.gif
new file mode 100644
index 0000000000..f789781dbf
--- /dev/null
+++ b/support/tcltexed/gif/zeta.gif
Binary files differ
diff --git a/support/tcltexed/gif/{.gif b/support/tcltexed/gif/{.gif
new file mode 100644
index 0000000000..a2ad976800
--- /dev/null
+++ b/support/tcltexed/gif/{.gif
Binary files differ
diff --git a/support/tcltexed/gif/}.gif b/support/tcltexed/gif/}.gif
new file mode 100644
index 0000000000..203a8ae8f3
--- /dev/null
+++ b/support/tcltexed/gif/}.gif
Binary files differ
diff --git a/support/tcltexed/hlp/RCS/index,v b/support/tcltexed/hlp/RCS/index,v
new file mode 100644
index 0000000000..e39e9d6dbd
--- /dev/null
+++ b/support/tcltexed/hlp/RCS/index,v
@@ -0,0 +1,25 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2000.10.12.15.03.13; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@fontshape eng/Typefaces.txt put {eng/Environments.txt ger/picture.txt} bibliography {eng/Environments.txt ger/bezug.txt} LaTeX2e {eng/sonder.txt ger/sonder.txt} ref {eng/References.txt ger/bezug.txt} textnormal eng/Typefaces.txt mathbb {eng/amsfonts.txt ger/amsfonts.txt} noindent {eng/Paragraphs.txt ger/format.txt} line {eng/Environments.txt ger/picture.txt} dashbox {eng/Environments.txt ger/latexbox.txt ger/picture.txt} epsfxsize {eng/epsf.txt ger/epsf.txt} footnotemark {eng/Footnotes.txt ger/notiz.txt} mathbf eng/Typefaces.txt arabic eng/Counters.txt nocite {eng/Environments.txt ger/bezug.txt} texttt eng/Typefaces.txt pagestyle {eng/Styles.txt ger/pagestyle.txt} xleftarrow {eng/amsmath.txt ger/amsmath.txt} enumerate {eng/Environments.txt ger/index.txt} stopbreaks eng/Letters.txt fboxrule ger/latexbox.txt boldsymbol {eng/amsfonts.txt ger/amsfonts.txt} addcontentsline {eng/Contents.txt ger/index.txt} slshape {eng/Typefaces.txt ger/format.txt} markboth eng/Styles.txt Huge {eng/Typefaces.txt ger/format.txt} oddsidemargin ger/Seitenformat.txt textup eng/Typefaces.txt textfloatsep ger/gleit.txt tabular {eng/Environments.txt ger/tabelle.txt} linethickness {eng/Environments.txt ger/picture.txt} section {eng/Sectioning.txt ger/index.txt} nonumber ger/math.txt paragraph {eng/Sectioning.txt ger/index.txt} part {eng/Sectioning.txt ger/index.txt} displaymath ger/math.txt newline eng/Breaking.txt figure {eng/Environments.txt ger/gleit.txt} Large {eng/Typefaces.txt ger/format.txt} arraystretch ger/tabelle.txt framebox {eng/Environments.txt eng/Spaces.txt ger/latexbox.txt ger/picture.txt} vfill eng/Spaces.txt value {eng/Counters.txt ger/counter.txt ger/input.txt} scshape {eng/Typefaces.txt ger/format.txt} newenvironment eng/Definitions.txt label {eng/References.txt ger/bezug.txt} flushright {eng/Environments.txt ger/format.txt} overbrace eng/Math.txt ! eng/Math.txt # eng/Characters.txt kill eng/Environments.txt {$} {eng/Math.txt ger/math.txt} it ger/format.txt Biggl {eng/amsmath.txt ger/amsmath.txt} % {eng/Characters.txt ger/sonder.txt} listoffigures eng/Contents.txt hrulefill {eng/Spaces.txt ger/format.txt} ' eng/Environments.txt equal ger/if.txt ( eng/Math.txt not ger/if.txt name eng/Letters.txt ) eng/Math.txt headheight ger/Seitenformat.txt Biggr {eng/amsmath.txt ger/amsmath.txt} amsmath {eng/amsmath.txt eng/amsthm.txt ger/amsmath.txt} + eng/Environments.txt whiledo ger/if.txt settodepth eng/Lengths.txt , eng/Math.txt - {eng/Breaking.txt eng/Environments.txt} mathfrak {eng/amsfonts.txt ger/amsfonts.txt} hoffset ger/Seitenformat.txt intertext {eng/amsmath.txt ger/amsmath.txt} epsfbox {eng/epsf.txt ger/epsf.txt} twocolumn eng/Layout.txt huge {eng/Typefaces.txt ger/format.txt} multicolumn {eng/Environments.txt ger/tabelle.txt} author {eng/Styles.txt ger/titlepage.txt} include {eng/Input.txt ger/input.txt} totalheight eng/Lengths.txt footnotesep ger/notiz.txt Bigl {eng/amsmath.txt ger/amsmath.txt} end eng/Environments.txt dbtextfloatsep ger/gleit.txt thanks {eng/Styles.txt ger/titlepage.txt} fussy {eng/Breaking.txt ger/format.txt} large {eng/Typefaces.txt ger/format.txt} gather {eng/amsmath.txt ger/amsmath.txt} {;} eng/Math.txt pagenumbering {eng/Styles.txt ger/pagenumbering.txt} Bigr {eng/amsmath.txt ger/amsmath.txt} < eng/Environments.txt arraycolsep ger/tabelle.txt = eng/Environments.txt underline eng/Math.txt equation {eng/Environments.txt ger/math.txt} > eng/Environments.txt vline {eng/Environments.txt ger/tabelle.txt} itemize {eng/Environments.txt ger/index.txt} onecolumn eng/Layout.txt DeclareGraphicsExtensions ger/graphicx.txt unitlength ger/picture.txt ttfamily {eng/Typefaces.txt ger/format.txt} newcounter {eng/Counters.txt ger/counter.txt} oval {eng/Environments.txt ger/picture.txt} atop ger/math.txt indexspace ger/index.txt dbfloatsep ger/gleit.txt setcounter {eng/Counters.txt ger/counter.txt} list eng/Environments.txt theoremstyle {eng/amsthm.txt ger/amsthm.txt} biggl {eng/amsmath.txt ger/amsmath.txt} columnseprule ger/Seitenformat.txt dotfill {eng/Spaces.txt ger/format.txt} setlength {eng/Lengths.txt ger/counter.txt ger/Seitenformat.txt} closing eng/Letters.txt input {eng/Input.txt ger/input.txt} marginparwidth ger/Seitenformat.txt readme_hlp {eng/readme_hlp.txt ger/readme_hlp.txt} refstepcounter eng/Counters.txt nolinebreak {eng/Breaking.txt ger/format.txt} par eng/Paragraphs.txt biggr {eng/amsmath.txt ger/amsmath.txt} cline {eng/Environments.txt ger/tabelle.txt} prod ger/math.txt usecounter eng/Counters.txt addtolength {eng/Lengths.txt ger/counter.txt} address eng/Letters.txt ddots eng/Math.txt hfill eng/Spaces.txt pushtabs eng/Environments.txt eqnarray eng/Environments.txt frac {eng/Math.txt ger/math.txt} linebreak {eng/Breaking.txt ger/format.txt} verse eng/Environments.txt ldots eng/Math.txt bigl {eng/amsmath.txt ger/amsmath.txt} mathit eng/Typefaces.txt raggedbottom eng/Layout.txt theindex ger/index.txt or ger/if.txt strech ger/format.txt {[} eng/Math.txt \\ eng/Breaking.txt bigr {eng/amsmath.txt ger/amsmath.txt} voffset ger/Seitenformat.txt textbf eng/Typefaces.txt reversemarginpar eng/Margin.txt \] eng/Math.txt footnoterule ger/notiz.txt fontencoding eng/Typefaces.txt ^ eng/Math.txt document {eng/Starting.txt ger/documentclass.txt} verb eng/Environments.txt _ eng/Math.txt ` eng/Environments.txt table {eng/Environments.txt ger/gleit.txt} marginparsep ger/Seitenformat.txt xrightarrow {eng/amsmath.txt ger/amsmath.txt} a eng/Environments.txt topskip ger/Seitenformat.txt vector {eng/Environments.txt ger/picture.txt} ps eng/Letters.txt normalsize {eng/Typefaces.txt ger/format.txt} right ger/math.txt footskip ger/Seitenformat.txt flushbottom eng/Layout.txt choose ger/math.txt marginpar {eng/Margin.txt ger/notiz.txt} depth eng/Lengths.txt sc ger/format.txt thispagestyle {eng/Styles.txt ger/pagestyle.txt} rm ger/format.txt tabbing {eng/Environments.txt ger/tabbing.txt} substack {eng/amsmath.txt ger/amsmath.txt} hline {eng/Environments.txt ger/tabelle.txt} marginparpush ger/Seitenformat.txt sf ger/format.txt usepackage {eng/Document.txt ger/usepackage.txt} emph eng/Typefaces.txt enlargethispage eng/Breaking.txt coprod ger/math.txt ExecuteOptions {ger/graphics.txt ger/graphicx.txt} sl ger/format.txt swapnumbers {eng/amsthm.txt ger/amsthm.txt} sideset {eng/amsmath.txt ger/amsmath.txt} Vmatrix {eng/amsmath.txt ger/amsmath.txt} footnotetext {eng/Footnotes.txt ger/notiz.txt} usefont eng/Typefaces.txt hspace {eng/Spaces.txt ger/format.txt} LaTeX {eng/sonder.txt ger/sonder.txt} epsf {eng/epsf.txt ger/epsf.txt} gpl_hlp {eng/gpl_hlp.txt ger/gpl_hlp.txt} chapter {eng/Sectioning.txt ger/index.txt} mathversion eng/Typefaces.txt savebox {eng/Spaces.txt ger/latexbox.txt ger/picture.txt} scalebox {ger/graphics.txt ger/graphicx.txt} topfraction ger/gleit.txt fnsymbol eng/Counters.txt theorem eng/Environments.txt telephone eng/Letters.txt matrix {eng/amsmath.txt ger/amsmath.txt} textheight ger/Seitenformat.txt graphicspath {ger/graphics.txt ger/graphicx.txt} tt ger/format.txt subparagraph {eng/Sectioning.txt ger/index.txt} discription {eng/Environments.txt ger/index.txt} floatpagefraction ger/gleit.txt indent ger/format.txt circle {eng/Environments.txt ger/picture.txt} left ger/math.txt int ger/math.txt addtocounter eng/Counters.txt caption ger/gleit.txt usebox {eng/Spaces.txt ger/latexbox.txt ger/picture.txt} raggedright eng/Environments.txt today {eng/sonder.txt ger/sonder.txt} math ger/math.txt doublerulesep ger/tabelle.txt sinature eng/Letters.txt amssymb {eng/amssymb.txt ger/amssymb.txt} split {eng/amsmath.txt ger/amsmath.txt} listoftables {eng/Contents.txt ger/index.txt} printindex ger/index.txt upshape {eng/Typefaces.txt ger/format.txt} editort_hlp eng/editort_hlp.txt {\[} ger/math.txt array {eng/Environments.txt ger/tabelle.txt} rotatebox {ger/graphics.txt ger/graphicx.txt} tcltexed_hlp {eng/tcltexed_hlp.txt ger/tcltexed_hlp.txt} settoheight eng/Lengths.txt stackrel ger/math.txt {\]} ger/math.txt DeclareGraphicsRule {ger/graphics.txt ger/graphicx.txt} quad ger/format.txt LARGE {eng/Typefaces.txt ger/format.txt} sffamily {eng/Typefaces.txt ger/format.txt} hypentation {eng/Breaking.txt ger/format.txt} vmatrix {eng/amsmath.txt ger/amsmath.txt} copyright_hlp {eng/copyright_hlp.txt ger/copyright_hlp.txt} cite {eng/Environments.txt ger/bezug.txt} arrayrulewidth ger/tabelle.txt fboxsep ger/latexbox.txt dbfloatpagefraction ger/gleit.txt vdots eng/Math.txt subequation {eng/amsmath.txt ger/amsmath.txt} small {eng/Typefaces.txt ger/format.txt} mathrm eng/Typefaces.txt newcommand {eng/Definitions.txt ger/counter.txt} oint ger/math.txt boxed {eng/amsmath.txt ger/amsmath.txt} subsubitem ger/index.txt mathsf eng/Typefaces.txt bfseries {eng/Typefaces.txt ger/format.txt} listofffigures ger/index.txt clearpage {eng/Breaking.txt ger/format.txt} tabcolsep ger/tabelle.txt medskip eng/Spaces.txt thebibliography {eng/Environments.txt ger/bezug.txt} ifthenelse ger/if.txt centering {eng/Environments.txt ger/format.txt} amscd {eng/amscd.txt ger/amscd.txt} topmargin ger/Seitenformat.txt fontsize eng/Typefaces.txt textit eng/Typefaces.txt editor_hlp {eng/editor_hlp.txt ger/editor_hlp.txt} minipage {eng/Environments.txt ger/latexbox.txt} qquad ger/format.txt cdots eng/Math.txt columnsep ger/Seitenformat.txt item {eng/Environments.txt ger/index.txt} opening eng/Letters.txt fontfamily eng/Typefaces.txt typein {eng/Terminal.txt ger/input.txt} sqrt {eng/Math.txt ger/math.txt} frame eng/Environments.txt intextsep ger/gleit.txt textwidth ger/Seitenformat.txt documentclass {eng/Document.txt ger/documentclass.txt} newpage {eng/Breaking.txt ger/format.txt} settowidth {eng/Lengths.txt ger/counter.txt} pmod ger/math.txt smallskip eng/Spaces.txt rmfamily {eng/Typefaces.txt ger/format.txt} headsep ger/Seitenformat.txt mathtt eng/Typefaces.txt vspace {eng/Spaces.txt ger/format.txt} addtocontents {eng/Contents.txt ger/index.txt} underbrace eng/Math.txt tableofcontents {eng/Contents.txt ger/index.txt} alph eng/Counters.txt textmd eng/Typefaces.txt symbol eng/Characters.txt titlepage {eng/Environments.txt ger/titlepage.txt} fontseries eng/Typefaces.txt newsavebox {eng/Spaces.txt ger/latexbox.txt ger/picture.txt} makeidx ger/index.txt addvspace eng/Spaces.txt picture {eng/Environments.txt ger/picture.txt} bibliographystyle eng/Environments.txt mbox eng/Spaces.txt newtheorem {eng/amsthm.txt eng/Definitions.txt ger/amsthm.txt} footnote {eng/Footnotes.txt ger/notiz.txt} selectfont eng/Typefaces.txt cleardoublepage {eng/Breaking.txt ger/format.txt} bmatrix {eng/amsmath.txt ger/amsmath.txt} sloppy {eng/Breaking.txt ger/format.txt} maketitle {eng/Styles.txt ger/titlepage.txt} appendix {eng/Sectioning.txt ger/index.txt} location eng/Letters.txt verbatim {eng/Environments.txt ger/verbatim.txt} samepage ger/format.txt stepcounter {eng/Counters.txt ger/counter.txt ger/input.txt} shortstack {eng/Environments.txt ger/picture.txt} footheight ger/Seitenformat.txt subitem ger/index.txt bigskip eng/Spaces.txt center {eng/Environments.txt ger/format.txt} typeout {eng/Terminal.txt ger/input.txt} bottomfraction ger/gleit.txt mathnormal eng/Typefaces.txt align {eng/amsmath.txt ger/amsmath.txt} newlength {eng/Lengths.txt ger/counter.txt} raisebox eng/Spaces.txt renewenvironment eng/Definitions.txt quote {eng/Environments.txt ger/format.txt} startbreaks eng/Letters.txt grafics ger/graphics.txt fbox eng/Spaces.txt bf ger/format.txt documentstyle ger/documentclass.txt rule {eng/Spaces.txt ger/latexbox.txt} letter eng/Environments.txt bezier ger/picture.txt amsthm ger/amsthm.txt title {eng/Styles.txt ger/titlepage.txt} graficx ger/graphicx.txt sbox eng/Spaces.txt makeindex ger/index.txt floatsep ger/gleit.txt includeonly {eng/Input.txt ger/input.txt} cc eng/Letters.txt cases {eng/amsmath.txt ger/amsmath.txt} markright eng/Styles.txt height eng/Lengths.txt DeclareGraphicsExtentions ger/graphics.txt pageref {eng/References.txt ger/bezug.txt} tiny {eng/Typefaces.txt ger/format.txt} bibitem {eng/Environments.txt ger/bezug.txt} dicretionary ger/format.txt raggedleft eng/Environments.txt thicklines:thinlines ger/picture.txt fill ger/format.txt subsection {eng/Sectioning.txt ger/index.txt} normalfont eng/Typefaces.txt evensidemargin ger/Seitenformat.txt footnotesize {eng/Typefaces.txt ger/format.txt} subsubsection {eng/Sectioning.txt ger/index.txt} mathcal eng/Typefaces.txt textfraction ger/gleit.txt editot_hlp ger/editort_hlp.txt multiput {eng/Environments.txt ger/picture.txt} sum ger/math.txt itshape {eng/Typefaces.txt ger/format.txt} date {eng/Styles.txt ger/titlepage.txt} lrbox eng/Spaces.txt nopagebreak {eng/Breaking.txt ger/format.txt} makebox {eng/Environments.txt eng/Spaces.txt ger/latexbox.txt ger/picture.txt} scriptsize {eng/Typefaces.txt ger/format.txt} makelabels eng/Letters.txt multline {eng/amsmath.txt ger/amsmath.txt} and {ger/if.txt ger/titlepage.txt} textsc eng/Typefaces.txt amsfonts {eng/amsfonts.txt ger/amsfonts.txt} mdseries {eng/Typefaces.txt ger/format.txt} textrm eng/Typefaces.txt parbox {eng/Spaces.txt ger/latexbox.txt} overline eng/Math.txt quotation {eng/Environments.txt ger/format.txt} text {eng/amsmath.txt ger/amsmath.txt ger/math.txt} pmatrix {eng/amsmath.txt ger/amsmath.txt} begin {eng/Environments.txt ger/begin.txt} flushleft {eng/Environments.txt ger/format.txt} textsf eng/Typefaces.txt DeclareMathOperator {eng/amsmath.txt ger/amsmath.txt} nolimits ger/math.txt dbtopfraction ger/gleit.txt renewcommand eng/Definitions.txt width eng/Lengths.txt newfont eng/Definitions.txt em ger/format.txt pagebreak {eng/Breaking.txt ger/format.txt} resizebox {ger/graphics.txt ger/graphicx.txt} textsl eng/Typefaces.txt includegraphics {ger/graphics.txt ger/graphicx.txt}
+@
diff --git a/support/tcltexed/hlp/bre/Breaking.txt b/support/tcltexed/hlp/bre/Breaking.txt
new file mode 100644
index 0000000000..39b180e3a9
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Breaking.txt
@@ -0,0 +1,145 @@
+############################################################
+Line & Page Breaking
+############################################################
+
+The first thing LaTeX does when processing ordinary text is
+to translate your input file into a string of glyphs and
+spaces. To produce a printed document, this string must be
+broken into lines, and these lines must be broken into pages.
+In some environments, you do the line breaking yourself with
+the \\ command, but LaTeX usually does it for you.
+
+ \\: Start a new line.
+ \- (hyphenation): Insert explicit hyphenation.
+ \cleardoublepage: Start a new right-hand page.
+ \clearpage: Start a new page.
+ \enlargethispage: Enlarge the current page a bit.
+ \fussy: Be fussy about line breaking.
+ \hyphenation: Tell LaTeX how to hyphenate a word.
+ \linebreak: Break the line.
+ \newline: Break the line prematurely.
+ \newpage: Start a new page.
+ \nolinebreak: Don't break the current line.
+ \nopagebreak: Don't make a page break here.
+ \pagebreak: Please make a page break here.
+ \sloppy: Be sloppy about line breaking.
+
+############################################################
+ \\ ::\::
+############################################################
+\\[*][extra-space]
+The \\ command tells LaTeX to start a new line. It has an
+optional argument, extra-space, that specifies how much extra
+vertical space is to be inserted before the next line. This
+can be a negative amount.
+The \\* command is the same as the ordinary \\ command except
+that it tells LaTeX not to start a new page after the line.
+############################################################
+ \- ::-::
+############################################################
+The \- command tells LaTeX that it may hyphenate the word at
+that point. LaTeX is very good at hyphenating, and it will
+usually find all correct hyphenation points. The \- command
+is used for the exceptional cases.
+
+Note that when you insert \- commands in a word, the word
+will only be hyphenated at those points and not at any of the
+hyphenation points that LaTeX might otherwise have chosen.
+############################################################
+ \cleardoublepage ::cleardoublepage::
+############################################################
+The \cleardoublepage command ends the current page and causes
+all figures and tables that have so far appeared in the input
+to be printed. In a two-sided printing style, it also makes
+the next page a right-hand (odd-numbered) page, producing a
+blank page if necessary.
+############################################################
+ \clearpage ::clearpage::
+############################################################
+The \clearpage command ends the current page and causes all
+figures and tables that have so far appeared in the input to
+be printed.
+############################################################
+ \enlargethispage ::enlargethispage::
+############################################################
+\enlargethispage{size}
+\enlargethispage*{size}
+Enlarge the \textheight for the current page by the specified
+amount; e.g.
+\enlargethispage{\baselineskip} will allow one additional line.
+The starred form tries to squeeze the material together on
+the page as much as possible. This is normally used together
+with an explicit \pagebreak.
+############################################################
+ \fussy ::fussy::
+############################################################
+\fussy
+This declaration (which is the default) makes TeX more fussy
+about line breaking. This can avoids too much space between
+words, but may produce overfull boxes.
+This command cancels the effect of a previous \sloppy command.
+section \sloppy
+############################################################
+ \hyphenation ::hypentation::
+############################################################
+\hyphenation{words}
+The \hyphenation command declares allowed hyphenation points,
+where words is a list of words, separated by spaces, in which
+each hyphenation point is indicated by a - character.
+############################################################
+ \linebreak ::linebreak::
+############################################################
+\linebreak[number]
+The \linebreak command tells LaTeX to break the current line
+at the point of the command. With the optional argument,
+number, you can convert the \linebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+The \linebreak command causes LaTeX to stretch the line so it
+extends to the right margin.
+############################################################
+ \newline ::newline::
+############################################################
+The \newline command breaks the line right where it is. It
+can only be used in paragraph mode.
+############################################################
+ \newpage ::newpage::
+############################################################
+The \newpage command ends the current page.
+############################################################
+ \nolinebreak ::nolinebreak::
+############################################################
+\nolinebreak[number]
+The \nolinebreak command prevents LaTeX from breaking the
+current line at the point of the command. With the optional
+argument, number, you can convert the \nolinebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \nopagebreak ::nopagebreak::
+############################################################
+\nopagebreak[number]
+The \nopagebreak command prevents LaTeX from breaking the
+current page at the point of the command. With the optional
+argument, number, you can convert the \nopagebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \pagebreak ::pagebreak::
+############################################################
+\pagebreak[number]
+The \pagebreak command tells LaTeX to break the current page
+at the point of the command. With the optional argument,
+number, you can convert the \pagebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+############################################################
+ \sloppy ::sloppy::
+############################################################
+\sloppy
+This declaration makes TeX less fussy about line breaking.
+This can prevent overfull boxes, but may leave too much space
+between words. Lasts until a \fussy command is issued.
+section \fussy.
diff --git a/support/tcltexed/hlp/bre/Characters.txt b/support/tcltexed/hlp/bre/Characters.txt
new file mode 100644
index 0000000000..6117d613e5
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Characters.txt
@@ -0,0 +1,31 @@
+############################################################
+Special Characters ::#::%::symbol::
+############################################################
+
+The following characters play a special role in LaTeX and are
+called "special printing characters", or simply
+"special characters".
+
+ # $ % & ~ _ ^ \ { }
+
+Whenever you put one of these special characters into your
+file, you are doing something special. If you simply want
+the character to be printed just as any other letter, include
+a \ in front of the character. For example, \$ will produce
+$ in your output.
+
+One exception to this rule is the \ itself because \\ has its
+own special meaning. A \ is produced by typing $\backslash$
+in your file.
+Also, \~ means `place a tilde accent over the following letter',
+so you will probably want to use \verb instead.
+
+In addition, you can access any character of a font once you
+know its number by using the \symbol command. For example,
+the character used for displaying spaces in the \verb*
+command has the code decimal 32, so it can be typed as
+\symbol{32}.
+
+You can also specify octal numbers with ' or hexadecimal
+numbers with ", so the previous example could also be written
+ as \symbol{'40} or \symbol{"20}.
diff --git a/support/tcltexed/hlp/bre/Contents.txt b/support/tcltexed/hlp/bre/Contents.txt
new file mode 100644
index 0000000000..49d35032a9
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Contents.txt
@@ -0,0 +1,53 @@
+############################################################
+Table of Contents
+############################################################
+::tableofcontents::listoffigures::listoftables::
+A table of contents is produced with the \tableofcontents
+command. You put the command right where you want the table
+of contents to go; LaTeX does the rest for you. It produces
+a heading, but it does not automatically start a new page.
+If you want a new page after the table of contents, include
+a \newpage command after the \tableofcontents command.
+
+There are similar commands \listoffigures and \listoftables
+for producing a list of figures and a list of tables,
+respectively. Everything works exactly the same as for the
+table of contents.
+
+NOTE: If you want any of these items to be generated, you
+cannot have the \nofiles command in your document.
+
+ \addcontentsline: Add an entry to table of
+ contents etc.
+ \addtocontents: Add text directly to table of
+ contents file etc.
+
+############################################################
+ \addcontentsline ::addcontentsline::
+############################################################
+\addcontentsline{file}{sec_unit}{entry}
+The \addcontentsline command adds an entry to the specified
+list or table where:
+
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ sec_unit controls the formatting of the entry. It
+ should be one of the following, depending upon
+ the value of the file argument:
+ toc -- the name of the sectional unit, such
+ as part or subsection.
+ lof -- figure
+ lot -- table
+ entry is the text of the entry.
+############################################################
+ \addtocontents ::addtocontents::
+############################################################
+\addtocontents{file}{text}
+The \addtocontents command adds text (or formatting commands)
+directly to the file that generates the table of contents or
+list of figures or tables.
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ text is the information to be written.
diff --git a/support/tcltexed/hlp/bre/Counters.txt b/support/tcltexed/hlp/bre/Counters.txt
new file mode 100644
index 0000000000..ef4316a446
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Counters.txt
@@ -0,0 +1,113 @@
+############################################################
+Counters
+############################################################
+
+Everything LaTeX numbers for you has a counter associated
+with it. The name of the counter is the same as the name
+of the environment or command that produces the number,
+except with no \. (enumi - enumiv are used for the nested
+enumerate environment.) Below is a list of the counters
+used in LaTeX's standard document classes to control
+numbering.
+
+ part paragraph figure enumi
+ chapter subparagraph table enumii
+ section page footnote enumiii
+ subsection equation mpfootnote enumiv
+ subsubsection
+
+ \addtocounter: Add a quantity to a counter.
+ \alph: Print value of a counter using letters.
+ \arabic: Print value of a counter using numerals.
+ \fnsymbol: Print value of a counter using symbols.
+ \newcounter: Define a new counter.
+ \refstepcounter: Add to counter, resetting subsidiary counters.
+ \roman: Print value of a counter using roman numerals.
+ \setcounter: Set the value of a counter.
+ \stepcounter: Add to counter, resetting subsidiary counters.
+ \usecounter: Use a specified counter in a list environment.
+ \value: Use the value of a counter in an expression.
+
+############################################################
+ \addtocounter ::addtocounter::
+############################################################
+\addtocounter{counter}{value}
+The \addtocounter command increments the counter by the
+amount specified by the value argument. The value argument
+can be negative.
+############################################################
+ \alph ::alph::
+############################################################
+\alph{counter}
+This command causes the value of the counter to be printed
+in alphabetic characters. The \alph command uses lower case
+alphabetic alphabetic characters, i.e., a, b, c... while the
+\Alph command uses upper case alphabetic characters,
+i.e., A, B, C....
+############################################################
+ \arabic ::arabic::
+############################################################
+\arabic{counter}
+The \arabic command causes the value of the counter to be
+printed in Arabic numbers, i.e., 3.
+############################################################
+ \fnsymbol ::fnsymbol::
+############################################################
+\fnsymbol{counter}
+The \fnsymbol command causes the value of the counter to be
+printed in a specific sequence of nine symbols that can be
+used for numbering footnotes. eg. From 1-9:
+NB. counter must have a value between 1 and 9 inclusive.
+############################################################
+ \newcounter ::newcounter::
+############################################################
+\newcounter{foo}[counter]
+The \newcounter command defines a new counter named foo. The
+counter is initialized to zero.
+The optional argument [counter] causes the counter foo to be
+reset whenever the counter named in the optional argument is
+incremented.
+############################################################
+ \refstepcounter ::refstepcounter::
+############################################################
+\refstepcounter{counter}
+The \refstepcounter command works like \stepcounter See
+section \stepcounter, except it also defines the current
+\ref value to be the result of \thecounter.
+############################################################
+ \roman ::roman
+############################################################
+\roman{counter}
+This command causes the value of the counter to be printed
+in Roman numerals. The \roman command uses lower case Roman
+numerals, i.e., i, ii, iii..., while the \Roman command uses
+upper case Roman numerals, i.e., I, II, III....
+############################################################
+ \stepcounter ::stepcounter::
+############################################################
+\stepcounter{counter}
+The \stepcounter command adds one to the counter and resets
+all subsidiary counters.
+############################################################
+ \setcounter ::setcounter::
+############################################################
+\setcounter{counter}{value}
+The \setcounter command sets the value of the counter to that
+specified by the value argument.
+############################################################
+ \usecounter ::usecounter::
+############################################################
+\usecounter{counter}
+The \usecounter command is used in the second argument of the
+list environment to allow the counter specified to be used to
+number the list items.
+############################################################
+ \value ::value::
+############################################################
+\value{counter}
+The \value command produces the value of the counter named
+in the mandatory argument. It can be used where LaTeX expects
+an integer or number, such as the second argument of a
+\setcounter or \addtocounter command, or in:
+ \hspace{\value{foo}\parindent}
+It is useful for doing arithmetic with counters.
diff --git a/support/tcltexed/hlp/bre/Definitions.txt b/support/tcltexed/hlp/bre/Definitions.txt
new file mode 100644
index 0000000000..e2d50c3281
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Definitions.txt
@@ -0,0 +1,82 @@
+############################################################
+Definitions
+############################################################
+
+\newcommand: Define a new command.
+\newenvironment: Define a new environment.
+\newtheorem: Define a new theorem-like environment.
+\newfont: Define a new font name.
+
+############################################################
+ \newcommand ::newcommand::renewcommand::
+############################################################
+ \newcommand{cmd}[args]{definition}
+ \newcommand{cmd}[args][default]{definition}
+ \renewcommand{cmd}[args]{definition}
+ \renewcommand{cmd}[args][default]{definition}
+These commands define (or redefine) a command.
+ cmd A command name beginning with a \. For
+ \newcommand it must not be already defined and
+ must not begin with \end; for \renewcommand it
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the command being defined. The
+ default is for the command to have no arguments.
+ def If this optional parameter is present, it means
+ that the command's first argument is optional.
+ The default value of the optional argument is def.
+ definition The text to be substituted for every
+ occurrence of cmd; a parameter of the form #n in
+ cmd is replaced by the text of the nth argument
+ when this substitution takes place.
+############################################################
+ \newenvironment ::newenvironment::renewenvironment::
+############################################################
+ \newenvironment{nam}[args]{begdef}{enddef}
+ \newenvironment{nam}[args][default]{begdef}{enddef}
+ \renewenvironment{nam}[args]{begdef}{enddef}
+These commands define or redefine an environment.
+ nam The name of the environment. For \newenvironment
+ there must be no currently defined environment
+ by that name, and the command \nam must be
+ undefined. For \renewenvironment the environment
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the newly-defined environment.
+ The default is no arguments.
+ default If this is specified, the first argument
+ is optional, and default gives the default value
+ for that argument.
+ begdef The text substituted for every occurrence of
+ \begin{nam}; a parameter of the form #n in cmd
+ is replaced by the text of the nth argument when
+ this substitution takes place.
+ enddef The text substituted for every occurrence of
+ \end{nam}. It may not contain any argument
+ parameters.
+############################################################
+ \newtheorem ::newtheorem::
+############################################################
+ \newtheorem{env_name}{caption}[within]
+ \newtheorem{env_name}[numbered_like]{caption}
+This command defines a theorem-like environment.
+ env_name The name of the environment to be defined.
+ A string of letters. It must not be the
+ name of an existing environment or counter.
+ caption The text printed at the beginning of the
+ environment, right before the number.
+ This may simply say "Theorem", for example.
+ within The name of an already defined counter,
+ usually of a sectional unit. Provides a
+ means of resetting the new theorem counter
+ within the sectional unit.
+ numbered_like The name of an already defined theorem-like
+ environment.
+The \newtheorem command may have at most one optional argument.
+############################################################
+ \newfont ::newfont::
+############################################################
+\newfont{cmd}{font_name}
+Defines the command name cmd, which must not be currently
+defined, to be a declaration that selects the font named
+font_name to be the current font.
diff --git a/support/tcltexed/hlp/bre/Document.txt b/support/tcltexed/hlp/bre/Document.txt
new file mode 100644
index 0000000000..3e68a83dc2
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Document.txt
@@ -0,0 +1,56 @@
+############################################################
+Document Classes
+############################################################
+
+Valid LaTeX document classes include:
+ article
+ report
+ letter
+ book
+ slides
+Other document classes are often available. See section
+Overview of LaTeX and Local Guide, for details. They are
+selected with the following command:
+
+ \documentclass [options] {class} ::documentclass::
+
+All the standard classes (except slides) accept the following
+options for
+selecting the typeface size (10 pt is default):
+ 10pt, 11pt, 12pt
+All classes accept these options for selecting the paper size
+(default is letter):
+ a4paper, a5paper, b5paper, letterpaper,
+ legalpaper, executivepaper
+Miscellaneous options:
+ landscape -- selects landscape format. Default is portrait.
+ titlepage, notitlepage -- selects if there should be a
+ separate title page.
+ leqno -- equation number on left side of equations. Default
+ is right side.
+ fleqn -- displayed formulas flush left. Default is centred.
+ openbib -- use "open" bibliography format.
+ draft, final -- mark/do not mark overfull boxes with a rule.
+ Default is final.
+These options are not available with the slides class:
+ oneside, twoside -- selects one- or twosided layout.
+ Default is oneside, except for the book class.
+ openright, openany -- determines if a chapter should
+ start on a right-hand page. Default is
+ openright for book.
+ onecolumn, twocolumn -- one or two columns. Defaults
+ to one column.
+The slides class offers the option clock for printing the
+time at the bottom of each note.
+
+If you specify more than one option, they must be separated
+by a comma. Additional packages are loaded by a
+
+ \usepackage[options]{pkg} ::usepackage::
+
+command. If you specify more than one package, they must be
+separated by a comma.
+
+Any options given in the \documentclass command that are
+unknown by the selected document class are passed on to
+the packages loaded with \usepackage.
diff --git a/support/tcltexed/hlp/bre/Environments.txt b/support/tcltexed/hlp/bre/Environments.txt
new file mode 100644
index 0000000000..8284905a3d
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Environments.txt
@@ -0,0 +1,943 @@
+############################################################
+Environments ::begin::end::
+############################################################
+
+LaTeX provides a number of different paragraph-making
+environments. Each environment begins and ends in the same
+manner.
+
+ \begin{environment-name}
+ .
+ .
+ .
+ \end{environment-name}
+
+ array: Math arrays.
+ center: Centred lines.
+ description: Labelled lists.
+ enumerate: Numbered lists.
+ eqnarray: Sequences of aligned equations.
+ equation: Displayed equation.
+ figure: Floating figures.
+ flushleft: Flushed left lines.
+ flushright: Flushed right lines.
+ itemize: Bulleted lists.
+ letter: Letters.
+ list: Generic list environment.
+ minipage: Miniature page.
+ picture: Picture with text, arrows, lines and
+ circles.
+ quotation: Indented environment with paragraph
+ indentation.
+ quote: Indented environment with no paragraph
+ indentation.
+ tabbing: Align text arbitrarily.
+ table: Floating tables.
+ tabular: Align text in columns.
+ thebibliography: Bibliography or reference list.
+ theorem: Theorems, lemmas, etc.
+ titlepage: For hand crafted title pages.
+ verbatim: Simulating typed input.
+ verse: For poetry and other things.
+
+############################################################
+ array ::array::
+############################################################
+
+\begin{array}{col1col2...coln}
+column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+\end{array}
+
+Math arrays are produced with the array environment. It has
+a single mandatory argument describing the number of columns
+and the alignment within them. Each column, coln, is specified
+by a single letter that tells how items in that row should
+be formatted.
+
+ c -- for centred
+ l -- for flush left
+ r -- for flush right
+
+Column entries must be separated by an &. Column entries may
+include other LaTeX commands. Each row of the array must be
+terminated with the string \\.
+
+Note that the array environment can only be used in math mode,
+so normally it is used inside an equation environment.
+############################################################
+ center ::center::
+############################################################
+
+ \begin{center}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{center}
+
+The center environment allows you to create a paragraph
+consisting of lines that are centred within the left and
+right margins on the current page. Each line must be
+terminated with the string \\.
+
+\centering: The declaration form of the center environment.
+
+############################################################
+ \centering ::centering::
+############################################################
+This declaration corresponds to the center environment. This
+declaration can be used inside an environment such as quote
+or in a parbox. The text of a figure or table can be centred
+on the page by putting a \centering command at the beginning
+of the figure or table environment.
+
+Unlike the center environment, the \centering command does
+not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ description ::discription::
+############################################################
+
+ \begin{description}
+ \item [label] First item
+ \item [label] Second item
+ .
+ .
+ .
+ \end{description}
+
+The description environment is used to make labelled lists.
+The label is bold face and flushed right.
+############################################################
+ enumerate ::enumerate::
+############################################################
+
+ \begin{enumerate}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{enumerate}
+
+The enumerate environment produces a numbered list.
+Enumerations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments.
+
+Each item of an enumerated list begins with an \item command.
+There must be at least one \item command within the environment.
+The enumerate environment uses the enumi through enumiv
+counters (see section Counters). The type of numbering can be
+changed by redefining \theenumi etc.
+############################################################
+ eqnarray ::eqnarray::
+############################################################
+
+ \begin{eqnarray}
+ math formula 1 \\
+ math formula 2 \\
+ .
+ .
+ .
+ \end{eqnarray}
+
+The eqnarray environment is used to display a sequence of
+equations or inequalities. It is very much like a three-column
+array environment, with consecutive rows separated by \\ and
+consecutive items within a row separated by an &.
+
+An equation number is placed on every line unless that line
+has a \nonumber command.
+
+The command \lefteqn is used for splitting long formulas
+across lines. It typesets its argument in display style flush
+left in a box of zero width.
+############################################################
+ equation ::equation::
+############################################################
+
+ \begin{equation}
+ math formula
+ \end{equation}
+
+The equation environment centres your equation on the page
+and places the equation number in the right margin.
+############################################################
+ figure ::figure::
+############################################################
+
+ \begin{figure}[placement]
+
+ body of the figure
+
+ \caption{figure title}
+ \end{figure}
+
+Figures are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Figures will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your figure. There are four places where LaTeX
+can possibly put a float:
+ h (Here) - at the position in the text where the
+ figure environment appears.
+ t (Top) - at the top of a text page.
+ b (Bottom) - at the bottom of a text page.
+ p (Page of floats) - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement tbp.
+
+The body of the figure is made up of whatever text, LaTeX
+commands, etc. you wish. The \caption command allows you to
+title your figure.
+############################################################
+ flushleft ::flushleft::
+############################################################
+
+ \begin{flushleft}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushleft}
+
+The flushleft environment allows you to create a paragraph
+consisting of lines that are flushed left, to the left-hand
+margin. Each line must be terminated
+with the string \\.
+
+ \raggedright: The declaration form of the flushleft
+ environment.
+
+############################################################
+ \raggedright ::raggedright::
+############################################################
+This declaration corresponds to the flushleft environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushleft environment, the \raggedright command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ flushright ::flushright::
+############################################################
+
+ \begin{flushright}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushright}
+
+The flushright environment allows you to create a paragraph
+consisting of lines that are flushed right, to the right-hand
+margin. Each line must be terminated with the string \\.
+
+ \raggedleft: The declaration form of the flushright environment.
+
+############################################################
+ \raggedleft ::raggedleft::
+############################################################
+This declaration corresponds to the flushright environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushright environment, the \raggedleft command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ itemize ::itemize::
+############################################################
+
+ \begin{itemize}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{itemize}
+
+The itemize environment produces a "bulleted" list.
+Itemizations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments. Each item of an itemized list
+begins with an \item command. There must be at least one
+\item command within the environment. The itemize environment
+uses the itemi through itemiv counters (see section Counters).
+The type of numbering can be changed by redefining \theitemi
+etc.
+############################################################
+ letter ::letter::
+############################################################
+This environment is used for creating letters. See section
+Letters.
+############################################################
+ list ::list::item::
+############################################################
+The list environment is a generic environment which is used
+for defining many of the more specific environments. It is
+seldom used in documents, but often in macros.
+
+ \begin{list}{label}{spacing}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{list}
+
+The {label} argument specifies how items should be labelled.
+This argument is a piece of text that is inserted in a box
+to form the label. This argument can and usually does contain
+other LaTeX commands.
+
+The {spacing} argument contains commands to change the spacing
+parameters for the list. This argument will most often be
+null, i.e., {}. This will select all default spacing which
+should suffice for most cases.
+############################################################
+ minipage ::minipage::
+############################################################
+
+ \begin{minipage}[position]{width}
+ text
+ \end{minipage}
+
+The minipage environment is similar to a \parbox command. It
+takes the same optional position argument and mandatory width
+argument. You may use other paragraph-making environments
+inside a minipage. Footnotes in a minipage environment are
+handled in a way that is particularly useful for putting
+footnotes in figures or tables. A \footnote or \footnotetext
+command puts the footnote at the bottom of the minipage
+instead of at the bottom of the page, and it uses the
+mpfootnote counter instead of the ordinary footnote counter
+
+See section Counters.
+
+NOTE: Don't put one minipage inside another if you are using
+footnotes; they may wind up at the bottom of the wrong
+minipage.
+############################################################
+ picture ::picture::
+############################################################
+ \begin{picture}(width,height)(x offset,y offset)
+ .
+ .
+ picture commands
+ .
+ .
+ \end{picture}
+The picture environment allows you to create just about any
+kind of picture you want containing text, lines, arrows and
+circles. You tell LaTeX where to put things in the picture
+by specifying their coordinates. A coordinate is a number
+that may have a decimal point and a minus sign -- a number
+like 5, 2.3 or -3.1416. A coordinate specifies a length in
+multiples of the unit length \unitlength, so if \unitlength
+has been set to 1cm, then the coordinate 2.54 specifies a
+length of 2.54 centimetres. You can change the value of
+\unitlength anywhere you want, using the \setlength command,
+but strange things will happen if you try changing it inside
+the picture environment.
+
+A position is a pair of coordinates, such as (2.4,-5),
+specifying the point with x-coordinate 2.4 and y-coordinate -5.
+Coordinates are specified in the usual way with respect to
+an origin, which is normally at the lower-left corner of the
+picture. Note that when a position appears as an argument, it
+is not enclosed in braces; the parentheses serve to delimit
+the argument.
+
+The picture environment has one mandatory argument, which is
+a position. It specifies the size of the picture. The
+environment produces a rectangular box with width and height
+determined by this argument's x- and y-coordinates.
+
+The picture environment also has an optional position argument,
+following the size argument, that can change the origin.
+(Unlike ordinary optional arguments, this argument is not
+contained in square brackets.) The optional argument gives the
+coordinates of the point at the lower-left corner of the picture
+(thereby determining the origin). For example, if \unitlength has
+been set to 1mm, the command
+
+ \begin{picture}(100,200)(10,20)
+
+produces a picture of width 100 millimetres and height 200
+millimetres, whose lower-left corner is the point (10,20) and
+whose upper-right corner is therefore the point (110,220). When
+you first draw a picture, you will omit the optional argument,
+leaving the origin at the lower-left corner. If you then want to
+modify your picture by shifting everything, you just add the
+appropriate optional argument. The environment's mandatory
+argument determines the nominal size of the picture.
+
+This need bear no relation to how large the picture really is;
+LaTeX will happily allow you to put things outside the picture,
+or even off the page. The picture's nominal size is used by LaTeX
+in determining how much room to leave for it.
+
+Everything that appears in a picture is drawn by the \put command.
+The command
+
+ \put (11.3,-.3){...}
+
+puts the object specified by ... in the picture, with its reference
+point at coordinates (11.3,-.3). The reference points for various
+objects will be described below. The \put command creates an LR box.
+You can put anything in the text argument of the \put command that
+you'd put into the argument of an \mbox and related commands. When
+you do this, the reference point will be the lower left corner of
+the box.
+
+Picture commands:
+
+ \circle: Draw a circle.
+ \dashbox: Draw a dashed box.
+ \frame: Draw a frame around an object.
+ \framebox (picture): Draw a box with a frame around it.
+ \line: Draw a straight line.
+ \linethickness: Set the line thickness.
+ \makebox (picture): Draw a box of the specified size.
+ \multiput: Draw multiple instances of an object.
+ \oval: Draw an ellipse.
+ \put: Place an object at a specified place.
+ \shortstack: Make a pile of objects.
+ \vector: Draw a line with an arrow.
+
+############################################################
+ \circle ::circle::
+############################################################
+\circle[*]{diameter}
+The \circle command produces a circle with a diameter as
+close to the specified one as possible. If the *-form of the
+command is used, LaTeX draws a solid circle.
+Note that only circles up to 40 pt can be drawn.
+############################################################
+ \dashbox ::dashbox::
+############################################################
+Draws a box with a dashed line.
+\dashbox{dash_length}(width,height){...}
+The \dashbox has an extra argument which specifies the width
+of each dash. A dashed box looks best when the width and
+height are multiples of the dash_length.
+############################################################
+ \frame ::frame::
+############################################################
+\frame{...}
+The \frame command puts a rectangular frame around the object
+specified in the argument. The reference point is the bottom
+left corner of the frame. No extra space is put between the
+frame and the object.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox(width,height)[position]{...}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the contents
+of the box.
+############################################################
+ \line ::line::
+############################################################
+\line(x slope,y slope){length}
+The \line command draws a line of the specified length and
+slope.
+Note that LaTeX can only draw lines with slope = x/y, where
+x and y have integer values from -6 through 6.
+############################################################
+ \linethickness ::linethickness::
+############################################################
+\linethickness{dimension}
+Declares the thickness of horizontal and vertical lines in a
+picture environment to be dimension, which must be a positive
+length. It does not affect the thickness of slanted lines and
+circles, or the quarter circles drawn by \oval to form the
+corners of an oval.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox(width,height)[position]{...}
+The \makebox command for the picture environment is similar
+to the normal \makebox command except that you must specify
+a width and height in multiples of \unitlength.
+The optional argument, [position], specifies the quadrant
+that your text appears in. You may select up to two of the
+following:
+ t - Moves the item to the top of the rectangle
+ b - Moves the item to the bottom
+ l - Moves the item to the left
+ r - Moves the item to the right
+See section \makebox.
+############################################################
+ \multiput ::multiput::
+############################################################
+\multiput(x coord,y coord)(delta x,delta y){number of copies}{object}
+The \multiput command can be used when you are putting the
+same object in a regular pattern across a picture.
+############################################################
+ \oval ::oval::
+############################################################
+\oval(width,height)[portion]
+The \oval command produces a rectangle with rounded corners.
+The optional argument, [portion], allows you to select part
+of the oval.
+ t - Selects the top portion
+ b - Selects the bottom portion
+ r - Selects the right portion
+ l - Selects the left portion
+Note that the "corners" of the oval are made with quarter
+circles with a maximum
+
+radius of 20 pt, so large "ovals" will look more like boxes
+with rounded corners.
+############################################################
+ \put ::put::
+############################################################
+\put(x coord,y coord){ ... }
+The \put command places the item specified by the mandatory
+argument at the given coordinates.
+############################################################
+ \shortstack ::shortstack::
+############################################################
+\shortstack[position]{... \\ ... \\ ...}
+The \shortstack command produces a stack of objects. The
+valid positions are:
+ r - Moves the objects to the right of the stack
+ l - Moves the objects to the left of the stack
+ c - Moves the objects to the centre of the stack
+ (default)
+############################################################
+ \vector ::vector::
+############################################################
+\vector(x slope,y slope){length}
+The \vector command draws a line with an arrow of the
+specified length and slope. The x and y values must lie
+between -4 and +4, inclusive.
+
+############################################################
+ quotation ::quotation::
+############################################################
+ \begin{quotation}
+ text
+ \end{quotation}
+The margins of the quotation environment are indented on the
+left and the right.
+
+The text is justified at both margins and there is paragraph
+indentation.
+
+Leaving a blank line between text produces a new paragraph.
+############################################################
+ quote ::quote::
+############################################################
+ \begin{quote}
+ text
+ \end{quote}
+The margins of the quote environment are indented on the left
+and the right. The text is justified at both margins. Leaving
+a blank line between text produces a new paragraph.
+############################################################
+ tabbing ::tabbing::
+############################################################
+ \begin{tabbing}
+ text \= more text \= still more text \= last text \\
+ second row \> \> more \\
+ .
+ .
+ .
+ \end{tabbing}
+The tabbing environment provides a way to align text in
+columns. It works by setting tab stops and tabbing to them
+much the way you do with an ordinary typewriter.
+
+It is best suited for cases where the width of each column
+is constant and known in advance.
+
+This environment can be broken across pages, unlike the tabular
+environment.
+
+The following commands can be used inside a tabbing
+enviroment:
+
+############################################################
+ \= ::=::
+############################################################
+Sets a tab stop at the current position.
+############################################################
+ \> ::>::
+############################################################
+Advances to the next tab stop.
+############################################################
+ \< ::<::
+############################################################
+This command allows you to put something to the left of the
+local margin without changing the margin. Can only be used
+at the start of the line.
+############################################################
+ \+ ::+::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the right.
+############################################################
+ \- ::-::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the left.
+############################################################
+ \' ::'::
+############################################################
+Moves everything that you have typed so far in the current
+column, i.e. everything from the most recent \>, \<, \', \\,
+or \kill command, to the right of the previous column, flush
+against the current column's tab stop.
+############################################################
+ \` ::`::
+############################################################
+Allows you to put text flush right against any tab stop,
+including tab stop 0. However, it can't move text to the right
+of the last column because here's no tab stop there. The \`
+command moves all the text that follows it, up to the \\ or
+\end{tabbing} command that ends the line, to the right margin
+of the tabbing environment. There must be no \> or \' command
+between the \` and the command that ends the line.
+############################################################
+ \kill ::kill::
+############################################################
+Sets tab stops without producing text. Works just like \\
+except that it throws away the current line instead of
+producing output for it. The effect of any \=, \+ or \-
+commands in that line remain in effect.
+############################################################
+ \pushtabs ::pushtabs::
+############################################################
+Saves all current tab stop positions. Useful for temporarily
+changing tab stop positions in the middle of a tabbing
+environment.
+############################################################
+ \pushtabs
+############################################################
+Restores the tab stop positions saved by the last \pushtabs.
+############################################################
+ \a ::a::
+############################################################
+In a tabbing environment, the commands \=, \' and \` do not
+produce accents as normal. Instead, the commands \a=, \a'
+and \a` are used.
+
+This example typesets a Pascal function in a traditional
+format:
+
+ \begin{tabbing}
+ function \= fact(n : integer) : integer;\\
+ \> begin \= \+ \\
+ \> if \= n $>$ 1 then \+ \\
+ fact := n * fact(n-1) \- \\
+ else \+ \\
+ fact := 1; \-\- \\
+ end;\\
+ \end{tabbing}
+
+############################################################
+ table ::table::
+############################################################
+
+ \begin{table}[placement]
+
+ body of the table
+
+ \caption{table title}
+ \end{table}
+
+Tables are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Tables will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your table. There are four places where LaTeX
+can possibly put a float:
+ h : Here - at the position in the text where the table
+ environment appears.
+ t : Top - at the top of a text page.
+ b : Bottom - at the bottom of a text page.
+ p : Page of floats - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement [tbp].
+
+The body of the table is made up of whatever text, LaTeX
+commands, etc., you wish. The \caption command allows you to
+title your table.
+############################################################
+ tabular ::tabular::
+############################################################
+
+ \begin{tabular}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular}
+
+or
+
+ \begin{tabular*}{width}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular*}
+
+These environments produce a box consisting of a sequence of
+rows of items, aligned vertically in columns. The mandatory
+and optional arguments consist of:
+ width Specifies the width of the tabular* environment.
+ There must be rubber space between columns that
+ can stretch to fill out the specified width.
+ pos Specifies the vertical position; default is
+ alignment on the centre of the environment.
+ t - align on top row
+ b - align on bottom row
+ cols Specifies the column formatting. It consists of
+ a sequence of the following specifiers,
+ corresponding to the sequence of columns and
+ intercolumn material.
+ l - A column of left-aligned items.
+ r - A column of right-aligned items.
+ c - A column of centred items.
+ | - A vertical line the full height and depth of
+ the environment.
+ @{text} - This inserts text in every row. An
+ @-expression suppresses the intercolumn space
+ normally inserted between columns; any desired
+ space between the inserted text and the adjacent
+ items must be included in text. An \extracolsep{wd}
+ command in an @-expression causes an extra space
+ of width wd to appear to the left of all subsequent
+ columns, until countermanded by another \extracolsep
+ command. Unlike ordinary intercolumn space, this
+ extra space is not suppressed by an @-expression.
+ An \extracolsep command can be used only in an
+ @-expression in the cols argument.
+ p{wd} - Produces a column with each item typeset in
+ a parbox of width wd, as if it were the argument
+ of a \parbox[t]{wd} command. However, a \\ may not
+ appear in the item, except in the following
+ situations:
+ 1. inside an environment like minipage,
+ array, or tabular.
+ 2. inside an explicit \parbox.
+ 3. in the scope of a \centering, \raggedright,
+ or \raggedleft
+ declaration. The latter declarations must appear
+ inside braces or an environment when used in a
+ p-column element.
+ *{num}{cols} - Equivalent to num copies of cols, where
+ num is any positive integer and cols is any list of
+ column-specifiers, which may contain another
+ *-expression.
+
+These commands can be used inside a tabular environment:
+
+ \cline: Draw a horizontal line spanning some columns.
+ \hline: Draw a horizontal line spanning all columns.
+ \multicolumn: Make an item spanning several columns.
+ \vline: Draw a vertical line.
+
+############################################################
+ \cline ::cline::
+############################################################
+\cline{i-j}
+The \cline command draws horizontal lines across the columns
+specified, beginning in column i and ending in column j,
+which are identified in the mandatory argument.
+############################################################
+ \hline ::hline::
+############################################################
+The \hline command will draw a horizontal line the width of
+the table. It's most commonly used to draw a line at the top,
+bottom, and between the rows of the table.
+############################################################
+ \multicolumn ::multicolumn::
+############################################################
+\multicolumn{cols}{pos}{text}
+The \multicolumn is used to make an entry that spans several
+columns. The first mandatory argument, cols, specifies the
+number of columns to span. The second mandatory argument, pos,
+specifies the formatting of the entry; c for centred, l for
+flushleft, r for flushright. The third mandatory argument,
+text, specifies what text is to make up the entry.
+############################################################
+ \vline ::vline::
+############################################################
+The \vline command will draw a vertical line extending the
+full height and depth of its row. An \hfill command can be
+used to move the line to the edge of the column. It can also
+be used in an @-expression.
+############################################################
+ thebibliography ::thebibliography::
+############################################################
+ \begin{thebibliography}{widest-label}
+ \bibitem[label]{cite_key}
+ .
+ .
+ .
+ \end{thebibliography}
+The thebibliography environment produces a bibliography or
+reference list. In the article class, this reference list is
+labelled "References"; in the report class, it is labelled
+"Bibliography".
+
+ widest-label: Text that, when printed, is
+ approximately as wide as the widest item
+ label produces by the \bibitem commands.
+ \bibitem: Specify a bibliography item.
+ \cite: Refer to a bibliography item.
+ \nocite: Include an item in the bibliography.
+ Using BibTeX: Automatic generation of bibliographies.
+
+############################################################
+ \bibitem ::bibitem::
+############################################################
+\bibitem[label]{cite_key}
+The \bibitem command generates an entry labelled by label.
+If the label argument is missing, a number is generated as
+the label, using the enumi counter. The cite_key is any
+sequence of letters, numbers, and punctuation symbols not
+containing a comma. This command writes an entry on the `.aux'
+file containing cite_key and the item's label. When this
+`.aux' file is read by the \begin{document} command, the
+item's label is associated with cite_key, causing the
+reference to cite_key by a \cite command to produce the
+associated label.
+############################################################
+ \cite ::cite::
+############################################################
+\cite[text]{key_list}
+The key_list argument is a list of citation keys. This command
+generates an in-text citation to the references associated
+with the keys in key_list by entries on the `.aux' file read
+by the \begin{document} command. The optional text argument
+will appear after the citation, i.e. \cite[p. 2]{knuth} might
+produce `[Knuth, p. 2]'.
+############################################################
+ \nocite ::nocite::
+############################################################
+\nocite{key_list}
+The \nocite command produces no text, but writes key_list,
+which is a list of one or more citation keys, on the `.aux'
+file.
+############################################################
+ Using BibTeX
+############################################################
+If you use the BibTeX program by Oren Patashnik (highly
+recommended if you need a bibliography of more than a couple
+of titles) to maintain your bibliography, you don't use the
+thebibliography environment. Instead, you include the lines
+
+ \bibliographystyle{style} ::bibliographystyle::
+ \bibliography{bibfile} ::bibliography::
+
+where style refers to a file style.bst, which defines how
+your citations will look. The standard styles distributed
+with BibTeX are:
+
+ alpha Sorted alphabetically. Labels are formed
+ from name of author and year of publication.
+ plain Sorted alphabetically. Labels are numeric.
+ unsrt Like plain, but entries are in order of
+ citation.
+ abbrv Like plain, but more compact labels.
+
+In addition, numerous other BibTeX style files exist tailored
+to the demands of various publications.
+The argument to \bibliography refers to the file bibfile.bib,
+which should contain your database in BibTeX format. Only the
+entries referred to via \cite and \nocite will be listed in
+the bibliography.
+############################################################
+ theorem ::theorem::
+############################################################
+
+ \begin{theorem}
+ theorem text
+ \end{theorem}
+
+The theorem environment produces "Theorem x" in boldface
+followed by your theorem text.
+############################################################
+ titlepage ::titlepage::
+############################################################
+
+ \begin{titlepage}
+ text
+ \end{titlepage}
+
+The titlepage environment creates a title page, i.e. a page
+with no printed page number or heading. It also causes the
+following page to be numbered page one.
+
+Formatting the title page is left to you. The \today command
+comes in handy for title pages.
+
+Note that you can use the \maketitle (see section \maketitle)
+command to produce a standard title page.
+############################################################
+ verbatim ::verbatim::
+############################################################
+
+ \begin{verbatim}
+ text
+ \end{verbatim}
+
+The verbatim environment is a paragraph-making environment
+that gets LaTeX to print exactly what you type in. It turns
+LaTeX into a typewriter with carriage returns and blanks
+having the same effect that they would on a typewriter.
+
+ \verb: The macro form of the verbatim environment.
+
+############################################################
+ \verb ::verb::
+############################################################
+\verb char literal_text char
+\verb*char literal_text char
+Typesets literal_text exactly as typed, including special
+characters and spaces, using a typewriter (\tt) type style.
+There may be no space between \verb or \verb* and char
+(space is shown here only for clarity). The *-form differs
+only in that spaces are printed as `\verb*| |'.
+############################################################
+ verse ::verse::
+############################################################
+ \begin{verse}
+ text
+ \end{verse}
+The verse environment is designed for poetry, though you may
+find other uses for it.
+The margins are indented on the left and the right. Separate
+the lines of each stanza with \\, and use one or more blank
+lines to separate the stanzas.
diff --git a/support/tcltexed/hlp/bre/Footnotes.txt b/support/tcltexed/hlp/bre/Footnotes.txt
new file mode 100644
index 0000000000..e4655dd0cd
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Footnotes.txt
@@ -0,0 +1,47 @@
+############################################################
+Footnotes
+############################################################
+
+Footnotes can be produced in one of two ways. They can be
+produced with one command, the \footnote command. They can
+also be produced with two commands, the \footnotemark and the
+\footnotetext commands. See the specific command for
+information on why you would use one over the other.
+
+ \footnote: Insert a footnote.
+ \footnotemark: Insert footnote mark only.
+ \footnotetext: Insert footnote text only.
+
+############################################################
+ \footnote ::footnote::
+############################################################
+\footnote[number]{text}
+The \footnote command places the numbered footnote text at
+the bottom of the current page. The optional argument, number,
+is used to change the default footnote number. This command
+can only be used in outer paragraph mode; i.e., you cannot
+use it in sectioning commands like \chapter, in figures,
+tables or in a tabular environment.
+############################################################
+ \footnotemark ::footnotemark::
+############################################################
+The \footnotemark command puts the footnote number in the
+text. This command can be used in inner paragraph mode. The
+text of the footnote is supplied by the \footnotetext command.
+This command can be used to produce several consecutive
+footnote markers referring to the same footnote by using
+
+ \footnotemark[\value{footnote}]
+
+after the first \footnote command.
+############################################################
+ \footnotetext ::footnotetext::
+############################################################
+\footnotetext[number]{text}
+The \footnotetext command produces the text to be placed at
+the bottom of the page. This command can come anywhere after
+the \footnotemark command. The \footnotetext command must
+appear in outer paragraph mode.
+
+The optional argument, number, is used to change the default
+footnote number.
diff --git a/support/tcltexed/hlp/bre/Input.txt b/support/tcltexed/hlp/bre/Input.txt
new file mode 100644
index 0000000000..e8da3c1cf9
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Input.txt
@@ -0,0 +1,53 @@
+############################################################
+Splitting the Input
+############################################################
+
+A large document requires a lot of input. Rather than
+putting the whole input in a single large file, it's more
+efficient to split it into several smaller ones.
+Regardless of how many separate files you use, there is one
+that is the root file; it is the one whose name you type when
+you run LaTeX.
+
+ \include: Conditionally include a file.
+ \includeonly: Determine which files are included.
+ \input: Unconditionally include a file.
+
+############################################################
+ \include ::include::
+############################################################
+\include{file}
+The \include command is used in conjunction with the
+\includeonly command for selective inclusion of files. The
+file argument is the first name of a file, denoting `file.tex'.
+If file is one the file names in the file list of the
+\includeonly command or if there is no \includeonly command,
+the \include command is equivalent to
+
+ \clearpage \input{file} \clearpage
+
+except that if the file `file.tex' does not exist, then a
+warning message rather than an error is produced. If the file
+is not in the file list, the \include command is equivalent
+to \clearpage.
+
+The \include command may not appear in the preamble or in a
+file read by another \include command.
+############################################################
+ \includeonly ::includeonly::
+############################################################
+\includeonly{file_list}
+The \includeonly command controls which files will be read
+in by an \include command. file_list should be a
+comma-separated list of filenames. Each filename must match
+exactly a filename specified in a \include command. This
+command can only appear in the preamble.
+############################################################
+ \input ::input::
+############################################################
+\input{file}
+The \input command causes the indicated file to be read and
+processed, exactly as if its contents had been inserted in
+the current file at that point. The file name may be a
+complete file name with extension or just a first name, in
+which case the file `file.tex' is used.
diff --git a/support/tcltexed/hlp/bre/Layout.txt b/support/tcltexed/hlp/bre/Layout.txt
new file mode 100644
index 0000000000..61559daa09
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Layout.txt
@@ -0,0 +1,36 @@
+############################################################
+Layout
+############################################################
+
+Miscellaneous commands for controlling the general layout
+of the page.
+
+ \flushbottom: Make all text pages the same height.
+ \onecolumn: Use one-column layout.
+ \raggedbottom: Allow text pages of differing height.
+ \twocolumn: Use two-column layout.
+
+############################################################
+ \flushbottom ::flushbottom::
+############################################################
+The \flushbottom declaration makes all text pages the same
+height, adding extra vertical space when necessary to fill
+out the page. This is the standard if twocolumn mode is
+selected.
+############################################################
+ \onecolumn ::onecolumn::
+############################################################
+The \onecolumn declaration starts a new page and produces
+single-column output.
+############################################################
+ \raggedbottom ::raggedbottom::
+############################################################
+The \raggedbottom declaration makes all pages the height of
+the text on that page. No extra vertical space is added.
+############################################################
+ \twocolumn ::twocolumn::
+############################################################
+\twocolumn[text]
+The \twocolumn declaration starts a new page and produces
+two-column output. If the optional text argument is present,
+it is typeset in one-column mode.
diff --git a/support/tcltexed/hlp/bre/Lengths.txt b/support/tcltexed/hlp/bre/Lengths.txt
new file mode 100644
index 0000000000..50c6f0d12d
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Lengths.txt
@@ -0,0 +1,74 @@
+
+############################################################
+Lengths
+############################################################
+
+A length is a measure of distance. Many LaTeX commands take
+a length as an argument.
+
+ \newlength: Define a new length.
+ \setlength: Set the value of a length.
+ \addtolength: Add a quantity to a length.
+ \settodepth: Set a length to the depth of something.
+ \settoheight: Set a length to the height of something.
+ \settowidth: Set a length to the width of something.
+ Predefined lengths: Lengths that are, like, predefined.
+
+############################################################
+ \newlength ::newlength::
+############################################################
+\newlength{\gnat}
+The \newlength command defines the mandatory argument, \gnat,
+as a length command with a value of 0in. An error occurs if a
+\gnat command already exists.
+############################################################
+ \setlength ::setlength::
+############################################################
+\setlength{\gnat}{length}
+The \setlength command is used to set the value of a length
+command. The length argument can be expressed in any terms
+of length LaTeX understands, i.e., inches (in),
+millimetres (mm), points (pt), etc.
+############################################################
+ \addtolength ::addtolength::
+############################################################
+\addtolength{\gnat}{length}
+The \addtolength command increments a "length command" by the
+amount specified in the length argument. It can be a negative
+amount.
+############################################################
+ \settodepth ::settodepth::
+############################################################
+\settodepth{\gnat}{text}
+The \settodepth command sets the value of a length command
+equal to the depth of the text argument.
+############################################################
+ \settoheight ::settoheight::
+############################################################
+\settoheight{\gnat}{text}
+The \settoheight command sets the value of a length command
+equal to the height of the text argument.
+############################################################
+ \settowidth ::settowidth::
+############################################################
+\settowidth{\gnat}{text}
+The \settowidth command sets the value of a length command
+equal to the width of the text argument.
+
+Predefined lengths
+
+ \width ::width::
+ \height ::height::
+ \depth ::depth::
+ \totalheight ::totalheight::
+
+These length parameters can be used in the arguments of the
+box-making commands
+
+See section Spaces & Boxes.
+
+They specify the natural width etc. of the text in the box.
+\totalheight equals \height + \depth. To make a box with the
+text stretched to double the natural size, e.g., say
+
+ \makebox[2\width]{Get a stretcher}
diff --git a/support/tcltexed/hlp/bre/Letters.txt b/support/tcltexed/hlp/bre/Letters.txt
new file mode 100644
index 0000000000..5163868d91
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Letters.txt
@@ -0,0 +1,133 @@
+############################################################
+Letters
+############################################################
+You can use LaTeX to typeset letters, both personal and
+business. The letter document class is designed to make a
+number of letters at once, although you can make just one if
+you so desire.
+
+Your `.tex' source file has the same minimum commands as the
+other document classes, i.e., you must have the following
+commands as a minimum:
+
+ \documentclass{letter}
+ \begin{document}
+ ... letters ...
+ \end{document}
+
+Each letter is a letter environment, whose argument is the
+name and address of the recipient. For example, you might
+have:
+
+ \begin{letter}{Mr. Joe Smith\\ 2345 Princess St.
+ \\ Edinburgh, EH1 1AA}
+ ...
+ \end{letter}
+
+The letter itself begins with the \opening command. The text
+of the letter follows. It is typed as ordinary LaTeX input.
+Commands that make no sense in a letter, like \chapter, do not
+work. The letter closes with a \closing command.
+After the closing, you can have additional material. The \cc
+command produces the usual "cc: ...". There's also a similar
+\encl command for a list of enclosures. With both these commands,
+use \\ to separate the items.
+
+These commands are used with the letter class:
+
+ \address: Your return address.
+ \cc: Cc list.
+ \closing: Saying goodbye.
+ \encl: List of enclosed material.
+ \location: Your organisation's address.
+ \makelabels: Making address labels.
+ \name: Your name, for the return address.
+ \opening: Saying hello.
+ \ps: Adding a postscript.
+ \signature: Your signature.
+ \startbreaks: Allow page breaks.
+ \stopbreaks: Disallow page breaks.
+ \telephone: Your phone number.
+
+############################################################
+ \address ::address::
+############################################################
+\address{Return address}
+The return address, as it should appear on the letter and the
+envelope. Separate lines of the address should be separated
+by \\ commands. If you do not make an \address declaration,
+then the letter will be formatted for copying onto your
+organisation's standard letterhead. (See section Overview of
+LaTeX and Local Guide, for details on your local implementation).
+If you give an \address declaration, then the letter will be
+formatted as a personal letter.
+############################################################
+ \cc ::cc::
+############################################################
+\cc{Kate Schechter\\Rob McKenna}
+Generate a list of other persons the letter was sent to. Each
+name is printed on a separate line.
+############################################################
+ \closing ::closing::
+############################################################
+\closing{text}
+The letter closes with a \closing command, i.e.,
+ \closing{Best Regards,}
+\encl
+\encl{CV\\Certificates}
+Generate a list of enclosed material.
+############################################################
+ \location ::location::
+############################################################
+\location{address}
+This modifies your organisation's standard address. This
+only appears if the firstpage pagestyle is selected.
+############################################################
+ \makelabels ::makelabels::
+############################################################
+\makelabels{number}
+If you issue this command in the preamble, LaTeX will create
+a sheet of address labels. This sheet will be output before
+the letters.
+############################################################
+ \name ::name::
+############################################################
+\name{June Davenport}
+Your name, used for printing on the envelope together with
+the return address.
+############################################################
+ \opening ::opening::
+############################################################
+\opening{text}
+The letter begins with the \opening command. The mandatory
+argument, text, is whatever text you wish to start your
+letter, i.e.,
+ \opening{Dear Joe,}
+############################################################
+ \ps ::ps::
+############################################################
+\ps
+Use this command before a postscript.
+############################################################
+ \signature ::sinature::
+############################################################
+\signature{Harvey Swick}
+Your name, as it should appear at the end of the letter
+underneath the space for your signature. Items that should
+go on separate lines should be separated by \\ commands.
+############################################################
+ \startbreaks ::startbreaks::
+############################################################
+\startbreaks
+Used after a \stopbreaks command to allow page breaks again.
+############################################################
+ \stopbreaks ::stopbreaks::
+############################################################
+\stopbreaks
+Inhibit page breaks until a \startbreaks command occurs.
+############################################################
+ \telephone ::telephone::
+############################################################
+\telephone{number}
+This is your telephone number. This only appears if the
+firstpage pagestyle is selected.
diff --git a/support/tcltexed/hlp/bre/Margin.txt b/support/tcltexed/hlp/bre/Margin.txt
new file mode 100644
index 0000000000..291c0e15a8
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Margin.txt
@@ -0,0 +1,20 @@
+############################################################
+Margin Notes ::marginpar::reversemarginpar::
+############################################################
+
+The command \marginpar[left]{right} creates a note in the
+margin. The first line will be at the same height as the line
+in the text where the \marginpar occurs.
+When you only specify the mandatory argument right, the text
+will be placed
+ 1. in the right margin for one-sided layout
+ 2. in the outside margin for two-sided layout
+ 3. in the nearest margin for two-column layout.
+ 4. By issuing the command \reversemarginpar, you can
+ force the marginal notes to go into the opposite
+ (inside) margin.
+When you specify both arguments, left is used for the left
+margin, and right is used for the right margin.
+The first word will normally not be hyphenated; you can
+enable hyphenation by prefixing the first word with a
+\hspace{0pt} command.
diff --git a/support/tcltexed/hlp/bre/Math.txt b/support/tcltexed/hlp/bre/Math.txt
new file mode 100644
index 0000000000..0b33dfb937
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Math.txt
@@ -0,0 +1,87 @@
+############################################################
+Math Formulae ::(::)::[::]::$::
+############################################################
+
+There are three environments that put LaTeX in math mode:
+ math For Formulae that appear right in the text.
+ displaymath For Formulae that appear on their own line.
+ equation The same as the displaymath environment
+ except that it adds an equation number in
+ the right margin.
+The math environment can be used in both paragraph and LR mode,
+but the displaymath and equation environments can be used only
+in paragraph mode. The math and displaymath environments are
+used so often that they have the following short forms:
+
+ \(...\) instead of \begin{math}...\end{math}
+
+ \[...\] instead of \begin{displaymath}...\end{displaymath}
+
+In fact, the math environment is so common that it has an even
+shorter form:
+
+ $ ... $ instead of \(...\)
+
+ Subscripts & Superscripts: Also known as exponent or index.
+ Math Symbols: Various mathematical squiggles.
+ Spacing in Math Mode: Thick, medium, thin and negative spaces.
+ Math Miscellany: Stuff that doesn't fit anywhere else.
+
+############################################################
+ Subscripts & Superscripts ::_::^::
+############################################################
+To get an expression exp to appear as a subscript, you just
+type _{exp}. To get exp to appear as a superscript, you type
+^{exp}. LaTeX handles superscripted superscripts and all of
+that stuff in the natural way. It even does the right
+thing when something has both a subscript and a superscript.
+############################################################
+ Math Symbols
+############################################################
+LaTeX provides almost any mathematical symbol you're likely
+to need. The commands for generating them can be used only in
+math mode. For example, if you include $\pi$ in your source,
+you will get the symbol in your output.
+############################################################
+ Spacing in Math Mode
+############################################################
+In a math environment, LaTeX ignores the spaces you type and
+puts in the spacing that it thinks is best. LaTeX formats
+mathematics the way it's done in mathematics texts. If you
+want different spacing, LaTeX provides the following four
+commands for use in math mode:
+
+ \; - a thick space ::;::
+ \: - a medium space :::::
+ \, - a thin space ::,::
+ \! - a negative thin space ::!::
+
+############################################################
+ Math Miscellany
+############################################################
+ \cdots ::cdots::
+Produces a horizontal ellipsis where the dots are raised to
+the centre of the line. eg.
+ \ddots ::ddots::
+Produces a diagonal ellipsis. eg.
+ \frac{num}{den} ::frac::
+Produces the fraction num divided by den. eg.
+ \ldots ::ldots::
+Produces an ellipsis. This command works in any mode, not
+just math mode. eg.
+ \overbrace{text} ::overbrace::
+Generates a brace over text. eg.
+ \overline{text} ::overline::
+Causes the argument text to be overlined. eg.
+ \sqrt[root]{arg} ::sqrt::
+Produces the square root of its argument. The optional argument,
+root, determines what root to produce, i.e., the cube root
+of x+y would be typed
+as $\sqrt[3]{x+y}$. eg.
+ \underbrace{text} ::underbrace::
+Generates text with a brace underneath. eg.
+ \underline{text} ::underline::
+Causes the argument text to be underlined. This command can
+also be used in paragraph and LR modes. eg.
+ \vdots ::vdots::
+Produces a vertical ellipsis. eg.
diff --git a/support/tcltexed/hlp/bre/Modes.txt b/support/tcltexed/hlp/bre/Modes.txt
new file mode 100644
index 0000000000..fd8358fedf
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Modes.txt
@@ -0,0 +1,39 @@
+############################################################
+Modes
+############################################################
+When LaTeX is processing your input text, it is always in one
+of three modes:
+
+ Paragraph mode
+ Math mode
+ Left-to-right mode, called LR mode for short
+
+LaTeX changes mode only when it goes up or down a staircase
+to a different level, though not all level changes produce
+mode changes. Mode changes occur only when entering or
+leaving an environment, or when LaTeX is processing the
+argument of certain text-producing commands.
+
+"Paragraph mode" is the most common; it's the one LaTeX is
+in when processing ordinary text. In that mode, LaTeX breaks
+your text into lines and breaks the lines into pages. LaTeX
+is in "math mode" when it's generating a mathematical formula.
+In "LR mode", as in paragraph mode, LaTeX considers the output
+that it produces to be a string of words with spaces between
+them. However, unlike paragraph mode, LaTeX keeps going from
+left to right; it never starts a new line in LR mode. Even if
+you put a hundred words into an \mbox, LaTeX would keep
+typesetting them from left to right inside a single box, and
+then complain because the resulting box was too wide to fit
+on the line.
+
+LaTeX is in LR mode when it starts making a box with an \mbox
+command. You can get it to enter a different mode inside the
+box - for example, you can make it enter math mode to put a
+formula in the box. There are also several text-producing
+commands and environments for making a box that put LaTeX in
+paragraph mode. The box make by one of these commands or
+environments will be called a parbox. When LaTeX is in paragraph
+mode while making a box, it is said to be in "inner paragraph
+mode". Its normal paragraph mode, which it starts out in, is
+called "outer paragraph mode".
diff --git a/support/tcltexed/hlp/bre/Overview.txt b/support/tcltexed/hlp/bre/Overview.txt
new file mode 100644
index 0000000000..3b0bea43b6
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Overview.txt
@@ -0,0 +1,68 @@
+############################################################
+Overview of LaTeX and Local Guide
+############################################################
+
+The LaTeX command typesets a file of text using the TeX program
+and the LaTeX Macro package for TeX. To be more specific, it
+processes an input file containing the text of a document with
+interspersed commands that describe how the text should be
+formatted. It produces at least three files as output:
+
+ 1. A "Device Independent", or `.dvi' file. This contains
+commands that can be translated into commands for a variety
+of output devices. You can view the output of LaTeX by using
+a program such as xdvi, which actually uses the `.dvi' file.
+ 2. A "transcript" or `.log' file that contains summary
+information and diagnostic messages for any errors discovered
+in the input file.
+ 3. An "auxiliary" or `.aux' file. This is used by LaTeX
+itself, for things such as sectioning.
+
+For a description of what goes on inside TeX, you should
+consult The TeXbook by Donald E. Knuth, ISBN 0-201-13448-9,
+published jointly by the American Mathematical Society
+and Addison-Wesley Publishing Company.
+
+For a description of LaTeX, you should consult:
+ LaTeX: A Document Preparation System, by Leslie Lamport,
+Addison-Wesley Publishing Company, 2nd edition, 1994.
+ The LaTeX Companion, by Michel Goossens, Frank Mittelbach,
+and Alexander Samarin, Addison-Wesley, 1994.
+
+############################################################
+Commands
+############################################################
+
+A LaTeX command begins with the command name, which consists
+of a \ followed by either (a) a string of letters or
+(b) a single non-letter. Arguments contained in square brackets,
+[], are optional while arguments contained in braces, {},
+are required.
+
+NOTE: LaTeX is case sensitive. Enter all commands in lower
+case unless explicitly directed to do otherwise.
+
+ Counters: Internal counters used by LaTeX.
+ Cross References: Automatic referencing.
+ Definitions: Define your own commands etc.
+ Document Classes: Some of the various classes available.
+ Environments: Such as enumerate & itemize.
+ Footnotes: How to produce footnotes.
+ Layout: Controlling the page layout.
+ Lengths: The length commands.
+ Letters: The letter class.
+ Line & Page Breaking: How to insert pagebreaks etc.
+ Making Paragraphs: Paragraph commands.
+ Margin Notes: Putting remarks in the margin.
+ Math Formulae: How to create mathematical formulae.
+ Modes: Paragraph, Math or LR modes.
+ Page Styles: Various styles of page layout.
+ Sectioning: How to section properly.
+ Spaces & Boxes: All the associated commands.
+ Special Characters: Special reserved characters.
+ Splitting the Input: Dealing with big files by splitting.
+ Starting & Ending: The formal start & end layouts.
+ Table of Contents: How to create a table of contents.
+ Terminal Input/Output: User interaction.
+ Typefaces: Such as bold, italics etc.
+
diff --git a/support/tcltexed/hlp/bre/Paragraphs.txt b/support/tcltexed/hlp/bre/Paragraphs.txt
new file mode 100644
index 0000000000..b127d75429
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Paragraphs.txt
@@ -0,0 +1,32 @@
+############################################################
+Making Paragraphs
+############################################################
+
+A paragraph is ended by one or more completely blank lines
+-- lines not containing even a %. A blank line should not
+appear where a new paragraph cannot be started, such as in
+math mode or in the argument of a sectioning command.
+
+ \indent: Indent this paragraph.
+ \noindent: Do not indent this paragraph.
+ \par: Another way of writing a blank line.
+
+############################################################
+ \indent ::indent:
+############################################################
+\indent
+This produces a horizontal space whose width equals the width
+of the paragraph indentation. It is used to add paragraph
+indentation where it would otherwise be suppressed.
+############################################################
+ \noindent ::noindent::
+############################################################
+\noindent
+When used at the beginning of the paragraph, it suppresses
+the paragraph indentation. It has no effect when used in the
+middle of a paragraph.
+############################################################
+ \par ::par::
+############################################################
+Equivalent to a blank line; often used to make command or
+environment definitions easier to read.
diff --git a/support/tcltexed/hlp/bre/Parameters.txt b/support/tcltexed/hlp/bre/Parameters.txt
new file mode 100644
index 0000000000..ee764281a4
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Parameters.txt
@@ -0,0 +1,484 @@
+############################################################
+Parameters
+############################################################
+
+The input file specification indicates the file to be
+formatted; TeX uses `.tex' as a default file extension. If
+you omit the input file entirely, TeX accepts input from the
+terminal. You specify command options by supplying a string
+as a parameter to the command; e.g.
+
+ latex "\scrollmode\input foo.tex"
+
+will process `foo.tex' without pausing after every error.
+Output files are always created in the current directory.
+When you fail to specify an input file name, TeX bases the
+output names on the file specification associated with the
+logical name TEX_OUTPUT, typically texput.log.
+############################################################
+Concept Index
+a
+Accessing any character of a font
+Aligning Equations
+Appendix, creating
+Arrays, math
+article class
+Author, for titlepage
+b
+Bibliography, creating (automatically)
+Bibliography, creating (manually)
+BibTeX, using
+book class
+Boxes
+c
+Cc list
+Centering text
+Centering text, environment for
+Characters, reserved
+Characters, special
+Classes of document
+Commands, defining new ones
+Computer programs, typesetting
+Counters, a list of
+Counters, creating
+Counters, getting the value of
+Counters, setting
+Creating letters
+Creating pictures
+Creating tables
+Cross referencing
+Cross referencing using page number
+Cross referencing using section number
+d
+Date, for titlepage
+Defining a new command
+Defining new environments
+Defining new fonts
+Defining new theorems
+Displaying quoted text
+Displaying quoted text with paragraph indentation
+Document Classes
+e
+Enclosed material
+Ending & Starting
+Enlarge current page
+Environments
+Environments, defining
+Equations, aligning
+Equations, environment for
+exponent
+f
+Figures, footnotes in
+Flushing a page
+Font commands, low-level
+Font Sizes
+Font Styles
+Fonts
+Fonts, new commands for
+Footnotes in figures
+Footnotes, creating
+Formatting Text
+Formulae, environment for
+Formulae, maths
+g
+Global options
+Greek letters
+h
+Hyphenation, defining
+Hyphenation, forcing
+i
+Indent, forcing
+Indent, suppressing
+Input file, splitting
+Input/Output
+Inserting figures
+j
+Justification, ragged left
+Justification, ragged right
+l
+Labelled lists, creating
+LaTeX overview
+Layout commands
+Left-justifying text
+Left-justifying text, environment for
+Left-to-right mode
+Lengths, adding to
+Lengths, defining a new
+Lengths, defining and using
+Lengths, predefined
+Lengths, setting value of
+letter class
+Letters
+Letters, ending
+Letters, starting
+Line Breaking
+Line breaks
+Lines in tables
+Lining text up in columns using tab stops
+Lining text up in tables
+Lists of items
+Lists of items, generic
+Lists of items, numbered
+Loading additional packages
+Low-level font commands
+LR mode
+m
+Making a title page
+Making paragraphs
+Margin Notes
+Math Formulae
+Math mode
+Math mode, entering
+Math mode, spacing
+Maths Miscellany
+Maths symbols
+Minipage, creating a
+Modes
+Multicolumn text
+n
+New line, starting
+New line, starting (paragraph mode)
+New Page
+Notes in the margin
+o
+Options, global
+Overview of LaTeX
+p
+Packages, loading
+Page break, forcing
+Page Breaking
+Page Formatting
+Page numbering
+Page styles
+Paragraph mode
+Paragraph, starting a new
+Paragraphs
+Pictures, creating
+Poetry, an environment for
+Predefined lengths
+Programs, typesetting
+q
+Quoted text with paragraph indentation, displaying
+Quoted text, displaying
+r
+Ragged left text
+Ragged left text, environment for
+Ragged right text
+Ragged right text, environment for
+Remarks in the margin
+report class
+Reserved Characters
+Right-justifying text
+Right-justifying text, environment for
+s
+Sectioning
+Simulating typed text
+Sizes of text
+Space, inserting vertical
+Spaces
+Spacing, within Math mode
+Special Characters
+Splitting the input file
+Starting & Ending
+Starting on a right-hand page
+Styles of text
+Styles, page
+Subscript
+Superscript
+Symbols
+t
+Tab stops, using
+Table of Contents, creating
+Tables, creating
+Terminal Input/Output
+Thanks, for titlepage
+Theorems, defining
+Theorems, typesetting
+Title making
+Title pages, creating
+Title, for titlepage
+Typed text, simulating
+Typeface Sizes
+Typeface Styles
+Typefaces
+u
+Using BibTeX
+v
+Variables, a list of
+Verbatim text
+Vertical space, inserting
+Command Index
+$
+$
+\
+\!
+\' (tabbing)
+\(
+\)
+\+
+\,
+\- (hyphenation)
+\- (tabbing)
+\;
+\<
+\=
+\>
+\[
+\\
+\]
+\` (tabbing)
+\a
+\addcontentsline
+\address
+\addtocontents
+\addtocounter
+\addtolength
+\addvspace
+\alph
+\Alph
+\appendix
+\arabic
+\author
+\backslash
+\begin
+\bfseries
+\bibitem
+\bibliography
+\bibliographystyle
+\bigskip
+\caption
+\cc
+\cdots
+\centering
+\chapter
+\circle
+\cite
+\cleardoublepage
+\clearpage
+\cline
+\closing
+\COLON
+\dashbox
+\date
+\ddots
+\depth
+\documentclass
+\dotfill
+\emph
+\encl
+\end
+\enlargethispage
+\fbox
+\flushbottom
+\fnsymbol
+\fontencoding
+\fontfamily
+\fontseries
+\fontshape
+\fontsize
+\footnote
+\footnotemark
+\footnotesize
+\footnotetext
+\frac
+\frame
+\framebox, \framebox
+\fussy
+\height
+\hfill
+\hline
+\hrulefill
+\hspace
+\Huge
+\huge
+\hyphenation
+\include
+\includeonly
+\indent
+\input
+\item
+\itshape
+\kill
+\label
+\large
+\LARGE
+\Large
+\ldots
+\lefteqn
+\line
+\linebreak
+\linethickness
+\listoffigures
+\listoftables
+\location
+\makebox
+\makebox (picture)
+\makelabels
+\maketitle
+\markboth
+\markright
+\mathbf
+\mathcal
+\mathit
+\mathnormal
+\mathrm
+\mathsf
+\mathtt
+\mathversion
+\mbox
+\mdseries
+\medskip
+\multicolumn
+\multiput
+\name
+\newcommand
+\newcounter
+\newenvironment
+\newfont
+\newlength
+\newline
+\newpage
+\newsavebox
+\newtheorem
+\nocite
+\nofiles
+\noindent
+\nolinebreak
+\nopagebreak
+\normalfont
+\normalsize
+\onecolumn
+\opening
+\oval
+\overbrace
+\overline
+\pagebreak
+\pagenumbering
+\pageref
+\pagestyle
+\par
+\paragraph
+\parbox
+\ps
+\pushtabs, \pushtabs
+\put
+\raggedbottom
+\raggedleft
+\raggedright
+\raisebox
+\ref
+\refstepcounter
+\rmfamily
+\roman
+\Roman
+\rule
+\savebox
+\sbox
+\scriptsize
+\scshape
+\selectfont
+\setcounter
+\setlength
+\settodepth
+\settoheight
+\settowidth
+\sffamily
+\shortstack
+\signature
+\sloppy
+\slshape
+\small
+\smallskip
+\sqrt
+\startbreaks
+\stepcounter
+\stopbreaks
+\subparagraph
+\subsection
+\subsubsection
+\symbol
+\tableofcontents
+\telephone
+\textbf
+\textit
+\textmd
+\textnormal
+\textrm
+\textsc
+\textsf
+\textsl
+\texttt
+\textup
+\thanks
+\thispagestyle
+\tiny
+\title
+\today
+\totalheight
+\ttfamily
+\twocolumn
+\typein
+\typeout
+\underbrace
+\underline
+\upshape
+\usebox
+\usecounter
+\usefont
+\usepackage
+\value
+\vdots
+\vector
+\verb
+\vfill
+\vline
+\vspace
+\width
+^
+^
+_
+_
+a
+array
+c
+center
+d
+description
+e
+enumerate
+eqnarray
+equation
+f
+figure
+flushleft
+flushright
+i
+itemize
+l
+letter
+list
+lrbox
+m
+minipage
+p
+picture
+q
+quotation
+quote
+t
+tabbing
+table
+tabular
+thebibliography
+theorem
+titlepage
+v
+verbatim
+verse
+
+
+
+This document was generated on 8 July 1996 using the texi2html translator
+version 1.50.
+
+
diff --git a/support/tcltexed/hlp/bre/RCS/Breaking.txt,v b/support/tcltexed/hlp/bre/RCS/Breaking.txt,v
new file mode 100644
index 0000000000..d9df0a2519
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Breaking.txt,v
@@ -0,0 +1,169 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Line & Page Breaking
+############################################################
+
+The first thing LaTeX does when processing ordinary text is
+to translate your input file into a string of glyphs and
+spaces. To produce a printed document, this string must be
+broken into lines, and these lines must be broken into pages.
+In some environments, you do the line breaking yourself with
+the \\ command, but LaTeX usually does it for you.
+
+ \\: Start a new line.
+ \- (hyphenation): Insert explicit hyphenation.
+ \cleardoublepage: Start a new right-hand page.
+ \clearpage: Start a new page.
+ \enlargethispage: Enlarge the current page a bit.
+ \fussy: Be fussy about line breaking.
+ \hyphenation: Tell LaTeX how to hyphenate a word.
+ \linebreak: Break the line.
+ \newline: Break the line prematurely.
+ \newpage: Start a new page.
+ \nolinebreak: Don't break the current line.
+ \nopagebreak: Don't make a page break here.
+ \pagebreak: Please make a page break here.
+ \sloppy: Be sloppy about line breaking.
+
+############################################################
+ \\ ::\::
+############################################################
+\\[*][extra-space]
+The \\ command tells LaTeX to start a new line. It has an
+optional argument, extra-space, that specifies how much extra
+vertical space is to be inserted before the next line. This
+can be a negative amount.
+The \\* command is the same as the ordinary \\ command except
+that it tells LaTeX not to start a new page after the line.
+############################################################
+ \- ::-::
+############################################################
+The \- command tells LaTeX that it may hyphenate the word at
+that point. LaTeX is very good at hyphenating, and it will
+usually find all correct hyphenation points. The \- command
+is used for the exceptional cases.
+
+Note that when you insert \- commands in a word, the word
+will only be hyphenated at those points and not at any of the
+hyphenation points that LaTeX might otherwise have chosen.
+############################################################
+ \cleardoublepage ::cleardoublepage::
+############################################################
+The \cleardoublepage command ends the current page and causes
+all figures and tables that have so far appeared in the input
+to be printed. In a two-sided printing style, it also makes
+the next page a right-hand (odd-numbered) page, producing a
+blank page if necessary.
+############################################################
+ \clearpage ::clearpage::
+############################################################
+The \clearpage command ends the current page and causes all
+figures and tables that have so far appeared in the input to
+be printed.
+############################################################
+ \enlargethispage ::enlargethispage::
+############################################################
+\enlargethispage{size}
+\enlargethispage*{size}
+Enlarge the \textheight for the current page by the specified
+amount; e.g.
+\enlargethispage{\baselineskip} will allow one additional line.
+The starred form tries to squeeze the material together on
+the page as much as possible. This is normally used together
+with an explicit \pagebreak.
+############################################################
+ \fussy ::fussy::
+############################################################
+\fussy
+This declaration (which is the default) makes TeX more fussy
+about line breaking. This can avoids too much space between
+words, but may produce overfull boxes.
+This command cancels the effect of a previous \sloppy command.
+section \sloppy
+############################################################
+ \hyphenation ::hypentation::
+############################################################
+\hyphenation{words}
+The \hyphenation command declares allowed hyphenation points,
+where words is a list of words, separated by spaces, in which
+each hyphenation point is indicated by a - character.
+############################################################
+ \linebreak ::linebreak::
+############################################################
+\linebreak[number]
+The \linebreak command tells LaTeX to break the current line
+at the point of the command. With the optional argument,
+number, you can convert the \linebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+The \linebreak command causes LaTeX to stretch the line so it
+extends to the right margin.
+############################################################
+ \newline ::newline::
+############################################################
+The \newline command breaks the line right where it is. It
+can only be used in paragraph mode.
+############################################################
+ \newpage ::newpage::
+############################################################
+The \newpage command ends the current page.
+############################################################
+ \nolinebreak ::nolinebreak::
+############################################################
+\nolinebreak[number]
+The \nolinebreak command prevents LaTeX from breaking the
+current line at the point of the command. With the optional
+argument, number, you can convert the \nolinebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \nopagebreak ::nopagebreak::
+############################################################
+\nopagebreak[number]
+The \nopagebreak command prevents LaTeX from breaking the
+current page at the point of the command. With the optional
+argument, number, you can convert the \nopagebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \pagebreak ::pagebreak::
+############################################################
+\pagebreak[number]
+The \pagebreak command tells LaTeX to break the current page
+at the point of the command. With the optional argument,
+number, you can convert the \pagebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+############################################################
+ \sloppy ::sloppy::
+############################################################
+\sloppy
+This declaration makes TeX less fussy about line breaking.
+This can prevent overfull boxes, but may leave too much space
+between words. Lasts until a \fussy command is issued.
+section \fussy.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Characters.txt,v b/support/tcltexed/hlp/bre/RCS/Characters.txt,v
new file mode 100644
index 0000000000..9747024003
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Characters.txt,v
@@ -0,0 +1,55 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Special Characters ::#::%::symbol::
+############################################################
+
+The following characters play a special role in LaTeX and are
+called "special printing characters", or simply
+"special characters".
+
+ # $ % & ~ _ ^ \ { }
+
+Whenever you put one of these special characters into your
+file, you are doing something special. If you simply want
+the character to be printed just as any other letter, include
+a \ in front of the character. For example, \$ will produce
+$ in your output.
+
+One exception to this rule is the \ itself because \\ has its
+own special meaning. A \ is produced by typing $\backslash$
+in your file.
+Also, \~ means `place a tilde accent over the following letter',
+so you will probably want to use \verb instead.
+
+In addition, you can access any character of a font once you
+know its number by using the \symbol command. For example,
+the character used for displaying spaces in the \verb*
+command has the code decimal 32, so it can be typed as
+\symbol{32}.
+
+You can also specify octal numbers with ' or hexadecimal
+numbers with ", so the previous example could also be written
+ as \symbol{'40} or \symbol{"20}.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Contents.txt,v b/support/tcltexed/hlp/bre/RCS/Contents.txt,v
new file mode 100644
index 0000000000..6aed95d968
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Contents.txt,v
@@ -0,0 +1,77 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Table of Contents
+############################################################
+::tableofcontents::listoffigures::listoftables::
+A table of contents is produced with the \tableofcontents
+command. You put the command right where you want the table
+of contents to go; LaTeX does the rest for you. It produces
+a heading, but it does not automatically start a new page.
+If you want a new page after the table of contents, include
+a \newpage command after the \tableofcontents command.
+
+There are similar commands \listoffigures and \listoftables
+for producing a list of figures and a list of tables,
+respectively. Everything works exactly the same as for the
+table of contents.
+
+NOTE: If you want any of these items to be generated, you
+cannot have the \nofiles command in your document.
+
+ \addcontentsline: Add an entry to table of
+ contents etc.
+ \addtocontents: Add text directly to table of
+ contents file etc.
+
+############################################################
+ \addcontentsline ::addcontentsline::
+############################################################
+\addcontentsline{file}{sec_unit}{entry}
+The \addcontentsline command adds an entry to the specified
+list or table where:
+
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ sec_unit controls the formatting of the entry. It
+ should be one of the following, depending upon
+ the value of the file argument:
+ toc -- the name of the sectional unit, such
+ as part or subsection.
+ lof -- figure
+ lot -- table
+ entry is the text of the entry.
+############################################################
+ \addtocontents ::addtocontents::
+############################################################
+\addtocontents{file}{text}
+The \addtocontents command adds text (or formatting commands)
+directly to the file that generates the table of contents or
+list of figures or tables.
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ text is the information to be written.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Counters.txt,v b/support/tcltexed/hlp/bre/RCS/Counters.txt,v
new file mode 100644
index 0000000000..67a9b180d6
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Counters.txt,v
@@ -0,0 +1,137 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Counters
+############################################################
+
+Everything LaTeX numbers for you has a counter associated
+with it. The name of the counter is the same as the name
+of the environment or command that produces the number,
+except with no \. (enumi - enumiv are used for the nested
+enumerate environment.) Below is a list of the counters
+used in LaTeX's standard document classes to control
+numbering.
+
+ part paragraph figure enumi
+ chapter subparagraph table enumii
+ section page footnote enumiii
+ subsection equation mpfootnote enumiv
+ subsubsection
+
+ \addtocounter: Add a quantity to a counter.
+ \alph: Print value of a counter using letters.
+ \arabic: Print value of a counter using numerals.
+ \fnsymbol: Print value of a counter using symbols.
+ \newcounter: Define a new counter.
+ \refstepcounter: Add to counter, resetting subsidiary counters.
+ \roman: Print value of a counter using roman numerals.
+ \setcounter: Set the value of a counter.
+ \stepcounter: Add to counter, resetting subsidiary counters.
+ \usecounter: Use a specified counter in a list environment.
+ \value: Use the value of a counter in an expression.
+
+############################################################
+ \addtocounter ::addtocounter::
+############################################################
+\addtocounter{counter}{value}
+The \addtocounter command increments the counter by the
+amount specified by the value argument. The value argument
+can be negative.
+############################################################
+ \alph ::alph::
+############################################################
+\alph{counter}
+This command causes the value of the counter to be printed
+in alphabetic characters. The \alph command uses lower case
+alphabetic alphabetic characters, i.e., a, b, c... while the
+\Alph command uses upper case alphabetic characters,
+i.e., A, B, C....
+############################################################
+ \arabic ::arabic::
+############################################################
+\arabic{counter}
+The \arabic command causes the value of the counter to be
+printed in Arabic numbers, i.e., 3.
+############################################################
+ \fnsymbol ::fnsymbol::
+############################################################
+\fnsymbol{counter}
+The \fnsymbol command causes the value of the counter to be
+printed in a specific sequence of nine symbols that can be
+used for numbering footnotes. eg. From 1-9:
+NB. counter must have a value between 1 and 9 inclusive.
+############################################################
+ \newcounter ::newcounter::
+############################################################
+\newcounter{foo}[counter]
+The \newcounter command defines a new counter named foo. The
+counter is initialized to zero.
+The optional argument [counter] causes the counter foo to be
+reset whenever the counter named in the optional argument is
+incremented.
+############################################################
+ \refstepcounter ::refstepcounter::
+############################################################
+\refstepcounter{counter}
+The \refstepcounter command works like \stepcounter See
+section \stepcounter, except it also defines the current
+\ref value to be the result of \thecounter.
+############################################################
+ \roman ::roman
+############################################################
+\roman{counter}
+This command causes the value of the counter to be printed
+in Roman numerals. The \roman command uses lower case Roman
+numerals, i.e., i, ii, iii..., while the \Roman command uses
+upper case Roman numerals, i.e., I, II, III....
+############################################################
+ \stepcounter ::stepcounter::
+############################################################
+\stepcounter{counter}
+The \stepcounter command adds one to the counter and resets
+all subsidiary counters.
+############################################################
+ \setcounter ::setcounter::
+############################################################
+\setcounter{counter}{value}
+The \setcounter command sets the value of the counter to that
+specified by the value argument.
+############################################################
+ \usecounter ::usecounter::
+############################################################
+\usecounter{counter}
+The \usecounter command is used in the second argument of the
+list environment to allow the counter specified to be used to
+number the list items.
+############################################################
+ \value ::value::
+############################################################
+\value{counter}
+The \value command produces the value of the counter named
+in the mandatory argument. It can be used where LaTeX expects
+an integer or number, such as the second argument of a
+\setcounter or \addtocounter command, or in:
+ \hspace{\value{foo}\parindent}
+It is useful for doing arithmetic with counters.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Definitions.txt,v b/support/tcltexed/hlp/bre/RCS/Definitions.txt,v
new file mode 100644
index 0000000000..b9755f280a
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Definitions.txt,v
@@ -0,0 +1,106 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Definitions
+############################################################
+
+\newcommand: Define a new command.
+\newenvironment: Define a new environment.
+\newtheorem: Define a new theorem-like environment.
+\newfont: Define a new font name.
+
+############################################################
+ \newcommand ::newcommand::renewcommand::
+############################################################
+ \newcommand{cmd}[args]{definition}
+ \newcommand{cmd}[args][default]{definition}
+ \renewcommand{cmd}[args]{definition}
+ \renewcommand{cmd}[args][default]{definition}
+These commands define (or redefine) a command.
+ cmd A command name beginning with a \. For
+ \newcommand it must not be already defined and
+ must not begin with \end; for \renewcommand it
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the command being defined. The
+ default is for the command to have no arguments.
+ def If this optional parameter is present, it means
+ that the command's first argument is optional.
+ The default value of the optional argument is def.
+ definition The text to be substituted for every
+ occurrence of cmd; a parameter of the form #n in
+ cmd is replaced by the text of the nth argument
+ when this substitution takes place.
+############################################################
+ \newenvironment ::newenvironment::renewenvironment::
+############################################################
+ \newenvironment{nam}[args]{begdef}{enddef}
+ \newenvironment{nam}[args][default]{begdef}{enddef}
+ \renewenvironment{nam}[args]{begdef}{enddef}
+These commands define or redefine an environment.
+ nam The name of the environment. For \newenvironment
+ there must be no currently defined environment
+ by that name, and the command \nam must be
+ undefined. For \renewenvironment the environment
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the newly-defined environment.
+ The default is no arguments.
+ default If this is specified, the first argument
+ is optional, and default gives the default value
+ for that argument.
+ begdef The text substituted for every occurrence of
+ \begin{nam}; a parameter of the form #n in cmd
+ is replaced by the text of the nth argument when
+ this substitution takes place.
+ enddef The text substituted for every occurrence of
+ \end{nam}. It may not contain any argument
+ parameters.
+############################################################
+ \newtheorem ::newtheorem::
+############################################################
+ \newtheorem{env_name}{caption}[within]
+ \newtheorem{env_name}[numbered_like]{caption}
+This command defines a theorem-like environment.
+ env_name The name of the environment to be defined.
+ A string of letters. It must not be the
+ name of an existing environment or counter.
+ caption The text printed at the beginning of the
+ environment, right before the number.
+ This may simply say "Theorem", for example.
+ within The name of an already defined counter,
+ usually of a sectional unit. Provides a
+ means of resetting the new theorem counter
+ within the sectional unit.
+ numbered_like The name of an already defined theorem-like
+ environment.
+The \newtheorem command may have at most one optional argument.
+############################################################
+ \newfont ::newfont::
+############################################################
+\newfont{cmd}{font_name}
+Defines the command name cmd, which must not be currently
+defined, to be a declaration that selects the font named
+font_name to be the current font.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Document.txt,v b/support/tcltexed/hlp/bre/RCS/Document.txt,v
new file mode 100644
index 0000000000..a90954c521
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Document.txt,v
@@ -0,0 +1,80 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Document Classes
+############################################################
+
+Valid LaTeX document classes include:
+ article
+ report
+ letter
+ book
+ slides
+Other document classes are often available. See section
+Overview of LaTeX and Local Guide, for details. They are
+selected with the following command:
+
+ \documentclass [options] {class} ::documentclass::
+
+All the standard classes (except slides) accept the following
+options for
+selecting the typeface size (10 pt is default):
+ 10pt, 11pt, 12pt
+All classes accept these options for selecting the paper size
+(default is letter):
+ a4paper, a5paper, b5paper, letterpaper,
+ legalpaper, executivepaper
+Miscellaneous options:
+ landscape -- selects landscape format. Default is portrait.
+ titlepage, notitlepage -- selects if there should be a
+ separate title page.
+ leqno -- equation number on left side of equations. Default
+ is right side.
+ fleqn -- displayed formulas flush left. Default is centred.
+ openbib -- use "open" bibliography format.
+ draft, final -- mark/do not mark overfull boxes with a rule.
+ Default is final.
+These options are not available with the slides class:
+ oneside, twoside -- selects one- or twosided layout.
+ Default is oneside, except for the book class.
+ openright, openany -- determines if a chapter should
+ start on a right-hand page. Default is
+ openright for book.
+ onecolumn, twocolumn -- one or two columns. Defaults
+ to one column.
+The slides class offers the option clock for printing the
+time at the bottom of each note.
+
+If you specify more than one option, they must be separated
+by a comma. Additional packages are loaded by a
+
+ \usepackage[options]{pkg} ::usepackage::
+
+command. If you specify more than one package, they must be
+separated by a comma.
+
+Any options given in the \documentclass command that are
+unknown by the selected document class are passed on to
+the packages loaded with \usepackage.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Environments.txt,v b/support/tcltexed/hlp/bre/RCS/Environments.txt,v
new file mode 100644
index 0000000000..3068d8e7fa
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Environments.txt,v
@@ -0,0 +1,967 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Environments ::begin::end::
+############################################################
+
+LaTeX provides a number of different paragraph-making
+environments. Each environment begins and ends in the same
+manner.
+
+ \begin{environment-name}
+ .
+ .
+ .
+ \end{environment-name}
+
+ array: Math arrays.
+ center: Centred lines.
+ description: Labelled lists.
+ enumerate: Numbered lists.
+ eqnarray: Sequences of aligned equations.
+ equation: Displayed equation.
+ figure: Floating figures.
+ flushleft: Flushed left lines.
+ flushright: Flushed right lines.
+ itemize: Bulleted lists.
+ letter: Letters.
+ list: Generic list environment.
+ minipage: Miniature page.
+ picture: Picture with text, arrows, lines and
+ circles.
+ quotation: Indented environment with paragraph
+ indentation.
+ quote: Indented environment with no paragraph
+ indentation.
+ tabbing: Align text arbitrarily.
+ table: Floating tables.
+ tabular: Align text in columns.
+ thebibliography: Bibliography or reference list.
+ theorem: Theorems, lemmas, etc.
+ titlepage: For hand crafted title pages.
+ verbatim: Simulating typed input.
+ verse: For poetry and other things.
+
+############################################################
+ array ::array::
+############################################################
+
+\begin{array}{col1col2...coln}
+column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+\end{array}
+
+Math arrays are produced with the array environment. It has
+a single mandatory argument describing the number of columns
+and the alignment within them. Each column, coln, is specified
+by a single letter that tells how items in that row should
+be formatted.
+
+ c -- for centred
+ l -- for flush left
+ r -- for flush right
+
+Column entries must be separated by an &. Column entries may
+include other LaTeX commands. Each row of the array must be
+terminated with the string \\.
+
+Note that the array environment can only be used in math mode,
+so normally it is used inside an equation environment.
+############################################################
+ center ::center::
+############################################################
+
+ \begin{center}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{center}
+
+The center environment allows you to create a paragraph
+consisting of lines that are centred within the left and
+right margins on the current page. Each line must be
+terminated with the string \\.
+
+\centering: The declaration form of the center environment.
+
+############################################################
+ \centering ::centering::
+############################################################
+This declaration corresponds to the center environment. This
+declaration can be used inside an environment such as quote
+or in a parbox. The text of a figure or table can be centred
+on the page by putting a \centering command at the beginning
+of the figure or table environment.
+
+Unlike the center environment, the \centering command does
+not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ description ::discription::
+############################################################
+
+ \begin{description}
+ \item [label] First item
+ \item [label] Second item
+ .
+ .
+ .
+ \end{description}
+
+The description environment is used to make labelled lists.
+The label is bold face and flushed right.
+############################################################
+ enumerate ::enumerate::
+############################################################
+
+ \begin{enumerate}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{enumerate}
+
+The enumerate environment produces a numbered list.
+Enumerations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments.
+
+Each item of an enumerated list begins with an \item command.
+There must be at least one \item command within the environment.
+The enumerate environment uses the enumi through enumiv
+counters (see section Counters). The type of numbering can be
+changed by redefining \theenumi etc.
+############################################################
+ eqnarray ::eqnarray::
+############################################################
+
+ \begin{eqnarray}
+ math formula 1 \\
+ math formula 2 \\
+ .
+ .
+ .
+ \end{eqnarray}
+
+The eqnarray environment is used to display a sequence of
+equations or inequalities. It is very much like a three-column
+array environment, with consecutive rows separated by \\ and
+consecutive items within a row separated by an &.
+
+An equation number is placed on every line unless that line
+has a \nonumber command.
+
+The command \lefteqn is used for splitting long formulas
+across lines. It typesets its argument in display style flush
+left in a box of zero width.
+############################################################
+ equation ::equation::
+############################################################
+
+ \begin{equation}
+ math formula
+ \end{equation}
+
+The equation environment centres your equation on the page
+and places the equation number in the right margin.
+############################################################
+ figure ::figure::
+############################################################
+
+ \begin{figure}[placement]
+
+ body of the figure
+
+ \caption{figure title}
+ \end{figure}
+
+Figures are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Figures will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your figure. There are four places where LaTeX
+can possibly put a float:
+ h (Here) - at the position in the text where the
+ figure environment appears.
+ t (Top) - at the top of a text page.
+ b (Bottom) - at the bottom of a text page.
+ p (Page of floats) - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement tbp.
+
+The body of the figure is made up of whatever text, LaTeX
+commands, etc. you wish. The \caption command allows you to
+title your figure.
+############################################################
+ flushleft ::flushleft::
+############################################################
+
+ \begin{flushleft}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushleft}
+
+The flushleft environment allows you to create a paragraph
+consisting of lines that are flushed left, to the left-hand
+margin. Each line must be terminated
+with the string \\.
+
+ \raggedright: The declaration form of the flushleft
+ environment.
+
+############################################################
+ \raggedright ::raggedright::
+############################################################
+This declaration corresponds to the flushleft environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushleft environment, the \raggedright command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ flushright ::flushright::
+############################################################
+
+ \begin{flushright}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushright}
+
+The flushright environment allows you to create a paragraph
+consisting of lines that are flushed right, to the right-hand
+margin. Each line must be terminated with the string \\.
+
+ \raggedleft: The declaration form of the flushright environment.
+
+############################################################
+ \raggedleft ::raggedleft::
+############################################################
+This declaration corresponds to the flushright environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushright environment, the \raggedleft command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ itemize ::itemize::
+############################################################
+
+ \begin{itemize}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{itemize}
+
+The itemize environment produces a "bulleted" list.
+Itemizations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments. Each item of an itemized list
+begins with an \item command. There must be at least one
+\item command within the environment. The itemize environment
+uses the itemi through itemiv counters (see section Counters).
+The type of numbering can be changed by redefining \theitemi
+etc.
+############################################################
+ letter ::letter::
+############################################################
+This environment is used for creating letters. See section
+Letters.
+############################################################
+ list ::list::item::
+############################################################
+The list environment is a generic environment which is used
+for defining many of the more specific environments. It is
+seldom used in documents, but often in macros.
+
+ \begin{list}{label}{spacing}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{list}
+
+The {label} argument specifies how items should be labelled.
+This argument is a piece of text that is inserted in a box
+to form the label. This argument can and usually does contain
+other LaTeX commands.
+
+The {spacing} argument contains commands to change the spacing
+parameters for the list. This argument will most often be
+null, i.e., {}. This will select all default spacing which
+should suffice for most cases.
+############################################################
+ minipage ::minipage::
+############################################################
+
+ \begin{minipage}[position]{width}
+ text
+ \end{minipage}
+
+The minipage environment is similar to a \parbox command. It
+takes the same optional position argument and mandatory width
+argument. You may use other paragraph-making environments
+inside a minipage. Footnotes in a minipage environment are
+handled in a way that is particularly useful for putting
+footnotes in figures or tables. A \footnote or \footnotetext
+command puts the footnote at the bottom of the minipage
+instead of at the bottom of the page, and it uses the
+mpfootnote counter instead of the ordinary footnote counter
+
+See section Counters.
+
+NOTE: Don't put one minipage inside another if you are using
+footnotes; they may wind up at the bottom of the wrong
+minipage.
+############################################################
+ picture ::picture::
+############################################################
+ \begin{picture}(width,height)(x offset,y offset)
+ .
+ .
+ picture commands
+ .
+ .
+ \end{picture}
+The picture environment allows you to create just about any
+kind of picture you want containing text, lines, arrows and
+circles. You tell LaTeX where to put things in the picture
+by specifying their coordinates. A coordinate is a number
+that may have a decimal point and a minus sign -- a number
+like 5, 2.3 or -3.1416. A coordinate specifies a length in
+multiples of the unit length \unitlength, so if \unitlength
+has been set to 1cm, then the coordinate 2.54 specifies a
+length of 2.54 centimetres. You can change the value of
+\unitlength anywhere you want, using the \setlength command,
+but strange things will happen if you try changing it inside
+the picture environment.
+
+A position is a pair of coordinates, such as (2.4,-5),
+specifying the point with x-coordinate 2.4 and y-coordinate -5.
+Coordinates are specified in the usual way with respect to
+an origin, which is normally at the lower-left corner of the
+picture. Note that when a position appears as an argument, it
+is not enclosed in braces; the parentheses serve to delimit
+the argument.
+
+The picture environment has one mandatory argument, which is
+a position. It specifies the size of the picture. The
+environment produces a rectangular box with width and height
+determined by this argument's x- and y-coordinates.
+
+The picture environment also has an optional position argument,
+following the size argument, that can change the origin.
+(Unlike ordinary optional arguments, this argument is not
+contained in square brackets.) The optional argument gives the
+coordinates of the point at the lower-left corner of the picture
+(thereby determining the origin). For example, if \unitlength has
+been set to 1mm, the command
+
+ \begin{picture}(100,200)(10,20)
+
+produces a picture of width 100 millimetres and height 200
+millimetres, whose lower-left corner is the point (10,20) and
+whose upper-right corner is therefore the point (110,220). When
+you first draw a picture, you will omit the optional argument,
+leaving the origin at the lower-left corner. If you then want to
+modify your picture by shifting everything, you just add the
+appropriate optional argument. The environment's mandatory
+argument determines the nominal size of the picture.
+
+This need bear no relation to how large the picture really is;
+LaTeX will happily allow you to put things outside the picture,
+or even off the page. The picture's nominal size is used by LaTeX
+in determining how much room to leave for it.
+
+Everything that appears in a picture is drawn by the \put command.
+The command
+
+ \put (11.3,-.3){...}
+
+puts the object specified by ... in the picture, with its reference
+point at coordinates (11.3,-.3). The reference points for various
+objects will be described below. The \put command creates an LR box.
+You can put anything in the text argument of the \put command that
+you'd put into the argument of an \mbox and related commands. When
+you do this, the reference point will be the lower left corner of
+the box.
+
+Picture commands:
+
+ \circle: Draw a circle.
+ \dashbox: Draw a dashed box.
+ \frame: Draw a frame around an object.
+ \framebox (picture): Draw a box with a frame around it.
+ \line: Draw a straight line.
+ \linethickness: Set the line thickness.
+ \makebox (picture): Draw a box of the specified size.
+ \multiput: Draw multiple instances of an object.
+ \oval: Draw an ellipse.
+ \put: Place an object at a specified place.
+ \shortstack: Make a pile of objects.
+ \vector: Draw a line with an arrow.
+
+############################################################
+ \circle ::circle::
+############################################################
+\circle[*]{diameter}
+The \circle command produces a circle with a diameter as
+close to the specified one as possible. If the *-form of the
+command is used, LaTeX draws a solid circle.
+Note that only circles up to 40 pt can be drawn.
+############################################################
+ \dashbox ::dashbox::
+############################################################
+Draws a box with a dashed line.
+\dashbox{dash_length}(width,height){...}
+The \dashbox has an extra argument which specifies the width
+of each dash. A dashed box looks best when the width and
+height are multiples of the dash_length.
+############################################################
+ \frame ::frame::
+############################################################
+\frame{...}
+The \frame command puts a rectangular frame around the object
+specified in the argument. The reference point is the bottom
+left corner of the frame. No extra space is put between the
+frame and the object.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox(width,height)[position]{...}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the contents
+of the box.
+############################################################
+ \line ::line::
+############################################################
+\line(x slope,y slope){length}
+The \line command draws a line of the specified length and
+slope.
+Note that LaTeX can only draw lines with slope = x/y, where
+x and y have integer values from -6 through 6.
+############################################################
+ \linethickness ::linethickness::
+############################################################
+\linethickness{dimension}
+Declares the thickness of horizontal and vertical lines in a
+picture environment to be dimension, which must be a positive
+length. It does not affect the thickness of slanted lines and
+circles, or the quarter circles drawn by \oval to form the
+corners of an oval.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox(width,height)[position]{...}
+The \makebox command for the picture environment is similar
+to the normal \makebox command except that you must specify
+a width and height in multiples of \unitlength.
+The optional argument, [position], specifies the quadrant
+that your text appears in. You may select up to two of the
+following:
+ t - Moves the item to the top of the rectangle
+ b - Moves the item to the bottom
+ l - Moves the item to the left
+ r - Moves the item to the right
+See section \makebox.
+############################################################
+ \multiput ::multiput::
+############################################################
+\multiput(x coord,y coord)(delta x,delta y){number of copies}{object}
+The \multiput command can be used when you are putting the
+same object in a regular pattern across a picture.
+############################################################
+ \oval ::oval::
+############################################################
+\oval(width,height)[portion]
+The \oval command produces a rectangle with rounded corners.
+The optional argument, [portion], allows you to select part
+of the oval.
+ t - Selects the top portion
+ b - Selects the bottom portion
+ r - Selects the right portion
+ l - Selects the left portion
+Note that the "corners" of the oval are made with quarter
+circles with a maximum
+
+radius of 20 pt, so large "ovals" will look more like boxes
+with rounded corners.
+############################################################
+ \put ::put::
+############################################################
+\put(x coord,y coord){ ... }
+The \put command places the item specified by the mandatory
+argument at the given coordinates.
+############################################################
+ \shortstack ::shortstack::
+############################################################
+\shortstack[position]{... \\ ... \\ ...}
+The \shortstack command produces a stack of objects. The
+valid positions are:
+ r - Moves the objects to the right of the stack
+ l - Moves the objects to the left of the stack
+ c - Moves the objects to the centre of the stack
+ (default)
+############################################################
+ \vector ::vector::
+############################################################
+\vector(x slope,y slope){length}
+The \vector command draws a line with an arrow of the
+specified length and slope. The x and y values must lie
+between -4 and +4, inclusive.
+
+############################################################
+ quotation ::quotation::
+############################################################
+ \begin{quotation}
+ text
+ \end{quotation}
+The margins of the quotation environment are indented on the
+left and the right.
+
+The text is justified at both margins and there is paragraph
+indentation.
+
+Leaving a blank line between text produces a new paragraph.
+############################################################
+ quote ::quote::
+############################################################
+ \begin{quote}
+ text
+ \end{quote}
+The margins of the quote environment are indented on the left
+and the right. The text is justified at both margins. Leaving
+a blank line between text produces a new paragraph.
+############################################################
+ tabbing ::tabbing::
+############################################################
+ \begin{tabbing}
+ text \= more text \= still more text \= last text \\
+ second row \> \> more \\
+ .
+ .
+ .
+ \end{tabbing}
+The tabbing environment provides a way to align text in
+columns. It works by setting tab stops and tabbing to them
+much the way you do with an ordinary typewriter.
+
+It is best suited for cases where the width of each column
+is constant and known in advance.
+
+This environment can be broken across pages, unlike the tabular
+environment.
+
+The following commands can be used inside a tabbing
+enviroment:
+
+############################################################
+ \= ::=::
+############################################################
+Sets a tab stop at the current position.
+############################################################
+ \> ::>::
+############################################################
+Advances to the next tab stop.
+############################################################
+ \< ::<::
+############################################################
+This command allows you to put something to the left of the
+local margin without changing the margin. Can only be used
+at the start of the line.
+############################################################
+ \+ ::+::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the right.
+############################################################
+ \- ::-::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the left.
+############################################################
+ \' ::'::
+############################################################
+Moves everything that you have typed so far in the current
+column, i.e. everything from the most recent \>, \<, \', \\,
+or \kill command, to the right of the previous column, flush
+against the current column's tab stop.
+############################################################
+ \` ::`::
+############################################################
+Allows you to put text flush right against any tab stop,
+including tab stop 0. However, it can't move text to the right
+of the last column because here's no tab stop there. The \`
+command moves all the text that follows it, up to the \\ or
+\end{tabbing} command that ends the line, to the right margin
+of the tabbing environment. There must be no \> or \' command
+between the \` and the command that ends the line.
+############################################################
+ \kill ::kill::
+############################################################
+Sets tab stops without producing text. Works just like \\
+except that it throws away the current line instead of
+producing output for it. The effect of any \=, \+ or \-
+commands in that line remain in effect.
+############################################################
+ \pushtabs ::pushtabs::
+############################################################
+Saves all current tab stop positions. Useful for temporarily
+changing tab stop positions in the middle of a tabbing
+environment.
+############################################################
+ \pushtabs
+############################################################
+Restores the tab stop positions saved by the last \pushtabs.
+############################################################
+ \a ::a::
+############################################################
+In a tabbing environment, the commands \=, \' and \` do not
+produce accents as normal. Instead, the commands \a=, \a'
+and \a` are used.
+
+This example typesets a Pascal function in a traditional
+format:
+
+ \begin{tabbing}
+ function \= fact(n : integer) : integer;\\
+ \> begin \= \+ \\
+ \> if \= n $>$ 1 then \+ \\
+ fact := n * fact(n-1) \- \\
+ else \+ \\
+ fact := 1; \-\- \\
+ end;\\
+ \end{tabbing}
+
+############################################################
+ table ::table::
+############################################################
+
+ \begin{table}[placement]
+
+ body of the table
+
+ \caption{table title}
+ \end{table}
+
+Tables are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Tables will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your table. There are four places where LaTeX
+can possibly put a float:
+ h : Here - at the position in the text where the table
+ environment appears.
+ t : Top - at the top of a text page.
+ b : Bottom - at the bottom of a text page.
+ p : Page of floats - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement [tbp].
+
+The body of the table is made up of whatever text, LaTeX
+commands, etc., you wish. The \caption command allows you to
+title your table.
+############################################################
+ tabular ::tabular::
+############################################################
+
+ \begin{tabular}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular}
+
+or
+
+ \begin{tabular*}{width}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular*}
+
+These environments produce a box consisting of a sequence of
+rows of items, aligned vertically in columns. The mandatory
+and optional arguments consist of:
+ width Specifies the width of the tabular* environment.
+ There must be rubber space between columns that
+ can stretch to fill out the specified width.
+ pos Specifies the vertical position; default is
+ alignment on the centre of the environment.
+ t - align on top row
+ b - align on bottom row
+ cols Specifies the column formatting. It consists of
+ a sequence of the following specifiers,
+ corresponding to the sequence of columns and
+ intercolumn material.
+ l - A column of left-aligned items.
+ r - A column of right-aligned items.
+ c - A column of centred items.
+ | - A vertical line the full height and depth of
+ the environment.
+ @@{text} - This inserts text in every row. An
+ @@-expression suppresses the intercolumn space
+ normally inserted between columns; any desired
+ space between the inserted text and the adjacent
+ items must be included in text. An \extracolsep{wd}
+ command in an @@-expression causes an extra space
+ of width wd to appear to the left of all subsequent
+ columns, until countermanded by another \extracolsep
+ command. Unlike ordinary intercolumn space, this
+ extra space is not suppressed by an @@-expression.
+ An \extracolsep command can be used only in an
+ @@-expression in the cols argument.
+ p{wd} - Produces a column with each item typeset in
+ a parbox of width wd, as if it were the argument
+ of a \parbox[t]{wd} command. However, a \\ may not
+ appear in the item, except in the following
+ situations:
+ 1. inside an environment like minipage,
+ array, or tabular.
+ 2. inside an explicit \parbox.
+ 3. in the scope of a \centering, \raggedright,
+ or \raggedleft
+ declaration. The latter declarations must appear
+ inside braces or an environment when used in a
+ p-column element.
+ *{num}{cols} - Equivalent to num copies of cols, where
+ num is any positive integer and cols is any list of
+ column-specifiers, which may contain another
+ *-expression.
+
+These commands can be used inside a tabular environment:
+
+ \cline: Draw a horizontal line spanning some columns.
+ \hline: Draw a horizontal line spanning all columns.
+ \multicolumn: Make an item spanning several columns.
+ \vline: Draw a vertical line.
+
+############################################################
+ \cline ::cline::
+############################################################
+\cline{i-j}
+The \cline command draws horizontal lines across the columns
+specified, beginning in column i and ending in column j,
+which are identified in the mandatory argument.
+############################################################
+ \hline ::hline::
+############################################################
+The \hline command will draw a horizontal line the width of
+the table. It's most commonly used to draw a line at the top,
+bottom, and between the rows of the table.
+############################################################
+ \multicolumn ::multicolumn::
+############################################################
+\multicolumn{cols}{pos}{text}
+The \multicolumn is used to make an entry that spans several
+columns. The first mandatory argument, cols, specifies the
+number of columns to span. The second mandatory argument, pos,
+specifies the formatting of the entry; c for centred, l for
+flushleft, r for flushright. The third mandatory argument,
+text, specifies what text is to make up the entry.
+############################################################
+ \vline ::vline::
+############################################################
+The \vline command will draw a vertical line extending the
+full height and depth of its row. An \hfill command can be
+used to move the line to the edge of the column. It can also
+be used in an @@-expression.
+############################################################
+ thebibliography ::thebibliography::
+############################################################
+ \begin{thebibliography}{widest-label}
+ \bibitem[label]{cite_key}
+ .
+ .
+ .
+ \end{thebibliography}
+The thebibliography environment produces a bibliography or
+reference list. In the article class, this reference list is
+labelled "References"; in the report class, it is labelled
+"Bibliography".
+
+ widest-label: Text that, when printed, is
+ approximately as wide as the widest item
+ label produces by the \bibitem commands.
+ \bibitem: Specify a bibliography item.
+ \cite: Refer to a bibliography item.
+ \nocite: Include an item in the bibliography.
+ Using BibTeX: Automatic generation of bibliographies.
+
+############################################################
+ \bibitem ::bibitem::
+############################################################
+\bibitem[label]{cite_key}
+The \bibitem command generates an entry labelled by label.
+If the label argument is missing, a number is generated as
+the label, using the enumi counter. The cite_key is any
+sequence of letters, numbers, and punctuation symbols not
+containing a comma. This command writes an entry on the `.aux'
+file containing cite_key and the item's label. When this
+`.aux' file is read by the \begin{document} command, the
+item's label is associated with cite_key, causing the
+reference to cite_key by a \cite command to produce the
+associated label.
+############################################################
+ \cite ::cite::
+############################################################
+\cite[text]{key_list}
+The key_list argument is a list of citation keys. This command
+generates an in-text citation to the references associated
+with the keys in key_list by entries on the `.aux' file read
+by the \begin{document} command. The optional text argument
+will appear after the citation, i.e. \cite[p. 2]{knuth} might
+produce `[Knuth, p. 2]'.
+############################################################
+ \nocite ::nocite::
+############################################################
+\nocite{key_list}
+The \nocite command produces no text, but writes key_list,
+which is a list of one or more citation keys, on the `.aux'
+file.
+############################################################
+ Using BibTeX
+############################################################
+If you use the BibTeX program by Oren Patashnik (highly
+recommended if you need a bibliography of more than a couple
+of titles) to maintain your bibliography, you don't use the
+thebibliography environment. Instead, you include the lines
+
+ \bibliographystyle{style} ::bibliographystyle::
+ \bibliography{bibfile} ::bibliography::
+
+where style refers to a file style.bst, which defines how
+your citations will look. The standard styles distributed
+with BibTeX are:
+
+ alpha Sorted alphabetically. Labels are formed
+ from name of author and year of publication.
+ plain Sorted alphabetically. Labels are numeric.
+ unsrt Like plain, but entries are in order of
+ citation.
+ abbrv Like plain, but more compact labels.
+
+In addition, numerous other BibTeX style files exist tailored
+to the demands of various publications.
+The argument to \bibliography refers to the file bibfile.bib,
+which should contain your database in BibTeX format. Only the
+entries referred to via \cite and \nocite will be listed in
+the bibliography.
+############################################################
+ theorem ::theorem::
+############################################################
+
+ \begin{theorem}
+ theorem text
+ \end{theorem}
+
+The theorem environment produces "Theorem x" in boldface
+followed by your theorem text.
+############################################################
+ titlepage ::titlepage::
+############################################################
+
+ \begin{titlepage}
+ text
+ \end{titlepage}
+
+The titlepage environment creates a title page, i.e. a page
+with no printed page number or heading. It also causes the
+following page to be numbered page one.
+
+Formatting the title page is left to you. The \today command
+comes in handy for title pages.
+
+Note that you can use the \maketitle (see section \maketitle)
+command to produce a standard title page.
+############################################################
+ verbatim ::verbatim::
+############################################################
+
+ \begin{verbatim}
+ text
+ \end{verbatim}
+
+The verbatim environment is a paragraph-making environment
+that gets LaTeX to print exactly what you type in. It turns
+LaTeX into a typewriter with carriage returns and blanks
+having the same effect that they would on a typewriter.
+
+ \verb: The macro form of the verbatim environment.
+
+############################################################
+ \verb ::verb::
+############################################################
+\verb char literal_text char
+\verb*char literal_text char
+Typesets literal_text exactly as typed, including special
+characters and spaces, using a typewriter (\tt) type style.
+There may be no space between \verb or \verb* and char
+(space is shown here only for clarity). The *-form differs
+only in that spaces are printed as `\verb*| |'.
+############################################################
+ verse ::verse::
+############################################################
+ \begin{verse}
+ text
+ \end{verse}
+The verse environment is designed for poetry, though you may
+find other uses for it.
+The margins are indented on the left and the right. Separate
+the lines of each stanza with \\, and use one or more blank
+lines to separate the stanzas.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Footnotes.txt,v b/support/tcltexed/hlp/bre/RCS/Footnotes.txt,v
new file mode 100644
index 0000000000..c1a925ef3f
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Footnotes.txt,v
@@ -0,0 +1,71 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Footnotes
+############################################################
+
+Footnotes can be produced in one of two ways. They can be
+produced with one command, the \footnote command. They can
+also be produced with two commands, the \footnotemark and the
+\footnotetext commands. See the specific command for
+information on why you would use one over the other.
+
+ \footnote: Insert a footnote.
+ \footnotemark: Insert footnote mark only.
+ \footnotetext: Insert footnote text only.
+
+############################################################
+ \footnote ::footnote::
+############################################################
+\footnote[number]{text}
+The \footnote command places the numbered footnote text at
+the bottom of the current page. The optional argument, number,
+is used to change the default footnote number. This command
+can only be used in outer paragraph mode; i.e., you cannot
+use it in sectioning commands like \chapter, in figures,
+tables or in a tabular environment.
+############################################################
+ \footnotemark ::footnotemark::
+############################################################
+The \footnotemark command puts the footnote number in the
+text. This command can be used in inner paragraph mode. The
+text of the footnote is supplied by the \footnotetext command.
+This command can be used to produce several consecutive
+footnote markers referring to the same footnote by using
+
+ \footnotemark[\value{footnote}]
+
+after the first \footnote command.
+############################################################
+ \footnotetext ::footnotetext::
+############################################################
+\footnotetext[number]{text}
+The \footnotetext command produces the text to be placed at
+the bottom of the page. This command can come anywhere after
+the \footnotemark command. The \footnotetext command must
+appear in outer paragraph mode.
+
+The optional argument, number, is used to change the default
+footnote number.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Input.txt,v b/support/tcltexed/hlp/bre/RCS/Input.txt,v
new file mode 100644
index 0000000000..667be91ff1
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Input.txt,v
@@ -0,0 +1,77 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Splitting the Input
+############################################################
+
+A large document requires a lot of input. Rather than
+putting the whole input in a single large file, it's more
+efficient to split it into several smaller ones.
+Regardless of how many separate files you use, there is one
+that is the root file; it is the one whose name you type when
+you run LaTeX.
+
+ \include: Conditionally include a file.
+ \includeonly: Determine which files are included.
+ \input: Unconditionally include a file.
+
+############################################################
+ \include ::include::
+############################################################
+\include{file}
+The \include command is used in conjunction with the
+\includeonly command for selective inclusion of files. The
+file argument is the first name of a file, denoting `file.tex'.
+If file is one the file names in the file list of the
+\includeonly command or if there is no \includeonly command,
+the \include command is equivalent to
+
+ \clearpage \input{file} \clearpage
+
+except that if the file `file.tex' does not exist, then a
+warning message rather than an error is produced. If the file
+is not in the file list, the \include command is equivalent
+to \clearpage.
+
+The \include command may not appear in the preamble or in a
+file read by another \include command.
+############################################################
+ \includeonly ::includeonly::
+############################################################
+\includeonly{file_list}
+The \includeonly command controls which files will be read
+in by an \include command. file_list should be a
+comma-separated list of filenames. Each filename must match
+exactly a filename specified in a \include command. This
+command can only appear in the preamble.
+############################################################
+ \input ::input::
+############################################################
+\input{file}
+The \input command causes the indicated file to be read and
+processed, exactly as if its contents had been inserted in
+the current file at that point. The file name may be a
+complete file name with extension or just a first name, in
+which case the file `file.tex' is used.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Layout.txt,v b/support/tcltexed/hlp/bre/RCS/Layout.txt,v
new file mode 100644
index 0000000000..6408324b11
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Layout.txt,v
@@ -0,0 +1,60 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Layout
+############################################################
+
+Miscellaneous commands for controlling the general layout
+of the page.
+
+ \flushbottom: Make all text pages the same height.
+ \onecolumn: Use one-column layout.
+ \raggedbottom: Allow text pages of differing height.
+ \twocolumn: Use two-column layout.
+
+############################################################
+ \flushbottom ::flushbottom::
+############################################################
+The \flushbottom declaration makes all text pages the same
+height, adding extra vertical space when necessary to fill
+out the page. This is the standard if twocolumn mode is
+selected.
+############################################################
+ \onecolumn ::onecolumn::
+############################################################
+The \onecolumn declaration starts a new page and produces
+single-column output.
+############################################################
+ \raggedbottom ::raggedbottom::
+############################################################
+The \raggedbottom declaration makes all pages the height of
+the text on that page. No extra vertical space is added.
+############################################################
+ \twocolumn ::twocolumn::
+############################################################
+\twocolumn[text]
+The \twocolumn declaration starts a new page and produces
+two-column output. If the optional text argument is present,
+it is typeset in one-column mode.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Lengths.txt,v b/support/tcltexed/hlp/bre/RCS/Lengths.txt,v
new file mode 100644
index 0000000000..316439178d
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Lengths.txt,v
@@ -0,0 +1,98 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@
+############################################################
+Lengths
+############################################################
+
+A length is a measure of distance. Many LaTeX commands take
+a length as an argument.
+
+ \newlength: Define a new length.
+ \setlength: Set the value of a length.
+ \addtolength: Add a quantity to a length.
+ \settodepth: Set a length to the depth of something.
+ \settoheight: Set a length to the height of something.
+ \settowidth: Set a length to the width of something.
+ Predefined lengths: Lengths that are, like, predefined.
+
+############################################################
+ \newlength ::newlength::
+############################################################
+\newlength{\gnat}
+The \newlength command defines the mandatory argument, \gnat,
+as a length command with a value of 0in. An error occurs if a
+\gnat command already exists.
+############################################################
+ \setlength ::setlength::
+############################################################
+\setlength{\gnat}{length}
+The \setlength command is used to set the value of a length
+command. The length argument can be expressed in any terms
+of length LaTeX understands, i.e., inches (in),
+millimetres (mm), points (pt), etc.
+############################################################
+ \addtolength ::addtolength::
+############################################################
+\addtolength{\gnat}{length}
+The \addtolength command increments a "length command" by the
+amount specified in the length argument. It can be a negative
+amount.
+############################################################
+ \settodepth ::settodepth::
+############################################################
+\settodepth{\gnat}{text}
+The \settodepth command sets the value of a length command
+equal to the depth of the text argument.
+############################################################
+ \settoheight ::settoheight::
+############################################################
+\settoheight{\gnat}{text}
+The \settoheight command sets the value of a length command
+equal to the height of the text argument.
+############################################################
+ \settowidth ::settowidth::
+############################################################
+\settowidth{\gnat}{text}
+The \settowidth command sets the value of a length command
+equal to the width of the text argument.
+
+Predefined lengths
+
+ \width ::width::
+ \height ::height::
+ \depth ::depth::
+ \totalheight ::totalheight::
+
+These length parameters can be used in the arguments of the
+box-making commands
+
+See section Spaces & Boxes.
+
+They specify the natural width etc. of the text in the box.
+\totalheight equals \height + \depth. To make a box with the
+text stretched to double the natural size, e.g., say
+
+ \makebox[2\width]{Get a stretcher}
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Letters.txt,v b/support/tcltexed/hlp/bre/RCS/Letters.txt,v
new file mode 100644
index 0000000000..9facb5ff98
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Letters.txt,v
@@ -0,0 +1,157 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Letters
+############################################################
+You can use LaTeX to typeset letters, both personal and
+business. The letter document class is designed to make a
+number of letters at once, although you can make just one if
+you so desire.
+
+Your `.tex' source file has the same minimum commands as the
+other document classes, i.e., you must have the following
+commands as a minimum:
+
+ \documentclass{letter}
+ \begin{document}
+ ... letters ...
+ \end{document}
+
+Each letter is a letter environment, whose argument is the
+name and address of the recipient. For example, you might
+have:
+
+ \begin{letter}{Mr. Joe Smith\\ 2345 Princess St.
+ \\ Edinburgh, EH1 1AA}
+ ...
+ \end{letter}
+
+The letter itself begins with the \opening command. The text
+of the letter follows. It is typed as ordinary LaTeX input.
+Commands that make no sense in a letter, like \chapter, do not
+work. The letter closes with a \closing command.
+After the closing, you can have additional material. The \cc
+command produces the usual "cc: ...". There's also a similar
+\encl command for a list of enclosures. With both these commands,
+use \\ to separate the items.
+
+These commands are used with the letter class:
+
+ \address: Your return address.
+ \cc: Cc list.
+ \closing: Saying goodbye.
+ \encl: List of enclosed material.
+ \location: Your organisation's address.
+ \makelabels: Making address labels.
+ \name: Your name, for the return address.
+ \opening: Saying hello.
+ \ps: Adding a postscript.
+ \signature: Your signature.
+ \startbreaks: Allow page breaks.
+ \stopbreaks: Disallow page breaks.
+ \telephone: Your phone number.
+
+############################################################
+ \address ::address::
+############################################################
+\address{Return address}
+The return address, as it should appear on the letter and the
+envelope. Separate lines of the address should be separated
+by \\ commands. If you do not make an \address declaration,
+then the letter will be formatted for copying onto your
+organisation's standard letterhead. (See section Overview of
+LaTeX and Local Guide, for details on your local implementation).
+If you give an \address declaration, then the letter will be
+formatted as a personal letter.
+############################################################
+ \cc ::cc::
+############################################################
+\cc{Kate Schechter\\Rob McKenna}
+Generate a list of other persons the letter was sent to. Each
+name is printed on a separate line.
+############################################################
+ \closing ::closing::
+############################################################
+\closing{text}
+The letter closes with a \closing command, i.e.,
+ \closing{Best Regards,}
+\encl
+\encl{CV\\Certificates}
+Generate a list of enclosed material.
+############################################################
+ \location ::location::
+############################################################
+\location{address}
+This modifies your organisation's standard address. This
+only appears if the firstpage pagestyle is selected.
+############################################################
+ \makelabels ::makelabels::
+############################################################
+\makelabels{number}
+If you issue this command in the preamble, LaTeX will create
+a sheet of address labels. This sheet will be output before
+the letters.
+############################################################
+ \name ::name::
+############################################################
+\name{June Davenport}
+Your name, used for printing on the envelope together with
+the return address.
+############################################################
+ \opening ::opening::
+############################################################
+\opening{text}
+The letter begins with the \opening command. The mandatory
+argument, text, is whatever text you wish to start your
+letter, i.e.,
+ \opening{Dear Joe,}
+############################################################
+ \ps ::ps::
+############################################################
+\ps
+Use this command before a postscript.
+############################################################
+ \signature ::sinature::
+############################################################
+\signature{Harvey Swick}
+Your name, as it should appear at the end of the letter
+underneath the space for your signature. Items that should
+go on separate lines should be separated by \\ commands.
+############################################################
+ \startbreaks ::startbreaks::
+############################################################
+\startbreaks
+Used after a \stopbreaks command to allow page breaks again.
+############################################################
+ \stopbreaks ::stopbreaks::
+############################################################
+\stopbreaks
+Inhibit page breaks until a \startbreaks command occurs.
+############################################################
+ \telephone ::telephone::
+############################################################
+\telephone{number}
+This is your telephone number. This only appears if the
+firstpage pagestyle is selected.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Margin.txt,v b/support/tcltexed/hlp/bre/RCS/Margin.txt,v
new file mode 100644
index 0000000000..c7ea4a45b8
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Margin.txt,v
@@ -0,0 +1,44 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Margin Notes ::marginpar::reversemarginpar::
+############################################################
+
+The command \marginpar[left]{right} creates a note in the
+margin. The first line will be at the same height as the line
+in the text where the \marginpar occurs.
+When you only specify the mandatory argument right, the text
+will be placed
+ 1. in the right margin for one-sided layout
+ 2. in the outside margin for two-sided layout
+ 3. in the nearest margin for two-column layout.
+ 4. By issuing the command \reversemarginpar, you can
+ force the marginal notes to go into the opposite
+ (inside) margin.
+When you specify both arguments, left is used for the left
+margin, and right is used for the right margin.
+The first word will normally not be hyphenated; you can
+enable hyphenation by prefixing the first word with a
+\hspace{0pt} command.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Math.txt,v b/support/tcltexed/hlp/bre/RCS/Math.txt,v
new file mode 100644
index 0000000000..ad4cb39a21
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Math.txt,v
@@ -0,0 +1,111 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Math Formulae ::(::)::[::]::$::
+############################################################
+
+There are three environments that put LaTeX in math mode:
+ math For Formulae that appear right in the text.
+ displaymath For Formulae that appear on their own line.
+ equation The same as the displaymath environment
+ except that it adds an equation number in
+ the right margin.
+The math environment can be used in both paragraph and LR mode,
+but the displaymath and equation environments can be used only
+in paragraph mode. The math and displaymath environments are
+used so often that they have the following short forms:
+
+ \(...\) instead of \begin{math}...\end{math}
+
+ \[...\] instead of \begin{displaymath}...\end{displaymath}
+
+In fact, the math environment is so common that it has an even
+shorter form:
+
+ $ ... $ instead of \(...\)
+
+ Subscripts & Superscripts: Also known as exponent or index.
+ Math Symbols: Various mathematical squiggles.
+ Spacing in Math Mode: Thick, medium, thin and negative spaces.
+ Math Miscellany: Stuff that doesn't fit anywhere else.
+
+############################################################
+ Subscripts & Superscripts ::_::^::
+############################################################
+To get an expression exp to appear as a subscript, you just
+type _{exp}. To get exp to appear as a superscript, you type
+^{exp}. LaTeX handles superscripted superscripts and all of
+that stuff in the natural way. It even does the right
+thing when something has both a subscript and a superscript.
+############################################################
+ Math Symbols
+############################################################
+LaTeX provides almost any mathematical symbol you're likely
+to need. The commands for generating them can be used only in
+math mode. For example, if you include $\pi$ in your source,
+you will get the symbol in your output.
+############################################################
+ Spacing in Math Mode
+############################################################
+In a math environment, LaTeX ignores the spaces you type and
+puts in the spacing that it thinks is best. LaTeX formats
+mathematics the way it's done in mathematics texts. If you
+want different spacing, LaTeX provides the following four
+commands for use in math mode:
+
+ \; - a thick space ::;::
+ \: - a medium space :::::
+ \, - a thin space ::,::
+ \! - a negative thin space ::!::
+
+############################################################
+ Math Miscellany
+############################################################
+ \cdots ::cdots::
+Produces a horizontal ellipsis where the dots are raised to
+the centre of the line. eg.
+ \ddots ::ddots::
+Produces a diagonal ellipsis. eg.
+ \frac{num}{den} ::frac::
+Produces the fraction num divided by den. eg.
+ \ldots ::ldots::
+Produces an ellipsis. This command works in any mode, not
+just math mode. eg.
+ \overbrace{text} ::overbrace::
+Generates a brace over text. eg.
+ \overline{text} ::overline::
+Causes the argument text to be overlined. eg.
+ \sqrt[root]{arg} ::sqrt::
+Produces the square root of its argument. The optional argument,
+root, determines what root to produce, i.e., the cube root
+of x+y would be typed
+as $\sqrt[3]{x+y}$. eg.
+ \underbrace{text} ::underbrace::
+Generates text with a brace underneath. eg.
+ \underline{text} ::underline::
+Causes the argument text to be underlined. This command can
+also be used in paragraph and LR modes. eg.
+ \vdots ::vdots::
+Produces a vertical ellipsis. eg.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Modes.txt,v b/support/tcltexed/hlp/bre/RCS/Modes.txt,v
new file mode 100644
index 0000000000..55b108b597
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Modes.txt,v
@@ -0,0 +1,63 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Modes
+############################################################
+When LaTeX is processing your input text, it is always in one
+of three modes:
+
+ Paragraph mode
+ Math mode
+ Left-to-right mode, called LR mode for short
+
+LaTeX changes mode only when it goes up or down a staircase
+to a different level, though not all level changes produce
+mode changes. Mode changes occur only when entering or
+leaving an environment, or when LaTeX is processing the
+argument of certain text-producing commands.
+
+"Paragraph mode" is the most common; it's the one LaTeX is
+in when processing ordinary text. In that mode, LaTeX breaks
+your text into lines and breaks the lines into pages. LaTeX
+is in "math mode" when it's generating a mathematical formula.
+In "LR mode", as in paragraph mode, LaTeX considers the output
+that it produces to be a string of words with spaces between
+them. However, unlike paragraph mode, LaTeX keeps going from
+left to right; it never starts a new line in LR mode. Even if
+you put a hundred words into an \mbox, LaTeX would keep
+typesetting them from left to right inside a single box, and
+then complain because the resulting box was too wide to fit
+on the line.
+
+LaTeX is in LR mode when it starts making a box with an \mbox
+command. You can get it to enter a different mode inside the
+box - for example, you can make it enter math mode to put a
+formula in the box. There are also several text-producing
+commands and environments for making a box that put LaTeX in
+paragraph mode. The box make by one of these commands or
+environments will be called a parbox. When LaTeX is in paragraph
+mode while making a box, it is said to be in "inner paragraph
+mode". Its normal paragraph mode, which it starts out in, is
+called "outer paragraph mode".
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Overview.txt,v b/support/tcltexed/hlp/bre/RCS/Overview.txt,v
new file mode 100644
index 0000000000..ecb11b9a2d
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Overview.txt,v
@@ -0,0 +1,92 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Overview of LaTeX and Local Guide
+############################################################
+
+The LaTeX command typesets a file of text using the TeX program
+and the LaTeX Macro package for TeX. To be more specific, it
+processes an input file containing the text of a document with
+interspersed commands that describe how the text should be
+formatted. It produces at least three files as output:
+
+ 1. A "Device Independent", or `.dvi' file. This contains
+commands that can be translated into commands for a variety
+of output devices. You can view the output of LaTeX by using
+a program such as xdvi, which actually uses the `.dvi' file.
+ 2. A "transcript" or `.log' file that contains summary
+information and diagnostic messages for any errors discovered
+in the input file.
+ 3. An "auxiliary" or `.aux' file. This is used by LaTeX
+itself, for things such as sectioning.
+
+For a description of what goes on inside TeX, you should
+consult The TeXbook by Donald E. Knuth, ISBN 0-201-13448-9,
+published jointly by the American Mathematical Society
+and Addison-Wesley Publishing Company.
+
+For a description of LaTeX, you should consult:
+ LaTeX: A Document Preparation System, by Leslie Lamport,
+Addison-Wesley Publishing Company, 2nd edition, 1994.
+ The LaTeX Companion, by Michel Goossens, Frank Mittelbach,
+and Alexander Samarin, Addison-Wesley, 1994.
+
+############################################################
+Commands
+############################################################
+
+A LaTeX command begins with the command name, which consists
+of a \ followed by either (a) a string of letters or
+(b) a single non-letter. Arguments contained in square brackets,
+[], are optional while arguments contained in braces, {},
+are required.
+
+NOTE: LaTeX is case sensitive. Enter all commands in lower
+case unless explicitly directed to do otherwise.
+
+ Counters: Internal counters used by LaTeX.
+ Cross References: Automatic referencing.
+ Definitions: Define your own commands etc.
+ Document Classes: Some of the various classes available.
+ Environments: Such as enumerate & itemize.
+ Footnotes: How to produce footnotes.
+ Layout: Controlling the page layout.
+ Lengths: The length commands.
+ Letters: The letter class.
+ Line & Page Breaking: How to insert pagebreaks etc.
+ Making Paragraphs: Paragraph commands.
+ Margin Notes: Putting remarks in the margin.
+ Math Formulae: How to create mathematical formulae.
+ Modes: Paragraph, Math or LR modes.
+ Page Styles: Various styles of page layout.
+ Sectioning: How to section properly.
+ Spaces & Boxes: All the associated commands.
+ Special Characters: Special reserved characters.
+ Splitting the Input: Dealing with big files by splitting.
+ Starting & Ending: The formal start & end layouts.
+ Table of Contents: How to create a table of contents.
+ Terminal Input/Output: User interaction.
+ Typefaces: Such as bold, italics etc.
+
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Paragraphs.txt,v b/support/tcltexed/hlp/bre/RCS/Paragraphs.txt,v
new file mode 100644
index 0000000000..168478799d
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Paragraphs.txt,v
@@ -0,0 +1,56 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Making Paragraphs
+############################################################
+
+A paragraph is ended by one or more completely blank lines
+-- lines not containing even a %. A blank line should not
+appear where a new paragraph cannot be started, such as in
+math mode or in the argument of a sectioning command.
+
+ \indent: Indent this paragraph.
+ \noindent: Do not indent this paragraph.
+ \par: Another way of writing a blank line.
+
+############################################################
+ \indent ::indent:
+############################################################
+\indent
+This produces a horizontal space whose width equals the width
+of the paragraph indentation. It is used to add paragraph
+indentation where it would otherwise be suppressed.
+############################################################
+ \noindent ::noindent::
+############################################################
+\noindent
+When used at the beginning of the paragraph, it suppresses
+the paragraph indentation. It has no effect when used in the
+middle of a paragraph.
+############################################################
+ \par ::par::
+############################################################
+Equivalent to a blank line; often used to make command or
+environment definitions easier to read.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Parameters.txt,v b/support/tcltexed/hlp/bre/RCS/Parameters.txt,v
new file mode 100644
index 0000000000..9f4a63ed27
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Parameters.txt,v
@@ -0,0 +1,508 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Parameters
+############################################################
+
+The input file specification indicates the file to be
+formatted; TeX uses `.tex' as a default file extension. If
+you omit the input file entirely, TeX accepts input from the
+terminal. You specify command options by supplying a string
+as a parameter to the command; e.g.
+
+ latex "\scrollmode\input foo.tex"
+
+will process `foo.tex' without pausing after every error.
+Output files are always created in the current directory.
+When you fail to specify an input file name, TeX bases the
+output names on the file specification associated with the
+logical name TEX_OUTPUT, typically texput.log.
+############################################################
+Concept Index
+a
+Accessing any character of a font
+Aligning Equations
+Appendix, creating
+Arrays, math
+article class
+Author, for titlepage
+b
+Bibliography, creating (automatically)
+Bibliography, creating (manually)
+BibTeX, using
+book class
+Boxes
+c
+Cc list
+Centering text
+Centering text, environment for
+Characters, reserved
+Characters, special
+Classes of document
+Commands, defining new ones
+Computer programs, typesetting
+Counters, a list of
+Counters, creating
+Counters, getting the value of
+Counters, setting
+Creating letters
+Creating pictures
+Creating tables
+Cross referencing
+Cross referencing using page number
+Cross referencing using section number
+d
+Date, for titlepage
+Defining a new command
+Defining new environments
+Defining new fonts
+Defining new theorems
+Displaying quoted text
+Displaying quoted text with paragraph indentation
+Document Classes
+e
+Enclosed material
+Ending & Starting
+Enlarge current page
+Environments
+Environments, defining
+Equations, aligning
+Equations, environment for
+exponent
+f
+Figures, footnotes in
+Flushing a page
+Font commands, low-level
+Font Sizes
+Font Styles
+Fonts
+Fonts, new commands for
+Footnotes in figures
+Footnotes, creating
+Formatting Text
+Formulae, environment for
+Formulae, maths
+g
+Global options
+Greek letters
+h
+Hyphenation, defining
+Hyphenation, forcing
+i
+Indent, forcing
+Indent, suppressing
+Input file, splitting
+Input/Output
+Inserting figures
+j
+Justification, ragged left
+Justification, ragged right
+l
+Labelled lists, creating
+LaTeX overview
+Layout commands
+Left-justifying text
+Left-justifying text, environment for
+Left-to-right mode
+Lengths, adding to
+Lengths, defining a new
+Lengths, defining and using
+Lengths, predefined
+Lengths, setting value of
+letter class
+Letters
+Letters, ending
+Letters, starting
+Line Breaking
+Line breaks
+Lines in tables
+Lining text up in columns using tab stops
+Lining text up in tables
+Lists of items
+Lists of items, generic
+Lists of items, numbered
+Loading additional packages
+Low-level font commands
+LR mode
+m
+Making a title page
+Making paragraphs
+Margin Notes
+Math Formulae
+Math mode
+Math mode, entering
+Math mode, spacing
+Maths Miscellany
+Maths symbols
+Minipage, creating a
+Modes
+Multicolumn text
+n
+New line, starting
+New line, starting (paragraph mode)
+New Page
+Notes in the margin
+o
+Options, global
+Overview of LaTeX
+p
+Packages, loading
+Page break, forcing
+Page Breaking
+Page Formatting
+Page numbering
+Page styles
+Paragraph mode
+Paragraph, starting a new
+Paragraphs
+Pictures, creating
+Poetry, an environment for
+Predefined lengths
+Programs, typesetting
+q
+Quoted text with paragraph indentation, displaying
+Quoted text, displaying
+r
+Ragged left text
+Ragged left text, environment for
+Ragged right text
+Ragged right text, environment for
+Remarks in the margin
+report class
+Reserved Characters
+Right-justifying text
+Right-justifying text, environment for
+s
+Sectioning
+Simulating typed text
+Sizes of text
+Space, inserting vertical
+Spaces
+Spacing, within Math mode
+Special Characters
+Splitting the input file
+Starting & Ending
+Starting on a right-hand page
+Styles of text
+Styles, page
+Subscript
+Superscript
+Symbols
+t
+Tab stops, using
+Table of Contents, creating
+Tables, creating
+Terminal Input/Output
+Thanks, for titlepage
+Theorems, defining
+Theorems, typesetting
+Title making
+Title pages, creating
+Title, for titlepage
+Typed text, simulating
+Typeface Sizes
+Typeface Styles
+Typefaces
+u
+Using BibTeX
+v
+Variables, a list of
+Verbatim text
+Vertical space, inserting
+Command Index
+$
+$
+\
+\!
+\' (tabbing)
+\(
+\)
+\+
+\,
+\- (hyphenation)
+\- (tabbing)
+\;
+\<
+\=
+\>
+\[
+\\
+\]
+\` (tabbing)
+\a
+\addcontentsline
+\address
+\addtocontents
+\addtocounter
+\addtolength
+\addvspace
+\alph
+\Alph
+\appendix
+\arabic
+\author
+\backslash
+\begin
+\bfseries
+\bibitem
+\bibliography
+\bibliographystyle
+\bigskip
+\caption
+\cc
+\cdots
+\centering
+\chapter
+\circle
+\cite
+\cleardoublepage
+\clearpage
+\cline
+\closing
+\COLON
+\dashbox
+\date
+\ddots
+\depth
+\documentclass
+\dotfill
+\emph
+\encl
+\end
+\enlargethispage
+\fbox
+\flushbottom
+\fnsymbol
+\fontencoding
+\fontfamily
+\fontseries
+\fontshape
+\fontsize
+\footnote
+\footnotemark
+\footnotesize
+\footnotetext
+\frac
+\frame
+\framebox, \framebox
+\fussy
+\height
+\hfill
+\hline
+\hrulefill
+\hspace
+\Huge
+\huge
+\hyphenation
+\include
+\includeonly
+\indent
+\input
+\item
+\itshape
+\kill
+\label
+\large
+\LARGE
+\Large
+\ldots
+\lefteqn
+\line
+\linebreak
+\linethickness
+\listoffigures
+\listoftables
+\location
+\makebox
+\makebox (picture)
+\makelabels
+\maketitle
+\markboth
+\markright
+\mathbf
+\mathcal
+\mathit
+\mathnormal
+\mathrm
+\mathsf
+\mathtt
+\mathversion
+\mbox
+\mdseries
+\medskip
+\multicolumn
+\multiput
+\name
+\newcommand
+\newcounter
+\newenvironment
+\newfont
+\newlength
+\newline
+\newpage
+\newsavebox
+\newtheorem
+\nocite
+\nofiles
+\noindent
+\nolinebreak
+\nopagebreak
+\normalfont
+\normalsize
+\onecolumn
+\opening
+\oval
+\overbrace
+\overline
+\pagebreak
+\pagenumbering
+\pageref
+\pagestyle
+\par
+\paragraph
+\parbox
+\ps
+\pushtabs, \pushtabs
+\put
+\raggedbottom
+\raggedleft
+\raggedright
+\raisebox
+\ref
+\refstepcounter
+\rmfamily
+\roman
+\Roman
+\rule
+\savebox
+\sbox
+\scriptsize
+\scshape
+\selectfont
+\setcounter
+\setlength
+\settodepth
+\settoheight
+\settowidth
+\sffamily
+\shortstack
+\signature
+\sloppy
+\slshape
+\small
+\smallskip
+\sqrt
+\startbreaks
+\stepcounter
+\stopbreaks
+\subparagraph
+\subsection
+\subsubsection
+\symbol
+\tableofcontents
+\telephone
+\textbf
+\textit
+\textmd
+\textnormal
+\textrm
+\textsc
+\textsf
+\textsl
+\texttt
+\textup
+\thanks
+\thispagestyle
+\tiny
+\title
+\today
+\totalheight
+\ttfamily
+\twocolumn
+\typein
+\typeout
+\underbrace
+\underline
+\upshape
+\usebox
+\usecounter
+\usefont
+\usepackage
+\value
+\vdots
+\vector
+\verb
+\vfill
+\vline
+\vspace
+\width
+^
+^
+_
+_
+a
+array
+c
+center
+d
+description
+e
+enumerate
+eqnarray
+equation
+f
+figure
+flushleft
+flushright
+i
+itemize
+l
+letter
+list
+lrbox
+m
+minipage
+p
+picture
+q
+quotation
+quote
+t
+tabbing
+table
+tabular
+thebibliography
+theorem
+titlepage
+v
+verbatim
+verse
+
+
+
+This document was generated on 8 July 1996 using the texi2html translator
+version 1.50.
+
+
+@
diff --git a/support/tcltexed/hlp/bre/RCS/References.txt,v b/support/tcltexed/hlp/bre/RCS/References.txt,v
new file mode 100644
index 0000000000..6c623dbc9a
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/References.txt,v
@@ -0,0 +1,71 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Cross References
+############################################################
+
+One reason for numbering things like figures and equations
+is to refer the reader to them, as in "See Figure 3 for more
+details."
+
+\label: Assign a symbolic name to a piece of text.
+\pageref: Refer to a page number.
+\ref: Refer to a section, figure or similar.
+
+############################################################
+ \label ::label::
+############################################################
+\label{key}
+A \label command appearing in ordinary text assigns to the
+key the number of the current sectional unit; one appearing
+inside a numbered environment assigns that number to the key.
+
+A key can consist of any sequence of letters, digits, or
+punctuation characters.
+
+Upper and lowercase letters are different.
+
+To avoid accidentally creating two labels with the same name,
+it is common to use labels consisting of a prefix and a suffix
+separated by a colon. The prefixes conventionally used are
+ cha for chapters
+ sec for lower-level sectioning commands
+ fig for figures
+ tab for tables
+ eq for equations
+Thus, a label for a figure would look like fig:bandersnatch.
+############################################################
+ \pageref ::pageref::
+############################################################
+\pageref{key}
+The \pageref command produces the page number of the place
+in the text where the corresponding \label command appears.
+ie. where \label{key} appears.
+############################################################
+ \ref ::ref::
+############################################################
+\ref{key}
+The \ref command produces the number of the sectional unit,
+equation number, ... of the corresponding \label command.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Sectioning.txt,v b/support/tcltexed/hlp/bre/RCS/Sectioning.txt,v
new file mode 100644
index 0000000000..3fa739b871
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Sectioning.txt,v
@@ -0,0 +1,72 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Sectioning
+############################################################
+
+Sectioning commands provide the means to structure your text
+into units.
+
+ \part ::part::
+ \chapter (report and book class only) ::chapter::
+ \section ::section::
+ \subsection ::subsection::
+ \subsubsection ::subsubsection::
+ \paragraph ::paragraph::
+ \subparagraph ::subparagraph::
+
+All sectioning commands take the same general form, i.e.,
+
+ \chapter[optional]{title}
+
+In addition to providing the heading in the text, the
+mandatory argument of the sectioning command can appear in
+two other places:
+
+ 1. The table of contents
+ 2. The running head at the top of the page
+
+You may not want the same thing to appear in these other
+two places as appears in the text heading. To handle this
+situation, the sectioning commands have an optional
+argument that provides the text for these other two
+purposes.
+
+All sectioning commands have *-forms that print a title,
+but do not include a number and do not make an entry in the
+table of contents.
+############################################################
+ \appendix ::appendix::
+############################################################
+The \appendix command changes the way sectional units are
+numbered. The \appendix command generates no text and does
+not affect the numbering of parts.
+
+The normal use of this command is something like
+
+\chapter{The First Chapter}
+...
+\appendix
+\chapter{The First Appendix}
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Spaces.txt,v b/support/tcltexed/hlp/bre/RCS/Spaces.txt,v
new file mode 100644
index 0000000000..30fc6ed246
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Spaces.txt,v
@@ -0,0 +1,264 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Spaces & Boxes
+############################################################
+
+All the predefined length parameters See section Predefined
+lengths can be used in the arguments of the box-making
+commands.
+
+Horizontal space
+
+ \dotfill: Stretchable horizontal dots.
+ \hfill: Stretchable horizontal space.
+ \hrulefill: Stretchable horizontal rule.
+ \hspace: Fixed horizontal space. Vertical space
+ \addvspace: Fixed vertical space.
+ \bigskip: Fixed vertical space.
+ \medskip: Fixed vertical space.
+ \smallskip: Fixed vertical space.
+ \vfill: Stretchable vertical space.
+ \vspace: Fixed vertical space. Boxes
+ \fbox: Framebox.
+ \framebox: Framebox, adjustable position.
+ lrbox: An environment like \sbox.
+ \makebox: Box, adjustable position.
+ \mbox: Box.
+ \newsavebox: Declare a name for saving a box.
+ \parbox: Box with text in paragraph mode.
+ \raisebox: Raise or lower text.
+ \rule: Lines and squares.
+ \savebox: Like \makebox, but save the text for later use.
+ \sbox: Like \mbox, but save the text for later use.
+ \usebox: Print saved text.
+
+############################################################
+ \dotfill ::dotfill::
+############################################################
+The \dotfill command produces a "rubber length" that produces
+dots instead of just spaces.
+############################################################
+ \hfill ::hfill::
+############################################################
+The \hfill fill command produces a "rubber length" which can
+stretch or shrink horizontally. It will be filled with spaces.
+############################################################
+ \hrulefill ::hrulefill::
+############################################################
+The \hrulefill fill command produces a "rubber length" which
+can stretch or shrink horizontally. It will be filled with a
+horizontal rule.
+############################################################
+ \hspace ::hspace::
+############################################################
+\hspace[*]{length}
+The \hspace command adds horizontal space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \hspace command. Adding negative space
+is like backspacing.
+
+LaTeX removes horizontal space that comes at the end of a
+line. If you don't want LaTeX to remove this space, include
+the optional * argument. Then the space is never removed.
+############################################################
+ \addvspace ::addvspace::
+############################################################
+\addvspace{length}
+The \addvspace command normally adds a vertical space of
+height length. However, if vertical space has already been
+added to the same point in the output by a previous \addvspace
+command, then this command will not add more space than
+needed to make the natural length of the total vertical space
+equal to length.
+############################################################
+ \bigskip ::bigskip::
+############################################################
+The \bigskip command is equivalent to \vspace{bigskipamount}
+where bigskipamount is determined by the document class.
+############################################################
+ \medskip ::medskip::
+############################################################
+The \medskip command is equivalent to \vspace{medskipamount}
+where medskipamount is determined by the document class.
+############################################################
+ \smallskip ::smallskip::
+############################################################
+\smallskip
+The \smallskip command is equivalent to \vspace{smallskipamount}
+where smallskipamount is determined by the document class.
+############################################################
+ \vfill ::vfill::
+############################################################
+The \vfill fill command produces a rubber length which can
+stretch or shrink vertically.
+############################################################
+ \vspace ::vspace::
+############################################################
+\vspace[*]{length}
+The \vspace command adds vertical space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \vspace command.
+
+LaTeX removes vertical space that comes at the end of a page.
+If you don't want LaTeX to remove this space, include the
+optional * argument. Then the space is never removed.
+############################################################
+ \fbox ::fbox::
+############################################################
+\fbox{text}
+The \fbox command is exactly the same as the \mbox command,
+except that it puts a frame around the outside of the box
+that it creates.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox[width][position]{text}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the
+contents of the box.
+############################################################
+ lrbox ::lrbox::
+############################################################
+\begin{lrbox}{cmd} text \end{lrbox}
+This is the environment form of \sbox.
+The text inside the environment is saved in the box cmd,
+which must have been declared with \newsavebox.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox[width][position]{text}
+The \makebox command creates a box just wide enough to contain
+the text specified. The width of the box is specified by the
+optional width argument. The position of the text within the
+box is determined by the optional position argument.
+
+ c -- centred (default)
+ l -- flushleft
+ r -- flushright
+ s -- stretch from left to right margin. The text must
+ contain stretchable space for this to work.
+
+See section \makebox.
+############################################################
+ \mbox ::mbox::
+############################################################
+\mbox{text}
+The \mbox command creates a box just wide enough to hold the
+text created by its argument.
+Use this command to prevent text from being split across lines.
+############################################################
+ \newsavebox ::newsavebox::
+############################################################
+\newsavebox{cmd}
+Declares cmd, which must be a command name that is not already
+defined, to be a bin for saving boxes.
+############################################################
+ \parbox ::parbox::
+############################################################
+\parbox[position][height][inner-pos]{width}{text}
+A parbox is a box whose contents are created in paragraph
+mode. The \parbox has two mandatory arguments:
+
+ width - specifies the width of the parbox, and
+ text - the text that goes inside the parbox.
+
+LaTeX will position a parbox so its centre lines up with the
+centre of the text line. The optional position argument allows
+you to line up either the top or bottom line in the parbox
+(default is top). If the height argument is not given, the
+box will have the natural height of the text.
+
+The inner-pos argument controls the placement of the text
+inside the box. If it is not specified, position is used.
+
+ t -- text is placed at the top of the box.
+ c -- text is centred in the box.
+ b -- text is placed at the bottom of the box.
+ s -- stretch vertically. The text must contain
+ vertically stretchable space for this to work.
+
+A \parbox command is used for a parbox containing a small piece
+of text, with nothing fancy inside. In particular, you shouldn't
+use any of the paragraph-making environments inside a \parbox
+argument. For larger pieces of text, including ones containing
+a paragraph-making environment, you should use a minipage
+environment
+See section minipage.
+############################################################
+ \raisebox ::raisebox::
+############################################################
+\raisebox{distance}[extend-above][extend-below]{text}
+The \raisebox command is used to raise or lower text. The
+first mandatory argument specifies how high the text is to
+be raised (or lowered if it is a negative amount). The text
+itself is processed in LR mode.
+
+Sometimes it's useful to make LaTeX think something has a
+different size than it really does - or a different size
+than LaTeX would normally think it has. The \raisebox
+command lets you tell LaTeX how tall it is. The first
+optional argument, extend-above, makes LaTeX think that the
+text extends above the line by the amount specified. The
+second optional argument, extend-below, makes LaTeX think
+that the text extends below the line by the amount specified.
+############################################################
+ \rule ::rule::
+############################################################
+\rule[raise-height]{width}{thickness}
+The \rule command is used to produce horizontal lines. The
+arguments are defined as follows:
+
+ raise-height - specifies how high to raise the rule
+ (optional)
+ width - specifies the length of the rule (mandatory)
+ thickness - specifies the thickness of the rule
+ (mandatory)
+
+############################################################
+ \savebox ::savebox::
+############################################################
+\savebox{cmd}[width][pos]{text}
+This command typeset text in a box just as for \makebox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \sbox ::sbox::
+############################################################
+\sbox{text}
+This commands typeset text in a box just as for \mbox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \usebox ::usebox::
+############################################################
+\usebox{cmd}
+Prints the box most recently saved in bin cmd by a \savebox
+command.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Starting.txt,v b/support/tcltexed/hlp/bre/RCS/Starting.txt,v
new file mode 100644
index 0000000000..ca09d87751
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Starting.txt,v
@@ -0,0 +1,46 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Starting & Ending ::document::
+############################################################
+
+Your input file must contain the following commands as a
+minimum:
+
+ \documentclass{class}
+ \begin{document}
+ ... your text goes here ...
+ \end{document}
+
+where the class selected is one of the valid classes for
+LaTeX. See section
+
+Document Classes (and see section Overview of LaTeX and
+Local Guide), for details of the various document classes
+available locally.
+
+You may include other LaTeX commands between the
+\documentclass and the \begin{document} commands (i.e., in
+the `preamble').
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Styles.txt,v b/support/tcltexed/hlp/bre/RCS/Styles.txt,v
new file mode 100644
index 0000000000..9fc42f66e9
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Styles.txt,v
@@ -0,0 +1,140 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Page Styles
+############################################################
+
+The \documentclass command determines the size and position
+of the page's head and foot. The page style determines what
+goes in them.
+
+ \maketitle: Generate a title page.
+ \pagenumbering: Set the style used for page numbers.
+ \pagestyle: Change the headings/footings style.
+ \thispagestyle: Change the headings/footings style for
+ this page.
+
+############################################################
+ \maketitle ::maketitle::
+############################################################
+\maketitle
+The \maketitle command generates a title on a separate title
+page - except in the article class, where the title normally
+goes at the top of the first page.
+Information used to produce the title is obtained from the
+following declarations:
+
+See section Page Styles for the commands to give the information.
+
+ \author: Who wrote this stuff?
+ \date: The date the document was created.
+ \thanks: A special form of footnote.
+ \title: How to set the document title.
+
+############################################################
+ \author ::author::
+############################################################
+\author{names}
+The \author command declares the author(s), where names is a
+list of authors separated by \and commands. Use \\ to separate
+lines within a single author's entry -- for example, to give
+the author's institution or address.
+############################################################
+ \date ::date::
+############################################################
+\date{text}
+The \date command declares text to be the document's date.
+With no \date command, the current date is used.
+############################################################
+ \thanks ::thanks::
+############################################################
+\thanks{text}
+The \thanks command produces a \footnote to the title.
+############################################################
+ \title ::title::
+############################################################
+\title{text}
+The \title command declares text to be the title. Use \\ to
+tell LaTeX where to start a new line in a long title.
+############################################################
+ \pagenumbering ::pagenumbering::
+############################################################
+\pagenumbering{num_style}
+Specifies the style of page numbers. Possible values of
+num_style are:
+
+ arabic - Arabic numerals
+ roman - Lowercase Roman numerals
+ Roman - Uppercase Roman numerals
+ alph - Lowercase letters
+ Alph - Uppercase letters
+
+############################################################
+ \pagestyle ::pagestyle::
+############################################################
+\pagestyle{option}
+The \pagestyle command changes the style from the current
+page on throughout the remainder of your document.
+The valid options are:
+
+ plain - Just a plain page number.
+ empty - Produces empty heads and feet - no page numbers.
+ headings - Puts running headings on each page. The
+ document style specifies what goes in the headings.
+ myheadings - You specify what is to go in the heading
+ with the \markboth or the \markright commands.
+
+ \markboth: Set left and right headings.
+ \markright: Set right heading only.
+
+############################################################
+ \markboth ::markboth::
+############################################################
+\markboth{left head}{right head}
+The \markboth command is used in conjunction with the page
+style myheadings for setting both the left and the right
+heading. You should note that a "left-hand heading" is
+generated by the last \markboth command before the end of
+the page, while a "right-hand heading" is generated by the
+first \markboth or \markright that comes on the page if
+there is one, otherwise by the last one before the page.
+############################################################
+ \markright ::markright::
+############################################################
+\markright{right head}
+The \markright command is used in conjunction with the page
+style myheadings for setting the right heading, leaving the
+left heading unchanged. You should note that a "left-hand
+heading" is generated by the last \markboth command before
+the end of the page, while a "right-hand heading" is generated
+by the first \markboth or \markright that comes on the page
+if there is one, otherwise by the last one before the page.
+############################################################
+ \thispagestyle ::thispagestyle::
+############################################################
+\thispagestyle{option}
+The \thispagestyle command works in the same manner as the
+\pagestyle command except that it changes the style for the
+current page only.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Terminal.txt,v b/support/tcltexed/hlp/bre/RCS/Terminal.txt,v
new file mode 100644
index 0000000000..c0b6eb3ae7
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Terminal.txt,v
@@ -0,0 +1,54 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Terminal Input/Output
+############################################################
+
+ \typein: Read text from the terminal.
+ \typeout: Write text to the terminal.
+
+############################################################
+ \typein ::typein::
+############################################################
+\typein[cmd]{msg}
+Prints msg on the terminal and causes LaTeX to stop and wait
+for you to type a line of input, ending with return. If the
+cmd argument is missing, the typed input is processed as if
+it had been included in the input file in place of the
+\typein command. If the cmd argument is present, it must be
+a command name. This command name is then defined or redefined
+to be the typed input.
+############################################################
+ \typeout ::typeout::
+############################################################
+\typeout{msg}
+Prints msg on the terminal and in the log file. Commands in
+msg that are defined with \newcommand or \renewcommand are
+replaced by their definitions before being printed.
+
+LaTeX's usual rules for treating multiple spaces as a single
+space and ignoring spaces after a command name apply to msg.
+A \space command in msg causes a single space to be printed.
+A ^^J in msg prints a newline.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/Typefaces.txt,v b/support/tcltexed/hlp/bre/RCS/Typefaces.txt,v
new file mode 100644
index 0000000000..25179a894d
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/Typefaces.txt,v
@@ -0,0 +1,172 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Typefaces
+############################################################
+
+The typeface is specified by giving the "size" and "style".
+A typeface is also called a "font".
+
+ Styles: Select roman, italics etc.
+ Sizes: Select point size.
+ Low-level font commands: Commands for wizards.
+
+############################################################
+ Styles
+############################################################
+The following type style commands are supported by LaTeX.
+These commands are used like \textit{italics text}. The
+corresponding command in parenthesis is the "declaration form",
+which takes no arguments. The scope of the declaration form
+lasts until the next type style command or the end of the
+current group.
+
+The declaration forms are cumulative; i.e., you can say
+\sffamily\bfseries to get sans serif boldface.
+
+You can also use the environment form of the declaration
+forms; e.g. \begin{ttfamily}...\end{ttfamily}.
+
+ \textrm (\rmfamily) ::textrm::rmfamily::
+Roman.
+ \textit (\itshape) ::textit::itshape::
+ \emph ::emph::
+Emphasis (toggles between \textit and \textrm).
+ \textmd (\mdseries) ::textmd::mdseries::
+Medium weight (default). The opposite of boldface.
+ \textbf (\bfseries) ::textbf::bfseries::
+Boldface.
+ \textup (\upshape) ::textup::upshape::
+Upright (default). The opposite of slanted.
+ \textsl (\slshape) ::textsl::slshape::
+Slanted.
+ \textsf (\sffamily) ::textsf::sffamily::
+Sans serif.
+ \textsc (\scshape) ::textsc::scshape::
+Small caps.
+ \texttt (\ttfamily) ::texttt::ttfamily::
+Typewriter.
+ \textnormal (\normalfont) ::textnormal::normalfont::
+Main document font.
+ \mathrm ::mathrm::
+Roman, for use in math mode.
+ \mathbf ::mathbf::
+Boldface, for use in math mode.
+ \mathsf ::mathsf::
+Sans serif, for use in math mode.
+ \mathtt ::mathtt::
+Typewriter, for use in math mode.
+ \mathit ::mathit::
+Italics, for use in math mode, e.g. variable names
+with several letters.
+ \mathnormal ::mathnormal::
+For use in math mode, e.g. inside another type style
+declaration.
+ \mathcal ::mathcal::
+`Calligraphic' letters, for use in math mode.
+::mathversion::
+In addition, the command \mathversion{bold} can be used for
+switching to bold letters and symbols in formulas.
+\mathversion{normal} restores the default.
+
+############################################################
+ Sizes
+############################################################
+The following standard type size commands are supported by
+LaTeX. The commands as listed here are "declaration forms".
+The scope of the declaration form lasts until the next type
+style command or the end of the current group.
+
+You can also use the environment form of these commands; e.g.
+\begin{tiny}...\end{tiny}.
+
+ \tiny ::tiny::
+ \scriptsize ::scriptsize::
+ \footnotesize ::footnotesize::
+ \small ::small::
+ \normalsize (default) ::normalsize::
+ \large ::large::
+ \Large ::Large::
+ \LARGE ::LARGE::
+ \huge ::huge::
+ \Huge ::Huge::
+
+############################################################
+ Low-level font commands
+############################################################
+These commands are primarily intended for writers of macros
+and packages. The commands listed here are only a subset of
+the available ones. For full details, you should consult
+Chapter 7 of The LaTeX Companion.
+
+ \fontencoding{enc} ::fontencoding::
+
+Select font encoding. Valid encodings include OT1 and T1.
+
+ \fontfamily{family} ::fontfamily::
+
+Select font family. Valid families include:
+ cmr for Computer Modern Roman
+ cmss for Computer Modern Sans Serif
+ cmtt for Computer Modern Typewriter
+and numerous others.
+
+ \fontseries{series} ::fontseries::
+
+Select font series. Valid series include:
+ m Medium (normal)
+ b Bold
+ c Condensed
+ bc Bold condensed
+ bx Bold extended
+and various other combinations.
+
+ \fontshape{shape} ::fontshape::
+
+Select font shape. Valid shapes are:
+ n Upright (normal)
+ it Italic
+ sl Slanted (oblique)
+ sc Small caps
+ ui Upright italics
+ ol Outline
+The two last shapes are not available for most font families.
+
+ \fontsize{size}{skip} ::fontsize::
+
+Set font size. The first parameter is the font size to
+switch to; the second is the \baselineskip to use. The unit
+of both parameters defaults to pt. A rule of thumb is that
+the baselineskip should be 1.2 times the font size.
+
+ \selectfont ::selectfont::
+
+The changes made by calling the four font commands described
+above do not come into effect until \selectfont is called.
+
+ \usefont{enc}{family}{series}{shape} ::usefont::
+
+Equivalent to calling \fontencoding, \fontfamily, \fontseries
+and \fontshape with the given parameters, followed by \selectfont.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/amscd.txt,v b/support/tcltexed/hlp/bre/RCS/amscd.txt,v
new file mode 100644
index 0000000000..d47d278659
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/amscd.txt,v
@@ -0,0 +1,64 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amscd.
+\usepackage{amscd} ::amscd::
+
+#################################################################
+diagrams ::CD::
+#################################################################
+subenviroment :
+CD
+example :
+\begin{CD}
+ A @@>>> B @@>>> C
+ D @@AAA E @@VVV F
+ G @@= H @@<<< I
+\end{CD}
+
+enviroment for diagrams
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@>textabove>textbelow>
+
+arrow to the right with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@<textabove<textbelow<
+
+arrow to the left with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@AtextleftAtextrightA
+
+arrow up with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@VtextleftVtextrightV
+
+arrow down with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@=
+
+equal symbol instead of an arrow
+@
diff --git a/support/tcltexed/hlp/bre/RCS/amsfonts.txt,v b/support/tcltexed/hlp/bre/RCS/amsfonts.txt,v
new file mode 100644
index 0000000000..7866cf81ba
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/amsfonts.txt,v
@@ -0,0 +1,45 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsfonts.
+\usepackage{amsfonts} ::amsfonts::
+
+#################################################################
+fonts
+#################################################################
+\mathbb{text} ::mathbb::
+
+supplies text as mathematical field letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\mathfrak{text} ::mathfrak::
+
+supplies text as fracture letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boldsymbol{symbol} ::boldsymbol::
+
+supplies a bold variant of symbol
+@
diff --git a/support/tcltexed/hlp/bre/RCS/amsmath.txt,v b/support/tcltexed/hlp/bre/RCS/amsmath.txt,v
new file mode 100644
index 0000000000..0b3aaa61f6
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/amsmath.txt,v
@@ -0,0 +1,155 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsmath.
+\usepackage{amsmath} ::amsmath::
+
+#################################################################
+mathematical subenviroments
+#################################################################
+Subenviroments must be invoked within a mathmatical enviroment.
+for example :
+\[\begin{split} ... \end{split}\]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : split ::split::
+\[\begin{split}
+ a&=b\\
+ c&=d
+\end{split}\]
+
+allows multible formulas with only one number.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : multline ::multline::
+\begin{multine}
+ a+b+c\\
+ +d+e
+\end{multine}
+
+for breaking one formula into several lines with only one number
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : gather ::gather::
+\begin{gather}
+ a+b+c\\
+ +d+e
+\end{gather}
+
+
+a group of formulas
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : align ::align::
+\begin{align}
+ a&=b & c&=d \\
+ e&=f & g&=h \\
+ \intertext{and}
+ i&=j & k&=l
+\end{align}
+
+an array of formulas
+-----------------------------------------------------------------
+\intertext{text} ::intertext::
+
+allows normal textoutput within this mathmatical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : subequation ::subequation::
+
+mainnumbering gets an additional subnumbering with small letters
+\label{} does not distinguish between subnumbers
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : ?matrix
+::matrix::pmatrix::bmatrix::vmatrix::Vmatrix::
+\[\begin{matrix}
+ 1 & 2 & 3 & a \\
+ 4 & 5 & 6 & b \\
+ 7 & 8 & 9 & c
+\end{matrix}\]
+
+produces a matrix
+matrix : without brackets
+pmatrik : with round brackets
+bmatrix : with angular brackets
+vmatrix : with vertical lines
+Vmatrix : with doubled vertical lines
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : cases ::cases::
+\[sgn(x)=\begin{cases}
+ -1 & \forall\ x<0 \\
+ 0 & x=0 \\
+ 1 & \forall\ x>0
+\end{cases}\]
+
+for "Cases" constructions
+#################################################################
+Sonstige Hilfen
+#################################################################
+size of brackets :
+\bigl \bigr little bit larger ::bigl::bigr::
+\Bigl \Bigr faktor 1.5 ::Bigl::Bigr::
+\biggl \biggr faktor 2 ::biggl::biggr::
+\Biggl \Biggr faktor 2.5 ::Biggl::Biggr::
+left right of the formula
+
+behind this should follow one of these bracket forms "(" "|" "[" ... "]" ")"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\substack{ \\ ...\\ \text{Hi} ... \\ } ::substack::
+example :
+\sum_\substack{i=0\\j=1}^\substack{10\\100}
+
+Pushes several lines of indices above or below.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\text{text} ::text::
+
+text within a mathematical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sideset{}{} ::sideset::
+example :
+\sideset{^1_2}{^3_4}\sum
+
+sets indices at the corners ..
+left above 1, left below 2, right above 3 and right below 4
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+xleftarrow{above} ::xleftarrow::xrightarrow::
+xleftarrow[below]{above}
+xrightarrow{above}
+xrightarrow[below]{above}
+
+
+An arrow which adapting the necessary length for displaying a text
+above itself and optionaly below, too.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boxed{formula} ::boxed::
+
+formula with a frame
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareMathOperator{latex-command}{output}
+\DeclareMathOperator*{latex-command}{output}
+::DeclareMathOperator::
+
+
+Allows the declaration of own new mathematical functions like
+ \sin \cos etc.
+* makes it display indices like \lim with in math enviroment.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/amssymb.txt,v b/support/tcltexed/hlp/bre/RCS/amssymb.txt,v
new file mode 100644
index 0000000000..11accc23d8
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/amssymb.txt,v
@@ -0,0 +1,32 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#########################################################
+\usepackage{amssymb} ::amssymb::
+#########################################################
+One symbol out of many supplied by the package amssymb.
+#########################################################
+One of the many symbols for which I didn't create a
+picture, because it would have been an endless work
+and boring, too. (mys)
+#########################################################@
diff --git a/support/tcltexed/hlp/bre/RCS/amsthm.txt,v b/support/tcltexed/hlp/bre/RCS/amsthm.txt,v
new file mode 100644
index 0000000000..3444018ad0
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/amsthm.txt,v
@@ -0,0 +1,61 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsthm.
+\usepackage{amsthm} ::amsmath::
+
+#################################################################
+Erstellen von Theoremen ::newtheorem::
+#################################################################
+
+\newtheorem{latex-synonym}{name}
+\newtheorem*{latex-synonym}{name}
+\newtheorem*{latex-synonym}[latex-synonym2]{name}
+\newtheorem*{latex-synonym}{name}[section]
+
+Defines a new enviroment latex-synonym which is numbered as
+theorem with name "name" (f.e. axiom).
+\begin{latex-synonym}
+ bla
+\end{latex-synonym}
+for useing the new theorem
+
+* subdues the numbering.
+latex-synonym2 : uses the counter from this theorem
+section : an incretion of this counter would set the
+theorem counter to the value null
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\theoremstyle{style} ::theoremstyle::
+
+style :
+ plain (default)
+ definition
+ remark
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\swapnumbers ::swapnumbers::
+
+numbering on the left side of the theorem@
diff --git a/support/tcltexed/hlp/bre/RCS/copyright_hlp.txt,v b/support/tcltexed/hlp/bre/RCS/copyright_hlp.txt,v
new file mode 100644
index 0000000000..489fe6ce70
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/copyright_hlp.txt,v
@@ -0,0 +1,43 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+::copyright_hlp::
+A plaintexteditor for LaTeX based on scriptlanguage tcl/tk (8.x)
+
+Copyright (C) 1999 Martin Strauss
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/editor_hlp.txt,v b/support/tcltexed/hlp/bre/RCS/editor_hlp.txt,v
new file mode 100644
index 0000000000..9f994b3e3f
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/editor_hlp.txt,v
@@ -0,0 +1,226 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.22.33.43; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@############################################################
+#::editor_hlp::
+# The Editorwindow
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+What's an Editorwindow ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+For me a editorwindow is a window where I am able to work on
+a text under Tcltexed. Each editorwindow is assigned to one
+text. Two attributs ar important several editorwindows exist:
+ the focus
+ and the marking of one of them to be the maindocument
+-----
+The focus ownes the editorwindow, which was at last in the
+forground. All actions outside of the editorwindows opened
+will effect only the one having the focus. An Example for
+actions may be "text searching". One way to give one
+editorwindow the focus is by mousebuttons.
+-----
+If you have made on editorwindow a maindocument, all calls
+for extern programms like latex, xdvi, dvips and ghostview
+are directed to this document. In this case only the document
+of the maindocument gets compiled, so it should be executable
+for latex, while the others don't need to. If no editorwindow
+is declared to be the maindocument, each editorwindow
+behaves as if it is the only one.
+-----
+The window consists of the following components :
+ a menubar / popupbar (Only Windows)
+ a buttonbar
+ and an input field.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+usage of the buttonbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+From left to right :
+a "picture", Save, Save As, latex, xdvi, dvips, ghostview, ispell, Syntax, Quit
+and last but not least a display "L.C. ?.?"
+-----
+ "picture"
+The picture shows you the attributes of the editorwindow.
+If it has the focus it you see a picture of some circular waves.
+If it is colored (yellow/red) it is marked to be the maindocument.
+You can make an editorwindow a maindocument by mouse click
+on the picture. A second click removes the attribute to be
+a maindocument.
+-----
+ Save
+You know this, simply save this document in a file assignend
+to the editorwindow. If there is no file assigned "Save As"
+is executed instead.
+-----
+ Save As
+Save a document into a file you choose and assign
+it the actual editorwindow.
+-----
+ latex
+Executes "Save" for this editorwindow. Only it's document get's saved.
+Then the program latex is executed with the assigned file.
+If a maindocument exists as defined above the file assigned to
+it is executed instead. latex produces the file with extention dvi,
+the error output of latex is piped into the helpwindow of Tcltexed.
+(if there accures an error under unix you must stop latex
+by pressing "q" and "RETURN")
+To make it easier to create an index, with the latex-commands
+\makeindex \index etc. the program makeindex is started automaticly
+if a suiting filename with extension idx exists.
+-----
+ xdvi
+Executes xdvi (or an other viewer) for to view the last latex outputfile.
+Normaly the viewers reload the actual document if you produce
+a new dvi file, so you have to start this only on time.
+-----
+ dvips
+Makes a output for ghostscript printer out of the dvi file.
+The output will be saved into a file with extension ps.
+-----
+ ghostview
+Executes ghostview a viewer for ghostscript files with the last
+dvips outputfile.
+-----
+ ispell
+Executes "Save" for this editorwindow. Only it's document get's saved.
+Then ispell an interactive spell checker is executed and it's output
+reloaded into the editorwindow.
+-----
+ Syntax
+Syntax Highlightning, all textarrays starting with \ are supposed
+to be LaTeX-commands.
+If this command is known it's letters gets green, if not red.
+But be carefull, it doesn't look after the number of brackets behind
+the command. (latex will do that for you !)
+If it's text to be ignored (starting with %), the text get blue.
+For many green marked commands exists a short description.
+-----
+ Quit
+Close this editorwindow. If modified it request's if it realy
+should do so without saving before.
+-----
+ Display
+Shows you the position of the curser (line and row).
+One "line" is here defined as a number of letters follewd
+by a "RETURN", not as the number of real lines displayed by the
+editorwindow.
+If you press this Button, a window opens, with which you can
+change the position of the curser manualy by numbers.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Usage of th menubar / popupbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The menubar exists only if you use Windows and tcl/tk 8.x.
+Menubar and popupbar implement the same functions.
+Pressing the right mousebutton opens the popupbar.
+From top to bottom listed (left to right) :
+Undo, Cut, Copy, Paste, Clear, Block, + % und - %.
+-----
+ Undo
+For to undo most of your last actions within the text. (I hopfully
+think so) In lack of infinity memory recources you can't undo
+everything.
+-----
+ Cut, Copy, Paste, Clear
+Bearbeitet den mit Maus selektierten Bereich, ratet mal was da
+passiert ... . Die Aktionen sind Windows und X-Window kompatibel.
+(theoretisch)
+-----
+ Spell
+Marks all not right spelled words in your text with a red color.
+-----
+ Nearly
+Takes the word which the curser is within and displays a list of
+words which nearly match this word.
+-----
+ Block
+Makes out of the selected aria a "Block - aria" ala Borland.
+-----
+ + %
+Inserts at the beginning of each selected line %, but only
+if there doesn't exist one.
+-> easy way to mark lines for latex to be ignored
+-----
+ - %
+The other way around as "+ %".
+-----
+ ...
+Looks for LaTeX-command matching with letters between
+the last "\" and the curser.
+Only commands marked under "Options -> packages"
+are listed here.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Usage of the inputfield
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Hey that's the part each editor has, don't ask silly questions.
+(look for Editor-keymap for some key combinations)
+-----
+ Spelling
+If you wanna register a word as right spelled, you have to set
+the curser on it and make a double click on the left button of
+your mouse.
+-----
+Examples for automatical complition of LaTeX-commands
+\fra ---> \frac{}{}
+\enumerate --->
+ \begin{enumerate}
+ \item
+ \end{enumerate}
+Compiltion of brackets
+{ ---> {}
+$ ---> $$
+-----
+For \begin and \end the name of the enviroment will be inserted
+as below :
+\beg --->
+ \begin{}
+ \end{}
+\bege --->
+ \begin{e}
+ \end{e}
+\begenum --->
+ \begin{enum}
+ \end{enum}
+-----
+If some text is selected by mouse and you press "\"
+than gets this not deleted as usualy done, but gets
+some brackets inserted around the selected text.
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d38 1
+a38 1
+a "picture", Save, Save As, latex, xdvi, dvips, ghostview, Syntax, Quit
+d82 5
+@
+
diff --git a/support/tcltexed/hlp/bre/RCS/editort_hlp.txt,v b/support/tcltexed/hlp/bre/RCS/editort_hlp.txt,v
new file mode 100644
index 0000000000..0361a6066f
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/editort_hlp.txt,v
@@ -0,0 +1,133 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+#::editort_hlp::
+# keyboardmap for editorwindows
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+key bindings from Borland etc :
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block
+ <Control-k><b> Block Begin
+ <Control-k><k> Block End
+ <Control-k><c> Block Copy
+ <Control-k><m> Block Move
+ <Control-k><v> Block Move
+ <Control-k><y> Block Remove
+ <Control-k><%> Block (=> latex ignores this lines)
+ <Control-k><space> Block (opposite of binding above)
+more
+ <F1> Help
+ <F2> Save
+ <F3> Open file
+ <F4> Goto Curser
+ <F9> Excute latex
+ <Control-k><x> Save
+ <Control-k><h> Help
+ <Control-y> remove line
+ <Alt-BackSpace> Undo
+ <Shift-Delete> Cut
+ <Control-Insert> Copy
+ <Shift-Insert> Paste
+ <Control-Delete> Clear
+ <Control-l> Search again
+ <Alt-x> total termination of tcltexed
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Some from me :
+ <Control-w> Listing of all possible complitions
+ of a LaTeX-Command.
+ <Control-d> If the curser is within a known LaTeX-command,
+ tcltexed will search for the next occurrence of the command
+ within the text. If the curser is not within a known
+ LaTeX-command tcltexed will search for the next occurence of
+ \section
+ <Control-u> The same as <Control-d> but tcltexed will search backwards.
+ <Control-b> line breaking for a section
+ <Alt-b> line breaking for current line
+ <Control-B> opposite of <Control-b>
+ <Alt-B> opposite of <Alt-b>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block, Selection and Clipboard are normaly independent :
+ <Control-k><p> Insert from Clipboard
+ <Control-k><g> Copy to Clipboard
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Windows - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Press right mousebutton to open a menu with following entries
+ Cut Cut selected into Clipboard
+ Copy Copy selected into Clipboard
+ Paste insert text from Clipboard
+ Clear Remove selected
+ Block Make selected to Block
+ + % Make text to be ignored by latex
+ - % opposite of above
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Motif - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Press left mousebutton
+ one time Undo selection
+ twice Select whole word
+ trible Select whole line
+ Shift-einfach Change aria of selection
+ Shift-zweifach Complete selection aria to whole words
+ Shift-dreifach Complete selection aria to whole lines
+ Control Change curser position without losing the selection
+Curserkeys (CT)
+ <Shift-CT> Select aria (letters/lines)
+ <Control-CT> Shift Curser in steps
+ <Shift-Control-CT> Select aria (word/paragraph)
+[Up,Down] page up down (ST)
+ <Shift-ST> Select aria (pages)
+[Home,End] line start end (ZT)
+ <Shift-ZT> Select aria (until linestart/-end)
+ <Control-ZT> Shift curser to documentbegin/-end
+ <Shift-Control-ZT> Select aria (until documentbegin/-end)
+sonstige
+ <Shift-slash> Select whole document
+ <Insert> Insert selection
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+emacs-like
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ <Control-a> = Home
+ <Control-b> = Left
+ <Control-d> = Delete
+ <Control-e> = End
+ <Control-f> = Right
+ (<Control-k> other binding)
+ <Control-n> = Up
+ <Control-o> = Return+Left
+ <Control-p> = Down
+ <Control-t>
+ <Control-v> = Page up
+ <Meta-b>
+ <Meta-d>
+ <Meta-f>
+ <Meta-less> Shift Curser to text begin
+ <Meta-greater> Shift Curser to text begin
+ <Meta-Backspace>
+ <Meta-Delete>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@
diff --git a/support/tcltexed/hlp/bre/RCS/epsf.txt,v b/support/tcltexed/hlp/bre/RCS/epsf.txt,v
new file mode 100644
index 0000000000..78fe5fb0ec
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/epsf.txt,v
@@ -0,0 +1,36 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+package epsf
+############################################################
+\usepackage{epsf} ::epsf::
+\epsfxsize ::epsfxsize::
+\epsfbox{} ::epsfbox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I don't now how these commands work, you could include
+eps-pictures into your document.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I personaly use the latex2e package graphicx for that
+and it works quite fine.
+@
diff --git a/support/tcltexed/hlp/bre/RCS/gpl_hlp.txt,v b/support/tcltexed/hlp/bre/RCS/gpl_hlp.txt,v
new file mode 100644
index 0000000000..d630439995
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/gpl_hlp.txt,v
@@ -0,0 +1,449 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@GNU General Public License - GNU Project - Free Software Foundation (FSF)
+::gpl_hlp::
+Table of Contents
+
+GNU GENERAL PUBLIC LICENSE
+
+Preamble
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+How to Apply These Terms to Your New Programs
+
+GNU GENERAL PUBLIC LICENSE | Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0.
+ This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+
+1.
+ You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+
+2.
+ You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+
+2.a)
+ You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+
+2.b)
+ You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+
+2.c)
+ If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+
+3.
+ You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+
+3.a)
+ Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+
+3.b)
+ Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+
+3.c)
+ Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+
+4.
+ You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+
+5.
+ You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+
+6.
+ Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+
+7.
+ If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+
+8.
+ If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+
+9.
+ The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+
+10.
+ If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+NO WARRANTY
+
+
+11.
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+
+12.
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+
+END OF TERMS AND CONDITIONS
+
+
+
+How to Apply These Terms to Your New Programs
+
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+- one line to give the program's name and an idea of what it does. -
+Copyright (C) 19xx - name of author -
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+Gnomovision version 69, Copyright (C) 19xx - name of author -
+Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
+type `show w'. This is free software, and you are welcome
+to redistribute it under certain conditions; type `show c'
+for details.
+
+
+
+The hypothetical commands `show w' and `show c' should show
+the appropriate parts of the General Public License. Of course, the
+commands you use may be called something other than `show w' and
+`show c'; they could even be mouse-clicks or menu items--whatever
+suits your program.
+
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+
+Yoyodyne, Inc., hereby disclaims all copyright
+interest in the program `Gnomovision'
+(which makes passes at compilers) written
+by James Hacker.
+
+signature of Ty Coon, 1 April 1989
+Ty Coon, President of Vice
+
+
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
+
+
+
+A copy of
+http://www.gnu.org/copyleft/gpl.html
+
+GNU's home page
+http://www.gnu.org/home.html
+
+FSF &amp; GNU inquiries &amp; questions to
+gnu@@gnu.org"
+Other ways to contact
+http://www.gnu.org/home.html#ContactInfo
+
+Copyright notice above.
+Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111, USA
+
+Updated:
+16 Feb 1998 tower
+@
diff --git a/support/tcltexed/hlp/bre/RCS/readme_hlp.txt,v b/support/tcltexed/hlp/bre/RCS/readme_hlp.txt,v
new file mode 100644
index 0000000000..a653cf3b03
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/readme_hlp.txt,v
@@ -0,0 +1,69 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@ Tcltexed a LaTeX-Editor
+
+ !!! Take care, this program is under construction !!!!
+ In the meantime I have worked a lot with this program
+ but should you still find some errors, please contact me.
+ The easiest way is by email : mys@@faveve.uni-stuttgart.de
+
+ Short introduction :
+ A description of the program as a whole can be found under
+ "Help" - "Tcltexed".
+ It is always useful to try to press <F1>.
+ For all LaTeX-commands (I know) there exists a short description,
+ but I have only translated half of them so far.
+ The keymap is motif-like, emacs-like and joe-like (as in Borland Pascal).
+ Additionally some key-shortcuts of my own exist.
+ If you open an editor window, you will find a tiny picure in the upper
+ left hand corner. If it is coloured (click on it with mouse) this
+ window is marked as the main document.
+ If you click on a picture in the mathematics collection the
+ corresponding LaTeX-command will be inserted in the currently active
+ editor window. (The window where the picture (top left) shows some
+ circular waves)
+ If you insert a LaTeX-command tcltexed tries to complete this command.
+ (i.e. \G could only be \Gamma)
+ If you don't find that useful you can stop this behaviour using the menu
+ options.
+ The row of buttons at the top can be used to start the corresponding
+ programs using the document as source file.
+
+ This program will run on Unix, Linux, Windows 9x, Windows NT etc.
+ I just don't know anyone who will try it on a Macintosh as well ...
+ If you want to try, please contact me.
+
+ All you need to run this program is the script language Tcl/Tk, which
+ you can download for free.
+ You want to use my program? It is already available for "free":
+
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+
+ Questions? Found some errors? Some ideas for future developments?
+ feel free to send an email :
+
+ Martin Strauss
+ mys@@faveve.uni-stuttgart.de
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+@
diff --git a/support/tcltexed/hlp/bre/RCS/sonder.txt,v b/support/tcltexed/hlp/bre/RCS/sonder.txt,v
new file mode 100644
index 0000000000..01da5add41
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/sonder.txt,v
@@ -0,0 +1,38 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Hae ?
+############################################################
+\today ::today::
+
+insert date of compilation into the document
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX ::LaTeX::
+
+insert logo of LaTeX
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX2e ::LaTeX2e::
+
+insert logo of LaTeX2e
+@
diff --git a/support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt,v b/support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt,v
new file mode 100644
index 0000000000..d6c82f7da8
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt,v
@@ -0,0 +1,162 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.21.26.27; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@############################################################
+#::tcltexed_hlp::
+# Tcltexed stands for tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Tcltexed is seprated into two parts. On one side the windows
+were you could edit a text, as described in "Editor", on
+the other side a lot of functions connected only to the base
+of the program, the main window.
+All actions which should work with a editorwindow will use
+the window which has had at last the focus. A clearer
+definiton of this made in "Editor".
+
+Below I will discribe and list all the functions you could
+start from the main window.
+
+menu items of the main window
+1. File
+ a) New
+Start a new LaTeX-document. There exists a predefined plain
+document within the source of Tcltexed. If the file etc/default.tex
+exists in the path were Tcltexed was installed this file will
+be used as default document.
+ b) Load
+Load a file into the editor ...
+ c) Append
+Append the text of the file at the position of the curser.
+ d) Save e) Save As
+Save a text.
+ f) Quit
+Quit Tcltexed. All windows will get closed (if necessary a request
+for saveing the files in work is made)
+
+2. Edit
+ a) Clear
+Clear the whole text.
+ b) line breaking
+Choose to break lines in the whole text, the current section or the
+current line. Each line which follows a line which ends with "space"
+will be interpreted as a continuition. Befor a line gets broken all
+continuation lines will be appended to it.
+With the last three menu items it is possible to append all continuition
+lines without breaking the whole line after it.
+If there are some spaces at the beginning of the first line, then
+all continuations will have these spaces as first letters.
+ c) Spelling
+Marks all not right spelled words in your current text with a red color.
+ d) add word
+For to register a word as spelled right, you must set
+the curser in the current text within it. To make sense the word
+must be marked to be misspelled ;-), or not ?
+ e) \"a..\ss -> ä..ß
+Translates latex commands for displaying special characters into
+their corresponding characters.
+ f) ä..ß -> \"a..\ss
+Translate none ascii characters into their corresponding latex commands.
+ g) "a.."s -> ä..ß
+Translates latex commands out of package [german]{babel} for displaying
+special characters into their corresponding characters.
+ h) ä..ß -> "a.."s
+Translate none ascii characters into their corresponding latex commands
+out of package [german]{babel}. This format is iutable for
+"ispell -t -d deutsch file.tex"
+ i) Search
+Search and Replace within a text.
+ j) My Own
+Here you can define your own LaTeX-sequences to be inserted into the
+text, if you press the button befor the entry. This definitions
+will besaved if you "Save Options". With the next start of Tcltexed
+this definitions will be the start values.
+
+3. Options
+ a) AutoBrackets
+If this button is aktivated, each inserted bracket to open ({[$
+will be followed by a bracket to close )}]$.
+ { --> {}
+ b) Packages/etc
+Here you could activate several packages for automatical completion
+of it's LaTeX-commands.
+An example for complition :
+\fra --> \frac{}{}
+The more LaTeX-commands Tcltexed should recognise the later they
+get complited, because they look to similar for Tcltexed.
+ c) language
+Set here your favorite language for texts, buttons and help.
+A change here will only apear with the next start of Tcltexed,
+so you have to save the current options as discribed below.
+ d) font size
+Set font size for the editorwindows.
+ e) Save Options
+Save all configurations made by a user. This configuration
+will be loaded at the beginning of the next start of Tcltexed.
+(The file with the configurations is with unix .tcltexed,
+ with Windows tcltexed.ini . But please don't edit it yourself.
+Configurationfiles of older Tcltexedversion will be ignored
+and later overwriten.)
+
+4. Mathematics
+A gallery of pictures of the ouput of commands of the mathmatical
+enviroments. A press on a pictur will insert the command,
+represented by the picture, on the position of the curser.
+
+5. general
+Like 4. , but other common commands.
+
+6. Help
+ a) Tcltexed
+Under this you will find the description of Tcltexed itself.
+ b) LaTeX
+A index of all LaTeX-commands I have heard of.
+For a lot of LaTeX-commands I have writen a short help.
+ + <Return> + left mousebutton displays the help text
+ right mousebutton insert command
+ a keystroke A-Z a-z forces the list to jumb to commands
+ with this as first letter
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d53 13
+a65 4
+ e) Nearly
+Takes the word which the curser of the current text is within and
+displays a list of words which nearly match this word.
+ f) Search
+d67 1
+a67 1
+ g) My Own
+@
+
diff --git a/support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt~,v b/support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt~,v
new file mode 100644
index 0000000000..c171925d1e
--- /dev/null
+++ b/support/tcltexed/hlp/bre/RCS/tcltexed_hlp.txt~,v
@@ -0,0 +1,129 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+#::tcltexed_hlp::
+# Tcltexed stands for tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Tcltexed is seprated into two parts. On one side the windows
+were you could edit a text, as described in "Editor", on
+the other side a lot of functions connected only to the base
+of the program, the main window.
+All actions which should work with a editorwindow will use
+the window which has had at last the focus. A clearer
+definiton of this made in "Editor".
+
+Below I will discribe and list all the functions you could
+start from the main window.
+
+menu items of the main window
+1. File
+ a) New
+Start a new LaTeX-document. There exists a predefined plain
+document within the source of Tcltexed. If the file etc/default.tex
+exists in the path were Tcltexed was installed this file will
+be used as default document.
+ b) Load
+Load a file into the editor ...
+ c) Append
+Append the text of the file at the position of the curser.
+ d) Save e) Save As
+Save a text.
+ f) Quit
+Quit Tcltexed. All windows will get closed (if necessary a request
+for saveing the files in work is made)
+
+2. Edit
+ a) Clear
+Clear the whole text.
+ b) line breaking
+Choose to break lines in the whole text, the current section or the
+current line. Each line which follows a line which ends with "space"
+will be interpreted as a continuition. Befor a line gets broken all
+continuition lines will be appended to it.
+With the last three menu items it is possible to append all continuition
+lines without breaking the whole line after it.
+ c) Spelling
+Marks all not right spelled words in your current text with a red color.
+ d) add word
+For to register a word as spelled right, you must set
+the curser in the current text within it. To make sense the word
+must be marked to be misspelled ;-), or not ?
+ e) Nearly
+Takes the word which the curser of the current text is within and
+displays a list of words which nearly match this word.
+ f) Search
+Search and Replace within a text.
+ g) My Own
+Here you can define your own LaTeX-sequences to be inserted into the
+text, if you press the button befor the entry. This definitions
+will besaved if you "Save Options". With the next start of Tcltexed
+this definitions will be the start values.
+
+3. Options
+ a) AutoBrackets
+If this button is aktivated, each inserted bracket to open ({[$
+will be followed by a bracket to close )}]$.
+ { --> {}
+ b) Packages/etc
+Here you could activate several packages for automatical completion
+of it's LaTeX-commands.
+An example for complition :
+\fra --> \frac{}{}
+The more LaTeX-commands Tcltexed should recognise the later they
+get complited, because they look to similar for Tcltexed.
+ c) language
+Set here your favorite language for texts, buttons and help.
+A change here will only apear with the next start of Tcltexed,
+so you have to save the current options as discribed below.
+ d) font size
+Set font size for the editorwindows.
+ e) Save Options
+Save all configurations made by a user. This configuration
+will be loaded at the beginning of the next start of Tcltexed.
+(The file with the configurations is with unix .tcltexed,
+ with Windows tcltexed.ini . But please don't edit it yourself.
+Configurationfiles of older Tcltexedversion will be ignored
+and later overwriten.)
+
+4. Mathematics
+A gallery of pictures of the ouput of commands of the mathmatical
+enviroments. A press on a pictur will insert the command,
+represented by the picture, on the position of the curser.
+
+5. general
+Like 4. , but other common commands.
+
+6. Help
+ a) Tcltexed
+Under this you will find the description of Tcltexed itself.
+ b) LaTeX
+A index of all LaTeX-commands I have heard of.
+For a lot of LaTeX-commands I have writen a short help.
+ + <Return> + left mousebutton displays the help text
+ right mousebutton insert command
+ a keystroke A-Z a-z forces the list to jumb to commands
+ with this as first letter
+@
diff --git a/support/tcltexed/hlp/bre/References.txt b/support/tcltexed/hlp/bre/References.txt
new file mode 100644
index 0000000000..612b4a8392
--- /dev/null
+++ b/support/tcltexed/hlp/bre/References.txt
@@ -0,0 +1,47 @@
+############################################################
+Cross References
+############################################################
+
+One reason for numbering things like figures and equations
+is to refer the reader to them, as in "See Figure 3 for more
+details."
+
+\label: Assign a symbolic name to a piece of text.
+\pageref: Refer to a page number.
+\ref: Refer to a section, figure or similar.
+
+############################################################
+ \label ::label::
+############################################################
+\label{key}
+A \label command appearing in ordinary text assigns to the
+key the number of the current sectional unit; one appearing
+inside a numbered environment assigns that number to the key.
+
+A key can consist of any sequence of letters, digits, or
+punctuation characters.
+
+Upper and lowercase letters are different.
+
+To avoid accidentally creating two labels with the same name,
+it is common to use labels consisting of a prefix and a suffix
+separated by a colon. The prefixes conventionally used are
+ cha for chapters
+ sec for lower-level sectioning commands
+ fig for figures
+ tab for tables
+ eq for equations
+Thus, a label for a figure would look like fig:bandersnatch.
+############################################################
+ \pageref ::pageref::
+############################################################
+\pageref{key}
+The \pageref command produces the page number of the place
+in the text where the corresponding \label command appears.
+ie. where \label{key} appears.
+############################################################
+ \ref ::ref::
+############################################################
+\ref{key}
+The \ref command produces the number of the sectional unit,
+equation number, ... of the corresponding \label command.
diff --git a/support/tcltexed/hlp/bre/Sectioning.txt b/support/tcltexed/hlp/bre/Sectioning.txt
new file mode 100644
index 0000000000..b70df63e72
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Sectioning.txt
@@ -0,0 +1,48 @@
+############################################################
+Sectioning
+############################################################
+
+Sectioning commands provide the means to structure your text
+into units.
+
+ \part ::part::
+ \chapter (report and book class only) ::chapter::
+ \section ::section::
+ \subsection ::subsection::
+ \subsubsection ::subsubsection::
+ \paragraph ::paragraph::
+ \subparagraph ::subparagraph::
+
+All sectioning commands take the same general form, i.e.,
+
+ \chapter[optional]{title}
+
+In addition to providing the heading in the text, the
+mandatory argument of the sectioning command can appear in
+two other places:
+
+ 1. The table of contents
+ 2. The running head at the top of the page
+
+You may not want the same thing to appear in these other
+two places as appears in the text heading. To handle this
+situation, the sectioning commands have an optional
+argument that provides the text for these other two
+purposes.
+
+All sectioning commands have *-forms that print a title,
+but do not include a number and do not make an entry in the
+table of contents.
+############################################################
+ \appendix ::appendix::
+############################################################
+The \appendix command changes the way sectional units are
+numbered. The \appendix command generates no text and does
+not affect the numbering of parts.
+
+The normal use of this command is something like
+
+\chapter{The First Chapter}
+...
+\appendix
+\chapter{The First Appendix}
diff --git a/support/tcltexed/hlp/bre/Spaces.txt b/support/tcltexed/hlp/bre/Spaces.txt
new file mode 100644
index 0000000000..598574f89c
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Spaces.txt
@@ -0,0 +1,240 @@
+############################################################
+Spaces & Boxes
+############################################################
+
+All the predefined length parameters See section Predefined
+lengths can be used in the arguments of the box-making
+commands.
+
+Horizontal space
+
+ \dotfill: Stretchable horizontal dots.
+ \hfill: Stretchable horizontal space.
+ \hrulefill: Stretchable horizontal rule.
+ \hspace: Fixed horizontal space. Vertical space
+ \addvspace: Fixed vertical space.
+ \bigskip: Fixed vertical space.
+ \medskip: Fixed vertical space.
+ \smallskip: Fixed vertical space.
+ \vfill: Stretchable vertical space.
+ \vspace: Fixed vertical space. Boxes
+ \fbox: Framebox.
+ \framebox: Framebox, adjustable position.
+ lrbox: An environment like \sbox.
+ \makebox: Box, adjustable position.
+ \mbox: Box.
+ \newsavebox: Declare a name for saving a box.
+ \parbox: Box with text in paragraph mode.
+ \raisebox: Raise or lower text.
+ \rule: Lines and squares.
+ \savebox: Like \makebox, but save the text for later use.
+ \sbox: Like \mbox, but save the text for later use.
+ \usebox: Print saved text.
+
+############################################################
+ \dotfill ::dotfill::
+############################################################
+The \dotfill command produces a "rubber length" that produces
+dots instead of just spaces.
+############################################################
+ \hfill ::hfill::
+############################################################
+The \hfill fill command produces a "rubber length" which can
+stretch or shrink horizontally. It will be filled with spaces.
+############################################################
+ \hrulefill ::hrulefill::
+############################################################
+The \hrulefill fill command produces a "rubber length" which
+can stretch or shrink horizontally. It will be filled with a
+horizontal rule.
+############################################################
+ \hspace ::hspace::
+############################################################
+\hspace[*]{length}
+The \hspace command adds horizontal space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \hspace command. Adding negative space
+is like backspacing.
+
+LaTeX removes horizontal space that comes at the end of a
+line. If you don't want LaTeX to remove this space, include
+the optional * argument. Then the space is never removed.
+############################################################
+ \addvspace ::addvspace::
+############################################################
+\addvspace{length}
+The \addvspace command normally adds a vertical space of
+height length. However, if vertical space has already been
+added to the same point in the output by a previous \addvspace
+command, then this command will not add more space than
+needed to make the natural length of the total vertical space
+equal to length.
+############################################################
+ \bigskip ::bigskip::
+############################################################
+The \bigskip command is equivalent to \vspace{bigskipamount}
+where bigskipamount is determined by the document class.
+############################################################
+ \medskip ::medskip::
+############################################################
+The \medskip command is equivalent to \vspace{medskipamount}
+where medskipamount is determined by the document class.
+############################################################
+ \smallskip ::smallskip::
+############################################################
+\smallskip
+The \smallskip command is equivalent to \vspace{smallskipamount}
+where smallskipamount is determined by the document class.
+############################################################
+ \vfill ::vfill::
+############################################################
+The \vfill fill command produces a rubber length which can
+stretch or shrink vertically.
+############################################################
+ \vspace ::vspace::
+############################################################
+\vspace[*]{length}
+The \vspace command adds vertical space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \vspace command.
+
+LaTeX removes vertical space that comes at the end of a page.
+If you don't want LaTeX to remove this space, include the
+optional * argument. Then the space is never removed.
+############################################################
+ \fbox ::fbox::
+############################################################
+\fbox{text}
+The \fbox command is exactly the same as the \mbox command,
+except that it puts a frame around the outside of the box
+that it creates.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox[width][position]{text}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the
+contents of the box.
+############################################################
+ lrbox ::lrbox::
+############################################################
+\begin{lrbox}{cmd} text \end{lrbox}
+This is the environment form of \sbox.
+The text inside the environment is saved in the box cmd,
+which must have been declared with \newsavebox.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox[width][position]{text}
+The \makebox command creates a box just wide enough to contain
+the text specified. The width of the box is specified by the
+optional width argument. The position of the text within the
+box is determined by the optional position argument.
+
+ c -- centred (default)
+ l -- flushleft
+ r -- flushright
+ s -- stretch from left to right margin. The text must
+ contain stretchable space for this to work.
+
+See section \makebox.
+############################################################
+ \mbox ::mbox::
+############################################################
+\mbox{text}
+The \mbox command creates a box just wide enough to hold the
+text created by its argument.
+Use this command to prevent text from being split across lines.
+############################################################
+ \newsavebox ::newsavebox::
+############################################################
+\newsavebox{cmd}
+Declares cmd, which must be a command name that is not already
+defined, to be a bin for saving boxes.
+############################################################
+ \parbox ::parbox::
+############################################################
+\parbox[position][height][inner-pos]{width}{text}
+A parbox is a box whose contents are created in paragraph
+mode. The \parbox has two mandatory arguments:
+
+ width - specifies the width of the parbox, and
+ text - the text that goes inside the parbox.
+
+LaTeX will position a parbox so its centre lines up with the
+centre of the text line. The optional position argument allows
+you to line up either the top or bottom line in the parbox
+(default is top). If the height argument is not given, the
+box will have the natural height of the text.
+
+The inner-pos argument controls the placement of the text
+inside the box. If it is not specified, position is used.
+
+ t -- text is placed at the top of the box.
+ c -- text is centred in the box.
+ b -- text is placed at the bottom of the box.
+ s -- stretch vertically. The text must contain
+ vertically stretchable space for this to work.
+
+A \parbox command is used for a parbox containing a small piece
+of text, with nothing fancy inside. In particular, you shouldn't
+use any of the paragraph-making environments inside a \parbox
+argument. For larger pieces of text, including ones containing
+a paragraph-making environment, you should use a minipage
+environment
+See section minipage.
+############################################################
+ \raisebox ::raisebox::
+############################################################
+\raisebox{distance}[extend-above][extend-below]{text}
+The \raisebox command is used to raise or lower text. The
+first mandatory argument specifies how high the text is to
+be raised (or lowered if it is a negative amount). The text
+itself is processed in LR mode.
+
+Sometimes it's useful to make LaTeX think something has a
+different size than it really does - or a different size
+than LaTeX would normally think it has. The \raisebox
+command lets you tell LaTeX how tall it is. The first
+optional argument, extend-above, makes LaTeX think that the
+text extends above the line by the amount specified. The
+second optional argument, extend-below, makes LaTeX think
+that the text extends below the line by the amount specified.
+############################################################
+ \rule ::rule::
+############################################################
+\rule[raise-height]{width}{thickness}
+The \rule command is used to produce horizontal lines. The
+arguments are defined as follows:
+
+ raise-height - specifies how high to raise the rule
+ (optional)
+ width - specifies the length of the rule (mandatory)
+ thickness - specifies the thickness of the rule
+ (mandatory)
+
+############################################################
+ \savebox ::savebox::
+############################################################
+\savebox{cmd}[width][pos]{text}
+This command typeset text in a box just as for \makebox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \sbox ::sbox::
+############################################################
+\sbox{text}
+This commands typeset text in a box just as for \mbox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \usebox ::usebox::
+############################################################
+\usebox{cmd}
+Prints the box most recently saved in bin cmd by a \savebox
+command.
diff --git a/support/tcltexed/hlp/bre/Starting.txt b/support/tcltexed/hlp/bre/Starting.txt
new file mode 100644
index 0000000000..84db129051
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Starting.txt
@@ -0,0 +1,22 @@
+############################################################
+Starting & Ending ::document::
+############################################################
+
+Your input file must contain the following commands as a
+minimum:
+
+ \documentclass{class}
+ \begin{document}
+ ... your text goes here ...
+ \end{document}
+
+where the class selected is one of the valid classes for
+LaTeX. See section
+
+Document Classes (and see section Overview of LaTeX and
+Local Guide), for details of the various document classes
+available locally.
+
+You may include other LaTeX commands between the
+\documentclass and the \begin{document} commands (i.e., in
+the `preamble').
diff --git a/support/tcltexed/hlp/bre/Styles.txt b/support/tcltexed/hlp/bre/Styles.txt
new file mode 100644
index 0000000000..fee57f61fa
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Styles.txt
@@ -0,0 +1,116 @@
+############################################################
+Page Styles
+############################################################
+
+The \documentclass command determines the size and position
+of the page's head and foot. The page style determines what
+goes in them.
+
+ \maketitle: Generate a title page.
+ \pagenumbering: Set the style used for page numbers.
+ \pagestyle: Change the headings/footings style.
+ \thispagestyle: Change the headings/footings style for
+ this page.
+
+############################################################
+ \maketitle ::maketitle::
+############################################################
+\maketitle
+The \maketitle command generates a title on a separate title
+page - except in the article class, where the title normally
+goes at the top of the first page.
+Information used to produce the title is obtained from the
+following declarations:
+
+See section Page Styles for the commands to give the information.
+
+ \author: Who wrote this stuff?
+ \date: The date the document was created.
+ \thanks: A special form of footnote.
+ \title: How to set the document title.
+
+############################################################
+ \author ::author::
+############################################################
+\author{names}
+The \author command declares the author(s), where names is a
+list of authors separated by \and commands. Use \\ to separate
+lines within a single author's entry -- for example, to give
+the author's institution or address.
+############################################################
+ \date ::date::
+############################################################
+\date{text}
+The \date command declares text to be the document's date.
+With no \date command, the current date is used.
+############################################################
+ \thanks ::thanks::
+############################################################
+\thanks{text}
+The \thanks command produces a \footnote to the title.
+############################################################
+ \title ::title::
+############################################################
+\title{text}
+The \title command declares text to be the title. Use \\ to
+tell LaTeX where to start a new line in a long title.
+############################################################
+ \pagenumbering ::pagenumbering::
+############################################################
+\pagenumbering{num_style}
+Specifies the style of page numbers. Possible values of
+num_style are:
+
+ arabic - Arabic numerals
+ roman - Lowercase Roman numerals
+ Roman - Uppercase Roman numerals
+ alph - Lowercase letters
+ Alph - Uppercase letters
+
+############################################################
+ \pagestyle ::pagestyle::
+############################################################
+\pagestyle{option}
+The \pagestyle command changes the style from the current
+page on throughout the remainder of your document.
+The valid options are:
+
+ plain - Just a plain page number.
+ empty - Produces empty heads and feet - no page numbers.
+ headings - Puts running headings on each page. The
+ document style specifies what goes in the headings.
+ myheadings - You specify what is to go in the heading
+ with the \markboth or the \markright commands.
+
+ \markboth: Set left and right headings.
+ \markright: Set right heading only.
+
+############################################################
+ \markboth ::markboth::
+############################################################
+\markboth{left head}{right head}
+The \markboth command is used in conjunction with the page
+style myheadings for setting both the left and the right
+heading. You should note that a "left-hand heading" is
+generated by the last \markboth command before the end of
+the page, while a "right-hand heading" is generated by the
+first \markboth or \markright that comes on the page if
+there is one, otherwise by the last one before the page.
+############################################################
+ \markright ::markright::
+############################################################
+\markright{right head}
+The \markright command is used in conjunction with the page
+style myheadings for setting the right heading, leaving the
+left heading unchanged. You should note that a "left-hand
+heading" is generated by the last \markboth command before
+the end of the page, while a "right-hand heading" is generated
+by the first \markboth or \markright that comes on the page
+if there is one, otherwise by the last one before the page.
+############################################################
+ \thispagestyle ::thispagestyle::
+############################################################
+\thispagestyle{option}
+The \thispagestyle command works in the same manner as the
+\pagestyle command except that it changes the style for the
+current page only.
diff --git a/support/tcltexed/hlp/bre/Terminal.txt b/support/tcltexed/hlp/bre/Terminal.txt
new file mode 100644
index 0000000000..a2551a0cf5
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Terminal.txt
@@ -0,0 +1,30 @@
+############################################################
+Terminal Input/Output
+############################################################
+
+ \typein: Read text from the terminal.
+ \typeout: Write text to the terminal.
+
+############################################################
+ \typein ::typein::
+############################################################
+\typein[cmd]{msg}
+Prints msg on the terminal and causes LaTeX to stop and wait
+for you to type a line of input, ending with return. If the
+cmd argument is missing, the typed input is processed as if
+it had been included in the input file in place of the
+\typein command. If the cmd argument is present, it must be
+a command name. This command name is then defined or redefined
+to be the typed input.
+############################################################
+ \typeout ::typeout::
+############################################################
+\typeout{msg}
+Prints msg on the terminal and in the log file. Commands in
+msg that are defined with \newcommand or \renewcommand are
+replaced by their definitions before being printed.
+
+LaTeX's usual rules for treating multiple spaces as a single
+space and ignoring spaces after a command name apply to msg.
+A \space command in msg causes a single space to be printed.
+A ^^J in msg prints a newline.
diff --git a/support/tcltexed/hlp/bre/Typefaces.txt b/support/tcltexed/hlp/bre/Typefaces.txt
new file mode 100644
index 0000000000..b0bb3fedf4
--- /dev/null
+++ b/support/tcltexed/hlp/bre/Typefaces.txt
@@ -0,0 +1,148 @@
+############################################################
+Typefaces
+############################################################
+
+The typeface is specified by giving the "size" and "style".
+A typeface is also called a "font".
+
+ Styles: Select roman, italics etc.
+ Sizes: Select point size.
+ Low-level font commands: Commands for wizards.
+
+############################################################
+ Styles
+############################################################
+The following type style commands are supported by LaTeX.
+These commands are used like \textit{italics text}. The
+corresponding command in parenthesis is the "declaration form",
+which takes no arguments. The scope of the declaration form
+lasts until the next type style command or the end of the
+current group.
+
+The declaration forms are cumulative; i.e., you can say
+\sffamily\bfseries to get sans serif boldface.
+
+You can also use the environment form of the declaration
+forms; e.g. \begin{ttfamily}...\end{ttfamily}.
+
+ \textrm (\rmfamily) ::textrm::rmfamily::
+Roman.
+ \textit (\itshape) ::textit::itshape::
+ \emph ::emph::
+Emphasis (toggles between \textit and \textrm).
+ \textmd (\mdseries) ::textmd::mdseries::
+Medium weight (default). The opposite of boldface.
+ \textbf (\bfseries) ::textbf::bfseries::
+Boldface.
+ \textup (\upshape) ::textup::upshape::
+Upright (default). The opposite of slanted.
+ \textsl (\slshape) ::textsl::slshape::
+Slanted.
+ \textsf (\sffamily) ::textsf::sffamily::
+Sans serif.
+ \textsc (\scshape) ::textsc::scshape::
+Small caps.
+ \texttt (\ttfamily) ::texttt::ttfamily::
+Typewriter.
+ \textnormal (\normalfont) ::textnormal::normalfont::
+Main document font.
+ \mathrm ::mathrm::
+Roman, for use in math mode.
+ \mathbf ::mathbf::
+Boldface, for use in math mode.
+ \mathsf ::mathsf::
+Sans serif, for use in math mode.
+ \mathtt ::mathtt::
+Typewriter, for use in math mode.
+ \mathit ::mathit::
+Italics, for use in math mode, e.g. variable names
+with several letters.
+ \mathnormal ::mathnormal::
+For use in math mode, e.g. inside another type style
+declaration.
+ \mathcal ::mathcal::
+`Calligraphic' letters, for use in math mode.
+::mathversion::
+In addition, the command \mathversion{bold} can be used for
+switching to bold letters and symbols in formulas.
+\mathversion{normal} restores the default.
+
+############################################################
+ Sizes
+############################################################
+The following standard type size commands are supported by
+LaTeX. The commands as listed here are "declaration forms".
+The scope of the declaration form lasts until the next type
+style command or the end of the current group.
+
+You can also use the environment form of these commands; e.g.
+\begin{tiny}...\end{tiny}.
+
+ \tiny ::tiny::
+ \scriptsize ::scriptsize::
+ \footnotesize ::footnotesize::
+ \small ::small::
+ \normalsize (default) ::normalsize::
+ \large ::large::
+ \Large ::Large::
+ \LARGE ::LARGE::
+ \huge ::huge::
+ \Huge ::Huge::
+
+############################################################
+ Low-level font commands
+############################################################
+These commands are primarily intended for writers of macros
+and packages. The commands listed here are only a subset of
+the available ones. For full details, you should consult
+Chapter 7 of The LaTeX Companion.
+
+ \fontencoding{enc} ::fontencoding::
+
+Select font encoding. Valid encodings include OT1 and T1.
+
+ \fontfamily{family} ::fontfamily::
+
+Select font family. Valid families include:
+ cmr for Computer Modern Roman
+ cmss for Computer Modern Sans Serif
+ cmtt for Computer Modern Typewriter
+and numerous others.
+
+ \fontseries{series} ::fontseries::
+
+Select font series. Valid series include:
+ m Medium (normal)
+ b Bold
+ c Condensed
+ bc Bold condensed
+ bx Bold extended
+and various other combinations.
+
+ \fontshape{shape} ::fontshape::
+
+Select font shape. Valid shapes are:
+ n Upright (normal)
+ it Italic
+ sl Slanted (oblique)
+ sc Small caps
+ ui Upright italics
+ ol Outline
+The two last shapes are not available for most font families.
+
+ \fontsize{size}{skip} ::fontsize::
+
+Set font size. The first parameter is the font size to
+switch to; the second is the \baselineskip to use. The unit
+of both parameters defaults to pt. A rule of thumb is that
+the baselineskip should be 1.2 times the font size.
+
+ \selectfont ::selectfont::
+
+The changes made by calling the four font commands described
+above do not come into effect until \selectfont is called.
+
+ \usefont{enc}{family}{series}{shape} ::usefont::
+
+Equivalent to calling \fontencoding, \fontfamily, \fontseries
+and \fontshape with the given parameters, followed by \selectfont.
diff --git a/support/tcltexed/hlp/bre/amscd.txt b/support/tcltexed/hlp/bre/amscd.txt
new file mode 100644
index 0000000000..b8369e1cc3
--- /dev/null
+++ b/support/tcltexed/hlp/bre/amscd.txt
@@ -0,0 +1,40 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amscd.
+\usepackage{amscd} ::amscd::
+
+#################################################################
+diagrams ::CD::
+#################################################################
+subenviroment :
+CD
+example :
+\begin{CD}
+ A @>>> B @>>> C
+ D @AAA E @VVV F
+ G @= H @<<< I
+\end{CD}
+
+enviroment for diagrams
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@>textabove>textbelow>
+
+arrow to the right with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@<textabove<textbelow<
+
+arrow to the left with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@AtextleftAtextrightA
+
+arrow up with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@VtextleftVtextrightV
+
+arrow down with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@=
+
+equal symbol instead of an arrow
diff --git a/support/tcltexed/hlp/bre/amsfonts.txt b/support/tcltexed/hlp/bre/amsfonts.txt
new file mode 100644
index 0000000000..4ab340e27c
--- /dev/null
+++ b/support/tcltexed/hlp/bre/amsfonts.txt
@@ -0,0 +1,21 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsfonts.
+\usepackage{amsfonts} ::amsfonts::
+
+#################################################################
+fonts
+#################################################################
+\mathbb{text} ::mathbb::
+
+supplies text as mathematical field letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\mathfrak{text} ::mathfrak::
+
+supplies text as fracture letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boldsymbol{symbol} ::boldsymbol::
+
+supplies a bold variant of symbol
diff --git a/support/tcltexed/hlp/bre/amsmath.txt b/support/tcltexed/hlp/bre/amsmath.txt
new file mode 100644
index 0000000000..3c33ff86cf
--- /dev/null
+++ b/support/tcltexed/hlp/bre/amsmath.txt
@@ -0,0 +1,131 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsmath.
+\usepackage{amsmath} ::amsmath::
+
+#################################################################
+mathematical subenviroments
+#################################################################
+Subenviroments must be invoked within a mathmatical enviroment.
+for example :
+\[\begin{split} ... \end{split}\]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : split ::split::
+\[\begin{split}
+ a&=b\\
+ c&=d
+\end{split}\]
+
+allows multible formulas with only one number.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : multline ::multline::
+\begin{multine}
+ a+b+c\\
+ +d+e
+\end{multine}
+
+for breaking one formula into several lines with only one number
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : gather ::gather::
+\begin{gather}
+ a+b+c\\
+ +d+e
+\end{gather}
+
+
+a group of formulas
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : align ::align::
+\begin{align}
+ a&=b & c&=d \\
+ e&=f & g&=h \\
+ \intertext{and}
+ i&=j & k&=l
+\end{align}
+
+an array of formulas
+-----------------------------------------------------------------
+\intertext{text} ::intertext::
+
+allows normal textoutput within this mathmatical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : subequation ::subequation::
+
+mainnumbering gets an additional subnumbering with small letters
+\label{} does not distinguish between subnumbers
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : ?matrix
+::matrix::pmatrix::bmatrix::vmatrix::Vmatrix::
+\[\begin{matrix}
+ 1 & 2 & 3 & a \\
+ 4 & 5 & 6 & b \\
+ 7 & 8 & 9 & c
+\end{matrix}\]
+
+produces a matrix
+matrix : without brackets
+pmatrik : with round brackets
+bmatrix : with angular brackets
+vmatrix : with vertical lines
+Vmatrix : with doubled vertical lines
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : cases ::cases::
+\[sgn(x)=\begin{cases}
+ -1 & \forall\ x<0 \\
+ 0 & x=0 \\
+ 1 & \forall\ x>0
+\end{cases}\]
+
+for "Cases" constructions
+#################################################################
+Sonstige Hilfen
+#################################################################
+size of brackets :
+\bigl \bigr little bit larger ::bigl::bigr::
+\Bigl \Bigr faktor 1.5 ::Bigl::Bigr::
+\biggl \biggr faktor 2 ::biggl::biggr::
+\Biggl \Biggr faktor 2.5 ::Biggl::Biggr::
+left right of the formula
+
+behind this should follow one of these bracket forms "(" "|" "[" ... "]" ")"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\substack{ \\ ...\\ \text{Hi} ... \\ } ::substack::
+example :
+\sum_\substack{i=0\\j=1}^\substack{10\\100}
+
+Pushes several lines of indices above or below.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\text{text} ::text::
+
+text within a mathematical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sideset{}{} ::sideset::
+example :
+\sideset{^1_2}{^3_4}\sum
+
+sets indices at the corners ..
+left above 1, left below 2, right above 3 and right below 4
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+xleftarrow{above} ::xleftarrow::xrightarrow::
+xleftarrow[below]{above}
+xrightarrow{above}
+xrightarrow[below]{above}
+
+
+An arrow which adapting the necessary length for displaying a text
+above itself and optionaly below, too.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boxed{formula} ::boxed::
+
+formula with a frame
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareMathOperator{latex-command}{output}
+\DeclareMathOperator*{latex-command}{output}
+::DeclareMathOperator::
+
+
+Allows the declaration of own new mathematical functions like
+ \sin \cos etc.
+* makes it display indices like \lim with in math enviroment.
diff --git a/support/tcltexed/hlp/bre/amssymb.txt b/support/tcltexed/hlp/bre/amssymb.txt
new file mode 100644
index 0000000000..b1cd209fcd
--- /dev/null
+++ b/support/tcltexed/hlp/bre/amssymb.txt
@@ -0,0 +1,9 @@
+#########################################################
+\usepackage{amssymb} ::amssymb::
+#########################################################
+One symbol out of many supplied by the package amssymb.
+#########################################################
+One of the many symbols for which I didn't create a
+picture, because it would have been an endless work
+and boring, too. (mys)
+######################################################### \ No newline at end of file
diff --git a/support/tcltexed/hlp/bre/amsthm.txt b/support/tcltexed/hlp/bre/amsthm.txt
new file mode 100644
index 0000000000..af361c593c
--- /dev/null
+++ b/support/tcltexed/hlp/bre/amsthm.txt
@@ -0,0 +1,38 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsthm.
+\usepackage{amsthm} ::amsmath::
+
+#################################################################
+Erstellen von Theoremen ::newtheorem::
+#################################################################
+
+\newtheorem{latex-synonym}{name}
+\newtheorem*{latex-synonym}{name}
+\newtheorem*{latex-synonym}[latex-synonym2]{name}
+\newtheorem*{latex-synonym}{name}[section]
+
+Defines a new enviroment latex-synonym which is numbered as
+theorem with name "name" (f.e. axiom).
+\begin{latex-synonym}
+ bla
+\end{latex-synonym}
+for useing the new theorem
+
+* subdues the numbering.
+latex-synonym2 : uses the counter from this theorem
+section : an incretion of this counter would set the
+theorem counter to the value null
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\theoremstyle{style} ::theoremstyle::
+
+style :
+ plain (default)
+ definition
+ remark
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\swapnumbers ::swapnumbers::
+
+numbering on the left side of the theorem \ No newline at end of file
diff --git a/support/tcltexed/hlp/bre/copyright_hlp.txt b/support/tcltexed/hlp/bre/copyright_hlp.txt
new file mode 100644
index 0000000000..df07b73c38
--- /dev/null
+++ b/support/tcltexed/hlp/bre/copyright_hlp.txt
@@ -0,0 +1,19 @@
+Tcltexed | Version 2.8 | 02. Nov 2006 | Martin Strauss
+::copyright_hlp::
+A plaintexteditor for LaTeX based on scriptlanguage tcl/tk (8.x)
+
+Copyright (C) 1999 Martin Strauss
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
diff --git a/support/tcltexed/hlp/bre/editor_hlp.txt b/support/tcltexed/hlp/bre/editor_hlp.txt
new file mode 100644
index 0000000000..5505130293
--- /dev/null
+++ b/support/tcltexed/hlp/bre/editor_hlp.txt
@@ -0,0 +1,243 @@
+############################################################
+#::editor_hlp::
+# A janela do Editor
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+O que é uma janela do editor ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+É uma janela onde é possível trabalhar com um texto dentro
+do tcltexed. Cada janela do editor contem um texto. Dois
+atributos importantes que podemos identificar são quando
+trabalhamos com varias janelas de editores:
+
+-> Primeiro plano (focos)
+-> E uma marca que indica que aquela janela é a do documento
+ principal.
+
+>> Primeiro plano
+
+A janela do editor que tem o focos é aquela que ira receber
+os comandos dados fora da janela do editor. Ela é a ultima
+janela que estava em "foreground". Um exemplos de ação pode
+ser procurar por uma sequencia de texto; Uma maneira de dar
+o focos para uma janela é através dos botões do "mouse".
+
+>> Janela do documento principal
+
+Se você fez a janela do editor a janela principal, todas as
+chamadas para programas externos como o latex, xdvi e gv
+são direcionadas para esse documento. neste caso somente a
+janela do documento principal é compilada, caso não seja
+definida a janela principal cada janela atua como se ela
+fosse a única.
+
+>> A janela é composta pelos seguintes componentes:
+
+ -> uma barra de menu/popupbar ( somente a janela )
+ -> uma barra de botões
+ -> e um campo de entrada
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Uso da barra de botões
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Da esquerda para a direita:
+
+uma "figura", Salvar, Salvar como, latex, xdvi, dvips,
+ghostview, ispell, Syntax, Sair e finalmente "L.C. ?.?"
+
+>> "figura"
+
+A figura mostra os atributos da janela do editor. Caso a
+janela em questão tenha o focos você verá na figura algumas
+ondas circulares. Se ela esta colorida ( amarela e vermelha
+) ela esta marcada para ser o documento principal. Você
+pode fazer um documento o documento principal "clickando"
+na figura, um segundo click remove o atributo de janela
+principal.
+
+>> Salvar
+
+Esse você já sabe, simplesmente salva o documento no
+arquivo especificado na janela do editor. Se não há nenhum
+arquivo especificado "Salvar como" será executado.
+
+>> Salvar como
+
+Salva o documento dentro de um arquivo que você deve
+especificar para a janela de documento atual.
+
+>> latex
+
+Salva o documento para esta janela. Somente esse documento
+será salvo. E então o programa "latex" será executado para
+o arquivo especificado. Caso esteja especificado quem é o
+documento principal então será executado o latex para o
+documento principal ao invés do arquivo dessa janela.
+O latex produzira um arquivo com a extensão dvi e a saída
+de erro do latex será mostrada no arquivo de ajuda do
+tcltexed caso esteja ativada a opção mostrar log no menu de
+opções.
+Para facilitar a criação de índices, com os comandos do
+latex \makeindex \index etc. o programa makeindex é chamado
+automaticamente se existe um arquivo com extensão idx.
+
+>> xdvi
+
+Executa o xdvi ( ou um outro visualizador ) para ver a
+saída do ultimo comando latex executado. normalmente o
+visualizador recarrega o documento atual se você produz um novo
+arquivo dvi, então você apenas precisa executa-lo uma vez.
+
+>> dvips
+
+Produz uma saída a partir do arquivo dvi para uma
+impressora ghostscript. A saída ira ser gravada em um
+arquivo com extensão ps.
+
+>> ghostview
+
+Executa o ghostview, um visualizador para arquivos
+ghostscript que foram podem ser gerados com o comando
+anterior.
+
+>> ispell
+
+Salva o documento para essa janela do editor. Somente esse
+documento será salvo. E então ispell, um "shell" interativo
+para checagem ortográfica é executado e a saída será
+novamente carregada na janela do editor.
+
+>> Sintaxe
+
+Realce de sintaxe, todas sequencias de texto começando por
+\ são entendidos para ser comandos de Latex.
+Se este comando é conhecido essas letras ficam verdes, caso
+contrário ficam vermelhas. Mas tome cuidado, ele não olha
+atrás dos números de colchetes após os comandos ( latex ira
+fazer isso para você ! )
+Se o texto é para ser ignorado ( começando por % ), ele
+ficara azul. Para muitos dos comandos marcados em verde
+existe uma breve descrissão.
+
+>> Sair
+
+Fecha esta janela. Se ela foi modificada ele pergunta se
+gostaria de sair sem salvar realmente.
+
+>> "L.C ?.?"
+
+Mostra a posição do cursor (linha e coluna).
+Uma linha é definida como um número de letras seguidas por
+um "ENTER", não o número real de linhas mostrada pela
+janela do editor.
+Se você clicar neste botão aparecera uma janela onde você
+pode definir a posição do cursor manualmente por números.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Uso da barra de menus/popupbar
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Essa barra de menu somente existe se você usa Windows e
+tcl/tk 8.x Elas implementam as mesmas funções. pressionando
+o botão direito do mouse abrira a "popupbar". De cima para
+baixo ( esquerda para a direita ):
+
+-> Desfazer
+-> Recortar
+-> Copiar
+-> Limpar
+-> Bloco
+-> + %
+-> - %
+
+
+>> Desfazer
+
+Para desfazer a maioria das suas ultimas ações com o texto.
+( Pelo menos é o que penso ) Na falta de infinita memória
+não é possível desfazer tudo.
+
+>> Recortar, copiar, colar e limpar
+
+Apaga o texto selecionado guardando-o em outra área na
+memória (recortar) , copia o texto selecionado para outra
+área de memória (copiar), copia dessa outra área da memória
+para a janela do editor(colar), e finalmente apaga o texto
+selecionado sem salva-lo.
+
+>> Spell
+
+Marcas todas as palavras não escritas corretamente no seu
+texto em vermelho.
+
+>> Nearly
+
+Marca a palavra que o cursor esta próximo e mostra uma
+lista de palavras que estão próximas.
+
+>> Bloco
+
+Faz um texto selecionado um "Bloco - aria" ala Borland.
+
+>> + %
+
+Insere no começo da linha % somente se no começo da linha
+não existe %.
+-> uma maneira fácil de comentar regiões em latex.
+
+>> - %
+
+mesmo que "+ %"
+
+>> ...
+
+Procura por comandos do Latex que coincidem com as letras
+entre a última "\" e o cursor. somente os comandos sobre
+"Options -> packages" serão listados.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Como usar o campo de entrada
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Ei esta é a parte que cada editor tem, não faça perguntas
+bobas. ( olhe por editor-keymap por algumas combinações de
+teclas. )
+
+>> Spelling
+
+Se você deseja registrar uma palavra como corretamente
+digitado você deve colocar o cursor sobre ela e dar um click
+duplo no botão esquerdo do seu mouse.
+
+-> Exemplos para o auto preenchimento com comandos do Latex
+
+\fra ---> \frac{}{}
+\enumerate --->
+ \begin{enumerate}
+ \item
+ \end{enumerate}
+
+Auto-preenchimento de parentesis
+
+{ ---> {}
+$ ---> $$
+
+--> Para \begin e \end o nome do ambiente será inserido
+como mostrado a seguir.
+
+\beg --->
+ \begin{}
+ \end{}
+\bege --->
+ \begin{e}
+ \end{e}
+\begenum --->
+ \begin{enum}
+ \end{enum}
+
+-> Caso algum texto seja selecionado pelo mouse e
+pressionando "\" ele não será deletado como de costume mas
+será inserido colchetes ao redor do texto.
diff --git a/support/tcltexed/hlp/bre/editort_hlp.txt b/support/tcltexed/hlp/bre/editort_hlp.txt
new file mode 100644
index 0000000000..de6e15032c
--- /dev/null
+++ b/support/tcltexed/hlp/bre/editort_hlp.txt
@@ -0,0 +1,124 @@
+############################################################
+#::editort_hlp::
+# teclas de atalho para a janela do editor
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+teclas do Borland etc:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Bloco
+ <Control-k><b> Começar Bloco
+ <Control-k><k> terminar Bloco
+ <Control-k><c> Copiar Bloco
+ <Control-k><m> Mover Bloco
+ <Control-k><v> Mover Bloco
+ <Control-k><y> Apagar Bloco
+ <Control-k><%> Bloco (=> latex ignora essas linhas)
+ <Control-k><space> Bloco (oposto do comando acima)
+mais
+ <F1> Ajuda
+ <F2> Salvar
+ <F3> Abrir Arquivo
+ <F4> Ir para ( cursor )
+ <F9> Compilar o Latex
+ <Control-k><x> Salvar
+ <Control-k><h> Ajuda
+ <Control-y> Apagar linha
+ <Alt-BackSpace> Desfazer
+ <Shift-Delete> Recortar
+ <Control-Insert>Copiar
+ <Shift-Insert> Colar
+ <Control-Delete>Limpar
+ <Control-l> Procurar novamente
+ <Alt-x> Sair completamente do programa
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Algumas que eu fiz :
+ <Control-w> Listar todas as posíveis opções para
+ completar comandos do Latex.
+ <Control-d> Se o cursor estiver sobre um comando
+ do Latex ele procura pela próximo comando igual, ou se
+ estiver sobre um texto qualquer ele ira procurar pelo
+ próximo \section.
+ <Control-u> Igual <Control-d> mas procura para trás
+ <Control-b> quebra de linha para uma seção
+ <Alt-b> quebra de linha para a linha corrente
+ <Control-B> oposto de <Control-b>
+ <Alt-B> oposto de <Alt-b>
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Blocos, Seleção e Área de transferencia são normalmente
+independentes.
+
+ <Control-k><p> Insere do clipboard
+ <Control-k><g> Copia para o clipboard
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Padrão Windows
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+precione o botão direito do mouse para abrir um menu com as
+seguinte funções
+ Recortar Recorta o texto selecionado para Área de
+ transferencia
+ Copiar Copia o texto selecionado para o Área de
+ transferencia
+ Colar Insere o texto da área da Área de
+ transferencia
+ Apagar Apaga Selecionado
+ Bloco Seleciona
+ + % Comenta para o latex (%)
+ - % Remove comentário para o latex (%)
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Padrão Motif
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Precione o botão esquerdo do mouse
+ uma vez Desfazer Seleção
+ duas vezes Seleciona palavra
+ tres vezes Seleciona a linha
+ Shift-einfach Muda area de seleção
+ Shift-zweifach Completa area de seleção para palavras completas
+ Shift-dreifach Completa area de seleção para linhas completas
+ Control Muda a posição do cursor sem perder seleção
+Setas (CT)
+ <Shift-CT> Seleciona areas (letras/linhas)
+ <Control-CT> Desloca o cursor em passos
+ <Shift-Control-CT> Seleciona area (palavras/parágrafos)
+ [Up,Down] pagína acima abaixo (ST)
+ <Shift-ST> Seleciona area (páginas)
+ [Home,End] começo fim da linha (ZT)
+ <Shift-ZT> Seleciona area (até linestart/-end)
+ <Control-ZT> Desloca o cursor até documentbegin/-end
+ <Shift-Control-ZT> Seleciona area (até documentbegin/-end)
+sonstige
+ <Shift-slash> Seleciona todo o documento
+ <Insert> Insere seleção
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Modo-emacs
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ <Control-a> = Começo da linha
+ <Control-b> = esquerda
+ <Control-d> = Apaga
+ <Control-e> = Fim da linha
+ <Control-f> = Direita
+ (<Control-k> outra associação)
+ <Control-n> = Acima
+ <Control-o> = Return+Left
+ <Control-p> = Abaixo
+ <Control-t>
+ <Control-v> = Uma página acima
+ <Meta-b>
+ <Meta-d>
+ <Meta-f>
+ <Meta-less> move o cursor para o começo do texto
+ <Meta-greater> move o cursor para o começo do texto
+ <Meta-Backspace>
+ <Meta-Delete>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \ No newline at end of file
diff --git a/support/tcltexed/hlp/bre/epsf.txt b/support/tcltexed/hlp/bre/epsf.txt
new file mode 100644
index 0000000000..c83e63d32c
--- /dev/null
+++ b/support/tcltexed/hlp/bre/epsf.txt
@@ -0,0 +1,12 @@
+############################################################
+package epsf
+############################################################
+\usepackage{epsf} ::epsf::
+\epsfxsize ::epsfxsize::
+\epsfbox{} ::epsfbox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I don't now how these commands work, you could include
+eps-pictures into your document.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I personaly use the latex2e package graphicx for that
+and it works quite fine.
diff --git a/support/tcltexed/hlp/bre/gpl_hlp.txt b/support/tcltexed/hlp/bre/gpl_hlp.txt
new file mode 100644
index 0000000000..e04861aa1d
--- /dev/null
+++ b/support/tcltexed/hlp/bre/gpl_hlp.txt
@@ -0,0 +1,425 @@
+GNU General Public License - GNU Project - Free Software Foundation (FSF)
+::gpl_hlp::
+Table of Contents
+
+GNU GENERAL PUBLIC LICENSE
+
+Preamble
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+How to Apply These Terms to Your New Programs
+
+GNU GENERAL PUBLIC LICENSE | Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0.
+ This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+
+1.
+ You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+
+2.
+ You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+
+2.a)
+ You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+
+2.b)
+ You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+
+2.c)
+ If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+
+3.
+ You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+
+3.a)
+ Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+
+3.b)
+ Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+
+3.c)
+ Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+
+4.
+ You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+
+5.
+ You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+
+6.
+ Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+
+7.
+ If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+
+8.
+ If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+
+9.
+ The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+
+10.
+ If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+NO WARRANTY
+
+
+11.
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+
+12.
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+
+END OF TERMS AND CONDITIONS
+
+
+
+How to Apply These Terms to Your New Programs
+
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+- one line to give the program's name and an idea of what it does. -
+Copyright (C) 19xx - name of author -
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+Gnomovision version 69, Copyright (C) 19xx - name of author -
+Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
+type `show w'. This is free software, and you are welcome
+to redistribute it under certain conditions; type `show c'
+for details.
+
+
+
+The hypothetical commands `show w' and `show c' should show
+the appropriate parts of the General Public License. Of course, the
+commands you use may be called something other than `show w' and
+`show c'; they could even be mouse-clicks or menu items--whatever
+suits your program.
+
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+
+Yoyodyne, Inc., hereby disclaims all copyright
+interest in the program `Gnomovision'
+(which makes passes at compilers) written
+by James Hacker.
+
+signature of Ty Coon, 1 April 1989
+Ty Coon, President of Vice
+
+
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
+
+
+
+A copy of
+http://www.gnu.org/copyleft/gpl.html
+
+GNU's home page
+http://www.gnu.org/home.html
+
+FSF &amp; GNU inquiries &amp; questions to
+gnu@gnu.org"
+Other ways to contact
+http://www.gnu.org/home.html#ContactInfo
+
+Copyright notice above.
+Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111, USA
+
+Updated:
+16 Feb 1998 tower
diff --git a/support/tcltexed/hlp/bre/readme_hlp.txt b/support/tcltexed/hlp/bre/readme_hlp.txt
new file mode 100644
index 0000000000..cd06aea28a
--- /dev/null
+++ b/support/tcltexed/hlp/bre/readme_hlp.txt
@@ -0,0 +1,51 @@
+ Tcltexed é um editor de LaTeX
+
+
+ !!! Tome cuidado, este programa esta em construção !!!!
+ Tenho trabalhado bastante no desenvolvimento mas ainda
+ podem haver erros, por favor entre em contato comigo, o
+ jeito mais fácil é pelo meu endereço eletrônico:
+ mys@faveve.uni-stuttgart.de
+
+ Rápida introdução :
+
+ Uma descrição do programa pode ser achado em :
+ "Ajuda" - "Tcltexed".
+
+ Você sempre pode pressionar F1
+ Para todos os comandos Latex (que eu conheço) existe uma curta descrição,
+ mas eu apenas escrevi sobre metade deles.
+ Os atalhos usados no tcltexed são parecidos com Motif,
+ Emacs, joe ( como no Borlland Pascal), adicionalmente
+ existem alguns atalhos adicionados por mim mesmo.
+ Ao abrir a janela do editor você ira achar uma pequena
+ imagem no canto superior esquerdo, se ela esta colorida (
+ click com o mouse ) esta será a janela do documento
+ principal. Se você clicar sobre um comando na seção
+ matemática ele será inserido na janela do editor que tem o
+ foco ( mostra na imagem do canto esquerdo uma imagens com
+ ondas circulares) .
+ Se você começar a inserir um comando Latex tcltexed irá completar este comando.
+ (Exemplo: \G somente pode ser \Gamma)
+ Se você não quiser que isto aconteça pode inibi-lo nas opções
+ principais.
+ Os botões no topo da janela do editor podem ser usados para
+ iniciar os programas correspondentes usando o documento como
+ argumento.
+ Este programa pode ser usado em Unix, Windows 9x, Windows NT etc.
+ Se você quiser tentar executa-lo em Macintosh por favor entre
+ em contato comigo.
+
+ Para rodar este programa você precisa ter Tcl/Tk instalado,
+ onde você pode fazer o download pois é aberto.
+ Você pode utilizar o meu programa? Ele é distribuido de
+ forma aberta.
+
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+
+ Perguntas? Achou algum erro? Alguma idéia para futuro
+ desenvolvimento? Pode me mandar um mail:
+
+ Martin Strauss
+ mys@faveve.uni-stuttgart.de
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
diff --git a/support/tcltexed/hlp/bre/sonder.txt b/support/tcltexed/hlp/bre/sonder.txt
new file mode 100644
index 0000000000..33685acbf5
--- /dev/null
+++ b/support/tcltexed/hlp/bre/sonder.txt
@@ -0,0 +1,14 @@
+############################################################
+Hae ?
+############################################################
+\today ::today::
+
+insert date of compilation into the document
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX ::LaTeX::
+
+insert logo of LaTeX
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX2e ::LaTeX2e::
+
+insert logo of LaTeX2e
diff --git a/support/tcltexed/hlp/bre/tcltexed_hlp.txt b/support/tcltexed/hlp/bre/tcltexed_hlp.txt
new file mode 100644
index 0000000000..49b96166bc
--- /dev/null
+++ b/support/tcltexed/hlp/bre/tcltexed_hlp.txt
@@ -0,0 +1,143 @@
+ ############################################################
+#::tcltexed_hlp::
+# Tcltexed quer dizer tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Tcltexed é separado em duas partes. Uma delas a janela de
+edição e a outra é a janela principal com inúmeras funções.
+
+Todas as funções que deveriam funcionar na janela do editor
+irão usar a janela do editor que tem foco. Uma clara
+explicação a respeito foi feita na ajuda do editor.
+
+Estas são as descrições das listas de funções que existem na
+janela principal.
+
+ítens de menu da janela principal
+
+1. Arquivo
+ a) Novo
+ Inicie um novo documento LaTeX. Existe um documento
+ pré-definido para o iniciar um novo documento. Caso o arquivo
+ etc/default.tex existir ( dentro da arvore do tcltexed ) este
+ arquivo será usado.
+
+ b) Abrir
+ Abre um arquivo no editor ...
+
+ c) Adicionar
+ Adiciona o texto indicado na posição do cursor.
+
+ d) Salvar e) Salvar como
+ Salvar o texto.
+
+ f) Fechar
+ Feche o Tcltexed. Todas as janelas serão fechadas, se
+ necessário serão perguntadas pelas janelas que precisam ser
+ salvas.
+
+2. Editar
+
+ a) Apagar
+ Apagar todo o texto.
+
+ b) Quebrar linhas
+ Escolha quebrar linha no texto inteiro, na seção atual ou
+ na linha atual. Toda linha que é seguida por uma linha que
+ termina com espaço será interpretada como uma continuação.
+ Antes de uma linha ser quebrada todas as suas continuação
+ serão levadas em conta. Com os outros 3 ítens no menu é
+ possível adicionar todas as continuações a uma linha sem
+ quebrar a linha inteira depois desta.
+ Se existir algum espaço no começo da linha estes não serão
+ ignorados.
+
+ c) Correção ortográfica
+ Marca todas as palavras no seu texto com problemas de
+ tipagem.
+
+ d) Adicionar palavra.
+ Para registrar a palavra como tipada corretamente você deve
+ colocar o cursor no texto desejado com isso. Para a palavra
+ fazer sentido ela deve estar marcada como mal digitada. ou
+ não ?!
+
+ e) \"a..\ss -> ä..ß
+ Traduz os comandos de latex para serem mostrar caracteres
+ especiais.
+
+ f) ä..ß -> \"a..\ss
+ Traduz caracteres para seus comandos em latex.
+
+ g) "a.."s -> ä..ß
+ Traduz comandos em latex do pacote [german]{babel} para
+ mostrar caracteres especiais.
+
+ h) ä..ß -> "a.."s
+ Inverso da opção anterior.
+
+ i) Procurar
+ Procura e substitui por palavras no texto.
+
+ j) Meus
+ Aqui você pode definir suas próprias sequencias de Latex a
+ serem inseridas no texto, se você pressionar o botão antes
+ da caixa de texto esta definição será salva quando você
+ mandar salvar opções.
+
+3. Opções
+
+ a) Parênteses Automáticos.
+ Se estiver ligado, para cada {([ que você abrir ele ira
+ completar e fecha-lo.
+
+ b) Packages/etc
+ Ativar auto-preenchimento de acordo com vários pacotes
+ disponíveis.
+ Um, exemplo:
+ \fra --> \frac{}{}
+
+ Quantos mais comandos o tcltexed deveria reconhecer mais
+ tempo ele levaria pois eles começam a ficar todos
+ parecidos para o tcltexed.
+
+ c) Idioma
+ Escolha o seu idioma preferido, note que as opções somente
+ irão funcionar na próxima vez que você iniciar o tcltexed,
+ também irá afetar o dicionário para correção ortográfica.
+
+ d) tamanho da fonte
+ Acerta o tamanho da fonte para o editor.
+
+ e) Salve as opções
+ Salve todas as configurações utilizadas. Esta configuração
+ será aberta durante a próxima inicialização do Tcltexed.
+ (O arquivo com as configurações para unix é .tcltexed,
+ e para o Windows é tcltexed.ini . Mas por favor não editar .
+ Arquivos de configuração das versões anteriores do Tcltexed serão ignorados
+ (e posteriormente serão sobrescritos.)
+
+4. Fórmulas matemáticas
+ A galeria de imagens para a saída de comandos matemáticos
+ ambiente. Pressione a imagem e será inserido o comando representado,
+ pela imagem, na posição do cursor.
+
+5. geral
+ Como o 4. mas outros comandos.
+
+6. Ajuda
+
+ a) Tcltexed
+ Ajuda sobre o próprio tcltexed
+
+ b) LaTeX
+ Um índice para todos os comandos de Latex que eu já ouvi
+ falar.
+ Para todos os comandos de latex que eu escrevi uma pequena
+ ajuda,
+ + <Return> + botão esquerdo Mostra a ajuda.
+ botão direito Insere o comando
+ pressionando A-Z ou a-z força a lista pular para o
+ comando com essa primeira letra.
+
diff --git a/support/tcltexed/hlp/eng/Breaking.txt b/support/tcltexed/hlp/eng/Breaking.txt
new file mode 100644
index 0000000000..39b180e3a9
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Breaking.txt
@@ -0,0 +1,145 @@
+############################################################
+Line & Page Breaking
+############################################################
+
+The first thing LaTeX does when processing ordinary text is
+to translate your input file into a string of glyphs and
+spaces. To produce a printed document, this string must be
+broken into lines, and these lines must be broken into pages.
+In some environments, you do the line breaking yourself with
+the \\ command, but LaTeX usually does it for you.
+
+ \\: Start a new line.
+ \- (hyphenation): Insert explicit hyphenation.
+ \cleardoublepage: Start a new right-hand page.
+ \clearpage: Start a new page.
+ \enlargethispage: Enlarge the current page a bit.
+ \fussy: Be fussy about line breaking.
+ \hyphenation: Tell LaTeX how to hyphenate a word.
+ \linebreak: Break the line.
+ \newline: Break the line prematurely.
+ \newpage: Start a new page.
+ \nolinebreak: Don't break the current line.
+ \nopagebreak: Don't make a page break here.
+ \pagebreak: Please make a page break here.
+ \sloppy: Be sloppy about line breaking.
+
+############################################################
+ \\ ::\::
+############################################################
+\\[*][extra-space]
+The \\ command tells LaTeX to start a new line. It has an
+optional argument, extra-space, that specifies how much extra
+vertical space is to be inserted before the next line. This
+can be a negative amount.
+The \\* command is the same as the ordinary \\ command except
+that it tells LaTeX not to start a new page after the line.
+############################################################
+ \- ::-::
+############################################################
+The \- command tells LaTeX that it may hyphenate the word at
+that point. LaTeX is very good at hyphenating, and it will
+usually find all correct hyphenation points. The \- command
+is used for the exceptional cases.
+
+Note that when you insert \- commands in a word, the word
+will only be hyphenated at those points and not at any of the
+hyphenation points that LaTeX might otherwise have chosen.
+############################################################
+ \cleardoublepage ::cleardoublepage::
+############################################################
+The \cleardoublepage command ends the current page and causes
+all figures and tables that have so far appeared in the input
+to be printed. In a two-sided printing style, it also makes
+the next page a right-hand (odd-numbered) page, producing a
+blank page if necessary.
+############################################################
+ \clearpage ::clearpage::
+############################################################
+The \clearpage command ends the current page and causes all
+figures and tables that have so far appeared in the input to
+be printed.
+############################################################
+ \enlargethispage ::enlargethispage::
+############################################################
+\enlargethispage{size}
+\enlargethispage*{size}
+Enlarge the \textheight for the current page by the specified
+amount; e.g.
+\enlargethispage{\baselineskip} will allow one additional line.
+The starred form tries to squeeze the material together on
+the page as much as possible. This is normally used together
+with an explicit \pagebreak.
+############################################################
+ \fussy ::fussy::
+############################################################
+\fussy
+This declaration (which is the default) makes TeX more fussy
+about line breaking. This can avoids too much space between
+words, but may produce overfull boxes.
+This command cancels the effect of a previous \sloppy command.
+section \sloppy
+############################################################
+ \hyphenation ::hypentation::
+############################################################
+\hyphenation{words}
+The \hyphenation command declares allowed hyphenation points,
+where words is a list of words, separated by spaces, in which
+each hyphenation point is indicated by a - character.
+############################################################
+ \linebreak ::linebreak::
+############################################################
+\linebreak[number]
+The \linebreak command tells LaTeX to break the current line
+at the point of the command. With the optional argument,
+number, you can convert the \linebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+The \linebreak command causes LaTeX to stretch the line so it
+extends to the right margin.
+############################################################
+ \newline ::newline::
+############################################################
+The \newline command breaks the line right where it is. It
+can only be used in paragraph mode.
+############################################################
+ \newpage ::newpage::
+############################################################
+The \newpage command ends the current page.
+############################################################
+ \nolinebreak ::nolinebreak::
+############################################################
+\nolinebreak[number]
+The \nolinebreak command prevents LaTeX from breaking the
+current line at the point of the command. With the optional
+argument, number, you can convert the \nolinebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \nopagebreak ::nopagebreak::
+############################################################
+\nopagebreak[number]
+The \nopagebreak command prevents LaTeX from breaking the
+current page at the point of the command. With the optional
+argument, number, you can convert the \nopagebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \pagebreak ::pagebreak::
+############################################################
+\pagebreak[number]
+The \pagebreak command tells LaTeX to break the current page
+at the point of the command. With the optional argument,
+number, you can convert the \pagebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+############################################################
+ \sloppy ::sloppy::
+############################################################
+\sloppy
+This declaration makes TeX less fussy about line breaking.
+This can prevent overfull boxes, but may leave too much space
+between words. Lasts until a \fussy command is issued.
+section \fussy.
diff --git a/support/tcltexed/hlp/eng/Characters.txt b/support/tcltexed/hlp/eng/Characters.txt
new file mode 100644
index 0000000000..6117d613e5
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Characters.txt
@@ -0,0 +1,31 @@
+############################################################
+Special Characters ::#::%::symbol::
+############################################################
+
+The following characters play a special role in LaTeX and are
+called "special printing characters", or simply
+"special characters".
+
+ # $ % & ~ _ ^ \ { }
+
+Whenever you put one of these special characters into your
+file, you are doing something special. If you simply want
+the character to be printed just as any other letter, include
+a \ in front of the character. For example, \$ will produce
+$ in your output.
+
+One exception to this rule is the \ itself because \\ has its
+own special meaning. A \ is produced by typing $\backslash$
+in your file.
+Also, \~ means `place a tilde accent over the following letter',
+so you will probably want to use \verb instead.
+
+In addition, you can access any character of a font once you
+know its number by using the \symbol command. For example,
+the character used for displaying spaces in the \verb*
+command has the code decimal 32, so it can be typed as
+\symbol{32}.
+
+You can also specify octal numbers with ' or hexadecimal
+numbers with ", so the previous example could also be written
+ as \symbol{'40} or \symbol{"20}.
diff --git a/support/tcltexed/hlp/eng/Contents.txt b/support/tcltexed/hlp/eng/Contents.txt
new file mode 100644
index 0000000000..49d35032a9
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Contents.txt
@@ -0,0 +1,53 @@
+############################################################
+Table of Contents
+############################################################
+::tableofcontents::listoffigures::listoftables::
+A table of contents is produced with the \tableofcontents
+command. You put the command right where you want the table
+of contents to go; LaTeX does the rest for you. It produces
+a heading, but it does not automatically start a new page.
+If you want a new page after the table of contents, include
+a \newpage command after the \tableofcontents command.
+
+There are similar commands \listoffigures and \listoftables
+for producing a list of figures and a list of tables,
+respectively. Everything works exactly the same as for the
+table of contents.
+
+NOTE: If you want any of these items to be generated, you
+cannot have the \nofiles command in your document.
+
+ \addcontentsline: Add an entry to table of
+ contents etc.
+ \addtocontents: Add text directly to table of
+ contents file etc.
+
+############################################################
+ \addcontentsline ::addcontentsline::
+############################################################
+\addcontentsline{file}{sec_unit}{entry}
+The \addcontentsline command adds an entry to the specified
+list or table where:
+
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ sec_unit controls the formatting of the entry. It
+ should be one of the following, depending upon
+ the value of the file argument:
+ toc -- the name of the sectional unit, such
+ as part or subsection.
+ lof -- figure
+ lot -- table
+ entry is the text of the entry.
+############################################################
+ \addtocontents ::addtocontents::
+############################################################
+\addtocontents{file}{text}
+The \addtocontents command adds text (or formatting commands)
+directly to the file that generates the table of contents or
+list of figures or tables.
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ text is the information to be written.
diff --git a/support/tcltexed/hlp/eng/Counters.txt b/support/tcltexed/hlp/eng/Counters.txt
new file mode 100644
index 0000000000..ef4316a446
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Counters.txt
@@ -0,0 +1,113 @@
+############################################################
+Counters
+############################################################
+
+Everything LaTeX numbers for you has a counter associated
+with it. The name of the counter is the same as the name
+of the environment or command that produces the number,
+except with no \. (enumi - enumiv are used for the nested
+enumerate environment.) Below is a list of the counters
+used in LaTeX's standard document classes to control
+numbering.
+
+ part paragraph figure enumi
+ chapter subparagraph table enumii
+ section page footnote enumiii
+ subsection equation mpfootnote enumiv
+ subsubsection
+
+ \addtocounter: Add a quantity to a counter.
+ \alph: Print value of a counter using letters.
+ \arabic: Print value of a counter using numerals.
+ \fnsymbol: Print value of a counter using symbols.
+ \newcounter: Define a new counter.
+ \refstepcounter: Add to counter, resetting subsidiary counters.
+ \roman: Print value of a counter using roman numerals.
+ \setcounter: Set the value of a counter.
+ \stepcounter: Add to counter, resetting subsidiary counters.
+ \usecounter: Use a specified counter in a list environment.
+ \value: Use the value of a counter in an expression.
+
+############################################################
+ \addtocounter ::addtocounter::
+############################################################
+\addtocounter{counter}{value}
+The \addtocounter command increments the counter by the
+amount specified by the value argument. The value argument
+can be negative.
+############################################################
+ \alph ::alph::
+############################################################
+\alph{counter}
+This command causes the value of the counter to be printed
+in alphabetic characters. The \alph command uses lower case
+alphabetic alphabetic characters, i.e., a, b, c... while the
+\Alph command uses upper case alphabetic characters,
+i.e., A, B, C....
+############################################################
+ \arabic ::arabic::
+############################################################
+\arabic{counter}
+The \arabic command causes the value of the counter to be
+printed in Arabic numbers, i.e., 3.
+############################################################
+ \fnsymbol ::fnsymbol::
+############################################################
+\fnsymbol{counter}
+The \fnsymbol command causes the value of the counter to be
+printed in a specific sequence of nine symbols that can be
+used for numbering footnotes. eg. From 1-9:
+NB. counter must have a value between 1 and 9 inclusive.
+############################################################
+ \newcounter ::newcounter::
+############################################################
+\newcounter{foo}[counter]
+The \newcounter command defines a new counter named foo. The
+counter is initialized to zero.
+The optional argument [counter] causes the counter foo to be
+reset whenever the counter named in the optional argument is
+incremented.
+############################################################
+ \refstepcounter ::refstepcounter::
+############################################################
+\refstepcounter{counter}
+The \refstepcounter command works like \stepcounter See
+section \stepcounter, except it also defines the current
+\ref value to be the result of \thecounter.
+############################################################
+ \roman ::roman
+############################################################
+\roman{counter}
+This command causes the value of the counter to be printed
+in Roman numerals. The \roman command uses lower case Roman
+numerals, i.e., i, ii, iii..., while the \Roman command uses
+upper case Roman numerals, i.e., I, II, III....
+############################################################
+ \stepcounter ::stepcounter::
+############################################################
+\stepcounter{counter}
+The \stepcounter command adds one to the counter and resets
+all subsidiary counters.
+############################################################
+ \setcounter ::setcounter::
+############################################################
+\setcounter{counter}{value}
+The \setcounter command sets the value of the counter to that
+specified by the value argument.
+############################################################
+ \usecounter ::usecounter::
+############################################################
+\usecounter{counter}
+The \usecounter command is used in the second argument of the
+list environment to allow the counter specified to be used to
+number the list items.
+############################################################
+ \value ::value::
+############################################################
+\value{counter}
+The \value command produces the value of the counter named
+in the mandatory argument. It can be used where LaTeX expects
+an integer or number, such as the second argument of a
+\setcounter or \addtocounter command, or in:
+ \hspace{\value{foo}\parindent}
+It is useful for doing arithmetic with counters.
diff --git a/support/tcltexed/hlp/eng/Definitions.txt b/support/tcltexed/hlp/eng/Definitions.txt
new file mode 100644
index 0000000000..e2d50c3281
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Definitions.txt
@@ -0,0 +1,82 @@
+############################################################
+Definitions
+############################################################
+
+\newcommand: Define a new command.
+\newenvironment: Define a new environment.
+\newtheorem: Define a new theorem-like environment.
+\newfont: Define a new font name.
+
+############################################################
+ \newcommand ::newcommand::renewcommand::
+############################################################
+ \newcommand{cmd}[args]{definition}
+ \newcommand{cmd}[args][default]{definition}
+ \renewcommand{cmd}[args]{definition}
+ \renewcommand{cmd}[args][default]{definition}
+These commands define (or redefine) a command.
+ cmd A command name beginning with a \. For
+ \newcommand it must not be already defined and
+ must not begin with \end; for \renewcommand it
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the command being defined. The
+ default is for the command to have no arguments.
+ def If this optional parameter is present, it means
+ that the command's first argument is optional.
+ The default value of the optional argument is def.
+ definition The text to be substituted for every
+ occurrence of cmd; a parameter of the form #n in
+ cmd is replaced by the text of the nth argument
+ when this substitution takes place.
+############################################################
+ \newenvironment ::newenvironment::renewenvironment::
+############################################################
+ \newenvironment{nam}[args]{begdef}{enddef}
+ \newenvironment{nam}[args][default]{begdef}{enddef}
+ \renewenvironment{nam}[args]{begdef}{enddef}
+These commands define or redefine an environment.
+ nam The name of the environment. For \newenvironment
+ there must be no currently defined environment
+ by that name, and the command \nam must be
+ undefined. For \renewenvironment the environment
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the newly-defined environment.
+ The default is no arguments.
+ default If this is specified, the first argument
+ is optional, and default gives the default value
+ for that argument.
+ begdef The text substituted for every occurrence of
+ \begin{nam}; a parameter of the form #n in cmd
+ is replaced by the text of the nth argument when
+ this substitution takes place.
+ enddef The text substituted for every occurrence of
+ \end{nam}. It may not contain any argument
+ parameters.
+############################################################
+ \newtheorem ::newtheorem::
+############################################################
+ \newtheorem{env_name}{caption}[within]
+ \newtheorem{env_name}[numbered_like]{caption}
+This command defines a theorem-like environment.
+ env_name The name of the environment to be defined.
+ A string of letters. It must not be the
+ name of an existing environment or counter.
+ caption The text printed at the beginning of the
+ environment, right before the number.
+ This may simply say "Theorem", for example.
+ within The name of an already defined counter,
+ usually of a sectional unit. Provides a
+ means of resetting the new theorem counter
+ within the sectional unit.
+ numbered_like The name of an already defined theorem-like
+ environment.
+The \newtheorem command may have at most one optional argument.
+############################################################
+ \newfont ::newfont::
+############################################################
+\newfont{cmd}{font_name}
+Defines the command name cmd, which must not be currently
+defined, to be a declaration that selects the font named
+font_name to be the current font.
diff --git a/support/tcltexed/hlp/eng/Document.txt b/support/tcltexed/hlp/eng/Document.txt
new file mode 100644
index 0000000000..3e68a83dc2
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Document.txt
@@ -0,0 +1,56 @@
+############################################################
+Document Classes
+############################################################
+
+Valid LaTeX document classes include:
+ article
+ report
+ letter
+ book
+ slides
+Other document classes are often available. See section
+Overview of LaTeX and Local Guide, for details. They are
+selected with the following command:
+
+ \documentclass [options] {class} ::documentclass::
+
+All the standard classes (except slides) accept the following
+options for
+selecting the typeface size (10 pt is default):
+ 10pt, 11pt, 12pt
+All classes accept these options for selecting the paper size
+(default is letter):
+ a4paper, a5paper, b5paper, letterpaper,
+ legalpaper, executivepaper
+Miscellaneous options:
+ landscape -- selects landscape format. Default is portrait.
+ titlepage, notitlepage -- selects if there should be a
+ separate title page.
+ leqno -- equation number on left side of equations. Default
+ is right side.
+ fleqn -- displayed formulas flush left. Default is centred.
+ openbib -- use "open" bibliography format.
+ draft, final -- mark/do not mark overfull boxes with a rule.
+ Default is final.
+These options are not available with the slides class:
+ oneside, twoside -- selects one- or twosided layout.
+ Default is oneside, except for the book class.
+ openright, openany -- determines if a chapter should
+ start on a right-hand page. Default is
+ openright for book.
+ onecolumn, twocolumn -- one or two columns. Defaults
+ to one column.
+The slides class offers the option clock for printing the
+time at the bottom of each note.
+
+If you specify more than one option, they must be separated
+by a comma. Additional packages are loaded by a
+
+ \usepackage[options]{pkg} ::usepackage::
+
+command. If you specify more than one package, they must be
+separated by a comma.
+
+Any options given in the \documentclass command that are
+unknown by the selected document class are passed on to
+the packages loaded with \usepackage.
diff --git a/support/tcltexed/hlp/eng/Environments.txt b/support/tcltexed/hlp/eng/Environments.txt
new file mode 100644
index 0000000000..8284905a3d
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Environments.txt
@@ -0,0 +1,943 @@
+############################################################
+Environments ::begin::end::
+############################################################
+
+LaTeX provides a number of different paragraph-making
+environments. Each environment begins and ends in the same
+manner.
+
+ \begin{environment-name}
+ .
+ .
+ .
+ \end{environment-name}
+
+ array: Math arrays.
+ center: Centred lines.
+ description: Labelled lists.
+ enumerate: Numbered lists.
+ eqnarray: Sequences of aligned equations.
+ equation: Displayed equation.
+ figure: Floating figures.
+ flushleft: Flushed left lines.
+ flushright: Flushed right lines.
+ itemize: Bulleted lists.
+ letter: Letters.
+ list: Generic list environment.
+ minipage: Miniature page.
+ picture: Picture with text, arrows, lines and
+ circles.
+ quotation: Indented environment with paragraph
+ indentation.
+ quote: Indented environment with no paragraph
+ indentation.
+ tabbing: Align text arbitrarily.
+ table: Floating tables.
+ tabular: Align text in columns.
+ thebibliography: Bibliography or reference list.
+ theorem: Theorems, lemmas, etc.
+ titlepage: For hand crafted title pages.
+ verbatim: Simulating typed input.
+ verse: For poetry and other things.
+
+############################################################
+ array ::array::
+############################################################
+
+\begin{array}{col1col2...coln}
+column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+\end{array}
+
+Math arrays are produced with the array environment. It has
+a single mandatory argument describing the number of columns
+and the alignment within them. Each column, coln, is specified
+by a single letter that tells how items in that row should
+be formatted.
+
+ c -- for centred
+ l -- for flush left
+ r -- for flush right
+
+Column entries must be separated by an &. Column entries may
+include other LaTeX commands. Each row of the array must be
+terminated with the string \\.
+
+Note that the array environment can only be used in math mode,
+so normally it is used inside an equation environment.
+############################################################
+ center ::center::
+############################################################
+
+ \begin{center}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{center}
+
+The center environment allows you to create a paragraph
+consisting of lines that are centred within the left and
+right margins on the current page. Each line must be
+terminated with the string \\.
+
+\centering: The declaration form of the center environment.
+
+############################################################
+ \centering ::centering::
+############################################################
+This declaration corresponds to the center environment. This
+declaration can be used inside an environment such as quote
+or in a parbox. The text of a figure or table can be centred
+on the page by putting a \centering command at the beginning
+of the figure or table environment.
+
+Unlike the center environment, the \centering command does
+not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ description ::discription::
+############################################################
+
+ \begin{description}
+ \item [label] First item
+ \item [label] Second item
+ .
+ .
+ .
+ \end{description}
+
+The description environment is used to make labelled lists.
+The label is bold face and flushed right.
+############################################################
+ enumerate ::enumerate::
+############################################################
+
+ \begin{enumerate}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{enumerate}
+
+The enumerate environment produces a numbered list.
+Enumerations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments.
+
+Each item of an enumerated list begins with an \item command.
+There must be at least one \item command within the environment.
+The enumerate environment uses the enumi through enumiv
+counters (see section Counters). The type of numbering can be
+changed by redefining \theenumi etc.
+############################################################
+ eqnarray ::eqnarray::
+############################################################
+
+ \begin{eqnarray}
+ math formula 1 \\
+ math formula 2 \\
+ .
+ .
+ .
+ \end{eqnarray}
+
+The eqnarray environment is used to display a sequence of
+equations or inequalities. It is very much like a three-column
+array environment, with consecutive rows separated by \\ and
+consecutive items within a row separated by an &.
+
+An equation number is placed on every line unless that line
+has a \nonumber command.
+
+The command \lefteqn is used for splitting long formulas
+across lines. It typesets its argument in display style flush
+left in a box of zero width.
+############################################################
+ equation ::equation::
+############################################################
+
+ \begin{equation}
+ math formula
+ \end{equation}
+
+The equation environment centres your equation on the page
+and places the equation number in the right margin.
+############################################################
+ figure ::figure::
+############################################################
+
+ \begin{figure}[placement]
+
+ body of the figure
+
+ \caption{figure title}
+ \end{figure}
+
+Figures are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Figures will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your figure. There are four places where LaTeX
+can possibly put a float:
+ h (Here) - at the position in the text where the
+ figure environment appears.
+ t (Top) - at the top of a text page.
+ b (Bottom) - at the bottom of a text page.
+ p (Page of floats) - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement tbp.
+
+The body of the figure is made up of whatever text, LaTeX
+commands, etc. you wish. The \caption command allows you to
+title your figure.
+############################################################
+ flushleft ::flushleft::
+############################################################
+
+ \begin{flushleft}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushleft}
+
+The flushleft environment allows you to create a paragraph
+consisting of lines that are flushed left, to the left-hand
+margin. Each line must be terminated
+with the string \\.
+
+ \raggedright: The declaration form of the flushleft
+ environment.
+
+############################################################
+ \raggedright ::raggedright::
+############################################################
+This declaration corresponds to the flushleft environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushleft environment, the \raggedright command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ flushright ::flushright::
+############################################################
+
+ \begin{flushright}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushright}
+
+The flushright environment allows you to create a paragraph
+consisting of lines that are flushed right, to the right-hand
+margin. Each line must be terminated with the string \\.
+
+ \raggedleft: The declaration form of the flushright environment.
+
+############################################################
+ \raggedleft ::raggedleft::
+############################################################
+This declaration corresponds to the flushright environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushright environment, the \raggedleft command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ itemize ::itemize::
+############################################################
+
+ \begin{itemize}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{itemize}
+
+The itemize environment produces a "bulleted" list.
+Itemizations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments. Each item of an itemized list
+begins with an \item command. There must be at least one
+\item command within the environment. The itemize environment
+uses the itemi through itemiv counters (see section Counters).
+The type of numbering can be changed by redefining \theitemi
+etc.
+############################################################
+ letter ::letter::
+############################################################
+This environment is used for creating letters. See section
+Letters.
+############################################################
+ list ::list::item::
+############################################################
+The list environment is a generic environment which is used
+for defining many of the more specific environments. It is
+seldom used in documents, but often in macros.
+
+ \begin{list}{label}{spacing}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{list}
+
+The {label} argument specifies how items should be labelled.
+This argument is a piece of text that is inserted in a box
+to form the label. This argument can and usually does contain
+other LaTeX commands.
+
+The {spacing} argument contains commands to change the spacing
+parameters for the list. This argument will most often be
+null, i.e., {}. This will select all default spacing which
+should suffice for most cases.
+############################################################
+ minipage ::minipage::
+############################################################
+
+ \begin{minipage}[position]{width}
+ text
+ \end{minipage}
+
+The minipage environment is similar to a \parbox command. It
+takes the same optional position argument and mandatory width
+argument. You may use other paragraph-making environments
+inside a minipage. Footnotes in a minipage environment are
+handled in a way that is particularly useful for putting
+footnotes in figures or tables. A \footnote or \footnotetext
+command puts the footnote at the bottom of the minipage
+instead of at the bottom of the page, and it uses the
+mpfootnote counter instead of the ordinary footnote counter
+
+See section Counters.
+
+NOTE: Don't put one minipage inside another if you are using
+footnotes; they may wind up at the bottom of the wrong
+minipage.
+############################################################
+ picture ::picture::
+############################################################
+ \begin{picture}(width,height)(x offset,y offset)
+ .
+ .
+ picture commands
+ .
+ .
+ \end{picture}
+The picture environment allows you to create just about any
+kind of picture you want containing text, lines, arrows and
+circles. You tell LaTeX where to put things in the picture
+by specifying their coordinates. A coordinate is a number
+that may have a decimal point and a minus sign -- a number
+like 5, 2.3 or -3.1416. A coordinate specifies a length in
+multiples of the unit length \unitlength, so if \unitlength
+has been set to 1cm, then the coordinate 2.54 specifies a
+length of 2.54 centimetres. You can change the value of
+\unitlength anywhere you want, using the \setlength command,
+but strange things will happen if you try changing it inside
+the picture environment.
+
+A position is a pair of coordinates, such as (2.4,-5),
+specifying the point with x-coordinate 2.4 and y-coordinate -5.
+Coordinates are specified in the usual way with respect to
+an origin, which is normally at the lower-left corner of the
+picture. Note that when a position appears as an argument, it
+is not enclosed in braces; the parentheses serve to delimit
+the argument.
+
+The picture environment has one mandatory argument, which is
+a position. It specifies the size of the picture. The
+environment produces a rectangular box with width and height
+determined by this argument's x- and y-coordinates.
+
+The picture environment also has an optional position argument,
+following the size argument, that can change the origin.
+(Unlike ordinary optional arguments, this argument is not
+contained in square brackets.) The optional argument gives the
+coordinates of the point at the lower-left corner of the picture
+(thereby determining the origin). For example, if \unitlength has
+been set to 1mm, the command
+
+ \begin{picture}(100,200)(10,20)
+
+produces a picture of width 100 millimetres and height 200
+millimetres, whose lower-left corner is the point (10,20) and
+whose upper-right corner is therefore the point (110,220). When
+you first draw a picture, you will omit the optional argument,
+leaving the origin at the lower-left corner. If you then want to
+modify your picture by shifting everything, you just add the
+appropriate optional argument. The environment's mandatory
+argument determines the nominal size of the picture.
+
+This need bear no relation to how large the picture really is;
+LaTeX will happily allow you to put things outside the picture,
+or even off the page. The picture's nominal size is used by LaTeX
+in determining how much room to leave for it.
+
+Everything that appears in a picture is drawn by the \put command.
+The command
+
+ \put (11.3,-.3){...}
+
+puts the object specified by ... in the picture, with its reference
+point at coordinates (11.3,-.3). The reference points for various
+objects will be described below. The \put command creates an LR box.
+You can put anything in the text argument of the \put command that
+you'd put into the argument of an \mbox and related commands. When
+you do this, the reference point will be the lower left corner of
+the box.
+
+Picture commands:
+
+ \circle: Draw a circle.
+ \dashbox: Draw a dashed box.
+ \frame: Draw a frame around an object.
+ \framebox (picture): Draw a box with a frame around it.
+ \line: Draw a straight line.
+ \linethickness: Set the line thickness.
+ \makebox (picture): Draw a box of the specified size.
+ \multiput: Draw multiple instances of an object.
+ \oval: Draw an ellipse.
+ \put: Place an object at a specified place.
+ \shortstack: Make a pile of objects.
+ \vector: Draw a line with an arrow.
+
+############################################################
+ \circle ::circle::
+############################################################
+\circle[*]{diameter}
+The \circle command produces a circle with a diameter as
+close to the specified one as possible. If the *-form of the
+command is used, LaTeX draws a solid circle.
+Note that only circles up to 40 pt can be drawn.
+############################################################
+ \dashbox ::dashbox::
+############################################################
+Draws a box with a dashed line.
+\dashbox{dash_length}(width,height){...}
+The \dashbox has an extra argument which specifies the width
+of each dash. A dashed box looks best when the width and
+height are multiples of the dash_length.
+############################################################
+ \frame ::frame::
+############################################################
+\frame{...}
+The \frame command puts a rectangular frame around the object
+specified in the argument. The reference point is the bottom
+left corner of the frame. No extra space is put between the
+frame and the object.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox(width,height)[position]{...}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the contents
+of the box.
+############################################################
+ \line ::line::
+############################################################
+\line(x slope,y slope){length}
+The \line command draws a line of the specified length and
+slope.
+Note that LaTeX can only draw lines with slope = x/y, where
+x and y have integer values from -6 through 6.
+############################################################
+ \linethickness ::linethickness::
+############################################################
+\linethickness{dimension}
+Declares the thickness of horizontal and vertical lines in a
+picture environment to be dimension, which must be a positive
+length. It does not affect the thickness of slanted lines and
+circles, or the quarter circles drawn by \oval to form the
+corners of an oval.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox(width,height)[position]{...}
+The \makebox command for the picture environment is similar
+to the normal \makebox command except that you must specify
+a width and height in multiples of \unitlength.
+The optional argument, [position], specifies the quadrant
+that your text appears in. You may select up to two of the
+following:
+ t - Moves the item to the top of the rectangle
+ b - Moves the item to the bottom
+ l - Moves the item to the left
+ r - Moves the item to the right
+See section \makebox.
+############################################################
+ \multiput ::multiput::
+############################################################
+\multiput(x coord,y coord)(delta x,delta y){number of copies}{object}
+The \multiput command can be used when you are putting the
+same object in a regular pattern across a picture.
+############################################################
+ \oval ::oval::
+############################################################
+\oval(width,height)[portion]
+The \oval command produces a rectangle with rounded corners.
+The optional argument, [portion], allows you to select part
+of the oval.
+ t - Selects the top portion
+ b - Selects the bottom portion
+ r - Selects the right portion
+ l - Selects the left portion
+Note that the "corners" of the oval are made with quarter
+circles with a maximum
+
+radius of 20 pt, so large "ovals" will look more like boxes
+with rounded corners.
+############################################################
+ \put ::put::
+############################################################
+\put(x coord,y coord){ ... }
+The \put command places the item specified by the mandatory
+argument at the given coordinates.
+############################################################
+ \shortstack ::shortstack::
+############################################################
+\shortstack[position]{... \\ ... \\ ...}
+The \shortstack command produces a stack of objects. The
+valid positions are:
+ r - Moves the objects to the right of the stack
+ l - Moves the objects to the left of the stack
+ c - Moves the objects to the centre of the stack
+ (default)
+############################################################
+ \vector ::vector::
+############################################################
+\vector(x slope,y slope){length}
+The \vector command draws a line with an arrow of the
+specified length and slope. The x and y values must lie
+between -4 and +4, inclusive.
+
+############################################################
+ quotation ::quotation::
+############################################################
+ \begin{quotation}
+ text
+ \end{quotation}
+The margins of the quotation environment are indented on the
+left and the right.
+
+The text is justified at both margins and there is paragraph
+indentation.
+
+Leaving a blank line between text produces a new paragraph.
+############################################################
+ quote ::quote::
+############################################################
+ \begin{quote}
+ text
+ \end{quote}
+The margins of the quote environment are indented on the left
+and the right. The text is justified at both margins. Leaving
+a blank line between text produces a new paragraph.
+############################################################
+ tabbing ::tabbing::
+############################################################
+ \begin{tabbing}
+ text \= more text \= still more text \= last text \\
+ second row \> \> more \\
+ .
+ .
+ .
+ \end{tabbing}
+The tabbing environment provides a way to align text in
+columns. It works by setting tab stops and tabbing to them
+much the way you do with an ordinary typewriter.
+
+It is best suited for cases where the width of each column
+is constant and known in advance.
+
+This environment can be broken across pages, unlike the tabular
+environment.
+
+The following commands can be used inside a tabbing
+enviroment:
+
+############################################################
+ \= ::=::
+############################################################
+Sets a tab stop at the current position.
+############################################################
+ \> ::>::
+############################################################
+Advances to the next tab stop.
+############################################################
+ \< ::<::
+############################################################
+This command allows you to put something to the left of the
+local margin without changing the margin. Can only be used
+at the start of the line.
+############################################################
+ \+ ::+::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the right.
+############################################################
+ \- ::-::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the left.
+############################################################
+ \' ::'::
+############################################################
+Moves everything that you have typed so far in the current
+column, i.e. everything from the most recent \>, \<, \', \\,
+or \kill command, to the right of the previous column, flush
+against the current column's tab stop.
+############################################################
+ \` ::`::
+############################################################
+Allows you to put text flush right against any tab stop,
+including tab stop 0. However, it can't move text to the right
+of the last column because here's no tab stop there. The \`
+command moves all the text that follows it, up to the \\ or
+\end{tabbing} command that ends the line, to the right margin
+of the tabbing environment. There must be no \> or \' command
+between the \` and the command that ends the line.
+############################################################
+ \kill ::kill::
+############################################################
+Sets tab stops without producing text. Works just like \\
+except that it throws away the current line instead of
+producing output for it. The effect of any \=, \+ or \-
+commands in that line remain in effect.
+############################################################
+ \pushtabs ::pushtabs::
+############################################################
+Saves all current tab stop positions. Useful for temporarily
+changing tab stop positions in the middle of a tabbing
+environment.
+############################################################
+ \pushtabs
+############################################################
+Restores the tab stop positions saved by the last \pushtabs.
+############################################################
+ \a ::a::
+############################################################
+In a tabbing environment, the commands \=, \' and \` do not
+produce accents as normal. Instead, the commands \a=, \a'
+and \a` are used.
+
+This example typesets a Pascal function in a traditional
+format:
+
+ \begin{tabbing}
+ function \= fact(n : integer) : integer;\\
+ \> begin \= \+ \\
+ \> if \= n $>$ 1 then \+ \\
+ fact := n * fact(n-1) \- \\
+ else \+ \\
+ fact := 1; \-\- \\
+ end;\\
+ \end{tabbing}
+
+############################################################
+ table ::table::
+############################################################
+
+ \begin{table}[placement]
+
+ body of the table
+
+ \caption{table title}
+ \end{table}
+
+Tables are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Tables will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your table. There are four places where LaTeX
+can possibly put a float:
+ h : Here - at the position in the text where the table
+ environment appears.
+ t : Top - at the top of a text page.
+ b : Bottom - at the bottom of a text page.
+ p : Page of floats - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement [tbp].
+
+The body of the table is made up of whatever text, LaTeX
+commands, etc., you wish. The \caption command allows you to
+title your table.
+############################################################
+ tabular ::tabular::
+############################################################
+
+ \begin{tabular}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular}
+
+or
+
+ \begin{tabular*}{width}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular*}
+
+These environments produce a box consisting of a sequence of
+rows of items, aligned vertically in columns. The mandatory
+and optional arguments consist of:
+ width Specifies the width of the tabular* environment.
+ There must be rubber space between columns that
+ can stretch to fill out the specified width.
+ pos Specifies the vertical position; default is
+ alignment on the centre of the environment.
+ t - align on top row
+ b - align on bottom row
+ cols Specifies the column formatting. It consists of
+ a sequence of the following specifiers,
+ corresponding to the sequence of columns and
+ intercolumn material.
+ l - A column of left-aligned items.
+ r - A column of right-aligned items.
+ c - A column of centred items.
+ | - A vertical line the full height and depth of
+ the environment.
+ @{text} - This inserts text in every row. An
+ @-expression suppresses the intercolumn space
+ normally inserted between columns; any desired
+ space between the inserted text and the adjacent
+ items must be included in text. An \extracolsep{wd}
+ command in an @-expression causes an extra space
+ of width wd to appear to the left of all subsequent
+ columns, until countermanded by another \extracolsep
+ command. Unlike ordinary intercolumn space, this
+ extra space is not suppressed by an @-expression.
+ An \extracolsep command can be used only in an
+ @-expression in the cols argument.
+ p{wd} - Produces a column with each item typeset in
+ a parbox of width wd, as if it were the argument
+ of a \parbox[t]{wd} command. However, a \\ may not
+ appear in the item, except in the following
+ situations:
+ 1. inside an environment like minipage,
+ array, or tabular.
+ 2. inside an explicit \parbox.
+ 3. in the scope of a \centering, \raggedright,
+ or \raggedleft
+ declaration. The latter declarations must appear
+ inside braces or an environment when used in a
+ p-column element.
+ *{num}{cols} - Equivalent to num copies of cols, where
+ num is any positive integer and cols is any list of
+ column-specifiers, which may contain another
+ *-expression.
+
+These commands can be used inside a tabular environment:
+
+ \cline: Draw a horizontal line spanning some columns.
+ \hline: Draw a horizontal line spanning all columns.
+ \multicolumn: Make an item spanning several columns.
+ \vline: Draw a vertical line.
+
+############################################################
+ \cline ::cline::
+############################################################
+\cline{i-j}
+The \cline command draws horizontal lines across the columns
+specified, beginning in column i and ending in column j,
+which are identified in the mandatory argument.
+############################################################
+ \hline ::hline::
+############################################################
+The \hline command will draw a horizontal line the width of
+the table. It's most commonly used to draw a line at the top,
+bottom, and between the rows of the table.
+############################################################
+ \multicolumn ::multicolumn::
+############################################################
+\multicolumn{cols}{pos}{text}
+The \multicolumn is used to make an entry that spans several
+columns. The first mandatory argument, cols, specifies the
+number of columns to span. The second mandatory argument, pos,
+specifies the formatting of the entry; c for centred, l for
+flushleft, r for flushright. The third mandatory argument,
+text, specifies what text is to make up the entry.
+############################################################
+ \vline ::vline::
+############################################################
+The \vline command will draw a vertical line extending the
+full height and depth of its row. An \hfill command can be
+used to move the line to the edge of the column. It can also
+be used in an @-expression.
+############################################################
+ thebibliography ::thebibliography::
+############################################################
+ \begin{thebibliography}{widest-label}
+ \bibitem[label]{cite_key}
+ .
+ .
+ .
+ \end{thebibliography}
+The thebibliography environment produces a bibliography or
+reference list. In the article class, this reference list is
+labelled "References"; in the report class, it is labelled
+"Bibliography".
+
+ widest-label: Text that, when printed, is
+ approximately as wide as the widest item
+ label produces by the \bibitem commands.
+ \bibitem: Specify a bibliography item.
+ \cite: Refer to a bibliography item.
+ \nocite: Include an item in the bibliography.
+ Using BibTeX: Automatic generation of bibliographies.
+
+############################################################
+ \bibitem ::bibitem::
+############################################################
+\bibitem[label]{cite_key}
+The \bibitem command generates an entry labelled by label.
+If the label argument is missing, a number is generated as
+the label, using the enumi counter. The cite_key is any
+sequence of letters, numbers, and punctuation symbols not
+containing a comma. This command writes an entry on the `.aux'
+file containing cite_key and the item's label. When this
+`.aux' file is read by the \begin{document} command, the
+item's label is associated with cite_key, causing the
+reference to cite_key by a \cite command to produce the
+associated label.
+############################################################
+ \cite ::cite::
+############################################################
+\cite[text]{key_list}
+The key_list argument is a list of citation keys. This command
+generates an in-text citation to the references associated
+with the keys in key_list by entries on the `.aux' file read
+by the \begin{document} command. The optional text argument
+will appear after the citation, i.e. \cite[p. 2]{knuth} might
+produce `[Knuth, p. 2]'.
+############################################################
+ \nocite ::nocite::
+############################################################
+\nocite{key_list}
+The \nocite command produces no text, but writes key_list,
+which is a list of one or more citation keys, on the `.aux'
+file.
+############################################################
+ Using BibTeX
+############################################################
+If you use the BibTeX program by Oren Patashnik (highly
+recommended if you need a bibliography of more than a couple
+of titles) to maintain your bibliography, you don't use the
+thebibliography environment. Instead, you include the lines
+
+ \bibliographystyle{style} ::bibliographystyle::
+ \bibliography{bibfile} ::bibliography::
+
+where style refers to a file style.bst, which defines how
+your citations will look. The standard styles distributed
+with BibTeX are:
+
+ alpha Sorted alphabetically. Labels are formed
+ from name of author and year of publication.
+ plain Sorted alphabetically. Labels are numeric.
+ unsrt Like plain, but entries are in order of
+ citation.
+ abbrv Like plain, but more compact labels.
+
+In addition, numerous other BibTeX style files exist tailored
+to the demands of various publications.
+The argument to \bibliography refers to the file bibfile.bib,
+which should contain your database in BibTeX format. Only the
+entries referred to via \cite and \nocite will be listed in
+the bibliography.
+############################################################
+ theorem ::theorem::
+############################################################
+
+ \begin{theorem}
+ theorem text
+ \end{theorem}
+
+The theorem environment produces "Theorem x" in boldface
+followed by your theorem text.
+############################################################
+ titlepage ::titlepage::
+############################################################
+
+ \begin{titlepage}
+ text
+ \end{titlepage}
+
+The titlepage environment creates a title page, i.e. a page
+with no printed page number or heading. It also causes the
+following page to be numbered page one.
+
+Formatting the title page is left to you. The \today command
+comes in handy for title pages.
+
+Note that you can use the \maketitle (see section \maketitle)
+command to produce a standard title page.
+############################################################
+ verbatim ::verbatim::
+############################################################
+
+ \begin{verbatim}
+ text
+ \end{verbatim}
+
+The verbatim environment is a paragraph-making environment
+that gets LaTeX to print exactly what you type in. It turns
+LaTeX into a typewriter with carriage returns and blanks
+having the same effect that they would on a typewriter.
+
+ \verb: The macro form of the verbatim environment.
+
+############################################################
+ \verb ::verb::
+############################################################
+\verb char literal_text char
+\verb*char literal_text char
+Typesets literal_text exactly as typed, including special
+characters and spaces, using a typewriter (\tt) type style.
+There may be no space between \verb or \verb* and char
+(space is shown here only for clarity). The *-form differs
+only in that spaces are printed as `\verb*| |'.
+############################################################
+ verse ::verse::
+############################################################
+ \begin{verse}
+ text
+ \end{verse}
+The verse environment is designed for poetry, though you may
+find other uses for it.
+The margins are indented on the left and the right. Separate
+the lines of each stanza with \\, and use one or more blank
+lines to separate the stanzas.
diff --git a/support/tcltexed/hlp/eng/Footnotes.txt b/support/tcltexed/hlp/eng/Footnotes.txt
new file mode 100644
index 0000000000..e4655dd0cd
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Footnotes.txt
@@ -0,0 +1,47 @@
+############################################################
+Footnotes
+############################################################
+
+Footnotes can be produced in one of two ways. They can be
+produced with one command, the \footnote command. They can
+also be produced with two commands, the \footnotemark and the
+\footnotetext commands. See the specific command for
+information on why you would use one over the other.
+
+ \footnote: Insert a footnote.
+ \footnotemark: Insert footnote mark only.
+ \footnotetext: Insert footnote text only.
+
+############################################################
+ \footnote ::footnote::
+############################################################
+\footnote[number]{text}
+The \footnote command places the numbered footnote text at
+the bottom of the current page. The optional argument, number,
+is used to change the default footnote number. This command
+can only be used in outer paragraph mode; i.e., you cannot
+use it in sectioning commands like \chapter, in figures,
+tables or in a tabular environment.
+############################################################
+ \footnotemark ::footnotemark::
+############################################################
+The \footnotemark command puts the footnote number in the
+text. This command can be used in inner paragraph mode. The
+text of the footnote is supplied by the \footnotetext command.
+This command can be used to produce several consecutive
+footnote markers referring to the same footnote by using
+
+ \footnotemark[\value{footnote}]
+
+after the first \footnote command.
+############################################################
+ \footnotetext ::footnotetext::
+############################################################
+\footnotetext[number]{text}
+The \footnotetext command produces the text to be placed at
+the bottom of the page. This command can come anywhere after
+the \footnotemark command. The \footnotetext command must
+appear in outer paragraph mode.
+
+The optional argument, number, is used to change the default
+footnote number.
diff --git a/support/tcltexed/hlp/eng/Input.txt b/support/tcltexed/hlp/eng/Input.txt
new file mode 100644
index 0000000000..e8da3c1cf9
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Input.txt
@@ -0,0 +1,53 @@
+############################################################
+Splitting the Input
+############################################################
+
+A large document requires a lot of input. Rather than
+putting the whole input in a single large file, it's more
+efficient to split it into several smaller ones.
+Regardless of how many separate files you use, there is one
+that is the root file; it is the one whose name you type when
+you run LaTeX.
+
+ \include: Conditionally include a file.
+ \includeonly: Determine which files are included.
+ \input: Unconditionally include a file.
+
+############################################################
+ \include ::include::
+############################################################
+\include{file}
+The \include command is used in conjunction with the
+\includeonly command for selective inclusion of files. The
+file argument is the first name of a file, denoting `file.tex'.
+If file is one the file names in the file list of the
+\includeonly command or if there is no \includeonly command,
+the \include command is equivalent to
+
+ \clearpage \input{file} \clearpage
+
+except that if the file `file.tex' does not exist, then a
+warning message rather than an error is produced. If the file
+is not in the file list, the \include command is equivalent
+to \clearpage.
+
+The \include command may not appear in the preamble or in a
+file read by another \include command.
+############################################################
+ \includeonly ::includeonly::
+############################################################
+\includeonly{file_list}
+The \includeonly command controls which files will be read
+in by an \include command. file_list should be a
+comma-separated list of filenames. Each filename must match
+exactly a filename specified in a \include command. This
+command can only appear in the preamble.
+############################################################
+ \input ::input::
+############################################################
+\input{file}
+The \input command causes the indicated file to be read and
+processed, exactly as if its contents had been inserted in
+the current file at that point. The file name may be a
+complete file name with extension or just a first name, in
+which case the file `file.tex' is used.
diff --git a/support/tcltexed/hlp/eng/Layout.txt b/support/tcltexed/hlp/eng/Layout.txt
new file mode 100644
index 0000000000..61559daa09
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Layout.txt
@@ -0,0 +1,36 @@
+############################################################
+Layout
+############################################################
+
+Miscellaneous commands for controlling the general layout
+of the page.
+
+ \flushbottom: Make all text pages the same height.
+ \onecolumn: Use one-column layout.
+ \raggedbottom: Allow text pages of differing height.
+ \twocolumn: Use two-column layout.
+
+############################################################
+ \flushbottom ::flushbottom::
+############################################################
+The \flushbottom declaration makes all text pages the same
+height, adding extra vertical space when necessary to fill
+out the page. This is the standard if twocolumn mode is
+selected.
+############################################################
+ \onecolumn ::onecolumn::
+############################################################
+The \onecolumn declaration starts a new page and produces
+single-column output.
+############################################################
+ \raggedbottom ::raggedbottom::
+############################################################
+The \raggedbottom declaration makes all pages the height of
+the text on that page. No extra vertical space is added.
+############################################################
+ \twocolumn ::twocolumn::
+############################################################
+\twocolumn[text]
+The \twocolumn declaration starts a new page and produces
+two-column output. If the optional text argument is present,
+it is typeset in one-column mode.
diff --git a/support/tcltexed/hlp/eng/Lengths.txt b/support/tcltexed/hlp/eng/Lengths.txt
new file mode 100644
index 0000000000..50c6f0d12d
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Lengths.txt
@@ -0,0 +1,74 @@
+
+############################################################
+Lengths
+############################################################
+
+A length is a measure of distance. Many LaTeX commands take
+a length as an argument.
+
+ \newlength: Define a new length.
+ \setlength: Set the value of a length.
+ \addtolength: Add a quantity to a length.
+ \settodepth: Set a length to the depth of something.
+ \settoheight: Set a length to the height of something.
+ \settowidth: Set a length to the width of something.
+ Predefined lengths: Lengths that are, like, predefined.
+
+############################################################
+ \newlength ::newlength::
+############################################################
+\newlength{\gnat}
+The \newlength command defines the mandatory argument, \gnat,
+as a length command with a value of 0in. An error occurs if a
+\gnat command already exists.
+############################################################
+ \setlength ::setlength::
+############################################################
+\setlength{\gnat}{length}
+The \setlength command is used to set the value of a length
+command. The length argument can be expressed in any terms
+of length LaTeX understands, i.e., inches (in),
+millimetres (mm), points (pt), etc.
+############################################################
+ \addtolength ::addtolength::
+############################################################
+\addtolength{\gnat}{length}
+The \addtolength command increments a "length command" by the
+amount specified in the length argument. It can be a negative
+amount.
+############################################################
+ \settodepth ::settodepth::
+############################################################
+\settodepth{\gnat}{text}
+The \settodepth command sets the value of a length command
+equal to the depth of the text argument.
+############################################################
+ \settoheight ::settoheight::
+############################################################
+\settoheight{\gnat}{text}
+The \settoheight command sets the value of a length command
+equal to the height of the text argument.
+############################################################
+ \settowidth ::settowidth::
+############################################################
+\settowidth{\gnat}{text}
+The \settowidth command sets the value of a length command
+equal to the width of the text argument.
+
+Predefined lengths
+
+ \width ::width::
+ \height ::height::
+ \depth ::depth::
+ \totalheight ::totalheight::
+
+These length parameters can be used in the arguments of the
+box-making commands
+
+See section Spaces & Boxes.
+
+They specify the natural width etc. of the text in the box.
+\totalheight equals \height + \depth. To make a box with the
+text stretched to double the natural size, e.g., say
+
+ \makebox[2\width]{Get a stretcher}
diff --git a/support/tcltexed/hlp/eng/Letters.txt b/support/tcltexed/hlp/eng/Letters.txt
new file mode 100644
index 0000000000..5163868d91
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Letters.txt
@@ -0,0 +1,133 @@
+############################################################
+Letters
+############################################################
+You can use LaTeX to typeset letters, both personal and
+business. The letter document class is designed to make a
+number of letters at once, although you can make just one if
+you so desire.
+
+Your `.tex' source file has the same minimum commands as the
+other document classes, i.e., you must have the following
+commands as a minimum:
+
+ \documentclass{letter}
+ \begin{document}
+ ... letters ...
+ \end{document}
+
+Each letter is a letter environment, whose argument is the
+name and address of the recipient. For example, you might
+have:
+
+ \begin{letter}{Mr. Joe Smith\\ 2345 Princess St.
+ \\ Edinburgh, EH1 1AA}
+ ...
+ \end{letter}
+
+The letter itself begins with the \opening command. The text
+of the letter follows. It is typed as ordinary LaTeX input.
+Commands that make no sense in a letter, like \chapter, do not
+work. The letter closes with a \closing command.
+After the closing, you can have additional material. The \cc
+command produces the usual "cc: ...". There's also a similar
+\encl command for a list of enclosures. With both these commands,
+use \\ to separate the items.
+
+These commands are used with the letter class:
+
+ \address: Your return address.
+ \cc: Cc list.
+ \closing: Saying goodbye.
+ \encl: List of enclosed material.
+ \location: Your organisation's address.
+ \makelabels: Making address labels.
+ \name: Your name, for the return address.
+ \opening: Saying hello.
+ \ps: Adding a postscript.
+ \signature: Your signature.
+ \startbreaks: Allow page breaks.
+ \stopbreaks: Disallow page breaks.
+ \telephone: Your phone number.
+
+############################################################
+ \address ::address::
+############################################################
+\address{Return address}
+The return address, as it should appear on the letter and the
+envelope. Separate lines of the address should be separated
+by \\ commands. If you do not make an \address declaration,
+then the letter will be formatted for copying onto your
+organisation's standard letterhead. (See section Overview of
+LaTeX and Local Guide, for details on your local implementation).
+If you give an \address declaration, then the letter will be
+formatted as a personal letter.
+############################################################
+ \cc ::cc::
+############################################################
+\cc{Kate Schechter\\Rob McKenna}
+Generate a list of other persons the letter was sent to. Each
+name is printed on a separate line.
+############################################################
+ \closing ::closing::
+############################################################
+\closing{text}
+The letter closes with a \closing command, i.e.,
+ \closing{Best Regards,}
+\encl
+\encl{CV\\Certificates}
+Generate a list of enclosed material.
+############################################################
+ \location ::location::
+############################################################
+\location{address}
+This modifies your organisation's standard address. This
+only appears if the firstpage pagestyle is selected.
+############################################################
+ \makelabels ::makelabels::
+############################################################
+\makelabels{number}
+If you issue this command in the preamble, LaTeX will create
+a sheet of address labels. This sheet will be output before
+the letters.
+############################################################
+ \name ::name::
+############################################################
+\name{June Davenport}
+Your name, used for printing on the envelope together with
+the return address.
+############################################################
+ \opening ::opening::
+############################################################
+\opening{text}
+The letter begins with the \opening command. The mandatory
+argument, text, is whatever text you wish to start your
+letter, i.e.,
+ \opening{Dear Joe,}
+############################################################
+ \ps ::ps::
+############################################################
+\ps
+Use this command before a postscript.
+############################################################
+ \signature ::sinature::
+############################################################
+\signature{Harvey Swick}
+Your name, as it should appear at the end of the letter
+underneath the space for your signature. Items that should
+go on separate lines should be separated by \\ commands.
+############################################################
+ \startbreaks ::startbreaks::
+############################################################
+\startbreaks
+Used after a \stopbreaks command to allow page breaks again.
+############################################################
+ \stopbreaks ::stopbreaks::
+############################################################
+\stopbreaks
+Inhibit page breaks until a \startbreaks command occurs.
+############################################################
+ \telephone ::telephone::
+############################################################
+\telephone{number}
+This is your telephone number. This only appears if the
+firstpage pagestyle is selected.
diff --git a/support/tcltexed/hlp/eng/Margin.txt b/support/tcltexed/hlp/eng/Margin.txt
new file mode 100644
index 0000000000..291c0e15a8
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Margin.txt
@@ -0,0 +1,20 @@
+############################################################
+Margin Notes ::marginpar::reversemarginpar::
+############################################################
+
+The command \marginpar[left]{right} creates a note in the
+margin. The first line will be at the same height as the line
+in the text where the \marginpar occurs.
+When you only specify the mandatory argument right, the text
+will be placed
+ 1. in the right margin for one-sided layout
+ 2. in the outside margin for two-sided layout
+ 3. in the nearest margin for two-column layout.
+ 4. By issuing the command \reversemarginpar, you can
+ force the marginal notes to go into the opposite
+ (inside) margin.
+When you specify both arguments, left is used for the left
+margin, and right is used for the right margin.
+The first word will normally not be hyphenated; you can
+enable hyphenation by prefixing the first word with a
+\hspace{0pt} command.
diff --git a/support/tcltexed/hlp/eng/Math.txt b/support/tcltexed/hlp/eng/Math.txt
new file mode 100644
index 0000000000..0b33dfb937
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Math.txt
@@ -0,0 +1,87 @@
+############################################################
+Math Formulae ::(::)::[::]::$::
+############################################################
+
+There are three environments that put LaTeX in math mode:
+ math For Formulae that appear right in the text.
+ displaymath For Formulae that appear on their own line.
+ equation The same as the displaymath environment
+ except that it adds an equation number in
+ the right margin.
+The math environment can be used in both paragraph and LR mode,
+but the displaymath and equation environments can be used only
+in paragraph mode. The math and displaymath environments are
+used so often that they have the following short forms:
+
+ \(...\) instead of \begin{math}...\end{math}
+
+ \[...\] instead of \begin{displaymath}...\end{displaymath}
+
+In fact, the math environment is so common that it has an even
+shorter form:
+
+ $ ... $ instead of \(...\)
+
+ Subscripts & Superscripts: Also known as exponent or index.
+ Math Symbols: Various mathematical squiggles.
+ Spacing in Math Mode: Thick, medium, thin and negative spaces.
+ Math Miscellany: Stuff that doesn't fit anywhere else.
+
+############################################################
+ Subscripts & Superscripts ::_::^::
+############################################################
+To get an expression exp to appear as a subscript, you just
+type _{exp}. To get exp to appear as a superscript, you type
+^{exp}. LaTeX handles superscripted superscripts and all of
+that stuff in the natural way. It even does the right
+thing when something has both a subscript and a superscript.
+############################################################
+ Math Symbols
+############################################################
+LaTeX provides almost any mathematical symbol you're likely
+to need. The commands for generating them can be used only in
+math mode. For example, if you include $\pi$ in your source,
+you will get the symbol in your output.
+############################################################
+ Spacing in Math Mode
+############################################################
+In a math environment, LaTeX ignores the spaces you type and
+puts in the spacing that it thinks is best. LaTeX formats
+mathematics the way it's done in mathematics texts. If you
+want different spacing, LaTeX provides the following four
+commands for use in math mode:
+
+ \; - a thick space ::;::
+ \: - a medium space :::::
+ \, - a thin space ::,::
+ \! - a negative thin space ::!::
+
+############################################################
+ Math Miscellany
+############################################################
+ \cdots ::cdots::
+Produces a horizontal ellipsis where the dots are raised to
+the centre of the line. eg.
+ \ddots ::ddots::
+Produces a diagonal ellipsis. eg.
+ \frac{num}{den} ::frac::
+Produces the fraction num divided by den. eg.
+ \ldots ::ldots::
+Produces an ellipsis. This command works in any mode, not
+just math mode. eg.
+ \overbrace{text} ::overbrace::
+Generates a brace over text. eg.
+ \overline{text} ::overline::
+Causes the argument text to be overlined. eg.
+ \sqrt[root]{arg} ::sqrt::
+Produces the square root of its argument. The optional argument,
+root, determines what root to produce, i.e., the cube root
+of x+y would be typed
+as $\sqrt[3]{x+y}$. eg.
+ \underbrace{text} ::underbrace::
+Generates text with a brace underneath. eg.
+ \underline{text} ::underline::
+Causes the argument text to be underlined. This command can
+also be used in paragraph and LR modes. eg.
+ \vdots ::vdots::
+Produces a vertical ellipsis. eg.
diff --git a/support/tcltexed/hlp/eng/Modes.txt b/support/tcltexed/hlp/eng/Modes.txt
new file mode 100644
index 0000000000..fd8358fedf
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Modes.txt
@@ -0,0 +1,39 @@
+############################################################
+Modes
+############################################################
+When LaTeX is processing your input text, it is always in one
+of three modes:
+
+ Paragraph mode
+ Math mode
+ Left-to-right mode, called LR mode for short
+
+LaTeX changes mode only when it goes up or down a staircase
+to a different level, though not all level changes produce
+mode changes. Mode changes occur only when entering or
+leaving an environment, or when LaTeX is processing the
+argument of certain text-producing commands.
+
+"Paragraph mode" is the most common; it's the one LaTeX is
+in when processing ordinary text. In that mode, LaTeX breaks
+your text into lines and breaks the lines into pages. LaTeX
+is in "math mode" when it's generating a mathematical formula.
+In "LR mode", as in paragraph mode, LaTeX considers the output
+that it produces to be a string of words with spaces between
+them. However, unlike paragraph mode, LaTeX keeps going from
+left to right; it never starts a new line in LR mode. Even if
+you put a hundred words into an \mbox, LaTeX would keep
+typesetting them from left to right inside a single box, and
+then complain because the resulting box was too wide to fit
+on the line.
+
+LaTeX is in LR mode when it starts making a box with an \mbox
+command. You can get it to enter a different mode inside the
+box - for example, you can make it enter math mode to put a
+formula in the box. There are also several text-producing
+commands and environments for making a box that put LaTeX in
+paragraph mode. The box make by one of these commands or
+environments will be called a parbox. When LaTeX is in paragraph
+mode while making a box, it is said to be in "inner paragraph
+mode". Its normal paragraph mode, which it starts out in, is
+called "outer paragraph mode".
diff --git a/support/tcltexed/hlp/eng/Overview.txt b/support/tcltexed/hlp/eng/Overview.txt
new file mode 100644
index 0000000000..3b0bea43b6
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Overview.txt
@@ -0,0 +1,68 @@
+############################################################
+Overview of LaTeX and Local Guide
+############################################################
+
+The LaTeX command typesets a file of text using the TeX program
+and the LaTeX Macro package for TeX. To be more specific, it
+processes an input file containing the text of a document with
+interspersed commands that describe how the text should be
+formatted. It produces at least three files as output:
+
+ 1. A "Device Independent", or `.dvi' file. This contains
+commands that can be translated into commands for a variety
+of output devices. You can view the output of LaTeX by using
+a program such as xdvi, which actually uses the `.dvi' file.
+ 2. A "transcript" or `.log' file that contains summary
+information and diagnostic messages for any errors discovered
+in the input file.
+ 3. An "auxiliary" or `.aux' file. This is used by LaTeX
+itself, for things such as sectioning.
+
+For a description of what goes on inside TeX, you should
+consult The TeXbook by Donald E. Knuth, ISBN 0-201-13448-9,
+published jointly by the American Mathematical Society
+and Addison-Wesley Publishing Company.
+
+For a description of LaTeX, you should consult:
+ LaTeX: A Document Preparation System, by Leslie Lamport,
+Addison-Wesley Publishing Company, 2nd edition, 1994.
+ The LaTeX Companion, by Michel Goossens, Frank Mittelbach,
+and Alexander Samarin, Addison-Wesley, 1994.
+
+############################################################
+Commands
+############################################################
+
+A LaTeX command begins with the command name, which consists
+of a \ followed by either (a) a string of letters or
+(b) a single non-letter. Arguments contained in square brackets,
+[], are optional while arguments contained in braces, {},
+are required.
+
+NOTE: LaTeX is case sensitive. Enter all commands in lower
+case unless explicitly directed to do otherwise.
+
+ Counters: Internal counters used by LaTeX.
+ Cross References: Automatic referencing.
+ Definitions: Define your own commands etc.
+ Document Classes: Some of the various classes available.
+ Environments: Such as enumerate & itemize.
+ Footnotes: How to produce footnotes.
+ Layout: Controlling the page layout.
+ Lengths: The length commands.
+ Letters: The letter class.
+ Line & Page Breaking: How to insert pagebreaks etc.
+ Making Paragraphs: Paragraph commands.
+ Margin Notes: Putting remarks in the margin.
+ Math Formulae: How to create mathematical formulae.
+ Modes: Paragraph, Math or LR modes.
+ Page Styles: Various styles of page layout.
+ Sectioning: How to section properly.
+ Spaces & Boxes: All the associated commands.
+ Special Characters: Special reserved characters.
+ Splitting the Input: Dealing with big files by splitting.
+ Starting & Ending: The formal start & end layouts.
+ Table of Contents: How to create a table of contents.
+ Terminal Input/Output: User interaction.
+ Typefaces: Such as bold, italics etc.
+
diff --git a/support/tcltexed/hlp/eng/Paragraphs.txt b/support/tcltexed/hlp/eng/Paragraphs.txt
new file mode 100644
index 0000000000..b127d75429
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Paragraphs.txt
@@ -0,0 +1,32 @@
+############################################################
+Making Paragraphs
+############################################################
+
+A paragraph is ended by one or more completely blank lines
+-- lines not containing even a %. A blank line should not
+appear where a new paragraph cannot be started, such as in
+math mode or in the argument of a sectioning command.
+
+ \indent: Indent this paragraph.
+ \noindent: Do not indent this paragraph.
+ \par: Another way of writing a blank line.
+
+############################################################
+ \indent ::indent:
+############################################################
+\indent
+This produces a horizontal space whose width equals the width
+of the paragraph indentation. It is used to add paragraph
+indentation where it would otherwise be suppressed.
+############################################################
+ \noindent ::noindent::
+############################################################
+\noindent
+When used at the beginning of the paragraph, it suppresses
+the paragraph indentation. It has no effect when used in the
+middle of a paragraph.
+############################################################
+ \par ::par::
+############################################################
+Equivalent to a blank line; often used to make command or
+environment definitions easier to read.
diff --git a/support/tcltexed/hlp/eng/Parameters.txt b/support/tcltexed/hlp/eng/Parameters.txt
new file mode 100644
index 0000000000..ee764281a4
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Parameters.txt
@@ -0,0 +1,484 @@
+############################################################
+Parameters
+############################################################
+
+The input file specification indicates the file to be
+formatted; TeX uses `.tex' as a default file extension. If
+you omit the input file entirely, TeX accepts input from the
+terminal. You specify command options by supplying a string
+as a parameter to the command; e.g.
+
+ latex "\scrollmode\input foo.tex"
+
+will process `foo.tex' without pausing after every error.
+Output files are always created in the current directory.
+When you fail to specify an input file name, TeX bases the
+output names on the file specification associated with the
+logical name TEX_OUTPUT, typically texput.log.
+############################################################
+Concept Index
+a
+Accessing any character of a font
+Aligning Equations
+Appendix, creating
+Arrays, math
+article class
+Author, for titlepage
+b
+Bibliography, creating (automatically)
+Bibliography, creating (manually)
+BibTeX, using
+book class
+Boxes
+c
+Cc list
+Centering text
+Centering text, environment for
+Characters, reserved
+Characters, special
+Classes of document
+Commands, defining new ones
+Computer programs, typesetting
+Counters, a list of
+Counters, creating
+Counters, getting the value of
+Counters, setting
+Creating letters
+Creating pictures
+Creating tables
+Cross referencing
+Cross referencing using page number
+Cross referencing using section number
+d
+Date, for titlepage
+Defining a new command
+Defining new environments
+Defining new fonts
+Defining new theorems
+Displaying quoted text
+Displaying quoted text with paragraph indentation
+Document Classes
+e
+Enclosed material
+Ending & Starting
+Enlarge current page
+Environments
+Environments, defining
+Equations, aligning
+Equations, environment for
+exponent
+f
+Figures, footnotes in
+Flushing a page
+Font commands, low-level
+Font Sizes
+Font Styles
+Fonts
+Fonts, new commands for
+Footnotes in figures
+Footnotes, creating
+Formatting Text
+Formulae, environment for
+Formulae, maths
+g
+Global options
+Greek letters
+h
+Hyphenation, defining
+Hyphenation, forcing
+i
+Indent, forcing
+Indent, suppressing
+Input file, splitting
+Input/Output
+Inserting figures
+j
+Justification, ragged left
+Justification, ragged right
+l
+Labelled lists, creating
+LaTeX overview
+Layout commands
+Left-justifying text
+Left-justifying text, environment for
+Left-to-right mode
+Lengths, adding to
+Lengths, defining a new
+Lengths, defining and using
+Lengths, predefined
+Lengths, setting value of
+letter class
+Letters
+Letters, ending
+Letters, starting
+Line Breaking
+Line breaks
+Lines in tables
+Lining text up in columns using tab stops
+Lining text up in tables
+Lists of items
+Lists of items, generic
+Lists of items, numbered
+Loading additional packages
+Low-level font commands
+LR mode
+m
+Making a title page
+Making paragraphs
+Margin Notes
+Math Formulae
+Math mode
+Math mode, entering
+Math mode, spacing
+Maths Miscellany
+Maths symbols
+Minipage, creating a
+Modes
+Multicolumn text
+n
+New line, starting
+New line, starting (paragraph mode)
+New Page
+Notes in the margin
+o
+Options, global
+Overview of LaTeX
+p
+Packages, loading
+Page break, forcing
+Page Breaking
+Page Formatting
+Page numbering
+Page styles
+Paragraph mode
+Paragraph, starting a new
+Paragraphs
+Pictures, creating
+Poetry, an environment for
+Predefined lengths
+Programs, typesetting
+q
+Quoted text with paragraph indentation, displaying
+Quoted text, displaying
+r
+Ragged left text
+Ragged left text, environment for
+Ragged right text
+Ragged right text, environment for
+Remarks in the margin
+report class
+Reserved Characters
+Right-justifying text
+Right-justifying text, environment for
+s
+Sectioning
+Simulating typed text
+Sizes of text
+Space, inserting vertical
+Spaces
+Spacing, within Math mode
+Special Characters
+Splitting the input file
+Starting & Ending
+Starting on a right-hand page
+Styles of text
+Styles, page
+Subscript
+Superscript
+Symbols
+t
+Tab stops, using
+Table of Contents, creating
+Tables, creating
+Terminal Input/Output
+Thanks, for titlepage
+Theorems, defining
+Theorems, typesetting
+Title making
+Title pages, creating
+Title, for titlepage
+Typed text, simulating
+Typeface Sizes
+Typeface Styles
+Typefaces
+u
+Using BibTeX
+v
+Variables, a list of
+Verbatim text
+Vertical space, inserting
+Command Index
+$
+$
+\
+\!
+\' (tabbing)
+\(
+\)
+\+
+\,
+\- (hyphenation)
+\- (tabbing)
+\;
+\<
+\=
+\>
+\[
+\\
+\]
+\` (tabbing)
+\a
+\addcontentsline
+\address
+\addtocontents
+\addtocounter
+\addtolength
+\addvspace
+\alph
+\Alph
+\appendix
+\arabic
+\author
+\backslash
+\begin
+\bfseries
+\bibitem
+\bibliography
+\bibliographystyle
+\bigskip
+\caption
+\cc
+\cdots
+\centering
+\chapter
+\circle
+\cite
+\cleardoublepage
+\clearpage
+\cline
+\closing
+\COLON
+\dashbox
+\date
+\ddots
+\depth
+\documentclass
+\dotfill
+\emph
+\encl
+\end
+\enlargethispage
+\fbox
+\flushbottom
+\fnsymbol
+\fontencoding
+\fontfamily
+\fontseries
+\fontshape
+\fontsize
+\footnote
+\footnotemark
+\footnotesize
+\footnotetext
+\frac
+\frame
+\framebox, \framebox
+\fussy
+\height
+\hfill
+\hline
+\hrulefill
+\hspace
+\Huge
+\huge
+\hyphenation
+\include
+\includeonly
+\indent
+\input
+\item
+\itshape
+\kill
+\label
+\large
+\LARGE
+\Large
+\ldots
+\lefteqn
+\line
+\linebreak
+\linethickness
+\listoffigures
+\listoftables
+\location
+\makebox
+\makebox (picture)
+\makelabels
+\maketitle
+\markboth
+\markright
+\mathbf
+\mathcal
+\mathit
+\mathnormal
+\mathrm
+\mathsf
+\mathtt
+\mathversion
+\mbox
+\mdseries
+\medskip
+\multicolumn
+\multiput
+\name
+\newcommand
+\newcounter
+\newenvironment
+\newfont
+\newlength
+\newline
+\newpage
+\newsavebox
+\newtheorem
+\nocite
+\nofiles
+\noindent
+\nolinebreak
+\nopagebreak
+\normalfont
+\normalsize
+\onecolumn
+\opening
+\oval
+\overbrace
+\overline
+\pagebreak
+\pagenumbering
+\pageref
+\pagestyle
+\par
+\paragraph
+\parbox
+\ps
+\pushtabs, \pushtabs
+\put
+\raggedbottom
+\raggedleft
+\raggedright
+\raisebox
+\ref
+\refstepcounter
+\rmfamily
+\roman
+\Roman
+\rule
+\savebox
+\sbox
+\scriptsize
+\scshape
+\selectfont
+\setcounter
+\setlength
+\settodepth
+\settoheight
+\settowidth
+\sffamily
+\shortstack
+\signature
+\sloppy
+\slshape
+\small
+\smallskip
+\sqrt
+\startbreaks
+\stepcounter
+\stopbreaks
+\subparagraph
+\subsection
+\subsubsection
+\symbol
+\tableofcontents
+\telephone
+\textbf
+\textit
+\textmd
+\textnormal
+\textrm
+\textsc
+\textsf
+\textsl
+\texttt
+\textup
+\thanks
+\thispagestyle
+\tiny
+\title
+\today
+\totalheight
+\ttfamily
+\twocolumn
+\typein
+\typeout
+\underbrace
+\underline
+\upshape
+\usebox
+\usecounter
+\usefont
+\usepackage
+\value
+\vdots
+\vector
+\verb
+\vfill
+\vline
+\vspace
+\width
+^
+^
+_
+_
+a
+array
+c
+center
+d
+description
+e
+enumerate
+eqnarray
+equation
+f
+figure
+flushleft
+flushright
+i
+itemize
+l
+letter
+list
+lrbox
+m
+minipage
+p
+picture
+q
+quotation
+quote
+t
+tabbing
+table
+tabular
+thebibliography
+theorem
+titlepage
+v
+verbatim
+verse
+
+
+
+This document was generated on 8 July 1996 using the texi2html translator
+version 1.50.
+
+
diff --git a/support/tcltexed/hlp/eng/RCS/Breaking.txt,v b/support/tcltexed/hlp/eng/RCS/Breaking.txt,v
new file mode 100644
index 0000000000..d9df0a2519
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Breaking.txt,v
@@ -0,0 +1,169 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Line & Page Breaking
+############################################################
+
+The first thing LaTeX does when processing ordinary text is
+to translate your input file into a string of glyphs and
+spaces. To produce a printed document, this string must be
+broken into lines, and these lines must be broken into pages.
+In some environments, you do the line breaking yourself with
+the \\ command, but LaTeX usually does it for you.
+
+ \\: Start a new line.
+ \- (hyphenation): Insert explicit hyphenation.
+ \cleardoublepage: Start a new right-hand page.
+ \clearpage: Start a new page.
+ \enlargethispage: Enlarge the current page a bit.
+ \fussy: Be fussy about line breaking.
+ \hyphenation: Tell LaTeX how to hyphenate a word.
+ \linebreak: Break the line.
+ \newline: Break the line prematurely.
+ \newpage: Start a new page.
+ \nolinebreak: Don't break the current line.
+ \nopagebreak: Don't make a page break here.
+ \pagebreak: Please make a page break here.
+ \sloppy: Be sloppy about line breaking.
+
+############################################################
+ \\ ::\::
+############################################################
+\\[*][extra-space]
+The \\ command tells LaTeX to start a new line. It has an
+optional argument, extra-space, that specifies how much extra
+vertical space is to be inserted before the next line. This
+can be a negative amount.
+The \\* command is the same as the ordinary \\ command except
+that it tells LaTeX not to start a new page after the line.
+############################################################
+ \- ::-::
+############################################################
+The \- command tells LaTeX that it may hyphenate the word at
+that point. LaTeX is very good at hyphenating, and it will
+usually find all correct hyphenation points. The \- command
+is used for the exceptional cases.
+
+Note that when you insert \- commands in a word, the word
+will only be hyphenated at those points and not at any of the
+hyphenation points that LaTeX might otherwise have chosen.
+############################################################
+ \cleardoublepage ::cleardoublepage::
+############################################################
+The \cleardoublepage command ends the current page and causes
+all figures and tables that have so far appeared in the input
+to be printed. In a two-sided printing style, it also makes
+the next page a right-hand (odd-numbered) page, producing a
+blank page if necessary.
+############################################################
+ \clearpage ::clearpage::
+############################################################
+The \clearpage command ends the current page and causes all
+figures and tables that have so far appeared in the input to
+be printed.
+############################################################
+ \enlargethispage ::enlargethispage::
+############################################################
+\enlargethispage{size}
+\enlargethispage*{size}
+Enlarge the \textheight for the current page by the specified
+amount; e.g.
+\enlargethispage{\baselineskip} will allow one additional line.
+The starred form tries to squeeze the material together on
+the page as much as possible. This is normally used together
+with an explicit \pagebreak.
+############################################################
+ \fussy ::fussy::
+############################################################
+\fussy
+This declaration (which is the default) makes TeX more fussy
+about line breaking. This can avoids too much space between
+words, but may produce overfull boxes.
+This command cancels the effect of a previous \sloppy command.
+section \sloppy
+############################################################
+ \hyphenation ::hypentation::
+############################################################
+\hyphenation{words}
+The \hyphenation command declares allowed hyphenation points,
+where words is a list of words, separated by spaces, in which
+each hyphenation point is indicated by a - character.
+############################################################
+ \linebreak ::linebreak::
+############################################################
+\linebreak[number]
+The \linebreak command tells LaTeX to break the current line
+at the point of the command. With the optional argument,
+number, you can convert the \linebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+The \linebreak command causes LaTeX to stretch the line so it
+extends to the right margin.
+############################################################
+ \newline ::newline::
+############################################################
+The \newline command breaks the line right where it is. It
+can only be used in paragraph mode.
+############################################################
+ \newpage ::newpage::
+############################################################
+The \newpage command ends the current page.
+############################################################
+ \nolinebreak ::nolinebreak::
+############################################################
+\nolinebreak[number]
+The \nolinebreak command prevents LaTeX from breaking the
+current line at the point of the command. With the optional
+argument, number, you can convert the \nolinebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \nopagebreak ::nopagebreak::
+############################################################
+\nopagebreak[number]
+The \nopagebreak command prevents LaTeX from breaking the
+current page at the point of the command. With the optional
+argument, number, you can convert the \nopagebreak command
+from a demand to a request. The number must be a number from
+0 to 4. The higher the number, the more insistent the
+request is.
+############################################################
+ \pagebreak ::pagebreak::
+############################################################
+\pagebreak[number]
+The \pagebreak command tells LaTeX to break the current page
+at the point of the command. With the optional argument,
+number, you can convert the \pagebreak command from a demand
+to a request. The number must be a number from 0 to 4. The
+higher the number, the more insistent the request is.
+############################################################
+ \sloppy ::sloppy::
+############################################################
+\sloppy
+This declaration makes TeX less fussy about line breaking.
+This can prevent overfull boxes, but may leave too much space
+between words. Lasts until a \fussy command is issued.
+section \fussy.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Characters.txt,v b/support/tcltexed/hlp/eng/RCS/Characters.txt,v
new file mode 100644
index 0000000000..9747024003
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Characters.txt,v
@@ -0,0 +1,55 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Special Characters ::#::%::symbol::
+############################################################
+
+The following characters play a special role in LaTeX and are
+called "special printing characters", or simply
+"special characters".
+
+ # $ % & ~ _ ^ \ { }
+
+Whenever you put one of these special characters into your
+file, you are doing something special. If you simply want
+the character to be printed just as any other letter, include
+a \ in front of the character. For example, \$ will produce
+$ in your output.
+
+One exception to this rule is the \ itself because \\ has its
+own special meaning. A \ is produced by typing $\backslash$
+in your file.
+Also, \~ means `place a tilde accent over the following letter',
+so you will probably want to use \verb instead.
+
+In addition, you can access any character of a font once you
+know its number by using the \symbol command. For example,
+the character used for displaying spaces in the \verb*
+command has the code decimal 32, so it can be typed as
+\symbol{32}.
+
+You can also specify octal numbers with ' or hexadecimal
+numbers with ", so the previous example could also be written
+ as \symbol{'40} or \symbol{"20}.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Contents.txt,v b/support/tcltexed/hlp/eng/RCS/Contents.txt,v
new file mode 100644
index 0000000000..6aed95d968
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Contents.txt,v
@@ -0,0 +1,77 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Table of Contents
+############################################################
+::tableofcontents::listoffigures::listoftables::
+A table of contents is produced with the \tableofcontents
+command. You put the command right where you want the table
+of contents to go; LaTeX does the rest for you. It produces
+a heading, but it does not automatically start a new page.
+If you want a new page after the table of contents, include
+a \newpage command after the \tableofcontents command.
+
+There are similar commands \listoffigures and \listoftables
+for producing a list of figures and a list of tables,
+respectively. Everything works exactly the same as for the
+table of contents.
+
+NOTE: If you want any of these items to be generated, you
+cannot have the \nofiles command in your document.
+
+ \addcontentsline: Add an entry to table of
+ contents etc.
+ \addtocontents: Add text directly to table of
+ contents file etc.
+
+############################################################
+ \addcontentsline ::addcontentsline::
+############################################################
+\addcontentsline{file}{sec_unit}{entry}
+The \addcontentsline command adds an entry to the specified
+list or table where:
+
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ sec_unit controls the formatting of the entry. It
+ should be one of the following, depending upon
+ the value of the file argument:
+ toc -- the name of the sectional unit, such
+ as part or subsection.
+ lof -- figure
+ lot -- table
+ entry is the text of the entry.
+############################################################
+ \addtocontents ::addtocontents::
+############################################################
+\addtocontents{file}{text}
+The \addtocontents command adds text (or formatting commands)
+directly to the file that generates the table of contents or
+list of figures or tables.
+ file is the extension of the file on which information
+ is to be written: toc (table of contents),
+ lof (list of figures), or lot (list of tables).
+ text is the information to be written.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Counters.txt,v b/support/tcltexed/hlp/eng/RCS/Counters.txt,v
new file mode 100644
index 0000000000..67a9b180d6
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Counters.txt,v
@@ -0,0 +1,137 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Counters
+############################################################
+
+Everything LaTeX numbers for you has a counter associated
+with it. The name of the counter is the same as the name
+of the environment or command that produces the number,
+except with no \. (enumi - enumiv are used for the nested
+enumerate environment.) Below is a list of the counters
+used in LaTeX's standard document classes to control
+numbering.
+
+ part paragraph figure enumi
+ chapter subparagraph table enumii
+ section page footnote enumiii
+ subsection equation mpfootnote enumiv
+ subsubsection
+
+ \addtocounter: Add a quantity to a counter.
+ \alph: Print value of a counter using letters.
+ \arabic: Print value of a counter using numerals.
+ \fnsymbol: Print value of a counter using symbols.
+ \newcounter: Define a new counter.
+ \refstepcounter: Add to counter, resetting subsidiary counters.
+ \roman: Print value of a counter using roman numerals.
+ \setcounter: Set the value of a counter.
+ \stepcounter: Add to counter, resetting subsidiary counters.
+ \usecounter: Use a specified counter in a list environment.
+ \value: Use the value of a counter in an expression.
+
+############################################################
+ \addtocounter ::addtocounter::
+############################################################
+\addtocounter{counter}{value}
+The \addtocounter command increments the counter by the
+amount specified by the value argument. The value argument
+can be negative.
+############################################################
+ \alph ::alph::
+############################################################
+\alph{counter}
+This command causes the value of the counter to be printed
+in alphabetic characters. The \alph command uses lower case
+alphabetic alphabetic characters, i.e., a, b, c... while the
+\Alph command uses upper case alphabetic characters,
+i.e., A, B, C....
+############################################################
+ \arabic ::arabic::
+############################################################
+\arabic{counter}
+The \arabic command causes the value of the counter to be
+printed in Arabic numbers, i.e., 3.
+############################################################
+ \fnsymbol ::fnsymbol::
+############################################################
+\fnsymbol{counter}
+The \fnsymbol command causes the value of the counter to be
+printed in a specific sequence of nine symbols that can be
+used for numbering footnotes. eg. From 1-9:
+NB. counter must have a value between 1 and 9 inclusive.
+############################################################
+ \newcounter ::newcounter::
+############################################################
+\newcounter{foo}[counter]
+The \newcounter command defines a new counter named foo. The
+counter is initialized to zero.
+The optional argument [counter] causes the counter foo to be
+reset whenever the counter named in the optional argument is
+incremented.
+############################################################
+ \refstepcounter ::refstepcounter::
+############################################################
+\refstepcounter{counter}
+The \refstepcounter command works like \stepcounter See
+section \stepcounter, except it also defines the current
+\ref value to be the result of \thecounter.
+############################################################
+ \roman ::roman
+############################################################
+\roman{counter}
+This command causes the value of the counter to be printed
+in Roman numerals. The \roman command uses lower case Roman
+numerals, i.e., i, ii, iii..., while the \Roman command uses
+upper case Roman numerals, i.e., I, II, III....
+############################################################
+ \stepcounter ::stepcounter::
+############################################################
+\stepcounter{counter}
+The \stepcounter command adds one to the counter and resets
+all subsidiary counters.
+############################################################
+ \setcounter ::setcounter::
+############################################################
+\setcounter{counter}{value}
+The \setcounter command sets the value of the counter to that
+specified by the value argument.
+############################################################
+ \usecounter ::usecounter::
+############################################################
+\usecounter{counter}
+The \usecounter command is used in the second argument of the
+list environment to allow the counter specified to be used to
+number the list items.
+############################################################
+ \value ::value::
+############################################################
+\value{counter}
+The \value command produces the value of the counter named
+in the mandatory argument. It can be used where LaTeX expects
+an integer or number, such as the second argument of a
+\setcounter or \addtocounter command, or in:
+ \hspace{\value{foo}\parindent}
+It is useful for doing arithmetic with counters.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Definitions.txt,v b/support/tcltexed/hlp/eng/RCS/Definitions.txt,v
new file mode 100644
index 0000000000..b9755f280a
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Definitions.txt,v
@@ -0,0 +1,106 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Definitions
+############################################################
+
+\newcommand: Define a new command.
+\newenvironment: Define a new environment.
+\newtheorem: Define a new theorem-like environment.
+\newfont: Define a new font name.
+
+############################################################
+ \newcommand ::newcommand::renewcommand::
+############################################################
+ \newcommand{cmd}[args]{definition}
+ \newcommand{cmd}[args][default]{definition}
+ \renewcommand{cmd}[args]{definition}
+ \renewcommand{cmd}[args][default]{definition}
+These commands define (or redefine) a command.
+ cmd A command name beginning with a \. For
+ \newcommand it must not be already defined and
+ must not begin with \end; for \renewcommand it
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the command being defined. The
+ default is for the command to have no arguments.
+ def If this optional parameter is present, it means
+ that the command's first argument is optional.
+ The default value of the optional argument is def.
+ definition The text to be substituted for every
+ occurrence of cmd; a parameter of the form #n in
+ cmd is replaced by the text of the nth argument
+ when this substitution takes place.
+############################################################
+ \newenvironment ::newenvironment::renewenvironment::
+############################################################
+ \newenvironment{nam}[args]{begdef}{enddef}
+ \newenvironment{nam}[args][default]{begdef}{enddef}
+ \renewenvironment{nam}[args]{begdef}{enddef}
+These commands define or redefine an environment.
+ nam The name of the environment. For \newenvironment
+ there must be no currently defined environment
+ by that name, and the command \nam must be
+ undefined. For \renewenvironment the environment
+ must already be defined.
+ args An integer from 1 to 9 denoting the number of
+ arguments of the newly-defined environment.
+ The default is no arguments.
+ default If this is specified, the first argument
+ is optional, and default gives the default value
+ for that argument.
+ begdef The text substituted for every occurrence of
+ \begin{nam}; a parameter of the form #n in cmd
+ is replaced by the text of the nth argument when
+ this substitution takes place.
+ enddef The text substituted for every occurrence of
+ \end{nam}. It may not contain any argument
+ parameters.
+############################################################
+ \newtheorem ::newtheorem::
+############################################################
+ \newtheorem{env_name}{caption}[within]
+ \newtheorem{env_name}[numbered_like]{caption}
+This command defines a theorem-like environment.
+ env_name The name of the environment to be defined.
+ A string of letters. It must not be the
+ name of an existing environment or counter.
+ caption The text printed at the beginning of the
+ environment, right before the number.
+ This may simply say "Theorem", for example.
+ within The name of an already defined counter,
+ usually of a sectional unit. Provides a
+ means of resetting the new theorem counter
+ within the sectional unit.
+ numbered_like The name of an already defined theorem-like
+ environment.
+The \newtheorem command may have at most one optional argument.
+############################################################
+ \newfont ::newfont::
+############################################################
+\newfont{cmd}{font_name}
+Defines the command name cmd, which must not be currently
+defined, to be a declaration that selects the font named
+font_name to be the current font.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Document.txt,v b/support/tcltexed/hlp/eng/RCS/Document.txt,v
new file mode 100644
index 0000000000..a90954c521
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Document.txt,v
@@ -0,0 +1,80 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Document Classes
+############################################################
+
+Valid LaTeX document classes include:
+ article
+ report
+ letter
+ book
+ slides
+Other document classes are often available. See section
+Overview of LaTeX and Local Guide, for details. They are
+selected with the following command:
+
+ \documentclass [options] {class} ::documentclass::
+
+All the standard classes (except slides) accept the following
+options for
+selecting the typeface size (10 pt is default):
+ 10pt, 11pt, 12pt
+All classes accept these options for selecting the paper size
+(default is letter):
+ a4paper, a5paper, b5paper, letterpaper,
+ legalpaper, executivepaper
+Miscellaneous options:
+ landscape -- selects landscape format. Default is portrait.
+ titlepage, notitlepage -- selects if there should be a
+ separate title page.
+ leqno -- equation number on left side of equations. Default
+ is right side.
+ fleqn -- displayed formulas flush left. Default is centred.
+ openbib -- use "open" bibliography format.
+ draft, final -- mark/do not mark overfull boxes with a rule.
+ Default is final.
+These options are not available with the slides class:
+ oneside, twoside -- selects one- or twosided layout.
+ Default is oneside, except for the book class.
+ openright, openany -- determines if a chapter should
+ start on a right-hand page. Default is
+ openright for book.
+ onecolumn, twocolumn -- one or two columns. Defaults
+ to one column.
+The slides class offers the option clock for printing the
+time at the bottom of each note.
+
+If you specify more than one option, they must be separated
+by a comma. Additional packages are loaded by a
+
+ \usepackage[options]{pkg} ::usepackage::
+
+command. If you specify more than one package, they must be
+separated by a comma.
+
+Any options given in the \documentclass command that are
+unknown by the selected document class are passed on to
+the packages loaded with \usepackage.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Environments.txt,v b/support/tcltexed/hlp/eng/RCS/Environments.txt,v
new file mode 100644
index 0000000000..3068d8e7fa
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Environments.txt,v
@@ -0,0 +1,967 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Environments ::begin::end::
+############################################################
+
+LaTeX provides a number of different paragraph-making
+environments. Each environment begins and ends in the same
+manner.
+
+ \begin{environment-name}
+ .
+ .
+ .
+ \end{environment-name}
+
+ array: Math arrays.
+ center: Centred lines.
+ description: Labelled lists.
+ enumerate: Numbered lists.
+ eqnarray: Sequences of aligned equations.
+ equation: Displayed equation.
+ figure: Floating figures.
+ flushleft: Flushed left lines.
+ flushright: Flushed right lines.
+ itemize: Bulleted lists.
+ letter: Letters.
+ list: Generic list environment.
+ minipage: Miniature page.
+ picture: Picture with text, arrows, lines and
+ circles.
+ quotation: Indented environment with paragraph
+ indentation.
+ quote: Indented environment with no paragraph
+ indentation.
+ tabbing: Align text arbitrarily.
+ table: Floating tables.
+ tabular: Align text in columns.
+ thebibliography: Bibliography or reference list.
+ theorem: Theorems, lemmas, etc.
+ titlepage: For hand crafted title pages.
+ verbatim: Simulating typed input.
+ verse: For poetry and other things.
+
+############################################################
+ array ::array::
+############################################################
+
+\begin{array}{col1col2...coln}
+column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+\end{array}
+
+Math arrays are produced with the array environment. It has
+a single mandatory argument describing the number of columns
+and the alignment within them. Each column, coln, is specified
+by a single letter that tells how items in that row should
+be formatted.
+
+ c -- for centred
+ l -- for flush left
+ r -- for flush right
+
+Column entries must be separated by an &. Column entries may
+include other LaTeX commands. Each row of the array must be
+terminated with the string \\.
+
+Note that the array environment can only be used in math mode,
+so normally it is used inside an equation environment.
+############################################################
+ center ::center::
+############################################################
+
+ \begin{center}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{center}
+
+The center environment allows you to create a paragraph
+consisting of lines that are centred within the left and
+right margins on the current page. Each line must be
+terminated with the string \\.
+
+\centering: The declaration form of the center environment.
+
+############################################################
+ \centering ::centering::
+############################################################
+This declaration corresponds to the center environment. This
+declaration can be used inside an environment such as quote
+or in a parbox. The text of a figure or table can be centred
+on the page by putting a \centering command at the beginning
+of the figure or table environment.
+
+Unlike the center environment, the \centering command does
+not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ description ::discription::
+############################################################
+
+ \begin{description}
+ \item [label] First item
+ \item [label] Second item
+ .
+ .
+ .
+ \end{description}
+
+The description environment is used to make labelled lists.
+The label is bold face and flushed right.
+############################################################
+ enumerate ::enumerate::
+############################################################
+
+ \begin{enumerate}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{enumerate}
+
+The enumerate environment produces a numbered list.
+Enumerations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments.
+
+Each item of an enumerated list begins with an \item command.
+There must be at least one \item command within the environment.
+The enumerate environment uses the enumi through enumiv
+counters (see section Counters). The type of numbering can be
+changed by redefining \theenumi etc.
+############################################################
+ eqnarray ::eqnarray::
+############################################################
+
+ \begin{eqnarray}
+ math formula 1 \\
+ math formula 2 \\
+ .
+ .
+ .
+ \end{eqnarray}
+
+The eqnarray environment is used to display a sequence of
+equations or inequalities. It is very much like a three-column
+array environment, with consecutive rows separated by \\ and
+consecutive items within a row separated by an &.
+
+An equation number is placed on every line unless that line
+has a \nonumber command.
+
+The command \lefteqn is used for splitting long formulas
+across lines. It typesets its argument in display style flush
+left in a box of zero width.
+############################################################
+ equation ::equation::
+############################################################
+
+ \begin{equation}
+ math formula
+ \end{equation}
+
+The equation environment centres your equation on the page
+and places the equation number in the right margin.
+############################################################
+ figure ::figure::
+############################################################
+
+ \begin{figure}[placement]
+
+ body of the figure
+
+ \caption{figure title}
+ \end{figure}
+
+Figures are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Figures will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your figure. There are four places where LaTeX
+can possibly put a float:
+ h (Here) - at the position in the text where the
+ figure environment appears.
+ t (Top) - at the top of a text page.
+ b (Bottom) - at the bottom of a text page.
+ p (Page of floats) - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement tbp.
+
+The body of the figure is made up of whatever text, LaTeX
+commands, etc. you wish. The \caption command allows you to
+title your figure.
+############################################################
+ flushleft ::flushleft::
+############################################################
+
+ \begin{flushleft}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushleft}
+
+The flushleft environment allows you to create a paragraph
+consisting of lines that are flushed left, to the left-hand
+margin. Each line must be terminated
+with the string \\.
+
+ \raggedright: The declaration form of the flushleft
+ environment.
+
+############################################################
+ \raggedright ::raggedright::
+############################################################
+This declaration corresponds to the flushleft environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushleft environment, the \raggedright command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ flushright ::flushright::
+############################################################
+
+ \begin{flushright}
+ Text on line 1 \\
+ Text on line 2 \\
+ .
+ .
+ .
+ \end{flushright}
+
+The flushright environment allows you to create a paragraph
+consisting of lines that are flushed right, to the right-hand
+margin. Each line must be terminated with the string \\.
+
+ \raggedleft: The declaration form of the flushright environment.
+
+############################################################
+ \raggedleft ::raggedleft::
+############################################################
+This declaration corresponds to the flushright environment.
+This declaration can be used inside an environment such as
+quote or in a parbox.
+
+Unlike the flushright environment, the \raggedleft command
+does not start a new paragraph; it simply changes how LaTeX
+formats paragraph units. To affect a paragraph unit's format,
+the scope of the declaration must contain the blank line or
+\end command (of an environment like quote) that ends the
+paragraph unit.
+############################################################
+ itemize ::itemize::
+############################################################
+
+ \begin{itemize}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{itemize}
+
+The itemize environment produces a "bulleted" list.
+Itemizations can be nested within one another, up to four
+levels deep. They can also be nested within other
+paragraph-making environments. Each item of an itemized list
+begins with an \item command. There must be at least one
+\item command within the environment. The itemize environment
+uses the itemi through itemiv counters (see section Counters).
+The type of numbering can be changed by redefining \theitemi
+etc.
+############################################################
+ letter ::letter::
+############################################################
+This environment is used for creating letters. See section
+Letters.
+############################################################
+ list ::list::item::
+############################################################
+The list environment is a generic environment which is used
+for defining many of the more specific environments. It is
+seldom used in documents, but often in macros.
+
+ \begin{list}{label}{spacing}
+ \item First item
+ \item Second item
+ .
+ .
+ .
+ \end{list}
+
+The {label} argument specifies how items should be labelled.
+This argument is a piece of text that is inserted in a box
+to form the label. This argument can and usually does contain
+other LaTeX commands.
+
+The {spacing} argument contains commands to change the spacing
+parameters for the list. This argument will most often be
+null, i.e., {}. This will select all default spacing which
+should suffice for most cases.
+############################################################
+ minipage ::minipage::
+############################################################
+
+ \begin{minipage}[position]{width}
+ text
+ \end{minipage}
+
+The minipage environment is similar to a \parbox command. It
+takes the same optional position argument and mandatory width
+argument. You may use other paragraph-making environments
+inside a minipage. Footnotes in a minipage environment are
+handled in a way that is particularly useful for putting
+footnotes in figures or tables. A \footnote or \footnotetext
+command puts the footnote at the bottom of the minipage
+instead of at the bottom of the page, and it uses the
+mpfootnote counter instead of the ordinary footnote counter
+
+See section Counters.
+
+NOTE: Don't put one minipage inside another if you are using
+footnotes; they may wind up at the bottom of the wrong
+minipage.
+############################################################
+ picture ::picture::
+############################################################
+ \begin{picture}(width,height)(x offset,y offset)
+ .
+ .
+ picture commands
+ .
+ .
+ \end{picture}
+The picture environment allows you to create just about any
+kind of picture you want containing text, lines, arrows and
+circles. You tell LaTeX where to put things in the picture
+by specifying their coordinates. A coordinate is a number
+that may have a decimal point and a minus sign -- a number
+like 5, 2.3 or -3.1416. A coordinate specifies a length in
+multiples of the unit length \unitlength, so if \unitlength
+has been set to 1cm, then the coordinate 2.54 specifies a
+length of 2.54 centimetres. You can change the value of
+\unitlength anywhere you want, using the \setlength command,
+but strange things will happen if you try changing it inside
+the picture environment.
+
+A position is a pair of coordinates, such as (2.4,-5),
+specifying the point with x-coordinate 2.4 and y-coordinate -5.
+Coordinates are specified in the usual way with respect to
+an origin, which is normally at the lower-left corner of the
+picture. Note that when a position appears as an argument, it
+is not enclosed in braces; the parentheses serve to delimit
+the argument.
+
+The picture environment has one mandatory argument, which is
+a position. It specifies the size of the picture. The
+environment produces a rectangular box with width and height
+determined by this argument's x- and y-coordinates.
+
+The picture environment also has an optional position argument,
+following the size argument, that can change the origin.
+(Unlike ordinary optional arguments, this argument is not
+contained in square brackets.) The optional argument gives the
+coordinates of the point at the lower-left corner of the picture
+(thereby determining the origin). For example, if \unitlength has
+been set to 1mm, the command
+
+ \begin{picture}(100,200)(10,20)
+
+produces a picture of width 100 millimetres and height 200
+millimetres, whose lower-left corner is the point (10,20) and
+whose upper-right corner is therefore the point (110,220). When
+you first draw a picture, you will omit the optional argument,
+leaving the origin at the lower-left corner. If you then want to
+modify your picture by shifting everything, you just add the
+appropriate optional argument. The environment's mandatory
+argument determines the nominal size of the picture.
+
+This need bear no relation to how large the picture really is;
+LaTeX will happily allow you to put things outside the picture,
+or even off the page. The picture's nominal size is used by LaTeX
+in determining how much room to leave for it.
+
+Everything that appears in a picture is drawn by the \put command.
+The command
+
+ \put (11.3,-.3){...}
+
+puts the object specified by ... in the picture, with its reference
+point at coordinates (11.3,-.3). The reference points for various
+objects will be described below. The \put command creates an LR box.
+You can put anything in the text argument of the \put command that
+you'd put into the argument of an \mbox and related commands. When
+you do this, the reference point will be the lower left corner of
+the box.
+
+Picture commands:
+
+ \circle: Draw a circle.
+ \dashbox: Draw a dashed box.
+ \frame: Draw a frame around an object.
+ \framebox (picture): Draw a box with a frame around it.
+ \line: Draw a straight line.
+ \linethickness: Set the line thickness.
+ \makebox (picture): Draw a box of the specified size.
+ \multiput: Draw multiple instances of an object.
+ \oval: Draw an ellipse.
+ \put: Place an object at a specified place.
+ \shortstack: Make a pile of objects.
+ \vector: Draw a line with an arrow.
+
+############################################################
+ \circle ::circle::
+############################################################
+\circle[*]{diameter}
+The \circle command produces a circle with a diameter as
+close to the specified one as possible. If the *-form of the
+command is used, LaTeX draws a solid circle.
+Note that only circles up to 40 pt can be drawn.
+############################################################
+ \dashbox ::dashbox::
+############################################################
+Draws a box with a dashed line.
+\dashbox{dash_length}(width,height){...}
+The \dashbox has an extra argument which specifies the width
+of each dash. A dashed box looks best when the width and
+height are multiples of the dash_length.
+############################################################
+ \frame ::frame::
+############################################################
+\frame{...}
+The \frame command puts a rectangular frame around the object
+specified in the argument. The reference point is the bottom
+left corner of the frame. No extra space is put between the
+frame and the object.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox(width,height)[position]{...}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the contents
+of the box.
+############################################################
+ \line ::line::
+############################################################
+\line(x slope,y slope){length}
+The \line command draws a line of the specified length and
+slope.
+Note that LaTeX can only draw lines with slope = x/y, where
+x and y have integer values from -6 through 6.
+############################################################
+ \linethickness ::linethickness::
+############################################################
+\linethickness{dimension}
+Declares the thickness of horizontal and vertical lines in a
+picture environment to be dimension, which must be a positive
+length. It does not affect the thickness of slanted lines and
+circles, or the quarter circles drawn by \oval to form the
+corners of an oval.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox(width,height)[position]{...}
+The \makebox command for the picture environment is similar
+to the normal \makebox command except that you must specify
+a width and height in multiples of \unitlength.
+The optional argument, [position], specifies the quadrant
+that your text appears in. You may select up to two of the
+following:
+ t - Moves the item to the top of the rectangle
+ b - Moves the item to the bottom
+ l - Moves the item to the left
+ r - Moves the item to the right
+See section \makebox.
+############################################################
+ \multiput ::multiput::
+############################################################
+\multiput(x coord,y coord)(delta x,delta y){number of copies}{object}
+The \multiput command can be used when you are putting the
+same object in a regular pattern across a picture.
+############################################################
+ \oval ::oval::
+############################################################
+\oval(width,height)[portion]
+The \oval command produces a rectangle with rounded corners.
+The optional argument, [portion], allows you to select part
+of the oval.
+ t - Selects the top portion
+ b - Selects the bottom portion
+ r - Selects the right portion
+ l - Selects the left portion
+Note that the "corners" of the oval are made with quarter
+circles with a maximum
+
+radius of 20 pt, so large "ovals" will look more like boxes
+with rounded corners.
+############################################################
+ \put ::put::
+############################################################
+\put(x coord,y coord){ ... }
+The \put command places the item specified by the mandatory
+argument at the given coordinates.
+############################################################
+ \shortstack ::shortstack::
+############################################################
+\shortstack[position]{... \\ ... \\ ...}
+The \shortstack command produces a stack of objects. The
+valid positions are:
+ r - Moves the objects to the right of the stack
+ l - Moves the objects to the left of the stack
+ c - Moves the objects to the centre of the stack
+ (default)
+############################################################
+ \vector ::vector::
+############################################################
+\vector(x slope,y slope){length}
+The \vector command draws a line with an arrow of the
+specified length and slope. The x and y values must lie
+between -4 and +4, inclusive.
+
+############################################################
+ quotation ::quotation::
+############################################################
+ \begin{quotation}
+ text
+ \end{quotation}
+The margins of the quotation environment are indented on the
+left and the right.
+
+The text is justified at both margins and there is paragraph
+indentation.
+
+Leaving a blank line between text produces a new paragraph.
+############################################################
+ quote ::quote::
+############################################################
+ \begin{quote}
+ text
+ \end{quote}
+The margins of the quote environment are indented on the left
+and the right. The text is justified at both margins. Leaving
+a blank line between text produces a new paragraph.
+############################################################
+ tabbing ::tabbing::
+############################################################
+ \begin{tabbing}
+ text \= more text \= still more text \= last text \\
+ second row \> \> more \\
+ .
+ .
+ .
+ \end{tabbing}
+The tabbing environment provides a way to align text in
+columns. It works by setting tab stops and tabbing to them
+much the way you do with an ordinary typewriter.
+
+It is best suited for cases where the width of each column
+is constant and known in advance.
+
+This environment can be broken across pages, unlike the tabular
+environment.
+
+The following commands can be used inside a tabbing
+enviroment:
+
+############################################################
+ \= ::=::
+############################################################
+Sets a tab stop at the current position.
+############################################################
+ \> ::>::
+############################################################
+Advances to the next tab stop.
+############################################################
+ \< ::<::
+############################################################
+This command allows you to put something to the left of the
+local margin without changing the margin. Can only be used
+at the start of the line.
+############################################################
+ \+ ::+::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the right.
+############################################################
+ \- ::-::
+############################################################
+Moves the left margin of the next and all the following
+commands one tab stop to the left.
+############################################################
+ \' ::'::
+############################################################
+Moves everything that you have typed so far in the current
+column, i.e. everything from the most recent \>, \<, \', \\,
+or \kill command, to the right of the previous column, flush
+against the current column's tab stop.
+############################################################
+ \` ::`::
+############################################################
+Allows you to put text flush right against any tab stop,
+including tab stop 0. However, it can't move text to the right
+of the last column because here's no tab stop there. The \`
+command moves all the text that follows it, up to the \\ or
+\end{tabbing} command that ends the line, to the right margin
+of the tabbing environment. There must be no \> or \' command
+between the \` and the command that ends the line.
+############################################################
+ \kill ::kill::
+############################################################
+Sets tab stops without producing text. Works just like \\
+except that it throws away the current line instead of
+producing output for it. The effect of any \=, \+ or \-
+commands in that line remain in effect.
+############################################################
+ \pushtabs ::pushtabs::
+############################################################
+Saves all current tab stop positions. Useful for temporarily
+changing tab stop positions in the middle of a tabbing
+environment.
+############################################################
+ \pushtabs
+############################################################
+Restores the tab stop positions saved by the last \pushtabs.
+############################################################
+ \a ::a::
+############################################################
+In a tabbing environment, the commands \=, \' and \` do not
+produce accents as normal. Instead, the commands \a=, \a'
+and \a` are used.
+
+This example typesets a Pascal function in a traditional
+format:
+
+ \begin{tabbing}
+ function \= fact(n : integer) : integer;\\
+ \> begin \= \+ \\
+ \> if \= n $>$ 1 then \+ \\
+ fact := n * fact(n-1) \- \\
+ else \+ \\
+ fact := 1; \-\- \\
+ end;\\
+ \end{tabbing}
+
+############################################################
+ table ::table::
+############################################################
+
+ \begin{table}[placement]
+
+ body of the table
+
+ \caption{table title}
+ \end{table}
+
+Tables are objects that are not part of the normal text, and
+are usually "floated" to a convenient place, like the top of
+a page. Tables will not be split between two pages.
+
+The optional argument [placement] determines where LaTeX will
+try to place your table. There are four places where LaTeX
+can possibly put a float:
+ h : Here - at the position in the text where the table
+ environment appears.
+ t : Top - at the top of a text page.
+ b : Bottom - at the bottom of a text page.
+ p : Page of floats - on a separate float page, which
+ is a page containing no text, only floats.
+The standard report and article classes use the default
+placement [tbp].
+
+The body of the table is made up of whatever text, LaTeX
+commands, etc., you wish. The \caption command allows you to
+title your table.
+############################################################
+ tabular ::tabular::
+############################################################
+
+ \begin{tabular}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular}
+
+or
+
+ \begin{tabular*}{width}[pos]{cols}
+ column 1 entry & column 2 entry ... & column n entry \\
+ .
+ .
+ .
+ \end{tabular*}
+
+These environments produce a box consisting of a sequence of
+rows of items, aligned vertically in columns. The mandatory
+and optional arguments consist of:
+ width Specifies the width of the tabular* environment.
+ There must be rubber space between columns that
+ can stretch to fill out the specified width.
+ pos Specifies the vertical position; default is
+ alignment on the centre of the environment.
+ t - align on top row
+ b - align on bottom row
+ cols Specifies the column formatting. It consists of
+ a sequence of the following specifiers,
+ corresponding to the sequence of columns and
+ intercolumn material.
+ l - A column of left-aligned items.
+ r - A column of right-aligned items.
+ c - A column of centred items.
+ | - A vertical line the full height and depth of
+ the environment.
+ @@{text} - This inserts text in every row. An
+ @@-expression suppresses the intercolumn space
+ normally inserted between columns; any desired
+ space between the inserted text and the adjacent
+ items must be included in text. An \extracolsep{wd}
+ command in an @@-expression causes an extra space
+ of width wd to appear to the left of all subsequent
+ columns, until countermanded by another \extracolsep
+ command. Unlike ordinary intercolumn space, this
+ extra space is not suppressed by an @@-expression.
+ An \extracolsep command can be used only in an
+ @@-expression in the cols argument.
+ p{wd} - Produces a column with each item typeset in
+ a parbox of width wd, as if it were the argument
+ of a \parbox[t]{wd} command. However, a \\ may not
+ appear in the item, except in the following
+ situations:
+ 1. inside an environment like minipage,
+ array, or tabular.
+ 2. inside an explicit \parbox.
+ 3. in the scope of a \centering, \raggedright,
+ or \raggedleft
+ declaration. The latter declarations must appear
+ inside braces or an environment when used in a
+ p-column element.
+ *{num}{cols} - Equivalent to num copies of cols, where
+ num is any positive integer and cols is any list of
+ column-specifiers, which may contain another
+ *-expression.
+
+These commands can be used inside a tabular environment:
+
+ \cline: Draw a horizontal line spanning some columns.
+ \hline: Draw a horizontal line spanning all columns.
+ \multicolumn: Make an item spanning several columns.
+ \vline: Draw a vertical line.
+
+############################################################
+ \cline ::cline::
+############################################################
+\cline{i-j}
+The \cline command draws horizontal lines across the columns
+specified, beginning in column i and ending in column j,
+which are identified in the mandatory argument.
+############################################################
+ \hline ::hline::
+############################################################
+The \hline command will draw a horizontal line the width of
+the table. It's most commonly used to draw a line at the top,
+bottom, and between the rows of the table.
+############################################################
+ \multicolumn ::multicolumn::
+############################################################
+\multicolumn{cols}{pos}{text}
+The \multicolumn is used to make an entry that spans several
+columns. The first mandatory argument, cols, specifies the
+number of columns to span. The second mandatory argument, pos,
+specifies the formatting of the entry; c for centred, l for
+flushleft, r for flushright. The third mandatory argument,
+text, specifies what text is to make up the entry.
+############################################################
+ \vline ::vline::
+############################################################
+The \vline command will draw a vertical line extending the
+full height and depth of its row. An \hfill command can be
+used to move the line to the edge of the column. It can also
+be used in an @@-expression.
+############################################################
+ thebibliography ::thebibliography::
+############################################################
+ \begin{thebibliography}{widest-label}
+ \bibitem[label]{cite_key}
+ .
+ .
+ .
+ \end{thebibliography}
+The thebibliography environment produces a bibliography or
+reference list. In the article class, this reference list is
+labelled "References"; in the report class, it is labelled
+"Bibliography".
+
+ widest-label: Text that, when printed, is
+ approximately as wide as the widest item
+ label produces by the \bibitem commands.
+ \bibitem: Specify a bibliography item.
+ \cite: Refer to a bibliography item.
+ \nocite: Include an item in the bibliography.
+ Using BibTeX: Automatic generation of bibliographies.
+
+############################################################
+ \bibitem ::bibitem::
+############################################################
+\bibitem[label]{cite_key}
+The \bibitem command generates an entry labelled by label.
+If the label argument is missing, a number is generated as
+the label, using the enumi counter. The cite_key is any
+sequence of letters, numbers, and punctuation symbols not
+containing a comma. This command writes an entry on the `.aux'
+file containing cite_key and the item's label. When this
+`.aux' file is read by the \begin{document} command, the
+item's label is associated with cite_key, causing the
+reference to cite_key by a \cite command to produce the
+associated label.
+############################################################
+ \cite ::cite::
+############################################################
+\cite[text]{key_list}
+The key_list argument is a list of citation keys. This command
+generates an in-text citation to the references associated
+with the keys in key_list by entries on the `.aux' file read
+by the \begin{document} command. The optional text argument
+will appear after the citation, i.e. \cite[p. 2]{knuth} might
+produce `[Knuth, p. 2]'.
+############################################################
+ \nocite ::nocite::
+############################################################
+\nocite{key_list}
+The \nocite command produces no text, but writes key_list,
+which is a list of one or more citation keys, on the `.aux'
+file.
+############################################################
+ Using BibTeX
+############################################################
+If you use the BibTeX program by Oren Patashnik (highly
+recommended if you need a bibliography of more than a couple
+of titles) to maintain your bibliography, you don't use the
+thebibliography environment. Instead, you include the lines
+
+ \bibliographystyle{style} ::bibliographystyle::
+ \bibliography{bibfile} ::bibliography::
+
+where style refers to a file style.bst, which defines how
+your citations will look. The standard styles distributed
+with BibTeX are:
+
+ alpha Sorted alphabetically. Labels are formed
+ from name of author and year of publication.
+ plain Sorted alphabetically. Labels are numeric.
+ unsrt Like plain, but entries are in order of
+ citation.
+ abbrv Like plain, but more compact labels.
+
+In addition, numerous other BibTeX style files exist tailored
+to the demands of various publications.
+The argument to \bibliography refers to the file bibfile.bib,
+which should contain your database in BibTeX format. Only the
+entries referred to via \cite and \nocite will be listed in
+the bibliography.
+############################################################
+ theorem ::theorem::
+############################################################
+
+ \begin{theorem}
+ theorem text
+ \end{theorem}
+
+The theorem environment produces "Theorem x" in boldface
+followed by your theorem text.
+############################################################
+ titlepage ::titlepage::
+############################################################
+
+ \begin{titlepage}
+ text
+ \end{titlepage}
+
+The titlepage environment creates a title page, i.e. a page
+with no printed page number or heading. It also causes the
+following page to be numbered page one.
+
+Formatting the title page is left to you. The \today command
+comes in handy for title pages.
+
+Note that you can use the \maketitle (see section \maketitle)
+command to produce a standard title page.
+############################################################
+ verbatim ::verbatim::
+############################################################
+
+ \begin{verbatim}
+ text
+ \end{verbatim}
+
+The verbatim environment is a paragraph-making environment
+that gets LaTeX to print exactly what you type in. It turns
+LaTeX into a typewriter with carriage returns and blanks
+having the same effect that they would on a typewriter.
+
+ \verb: The macro form of the verbatim environment.
+
+############################################################
+ \verb ::verb::
+############################################################
+\verb char literal_text char
+\verb*char literal_text char
+Typesets literal_text exactly as typed, including special
+characters and spaces, using a typewriter (\tt) type style.
+There may be no space between \verb or \verb* and char
+(space is shown here only for clarity). The *-form differs
+only in that spaces are printed as `\verb*| |'.
+############################################################
+ verse ::verse::
+############################################################
+ \begin{verse}
+ text
+ \end{verse}
+The verse environment is designed for poetry, though you may
+find other uses for it.
+The margins are indented on the left and the right. Separate
+the lines of each stanza with \\, and use one or more blank
+lines to separate the stanzas.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Footnotes.txt,v b/support/tcltexed/hlp/eng/RCS/Footnotes.txt,v
new file mode 100644
index 0000000000..c1a925ef3f
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Footnotes.txt,v
@@ -0,0 +1,71 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Footnotes
+############################################################
+
+Footnotes can be produced in one of two ways. They can be
+produced with one command, the \footnote command. They can
+also be produced with two commands, the \footnotemark and the
+\footnotetext commands. See the specific command for
+information on why you would use one over the other.
+
+ \footnote: Insert a footnote.
+ \footnotemark: Insert footnote mark only.
+ \footnotetext: Insert footnote text only.
+
+############################################################
+ \footnote ::footnote::
+############################################################
+\footnote[number]{text}
+The \footnote command places the numbered footnote text at
+the bottom of the current page. The optional argument, number,
+is used to change the default footnote number. This command
+can only be used in outer paragraph mode; i.e., you cannot
+use it in sectioning commands like \chapter, in figures,
+tables or in a tabular environment.
+############################################################
+ \footnotemark ::footnotemark::
+############################################################
+The \footnotemark command puts the footnote number in the
+text. This command can be used in inner paragraph mode. The
+text of the footnote is supplied by the \footnotetext command.
+This command can be used to produce several consecutive
+footnote markers referring to the same footnote by using
+
+ \footnotemark[\value{footnote}]
+
+after the first \footnote command.
+############################################################
+ \footnotetext ::footnotetext::
+############################################################
+\footnotetext[number]{text}
+The \footnotetext command produces the text to be placed at
+the bottom of the page. This command can come anywhere after
+the \footnotemark command. The \footnotetext command must
+appear in outer paragraph mode.
+
+The optional argument, number, is used to change the default
+footnote number.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Input.txt,v b/support/tcltexed/hlp/eng/RCS/Input.txt,v
new file mode 100644
index 0000000000..667be91ff1
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Input.txt,v
@@ -0,0 +1,77 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Splitting the Input
+############################################################
+
+A large document requires a lot of input. Rather than
+putting the whole input in a single large file, it's more
+efficient to split it into several smaller ones.
+Regardless of how many separate files you use, there is one
+that is the root file; it is the one whose name you type when
+you run LaTeX.
+
+ \include: Conditionally include a file.
+ \includeonly: Determine which files are included.
+ \input: Unconditionally include a file.
+
+############################################################
+ \include ::include::
+############################################################
+\include{file}
+The \include command is used in conjunction with the
+\includeonly command for selective inclusion of files. The
+file argument is the first name of a file, denoting `file.tex'.
+If file is one the file names in the file list of the
+\includeonly command or if there is no \includeonly command,
+the \include command is equivalent to
+
+ \clearpage \input{file} \clearpage
+
+except that if the file `file.tex' does not exist, then a
+warning message rather than an error is produced. If the file
+is not in the file list, the \include command is equivalent
+to \clearpage.
+
+The \include command may not appear in the preamble or in a
+file read by another \include command.
+############################################################
+ \includeonly ::includeonly::
+############################################################
+\includeonly{file_list}
+The \includeonly command controls which files will be read
+in by an \include command. file_list should be a
+comma-separated list of filenames. Each filename must match
+exactly a filename specified in a \include command. This
+command can only appear in the preamble.
+############################################################
+ \input ::input::
+############################################################
+\input{file}
+The \input command causes the indicated file to be read and
+processed, exactly as if its contents had been inserted in
+the current file at that point. The file name may be a
+complete file name with extension or just a first name, in
+which case the file `file.tex' is used.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Layout.txt,v b/support/tcltexed/hlp/eng/RCS/Layout.txt,v
new file mode 100644
index 0000000000..6408324b11
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Layout.txt,v
@@ -0,0 +1,60 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Layout
+############################################################
+
+Miscellaneous commands for controlling the general layout
+of the page.
+
+ \flushbottom: Make all text pages the same height.
+ \onecolumn: Use one-column layout.
+ \raggedbottom: Allow text pages of differing height.
+ \twocolumn: Use two-column layout.
+
+############################################################
+ \flushbottom ::flushbottom::
+############################################################
+The \flushbottom declaration makes all text pages the same
+height, adding extra vertical space when necessary to fill
+out the page. This is the standard if twocolumn mode is
+selected.
+############################################################
+ \onecolumn ::onecolumn::
+############################################################
+The \onecolumn declaration starts a new page and produces
+single-column output.
+############################################################
+ \raggedbottom ::raggedbottom::
+############################################################
+The \raggedbottom declaration makes all pages the height of
+the text on that page. No extra vertical space is added.
+############################################################
+ \twocolumn ::twocolumn::
+############################################################
+\twocolumn[text]
+The \twocolumn declaration starts a new page and produces
+two-column output. If the optional text argument is present,
+it is typeset in one-column mode.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Lengths.txt,v b/support/tcltexed/hlp/eng/RCS/Lengths.txt,v
new file mode 100644
index 0000000000..316439178d
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Lengths.txt,v
@@ -0,0 +1,98 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@
+############################################################
+Lengths
+############################################################
+
+A length is a measure of distance. Many LaTeX commands take
+a length as an argument.
+
+ \newlength: Define a new length.
+ \setlength: Set the value of a length.
+ \addtolength: Add a quantity to a length.
+ \settodepth: Set a length to the depth of something.
+ \settoheight: Set a length to the height of something.
+ \settowidth: Set a length to the width of something.
+ Predefined lengths: Lengths that are, like, predefined.
+
+############################################################
+ \newlength ::newlength::
+############################################################
+\newlength{\gnat}
+The \newlength command defines the mandatory argument, \gnat,
+as a length command with a value of 0in. An error occurs if a
+\gnat command already exists.
+############################################################
+ \setlength ::setlength::
+############################################################
+\setlength{\gnat}{length}
+The \setlength command is used to set the value of a length
+command. The length argument can be expressed in any terms
+of length LaTeX understands, i.e., inches (in),
+millimetres (mm), points (pt), etc.
+############################################################
+ \addtolength ::addtolength::
+############################################################
+\addtolength{\gnat}{length}
+The \addtolength command increments a "length command" by the
+amount specified in the length argument. It can be a negative
+amount.
+############################################################
+ \settodepth ::settodepth::
+############################################################
+\settodepth{\gnat}{text}
+The \settodepth command sets the value of a length command
+equal to the depth of the text argument.
+############################################################
+ \settoheight ::settoheight::
+############################################################
+\settoheight{\gnat}{text}
+The \settoheight command sets the value of a length command
+equal to the height of the text argument.
+############################################################
+ \settowidth ::settowidth::
+############################################################
+\settowidth{\gnat}{text}
+The \settowidth command sets the value of a length command
+equal to the width of the text argument.
+
+Predefined lengths
+
+ \width ::width::
+ \height ::height::
+ \depth ::depth::
+ \totalheight ::totalheight::
+
+These length parameters can be used in the arguments of the
+box-making commands
+
+See section Spaces & Boxes.
+
+They specify the natural width etc. of the text in the box.
+\totalheight equals \height + \depth. To make a box with the
+text stretched to double the natural size, e.g., say
+
+ \makebox[2\width]{Get a stretcher}
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Letters.txt,v b/support/tcltexed/hlp/eng/RCS/Letters.txt,v
new file mode 100644
index 0000000000..9facb5ff98
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Letters.txt,v
@@ -0,0 +1,157 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Letters
+############################################################
+You can use LaTeX to typeset letters, both personal and
+business. The letter document class is designed to make a
+number of letters at once, although you can make just one if
+you so desire.
+
+Your `.tex' source file has the same minimum commands as the
+other document classes, i.e., you must have the following
+commands as a minimum:
+
+ \documentclass{letter}
+ \begin{document}
+ ... letters ...
+ \end{document}
+
+Each letter is a letter environment, whose argument is the
+name and address of the recipient. For example, you might
+have:
+
+ \begin{letter}{Mr. Joe Smith\\ 2345 Princess St.
+ \\ Edinburgh, EH1 1AA}
+ ...
+ \end{letter}
+
+The letter itself begins with the \opening command. The text
+of the letter follows. It is typed as ordinary LaTeX input.
+Commands that make no sense in a letter, like \chapter, do not
+work. The letter closes with a \closing command.
+After the closing, you can have additional material. The \cc
+command produces the usual "cc: ...". There's also a similar
+\encl command for a list of enclosures. With both these commands,
+use \\ to separate the items.
+
+These commands are used with the letter class:
+
+ \address: Your return address.
+ \cc: Cc list.
+ \closing: Saying goodbye.
+ \encl: List of enclosed material.
+ \location: Your organisation's address.
+ \makelabels: Making address labels.
+ \name: Your name, for the return address.
+ \opening: Saying hello.
+ \ps: Adding a postscript.
+ \signature: Your signature.
+ \startbreaks: Allow page breaks.
+ \stopbreaks: Disallow page breaks.
+ \telephone: Your phone number.
+
+############################################################
+ \address ::address::
+############################################################
+\address{Return address}
+The return address, as it should appear on the letter and the
+envelope. Separate lines of the address should be separated
+by \\ commands. If you do not make an \address declaration,
+then the letter will be formatted for copying onto your
+organisation's standard letterhead. (See section Overview of
+LaTeX and Local Guide, for details on your local implementation).
+If you give an \address declaration, then the letter will be
+formatted as a personal letter.
+############################################################
+ \cc ::cc::
+############################################################
+\cc{Kate Schechter\\Rob McKenna}
+Generate a list of other persons the letter was sent to. Each
+name is printed on a separate line.
+############################################################
+ \closing ::closing::
+############################################################
+\closing{text}
+The letter closes with a \closing command, i.e.,
+ \closing{Best Regards,}
+\encl
+\encl{CV\\Certificates}
+Generate a list of enclosed material.
+############################################################
+ \location ::location::
+############################################################
+\location{address}
+This modifies your organisation's standard address. This
+only appears if the firstpage pagestyle is selected.
+############################################################
+ \makelabels ::makelabels::
+############################################################
+\makelabels{number}
+If you issue this command in the preamble, LaTeX will create
+a sheet of address labels. This sheet will be output before
+the letters.
+############################################################
+ \name ::name::
+############################################################
+\name{June Davenport}
+Your name, used for printing on the envelope together with
+the return address.
+############################################################
+ \opening ::opening::
+############################################################
+\opening{text}
+The letter begins with the \opening command. The mandatory
+argument, text, is whatever text you wish to start your
+letter, i.e.,
+ \opening{Dear Joe,}
+############################################################
+ \ps ::ps::
+############################################################
+\ps
+Use this command before a postscript.
+############################################################
+ \signature ::sinature::
+############################################################
+\signature{Harvey Swick}
+Your name, as it should appear at the end of the letter
+underneath the space for your signature. Items that should
+go on separate lines should be separated by \\ commands.
+############################################################
+ \startbreaks ::startbreaks::
+############################################################
+\startbreaks
+Used after a \stopbreaks command to allow page breaks again.
+############################################################
+ \stopbreaks ::stopbreaks::
+############################################################
+\stopbreaks
+Inhibit page breaks until a \startbreaks command occurs.
+############################################################
+ \telephone ::telephone::
+############################################################
+\telephone{number}
+This is your telephone number. This only appears if the
+firstpage pagestyle is selected.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Margin.txt,v b/support/tcltexed/hlp/eng/RCS/Margin.txt,v
new file mode 100644
index 0000000000..c7ea4a45b8
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Margin.txt,v
@@ -0,0 +1,44 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Margin Notes ::marginpar::reversemarginpar::
+############################################################
+
+The command \marginpar[left]{right} creates a note in the
+margin. The first line will be at the same height as the line
+in the text where the \marginpar occurs.
+When you only specify the mandatory argument right, the text
+will be placed
+ 1. in the right margin for one-sided layout
+ 2. in the outside margin for two-sided layout
+ 3. in the nearest margin for two-column layout.
+ 4. By issuing the command \reversemarginpar, you can
+ force the marginal notes to go into the opposite
+ (inside) margin.
+When you specify both arguments, left is used for the left
+margin, and right is used for the right margin.
+The first word will normally not be hyphenated; you can
+enable hyphenation by prefixing the first word with a
+\hspace{0pt} command.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Math.txt,v b/support/tcltexed/hlp/eng/RCS/Math.txt,v
new file mode 100644
index 0000000000..ad4cb39a21
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Math.txt,v
@@ -0,0 +1,111 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Math Formulae ::(::)::[::]::$::
+############################################################
+
+There are three environments that put LaTeX in math mode:
+ math For Formulae that appear right in the text.
+ displaymath For Formulae that appear on their own line.
+ equation The same as the displaymath environment
+ except that it adds an equation number in
+ the right margin.
+The math environment can be used in both paragraph and LR mode,
+but the displaymath and equation environments can be used only
+in paragraph mode. The math and displaymath environments are
+used so often that they have the following short forms:
+
+ \(...\) instead of \begin{math}...\end{math}
+
+ \[...\] instead of \begin{displaymath}...\end{displaymath}
+
+In fact, the math environment is so common that it has an even
+shorter form:
+
+ $ ... $ instead of \(...\)
+
+ Subscripts & Superscripts: Also known as exponent or index.
+ Math Symbols: Various mathematical squiggles.
+ Spacing in Math Mode: Thick, medium, thin and negative spaces.
+ Math Miscellany: Stuff that doesn't fit anywhere else.
+
+############################################################
+ Subscripts & Superscripts ::_::^::
+############################################################
+To get an expression exp to appear as a subscript, you just
+type _{exp}. To get exp to appear as a superscript, you type
+^{exp}. LaTeX handles superscripted superscripts and all of
+that stuff in the natural way. It even does the right
+thing when something has both a subscript and a superscript.
+############################################################
+ Math Symbols
+############################################################
+LaTeX provides almost any mathematical symbol you're likely
+to need. The commands for generating them can be used only in
+math mode. For example, if you include $\pi$ in your source,
+you will get the symbol in your output.
+############################################################
+ Spacing in Math Mode
+############################################################
+In a math environment, LaTeX ignores the spaces you type and
+puts in the spacing that it thinks is best. LaTeX formats
+mathematics the way it's done in mathematics texts. If you
+want different spacing, LaTeX provides the following four
+commands for use in math mode:
+
+ \; - a thick space ::;::
+ \: - a medium space :::::
+ \, - a thin space ::,::
+ \! - a negative thin space ::!::
+
+############################################################
+ Math Miscellany
+############################################################
+ \cdots ::cdots::
+Produces a horizontal ellipsis where the dots are raised to
+the centre of the line. eg.
+ \ddots ::ddots::
+Produces a diagonal ellipsis. eg.
+ \frac{num}{den} ::frac::
+Produces the fraction num divided by den. eg.
+ \ldots ::ldots::
+Produces an ellipsis. This command works in any mode, not
+just math mode. eg.
+ \overbrace{text} ::overbrace::
+Generates a brace over text. eg.
+ \overline{text} ::overline::
+Causes the argument text to be overlined. eg.
+ \sqrt[root]{arg} ::sqrt::
+Produces the square root of its argument. The optional argument,
+root, determines what root to produce, i.e., the cube root
+of x+y would be typed
+as $\sqrt[3]{x+y}$. eg.
+ \underbrace{text} ::underbrace::
+Generates text with a brace underneath. eg.
+ \underline{text} ::underline::
+Causes the argument text to be underlined. This command can
+also be used in paragraph and LR modes. eg.
+ \vdots ::vdots::
+Produces a vertical ellipsis. eg.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Modes.txt,v b/support/tcltexed/hlp/eng/RCS/Modes.txt,v
new file mode 100644
index 0000000000..55b108b597
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Modes.txt,v
@@ -0,0 +1,63 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Modes
+############################################################
+When LaTeX is processing your input text, it is always in one
+of three modes:
+
+ Paragraph mode
+ Math mode
+ Left-to-right mode, called LR mode for short
+
+LaTeX changes mode only when it goes up or down a staircase
+to a different level, though not all level changes produce
+mode changes. Mode changes occur only when entering or
+leaving an environment, or when LaTeX is processing the
+argument of certain text-producing commands.
+
+"Paragraph mode" is the most common; it's the one LaTeX is
+in when processing ordinary text. In that mode, LaTeX breaks
+your text into lines and breaks the lines into pages. LaTeX
+is in "math mode" when it's generating a mathematical formula.
+In "LR mode", as in paragraph mode, LaTeX considers the output
+that it produces to be a string of words with spaces between
+them. However, unlike paragraph mode, LaTeX keeps going from
+left to right; it never starts a new line in LR mode. Even if
+you put a hundred words into an \mbox, LaTeX would keep
+typesetting them from left to right inside a single box, and
+then complain because the resulting box was too wide to fit
+on the line.
+
+LaTeX is in LR mode when it starts making a box with an \mbox
+command. You can get it to enter a different mode inside the
+box - for example, you can make it enter math mode to put a
+formula in the box. There are also several text-producing
+commands and environments for making a box that put LaTeX in
+paragraph mode. The box make by one of these commands or
+environments will be called a parbox. When LaTeX is in paragraph
+mode while making a box, it is said to be in "inner paragraph
+mode". Its normal paragraph mode, which it starts out in, is
+called "outer paragraph mode".
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Overview.txt,v b/support/tcltexed/hlp/eng/RCS/Overview.txt,v
new file mode 100644
index 0000000000..ecb11b9a2d
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Overview.txt,v
@@ -0,0 +1,92 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Overview of LaTeX and Local Guide
+############################################################
+
+The LaTeX command typesets a file of text using the TeX program
+and the LaTeX Macro package for TeX. To be more specific, it
+processes an input file containing the text of a document with
+interspersed commands that describe how the text should be
+formatted. It produces at least three files as output:
+
+ 1. A "Device Independent", or `.dvi' file. This contains
+commands that can be translated into commands for a variety
+of output devices. You can view the output of LaTeX by using
+a program such as xdvi, which actually uses the `.dvi' file.
+ 2. A "transcript" or `.log' file that contains summary
+information and diagnostic messages for any errors discovered
+in the input file.
+ 3. An "auxiliary" or `.aux' file. This is used by LaTeX
+itself, for things such as sectioning.
+
+For a description of what goes on inside TeX, you should
+consult The TeXbook by Donald E. Knuth, ISBN 0-201-13448-9,
+published jointly by the American Mathematical Society
+and Addison-Wesley Publishing Company.
+
+For a description of LaTeX, you should consult:
+ LaTeX: A Document Preparation System, by Leslie Lamport,
+Addison-Wesley Publishing Company, 2nd edition, 1994.
+ The LaTeX Companion, by Michel Goossens, Frank Mittelbach,
+and Alexander Samarin, Addison-Wesley, 1994.
+
+############################################################
+Commands
+############################################################
+
+A LaTeX command begins with the command name, which consists
+of a \ followed by either (a) a string of letters or
+(b) a single non-letter. Arguments contained in square brackets,
+[], are optional while arguments contained in braces, {},
+are required.
+
+NOTE: LaTeX is case sensitive. Enter all commands in lower
+case unless explicitly directed to do otherwise.
+
+ Counters: Internal counters used by LaTeX.
+ Cross References: Automatic referencing.
+ Definitions: Define your own commands etc.
+ Document Classes: Some of the various classes available.
+ Environments: Such as enumerate & itemize.
+ Footnotes: How to produce footnotes.
+ Layout: Controlling the page layout.
+ Lengths: The length commands.
+ Letters: The letter class.
+ Line & Page Breaking: How to insert pagebreaks etc.
+ Making Paragraphs: Paragraph commands.
+ Margin Notes: Putting remarks in the margin.
+ Math Formulae: How to create mathematical formulae.
+ Modes: Paragraph, Math or LR modes.
+ Page Styles: Various styles of page layout.
+ Sectioning: How to section properly.
+ Spaces & Boxes: All the associated commands.
+ Special Characters: Special reserved characters.
+ Splitting the Input: Dealing with big files by splitting.
+ Starting & Ending: The formal start & end layouts.
+ Table of Contents: How to create a table of contents.
+ Terminal Input/Output: User interaction.
+ Typefaces: Such as bold, italics etc.
+
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Paragraphs.txt,v b/support/tcltexed/hlp/eng/RCS/Paragraphs.txt,v
new file mode 100644
index 0000000000..168478799d
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Paragraphs.txt,v
@@ -0,0 +1,56 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Making Paragraphs
+############################################################
+
+A paragraph is ended by one or more completely blank lines
+-- lines not containing even a %. A blank line should not
+appear where a new paragraph cannot be started, such as in
+math mode or in the argument of a sectioning command.
+
+ \indent: Indent this paragraph.
+ \noindent: Do not indent this paragraph.
+ \par: Another way of writing a blank line.
+
+############################################################
+ \indent ::indent:
+############################################################
+\indent
+This produces a horizontal space whose width equals the width
+of the paragraph indentation. It is used to add paragraph
+indentation where it would otherwise be suppressed.
+############################################################
+ \noindent ::noindent::
+############################################################
+\noindent
+When used at the beginning of the paragraph, it suppresses
+the paragraph indentation. It has no effect when used in the
+middle of a paragraph.
+############################################################
+ \par ::par::
+############################################################
+Equivalent to a blank line; often used to make command or
+environment definitions easier to read.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Parameters.txt,v b/support/tcltexed/hlp/eng/RCS/Parameters.txt,v
new file mode 100644
index 0000000000..9f4a63ed27
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Parameters.txt,v
@@ -0,0 +1,508 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Parameters
+############################################################
+
+The input file specification indicates the file to be
+formatted; TeX uses `.tex' as a default file extension. If
+you omit the input file entirely, TeX accepts input from the
+terminal. You specify command options by supplying a string
+as a parameter to the command; e.g.
+
+ latex "\scrollmode\input foo.tex"
+
+will process `foo.tex' without pausing after every error.
+Output files are always created in the current directory.
+When you fail to specify an input file name, TeX bases the
+output names on the file specification associated with the
+logical name TEX_OUTPUT, typically texput.log.
+############################################################
+Concept Index
+a
+Accessing any character of a font
+Aligning Equations
+Appendix, creating
+Arrays, math
+article class
+Author, for titlepage
+b
+Bibliography, creating (automatically)
+Bibliography, creating (manually)
+BibTeX, using
+book class
+Boxes
+c
+Cc list
+Centering text
+Centering text, environment for
+Characters, reserved
+Characters, special
+Classes of document
+Commands, defining new ones
+Computer programs, typesetting
+Counters, a list of
+Counters, creating
+Counters, getting the value of
+Counters, setting
+Creating letters
+Creating pictures
+Creating tables
+Cross referencing
+Cross referencing using page number
+Cross referencing using section number
+d
+Date, for titlepage
+Defining a new command
+Defining new environments
+Defining new fonts
+Defining new theorems
+Displaying quoted text
+Displaying quoted text with paragraph indentation
+Document Classes
+e
+Enclosed material
+Ending & Starting
+Enlarge current page
+Environments
+Environments, defining
+Equations, aligning
+Equations, environment for
+exponent
+f
+Figures, footnotes in
+Flushing a page
+Font commands, low-level
+Font Sizes
+Font Styles
+Fonts
+Fonts, new commands for
+Footnotes in figures
+Footnotes, creating
+Formatting Text
+Formulae, environment for
+Formulae, maths
+g
+Global options
+Greek letters
+h
+Hyphenation, defining
+Hyphenation, forcing
+i
+Indent, forcing
+Indent, suppressing
+Input file, splitting
+Input/Output
+Inserting figures
+j
+Justification, ragged left
+Justification, ragged right
+l
+Labelled lists, creating
+LaTeX overview
+Layout commands
+Left-justifying text
+Left-justifying text, environment for
+Left-to-right mode
+Lengths, adding to
+Lengths, defining a new
+Lengths, defining and using
+Lengths, predefined
+Lengths, setting value of
+letter class
+Letters
+Letters, ending
+Letters, starting
+Line Breaking
+Line breaks
+Lines in tables
+Lining text up in columns using tab stops
+Lining text up in tables
+Lists of items
+Lists of items, generic
+Lists of items, numbered
+Loading additional packages
+Low-level font commands
+LR mode
+m
+Making a title page
+Making paragraphs
+Margin Notes
+Math Formulae
+Math mode
+Math mode, entering
+Math mode, spacing
+Maths Miscellany
+Maths symbols
+Minipage, creating a
+Modes
+Multicolumn text
+n
+New line, starting
+New line, starting (paragraph mode)
+New Page
+Notes in the margin
+o
+Options, global
+Overview of LaTeX
+p
+Packages, loading
+Page break, forcing
+Page Breaking
+Page Formatting
+Page numbering
+Page styles
+Paragraph mode
+Paragraph, starting a new
+Paragraphs
+Pictures, creating
+Poetry, an environment for
+Predefined lengths
+Programs, typesetting
+q
+Quoted text with paragraph indentation, displaying
+Quoted text, displaying
+r
+Ragged left text
+Ragged left text, environment for
+Ragged right text
+Ragged right text, environment for
+Remarks in the margin
+report class
+Reserved Characters
+Right-justifying text
+Right-justifying text, environment for
+s
+Sectioning
+Simulating typed text
+Sizes of text
+Space, inserting vertical
+Spaces
+Spacing, within Math mode
+Special Characters
+Splitting the input file
+Starting & Ending
+Starting on a right-hand page
+Styles of text
+Styles, page
+Subscript
+Superscript
+Symbols
+t
+Tab stops, using
+Table of Contents, creating
+Tables, creating
+Terminal Input/Output
+Thanks, for titlepage
+Theorems, defining
+Theorems, typesetting
+Title making
+Title pages, creating
+Title, for titlepage
+Typed text, simulating
+Typeface Sizes
+Typeface Styles
+Typefaces
+u
+Using BibTeX
+v
+Variables, a list of
+Verbatim text
+Vertical space, inserting
+Command Index
+$
+$
+\
+\!
+\' (tabbing)
+\(
+\)
+\+
+\,
+\- (hyphenation)
+\- (tabbing)
+\;
+\<
+\=
+\>
+\[
+\\
+\]
+\` (tabbing)
+\a
+\addcontentsline
+\address
+\addtocontents
+\addtocounter
+\addtolength
+\addvspace
+\alph
+\Alph
+\appendix
+\arabic
+\author
+\backslash
+\begin
+\bfseries
+\bibitem
+\bibliography
+\bibliographystyle
+\bigskip
+\caption
+\cc
+\cdots
+\centering
+\chapter
+\circle
+\cite
+\cleardoublepage
+\clearpage
+\cline
+\closing
+\COLON
+\dashbox
+\date
+\ddots
+\depth
+\documentclass
+\dotfill
+\emph
+\encl
+\end
+\enlargethispage
+\fbox
+\flushbottom
+\fnsymbol
+\fontencoding
+\fontfamily
+\fontseries
+\fontshape
+\fontsize
+\footnote
+\footnotemark
+\footnotesize
+\footnotetext
+\frac
+\frame
+\framebox, \framebox
+\fussy
+\height
+\hfill
+\hline
+\hrulefill
+\hspace
+\Huge
+\huge
+\hyphenation
+\include
+\includeonly
+\indent
+\input
+\item
+\itshape
+\kill
+\label
+\large
+\LARGE
+\Large
+\ldots
+\lefteqn
+\line
+\linebreak
+\linethickness
+\listoffigures
+\listoftables
+\location
+\makebox
+\makebox (picture)
+\makelabels
+\maketitle
+\markboth
+\markright
+\mathbf
+\mathcal
+\mathit
+\mathnormal
+\mathrm
+\mathsf
+\mathtt
+\mathversion
+\mbox
+\mdseries
+\medskip
+\multicolumn
+\multiput
+\name
+\newcommand
+\newcounter
+\newenvironment
+\newfont
+\newlength
+\newline
+\newpage
+\newsavebox
+\newtheorem
+\nocite
+\nofiles
+\noindent
+\nolinebreak
+\nopagebreak
+\normalfont
+\normalsize
+\onecolumn
+\opening
+\oval
+\overbrace
+\overline
+\pagebreak
+\pagenumbering
+\pageref
+\pagestyle
+\par
+\paragraph
+\parbox
+\ps
+\pushtabs, \pushtabs
+\put
+\raggedbottom
+\raggedleft
+\raggedright
+\raisebox
+\ref
+\refstepcounter
+\rmfamily
+\roman
+\Roman
+\rule
+\savebox
+\sbox
+\scriptsize
+\scshape
+\selectfont
+\setcounter
+\setlength
+\settodepth
+\settoheight
+\settowidth
+\sffamily
+\shortstack
+\signature
+\sloppy
+\slshape
+\small
+\smallskip
+\sqrt
+\startbreaks
+\stepcounter
+\stopbreaks
+\subparagraph
+\subsection
+\subsubsection
+\symbol
+\tableofcontents
+\telephone
+\textbf
+\textit
+\textmd
+\textnormal
+\textrm
+\textsc
+\textsf
+\textsl
+\texttt
+\textup
+\thanks
+\thispagestyle
+\tiny
+\title
+\today
+\totalheight
+\ttfamily
+\twocolumn
+\typein
+\typeout
+\underbrace
+\underline
+\upshape
+\usebox
+\usecounter
+\usefont
+\usepackage
+\value
+\vdots
+\vector
+\verb
+\vfill
+\vline
+\vspace
+\width
+^
+^
+_
+_
+a
+array
+c
+center
+d
+description
+e
+enumerate
+eqnarray
+equation
+f
+figure
+flushleft
+flushright
+i
+itemize
+l
+letter
+list
+lrbox
+m
+minipage
+p
+picture
+q
+quotation
+quote
+t
+tabbing
+table
+tabular
+thebibliography
+theorem
+titlepage
+v
+verbatim
+verse
+
+
+
+This document was generated on 8 July 1996 using the texi2html translator
+version 1.50.
+
+
+@
diff --git a/support/tcltexed/hlp/eng/RCS/References.txt,v b/support/tcltexed/hlp/eng/RCS/References.txt,v
new file mode 100644
index 0000000000..6c623dbc9a
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/References.txt,v
@@ -0,0 +1,71 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Cross References
+############################################################
+
+One reason for numbering things like figures and equations
+is to refer the reader to them, as in "See Figure 3 for more
+details."
+
+\label: Assign a symbolic name to a piece of text.
+\pageref: Refer to a page number.
+\ref: Refer to a section, figure or similar.
+
+############################################################
+ \label ::label::
+############################################################
+\label{key}
+A \label command appearing in ordinary text assigns to the
+key the number of the current sectional unit; one appearing
+inside a numbered environment assigns that number to the key.
+
+A key can consist of any sequence of letters, digits, or
+punctuation characters.
+
+Upper and lowercase letters are different.
+
+To avoid accidentally creating two labels with the same name,
+it is common to use labels consisting of a prefix and a suffix
+separated by a colon. The prefixes conventionally used are
+ cha for chapters
+ sec for lower-level sectioning commands
+ fig for figures
+ tab for tables
+ eq for equations
+Thus, a label for a figure would look like fig:bandersnatch.
+############################################################
+ \pageref ::pageref::
+############################################################
+\pageref{key}
+The \pageref command produces the page number of the place
+in the text where the corresponding \label command appears.
+ie. where \label{key} appears.
+############################################################
+ \ref ::ref::
+############################################################
+\ref{key}
+The \ref command produces the number of the sectional unit,
+equation number, ... of the corresponding \label command.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Sectioning.txt,v b/support/tcltexed/hlp/eng/RCS/Sectioning.txt,v
new file mode 100644
index 0000000000..3fa739b871
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Sectioning.txt,v
@@ -0,0 +1,72 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Sectioning
+############################################################
+
+Sectioning commands provide the means to structure your text
+into units.
+
+ \part ::part::
+ \chapter (report and book class only) ::chapter::
+ \section ::section::
+ \subsection ::subsection::
+ \subsubsection ::subsubsection::
+ \paragraph ::paragraph::
+ \subparagraph ::subparagraph::
+
+All sectioning commands take the same general form, i.e.,
+
+ \chapter[optional]{title}
+
+In addition to providing the heading in the text, the
+mandatory argument of the sectioning command can appear in
+two other places:
+
+ 1. The table of contents
+ 2. The running head at the top of the page
+
+You may not want the same thing to appear in these other
+two places as appears in the text heading. To handle this
+situation, the sectioning commands have an optional
+argument that provides the text for these other two
+purposes.
+
+All sectioning commands have *-forms that print a title,
+but do not include a number and do not make an entry in the
+table of contents.
+############################################################
+ \appendix ::appendix::
+############################################################
+The \appendix command changes the way sectional units are
+numbered. The \appendix command generates no text and does
+not affect the numbering of parts.
+
+The normal use of this command is something like
+
+\chapter{The First Chapter}
+...
+\appendix
+\chapter{The First Appendix}
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Spaces.txt,v b/support/tcltexed/hlp/eng/RCS/Spaces.txt,v
new file mode 100644
index 0000000000..30fc6ed246
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Spaces.txt,v
@@ -0,0 +1,264 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Spaces & Boxes
+############################################################
+
+All the predefined length parameters See section Predefined
+lengths can be used in the arguments of the box-making
+commands.
+
+Horizontal space
+
+ \dotfill: Stretchable horizontal dots.
+ \hfill: Stretchable horizontal space.
+ \hrulefill: Stretchable horizontal rule.
+ \hspace: Fixed horizontal space. Vertical space
+ \addvspace: Fixed vertical space.
+ \bigskip: Fixed vertical space.
+ \medskip: Fixed vertical space.
+ \smallskip: Fixed vertical space.
+ \vfill: Stretchable vertical space.
+ \vspace: Fixed vertical space. Boxes
+ \fbox: Framebox.
+ \framebox: Framebox, adjustable position.
+ lrbox: An environment like \sbox.
+ \makebox: Box, adjustable position.
+ \mbox: Box.
+ \newsavebox: Declare a name for saving a box.
+ \parbox: Box with text in paragraph mode.
+ \raisebox: Raise or lower text.
+ \rule: Lines and squares.
+ \savebox: Like \makebox, but save the text for later use.
+ \sbox: Like \mbox, but save the text for later use.
+ \usebox: Print saved text.
+
+############################################################
+ \dotfill ::dotfill::
+############################################################
+The \dotfill command produces a "rubber length" that produces
+dots instead of just spaces.
+############################################################
+ \hfill ::hfill::
+############################################################
+The \hfill fill command produces a "rubber length" which can
+stretch or shrink horizontally. It will be filled with spaces.
+############################################################
+ \hrulefill ::hrulefill::
+############################################################
+The \hrulefill fill command produces a "rubber length" which
+can stretch or shrink horizontally. It will be filled with a
+horizontal rule.
+############################################################
+ \hspace ::hspace::
+############################################################
+\hspace[*]{length}
+The \hspace command adds horizontal space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \hspace command. Adding negative space
+is like backspacing.
+
+LaTeX removes horizontal space that comes at the end of a
+line. If you don't want LaTeX to remove this space, include
+the optional * argument. Then the space is never removed.
+############################################################
+ \addvspace ::addvspace::
+############################################################
+\addvspace{length}
+The \addvspace command normally adds a vertical space of
+height length. However, if vertical space has already been
+added to the same point in the output by a previous \addvspace
+command, then this command will not add more space than
+needed to make the natural length of the total vertical space
+equal to length.
+############################################################
+ \bigskip ::bigskip::
+############################################################
+The \bigskip command is equivalent to \vspace{bigskipamount}
+where bigskipamount is determined by the document class.
+############################################################
+ \medskip ::medskip::
+############################################################
+The \medskip command is equivalent to \vspace{medskipamount}
+where medskipamount is determined by the document class.
+############################################################
+ \smallskip ::smallskip::
+############################################################
+\smallskip
+The \smallskip command is equivalent to \vspace{smallskipamount}
+where smallskipamount is determined by the document class.
+############################################################
+ \vfill ::vfill::
+############################################################
+The \vfill fill command produces a rubber length which can
+stretch or shrink vertically.
+############################################################
+ \vspace ::vspace::
+############################################################
+\vspace[*]{length}
+The \vspace command adds vertical space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \vspace command.
+
+LaTeX removes vertical space that comes at the end of a page.
+If you don't want LaTeX to remove this space, include the
+optional * argument. Then the space is never removed.
+############################################################
+ \fbox ::fbox::
+############################################################
+\fbox{text}
+The \fbox command is exactly the same as the \mbox command,
+except that it puts a frame around the outside of the box
+that it creates.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox[width][position]{text}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the
+contents of the box.
+############################################################
+ lrbox ::lrbox::
+############################################################
+\begin{lrbox}{cmd} text \end{lrbox}
+This is the environment form of \sbox.
+The text inside the environment is saved in the box cmd,
+which must have been declared with \newsavebox.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox[width][position]{text}
+The \makebox command creates a box just wide enough to contain
+the text specified. The width of the box is specified by the
+optional width argument. The position of the text within the
+box is determined by the optional position argument.
+
+ c -- centred (default)
+ l -- flushleft
+ r -- flushright
+ s -- stretch from left to right margin. The text must
+ contain stretchable space for this to work.
+
+See section \makebox.
+############################################################
+ \mbox ::mbox::
+############################################################
+\mbox{text}
+The \mbox command creates a box just wide enough to hold the
+text created by its argument.
+Use this command to prevent text from being split across lines.
+############################################################
+ \newsavebox ::newsavebox::
+############################################################
+\newsavebox{cmd}
+Declares cmd, which must be a command name that is not already
+defined, to be a bin for saving boxes.
+############################################################
+ \parbox ::parbox::
+############################################################
+\parbox[position][height][inner-pos]{width}{text}
+A parbox is a box whose contents are created in paragraph
+mode. The \parbox has two mandatory arguments:
+
+ width - specifies the width of the parbox, and
+ text - the text that goes inside the parbox.
+
+LaTeX will position a parbox so its centre lines up with the
+centre of the text line. The optional position argument allows
+you to line up either the top or bottom line in the parbox
+(default is top). If the height argument is not given, the
+box will have the natural height of the text.
+
+The inner-pos argument controls the placement of the text
+inside the box. If it is not specified, position is used.
+
+ t -- text is placed at the top of the box.
+ c -- text is centred in the box.
+ b -- text is placed at the bottom of the box.
+ s -- stretch vertically. The text must contain
+ vertically stretchable space for this to work.
+
+A \parbox command is used for a parbox containing a small piece
+of text, with nothing fancy inside. In particular, you shouldn't
+use any of the paragraph-making environments inside a \parbox
+argument. For larger pieces of text, including ones containing
+a paragraph-making environment, you should use a minipage
+environment
+See section minipage.
+############################################################
+ \raisebox ::raisebox::
+############################################################
+\raisebox{distance}[extend-above][extend-below]{text}
+The \raisebox command is used to raise or lower text. The
+first mandatory argument specifies how high the text is to
+be raised (or lowered if it is a negative amount). The text
+itself is processed in LR mode.
+
+Sometimes it's useful to make LaTeX think something has a
+different size than it really does - or a different size
+than LaTeX would normally think it has. The \raisebox
+command lets you tell LaTeX how tall it is. The first
+optional argument, extend-above, makes LaTeX think that the
+text extends above the line by the amount specified. The
+second optional argument, extend-below, makes LaTeX think
+that the text extends below the line by the amount specified.
+############################################################
+ \rule ::rule::
+############################################################
+\rule[raise-height]{width}{thickness}
+The \rule command is used to produce horizontal lines. The
+arguments are defined as follows:
+
+ raise-height - specifies how high to raise the rule
+ (optional)
+ width - specifies the length of the rule (mandatory)
+ thickness - specifies the thickness of the rule
+ (mandatory)
+
+############################################################
+ \savebox ::savebox::
+############################################################
+\savebox{cmd}[width][pos]{text}
+This command typeset text in a box just as for \makebox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \sbox ::sbox::
+############################################################
+\sbox{text}
+This commands typeset text in a box just as for \mbox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \usebox ::usebox::
+############################################################
+\usebox{cmd}
+Prints the box most recently saved in bin cmd by a \savebox
+command.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Starting.txt,v b/support/tcltexed/hlp/eng/RCS/Starting.txt,v
new file mode 100644
index 0000000000..ca09d87751
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Starting.txt,v
@@ -0,0 +1,46 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Starting & Ending ::document::
+############################################################
+
+Your input file must contain the following commands as a
+minimum:
+
+ \documentclass{class}
+ \begin{document}
+ ... your text goes here ...
+ \end{document}
+
+where the class selected is one of the valid classes for
+LaTeX. See section
+
+Document Classes (and see section Overview of LaTeX and
+Local Guide), for details of the various document classes
+available locally.
+
+You may include other LaTeX commands between the
+\documentclass and the \begin{document} commands (i.e., in
+the `preamble').
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Styles.txt,v b/support/tcltexed/hlp/eng/RCS/Styles.txt,v
new file mode 100644
index 0000000000..9fc42f66e9
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Styles.txt,v
@@ -0,0 +1,140 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Page Styles
+############################################################
+
+The \documentclass command determines the size and position
+of the page's head and foot. The page style determines what
+goes in them.
+
+ \maketitle: Generate a title page.
+ \pagenumbering: Set the style used for page numbers.
+ \pagestyle: Change the headings/footings style.
+ \thispagestyle: Change the headings/footings style for
+ this page.
+
+############################################################
+ \maketitle ::maketitle::
+############################################################
+\maketitle
+The \maketitle command generates a title on a separate title
+page - except in the article class, where the title normally
+goes at the top of the first page.
+Information used to produce the title is obtained from the
+following declarations:
+
+See section Page Styles for the commands to give the information.
+
+ \author: Who wrote this stuff?
+ \date: The date the document was created.
+ \thanks: A special form of footnote.
+ \title: How to set the document title.
+
+############################################################
+ \author ::author::
+############################################################
+\author{names}
+The \author command declares the author(s), where names is a
+list of authors separated by \and commands. Use \\ to separate
+lines within a single author's entry -- for example, to give
+the author's institution or address.
+############################################################
+ \date ::date::
+############################################################
+\date{text}
+The \date command declares text to be the document's date.
+With no \date command, the current date is used.
+############################################################
+ \thanks ::thanks::
+############################################################
+\thanks{text}
+The \thanks command produces a \footnote to the title.
+############################################################
+ \title ::title::
+############################################################
+\title{text}
+The \title command declares text to be the title. Use \\ to
+tell LaTeX where to start a new line in a long title.
+############################################################
+ \pagenumbering ::pagenumbering::
+############################################################
+\pagenumbering{num_style}
+Specifies the style of page numbers. Possible values of
+num_style are:
+
+ arabic - Arabic numerals
+ roman - Lowercase Roman numerals
+ Roman - Uppercase Roman numerals
+ alph - Lowercase letters
+ Alph - Uppercase letters
+
+############################################################
+ \pagestyle ::pagestyle::
+############################################################
+\pagestyle{option}
+The \pagestyle command changes the style from the current
+page on throughout the remainder of your document.
+The valid options are:
+
+ plain - Just a plain page number.
+ empty - Produces empty heads and feet - no page numbers.
+ headings - Puts running headings on each page. The
+ document style specifies what goes in the headings.
+ myheadings - You specify what is to go in the heading
+ with the \markboth or the \markright commands.
+
+ \markboth: Set left and right headings.
+ \markright: Set right heading only.
+
+############################################################
+ \markboth ::markboth::
+############################################################
+\markboth{left head}{right head}
+The \markboth command is used in conjunction with the page
+style myheadings for setting both the left and the right
+heading. You should note that a "left-hand heading" is
+generated by the last \markboth command before the end of
+the page, while a "right-hand heading" is generated by the
+first \markboth or \markright that comes on the page if
+there is one, otherwise by the last one before the page.
+############################################################
+ \markright ::markright::
+############################################################
+\markright{right head}
+The \markright command is used in conjunction with the page
+style myheadings for setting the right heading, leaving the
+left heading unchanged. You should note that a "left-hand
+heading" is generated by the last \markboth command before
+the end of the page, while a "right-hand heading" is generated
+by the first \markboth or \markright that comes on the page
+if there is one, otherwise by the last one before the page.
+############################################################
+ \thispagestyle ::thispagestyle::
+############################################################
+\thispagestyle{option}
+The \thispagestyle command works in the same manner as the
+\pagestyle command except that it changes the style for the
+current page only.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Terminal.txt,v b/support/tcltexed/hlp/eng/RCS/Terminal.txt,v
new file mode 100644
index 0000000000..c0b6eb3ae7
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Terminal.txt,v
@@ -0,0 +1,54 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Terminal Input/Output
+############################################################
+
+ \typein: Read text from the terminal.
+ \typeout: Write text to the terminal.
+
+############################################################
+ \typein ::typein::
+############################################################
+\typein[cmd]{msg}
+Prints msg on the terminal and causes LaTeX to stop and wait
+for you to type a line of input, ending with return. If the
+cmd argument is missing, the typed input is processed as if
+it had been included in the input file in place of the
+\typein command. If the cmd argument is present, it must be
+a command name. This command name is then defined or redefined
+to be the typed input.
+############################################################
+ \typeout ::typeout::
+############################################################
+\typeout{msg}
+Prints msg on the terminal and in the log file. Commands in
+msg that are defined with \newcommand or \renewcommand are
+replaced by their definitions before being printed.
+
+LaTeX's usual rules for treating multiple spaces as a single
+space and ignoring spaces after a command name apply to msg.
+A \space command in msg causes a single space to be printed.
+A ^^J in msg prints a newline.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/Typefaces.txt,v b/support/tcltexed/hlp/eng/RCS/Typefaces.txt,v
new file mode 100644
index 0000000000..25179a894d
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/Typefaces.txt,v
@@ -0,0 +1,172 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Typefaces
+############################################################
+
+The typeface is specified by giving the "size" and "style".
+A typeface is also called a "font".
+
+ Styles: Select roman, italics etc.
+ Sizes: Select point size.
+ Low-level font commands: Commands for wizards.
+
+############################################################
+ Styles
+############################################################
+The following type style commands are supported by LaTeX.
+These commands are used like \textit{italics text}. The
+corresponding command in parenthesis is the "declaration form",
+which takes no arguments. The scope of the declaration form
+lasts until the next type style command or the end of the
+current group.
+
+The declaration forms are cumulative; i.e., you can say
+\sffamily\bfseries to get sans serif boldface.
+
+You can also use the environment form of the declaration
+forms; e.g. \begin{ttfamily}...\end{ttfamily}.
+
+ \textrm (\rmfamily) ::textrm::rmfamily::
+Roman.
+ \textit (\itshape) ::textit::itshape::
+ \emph ::emph::
+Emphasis (toggles between \textit and \textrm).
+ \textmd (\mdseries) ::textmd::mdseries::
+Medium weight (default). The opposite of boldface.
+ \textbf (\bfseries) ::textbf::bfseries::
+Boldface.
+ \textup (\upshape) ::textup::upshape::
+Upright (default). The opposite of slanted.
+ \textsl (\slshape) ::textsl::slshape::
+Slanted.
+ \textsf (\sffamily) ::textsf::sffamily::
+Sans serif.
+ \textsc (\scshape) ::textsc::scshape::
+Small caps.
+ \texttt (\ttfamily) ::texttt::ttfamily::
+Typewriter.
+ \textnormal (\normalfont) ::textnormal::normalfont::
+Main document font.
+ \mathrm ::mathrm::
+Roman, for use in math mode.
+ \mathbf ::mathbf::
+Boldface, for use in math mode.
+ \mathsf ::mathsf::
+Sans serif, for use in math mode.
+ \mathtt ::mathtt::
+Typewriter, for use in math mode.
+ \mathit ::mathit::
+Italics, for use in math mode, e.g. variable names
+with several letters.
+ \mathnormal ::mathnormal::
+For use in math mode, e.g. inside another type style
+declaration.
+ \mathcal ::mathcal::
+`Calligraphic' letters, for use in math mode.
+::mathversion::
+In addition, the command \mathversion{bold} can be used for
+switching to bold letters and symbols in formulas.
+\mathversion{normal} restores the default.
+
+############################################################
+ Sizes
+############################################################
+The following standard type size commands are supported by
+LaTeX. The commands as listed here are "declaration forms".
+The scope of the declaration form lasts until the next type
+style command or the end of the current group.
+
+You can also use the environment form of these commands; e.g.
+\begin{tiny}...\end{tiny}.
+
+ \tiny ::tiny::
+ \scriptsize ::scriptsize::
+ \footnotesize ::footnotesize::
+ \small ::small::
+ \normalsize (default) ::normalsize::
+ \large ::large::
+ \Large ::Large::
+ \LARGE ::LARGE::
+ \huge ::huge::
+ \Huge ::Huge::
+
+############################################################
+ Low-level font commands
+############################################################
+These commands are primarily intended for writers of macros
+and packages. The commands listed here are only a subset of
+the available ones. For full details, you should consult
+Chapter 7 of The LaTeX Companion.
+
+ \fontencoding{enc} ::fontencoding::
+
+Select font encoding. Valid encodings include OT1 and T1.
+
+ \fontfamily{family} ::fontfamily::
+
+Select font family. Valid families include:
+ cmr for Computer Modern Roman
+ cmss for Computer Modern Sans Serif
+ cmtt for Computer Modern Typewriter
+and numerous others.
+
+ \fontseries{series} ::fontseries::
+
+Select font series. Valid series include:
+ m Medium (normal)
+ b Bold
+ c Condensed
+ bc Bold condensed
+ bx Bold extended
+and various other combinations.
+
+ \fontshape{shape} ::fontshape::
+
+Select font shape. Valid shapes are:
+ n Upright (normal)
+ it Italic
+ sl Slanted (oblique)
+ sc Small caps
+ ui Upright italics
+ ol Outline
+The two last shapes are not available for most font families.
+
+ \fontsize{size}{skip} ::fontsize::
+
+Set font size. The first parameter is the font size to
+switch to; the second is the \baselineskip to use. The unit
+of both parameters defaults to pt. A rule of thumb is that
+the baselineskip should be 1.2 times the font size.
+
+ \selectfont ::selectfont::
+
+The changes made by calling the four font commands described
+above do not come into effect until \selectfont is called.
+
+ \usefont{enc}{family}{series}{shape} ::usefont::
+
+Equivalent to calling \fontencoding, \fontfamily, \fontseries
+and \fontshape with the given parameters, followed by \selectfont.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/amscd.txt,v b/support/tcltexed/hlp/eng/RCS/amscd.txt,v
new file mode 100644
index 0000000000..d47d278659
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/amscd.txt,v
@@ -0,0 +1,64 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amscd.
+\usepackage{amscd} ::amscd::
+
+#################################################################
+diagrams ::CD::
+#################################################################
+subenviroment :
+CD
+example :
+\begin{CD}
+ A @@>>> B @@>>> C
+ D @@AAA E @@VVV F
+ G @@= H @@<<< I
+\end{CD}
+
+enviroment for diagrams
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@>textabove>textbelow>
+
+arrow to the right with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@<textabove<textbelow<
+
+arrow to the left with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@AtextleftAtextrightA
+
+arrow up with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@VtextleftVtextrightV
+
+arrow down with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@=
+
+equal symbol instead of an arrow
+@
diff --git a/support/tcltexed/hlp/eng/RCS/amsfonts.txt,v b/support/tcltexed/hlp/eng/RCS/amsfonts.txt,v
new file mode 100644
index 0000000000..7866cf81ba
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/amsfonts.txt,v
@@ -0,0 +1,45 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsfonts.
+\usepackage{amsfonts} ::amsfonts::
+
+#################################################################
+fonts
+#################################################################
+\mathbb{text} ::mathbb::
+
+supplies text as mathematical field letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\mathfrak{text} ::mathfrak::
+
+supplies text as fracture letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boldsymbol{symbol} ::boldsymbol::
+
+supplies a bold variant of symbol
+@
diff --git a/support/tcltexed/hlp/eng/RCS/amsmath.txt,v b/support/tcltexed/hlp/eng/RCS/amsmath.txt,v
new file mode 100644
index 0000000000..0b3aaa61f6
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/amsmath.txt,v
@@ -0,0 +1,155 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsmath.
+\usepackage{amsmath} ::amsmath::
+
+#################################################################
+mathematical subenviroments
+#################################################################
+Subenviroments must be invoked within a mathmatical enviroment.
+for example :
+\[\begin{split} ... \end{split}\]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : split ::split::
+\[\begin{split}
+ a&=b\\
+ c&=d
+\end{split}\]
+
+allows multible formulas with only one number.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : multline ::multline::
+\begin{multine}
+ a+b+c\\
+ +d+e
+\end{multine}
+
+for breaking one formula into several lines with only one number
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : gather ::gather::
+\begin{gather}
+ a+b+c\\
+ +d+e
+\end{gather}
+
+
+a group of formulas
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : align ::align::
+\begin{align}
+ a&=b & c&=d \\
+ e&=f & g&=h \\
+ \intertext{and}
+ i&=j & k&=l
+\end{align}
+
+an array of formulas
+-----------------------------------------------------------------
+\intertext{text} ::intertext::
+
+allows normal textoutput within this mathmatical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : subequation ::subequation::
+
+mainnumbering gets an additional subnumbering with small letters
+\label{} does not distinguish between subnumbers
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : ?matrix
+::matrix::pmatrix::bmatrix::vmatrix::Vmatrix::
+\[\begin{matrix}
+ 1 & 2 & 3 & a \\
+ 4 & 5 & 6 & b \\
+ 7 & 8 & 9 & c
+\end{matrix}\]
+
+produces a matrix
+matrix : without brackets
+pmatrik : with round brackets
+bmatrix : with angular brackets
+vmatrix : with vertical lines
+Vmatrix : with doubled vertical lines
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : cases ::cases::
+\[sgn(x)=\begin{cases}
+ -1 & \forall\ x<0 \\
+ 0 & x=0 \\
+ 1 & \forall\ x>0
+\end{cases}\]
+
+for "Cases" constructions
+#################################################################
+Sonstige Hilfen
+#################################################################
+size of brackets :
+\bigl \bigr little bit larger ::bigl::bigr::
+\Bigl \Bigr faktor 1.5 ::Bigl::Bigr::
+\biggl \biggr faktor 2 ::biggl::biggr::
+\Biggl \Biggr faktor 2.5 ::Biggl::Biggr::
+left right of the formula
+
+behind this should follow one of these bracket forms "(" "|" "[" ... "]" ")"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\substack{ \\ ...\\ \text{Hi} ... \\ } ::substack::
+example :
+\sum_\substack{i=0\\j=1}^\substack{10\\100}
+
+Pushes several lines of indices above or below.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\text{text} ::text::
+
+text within a mathematical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sideset{}{} ::sideset::
+example :
+\sideset{^1_2}{^3_4}\sum
+
+sets indices at the corners ..
+left above 1, left below 2, right above 3 and right below 4
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+xleftarrow{above} ::xleftarrow::xrightarrow::
+xleftarrow[below]{above}
+xrightarrow{above}
+xrightarrow[below]{above}
+
+
+An arrow which adapting the necessary length for displaying a text
+above itself and optionaly below, too.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boxed{formula} ::boxed::
+
+formula with a frame
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareMathOperator{latex-command}{output}
+\DeclareMathOperator*{latex-command}{output}
+::DeclareMathOperator::
+
+
+Allows the declaration of own new mathematical functions like
+ \sin \cos etc.
+* makes it display indices like \lim with in math enviroment.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/amssymb.txt,v b/support/tcltexed/hlp/eng/RCS/amssymb.txt,v
new file mode 100644
index 0000000000..11accc23d8
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/amssymb.txt,v
@@ -0,0 +1,32 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#########################################################
+\usepackage{amssymb} ::amssymb::
+#########################################################
+One symbol out of many supplied by the package amssymb.
+#########################################################
+One of the many symbols for which I didn't create a
+picture, because it would have been an endless work
+and boring, too. (mys)
+#########################################################@
diff --git a/support/tcltexed/hlp/eng/RCS/amsthm.txt,v b/support/tcltexed/hlp/eng/RCS/amsthm.txt,v
new file mode 100644
index 0000000000..3444018ad0
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/amsthm.txt,v
@@ -0,0 +1,61 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsthm.
+\usepackage{amsthm} ::amsmath::
+
+#################################################################
+Erstellen von Theoremen ::newtheorem::
+#################################################################
+
+\newtheorem{latex-synonym}{name}
+\newtheorem*{latex-synonym}{name}
+\newtheorem*{latex-synonym}[latex-synonym2]{name}
+\newtheorem*{latex-synonym}{name}[section]
+
+Defines a new enviroment latex-synonym which is numbered as
+theorem with name "name" (f.e. axiom).
+\begin{latex-synonym}
+ bla
+\end{latex-synonym}
+for useing the new theorem
+
+* subdues the numbering.
+latex-synonym2 : uses the counter from this theorem
+section : an incretion of this counter would set the
+theorem counter to the value null
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\theoremstyle{style} ::theoremstyle::
+
+style :
+ plain (default)
+ definition
+ remark
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\swapnumbers ::swapnumbers::
+
+numbering on the left side of the theorem@
diff --git a/support/tcltexed/hlp/eng/RCS/copyright_hlp.txt,v b/support/tcltexed/hlp/eng/RCS/copyright_hlp.txt,v
new file mode 100644
index 0000000000..489fe6ce70
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/copyright_hlp.txt,v
@@ -0,0 +1,43 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+::copyright_hlp::
+A plaintexteditor for LaTeX based on scriptlanguage tcl/tk (8.x)
+
+Copyright (C) 1999 Martin Strauss
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/editor_hlp.txt,v b/support/tcltexed/hlp/eng/RCS/editor_hlp.txt,v
new file mode 100644
index 0000000000..9f994b3e3f
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/editor_hlp.txt,v
@@ -0,0 +1,226 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.22.33.43; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@############################################################
+#::editor_hlp::
+# The Editorwindow
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+What's an Editorwindow ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+For me a editorwindow is a window where I am able to work on
+a text under Tcltexed. Each editorwindow is assigned to one
+text. Two attributs ar important several editorwindows exist:
+ the focus
+ and the marking of one of them to be the maindocument
+-----
+The focus ownes the editorwindow, which was at last in the
+forground. All actions outside of the editorwindows opened
+will effect only the one having the focus. An Example for
+actions may be "text searching". One way to give one
+editorwindow the focus is by mousebuttons.
+-----
+If you have made on editorwindow a maindocument, all calls
+for extern programms like latex, xdvi, dvips and ghostview
+are directed to this document. In this case only the document
+of the maindocument gets compiled, so it should be executable
+for latex, while the others don't need to. If no editorwindow
+is declared to be the maindocument, each editorwindow
+behaves as if it is the only one.
+-----
+The window consists of the following components :
+ a menubar / popupbar (Only Windows)
+ a buttonbar
+ and an input field.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+usage of the buttonbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+From left to right :
+a "picture", Save, Save As, latex, xdvi, dvips, ghostview, ispell, Syntax, Quit
+and last but not least a display "L.C. ?.?"
+-----
+ "picture"
+The picture shows you the attributes of the editorwindow.
+If it has the focus it you see a picture of some circular waves.
+If it is colored (yellow/red) it is marked to be the maindocument.
+You can make an editorwindow a maindocument by mouse click
+on the picture. A second click removes the attribute to be
+a maindocument.
+-----
+ Save
+You know this, simply save this document in a file assignend
+to the editorwindow. If there is no file assigned "Save As"
+is executed instead.
+-----
+ Save As
+Save a document into a file you choose and assign
+it the actual editorwindow.
+-----
+ latex
+Executes "Save" for this editorwindow. Only it's document get's saved.
+Then the program latex is executed with the assigned file.
+If a maindocument exists as defined above the file assigned to
+it is executed instead. latex produces the file with extention dvi,
+the error output of latex is piped into the helpwindow of Tcltexed.
+(if there accures an error under unix you must stop latex
+by pressing "q" and "RETURN")
+To make it easier to create an index, with the latex-commands
+\makeindex \index etc. the program makeindex is started automaticly
+if a suiting filename with extension idx exists.
+-----
+ xdvi
+Executes xdvi (or an other viewer) for to view the last latex outputfile.
+Normaly the viewers reload the actual document if you produce
+a new dvi file, so you have to start this only on time.
+-----
+ dvips
+Makes a output for ghostscript printer out of the dvi file.
+The output will be saved into a file with extension ps.
+-----
+ ghostview
+Executes ghostview a viewer for ghostscript files with the last
+dvips outputfile.
+-----
+ ispell
+Executes "Save" for this editorwindow. Only it's document get's saved.
+Then ispell an interactive spell checker is executed and it's output
+reloaded into the editorwindow.
+-----
+ Syntax
+Syntax Highlightning, all textarrays starting with \ are supposed
+to be LaTeX-commands.
+If this command is known it's letters gets green, if not red.
+But be carefull, it doesn't look after the number of brackets behind
+the command. (latex will do that for you !)
+If it's text to be ignored (starting with %), the text get blue.
+For many green marked commands exists a short description.
+-----
+ Quit
+Close this editorwindow. If modified it request's if it realy
+should do so without saving before.
+-----
+ Display
+Shows you the position of the curser (line and row).
+One "line" is here defined as a number of letters follewd
+by a "RETURN", not as the number of real lines displayed by the
+editorwindow.
+If you press this Button, a window opens, with which you can
+change the position of the curser manualy by numbers.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Usage of th menubar / popupbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The menubar exists only if you use Windows and tcl/tk 8.x.
+Menubar and popupbar implement the same functions.
+Pressing the right mousebutton opens the popupbar.
+From top to bottom listed (left to right) :
+Undo, Cut, Copy, Paste, Clear, Block, + % und - %.
+-----
+ Undo
+For to undo most of your last actions within the text. (I hopfully
+think so) In lack of infinity memory recources you can't undo
+everything.
+-----
+ Cut, Copy, Paste, Clear
+Bearbeitet den mit Maus selektierten Bereich, ratet mal was da
+passiert ... . Die Aktionen sind Windows und X-Window kompatibel.
+(theoretisch)
+-----
+ Spell
+Marks all not right spelled words in your text with a red color.
+-----
+ Nearly
+Takes the word which the curser is within and displays a list of
+words which nearly match this word.
+-----
+ Block
+Makes out of the selected aria a "Block - aria" ala Borland.
+-----
+ + %
+Inserts at the beginning of each selected line %, but only
+if there doesn't exist one.
+-> easy way to mark lines for latex to be ignored
+-----
+ - %
+The other way around as "+ %".
+-----
+ ...
+Looks for LaTeX-command matching with letters between
+the last "\" and the curser.
+Only commands marked under "Options -> packages"
+are listed here.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Usage of the inputfield
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Hey that's the part each editor has, don't ask silly questions.
+(look for Editor-keymap for some key combinations)
+-----
+ Spelling
+If you wanna register a word as right spelled, you have to set
+the curser on it and make a double click on the left button of
+your mouse.
+-----
+Examples for automatical complition of LaTeX-commands
+\fra ---> \frac{}{}
+\enumerate --->
+ \begin{enumerate}
+ \item
+ \end{enumerate}
+Compiltion of brackets
+{ ---> {}
+$ ---> $$
+-----
+For \begin and \end the name of the enviroment will be inserted
+as below :
+\beg --->
+ \begin{}
+ \end{}
+\bege --->
+ \begin{e}
+ \end{e}
+\begenum --->
+ \begin{enum}
+ \end{enum}
+-----
+If some text is selected by mouse and you press "\"
+than gets this not deleted as usualy done, but gets
+some brackets inserted around the selected text.
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d38 1
+a38 1
+a "picture", Save, Save As, latex, xdvi, dvips, ghostview, Syntax, Quit
+d82 5
+@
+
diff --git a/support/tcltexed/hlp/eng/RCS/editort_hlp.txt,v b/support/tcltexed/hlp/eng/RCS/editort_hlp.txt,v
new file mode 100644
index 0000000000..0361a6066f
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/editort_hlp.txt,v
@@ -0,0 +1,133 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+#::editort_hlp::
+# keyboardmap for editorwindows
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+key bindings from Borland etc :
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block
+ <Control-k><b> Block Begin
+ <Control-k><k> Block End
+ <Control-k><c> Block Copy
+ <Control-k><m> Block Move
+ <Control-k><v> Block Move
+ <Control-k><y> Block Remove
+ <Control-k><%> Block (=> latex ignores this lines)
+ <Control-k><space> Block (opposite of binding above)
+more
+ <F1> Help
+ <F2> Save
+ <F3> Open file
+ <F4> Goto Curser
+ <F9> Excute latex
+ <Control-k><x> Save
+ <Control-k><h> Help
+ <Control-y> remove line
+ <Alt-BackSpace> Undo
+ <Shift-Delete> Cut
+ <Control-Insert> Copy
+ <Shift-Insert> Paste
+ <Control-Delete> Clear
+ <Control-l> Search again
+ <Alt-x> total termination of tcltexed
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Some from me :
+ <Control-w> Listing of all possible complitions
+ of a LaTeX-Command.
+ <Control-d> If the curser is within a known LaTeX-command,
+ tcltexed will search for the next occurrence of the command
+ within the text. If the curser is not within a known
+ LaTeX-command tcltexed will search for the next occurence of
+ \section
+ <Control-u> The same as <Control-d> but tcltexed will search backwards.
+ <Control-b> line breaking for a section
+ <Alt-b> line breaking for current line
+ <Control-B> opposite of <Control-b>
+ <Alt-B> opposite of <Alt-b>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block, Selection and Clipboard are normaly independent :
+ <Control-k><p> Insert from Clipboard
+ <Control-k><g> Copy to Clipboard
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Windows - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Press right mousebutton to open a menu with following entries
+ Cut Cut selected into Clipboard
+ Copy Copy selected into Clipboard
+ Paste insert text from Clipboard
+ Clear Remove selected
+ Block Make selected to Block
+ + % Make text to be ignored by latex
+ - % opposite of above
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Motif - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Press left mousebutton
+ one time Undo selection
+ twice Select whole word
+ trible Select whole line
+ Shift-einfach Change aria of selection
+ Shift-zweifach Complete selection aria to whole words
+ Shift-dreifach Complete selection aria to whole lines
+ Control Change curser position without losing the selection
+Curserkeys (CT)
+ <Shift-CT> Select aria (letters/lines)
+ <Control-CT> Shift Curser in steps
+ <Shift-Control-CT> Select aria (word/paragraph)
+[Up,Down] page up down (ST)
+ <Shift-ST> Select aria (pages)
+[Home,End] line start end (ZT)
+ <Shift-ZT> Select aria (until linestart/-end)
+ <Control-ZT> Shift curser to documentbegin/-end
+ <Shift-Control-ZT> Select aria (until documentbegin/-end)
+sonstige
+ <Shift-slash> Select whole document
+ <Insert> Insert selection
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+emacs-like
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ <Control-a> = Home
+ <Control-b> = Left
+ <Control-d> = Delete
+ <Control-e> = End
+ <Control-f> = Right
+ (<Control-k> other binding)
+ <Control-n> = Up
+ <Control-o> = Return+Left
+ <Control-p> = Down
+ <Control-t>
+ <Control-v> = Page up
+ <Meta-b>
+ <Meta-d>
+ <Meta-f>
+ <Meta-less> Shift Curser to text begin
+ <Meta-greater> Shift Curser to text begin
+ <Meta-Backspace>
+ <Meta-Delete>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@
diff --git a/support/tcltexed/hlp/eng/RCS/epsf.txt,v b/support/tcltexed/hlp/eng/RCS/epsf.txt,v
new file mode 100644
index 0000000000..78fe5fb0ec
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/epsf.txt,v
@@ -0,0 +1,36 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+package epsf
+############################################################
+\usepackage{epsf} ::epsf::
+\epsfxsize ::epsfxsize::
+\epsfbox{} ::epsfbox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I don't now how these commands work, you could include
+eps-pictures into your document.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I personaly use the latex2e package graphicx for that
+and it works quite fine.
+@
diff --git a/support/tcltexed/hlp/eng/RCS/gpl_hlp.txt,v b/support/tcltexed/hlp/eng/RCS/gpl_hlp.txt,v
new file mode 100644
index 0000000000..d630439995
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/gpl_hlp.txt,v
@@ -0,0 +1,449 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@GNU General Public License - GNU Project - Free Software Foundation (FSF)
+::gpl_hlp::
+Table of Contents
+
+GNU GENERAL PUBLIC LICENSE
+
+Preamble
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+How to Apply These Terms to Your New Programs
+
+GNU GENERAL PUBLIC LICENSE | Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0.
+ This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+
+1.
+ You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+
+2.
+ You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+
+2.a)
+ You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+
+2.b)
+ You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+
+2.c)
+ If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+
+3.
+ You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+
+3.a)
+ Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+
+3.b)
+ Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+
+3.c)
+ Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+
+4.
+ You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+
+5.
+ You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+
+6.
+ Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+
+7.
+ If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+
+8.
+ If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+
+9.
+ The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+
+10.
+ If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+NO WARRANTY
+
+
+11.
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+
+12.
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+
+END OF TERMS AND CONDITIONS
+
+
+
+How to Apply These Terms to Your New Programs
+
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+- one line to give the program's name and an idea of what it does. -
+Copyright (C) 19xx - name of author -
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+Gnomovision version 69, Copyright (C) 19xx - name of author -
+Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
+type `show w'. This is free software, and you are welcome
+to redistribute it under certain conditions; type `show c'
+for details.
+
+
+
+The hypothetical commands `show w' and `show c' should show
+the appropriate parts of the General Public License. Of course, the
+commands you use may be called something other than `show w' and
+`show c'; they could even be mouse-clicks or menu items--whatever
+suits your program.
+
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+
+Yoyodyne, Inc., hereby disclaims all copyright
+interest in the program `Gnomovision'
+(which makes passes at compilers) written
+by James Hacker.
+
+signature of Ty Coon, 1 April 1989
+Ty Coon, President of Vice
+
+
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
+
+
+
+A copy of
+http://www.gnu.org/copyleft/gpl.html
+
+GNU's home page
+http://www.gnu.org/home.html
+
+FSF &amp; GNU inquiries &amp; questions to
+gnu@@gnu.org"
+Other ways to contact
+http://www.gnu.org/home.html#ContactInfo
+
+Copyright notice above.
+Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111, USA
+
+Updated:
+16 Feb 1998 tower
+@
diff --git a/support/tcltexed/hlp/eng/RCS/readme_hlp.txt,v b/support/tcltexed/hlp/eng/RCS/readme_hlp.txt,v
new file mode 100644
index 0000000000..a653cf3b03
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/readme_hlp.txt,v
@@ -0,0 +1,69 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@ Tcltexed a LaTeX-Editor
+
+ !!! Take care, this program is under construction !!!!
+ In the meantime I have worked a lot with this program
+ but should you still find some errors, please contact me.
+ The easiest way is by email : mys@@faveve.uni-stuttgart.de
+
+ Short introduction :
+ A description of the program as a whole can be found under
+ "Help" - "Tcltexed".
+ It is always useful to try to press <F1>.
+ For all LaTeX-commands (I know) there exists a short description,
+ but I have only translated half of them so far.
+ The keymap is motif-like, emacs-like and joe-like (as in Borland Pascal).
+ Additionally some key-shortcuts of my own exist.
+ If you open an editor window, you will find a tiny picure in the upper
+ left hand corner. If it is coloured (click on it with mouse) this
+ window is marked as the main document.
+ If you click on a picture in the mathematics collection the
+ corresponding LaTeX-command will be inserted in the currently active
+ editor window. (The window where the picture (top left) shows some
+ circular waves)
+ If you insert a LaTeX-command tcltexed tries to complete this command.
+ (i.e. \G could only be \Gamma)
+ If you don't find that useful you can stop this behaviour using the menu
+ options.
+ The row of buttons at the top can be used to start the corresponding
+ programs using the document as source file.
+
+ This program will run on Unix, Linux, Windows 9x, Windows NT etc.
+ I just don't know anyone who will try it on a Macintosh as well ...
+ If you want to try, please contact me.
+
+ All you need to run this program is the script language Tcl/Tk, which
+ you can download for free.
+ You want to use my program? It is already available for "free":
+
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+
+ Questions? Found some errors? Some ideas for future developments?
+ feel free to send an email :
+
+ Martin Strauss
+ mys@@faveve.uni-stuttgart.de
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+@
diff --git a/support/tcltexed/hlp/eng/RCS/sonder.txt,v b/support/tcltexed/hlp/eng/RCS/sonder.txt,v
new file mode 100644
index 0000000000..01da5add41
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/sonder.txt,v
@@ -0,0 +1,38 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Hae ?
+############################################################
+\today ::today::
+
+insert date of compilation into the document
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX ::LaTeX::
+
+insert logo of LaTeX
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX2e ::LaTeX2e::
+
+insert logo of LaTeX2e
+@
diff --git a/support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt,v b/support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt,v
new file mode 100644
index 0000000000..d6c82f7da8
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt,v
@@ -0,0 +1,162 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.21.26.27; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@############################################################
+#::tcltexed_hlp::
+# Tcltexed stands for tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Tcltexed is seprated into two parts. On one side the windows
+were you could edit a text, as described in "Editor", on
+the other side a lot of functions connected only to the base
+of the program, the main window.
+All actions which should work with a editorwindow will use
+the window which has had at last the focus. A clearer
+definiton of this made in "Editor".
+
+Below I will discribe and list all the functions you could
+start from the main window.
+
+menu items of the main window
+1. File
+ a) New
+Start a new LaTeX-document. There exists a predefined plain
+document within the source of Tcltexed. If the file etc/default.tex
+exists in the path were Tcltexed was installed this file will
+be used as default document.
+ b) Load
+Load a file into the editor ...
+ c) Append
+Append the text of the file at the position of the curser.
+ d) Save e) Save As
+Save a text.
+ f) Quit
+Quit Tcltexed. All windows will get closed (if necessary a request
+for saveing the files in work is made)
+
+2. Edit
+ a) Clear
+Clear the whole text.
+ b) line breaking
+Choose to break lines in the whole text, the current section or the
+current line. Each line which follows a line which ends with "space"
+will be interpreted as a continuition. Befor a line gets broken all
+continuation lines will be appended to it.
+With the last three menu items it is possible to append all continuition
+lines without breaking the whole line after it.
+If there are some spaces at the beginning of the first line, then
+all continuations will have these spaces as first letters.
+ c) Spelling
+Marks all not right spelled words in your current text with a red color.
+ d) add word
+For to register a word as spelled right, you must set
+the curser in the current text within it. To make sense the word
+must be marked to be misspelled ;-), or not ?
+ e) \"a..\ss -> ä..ß
+Translates latex commands for displaying special characters into
+their corresponding characters.
+ f) ä..ß -> \"a..\ss
+Translate none ascii characters into their corresponding latex commands.
+ g) "a.."s -> ä..ß
+Translates latex commands out of package [german]{babel} for displaying
+special characters into their corresponding characters.
+ h) ä..ß -> "a.."s
+Translate none ascii characters into their corresponding latex commands
+out of package [german]{babel}. This format is iutable for
+"ispell -t -d deutsch file.tex"
+ i) Search
+Search and Replace within a text.
+ j) My Own
+Here you can define your own LaTeX-sequences to be inserted into the
+text, if you press the button befor the entry. This definitions
+will besaved if you "Save Options". With the next start of Tcltexed
+this definitions will be the start values.
+
+3. Options
+ a) AutoBrackets
+If this button is aktivated, each inserted bracket to open ({[$
+will be followed by a bracket to close )}]$.
+ { --> {}
+ b) Packages/etc
+Here you could activate several packages for automatical completion
+of it's LaTeX-commands.
+An example for complition :
+\fra --> \frac{}{}
+The more LaTeX-commands Tcltexed should recognise the later they
+get complited, because they look to similar for Tcltexed.
+ c) language
+Set here your favorite language for texts, buttons and help.
+A change here will only apear with the next start of Tcltexed,
+so you have to save the current options as discribed below.
+ d) font size
+Set font size for the editorwindows.
+ e) Save Options
+Save all configurations made by a user. This configuration
+will be loaded at the beginning of the next start of Tcltexed.
+(The file with the configurations is with unix .tcltexed,
+ with Windows tcltexed.ini . But please don't edit it yourself.
+Configurationfiles of older Tcltexedversion will be ignored
+and later overwriten.)
+
+4. Mathematics
+A gallery of pictures of the ouput of commands of the mathmatical
+enviroments. A press on a pictur will insert the command,
+represented by the picture, on the position of the curser.
+
+5. general
+Like 4. , but other common commands.
+
+6. Help
+ a) Tcltexed
+Under this you will find the description of Tcltexed itself.
+ b) LaTeX
+A index of all LaTeX-commands I have heard of.
+For a lot of LaTeX-commands I have writen a short help.
+ + <Return> + left mousebutton displays the help text
+ right mousebutton insert command
+ a keystroke A-Z a-z forces the list to jumb to commands
+ with this as first letter
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d53 13
+a65 4
+ e) Nearly
+Takes the word which the curser of the current text is within and
+displays a list of words which nearly match this word.
+ f) Search
+d67 1
+a67 1
+ g) My Own
+@
+
diff --git a/support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt~,v b/support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt~,v
new file mode 100644
index 0000000000..c171925d1e
--- /dev/null
+++ b/support/tcltexed/hlp/eng/RCS/tcltexed_hlp.txt~,v
@@ -0,0 +1,129 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.12; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+#::tcltexed_hlp::
+# Tcltexed stands for tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Tcltexed is seprated into two parts. On one side the windows
+were you could edit a text, as described in "Editor", on
+the other side a lot of functions connected only to the base
+of the program, the main window.
+All actions which should work with a editorwindow will use
+the window which has had at last the focus. A clearer
+definiton of this made in "Editor".
+
+Below I will discribe and list all the functions you could
+start from the main window.
+
+menu items of the main window
+1. File
+ a) New
+Start a new LaTeX-document. There exists a predefined plain
+document within the source of Tcltexed. If the file etc/default.tex
+exists in the path were Tcltexed was installed this file will
+be used as default document.
+ b) Load
+Load a file into the editor ...
+ c) Append
+Append the text of the file at the position of the curser.
+ d) Save e) Save As
+Save a text.
+ f) Quit
+Quit Tcltexed. All windows will get closed (if necessary a request
+for saveing the files in work is made)
+
+2. Edit
+ a) Clear
+Clear the whole text.
+ b) line breaking
+Choose to break lines in the whole text, the current section or the
+current line. Each line which follows a line which ends with "space"
+will be interpreted as a continuition. Befor a line gets broken all
+continuition lines will be appended to it.
+With the last three menu items it is possible to append all continuition
+lines without breaking the whole line after it.
+ c) Spelling
+Marks all not right spelled words in your current text with a red color.
+ d) add word
+For to register a word as spelled right, you must set
+the curser in the current text within it. To make sense the word
+must be marked to be misspelled ;-), or not ?
+ e) Nearly
+Takes the word which the curser of the current text is within and
+displays a list of words which nearly match this word.
+ f) Search
+Search and Replace within a text.
+ g) My Own
+Here you can define your own LaTeX-sequences to be inserted into the
+text, if you press the button befor the entry. This definitions
+will besaved if you "Save Options". With the next start of Tcltexed
+this definitions will be the start values.
+
+3. Options
+ a) AutoBrackets
+If this button is aktivated, each inserted bracket to open ({[$
+will be followed by a bracket to close )}]$.
+ { --> {}
+ b) Packages/etc
+Here you could activate several packages for automatical completion
+of it's LaTeX-commands.
+An example for complition :
+\fra --> \frac{}{}
+The more LaTeX-commands Tcltexed should recognise the later they
+get complited, because they look to similar for Tcltexed.
+ c) language
+Set here your favorite language for texts, buttons and help.
+A change here will only apear with the next start of Tcltexed,
+so you have to save the current options as discribed below.
+ d) font size
+Set font size for the editorwindows.
+ e) Save Options
+Save all configurations made by a user. This configuration
+will be loaded at the beginning of the next start of Tcltexed.
+(The file with the configurations is with unix .tcltexed,
+ with Windows tcltexed.ini . But please don't edit it yourself.
+Configurationfiles of older Tcltexedversion will be ignored
+and later overwriten.)
+
+4. Mathematics
+A gallery of pictures of the ouput of commands of the mathmatical
+enviroments. A press on a pictur will insert the command,
+represented by the picture, on the position of the curser.
+
+5. general
+Like 4. , but other common commands.
+
+6. Help
+ a) Tcltexed
+Under this you will find the description of Tcltexed itself.
+ b) LaTeX
+A index of all LaTeX-commands I have heard of.
+For a lot of LaTeX-commands I have writen a short help.
+ + <Return> + left mousebutton displays the help text
+ right mousebutton insert command
+ a keystroke A-Z a-z forces the list to jumb to commands
+ with this as first letter
+@
diff --git a/support/tcltexed/hlp/eng/References.txt b/support/tcltexed/hlp/eng/References.txt
new file mode 100644
index 0000000000..612b4a8392
--- /dev/null
+++ b/support/tcltexed/hlp/eng/References.txt
@@ -0,0 +1,47 @@
+############################################################
+Cross References
+############################################################
+
+One reason for numbering things like figures and equations
+is to refer the reader to them, as in "See Figure 3 for more
+details."
+
+\label: Assign a symbolic name to a piece of text.
+\pageref: Refer to a page number.
+\ref: Refer to a section, figure or similar.
+
+############################################################
+ \label ::label::
+############################################################
+\label{key}
+A \label command appearing in ordinary text assigns to the
+key the number of the current sectional unit; one appearing
+inside a numbered environment assigns that number to the key.
+
+A key can consist of any sequence of letters, digits, or
+punctuation characters.
+
+Upper and lowercase letters are different.
+
+To avoid accidentally creating two labels with the same name,
+it is common to use labels consisting of a prefix and a suffix
+separated by a colon. The prefixes conventionally used are
+ cha for chapters
+ sec for lower-level sectioning commands
+ fig for figures
+ tab for tables
+ eq for equations
+Thus, a label for a figure would look like fig:bandersnatch.
+############################################################
+ \pageref ::pageref::
+############################################################
+\pageref{key}
+The \pageref command produces the page number of the place
+in the text where the corresponding \label command appears.
+ie. where \label{key} appears.
+############################################################
+ \ref ::ref::
+############################################################
+\ref{key}
+The \ref command produces the number of the sectional unit,
+equation number, ... of the corresponding \label command.
diff --git a/support/tcltexed/hlp/eng/Sectioning.txt b/support/tcltexed/hlp/eng/Sectioning.txt
new file mode 100644
index 0000000000..b70df63e72
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Sectioning.txt
@@ -0,0 +1,48 @@
+############################################################
+Sectioning
+############################################################
+
+Sectioning commands provide the means to structure your text
+into units.
+
+ \part ::part::
+ \chapter (report and book class only) ::chapter::
+ \section ::section::
+ \subsection ::subsection::
+ \subsubsection ::subsubsection::
+ \paragraph ::paragraph::
+ \subparagraph ::subparagraph::
+
+All sectioning commands take the same general form, i.e.,
+
+ \chapter[optional]{title}
+
+In addition to providing the heading in the text, the
+mandatory argument of the sectioning command can appear in
+two other places:
+
+ 1. The table of contents
+ 2. The running head at the top of the page
+
+You may not want the same thing to appear in these other
+two places as appears in the text heading. To handle this
+situation, the sectioning commands have an optional
+argument that provides the text for these other two
+purposes.
+
+All sectioning commands have *-forms that print a title,
+but do not include a number and do not make an entry in the
+table of contents.
+############################################################
+ \appendix ::appendix::
+############################################################
+The \appendix command changes the way sectional units are
+numbered. The \appendix command generates no text and does
+not affect the numbering of parts.
+
+The normal use of this command is something like
+
+\chapter{The First Chapter}
+...
+\appendix
+\chapter{The First Appendix}
diff --git a/support/tcltexed/hlp/eng/Spaces.txt b/support/tcltexed/hlp/eng/Spaces.txt
new file mode 100644
index 0000000000..598574f89c
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Spaces.txt
@@ -0,0 +1,240 @@
+############################################################
+Spaces & Boxes
+############################################################
+
+All the predefined length parameters See section Predefined
+lengths can be used in the arguments of the box-making
+commands.
+
+Horizontal space
+
+ \dotfill: Stretchable horizontal dots.
+ \hfill: Stretchable horizontal space.
+ \hrulefill: Stretchable horizontal rule.
+ \hspace: Fixed horizontal space. Vertical space
+ \addvspace: Fixed vertical space.
+ \bigskip: Fixed vertical space.
+ \medskip: Fixed vertical space.
+ \smallskip: Fixed vertical space.
+ \vfill: Stretchable vertical space.
+ \vspace: Fixed vertical space. Boxes
+ \fbox: Framebox.
+ \framebox: Framebox, adjustable position.
+ lrbox: An environment like \sbox.
+ \makebox: Box, adjustable position.
+ \mbox: Box.
+ \newsavebox: Declare a name for saving a box.
+ \parbox: Box with text in paragraph mode.
+ \raisebox: Raise or lower text.
+ \rule: Lines and squares.
+ \savebox: Like \makebox, but save the text for later use.
+ \sbox: Like \mbox, but save the text for later use.
+ \usebox: Print saved text.
+
+############################################################
+ \dotfill ::dotfill::
+############################################################
+The \dotfill command produces a "rubber length" that produces
+dots instead of just spaces.
+############################################################
+ \hfill ::hfill::
+############################################################
+The \hfill fill command produces a "rubber length" which can
+stretch or shrink horizontally. It will be filled with spaces.
+############################################################
+ \hrulefill ::hrulefill::
+############################################################
+The \hrulefill fill command produces a "rubber length" which
+can stretch or shrink horizontally. It will be filled with a
+horizontal rule.
+############################################################
+ \hspace ::hspace::
+############################################################
+\hspace[*]{length}
+The \hspace command adds horizontal space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \hspace command. Adding negative space
+is like backspacing.
+
+LaTeX removes horizontal space that comes at the end of a
+line. If you don't want LaTeX to remove this space, include
+the optional * argument. Then the space is never removed.
+############################################################
+ \addvspace ::addvspace::
+############################################################
+\addvspace{length}
+The \addvspace command normally adds a vertical space of
+height length. However, if vertical space has already been
+added to the same point in the output by a previous \addvspace
+command, then this command will not add more space than
+needed to make the natural length of the total vertical space
+equal to length.
+############################################################
+ \bigskip ::bigskip::
+############################################################
+The \bigskip command is equivalent to \vspace{bigskipamount}
+where bigskipamount is determined by the document class.
+############################################################
+ \medskip ::medskip::
+############################################################
+The \medskip command is equivalent to \vspace{medskipamount}
+where medskipamount is determined by the document class.
+############################################################
+ \smallskip ::smallskip::
+############################################################
+\smallskip
+The \smallskip command is equivalent to \vspace{smallskipamount}
+where smallskipamount is determined by the document class.
+############################################################
+ \vfill ::vfill::
+############################################################
+The \vfill fill command produces a rubber length which can
+stretch or shrink vertically.
+############################################################
+ \vspace ::vspace::
+############################################################
+\vspace[*]{length}
+The \vspace command adds vertical space. The length of the
+space can be expressed in any terms that LaTeX understands,
+i.e., points, inches, etc. You can add negative as well as
+positive space with an \vspace command.
+
+LaTeX removes vertical space that comes at the end of a page.
+If you don't want LaTeX to remove this space, include the
+optional * argument. Then the space is never removed.
+############################################################
+ \fbox ::fbox::
+############################################################
+\fbox{text}
+The \fbox command is exactly the same as the \mbox command,
+except that it puts a frame around the outside of the box
+that it creates.
+############################################################
+ \framebox ::framebox::
+############################################################
+\framebox[width][position]{text}
+The \framebox command is exactly the same as the \makebox
+command, except that it puts a frame around the outside of
+the box that it creates.
+The framebox command produces a rule of thickness \fboxrule,
+and leaves a space \fboxsep between the rule and the
+contents of the box.
+############################################################
+ lrbox ::lrbox::
+############################################################
+\begin{lrbox}{cmd} text \end{lrbox}
+This is the environment form of \sbox.
+The text inside the environment is saved in the box cmd,
+which must have been declared with \newsavebox.
+############################################################
+ \makebox ::makebox::
+############################################################
+\makebox[width][position]{text}
+The \makebox command creates a box just wide enough to contain
+the text specified. The width of the box is specified by the
+optional width argument. The position of the text within the
+box is determined by the optional position argument.
+
+ c -- centred (default)
+ l -- flushleft
+ r -- flushright
+ s -- stretch from left to right margin. The text must
+ contain stretchable space for this to work.
+
+See section \makebox.
+############################################################
+ \mbox ::mbox::
+############################################################
+\mbox{text}
+The \mbox command creates a box just wide enough to hold the
+text created by its argument.
+Use this command to prevent text from being split across lines.
+############################################################
+ \newsavebox ::newsavebox::
+############################################################
+\newsavebox{cmd}
+Declares cmd, which must be a command name that is not already
+defined, to be a bin for saving boxes.
+############################################################
+ \parbox ::parbox::
+############################################################
+\parbox[position][height][inner-pos]{width}{text}
+A parbox is a box whose contents are created in paragraph
+mode. The \parbox has two mandatory arguments:
+
+ width - specifies the width of the parbox, and
+ text - the text that goes inside the parbox.
+
+LaTeX will position a parbox so its centre lines up with the
+centre of the text line. The optional position argument allows
+you to line up either the top or bottom line in the parbox
+(default is top). If the height argument is not given, the
+box will have the natural height of the text.
+
+The inner-pos argument controls the placement of the text
+inside the box. If it is not specified, position is used.
+
+ t -- text is placed at the top of the box.
+ c -- text is centred in the box.
+ b -- text is placed at the bottom of the box.
+ s -- stretch vertically. The text must contain
+ vertically stretchable space for this to work.
+
+A \parbox command is used for a parbox containing a small piece
+of text, with nothing fancy inside. In particular, you shouldn't
+use any of the paragraph-making environments inside a \parbox
+argument. For larger pieces of text, including ones containing
+a paragraph-making environment, you should use a minipage
+environment
+See section minipage.
+############################################################
+ \raisebox ::raisebox::
+############################################################
+\raisebox{distance}[extend-above][extend-below]{text}
+The \raisebox command is used to raise or lower text. The
+first mandatory argument specifies how high the text is to
+be raised (or lowered if it is a negative amount). The text
+itself is processed in LR mode.
+
+Sometimes it's useful to make LaTeX think something has a
+different size than it really does - or a different size
+than LaTeX would normally think it has. The \raisebox
+command lets you tell LaTeX how tall it is. The first
+optional argument, extend-above, makes LaTeX think that the
+text extends above the line by the amount specified. The
+second optional argument, extend-below, makes LaTeX think
+that the text extends below the line by the amount specified.
+############################################################
+ \rule ::rule::
+############################################################
+\rule[raise-height]{width}{thickness}
+The \rule command is used to produce horizontal lines. The
+arguments are defined as follows:
+
+ raise-height - specifies how high to raise the rule
+ (optional)
+ width - specifies the length of the rule (mandatory)
+ thickness - specifies the thickness of the rule
+ (mandatory)
+
+############################################################
+ \savebox ::savebox::
+############################################################
+\savebox{cmd}[width][pos]{text}
+This command typeset text in a box just as for \makebox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \sbox ::sbox::
+############################################################
+\sbox{text}
+This commands typeset text in a box just as for \mbox.
+However, instead of printing the resulting box, it saves it
+in bin cmd, which must have been declared with \newsavebox.
+############################################################
+ \usebox ::usebox::
+############################################################
+\usebox{cmd}
+Prints the box most recently saved in bin cmd by a \savebox
+command.
diff --git a/support/tcltexed/hlp/eng/Starting.txt b/support/tcltexed/hlp/eng/Starting.txt
new file mode 100644
index 0000000000..84db129051
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Starting.txt
@@ -0,0 +1,22 @@
+############################################################
+Starting & Ending ::document::
+############################################################
+
+Your input file must contain the following commands as a
+minimum:
+
+ \documentclass{class}
+ \begin{document}
+ ... your text goes here ...
+ \end{document}
+
+where the class selected is one of the valid classes for
+LaTeX. See section
+
+Document Classes (and see section Overview of LaTeX and
+Local Guide), for details of the various document classes
+available locally.
+
+You may include other LaTeX commands between the
+\documentclass and the \begin{document} commands (i.e., in
+the `preamble').
diff --git a/support/tcltexed/hlp/eng/Styles.txt b/support/tcltexed/hlp/eng/Styles.txt
new file mode 100644
index 0000000000..fee57f61fa
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Styles.txt
@@ -0,0 +1,116 @@
+############################################################
+Page Styles
+############################################################
+
+The \documentclass command determines the size and position
+of the page's head and foot. The page style determines what
+goes in them.
+
+ \maketitle: Generate a title page.
+ \pagenumbering: Set the style used for page numbers.
+ \pagestyle: Change the headings/footings style.
+ \thispagestyle: Change the headings/footings style for
+ this page.
+
+############################################################
+ \maketitle ::maketitle::
+############################################################
+\maketitle
+The \maketitle command generates a title on a separate title
+page - except in the article class, where the title normally
+goes at the top of the first page.
+Information used to produce the title is obtained from the
+following declarations:
+
+See section Page Styles for the commands to give the information.
+
+ \author: Who wrote this stuff?
+ \date: The date the document was created.
+ \thanks: A special form of footnote.
+ \title: How to set the document title.
+
+############################################################
+ \author ::author::
+############################################################
+\author{names}
+The \author command declares the author(s), where names is a
+list of authors separated by \and commands. Use \\ to separate
+lines within a single author's entry -- for example, to give
+the author's institution or address.
+############################################################
+ \date ::date::
+############################################################
+\date{text}
+The \date command declares text to be the document's date.
+With no \date command, the current date is used.
+############################################################
+ \thanks ::thanks::
+############################################################
+\thanks{text}
+The \thanks command produces a \footnote to the title.
+############################################################
+ \title ::title::
+############################################################
+\title{text}
+The \title command declares text to be the title. Use \\ to
+tell LaTeX where to start a new line in a long title.
+############################################################
+ \pagenumbering ::pagenumbering::
+############################################################
+\pagenumbering{num_style}
+Specifies the style of page numbers. Possible values of
+num_style are:
+
+ arabic - Arabic numerals
+ roman - Lowercase Roman numerals
+ Roman - Uppercase Roman numerals
+ alph - Lowercase letters
+ Alph - Uppercase letters
+
+############################################################
+ \pagestyle ::pagestyle::
+############################################################
+\pagestyle{option}
+The \pagestyle command changes the style from the current
+page on throughout the remainder of your document.
+The valid options are:
+
+ plain - Just a plain page number.
+ empty - Produces empty heads and feet - no page numbers.
+ headings - Puts running headings on each page. The
+ document style specifies what goes in the headings.
+ myheadings - You specify what is to go in the heading
+ with the \markboth or the \markright commands.
+
+ \markboth: Set left and right headings.
+ \markright: Set right heading only.
+
+############################################################
+ \markboth ::markboth::
+############################################################
+\markboth{left head}{right head}
+The \markboth command is used in conjunction with the page
+style myheadings for setting both the left and the right
+heading. You should note that a "left-hand heading" is
+generated by the last \markboth command before the end of
+the page, while a "right-hand heading" is generated by the
+first \markboth or \markright that comes on the page if
+there is one, otherwise by the last one before the page.
+############################################################
+ \markright ::markright::
+############################################################
+\markright{right head}
+The \markright command is used in conjunction with the page
+style myheadings for setting the right heading, leaving the
+left heading unchanged. You should note that a "left-hand
+heading" is generated by the last \markboth command before
+the end of the page, while a "right-hand heading" is generated
+by the first \markboth or \markright that comes on the page
+if there is one, otherwise by the last one before the page.
+############################################################
+ \thispagestyle ::thispagestyle::
+############################################################
+\thispagestyle{option}
+The \thispagestyle command works in the same manner as the
+\pagestyle command except that it changes the style for the
+current page only.
diff --git a/support/tcltexed/hlp/eng/Terminal.txt b/support/tcltexed/hlp/eng/Terminal.txt
new file mode 100644
index 0000000000..a2551a0cf5
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Terminal.txt
@@ -0,0 +1,30 @@
+############################################################
+Terminal Input/Output
+############################################################
+
+ \typein: Read text from the terminal.
+ \typeout: Write text to the terminal.
+
+############################################################
+ \typein ::typein::
+############################################################
+\typein[cmd]{msg}
+Prints msg on the terminal and causes LaTeX to stop and wait
+for you to type a line of input, ending with return. If the
+cmd argument is missing, the typed input is processed as if
+it had been included in the input file in place of the
+\typein command. If the cmd argument is present, it must be
+a command name. This command name is then defined or redefined
+to be the typed input.
+############################################################
+ \typeout ::typeout::
+############################################################
+\typeout{msg}
+Prints msg on the terminal and in the log file. Commands in
+msg that are defined with \newcommand or \renewcommand are
+replaced by their definitions before being printed.
+
+LaTeX's usual rules for treating multiple spaces as a single
+space and ignoring spaces after a command name apply to msg.
+A \space command in msg causes a single space to be printed.
+A ^^J in msg prints a newline.
diff --git a/support/tcltexed/hlp/eng/Typefaces.txt b/support/tcltexed/hlp/eng/Typefaces.txt
new file mode 100644
index 0000000000..b0bb3fedf4
--- /dev/null
+++ b/support/tcltexed/hlp/eng/Typefaces.txt
@@ -0,0 +1,148 @@
+############################################################
+Typefaces
+############################################################
+
+The typeface is specified by giving the "size" and "style".
+A typeface is also called a "font".
+
+ Styles: Select roman, italics etc.
+ Sizes: Select point size.
+ Low-level font commands: Commands for wizards.
+
+############################################################
+ Styles
+############################################################
+The following type style commands are supported by LaTeX.
+These commands are used like \textit{italics text}. The
+corresponding command in parenthesis is the "declaration form",
+which takes no arguments. The scope of the declaration form
+lasts until the next type style command or the end of the
+current group.
+
+The declaration forms are cumulative; i.e., you can say
+\sffamily\bfseries to get sans serif boldface.
+
+You can also use the environment form of the declaration
+forms; e.g. \begin{ttfamily}...\end{ttfamily}.
+
+ \textrm (\rmfamily) ::textrm::rmfamily::
+Roman.
+ \textit (\itshape) ::textit::itshape::
+ \emph ::emph::
+Emphasis (toggles between \textit and \textrm).
+ \textmd (\mdseries) ::textmd::mdseries::
+Medium weight (default). The opposite of boldface.
+ \textbf (\bfseries) ::textbf::bfseries::
+Boldface.
+ \textup (\upshape) ::textup::upshape::
+Upright (default). The opposite of slanted.
+ \textsl (\slshape) ::textsl::slshape::
+Slanted.
+ \textsf (\sffamily) ::textsf::sffamily::
+Sans serif.
+ \textsc (\scshape) ::textsc::scshape::
+Small caps.
+ \texttt (\ttfamily) ::texttt::ttfamily::
+Typewriter.
+ \textnormal (\normalfont) ::textnormal::normalfont::
+Main document font.
+ \mathrm ::mathrm::
+Roman, for use in math mode.
+ \mathbf ::mathbf::
+Boldface, for use in math mode.
+ \mathsf ::mathsf::
+Sans serif, for use in math mode.
+ \mathtt ::mathtt::
+Typewriter, for use in math mode.
+ \mathit ::mathit::
+Italics, for use in math mode, e.g. variable names
+with several letters.
+ \mathnormal ::mathnormal::
+For use in math mode, e.g. inside another type style
+declaration.
+ \mathcal ::mathcal::
+`Calligraphic' letters, for use in math mode.
+::mathversion::
+In addition, the command \mathversion{bold} can be used for
+switching to bold letters and symbols in formulas.
+\mathversion{normal} restores the default.
+
+############################################################
+ Sizes
+############################################################
+The following standard type size commands are supported by
+LaTeX. The commands as listed here are "declaration forms".
+The scope of the declaration form lasts until the next type
+style command or the end of the current group.
+
+You can also use the environment form of these commands; e.g.
+\begin{tiny}...\end{tiny}.
+
+ \tiny ::tiny::
+ \scriptsize ::scriptsize::
+ \footnotesize ::footnotesize::
+ \small ::small::
+ \normalsize (default) ::normalsize::
+ \large ::large::
+ \Large ::Large::
+ \LARGE ::LARGE::
+ \huge ::huge::
+ \Huge ::Huge::
+
+############################################################
+ Low-level font commands
+############################################################
+These commands are primarily intended for writers of macros
+and packages. The commands listed here are only a subset of
+the available ones. For full details, you should consult
+Chapter 7 of The LaTeX Companion.
+
+ \fontencoding{enc} ::fontencoding::
+
+Select font encoding. Valid encodings include OT1 and T1.
+
+ \fontfamily{family} ::fontfamily::
+
+Select font family. Valid families include:
+ cmr for Computer Modern Roman
+ cmss for Computer Modern Sans Serif
+ cmtt for Computer Modern Typewriter
+and numerous others.
+
+ \fontseries{series} ::fontseries::
+
+Select font series. Valid series include:
+ m Medium (normal)
+ b Bold
+ c Condensed
+ bc Bold condensed
+ bx Bold extended
+and various other combinations.
+
+ \fontshape{shape} ::fontshape::
+
+Select font shape. Valid shapes are:
+ n Upright (normal)
+ it Italic
+ sl Slanted (oblique)
+ sc Small caps
+ ui Upright italics
+ ol Outline
+The two last shapes are not available for most font families.
+
+ \fontsize{size}{skip} ::fontsize::
+
+Set font size. The first parameter is the font size to
+switch to; the second is the \baselineskip to use. The unit
+of both parameters defaults to pt. A rule of thumb is that
+the baselineskip should be 1.2 times the font size.
+
+ \selectfont ::selectfont::
+
+The changes made by calling the four font commands described
+above do not come into effect until \selectfont is called.
+
+ \usefont{enc}{family}{series}{shape} ::usefont::
+
+Equivalent to calling \fontencoding, \fontfamily, \fontseries
+and \fontshape with the given parameters, followed by \selectfont.
diff --git a/support/tcltexed/hlp/eng/amscd.txt b/support/tcltexed/hlp/eng/amscd.txt
new file mode 100644
index 0000000000..b8369e1cc3
--- /dev/null
+++ b/support/tcltexed/hlp/eng/amscd.txt
@@ -0,0 +1,40 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amscd.
+\usepackage{amscd} ::amscd::
+
+#################################################################
+diagrams ::CD::
+#################################################################
+subenviroment :
+CD
+example :
+\begin{CD}
+ A @>>> B @>>> C
+ D @AAA E @VVV F
+ G @= H @<<< I
+\end{CD}
+
+enviroment for diagrams
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@>textabove>textbelow>
+
+arrow to the right with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@<textabove<textbelow<
+
+arrow to the left with writing above and below
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@AtextleftAtextrightA
+
+arrow up with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@VtextleftVtextrightV
+
+arrow down with writing at the left and right side
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@=
+
+equal symbol instead of an arrow
diff --git a/support/tcltexed/hlp/eng/amsfonts.txt b/support/tcltexed/hlp/eng/amsfonts.txt
new file mode 100644
index 0000000000..4ab340e27c
--- /dev/null
+++ b/support/tcltexed/hlp/eng/amsfonts.txt
@@ -0,0 +1,21 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsfonts.
+\usepackage{amsfonts} ::amsfonts::
+
+#################################################################
+fonts
+#################################################################
+\mathbb{text} ::mathbb::
+
+supplies text as mathematical field letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\mathfrak{text} ::mathfrak::
+
+supplies text as fracture letters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boldsymbol{symbol} ::boldsymbol::
+
+supplies a bold variant of symbol
diff --git a/support/tcltexed/hlp/eng/amsmath.txt b/support/tcltexed/hlp/eng/amsmath.txt
new file mode 100644
index 0000000000..3c33ff86cf
--- /dev/null
+++ b/support/tcltexed/hlp/eng/amsmath.txt
@@ -0,0 +1,131 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsmath.
+\usepackage{amsmath} ::amsmath::
+
+#################################################################
+mathematical subenviroments
+#################################################################
+Subenviroments must be invoked within a mathmatical enviroment.
+for example :
+\[\begin{split} ... \end{split}\]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : split ::split::
+\[\begin{split}
+ a&=b\\
+ c&=d
+\end{split}\]
+
+allows multible formulas with only one number.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : multline ::multline::
+\begin{multine}
+ a+b+c\\
+ +d+e
+\end{multine}
+
+for breaking one formula into several lines with only one number
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : gather ::gather::
+\begin{gather}
+ a+b+c\\
+ +d+e
+\end{gather}
+
+
+a group of formulas
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : align ::align::
+\begin{align}
+ a&=b & c&=d \\
+ e&=f & g&=h \\
+ \intertext{and}
+ i&=j & k&=l
+\end{align}
+
+an array of formulas
+-----------------------------------------------------------------
+\intertext{text} ::intertext::
+
+allows normal textoutput within this mathmatical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+enviroment : subequation ::subequation::
+
+mainnumbering gets an additional subnumbering with small letters
+\label{} does not distinguish between subnumbers
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : ?matrix
+::matrix::pmatrix::bmatrix::vmatrix::Vmatrix::
+\[\begin{matrix}
+ 1 & 2 & 3 & a \\
+ 4 & 5 & 6 & b \\
+ 7 & 8 & 9 & c
+\end{matrix}\]
+
+produces a matrix
+matrix : without brackets
+pmatrik : with round brackets
+bmatrix : with angular brackets
+vmatrix : with vertical lines
+Vmatrix : with doubled vertical lines
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+subenviroment : cases ::cases::
+\[sgn(x)=\begin{cases}
+ -1 & \forall\ x<0 \\
+ 0 & x=0 \\
+ 1 & \forall\ x>0
+\end{cases}\]
+
+for "Cases" constructions
+#################################################################
+Sonstige Hilfen
+#################################################################
+size of brackets :
+\bigl \bigr little bit larger ::bigl::bigr::
+\Bigl \Bigr faktor 1.5 ::Bigl::Bigr::
+\biggl \biggr faktor 2 ::biggl::biggr::
+\Biggl \Biggr faktor 2.5 ::Biggl::Biggr::
+left right of the formula
+
+behind this should follow one of these bracket forms "(" "|" "[" ... "]" ")"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\substack{ \\ ...\\ \text{Hi} ... \\ } ::substack::
+example :
+\sum_\substack{i=0\\j=1}^\substack{10\\100}
+
+Pushes several lines of indices above or below.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\text{text} ::text::
+
+text within a mathematical enviroment
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sideset{}{} ::sideset::
+example :
+\sideset{^1_2}{^3_4}\sum
+
+sets indices at the corners ..
+left above 1, left below 2, right above 3 and right below 4
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+xleftarrow{above} ::xleftarrow::xrightarrow::
+xleftarrow[below]{above}
+xrightarrow{above}
+xrightarrow[below]{above}
+
+
+An arrow which adapting the necessary length for displaying a text
+above itself and optionaly below, too.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\boxed{formula} ::boxed::
+
+formula with a frame
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareMathOperator{latex-command}{output}
+\DeclareMathOperator*{latex-command}{output}
+::DeclareMathOperator::
+
+
+Allows the declaration of own new mathematical functions like
+ \sin \cos etc.
+* makes it display indices like \lim with in math enviroment.
diff --git a/support/tcltexed/hlp/eng/amssymb.txt b/support/tcltexed/hlp/eng/amssymb.txt
new file mode 100644
index 0000000000..b1cd209fcd
--- /dev/null
+++ b/support/tcltexed/hlp/eng/amssymb.txt
@@ -0,0 +1,9 @@
+#########################################################
+\usepackage{amssymb} ::amssymb::
+#########################################################
+One symbol out of many supplied by the package amssymb.
+#########################################################
+One of the many symbols for which I didn't create a
+picture, because it would have been an endless work
+and boring, too. (mys)
+######################################################### \ No newline at end of file
diff --git a/support/tcltexed/hlp/eng/amsthm.txt b/support/tcltexed/hlp/eng/amsthm.txt
new file mode 100644
index 0000000000..af361c593c
--- /dev/null
+++ b/support/tcltexed/hlp/eng/amsthm.txt
@@ -0,0 +1,38 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+All commands below came with package amsthm.
+\usepackage{amsthm} ::amsmath::
+
+#################################################################
+Erstellen von Theoremen ::newtheorem::
+#################################################################
+
+\newtheorem{latex-synonym}{name}
+\newtheorem*{latex-synonym}{name}
+\newtheorem*{latex-synonym}[latex-synonym2]{name}
+\newtheorem*{latex-synonym}{name}[section]
+
+Defines a new enviroment latex-synonym which is numbered as
+theorem with name "name" (f.e. axiom).
+\begin{latex-synonym}
+ bla
+\end{latex-synonym}
+for useing the new theorem
+
+* subdues the numbering.
+latex-synonym2 : uses the counter from this theorem
+section : an incretion of this counter would set the
+theorem counter to the value null
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\theoremstyle{style} ::theoremstyle::
+
+style :
+ plain (default)
+ definition
+ remark
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\swapnumbers ::swapnumbers::
+
+numbering on the left side of the theorem \ No newline at end of file
diff --git a/support/tcltexed/hlp/eng/copyright_hlp.txt b/support/tcltexed/hlp/eng/copyright_hlp.txt
new file mode 100644
index 0000000000..df07b73c38
--- /dev/null
+++ b/support/tcltexed/hlp/eng/copyright_hlp.txt
@@ -0,0 +1,19 @@
+Tcltexed | Version 2.8 | 02. Nov 2006 | Martin Strauss
+::copyright_hlp::
+A plaintexteditor for LaTeX based on scriptlanguage tcl/tk (8.x)
+
+Copyright (C) 1999 Martin Strauss
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
diff --git a/support/tcltexed/hlp/eng/editor_hlp.txt b/support/tcltexed/hlp/eng/editor_hlp.txt
new file mode 100644
index 0000000000..cd2d795e88
--- /dev/null
+++ b/support/tcltexed/hlp/eng/editor_hlp.txt
@@ -0,0 +1,185 @@
+############################################################
+#::editor_hlp::
+# The Editorwindow
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+What's an Editorwindow ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+For me a editorwindow is a window where I am able to work on
+a text under Tcltexed. Each editorwindow is assigned to one
+text. Two attributs ar important several editorwindows exist:
+ the focus
+ and the marking of one of them to be the maindocument
+-----
+The focus ownes the editorwindow, which was at last in the
+forground. All actions outside of the editorwindows opened
+will effect only the one having the focus. An Example for
+actions may be "text searching". One way to give one
+editorwindow the focus is by mousebuttons.
+-----
+If you have made on editorwindow a maindocument, all calls
+for extern programms like latex, xdvi, dvips and ghostview
+are directed to this document. In this case only the document
+of the maindocument gets compiled, so it should be executable
+for latex, while the others don't need to. If no editorwindow
+is declared to be the maindocument, each editorwindow
+behaves as if it is the only one.
+-----
+The window consists of the following components :
+ a menubar / popupbar (Only Windows)
+ a buttonbar
+ and an input field.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+usage of the buttonbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+From left to right :
+a "picture", Save, Save As, latex, xdvi, dvips, ghostview, ispell, Syntax, Quit
+and last but not least a display "L.C. ?.?"
+-----
+ "picture"
+The picture shows you the attributes of the editorwindow.
+If it has the focus it you see a picture of some circular waves.
+If it is colored (yellow/red) it is marked to be the maindocument.
+You can make an editorwindow a maindocument by mouse click
+on the picture. A second click removes the attribute to be
+a maindocument.
+-----
+ Save
+You know this, simply save this document in a file assignend
+to the editorwindow. If there is no file assigned "Save As"
+is executed instead.
+-----
+ Save As
+Save a document into a file you choose and assign
+it the actual editorwindow.
+-----
+ latex
+Executes "Save" for this editorwindow. Only it's document get's saved.
+Then the program latex is executed with the assigned file.
+If a maindocument exists as defined above the file assigned to
+it is executed instead. latex produces the file with extention dvi,
+the error output of latex is piped into the helpwindow of Tcltexed.
+(if there accures an error under unix you must stop latex
+by pressing "q" and "RETURN")
+To make it easier to create an index, with the latex-commands
+\makeindex \index etc. the program makeindex is started automaticly
+if a suiting filename with extension idx exists.
+-----
+ xdvi
+Executes xdvi (or an other viewer) for to view the last latex outputfile.
+Normaly the viewers reload the actual document if you produce
+a new dvi file, so you have to start this only on time.
+-----
+ dvips
+Makes a output for ghostscript printer out of the dvi file.
+The output will be saved into a file with extension ps.
+-----
+ ghostview
+Executes ghostview a viewer for ghostscript files with the last
+dvips outputfile.
+-----
+ ispell
+Executes "Save" for this editorwindow. Only it's document get's saved.
+Then ispell an interactive spell checker is executed and it's output
+reloaded into the editorwindow.
+-----
+ Syntax
+Syntax Highlightning, all textarrays starting with \ are supposed
+to be LaTeX-commands.
+If this command is known it's letters gets green, if not red.
+But be carefull, it doesn't look after the number of brackets behind
+the command. (latex will do that for you !)
+If it's text to be ignored (starting with %), the text get blue.
+For many green marked commands exists a short description.
+-----
+ Quit
+Close this editorwindow. If modified it request's if it realy
+should do so without saving before.
+-----
+ Display
+Shows you the position of the curser (line and row).
+One "line" is here defined as a number of letters follewd
+by a "RETURN", not as the number of real lines displayed by the
+editorwindow.
+If you press this Button, a window opens, with which you can
+change the position of the curser manualy by numbers.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Usage of th menubar / popupbar
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The menubar exists only if you use Windows and tcl/tk 8.x.
+Menubar and popupbar implement the same functions.
+Pressing the right mousebutton opens the popupbar.
+From top to bottom listed (left to right) :
+Undo, Cut, Copy, Paste, Clear, Block, + % und - %.
+-----
+ Undo
+For to undo most of your last actions within the text. (I hopfully
+think so) In lack of infinity memory recources you can't undo
+everything.
+-----
+ Cut, Copy, Paste, Clear
+Bearbeitet den mit Maus selektierten Bereich, ratet mal was da
+passiert ... . Die Aktionen sind Windows und X-Window kompatibel.
+(theoretisch)
+-----
+ Spell
+Marks all not right spelled words in your text with a red color.
+-----
+ Nearly
+Takes the word which the curser is within and displays a list of
+words which nearly match this word.
+-----
+ Block
+Makes out of the selected aria a "Block - aria" ala Borland.
+-----
+ + %
+Inserts at the beginning of each selected line %, but only
+if there doesn't exist one.
+-> easy way to mark lines for latex to be ignored
+-----
+ - %
+The other way around as "+ %".
+-----
+ ...
+Looks for LaTeX-command matching with letters between
+the last "\" and the curser.
+Only commands marked under "Options -> packages"
+are listed here.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Usage of the inputfield
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Hey that's the part each editor has, don't ask silly questions.
+(look for Editor-keymap for some key combinations)
+-----
+ Spelling
+If you wanna register a word as right spelled, you have to set
+the curser on it and make a double click on the left button of
+your mouse.
+-----
+Examples for automatical complition of LaTeX-commands
+\fra ---> \frac{}{}
+\enumerate --->
+ \begin{enumerate}
+ \item
+ \end{enumerate}
+Compiltion of brackets
+{ ---> {}
+$ ---> $$
+-----
+For \begin and \end the name of the enviroment will be inserted
+as below :
+\beg --->
+ \begin{}
+ \end{}
+\bege --->
+ \begin{e}
+ \end{e}
+\begenum --->
+ \begin{enum}
+ \end{enum}
+-----
+If some text is selected by mouse and you press "\"
+than gets this not deleted as usualy done, but gets
+some brackets inserted around the selected text.
diff --git a/support/tcltexed/hlp/eng/editort_hlp.txt b/support/tcltexed/hlp/eng/editort_hlp.txt
new file mode 100644
index 0000000000..bce6a1d901
--- /dev/null
+++ b/support/tcltexed/hlp/eng/editort_hlp.txt
@@ -0,0 +1,110 @@
+############################################################
+#::editort_hlp::
+# keyboardmap for editorwindows
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+key bindings from Borland etc :
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block
+ <Control-k><b> Block Begin
+ <Control-k><k> Block End
+ <Control-k><c> Block Copy
+ <Control-k><m> Block Move
+ <Control-k><v> Block Move
+ <Control-k><y> Block Remove
+ <Control-k><%> Block (=> latex ignores this lines)
+ <Control-k><space> Block (opposite of binding above)
+more
+ <F1> Help
+ <F2> Save
+ <F3> Open file
+ <F4> Goto Curser
+ <F9> Excute latex
+ <Control-k><x> Save
+ <Control-k><h> Help
+ <Control-y> remove line
+ <Alt-BackSpace> Undo
+ <Shift-Delete> Cut
+ <Control-Insert> Copy
+ <Shift-Insert> Paste
+ <Control-Delete> Clear
+ <Control-l> Search again
+ <Alt-x> total termination of tcltexed
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Some from me :
+ <Control-w> Listing of all possible complitions
+ of a LaTeX-Command.
+ <Control-d> If the curser is within a known LaTeX-command,
+ tcltexed will search for the next occurrence of the command
+ within the text. If the curser is not within a known
+ LaTeX-command tcltexed will search for the next occurence of
+ \section
+ <Control-u> The same as <Control-d> but tcltexed will search backwards.
+ <Control-b> line breaking for a section
+ <Alt-b> line breaking for current line
+ <Control-B> opposite of <Control-b>
+ <Alt-B> opposite of <Alt-b>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block, Selection and Clipboard are normaly independent :
+ <Control-k><p> Insert from Clipboard
+ <Control-k><g> Copy to Clipboard
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Windows - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Press right mousebutton to open a menu with following entries
+ Cut Cut selected into Clipboard
+ Copy Copy selected into Clipboard
+ Paste insert text from Clipboard
+ Clear Remove selected
+ Block Make selected to Block
+ + % Make text to be ignored by latex
+ - % opposite of above
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Motif - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Press left mousebutton
+ one time Undo selection
+ twice Select whole word
+ trible Select whole line
+ Shift-einfach Change aria of selection
+ Shift-zweifach Complete selection aria to whole words
+ Shift-dreifach Complete selection aria to whole lines
+ Control Change curser position without losing the selection
+Curserkeys (CT)
+ <Shift-CT> Select aria (letters/lines)
+ <Control-CT> Shift Curser in steps
+ <Shift-Control-CT> Select aria (word/paragraph)
+[Up,Down] page up down (ST)
+ <Shift-ST> Select aria (pages)
+[Home,End] line start end (ZT)
+ <Shift-ZT> Select aria (until linestart/-end)
+ <Control-ZT> Shift curser to documentbegin/-end
+ <Shift-Control-ZT> Select aria (until documentbegin/-end)
+sonstige
+ <Shift-slash> Select whole document
+ <Insert> Insert selection
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+emacs-like
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ <Control-a> = Home
+ <Control-b> = Left
+ <Control-d> = Delete
+ <Control-e> = End
+ <Control-f> = Right
+ (<Control-k> other binding)
+ <Control-n> = Up
+ <Control-o> = Return+Left
+ <Control-p> = Down
+ <Control-t>
+ <Control-v> = Page up
+ <Meta-b>
+ <Meta-d>
+ <Meta-f>
+ <Meta-less> Shift Curser to text begin
+ <Meta-greater> Shift Curser to text begin
+ <Meta-Backspace>
+ <Meta-Delete>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \ No newline at end of file
diff --git a/support/tcltexed/hlp/eng/epsf.txt b/support/tcltexed/hlp/eng/epsf.txt
new file mode 100644
index 0000000000..c83e63d32c
--- /dev/null
+++ b/support/tcltexed/hlp/eng/epsf.txt
@@ -0,0 +1,12 @@
+############################################################
+package epsf
+############################################################
+\usepackage{epsf} ::epsf::
+\epsfxsize ::epsfxsize::
+\epsfbox{} ::epsfbox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I don't now how these commands work, you could include
+eps-pictures into your document.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+I personaly use the latex2e package graphicx for that
+and it works quite fine.
diff --git a/support/tcltexed/hlp/eng/gpl_hlp.txt b/support/tcltexed/hlp/eng/gpl_hlp.txt
new file mode 100644
index 0000000000..e04861aa1d
--- /dev/null
+++ b/support/tcltexed/hlp/eng/gpl_hlp.txt
@@ -0,0 +1,425 @@
+GNU General Public License - GNU Project - Free Software Foundation (FSF)
+::gpl_hlp::
+Table of Contents
+
+GNU GENERAL PUBLIC LICENSE
+
+Preamble
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+How to Apply These Terms to Your New Programs
+
+GNU GENERAL PUBLIC LICENSE | Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0.
+ This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+
+1.
+ You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+
+2.
+ You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+
+2.a)
+ You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+
+2.b)
+ You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+
+2.c)
+ If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+
+3.
+ You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+
+3.a)
+ Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+
+3.b)
+ Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+
+3.c)
+ Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+
+4.
+ You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+
+5.
+ You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+
+6.
+ Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+
+7.
+ If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+
+8.
+ If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+
+9.
+ The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+
+10.
+ If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+NO WARRANTY
+
+
+11.
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+
+12.
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+
+END OF TERMS AND CONDITIONS
+
+
+
+How to Apply These Terms to Your New Programs
+
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+- one line to give the program's name and an idea of what it does. -
+Copyright (C) 19xx - name of author -
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+Gnomovision version 69, Copyright (C) 19xx - name of author -
+Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
+type `show w'. This is free software, and you are welcome
+to redistribute it under certain conditions; type `show c'
+for details.
+
+
+
+The hypothetical commands `show w' and `show c' should show
+the appropriate parts of the General Public License. Of course, the
+commands you use may be called something other than `show w' and
+`show c'; they could even be mouse-clicks or menu items--whatever
+suits your program.
+
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+
+Yoyodyne, Inc., hereby disclaims all copyright
+interest in the program `Gnomovision'
+(which makes passes at compilers) written
+by James Hacker.
+
+signature of Ty Coon, 1 April 1989
+Ty Coon, President of Vice
+
+
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
+
+
+
+A copy of
+http://www.gnu.org/copyleft/gpl.html
+
+GNU's home page
+http://www.gnu.org/home.html
+
+FSF &amp; GNU inquiries &amp; questions to
+gnu@gnu.org"
+Other ways to contact
+http://www.gnu.org/home.html#ContactInfo
+
+Copyright notice above.
+Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111, USA
+
+Updated:
+16 Feb 1998 tower
diff --git a/support/tcltexed/hlp/eng/readme_hlp.txt b/support/tcltexed/hlp/eng/readme_hlp.txt
new file mode 100644
index 0000000000..3b17a5b62b
--- /dev/null
+++ b/support/tcltexed/hlp/eng/readme_hlp.txt
@@ -0,0 +1,45 @@
+ Tcltexed a LaTeX-Editor
+
+ !!! Take care, this program is under construction !!!!
+ In the meantime I have worked a lot with this program
+ but should you still find some errors, please contact me.
+ The easiest way is by email : mys@faveve.uni-stuttgart.de
+
+ Short introduction :
+ A description of the program as a whole can be found under
+ "Help" - "Tcltexed".
+ It is always useful to try to press <F1>.
+ For all LaTeX-commands (I know) there exists a short description,
+ but I have only translated half of them so far.
+ The keymap is motif-like, emacs-like and joe-like (as in Borland Pascal).
+ Additionally some key-shortcuts of my own exist.
+ If you open an editor window, you will find a tiny picure in the upper
+ left hand corner. If it is coloured (click on it with mouse) this
+ window is marked as the main document.
+ If you click on a picture in the mathematics collection the
+ corresponding LaTeX-command will be inserted in the currently active
+ editor window. (The window where the picture (top left) shows some
+ circular waves)
+ If you insert a LaTeX-command tcltexed tries to complete this command.
+ (i.e. \G could only be \Gamma)
+ If you don't find that useful you can stop this behaviour using the menu
+ options.
+ The row of buttons at the top can be used to start the corresponding
+ programs using the document as source file.
+
+ This program will run on Unix, Linux, Windows 9x, Windows NT etc.
+ I just don't know anyone who will try it on a Macintosh as well ...
+ If you want to try, please contact me.
+
+ All you need to run this program is the script language Tcl/Tk, which
+ you can download for free.
+ You want to use my program? It is already available for "free":
+
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+
+ Questions? Found some errors? Some ideas for future developments?
+ feel free to send an email :
+
+ Martin Strauss
+ mys@faveve.uni-stuttgart.de
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
diff --git a/support/tcltexed/hlp/eng/sonder.txt b/support/tcltexed/hlp/eng/sonder.txt
new file mode 100644
index 0000000000..33685acbf5
--- /dev/null
+++ b/support/tcltexed/hlp/eng/sonder.txt
@@ -0,0 +1,14 @@
+############################################################
+Hae ?
+############################################################
+\today ::today::
+
+insert date of compilation into the document
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX ::LaTeX::
+
+insert logo of LaTeX
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX2e ::LaTeX2e::
+
+insert logo of LaTeX2e
diff --git a/support/tcltexed/hlp/eng/tcltexed_hlp.txt b/support/tcltexed/hlp/eng/tcltexed_hlp.txt
new file mode 100644
index 0000000000..1105fc195e
--- /dev/null
+++ b/support/tcltexed/hlp/eng/tcltexed_hlp.txt
@@ -0,0 +1,116 @@
+############################################################
+#::tcltexed_hlp::
+# Tcltexed stands for tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Tcltexed is seprated into two parts. On one side the windows
+were you could edit a text, as described in "Editor", on
+the other side a lot of functions connected only to the base
+of the program, the main window.
+All actions which should work with a editorwindow will use
+the window which has had at last the focus. A clearer
+definiton of this made in "Editor".
+
+Below I will discribe and list all the functions you could
+start from the main window.
+
+menu items of the main window
+1. File
+ a) New
+Start a new LaTeX-document. There exists a predefined plain
+document within the source of Tcltexed. If the file etc/default.tex
+exists in the path were Tcltexed was installed this file will
+be used as default document.
+ b) Load
+Load a file into the editor ...
+ c) Append
+Append the text of the file at the position of the curser.
+ d) Save e) Save As
+Save a text.
+ f) Quit
+Quit Tcltexed. All windows will get closed (if necessary a request
+for saveing the files in work is made)
+
+2. Edit
+ a) Clear
+Clear the whole text.
+ b) line breaking
+Choose to break lines in the whole text, the current section or the
+current line. Each line which follows a line which ends with "space"
+will be interpreted as a continuition. Befor a line gets broken all
+continuation lines will be appended to it.
+With the last three menu items it is possible to append all continuition
+lines without breaking the whole line after it.
+If there are some spaces at the beginning of the first line, then
+all continuations will have these spaces as first letters.
+ c) Spelling
+Marks all not right spelled words in your current text with a red color.
+ d) add word
+For to register a word as spelled right, you must set
+the curser in the current text within it. To make sense the word
+must be marked to be misspelled ;-), or not ?
+ e) \"a..\ss -> ä..ß
+Translates latex commands for displaying special characters into
+their corresponding characters.
+ f) ä..ß -> \"a..\ss
+Translate none ascii characters into their corresponding latex commands.
+ g) "a.."s -> ä..ß
+Translates latex commands out of package [german]{babel} for displaying
+special characters into their corresponding characters.
+ h) ä..ß -> "a.."s
+Translate none ascii characters into their corresponding latex commands
+out of package [german]{babel}. This format is iutable for
+"ispell -t -d deutsch file.tex"
+ i) Search
+Search and Replace within a text.
+ j) My Own
+Here you can define your own LaTeX-sequences to be inserted into the
+text, if you press the button befor the entry. This definitions
+will besaved if you "Save Options". With the next start of Tcltexed
+this definitions will be the start values.
+
+3. Options
+ a) AutoBrackets
+If this button is aktivated, each inserted bracket to open ({[$
+will be followed by a bracket to close )}]$.
+ { --> {}
+ b) Packages/etc
+Here you could activate several packages for automatical completion
+of it's LaTeX-commands.
+An example for complition :
+\fra --> \frac{}{}
+The more LaTeX-commands Tcltexed should recognise the later they
+get complited, because they look to similar for Tcltexed.
+ c) language
+Set here your favorite language for texts, buttons and help.
+A change here will only apear with the next start of Tcltexed,
+so you have to save the current options as discribed below.
+ d) font size
+Set font size for the editorwindows.
+ e) Save Options
+Save all configurations made by a user. This configuration
+will be loaded at the beginning of the next start of Tcltexed.
+(The file with the configurations is with unix .tcltexed,
+ with Windows tcltexed.ini . But please don't edit it yourself.
+Configurationfiles of older Tcltexedversion will be ignored
+and later overwriten.)
+
+4. Mathematics
+A gallery of pictures of the ouput of commands of the mathmatical
+enviroments. A press on a pictur will insert the command,
+represented by the picture, on the position of the curser.
+
+5. general
+Like 4. , but other common commands.
+
+6. Help
+ a) Tcltexed
+Under this you will find the description of Tcltexed itself.
+ b) LaTeX
+A index of all LaTeX-commands I have heard of.
+For a lot of LaTeX-commands I have writen a short help.
+ + <Return> + left mousebutton displays the help text
+ right mousebutton insert command
+ a keystroke A-Z a-z forces the list to jumb to commands
+ with this as first letter
diff --git a/support/tcltexed/hlp/ger/RCS/Seitenformat.txt,v b/support/tcltexed/hlp/ger/RCS/Seitenformat.txt,v
new file mode 100644
index 0000000000..ec4d5a0fb2
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/Seitenformat.txt,v
@@ -0,0 +1,86 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Variablen zur Kontrolle des Seitenformates
+############################################################
+
+\voffset ::voffset::
+ vertikaler Offset der Seite
+\hoffset ::hoffset::
+ horizontaler Offset der Seite
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\oddsidemargin ::oddsidemargin::
+ Breite des linken Randes bzw ungerade Seiten
+\evensidemargin ::evensidemargin::
+ Breite des rechten Randes bzw gerade Seiten
+\topmargin ::topmargin::
+ oberer Rand bis Oberkante Kopfzeile
+\headheight ::headheight::
+ Höhe der Kopfzeile
+\headsep ::headsep::
+ Abstand zwischen Unterkante Kopf und Oberkante Rumpf
+\topskip ::topskip::
+ Abstand Oberkante Rumpf und Unterkante der ersten Textzeile
+\textheight ::textheight::
+ Gesamthöhe für den Rumpf
+\textwidth ::textwidth::
+ Gesamtbreite für Kopf, Rumpf und Fuß
+\footheight ::footheight::
+ Höhe des Rumpfes
+\footskip ::footskip::
+ Abstand Unterkante Rumpf Unterkante Fuß
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\marginparpush ::marginparpush::
+ Abstand zweier Randnotizen
+\marginparwidth ::marginparwidth::
+ Breite einer Randnotiz
+\marginparsep ::marginparsep::
+ horizontaler Abstand zum Rand des Rumpfes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Zusätzlich bei doppelspaltigen Seiten
+\columnsep ::columnsep::
+ Breite des Spaltenseperators
+\columnseprule ::columnseprule::
+ Trennstrichdicke
+
+############################################################
+Variablen ändern mit
+setlength{Variable}{Wert} ::setlength::
+
+ ##############
+ # Kopf #
+ ##############
+
+ ##############
+ # #
+ # #
+ # Rumpf #
+ # #
+ # #
+ ##############
+
+ ##############
+ # Fuß #
+ ##############
+@
diff --git a/support/tcltexed/hlp/ger/RCS/amscd.txt,v b/support/tcltexed/hlp/ger/RCS/amscd.txt,v
new file mode 100644
index 0000000000..42ee1b7304
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/amscd.txt,v
@@ -0,0 +1,64 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amscd verfügbar.
+\usepackage{amscd} ::amscd::
+
+#################################################################
+Fussdiagramme ::CD::
+#################################################################
+Unterumgebung :
+CD
+Beispiel :
+\begin{CD}
+ A @@>>> B @@>>> C
+ D @@AAA E @@VVV F
+ G @@= H @@<<< I
+\end{CD}
+
+Umgebung für Flussdiagramme
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@>Textoben>Textunten>
+
+Pfeil nach rechts mit Schrift darüber und darunter
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@<Textoben<Textunten<
+
+Pfeil nach links mit Schrift darüber und darunter
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@ATextlinksATextrechtsA
+
+Pfeil nach oben mit Schrift links und rechts
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@VTextlinksVTextrechtsV
+
+Pfeil nach unten mit Schrift links und rechts
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@@=
+
+Gleichheitszeichen
+@
diff --git a/support/tcltexed/hlp/ger/RCS/amsfonts.txt,v b/support/tcltexed/hlp/ger/RCS/amsfonts.txt,v
new file mode 100644
index 0000000000..142f44963c
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/amsfonts.txt,v
@@ -0,0 +1,48 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amsfonts verfügbar.
+\usepackage{amsfonts} ::amsfonts::
+
+#################################################################
+Fonts
+#################################################################
+Syntax :
+\mathbb{Text} ::mathbb::
+
+Liefert Text in Form von Mengenzeichen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\mathfrak{Text} ::mathfrak::
+
+Liefert Text als Frakturschrift
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\boldsymbol{Symbol} ::boldsymbol::
+
+Liefert fette Symbole
+@
diff --git a/support/tcltexed/hlp/ger/RCS/amsmath.txt,v b/support/tcltexed/hlp/ger/RCS/amsmath.txt,v
new file mode 100644
index 0000000000..5d432e57b1
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/amsmath.txt,v
@@ -0,0 +1,162 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amsmath verfügbar.
+\usepackage{amsmath} ::amsmath::
+
+#################################################################
+mathematische Unterumgebungen
+#################################################################
+Unterumgebungen muessen in einer mathematischen Umgebung
+aufgerufen werden.
+z.B.
+\[\begin{split} ... \end{split}\]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unterumgebung : split ::split::
+\[\begin{split}
+ a&=b\\
+ c&=d
+\end{split}\]
+
+Erlaubt mehrere aneinander ausgerichtete Formeln mit wenn nur
+einer Nummer.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : multline ::multline::
+\begin{multine}
+ a+b+c\\
+ +d+e
+\end{multine}
+
+Fuer mehrzeilige Formeln mit einer Nummer.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : gather ::gather::
+\begin{gather}
+ a+b+c\\
+ +d+e
+\end{gather}
+
+
+Mehrere Formeln unausgerichtet.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : align ::align::
+\begin{align}
+ a&=b & c&=d \\
+ e&=f & g&=h \\
+ \intertext{und}
+ i&=j & k&=l
+\end{align}
+
+Erlaubt ein Array von Formeln
+-----------------------------------------------------------------
+Syntax : ::intertext::
+\intertext{Text}
+
+Erlaubt einen eingeschobenen Text
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : subequation ::subequation::
+
+Zur Hauptnummerierung kommt eine für label unsichtbare
+Unternummerierung mit kleinen Buchstaben.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unterumgebung : ?matrix ::matrix::pmatrix::bmatrix::vmatrix::Vmatrix::
+\[\begin{matrix}
+ 1 & 2 & 3 & a \\
+ 4 & 5 & 6 & b \\
+ 7 & 8 & 9 & c
+\end{matrix}\]
+
+Erzeugt eine n auf m Matrix
+matrix : ohne Klammerung
+pmatrik : mit runder Klammerung
+bmatrix : mit eckiger Klammerung
+vmatrix : mit einfachen Betragsstrichen
+Vmatrix : mit doppelten Betragsstrichen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unterumgebung : cases ::cases::
+\[sgn(x)=\begin{cases}
+ -1 & \forall\ x<0 \\
+ 0 & x=0 \\
+ 1 & \forall\ x>0
+\end{cases}\]
+
+Für Fallunterscheidungen
+#################################################################
+Sonstige Hilfen
+#################################################################
+Klammerngroesse :
+\bigl \bigr etwas groesser ::bigl::bigr::
+\Bigl \Bigr Faktor 1.5 ::Bigl::Bigr::
+\biggl \biggr Faktor 2 ::biggl::biggr::
+\Biggl \Biggr Faktor 2.5 ::Biggl::Biggr::
+links rechts der Formel
+
+Nachfolgend kommt die Klammernart "(" "|" "[" ... "]" ")"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::substack::
+\substack{ \\ ...\\ \text{Hi} ... \\ }
+Beispiel :
+\sum_\substack{i=0\\j=1}^\substack{10\\100}
+
+Schiebt mehrere Zeilen an Indizes oder Exponenten ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::text::
+\text{Text}
+
+schiebt Text ein
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::sideset::
+\sideset{}{}
+Beispiel :
+\sideset{^1_2}{^3_4}\sum
+
+Setzt seitlich Indizes,
+zum Beispiel links oben eine 1, links unten eine 2,
+ rechts oben eine 3 und rechts unten eine 4.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::xleftarrow::xrightarrow::
+xleftarrow{Oben}
+xleftarrow[Unten]{Oben}
+xrightarrow{Oben}
+xrightarrow[Unten]{Oben}
+
+
+Ein sich in Abhängigkeit zum Text streckender Pfeil mit Text "Oben"
+und "Unten".
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::boxed::
+\boxed{Formel}
+
+Rahmt Formel in eine Box ein
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareMathOperator{latex-Befehl}{Ausgabe} ::DeclareMathOperator::
+\DeclareMathOperator*{latex-Befehl}{Ausgabe}
+
+
+
+Ermöglicht das Erstellen weiterer Funktionen zu \sin \cos etc.
+* Bewirkt ein Verhalten wie z.B. \lim im flüssigen Text.
+@
diff --git a/support/tcltexed/hlp/ger/RCS/amssymb.txt,v b/support/tcltexed/hlp/ger/RCS/amssymb.txt,v
new file mode 100644
index 0000000000..073da1cb80
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/amssymb.txt,v
@@ -0,0 +1,31 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#########################################################
+\usepackage{amssymb} ::amssymb::
+#########################################################
+Einer der unzähligen LaTeX-Befehle des Packetes amssymb.
+#########################################################
+Eines der unzähligen Symbole bei denen ich mich weigerte
+ein extra Bild zu erstellen. (mys)
+##########################################################@
diff --git a/support/tcltexed/hlp/ger/RCS/amsthm.txt,v b/support/tcltexed/hlp/ger/RCS/amsthm.txt,v
new file mode 100644
index 0000000000..2ec28e5f38
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/amsthm.txt,v
@@ -0,0 +1,60 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amscd verfügbar.
+\usepackage{amsthm} ::amsthm::
+
+#################################################################
+Erstellen von Theoremen ::newtheorem::
+#################################################################
+
+\newtheorem{latex-synonym}{Name}
+\newtheorem*{latex-synonym}{Name}
+\newtheorem*{latex-synonym}[latex-synonym2]{Name}
+\newtheorem*{latex-synonym}{Name}[section]
+
+Erstellt eine Umgebungsvariable latex-synonym die ein durchnummerieres
+Theorem mit der Bezeichnung Name (z.B. Axiom) einfügt.
+\begin{latex-synonym}
+ Bla
+\end{latex-synonym}
+bewirkt dann das einfügen eines solchem Theorems.
+
+* unterdrückt die Nummerierung.
+latex-synonym2 : es wird der gleiche Zähler wie zu diesem Theorem verwandt.
+section : bei erhoehung dieses Zählers wir der Theoremzähler auf Null gesetzt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\theoremstyle{Style} ::theoremstyle::
+
+Style :
+ plain (default)
+ definition
+ remark
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\swapnumbers ::swapnumbers::
+
+Nummerierung auf der linken Seite der Theoreme @
diff --git a/support/tcltexed/hlp/ger/RCS/begin.txt,v b/support/tcltexed/hlp/ger/RCS/begin.txt,v
new file mode 100644
index 0000000000..4248c0110c
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/begin.txt,v
@@ -0,0 +1,84 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Umgebungen ::begin::end::
+############################################################
+Syntax
+\begin{Umgebung}
+ Text. etc.
+\end{Umgebung}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebungen :
+ document Dokument
+ titlepage Titelseite
+ verbatim 1:1 Text einfügen
+ appendix Anhang
+ abstract für Zusammenfassung
+ thebiliography Literaturverzeichnis
+ theindex Stichwortverzeichnis
+
+(Mathematik)
+ math im Text
+ displaymath gesondert
+ equation gesondert mit Nummer
+ eqnarray Formelgruppen
+ array Tabellen im mathe. Modus
+
+(Aufzaehlungen)
+ enumerate mit Zaehler
+ itemize mit Symbol
+ deskription mit Kürzel
+
+(Gliederung)
+ tabular Tabellen
+ tabbing mit Tabulator
+ minipage als kleine "Seite"
+ samepage kein Seitenumbruch außerhalb von Absätzen
+ sloppypar schlampiger Zeilenumbruch
+ fussypar gründlicher "
+ center zentriert
+ quote rückt links und rechts ein
+ quotation neuer Absatz + "
+ flushright rechtszentriert
+ flushleft linkszentriert
+(Gleitende Objekte)
+ table für Tabellen
+ figure für Bilder
+
+(Bilder)
+ picture mit latex gezeichnete Bilder
+
+(Packet amsmath)
+ split
+ multline
+ gather
+ aline
+ subequation
+ matrix
+ pmatrix
+ bmatrix
+ vmatrix
+ Vmatrix
+ cases
+@
diff --git a/support/tcltexed/hlp/ger/RCS/bezug.txt,v b/support/tcltexed/hlp/ger/RCS/bezug.txt,v
new file mode 100644
index 0000000000..f859046117
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/bezug.txt,v
@@ -0,0 +1,55 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Literaturverzeichnis ::thebibliography::bibitem::cite::
+############################################################
+\begin{thebibliography}{Muster_Marke}
+ \bibitem[Marke]{Bezug}Eintrag
+ ...
+\end{thebibliography}
+
+(Marke ist optional, andernfalls wird durchgezählt)
+Im Text : \cite{Bezug}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+::nocite::bibliography::
+Mit BibTeX können auch Literaturverzeichnisse erstellt werden.
+\nocite{Bezug1, ...} ist eine Liste der in dieser Weise
+genutzten Bezuege.
+\bibliography{datenbank, ..} gibt die zu nützenden
+Datenbanken an.
+############################################################
+Sonstige Bezuege
+############################################################
+\label{Marke} ::label::
+
+Erstellt Marke.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\ref{Marke} ::ref::
+
+Fügt Position der Marke ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\pageref{Marke} ::pageref::
+
+Fügt Seite der Marke ein.
+ @
diff --git a/support/tcltexed/hlp/ger/RCS/copyright_hlp.txt,v b/support/tcltexed/hlp/ger/RCS/copyright_hlp.txt,v
new file mode 100644
index 0000000000..d5f577c3de
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/copyright_hlp.txt,v
@@ -0,0 +1,43 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauss
+::copyright_hlp::
+A plaintexteditor for LaTeX based on scriptlanguage tcl/tk (8.x)
+
+Copyright (C) 1999 Martin Strauss
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+@
diff --git a/support/tcltexed/hlp/ger/RCS/counter.txt,v b/support/tcltexed/hlp/ger/RCS/counter.txt,v
new file mode 100644
index 0000000000..88369a25c6
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/counter.txt,v
@@ -0,0 +1,105 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Counter
+############################################################
+Counter besitzen immer ganzzahlige Werte
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\newcounter{Name} ::newcounter::
+\newcounter{Name}[Rücksetzer]
+
+Erstellt Counter "Name".
+Wird Counter Rücksetzer um eins erhöht, fällt
+Counter Name auf Null zurueck.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\setcounter{Name}{Wert} ::setcounter::
+
+Setzt einen Counter auf einen angegebenen Wert.
+
+default Zähler
+ page laufende Seitennummerierung
+ tocdepth Inhaltsverzeichnisanzeigetiefe (1 chapter 2 section ...)
+ chapter laufende Kapitelnummer, geht analog für (section ..)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stepcounter{Name} ::stepcounter::
+
+Erhöht den Wert von Name um eins
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\value{Name} ::value::
+
+Gibt den Wert von
+############################################################
+Length
+############################################################
+Längen besitzen immer eine Einheit (mm,pt,cm, ...)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\newlength{\Name} ::newlength::
+
+Erstellt Laengenvariable \Name.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\setlength{\Name}{Mass} ::setlength::
+
+Setzt \Name auf Mass.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\addtolength{\Name}{Mass} ::addtolength::
+
+Addiert Mass zu \Name
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\settowidth{\Name}{Text} ::settowidth::
+
+Setzt Name auf die Länge von Text.
+############################################################
+Command
+############################################################
+\newcommand{\Befehl}[n]{Definition} ::newcommand::
+
+Erstellt einen Befehl als Synonym für den Text "Definition",
+mit Benützung von n Übergabewerten.
+z.B.
+\newcommand{\hallo}[1]{Hallo #1}
+im Textfile
+\hallo{mys}
+Ausgabe in Dvifile
+Hallo mys
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\renewcommand{\Befehl}[n]{Definition} ::renewcommand:
+
+Wie oben falls schon ein Befehl unter diesem Namen existiert,
+und dieser umdefiniert werden soll.
+############################################################
+Enviroment ::newenviroment::renewenviroment::
+############################################################
+\newenviroment{Name}[n]{begin-Definitionen}{end-Definitionen}
+\newenviroment*{Name}[n]{begin-Definitionen}{end-Definitionen}
+
+z.B.
+\newenviroment{tcltk}[1]{\bfseries %i}{\normalfont}
+\begin{tcltk}{Hallo}
+ ...
+\end{tcltk}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\renewenviroment{Name}[n]{begin-Definitionen}{end-Definitionen}
+\renewenviroment*{Name}[n]{begin-Definitionen}{end-Definitionen}
+@
diff --git a/support/tcltexed/hlp/ger/RCS/documentclass.txt,v b/support/tcltexed/hlp/ger/RCS/documentclass.txt,v
new file mode 100644
index 0000000000..f378bce85f
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/documentclass.txt,v
@@ -0,0 +1,58 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Grundform eines Dokumentes unter LaTeX
+############################################################
+\documentclass{Klasse} ::documentclass::
+\documentclass[Optionen]{Klasse}
+
+Bearbeitungsstil des Dokuments
+dieser LaTeX-Befehl ist unverzichtbar.
+auf ihn folgen weitere Deklarationen und mit
+\begin{document} ::document::
+ Text
+\end{document}
+der eigentliche Text.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Klasse
+ book
+ report
+ article
+ letter
+Optionen
+ 10pt (default) setzt Schriftgröße
+ 11pt "
+ 12pt "
+ twoside beidseitiger Druck
+ twocolumn zweispaltig
+ titlepage extra Seite fuer Tittel und Abstrakt
+ leqno linksbuendige Formelnummerierung
+ fleqn linkszentrierte abgesetzte Formeln
+ proc bei Sitzungsprotokollen
+ ifthen latex mit logischen Abfragen
+ a4paper A4 Blattformat
+############################################################
+latex 2.09 :
+\documentstyle[]{} ::documentstyle::
+@
diff --git a/support/tcltexed/hlp/ger/RCS/editor_hlp.txt,v b/support/tcltexed/hlp/ger/RCS/editor_hlp.txt,v
new file mode 100644
index 0000000000..f398043003
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/editor_hlp.txt,v
@@ -0,0 +1,236 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.22.33.50; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@############################################################
+#::editor_hlp::
+# Das Editorfenster
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Was ist ein Editorfenster ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unter einem Editorfenster verstehe ich Fenster in denen
+unter Tcltexed Texte bearbeitet werden. Jedes Editorfenster
+wird genau einem Text zugeordnet. Sind mehrere Editorfenster
+geöffnet sind zwei Attribute zu vergeben :
+ den Fokus
+ und das für das Hauptdokument
+-----
+Den Fokus besitzt das Editorfenster, das zuletzt im Vordergrund
+gewesen ist. Aktionen außerhalb der Editorfensters, wie zum
+Beispiel das Durchsuchen des Textes, erfolgt stets nur im
+Editorfenster das derzeit den Fokus besitzt. Den Fokus
+kann ein Fenster durch anklicken etc. erhalten.
+-----
+Ist ein Editorfenster als Hauptdokument deklariert, übernimmt
+es für alle anderen Fenster den Aufruf der externen Programme
+latex, xdvi, dvips und ghostview. Im Hauptdokument sollte daher
+immer ein ausführbarer LaTeX-Text sein, während andere
+Editorfenster vermeindlich nur einzubindende Texte enthalten
+können. Ist kein Editorfenster als Hauptdokument deklariert,
+verhaelt sich jedes Editorfenster dahingehend eigenständig.
+-----
+Das Fenster hat folgende Bestandtteile :
+ eine Menuleiste / Popupleiste
+ eine Buttonleiste (Button ~> Druckknopf)
+ und das Eingabefeld.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Funktionen der Buttonleiste
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Von links nach rechts folgen :
+ein "Bild", Save, Save As, latex, xdvi, dvips, ghostview, Syntax, Quit und
+zuletzt eine "Anzeige" Z.S. ?.?.
+-----
+ "Bild"
+Das Bild zeigt an welches Fenster gerade den Fokus hat, und welches,
+wenn überhaupt eines, als Hauptdokument deklariert wurde.
+Das Fenster mit dem Bild das Wellen darstellt ist das Fenster welches
+gerade den Fokus besitzt.
+Das Fenster mit dem farbigen Bild ist das Hauptdokument.
+Ein Editorfenster übernimmt die Funktion des Hauptdokumentes
+durch anklicken des Bildes. Abgestellt wird die Funktion durch
+einen Druck auf das dann farbige Bild.
+-----
+ Save
+Speichert den Text unter der zugeordneten Datei. Ist noch keine
+Datei zugordnet, so wird Save As ausgeführt.
+-----
+ Save As
+Ermöglicht das durchsuchen der Festplatte nach dem zuzuordnenden
+Dateinamen und speichert den Text unter diesem.
+-----
+ latex
+Führt zunächst Save für den aktuellen Text, und nur diesen, aus.
+Dann wird das Programm latex für die zugeordnete Datei ausgeführt.
+Ist einem Fenster das Hauptdokumentattribut vergeben worden, so
+wird dessen Datei stattdessen übergeben.
+latex erstellt eine Datei mit Endung dvi, die Fehlerausgabe
+wird in dem Hilfsfenster ausgegeben. (unix : Bricht latex nicht
+automatisch ab so muß dies von Hand mit der Tastenfolge "q"
+"Return" getan werden.)
+Um das Erstellen von Stichwortverzeichnissen mit den LaTeX-Befehlen
+\makeindex \index etc via dem Programm makeindex zu erleichtern,
+wird dieses Programm automatisch aufgerufen, falls eine entsprechend
+zu bearbeitende Datei (Name.idx) vorhanden ist.
+-----
+ xdvi
+Ruft die von latex zuletzt erstellte Datei mit einem Viewer
+für das dvi Format zur Ansicht auf. ( Du hier angucken können)
+Die Viewer aktualisieren ihre Ansicht, wenn die Datei neu erstellt
+wird.
+-----
+ dvips
+Wandelt die zugehörige dvi-Datei in das Druckerformat gs (ghostscript)
+um und speichert es in einer Datei mit entsprechend zu gs geänderten
+Dateiendung.
+-----
+ ghostview
+Dieses Programm ermöglicht dann die Ansicht des Ergebnisses mit dvips.
+-----
+ ispell
+Führt zunächst Save für den aktuellen Text, und nur diesen, aus.
+Dann wird das Programm ispell, ein Rechtschreibprüfprogramm, für
+die zugeordnete Datei ausgeführt und dessen Ausgabe ins aktuelle
+Fenster übernommen.
+-----
+ Syntax
+Syntax Highlightning, alle mit \ als LaTeX-Befehle erkenntlichen
+Textbereiche bekommen eine Textfarbe in Rot oder Grün, auskommentierte
+Textbereiche bekommen eine Textfarbe in Blau.
+Rot steht für nicht wiedererkannten LaTeX-Befehl,
+Grün für erkannten LaTeX-Befehl,
+Blau für auskommentierten Text.
+Auf Funktionstüchtigkeit wird dabei allerdings nicht geachtet. Zu
+den grün marktierten Befehlen gibt es zumeist Hilfen.
+(Siehe dazu auch Latex-Hilfen)
+-----
+ Quit
+Schließt das Editorfenster mit Rückfrage falls der Text verändert
+jedoch nicht gespeichert wurde.
+-----
+ "Anzeige"
+Wiedergabe der aktüllen Zeile und Spalte in der sich der Curser
+derzeit befindet. Die Anzahl der Zeilen ergibt sich aus der Anzahl
+der "Return"s im Text, nicht aus der der Umbrüche durch zu lange
+Zeilen. Der Button öffnet bei Betätigung ein Fenster mit dem per
+Eingabe die Curserposition verändern kann.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Funktionen der Menuleiste / Popupleiste
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Die Menuleiste existiert nur ab tcl/tk 8.x ist jedoch
+in Funktion der Popupleiste äquivalent.
+Mit Druck auf die rechte Maustaste erscheint die Popupleiste.
+Von oben nach unten (links nach rechts) :
+Undo, Cut, Copy, Paste, Clear, Block, + % und - %.
+-----
+ Undo
+Revidiert (hoffentlich) die letzte(n) am Text vorgenommene(n)
+Aktion(en). Allerdings werden aus Speicherplatzgründen ältere
+Aktionen vergessen.
+-----
+ Cut, Copy, Paste, Clear
+Bearbeitet den mit Maus selektierten Bereich, ratet mal was da
+passiert ... . Die Aktionen sind Windows und X-Window kompatibel.
+(theoretisch)
+-----
+ Test
+Durchsucht den ganzen Text nach Rechtschreibfehlern und ändert
+deren Farbe in einen Rotton um.
+-----
+ Nearly
+Erstellt eine Liste aller Wörter, die dem Word in dem sich der
+Curser befindet ähnlich sind. Und zeigt sie in einem Fenster.
+-----
+ Block
+Wandelt den selektierten Bereich in einen Blockbereich
+ala Borland um.
+-----
+ + %
+Fügt im selektierten Bereich vor jede Zeile ein % ein, und
+zwar nur wenn dort noch keines existiert.
+-> easy latex auskommentieren
+-----
+ - %
+Eliminiert im selektierten Bereich vor jeder Zeile ein %.
+Es muß dazu wirklich das erste Zeichen der Zeile sein.
+-----
+ ...
+Listet in einem Popup alle möglichen Ergänzung zu einem
+angefangene LaTeX-Befehl. Als zu erkennender Bereich gilt
+der vom letzten \ bis zur Curserposition. Um unnötig lange
+Popups zu vermeiden muß der Bereich länger als ein Buchstabe
+sein. Gelistet werden nur Befehle die unter Optionen aktiviert
+wurden(, wie bei der normalen automatischen Ergänzung auch).
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Funktionen des Eingabefeldes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+siehe dazu auch die Tastaturbelegung des Editorfensters.
+-----
+ Rechtschreibung
+Um ein Wort als bekannt neu zu registrieren, setzt man den
+Curser auf das schon als unbekannt markierte Wort und macht
+einen Doppelklick mit der linken Maustaste.
+-----
+Ergänzung bekannter LateX-Befehle und eigener Tcltexed-Synonyme.
+\fra ---> \frac{}{}
+\enumerate --->
+ \begin{enumerate}
+ \item
+ \end{enumerate}
+Ergänzung der Aufklammern.
+{ ---> {}
+$ ---> $$
+-----
+Textverdopplung bei Umgebungseingaben für \begin und \end
+nach Eingabe von :
+\beg --->
+ \begin{}
+ \end{}
+\bege --->
+ \begin{e}
+ \end{e}
+\begenum --->
+ \begin{enum}
+ \end{enum}
+-----
+Wird bei Vorhandensein eines selektierten Bereiches eine
+ein LaTeX-Befehl mit \ begonnen, so wird dieser Bereich nicht
+gelöscht sondern umklammert.
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d88 6
+d196 1
+a196 1
+gelöscht sondern umklammert.@
+
diff --git a/support/tcltexed/hlp/ger/RCS/editort_hlp.txt,v b/support/tcltexed/hlp/ger/RCS/editort_hlp.txt,v
new file mode 100644
index 0000000000..7e59a994b6
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/editort_hlp.txt,v
@@ -0,0 +1,141 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+#::editot_hlp::
+# Tastaturbelegung des Editorfensters
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Fuer Liebhaber von Borland etc Tastenkombinationen :
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block
+ <Control-k><b> Block Begin
+ <Control-k><k> Block End
+ <Control-k><c> Block Copy
+ <Control-k><m> Block Move
+ <Control-k><v> Block Move
+ <Control-k><y> Block Löschen
+ <Control-k><%> Block Auskommentieren
+ <Control-k><space> Block Auskommentierung aufheben
+Sonstige
+ <F1> Hilfe
+ <F2> Speichern
+ <F3> Datei öffnen
+ <F4> Setzt Textcurser in Sichtbereich
+ <F9> Führe latex aus
+ <Control-k><x> Speichern
+ <Control-k><h> Hilfe
+ <Control-y> Zeile Loeschen
+ <Alt-BackSpace> Undo
+ <Shift-Delete> Cut
+ <Control-Insert> Copy
+ <Shift-Insert> Paste
+ <Control-Delete> Clear
+ <Control-l> Erneute Suche
+ <Alt-x> Beendet dieses Programm vollständig
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Einige von mir :
+ <Control-w> Listet möglicher Ergänzungen eines
+ LaTeX-Befehles.
+ <Control-d> Wenn der Curser sich in einem bekannten
+ LaTeX-Befehl befindet wird der nächste folgende
+ selbe LaTeX-Befehl im Text aufgesucht. Befindet sich
+ der Curser nicht in einem bekannten LaTeX-Befehl
+ wird der nächste Eintrag \section aufgesucht.
+ <Control-u> Wie <Control-d> nur wird im Text vor dem
+ Curser gesucht.
+ Liegt der Curser innerhalb eines als falsch geschrieben
+ markierten Wortes, so bewirkt ein doppelter Tastendruck
+ der linken Maustaste die Registrierung dieses Wortes
+ als bekannt.
+ <Control-b> Zeilenumbruch für einen Absatz
+ <Alt-b> Zeilenumbruch für eine Zeile
+ <Control-B> Umkehr von <Control-b>
+ <Alt-B> Umkehr von <Alt-b>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Da Block, Selektion und Clipboard an sich
+unabhängig voneinander sind :
+ <Control-k><p> Einfügen aus Clipboard
+ <Control-k><g> Kopieren in Clipboard
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Windows - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Maus mit rechter Taste öffnet ein Menu mit den Punkten
+ Cut Textbereich ausschneiden in Clipboard
+ Copy Textbereich kopieren in Clipboard
+ Paste Einfügen aus Clipboard
+ Clear Textbereich löschen
+ Block Textbereich zu Block umformatieren
+ + % Textbereich auskommentieren
+ - % Auskommentierung aufheben
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Motif - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Maus mit linker Taste (1)
+ einfach Selektion aufheben
+ zweifach Das angeklickte Wort selektieren
+ dreifach Die angeklickte Zeile selektieren
+ Shift-einfach Bereich der Selektion verändern
+ Shift-zweifach Selektion auf ganze Worte ergänzen
+ Shift-dreifach Selektion auf ganze Zeilen ergänzen
+ Control Curser umsetzen ohne Verlust der Selektion
+Cursertasten (CT)
+ <Shift-CT> Bereich selektieren (Buchstaben/Zeilen)
+ <Control-CT> Curser um ganze Worte/Absätze verschieben
+ <Shift-Control-CT> Bereich selektieren (Worte/Absätze)
+[Up,Down] Seite rauf runter (ST)
+ <Shift-ST> Bereich selektieren (Seiten)
+ (<Control-ST> Seitenscrolling horizontal)
+[Home,End] Zeile Anfang Ende (ZT)
+ <Shift-ZT> Bereich selektieren (bis Zeileanfang/-ende)
+ <Control-ZT> Curser an Textanfang/-Ende verschieben
+ <Shift-Control-ZT> Bereich selektieren (bis Textanfang/-ende)
+sonstige
+ <Shift-slash> Gesamten Text selektieren
+ <Insert> Selektion einfügen
+
+Die rechte Maustaste ist anders als üblich belegt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+emacs-like
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ <Control-a> = Home
+ <Control-b> = Left
+ (<Control-d> wurde umbesetzt)
+ <Control-e> = End
+ <Control-f> = Right
+ (<Control-k> wurde umbesetzt)
+ <Control-n> = Up
+ <Control-o> = Return+Left
+ <Control-p> = Down
+ <Control-t>
+ <Control-v> = Page up
+ <Meta-b>
+ <Meta-d>
+ <Meta-f>
+ <Meta-less> Curser an Text Anfang
+ <Meta-greater> Curser an Text Anfang
+ <Meta-Backspace>
+ <Meta-Delete>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@
diff --git a/support/tcltexed/hlp/ger/RCS/epsf.txt,v b/support/tcltexed/hlp/ger/RCS/epsf.txt,v
new file mode 100644
index 0000000000..7fb066350e
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/epsf.txt,v
@@ -0,0 +1,36 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Packet epsf
+############################################################
+\usepackage{epsf} ::epsf::
+\epsfxsize ::epsfxsize::
+\epsfbox{} ::epsfbox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Die genaue Bedeutung der Befehle ist mir unbekannt, es
+handelt sich hier um eine Umgebung mittels der man Bilder
+im Format eps einbinden kann.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Ich empfehle aber dafür auf das latex2e Packet graphicx
+zurückzugreifen. Ich habe gute Erfahrungen mit ihm gemacht.@
diff --git a/support/tcltexed/hlp/ger/RCS/format.txt,v b/support/tcltexed/hlp/ger/RCS/format.txt,v
new file mode 100644
index 0000000000..76c4d30696
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/format.txt,v
@@ -0,0 +1,223 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Schriftgrössen
+############################################################
+In Abfolge :
+\tiny ::tiny::
+\scriptsize ::scriptsize::
+\footnotesize ::footnotesize::
+\small ::small::
+\normalsize ::normalsize::
+\large ::large::
+\Large ::Large::
+\LARGE ::LARGE::
+\huge ::huge::
+\Huge ::Huge::
+
+############################################################
+Schriftarten
+############################################################
+latex2e :
+\bfseries Boldface Series ::bfseries::
+\mdseries Standart Series ::mdseries::
+\itshape Italic Shape ::itshape::
+\upshape Standart Shape ::upshape::
+\scshape SMALL CAPS Shape ::scshape::
+\slshape Slanted Shape ::slshape::
+\rmfamily Roman Family ::rmfamily::
+\sffamily Sans Serif Family ::sffamily::
+\ttfamily Typewriter Family ::ttfamily::
+latex 2.0.9 :
+\bf Boldface ::bf::
+\it Italic ::it::
+\rm Roman ::rm::
+\em Emphasize ::em::
+\sc SMALL CAPS ::sc::
+\sl Slanted ::sl::
+\sf Sans Serif ::sf::
+\tt Typewriter ::tt::
+############################################################
+Schriftorientierung
+############################################################
+Umgebung center ::center::
+\begin{center}
+ Text
+\end{center}
+
+Zentriert den eingeschlossen Text
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\centering ::centering::
+
+Zentriert den folgenden Text
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung quote ::quote::
+\begin{quote}
+ Text
+\end{quote}
+
+Text wird links und rechts eingerückt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung quotation ::quotation::
+\begin{quotation}
+ Text
+\end{quotation}
+
+Text wird links und rechts eingerückt, ein neuer
+Absatz begonnen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung flushleft ::flushleft::
+\begin{flushleft}
+ Text
+\end{flushleft}
+
+Text, links zentriert
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung flushright ::flushright::
+\begin{flushright}
+ Text
+\end{flushright}
+
+Text, rechts zentriert
+############################################################
+Schriftsilben
+############################################################
+\dicretionary{vor}{nach}{ohne} ::dicretionary::
+
+Steuert Zeilenumbruch in Wörtern, wenn sich die Buchstaben
+ändern.
+"ohne" gibt den Bereich ohne Umbruch wieder,
+"vor" den Anfang bei Umbruch,
+"nach" das Ende bei Umbruch an dieser Stelle.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\hypentation{Bei-spiel Hal-lo} ::hypentation::
+
+Eine Liste von Trennungshilfen, die für den restlichen Text
+beachtet werden.
+############################################################
+Seite
+############################################################
+\clearpage ::clearpage::
+
+Beendet laufende Seite, gleitende Objekte folgen auf eigenen
+Seiten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\cleardoublepage ::cleardoublepage::
+
+" , fuer Doppelseiten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\newpage ::newpage::
+
+Erzwingt eine neue Seite.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung samepage ::samepage::
+
+Verbietet den Seitenumbruch außerhalb der Absätze.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\pagebreak[n] ::pagebreak::
+
+Empfehlung hier eine neue Seite zu beginnen.
+n (0-4) entspricht der Dringlichkeit.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\nopagebreak[n] ::nopagebreak::
+
+Empfehlung hier keine neue Seite zu beginnen.
+n (0-4) entspricht der Dringlichkeit.
+############################################################
+Zeile
+############################################################
+\linebreak[n] ::linebreak::
+
+Empfehlung hier umzubrechen.
+n (0-4) entspricht der Dringlichkeit.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\nolinebreak[n] ::nolinebreak::
+
+Empfehlung hier nicht umzubrechen.
+n (0-4) entspricht der Dringlichkeit.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sloppy ::sloppy::
+oder als Umgebung sloppypar
+
+Um die Zeilen stets gleichlang zu halten wird in Wörter am
+Zeilenende gebrochen, um lange Abstaende zwischen Wörtern
+zu vermeiden.
+\sloppy bewirkt ein schlampigeres Umgehen mit diesem
+Vorgang, man riskiert grössere Abstände zwischen den Worten
+im diese ganz lassen zu koennen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\fussy ::fussy::
+oder als Umgebung fussypar
+
+Gegenteil zu \sloppy (default)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+############################################################
+Leerräume steuern,füllen
+############################################################
+\dotfill ::dotfill::
+
+Füllt eine Bereich horizontal mit Punkten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\hrulefill ::hrulefill::
+
+Füllt einen Bereich horizontal mit einem Strich.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\fill ::fill::
+
+Die Abstände zwischen Absätzen werden bei LaTeX automatisch
+je nach Textmenge und Leerraum auf der Seite gesetzt.
+Mit diesem Befehl wird erzwungen, das hier der überschüssige
+Raum eingefügt werden soll.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stretch{Dezimalzahl} ::strech::
+
+Eine Länge als vielfaches von \fill.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\hspace{Länge} ::hspace::
+\hspace*{Länge}
+
+Fuegt horizontalen Abstand ein.
+\hfill entspricht \hspace*{\fill}.
+* wird am Textanfang/-ende nicht ignoriert.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\vspace{Länge} ::vspace::
+
+Fuegt vertikalen Abstand ein.
+\vfill entspricht \vspace*{\fill}.
+* wird am Textanfang/-ende nicht ignoriert.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\indent ::indent::
+
+Die erste Zeile des nächsten Absatzes wird eingerückt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\noindent ::noindent::
+
+Die erste Zeile des nächsten Absatzes wird nicht eingerückt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\quad ::quad::qquad::
+\qquad (entspricht \quad\quad)
+
+Horizontaler absoluter Abstand von 1em
+@
diff --git a/support/tcltexed/hlp/ger/RCS/gleit.txt,v b/support/tcltexed/hlp/ger/RCS/gleit.txt,v
new file mode 100644
index 0000000000..37364850e7
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/gleit.txt,v
@@ -0,0 +1,72 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Gleitende Tabellen und Bilder ::figure::table::
+############################################################
+\begin{figure}[pos] Bild \end{figure}
+\begin{figure*}[pos] Bild \end{figure*}
+\begin{table}[pos] Tabelle \end{table}
+\begin{table*}[pos] Tabelle \end{table*}
+
+
+(mit *) Nur bei zweispaltigen Dokumenten, beide Spalten
+werden zur Verfügung gestellt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Parameter pos
+ h here (im Text)
+ t top (Seitenbeginn)
+ b bottom (Seitenende)
+ p page (eigene Seite mit allen Tabellen, etc.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Stilparameter:
+ Begrenzungsanzahlen für Gleitende Objekte :
+ topnummer
+ bottomnumber
+ totalnumber
+ dbltopnumber (doublepage)
+Zu setzen via \setcounter{}{}
+::topfraction::bottomfraction::textfraction::
+::dbtopfraction::floatpagefraction::dbfloatpagefraction::
+Bruchteile (0.0-1.0), min. max. gleitender Objekte auf
+einer Seite :
+ \topfraction max am Seitenanfang
+ \bottomfraction max am Seitenende
+ \textfraction max im Text
+ \dbtopfraction max am Seitenanfang , doublepage
+ \floatpagefraction min einer gesonderten Seite
+ \dbfloatpagefraction " , auf doublepage
+Zu setzen via \renewcommand{}{}
+::floatsep::textfloatsep::intextsep::dbfloatsep::
+::dbtextfloatsep::
+Abstände zwischen :
+ \floatsep Objekten
+ \textfloatsep Text und Objekt am Seitenanfang/ende
+ \intextsep Objekt und Textrand, im Text
+ \dbfloatsep entspr. bei doublepage
+ \dbtextfloatsep "
+Zu setzen via \setcounter{}{}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\caption[Kurzform fuer Verzeichnis]{Text} ::caption::
+
+Erzeugt Überschrift bzw Unterschrift@
diff --git a/support/tcltexed/hlp/ger/RCS/gpl_hlp.txt,v b/support/tcltexed/hlp/ger/RCS/gpl_hlp.txt,v
new file mode 100644
index 0000000000..98ba09dc19
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/gpl_hlp.txt,v
@@ -0,0 +1,449 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@GNU General Public License - GNU Project - Free Software Foundation (FSF)
+::gpl_hlp::
+Table of Contents
+
+GNU GENERAL PUBLIC LICENSE
+
+Preamble
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+How to Apply These Terms to Your New Programs
+
+GNU GENERAL PUBLIC LICENSE | Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0.
+ This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+
+1.
+ You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+
+2.
+ You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+
+2.a)
+ You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+
+2.b)
+ You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+
+2.c)
+ If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+
+3.
+ You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+
+3.a)
+ Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+
+3.b)
+ Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+
+3.c)
+ Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+
+4.
+ You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+
+5.
+ You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+
+6.
+ Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+
+7.
+ If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+
+8.
+ If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+
+9.
+ The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+
+10.
+ If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+NO WARRANTY
+
+
+11.
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+
+12.
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+
+END OF TERMS AND CONDITIONS
+
+
+
+How to Apply These Terms to Your New Programs
+
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+- one line to give the program's name and an idea of what it does. -
+Copyright (C) 19xx - name of author -
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+Gnomovision version 69, Copyright (C) 19xx - name of author -
+Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
+type `show w'. This is free software, and you are welcome
+to redistribute it under certain conditions; type `show c'
+for details.
+
+
+
+The hypothetical commands `show w' and `show c' should show
+the appropriate parts of the General Public License. Of course, the
+commands you use may be called something other than `show w' and
+`show c'; they could even be mouse-clicks or menu items--whatever
+suits your program.
+
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+
+Yoyodyne, Inc., hereby disclaims all copyright
+interest in the program `Gnomovision'
+(which makes passes at compilers) written
+by James Hacker.
+
+signature of Ty Coon, 1 April 1989
+Ty Coon, President of Vice
+
+
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
+
+
+
+A copy of
+http://www.gnu.org/copyleft/gpl.html
+
+GNU's home page
+http://www.gnu.org/home.html
+
+FSF &amp; GNU inquiries &amp; questions to
+gnu@@gnu.org"
+Other ways to contact
+http://www.gnu.org/home.html#ContactInfo
+
+Copyright notice above.
+Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111, USA
+
+Updated:
+16 Feb 1998 tower
+@
diff --git a/support/tcltexed/hlp/ger/RCS/graphics.txt,v b/support/tcltexed/hlp/ger/RCS/graphics.txt,v
new file mode 100644
index 0000000000..ec62eb4d7c
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/graphics.txt,v
@@ -0,0 +1,94 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Einarbeitung grafischer Elemente ::grafics::
+############################################################
+Package graphics
+\usepackage[Treiber]{graphics}
+
+siehe auch in grfguide.dvi wenn vorhanden
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Treiber
+ dvips ps eps
+ xdvi ps eps
+ dviwin ps eps pcx bmp
+############################################################
+Grafik einbinden ::includegraphics::
+############################################################
+\includegraphics{Bild}
+\includegraphics[Breite,Höhe]{Bild}
+\includegraphics*[Breite,Höhe]{Bild}
+
+Baut Bild in den Kontext ein. * bewirkt das Ausschneiden des
+benützten Bildbereiches. Anderenfalls ragt das Bild über
+den restlichen Bereich hinaus. Empfehlenswert ist es diesen
+Befehl mit der figure Umgebung in den Text einzugliedern.
+Einseitig umflossenen Text kann man mit dem latex-packet picins
+erreichen, oder mit "\parbox"en erzwingen.
+############################################################
+Objektmanipulation
+############################################################
+\scalebox{Faktor}{Text etc} ::scalebox::
+Textskalierung
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\resizebox{Breite}{H÷he}{Text etc} ::resizebox::
+Anderes Format
+Breite = ! -> Breite skaliert
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\rotatebox{GradWinkel}{Text etc} ::rotatebox::
+Drehung der Ausgabe
+############################################################
+generelle Deklerationen, etc.
+############################################################
+\ExecuteOptions{OPTION} ::ExecuteOptions::
+
+Setzen von Optionen. Dazu gehören einerseits die Treiber
+andererseits :
+ draft Setzt Rahmen anstatt der Bilder ein -> schnellerer
+ Aufbau des Bildes
+ final Gegenteil zu draft
+ hiderotate Versteckt rotierte Objekte
+ hidescale Versteckt scalierte Objekte
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\graphicspath{path-liste} ::graphicspath::
+
+Setzt den Suchpfad fuer graphics-Objekte. Ein Beispiel für
+unix :
+\graphicspath{{/home/mys/}{pictures}}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsExtensions{ps,eps,gif}
+::DeclareGraphicsExtentions::
+Ergaenzt Bildnamen um diese Endungen um zu den korrekten
+Dateinamen zu erhalten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsRule{ext}{type}{readfile}{command}
+::DeclareGraphicsRule::
+Dateien mit Endung ext werden als Dateien des Types type verstanden
+(z.B. als eps ps gif ..) aus der Datei mit Endung readfile werden
+gegebenenfalls die Boundigbox - Werte eingelesen, und vor Einbau
+wird command ausgefuehrt.
+z.B.
+\DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{´zcat #1}
+ermöglicht das verwenden gepackter Bilder.
+@
diff --git a/support/tcltexed/hlp/ger/RCS/graphicx.txt,v b/support/tcltexed/hlp/ger/RCS/graphicx.txt,v
new file mode 100644
index 0000000000..f780870221
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/graphicx.txt,v
@@ -0,0 +1,115 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Einarbeitung grafischer Elemente ::graficx::
+############################################################
+Package graphicx
+\usepackage[Treiber]{graphicx}
+
+siehe auch in grfguide.dvi wenn vorhanden
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Treiber
+ dvips ps eps
+ xdvi ps eps
+ dviwin ps eps pcx bmp
+############################################################
+Grafik einbinden ::includegraphics::
+############################################################
+\includegraphics[Optionslist]{Bild}
+
+Komma separierte Optionen Liste z.B width=1,height=1
+Options :
+ bb Bonding Box,z.B ( = 1 1 100 200)
+ viewport wie bb relativ zur vorhandenen Bonding Box
+ angle Drehwinkel
+ width Skalierung auf diese Breite
+ height Skalierung auf diese Höhe
+ totalheight Skalierung unter Berücksichtigung einer
+ Drehung
+ keepaspectratio Beibehalten der orginalen Seiten-
+ verhältnisse (true,false)
+ scale Skalierung
+ clip Ausschneiden des Bereiches ?
+ type Datentyp der verwandten Datei (z.B. eps)
+gefolgt von type :
+ ext Endung der Datei (sofern noch nicht vorgegeben)
+ read Endung der Datei mit der Bondig Box Information
+ command Auszuführender Befehl
+############################################################
+Objektmanipulation
+############################################################
+\scalebox{Faktor}{Text etc} ::scalebox::
+Textskalierung
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\resizebox{Breite}{H÷he}{Text etc} ::resizebox::
+Anderes Format
+Breite = ! -> Breite skaliert
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\rotatebox[Optionslist]{Winkel}{Text etc} ::rotatebox::
+
+Drehung der Ausgabe
+ origin Rotationszentrum beschrieben durch ein oder zwei
+ der folgenden Zeichen
+ c bildzentriert
+ r right
+ l left
+ b buttom
+ B baseline
+ x x-Koordinate des Rot.
+ y y-Koordinate des Rot.
+ units Was ist zu 360 Grad äquivalent ?
+############################################################
+generelle Deklerationen, etc.
+############################################################
+\ExecuteOptions{OPTION} ::ExecuteOptions::
+
+Setzen von Optionen. Dazu gehören einerseits die Treiber
+andererseits :
+ draft Setzt Rahmen anstatt der Bilder ein -> schnellerer
+ Aufbau des Bildes
+ final Gegenteil zu draft
+ hiderotate Versteckt rotierte Objekte
+ hidescale Versteckt scalierte Objekte
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\graphicspath{path-liste} ::graphicspath::
+
+Setzt den Suchpfad fuer graphics-Objekte. Ein Beispiel fuer
+unix :
+\graphicspath{{/home/mys/}{pictures}}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsExtensions{ps,eps,gif}
+::DeclareGraphicsExtensions::
+Ergänzt Bildnamen um diese Endungen um zu den korrekten
+Dateinamen zu erhalten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsRule{ext}{type}{readfile}{command}
+::DeclareGraphicsRule::
+Dateien mit Endung ext werden als Dateien des Types type verstanden
+(z.B. als eps ps gif ..) aus der Datei mit Endung readfile werden
+gegebenenfalls die Boundigbox - Werte eingelesen, und vor Einbau
+wird command ausgefuehrt.
+z.B.
+\DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{´zcat #1}
+ermöglicht das verwenden gepackter Bilder.
+@
diff --git a/support/tcltexed/hlp/ger/RCS/if.txt,v b/support/tcltexed/hlp/ger/RCS/if.txt,v
new file mode 100644
index 0000000000..a15e28b49f
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/if.txt,v
@@ -0,0 +1,47 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Bedingungen ::ifthenelse::whiledo::equal::not::and::or::
+############################################################
+\ifthenelse{test}{wenn_zweig}{sonstzweig}
+\whiledo{test}{schleifentext}
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Abfragebedingungen:
+1. \equal{String1}{String2}
+Ist String1 gleich String2 so ist das Ergebnis wahr.
+(Für Zeichenketten)
+2. n1 < n2
+ n1 = n2
+ n1 > n2
+(Für Zahlen)
+3. \{ test \}
+Klammern für Teiltest
+3.a \not test
+3.b \and test
+3.d \or test
+Als Verknüpfungen von Teiltests
+
+@
diff --git a/support/tcltexed/hlp/ger/RCS/index.txt,v b/support/tcltexed/hlp/ger/RCS/index.txt,v
new file mode 100644
index 0000000000..225ba7a153
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/index.txt,v
@@ -0,0 +1,148 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Überschriften
+############################################################
+Folgende Befehle erzeugen Überschriften in folgender
+Hierarchie : ::part::chapter::section::subsection::
+::subsubsection::paragraph::subparagraph::
+\part{Text} Einteilung eines Buches
+\chapter{Text} Kapitel
+\section{Text}
+\subsection{Text}
+\subsubsection{Text}
+\paragraph{Text}
+\subparagraph{Text}
+
+Text entspricht der jeweiligen Überschrift.
+Wird ein * hinter den Befehl gesetzt so wird der entsprechende
+Eintrag nicht ins Inhaltsverzeichnis uebernommen.
+############################################################
+Aufzaehlungen
+############################################################
+\begin{enumerate} ::enumerate::item::
+ \item Text
+\end{enumerate}
+
+Zaehlt die Eintraege durch.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{itemize} ::itemize::
+ \item Text
+\end{itemize}
+
+Stellt ein Symbol vor jeden Eintrag.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{description} ::discription::
+ \item[Kurzform] Text
+\end{description}
+
+Stellt die Kurzform fett gedruckt vor den jeweiligen Eintrag
+############################################################
+Anhang
+############################################################
+Umgebung :
+\begin{appendix} ::appendix::
+\end{appendix}
+
+Erzeugt einen Bereich der mit allen seinen Kapiteln etc.
+als Anhang interpretiert wird.
+############################################################
+Stichwortverzeichnis
+############################################################
+Umgebung :
+\begin{theindex} ::theindex::
+ \item haupt_eintrag
+ \subitem eingerückter sub_eintrag ::subitem::subsubitem::
+ \subsubitem noch weiter eingerueckt der subsub_eintrag
+ \indexspace % erzeugt Leerzeile ::indexspace::
+\end{theindex}
+
+Dient der Erstellung von Inhaltsverzeichnissen.
+Dies muß immer noch von Hand geschehen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Eine automatische Indexerstellung erreicht man folgender Weise :
+Package :
+\usepackage{makeidx} ::makeidx::
+Im Vorspann des Dokumentes trägt man den Befehl
+\makeindex ::makeindex::
+ein. Im flüssigen Text folgen dann Einträge der Form
+\index{haupt_eintrag}
+ setzt einen Haupteintrag
+\index{haupt_eintrag!sub_eintrag}
+ setzt unter Haupteintrag einen untergeordneten
+\index{haupt_eintrag!sub_eintrag!subsub_eintrag}
+ ...
+\index{haupt_eintrag|(}
+Weiterer Text des Dokuments
+\index{haupt_eintrag|)}
+ bewirkt eine von n bis m Angabe, statt der sonst
+ üblichen Seitenangabe.
+\index{haupt_eintrag|see{anderer Haupteintrag}}
+ erstellt einen Querverweis.
+\index{haupt_eintrag|uu}
+ erzeugt eine unterstrichene Seitenzahl.
+Diese Einträge werden in der Datei mit Endung idx gespeichert.
+Mit Aufruf des Programmes "makeindex" wird dann das
+Verzeichnis erstellt. (makeindex text.idx)
+(tcltexed startet makeindex automatisch bei Aufruf von latex,
+ das Resultat wird jedoch erst beim zweiten Durchgang
+berücksichtigt)
+
+An der Stelle an des Befehls
+\printindex ::printindex::
+im Dokument wird dann beim nächsten mal das
+Stichwortverzeichnis eingefügt.
+
+############################################################
+Erstellung und Manipulation der gängigen Verzeichnisse
+############################################################
+
+Syntax :
+\tableofcontents ::tableofcontents::
+
+Erstellt das Inhaltverzeichnis
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\listoffigures ::listofffigures::
+
+Erstellt Liste aller figures
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\listoftables ::listoftables::
+
+Erstellt Liste aller table
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::addcontentsline::
+\addcontentsline{Art}{Format}{Text}
+
+Schiebt zusätzlichen Eintrag ein.
+
+Art
+ toc für "table of contents"
+ lof für "list of figures"
+ lot für "list of tables"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::addtocontents::
+ \addtocontents{Art}{Text}
+@
diff --git a/support/tcltexed/hlp/ger/RCS/input.txt,v b/support/tcltexed/hlp/ger/RCS/input.txt,v
new file mode 100644
index 0000000000..db3ee79c33
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/input.txt,v
@@ -0,0 +1,61 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Dateien einbinden
+############################################################
+\input{file} ::input::
+
+Fügt 1:1 in Text ein vor Compilierung
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\include{file} ::include::
+
+Wird getrennt abgearbeitet, und dann eingefügt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\includeonly{file1,file2,...,filen} ::includeonly::
+
+Nur files dieser Liste werden wirklich eingefügt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stepcounter{Name} ::stepcounter::
+
+Erhöht den Wert von Name um eins
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\value{Name} ::value::
+
+Gibt den Wert von
+############################################################
+Bildschirm/Kommandozeile
+############################################################
+\typeout{Nachricht} ::typeout::
+
+Gibt beim Compilieren die Nachricht aus.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\typein{Nachricht} ::typein::
+
+Fügt an der Stelle des Auftauchens, nach Ausgabe der
+Nachricht, den eingegeben Text ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\typein[\Befehl]{Nachricht}
+
+ " , aber setzt Befehl auf den eingegeben Text.
+@
diff --git a/support/tcltexed/hlp/ger/RCS/latexbox.txt,v b/support/tcltexed/hlp/ger/RCS/latexbox.txt,v
new file mode 100644
index 0000000000..55f0970aa8
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/latexbox.txt,v
@@ -0,0 +1,82 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Boxen / Rahmen
+############################################################
+Übergabeparameter pos :
+ t top
+ b bottom
+ l left
+ r right
+Doppelnennungen sind zum teil möglich.
+############################################################
+unter latex allgemein :
+
+Identisch wie unter Umgebung picture, wenn man die
+Koordinatenangaben nebst Klammern weg läßt
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\rule{Breite}{Hoehe}{Text} ::rule::
+\rule[lift]{Breite}{Hoehe}{Text}
+
+Schwarzer Balken um lift über der Grundlinie mit (Breite.Höhe)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung minipage ::minipage::
+\begin{minipage}[pos]{Breite}
+\end{minipage}
+oder
+\parbox[pos]{Breite}{Text} ::parbox::
+
+Absatzboxen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Parameter
+::fboxrule::fboxsep::
+\fboxrule Breite der Rahmenlinien
+\fboxsep Leerraum zwischen Rahmen und Text
+############################################################
+Boxen / Rahmen unter der Umgebung picture
+(siehe auch unter picture)
+############################################################
+\makebox(x,y)[pos]{Text} ::makebox::
+ohne Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\framebox(x,y)[pos]{Text} ::framebox::
+mit durchgezogenem Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\dashbox{Strichlänge}(x,y)[pos]{Text} ::dashbox::
+mit gestricheltem Rahmen,
+
+############################################################
+Bildkompositionen im Arbeitsspeicher unter der Umgebung picture
+############################################################
+Erstellt neuen Namen fuer Bildteil
+\newsavebox{\Name} ::newsavebox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\savebox{\Name}(x,y)[pos]{Text} ::savebox::
+Erstellt neue Komposition unter \Name mit Breite x ,Hoehe y und
+Ansatzpunkt pos
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\usebox{\Name} ::usebox::
+Nutzt erstellte Kompositionen
+@
diff --git a/support/tcltexed/hlp/ger/RCS/math.txt,v b/support/tcltexed/hlp/ger/RCS/math.txt,v
new file mode 100644
index 0000000000..f7f43af831
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/math.txt,v
@@ -0,0 +1,182 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Mathematische Umgebung
+############################################################
+\begin{math} ::math::
+ ...
+\end{math}
+
+oder kürzer
+$ ... $ ::$::
+
+Formeln flüssig im Text.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{displaymath} ::displaymath::
+ ...
+\end{displaymath}
+
+oder kuerzer
+\[ ... \] ::\[::
+::\]::
+
+Formeln abgesetzt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{equation} ::equation::
+\end{equation}
+
+Formeln durchnummeriert.
+############################################################
+Mathematische Befehle
+############################################################
+{Teil_1 \atop Teil_2} ::atop::
+
+Setzt Teil_1 ueber Teil_2.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+{Teil_1 \choose Teil_2} ::choose::
+
+Setzt Teil_1 über Teil_2 und klammert das Ergebnis ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Mit \nolimits wird bei folgenden Befehlen, dass Dahinterstellen
+der Grenzen im $$-Modus unterdrückt : ::nolimits::
+\sum Summenzeichen ::sum::
+\int Integralzeichen ::int::
+\oint Kreisintegralzeichen ::oint::
+\prod Produktzeichen ::prod::
+
+\coprod ::coprod::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\frac{Zähler}{Nenner} ::frac::
+
+Bruch
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sqrt{} ::sqrt::
+\sqrt[n]{}
+
+Quadrat - bzw n.te - wurzel von ...
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\nonumber ::nonumber::
+
+Stellt die Durchnummerierung aller Gleichungen ab.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\left? \right? ::left::right::
+mit ? aus "" "(" ")" "[" "]" "|" "|" "\{" "\}"
+
+Klammert einen Bereich einer Gleichung und passt sich in
+der Grösse an.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stackrel{oben}{unten} ::stackrel::
+
+Schiebt verkleinert "oben" über "unten".
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\pmod{a+b} ::pmod::
+
+erzeugt : (mod a + b)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\text{ ... } ::text::
+
+normaler Text eingeschoben in mathematischen Formeln
+############################################################
+nur mit Bildern :
+############################################################
+griechisches Alphabet :
+
+\alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta
+\theta \vartheta \iota \kappa \lambda \mu \nu \xi \pi \varpi
+\rho \varrho \sigma \varsigma \tau \upsilon \phi \varphi \chi
+\psi \omega
+\Gamma \Delta \Theta \Lambda \Xi \Pi \Sigma \Upsilon \Phi
+\Omega
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Punkt(e) vertikal horizontal ..
+
+\cdot \vdots \ldots
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Pfeile :
+
+\leftarrow \rightarrow \uparrow \downarrow
+\leftrightarrow \updownarrow
+\leftharpoonup \rightharpoonup
+\leftharpoondown \rightharpoondown \rightleftharpoons
+\hookleftarrow \hookrightarrow
+\mapsto
+\nwarrow \nearrow \swarrow \searrow
+\longleftarrow \longrightarrow \longleftrightarrow
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Doppelte Pfeile :
+
+\Longleftrightarrow
+\Leftarrow \Rightarrow \Uparrow \Downarrow
+\Longleftarrow \Longrightarrow
+\Leftrightarrow \Updownarrow
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Bekannte Funktionen :
+
+\arccos \arcsin \arctan \arg \cos \cosh \cot \coth \csc \deg
+\det \dim \exp \gcd \hom \inf \ker \lg \lim \liminf \limsub
+\ln \log \max \min \Pr \sec \sin \sinh \sup \tan \tanh
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\imath \jmath
+
+fuer Vektoren gedacht um sich den Punkt unter dem
+Vektorpfeil zu sparen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+haefig genutzt :
+
+\pm \mp plus/minus minus/plus
+\hbar Physiker lieben h-quer
+\nabla Nabla
+\partial Bei partiellen Differentialen
+\prime Ableitungsstrich (?)
+\Re Realteil
+\Im Imaginaerteil
+\infty Unendlichzeichen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Diverse Striche und Klammern ...
+ \hat{} \breve{} \grave{} \bar{} \dot{}
+ \check{} \acute{} \tilde{} \vec{} \ddot{}
+ \overline{} \overbrace{} \widehat{}
+ \underline{} \underbrace{} \widetilde{}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+\times \otimes
+\div \ast \dagger \ddagger \amalg \cap \cup
+\uplus \sqcap \sqcup \vee \wedge \setminus \wr \circ \bullet
+\oslash \odot
+\bigcirc \bigtriangleup \bigtriangledown
+\oplus \ominus
+
+\le \ge \models \ll \gg \neq \subset \supset \doteq
+\subseteq \supseteq \approx \sqsubseteq \sqsupseteq \cong
+\in \ni \equiv \vdash \dashv \perp \smile \frown \parallel
+\prec \succ \sim \preceq \succeq \simeq \asymp \bowtie \mid
+
+
+\aleph \wp
+
+\ell \sonder_strich
+\top \bot \surd \neg \exists \forall \emptyset
+\natural \sharp \flat \angle \backslash \clubsuit \diamondsuit \spadesuit \heartsuit \triangle \mod
+
+@
diff --git a/support/tcltexed/hlp/ger/RCS/notiz.txt,v b/support/tcltexed/hlp/ger/RCS/notiz.txt,v
new file mode 100644
index 0000000000..66bc8866fb
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/notiz.txt,v
@@ -0,0 +1,56 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Fußnoten
+############################################################
+\footnote{Text} ::footnote::
+\footnote[Nummer]{Text}
+
+Im flüssigen Text erscheint eine Nummer, unter dem Text
+die Fußnote. Mit angegebener Nummer muß das Mitzählen des
+Counters via \addtocounter{footnote}{Anzahl} selbst nachgeholt
+werden.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\footnoterule ::footnoterule::
+
+Linie zwischen Fußnote und Seitentext.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\footnotemark ::footnotemark::
+\footnotetext{Text} ::footnotetext::
+\footnotemark[Nummer]
+\footnotetext[Nummer]{Text}
+
+Setzt Marke in Tabellen, Boxen etc. .
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Stilparameter : ::footnotesep::
+\footnotesep vert. Abstand Fußnoten
+############################################################
+Randnotiz
+############################################################
+\marginpar{Text} ::marginpar::
+
+Text am Seitenrand
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Parameter sind extra als Seitenparameter beschrieben.
+@
diff --git a/support/tcltexed/hlp/ger/RCS/pagenumbering.txt,v b/support/tcltexed/hlp/ger/RCS/pagenumbering.txt,v
new file mode 100644
index 0000000000..e173d8c7b5
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/pagenumbering.txt,v
@@ -0,0 +1,34 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Syntax :
+\pagenumbering{num_stil} ::pagenumbering::
+
+Einstellung des Stils der Seitennummerierung.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+num_stil
+ arabic (default)
+ roman roemisch klein
+ Roman roemisch gross
+ alph Alphabet klein
+ Alph Alphabet gross@
diff --git a/support/tcltexed/hlp/ger/RCS/pagestyle.txt,v b/support/tcltexed/hlp/ger/RCS/pagestyle.txt,v
new file mode 100644
index 0000000000..bafdc6d3d9
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/pagestyle.txt,v
@@ -0,0 +1,38 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Syntax :
+\pagestyle{Stil} ::pagestyle::
+
+Legt einen Stil für den generellen Seitenaufbau fest
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Stil
+ plain (default) mit Seitennummer als Fußzeile
+ empty keine Kopf oder Fußzeile
+ headings Seitennummer im Kopf + Ueberschrift Information
+#########################################################
+Syntax :
+\thispagestyle{Stile} ::thispagestyle::
+
+Wie oben jedoch nur für die aktuelle Seite
+@
diff --git a/support/tcltexed/hlp/ger/RCS/picture.txt,v b/support/tcltexed/hlp/ger/RCS/picture.txt,v
new file mode 100644
index 0000000000..7bd5c94902
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/picture.txt,v
@@ -0,0 +1,116 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Umgebung picture ::picture::
+\begin{picture}(x,y)
+\end{picture}
+
+Erzeugt eine Bildumgebung mit Grösse (x Breite,y Höhe)
+############################################################
+Parameter : ::unitlength::
+ \unitlength Äquivalent fuer eine Längeneinheit
+Linienbreite ::thicklines:thinlines::linethickness::
+ \thicklines Dicke Linien
+ \thinlines Dünne Linien
+ \linethickness{Breite} Nutzung einer angegebene Linienbreite
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Übergabeparameter pos :
+ t top
+ b bottom
+ l left
+ r right
+Doppelnennungen sind möglich.
+############################################################
+Positionierung von Bildelementen (immer zu verwenden)
+############################################################
+\put(x,y){Text} ::put::
+
+Setzt "Text" auf die Koordinaten (x,y)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\multiput(x1,y1)(x2,y2){N}{Text} ::multiput::
+
+Setzt "Text" N mal zwischen den Koordinaten (x1,y1) und (x2,y2)
+############################################################
+Boxen / Rahmen
+############################################################
+\makebox(x,y)[pos]{Text} ::makebox::
+
+ohne Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\framebox(x,y)[pos]{Text} ::framebox::
+
+mit durchgezogenem Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\dashbox{Strichlänge}(x,y)[pos]{Text} ::dashbox::
+
+mit gestricheltem Rahmen,
+############################################################
+Geometrische Formen
+############################################################
+\line(x,y){Text} ::line::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\vector(x,y){Text} ::vector::
+
+Pfeil
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\circle{Radius} ::circle::
+
+Kreis
+\circle*{Radius}
+
+gefüllter Kreis
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\oval(x,y) ::oval::
+
+Rechteck mit maximal abgerundeten Seiten
+
+\oval(x,y)[pos]
+
+bzw. ein Teil davon. pos gibt an welcher Teil gezeichnet werden
+soll.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\bezier{N}(x1,y1)(x2,y2)(x3,y3) ::bezier::
+
+Agerundeter Winkel mit (x2,y2) als Zentrum. Dabei werden
+N Punkte gezeichnet
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\shortstack[pos2]{Text1\\Text2\\...} ::shortstack::
+
+Stellt Text1 über Text2 ueber ... zentriert wird dabei
+(pos2) l left r right oder c center.
+############################################################
+Bildkompositionen im Arbeitsspeicher
+############################################################
+\newsavebox{\Name} ::newsavebox::
+
+Erstellt neuen Namen fuer Bildteil
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\savebox{\Name}(x,y)[pos]{Text} ::savebox::
+
+Erstellt neue Komposition unter \Name mit Breite x ,Hoehe y und
+Ansatzpunkt pos
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\usebox{\Name} ::usebox::
+
+Nutzt erstellte Kompositionen
+@
diff --git a/support/tcltexed/hlp/ger/RCS/readme_hlp.txt,v b/support/tcltexed/hlp/ger/RCS/readme_hlp.txt,v
new file mode 100644
index 0000000000..3314253548
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/readme_hlp.txt,v
@@ -0,0 +1,66 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Tcltexed | Version 2.3 | 1. Feb. 1999 | Martin Strauß
+::readme_hlp::
+Copyright (C) 1999 Martin Strauß
+
+
+ Tcltexed ein LaTeX-Editor
+
+ !!! Achtung, dieses Programm ist noch unter Konstruktion !!!!
+ Ich habe inzwischen so einiges an Text bearbeitet mit diesem Programm,
+ aber für den Fall der Fälle ... alle gefundenen Fehler bitte an mich weiterleiten.
+ Am besten per email : mys@@faveve.uni-stuttgart.de
+
+ kurze Anleitung :
+ Die systematische Beschreibung ist unter "Help" "Tcltexed" zu finden.
+ Auf jedenfall lohnt es sich ab und zu mal <F1> zu drücken.
+ Für jeden bekannten Latexbefehle gibt es eine kurze Beschreibung !!!
+ Der Tastatursatz ist an den von Motiv, emacs und joe / Borland Pascal
+ angelehnt. Zuzüglich eigener Tastenkombinationen.
+ Ist ein Editorfenster geöffnet so gibt es links oben ein Bildchen.
+ Das Fenster mit dem farbigen Bild (mit Maus draufdrücken) ist das
+ Hauptdokument.
+ Drückt man auf ein Bild in der mathematischen Sammlung sollte der
+ passende Befehl automatisch ins aktuelle Editorfenster eingefügt werden.
+ Aktuelles Fenster -> Fenster mit dem Bild mit Ringen.
+ Gibt man einen latex-Befehl ein, so versucht tcltexed diesen zu erkennen
+ und gegebenenfalls abzuschliessen. (z.B. wird \ga zu \gamma korrigiert)
+ Unter Optionen findet man die Möglichkeit dieses Verhalten abzustellen.
+ Die Leiste oben im Editorfenster dient dem direkten Aufruf der Programme
+ die da draufstehen.
+
+ Rein prinzipiell ist dieses Programm unter unix, linux, Win95 WinNT etc
+ lauffähig. (Falls einer das Program für nen Mac haben will, sollte er/sie
+ sich bei mir melden). Man benötigt hierzu die Scriptsprache Tcl/Tk die es
+ kostenlos im Internet gibt.
+ ... es liegt im Netz !!!! Näheres unter :
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+
+ Frage ? Fehler gefunden ? Ideen fuer die Zukunft ? Sonstiges
+ bitte an mich schreiben :
+
+ Martin Strauss
+ mys@@faveve.uni-stuttgart.de
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html@
diff --git a/support/tcltexed/hlp/ger/RCS/sonder.txt,v b/support/tcltexed/hlp/ger/RCS/sonder.txt,v
new file mode 100644
index 0000000000..599eb03420
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/sonder.txt,v
@@ -0,0 +1,45 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Sonderbares
+############################################################
+\today ::today::
+
+Fügt Datum der Erstellung mittels LaTeX ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+percent (englisch per cent)
+\% ::%::
+
+Das Prozentzeichen % wird bei LaTeX gemeinhin
+als Auskommutierungszeichen benutzt.
+Um im Text eine Ausgabe dieses Zeichens zu erreichen
+muss es als Zeichenfolge \% in den Text eingefügt werden.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX ::LaTeX::
+
+Fügt LaTeX-Logo ein.
+
+\LaTeX2e ::LaTeX2e::
+
+Fügt LaTeX2e-Logo ein.@
diff --git a/support/tcltexed/hlp/ger/RCS/tabbing.txt,v b/support/tcltexed/hlp/ger/RCS/tabbing.txt,v
new file mode 100644
index 0000000000..af59740465
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/tabbing.txt,v
@@ -0,0 +1,38 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Tabulatorsetzung ::tabbing::
+############################################################
+\begin{tabbing}
+eins\=zwei\=drei\\ % Musterzeile (hier drei Spalten)
+ 1 \> 2 \> 3 \\ % angepaßte Zeile
+ ...\\
+\end{tabbing}
+
+Soll die Musterzeile nicht sichtbar sein -> endet mit \kill
+statt \\.
+\+ setzt dauerhaft für alle folgenden Zeilen alle Spalten
+ein TAB nach rechts versetzt.
+\= erstellt einen neuen TAB.
+\> verschiebt zum nächsten TAB. @
diff --git a/support/tcltexed/hlp/ger/RCS/tabelle.txt,v b/support/tcltexed/hlp/ger/RCS/tabelle.txt,v
new file mode 100644
index 0000000000..a3db7d20ae
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/tabelle.txt,v
@@ -0,0 +1,95 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Tabellen ::array::tabular::
+############################################################
+
+Übergabeparameter pos :
+ t top
+ b bottom
+Spaltenformat besteht zusammengesetzt aus
+ l left (neue Spalte)
+ r right (neue Spalte)
+ c center (neue Spalte)
+ p{Breite} Spaltenbreite
+ *{n}{Spaltenformat-2} n-mal Spaltenformat-2
+ | vertikaler Strich
+ || vertikaler Doppelstrich
+ @@{Text} fuegt Text ein
+############################################################
+Tabellenumgebungen
+############################################################
+
+Die Anzahl der Spalten ergibt sich ueber die Anzahl
+der l,r,c im Textstring Spaltenformat.
+Neue Zeilen werden durch Zeilenumbruch bewirkt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{array}[pos]{Spaltenformat}
+ Spalte1 & Spalte2 & ... \\
+ ...
+\end{array}
+
+Nur in mathematischen Modi ..
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{tabular}[pos]{Spaltenformat}
+\end{tabular}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{tabular*}{Tabellenbreite}[pos]{Spaltenformat}
+\end{tabular*}
+############################################################
+Nützliche zum Teil unabhängige Befehle
+############################################################
+\hline ::hline::
+
+Horizontale Linie,
+direkt nach \\ in Tabellen bewirkt eine Unterteilung
+in ganze Zeilen. (unabh.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\vline ::vline::
+
+Vertikale Linie,
+innerhalb von Spalten bewirkt eine vertikale Unterteilung
+in zwei Spalten. (unabh.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\cline{n-m} ::cline::
+
+Horizontale Linie von Spalte n nach m,
+direkt nach \\ in Tabellen. (abh.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\multicolumn{Spaltenanzahl}{Spaltenformat}{Text}
+::multicolumn::
+Vereinigt die nächsten Spalten angegebener Spaltenzahl zu einer,
+die wiederum neu eingeteilt werden kann. (abh.)
+############################################################
+Stilparameter
+############################################################
+::tabcolsep::arraycolsep::arrayrulewidth::doublerulesep::
+\tabcolsep Spaltenzwischenraum bei tabular
+\arraycolsep Spaltenzwischenraum bei array
+\arrayrulewidth Liniendicke
+\doublerulesep Abstand von Doppellinien
+via \setlength{}{}
+::arraystretch::
+\arraystretch Zeilenabstand als Faktor (default 1)
+via \renewcommand{}{}@
diff --git a/support/tcltexed/hlp/ger/RCS/tcltexed_hlp.txt,v b/support/tcltexed/hlp/ger/RCS/tcltexed_hlp.txt,v
new file mode 100644
index 0000000000..88b30808f5
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/tcltexed_hlp.txt,v
@@ -0,0 +1,172 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.08.15.21.26.39; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@############################################################
+#::tcltexed_hlp::
+# Tcltexed steht fuer tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Im wesentlichen Besteht Tcltexed aus zwei Teilbereichen. Zum
+einen der Funktionsbereich der Editorfenster, die in unter
+"Editor" beschrieben wird, zum anderen eine ganze Menge an
+Hilfsdiensten, die allesamt über das Hauptfenster aufgerufen
+werden.
+Alle Aktionen auf einen Text beziehen sich auf das Editorfenster
+das den Fokus zuletzt besessen hat, bzw nach meiner Definition
+gerade besitzt. Nähres dazu in der Beschreibung "Editor".
+
+Im folgenden werde ich die verschiedenen Funktionen der über
+das Hauptfenster aufrufbaren Dienste aufzählen und beschreiben.
+
+Menupunkte des Hauptfensters
+1. File
+ a) New
+Hiermit kann man neue LaTeX-Texte beginnen. Es gibt dazu einen
+internen Default-Text, der bei externes Default-Textes im
+Basisverzeichnis unter default.tex
+ b) Load
+Laden einer vorhandenen Datei ...
+ c) Append
+Fügt im Text den Inhalt der Datei ab der Position des Cursers
+ein.
+ d) Save e) Save As
+Speichert den Text.
+ f) Quit
+Beendet die Arbeit mit Tcltexed. Alle Fenster werden (wenn nötig
+mit Rückfrage) geschlossen.
+
+2. Edit
+ a) Clear
+Löschung des gesamten Textes.
+ b) Zeilenumbruch
+Über dieses Untermenü kann man entweder für den gesamten Text,
+einen Absatz oder eine Zeile einen Zeilenumbruch bewirken.
+Endet eine Zeile mit einem Leerzeichen so wird die folgende Zeile
+als Fortsetzung verstanden. Wird ein Zeilenumbruch auf eine Zeile
+ausgeführt, so wird die Zeile inklusive der Fortsetzungen neu gebrochen.
+Wird im Untermenü eine Umkehr des Zeilenumbruchs gewählt, so werden
+für die betroffenen Zeilen die Fortsetzungen wieder zusammengefügt,
+und an die jeweilige Anfangszeile angehängt.
+Ist die erste Zeile um einige Leerzeichen eingerückt, so werden auch
+die zum Umbruch gehörenden Zeilen um diese Leerzeichen eingerückt.
+ c) Rechtschreibung
+Rechtschreibkorrektur des aktuellen Textes.
+ d) registriere Wort
+Wenn sich der Curser im aktuellen Text in einem als falsch
+markierten Wort befindet, dann wird dieses Wort als richtig
+geschrieben registriert.
+ e) \"a..\ss -> ä..ß
+Wandelt alle Latex-Befehle zur Darstellung von Umlauten in Umlaute um.
+ f) ä..ß -> \"a..\ss
+Wandelt alle Umlaute in die zugehörigen Latex-Befehle um.
+ g) "a.."s -> ä..ß
+Wandelt Latex-Befehle zur Darstellung von Umlauten aus dem [german]{babel}
+Packet in Umlaute um.
+ h) ä..ß -> "a.."s
+Wandelt Umlaute in die zugehörigen Latex-Befehle des [german]{babel}
+Packetes um. Dieses Format ist mit "ispell -t -d deutsch file.tex" konform.
+ i) Search
+Suchen und Ersetzen im Text.
+Mit oder ohne Beachtung der Groß/Kleinschreibung
+ j) My Own
+Ermöglicht das Eintragen von LaTeX-Sequenzen die per Buttondruck
+in den Text eingefügt werden. Diese eigenen LaTeX-Sequenzen
+werden mit "Optionen speichern" mit abgespeichert. Und bleiben
+dann für den nächsten Aufruf von Tcltexed erhalten.
+
+3. Options
+ a) AutoKlammerzu
+Ist diese Funktion aktiviert, so werden Aufklammern stehts
+mit Zuklammern ergänzt.
+ { --> {}
+ b) Packete/etc
+Hier kann man die automatische Ergaenzung von LaTeX-Befehlen
+aktivieren, bzw. deaktivieren. Dies geschieht selektiv fuer
+verschiedene LaTeX-Packete oder Umgebungen.
+Beispiel einer Ergänzung :
+\fra --> \frac{}{}
+Es ist zu beachten das je mehr LaTeX-Befehle erkannt werden sollen
+desto später oder garnicht ergänzt wird. Die Befehle werden
+einander zu ähnlich.
+ c) Sprache
+Sprachwahl fuer Texte, Buttons und Hilfen.
+Die Einstellung verändert die Sprache für den nächsten Start
+des Programmes. Sie muß folglich gespeichert werden (s.u.).
+ d) Schriftgröße
+Setzt die Schriftgröße für das Editorfenster fest.
+ e) Save Options
+Speichert alle durch User konfigurierbaren Bereiche von Tcltexed in
+eine Datei. Diese werden dann automatisch beim nächsten Start geladen.
+(Ihr Dateiname ist unter unix .tcltexed, unter Windows tcltexed.ini .
+Ich rate aber ab diese Datei von Hand zu editieren. Dateien älterer
+Tcltexedversionen werden ignoriert, bzw. überschrieben)
+
+4. Mathematik
+Liefert eine Menge von Standartbefehlen der Mathematikumgebung von
+LaTeX in Form von Buttons mit Beschriftung oder Bildern.
+Ein Druck mit der Maus fügt den entsprechenden Befehl in den Text
+an der Position des Cursers ein.
+
+5. Allgemeines
+Wie 4. , hier jedoch Sammlungen anderer Befehle.
+
+6. Help
+Habt Ehrfurcht ! Dies ist die Hilfe fuer Not leidende LaTeX Opfer.
+ a) Tcltexed
+Liefert wie ihr sicherlich schon gemerkt habt, unter anderem diesen
+Text, sowie weitere Hilfen und ähnliches zu Tcltexed selbst.
+ b) LaTeX
+Habt noch mehr Ehrfurcht !!
+Hier sind alle Tcltexed (bzw mir) zu Ohren gekommenen LaTeX-Befehle
+noch einmal alphabetisch aufgelistet. Davor Ehrfurcht ?? Nun zu vielen
+davon gibt es Kurzbeschreibungen oder Bildchen ... (ne Scheiß Arbeit)
+ + <Return> + linke Maustaste zeigen Hilfe an
+ rechte Maustaste fügt den Befehl ein
+ Bei Tastendruck A-Z a-z wird an den entsprechenden ersten Eintrag
+ gesprungen.
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d56 11
+a66 4
+ e) Nearly
+Listet alle Worte, die dem ähneln in dem sich der Curser
+des aktuellen Textstückes befindet.
+ f) Search
+d69 1
+a69 1
+ g) My Own
+d124 1
+a124 1
+ gesprungen.@
+
diff --git a/support/tcltexed/hlp/ger/RCS/titlepage.txt,v b/support/tcltexed/hlp/ger/RCS/titlepage.txt,v
new file mode 100644
index 0000000000..57503f3c8e
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/titlepage.txt,v
@@ -0,0 +1,36 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Umgebung titlepage (Syntax siehe begin oder end)
+::titlepage::
+Dient der freien Gestaltung der Titelseite.
+Wird diese Freiheit kann man sich folgender Befehle
+bedienen.
+#########################################################
+Syntax : ::title::author::and::date::thanks::maketitle::
+\title{Titel des Dokuments}
+\author{Dieser Einer\\hier \and Ein Anderer\\dort}
+\date{Datumstext} (optional)
+\thanks{Dank an bla} (optional)
+\maketitle
+@
diff --git a/support/tcltexed/hlp/ger/RCS/usepackage.txt,v b/support/tcltexed/hlp/ger/RCS/usepackage.txt,v
new file mode 100644
index 0000000000..8a42e38923
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/usepackage.txt,v
@@ -0,0 +1,46 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@Syntax : ::usepackage::
+\usepackage{PACKET}
+\usepackage[Option]{PACKET}
+
+
+Lädt zusätzliche Latex-Packete.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+PACKET : (es handelt sich um Makrodateien mit Endung .sty)
+ babel Latex-Stile fuer verschiedenen Sprachen
+ Option : german, english ...
+ german für deutschen Stil beim Latex-Format (z.B. wird Chapter zu
+ Kapitel)
+ umlaut(e) übersetzt Zeichen außerhalb des ascii-Zeichensatzes beim
+ compilieren automatisch in das latex-Format um. (z.B. ß zu \3)
+ graficx für Einbindung von Bildern und grafischen Manipulation
+ grafics simpleres Packet als graficx mit selber Funktion
+ epsf für Einbindung von eps-Bildern (ich empfehle graficx zu nutzen)
+(American Mathmatik Society)
+ amsmath für Formelsätze
+ amssymb für Symbole
+ amsfonts für Fonts
+ amscd für Flußdiagramme
+@
diff --git a/support/tcltexed/hlp/ger/RCS/verbatim.txt,v b/support/tcltexed/hlp/ger/RCS/verbatim.txt,v
new file mode 100644
index 0000000000..d2c762ba2d
--- /dev/null
+++ b/support/tcltexed/hlp/ger/RCS/verbatim.txt,v
@@ -0,0 +1,39 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 99.11.22.23.41.41; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@############################################################
+Orginaltext ::verbatim::
+############################################################
+\begin{verbatim}
+ Text
+\end{verbatim}
+
+fügt Text 1 zu 1 in den laufenden LaTeX-formatierten Text ein.
+Der erste wieder beachtete LaTeX-Befehl ist \end{verbatim}.
+
+\begin{verbatim*}
+ Text
+\end{verbatim*}
+
+Analog wie oben, aber statt Space werden sichtbare Platzhalter
+gesetzt.@
diff --git a/support/tcltexed/hlp/ger/Seitenformat.txt b/support/tcltexed/hlp/ger/Seitenformat.txt
new file mode 100644
index 0000000000..fec120eacc
--- /dev/null
+++ b/support/tcltexed/hlp/ger/Seitenformat.txt
@@ -0,0 +1,62 @@
+############################################################
+Variablen zur Kontrolle des Seitenformates
+############################################################
+
+\voffset ::voffset::
+ vertikaler Offset der Seite
+\hoffset ::hoffset::
+ horizontaler Offset der Seite
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\oddsidemargin ::oddsidemargin::
+ Breite des linken Randes bzw ungerade Seiten
+\evensidemargin ::evensidemargin::
+ Breite des rechten Randes bzw gerade Seiten
+\topmargin ::topmargin::
+ oberer Rand bis Oberkante Kopfzeile
+\headheight ::headheight::
+ Höhe der Kopfzeile
+\headsep ::headsep::
+ Abstand zwischen Unterkante Kopf und Oberkante Rumpf
+\topskip ::topskip::
+ Abstand Oberkante Rumpf und Unterkante der ersten Textzeile
+\textheight ::textheight::
+ Gesamthöhe für den Rumpf
+\textwidth ::textwidth::
+ Gesamtbreite für Kopf, Rumpf und Fuß
+\footheight ::footheight::
+ Höhe des Rumpfes
+\footskip ::footskip::
+ Abstand Unterkante Rumpf Unterkante Fuß
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\marginparpush ::marginparpush::
+ Abstand zweier Randnotizen
+\marginparwidth ::marginparwidth::
+ Breite einer Randnotiz
+\marginparsep ::marginparsep::
+ horizontaler Abstand zum Rand des Rumpfes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Zusätzlich bei doppelspaltigen Seiten
+\columnsep ::columnsep::
+ Breite des Spaltenseperators
+\columnseprule ::columnseprule::
+ Trennstrichdicke
+
+############################################################
+Variablen ändern mit
+setlength{Variable}{Wert} ::setlength::
+
+ ##############
+ # Kopf #
+ ##############
+
+ ##############
+ # #
+ # #
+ # Rumpf #
+ # #
+ # #
+ ##############
+
+ ##############
+ # Fuß #
+ ##############
diff --git a/support/tcltexed/hlp/ger/amscd.txt b/support/tcltexed/hlp/ger/amscd.txt
new file mode 100644
index 0000000000..cd9392a90e
--- /dev/null
+++ b/support/tcltexed/hlp/ger/amscd.txt
@@ -0,0 +1,40 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amscd verfügbar.
+\usepackage{amscd} ::amscd::
+
+#################################################################
+Fussdiagramme ::CD::
+#################################################################
+Unterumgebung :
+CD
+Beispiel :
+\begin{CD}
+ A @>>> B @>>> C
+ D @AAA E @VVV F
+ G @= H @<<< I
+\end{CD}
+
+Umgebung für Flussdiagramme
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@>Textoben>Textunten>
+
+Pfeil nach rechts mit Schrift darüber und darunter
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@<Textoben<Textunten<
+
+Pfeil nach links mit Schrift darüber und darunter
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@ATextlinksATextrechtsA
+
+Pfeil nach oben mit Schrift links und rechts
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@VTextlinksVTextrechtsV
+
+Pfeil nach unten mit Schrift links und rechts
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+@=
+
+Gleichheitszeichen
diff --git a/support/tcltexed/hlp/ger/amsfonts.txt b/support/tcltexed/hlp/ger/amsfonts.txt
new file mode 100644
index 0000000000..a8d5cb9a04
--- /dev/null
+++ b/support/tcltexed/hlp/ger/amsfonts.txt
@@ -0,0 +1,24 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amsfonts verfügbar.
+\usepackage{amsfonts} ::amsfonts::
+
+#################################################################
+Fonts
+#################################################################
+Syntax :
+\mathbb{Text} ::mathbb::
+
+Liefert Text in Form von Mengenzeichen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\mathfrak{Text} ::mathfrak::
+
+Liefert Text als Frakturschrift
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\boldsymbol{Symbol} ::boldsymbol::
+
+Liefert fette Symbole
diff --git a/support/tcltexed/hlp/ger/amsmath.txt b/support/tcltexed/hlp/ger/amsmath.txt
new file mode 100644
index 0000000000..74d30c0ac8
--- /dev/null
+++ b/support/tcltexed/hlp/ger/amsmath.txt
@@ -0,0 +1,138 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amsmath verfügbar.
+\usepackage{amsmath} ::amsmath::
+
+#################################################################
+mathematische Unterumgebungen
+#################################################################
+Unterumgebungen muessen in einer mathematischen Umgebung
+aufgerufen werden.
+z.B.
+\[\begin{split} ... \end{split}\]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unterumgebung : split ::split::
+\[\begin{split}
+ a&=b\\
+ c&=d
+\end{split}\]
+
+Erlaubt mehrere aneinander ausgerichtete Formeln mit wenn nur
+einer Nummer.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : multline ::multline::
+\begin{multine}
+ a+b+c\\
+ +d+e
+\end{multine}
+
+Fuer mehrzeilige Formeln mit einer Nummer.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : gather ::gather::
+\begin{gather}
+ a+b+c\\
+ +d+e
+\end{gather}
+
+
+Mehrere Formeln unausgerichtet.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : align ::align::
+\begin{align}
+ a&=b & c&=d \\
+ e&=f & g&=h \\
+ \intertext{und}
+ i&=j & k&=l
+\end{align}
+
+Erlaubt ein Array von Formeln
+-----------------------------------------------------------------
+Syntax : ::intertext::
+\intertext{Text}
+
+Erlaubt einen eingeschobenen Text
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung : subequation ::subequation::
+
+Zur Hauptnummerierung kommt eine für label unsichtbare
+Unternummerierung mit kleinen Buchstaben.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unterumgebung : ?matrix ::matrix::pmatrix::bmatrix::vmatrix::Vmatrix::
+\[\begin{matrix}
+ 1 & 2 & 3 & a \\
+ 4 & 5 & 6 & b \\
+ 7 & 8 & 9 & c
+\end{matrix}\]
+
+Erzeugt eine n auf m Matrix
+matrix : ohne Klammerung
+pmatrik : mit runder Klammerung
+bmatrix : mit eckiger Klammerung
+vmatrix : mit einfachen Betragsstrichen
+Vmatrix : mit doppelten Betragsstrichen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unterumgebung : cases ::cases::
+\[sgn(x)=\begin{cases}
+ -1 & \forall\ x<0 \\
+ 0 & x=0 \\
+ 1 & \forall\ x>0
+\end{cases}\]
+
+Für Fallunterscheidungen
+#################################################################
+Sonstige Hilfen
+#################################################################
+Klammerngroesse :
+\bigl \bigr etwas groesser ::bigl::bigr::
+\Bigl \Bigr Faktor 1.5 ::Bigl::Bigr::
+\biggl \biggr Faktor 2 ::biggl::biggr::
+\Biggl \Biggr Faktor 2.5 ::Biggl::Biggr::
+links rechts der Formel
+
+Nachfolgend kommt die Klammernart "(" "|" "[" ... "]" ")"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::substack::
+\substack{ \\ ...\\ \text{Hi} ... \\ }
+Beispiel :
+\sum_\substack{i=0\\j=1}^\substack{10\\100}
+
+Schiebt mehrere Zeilen an Indizes oder Exponenten ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::text::
+\text{Text}
+
+schiebt Text ein
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::sideset::
+\sideset{}{}
+Beispiel :
+\sideset{^1_2}{^3_4}\sum
+
+Setzt seitlich Indizes,
+zum Beispiel links oben eine 1, links unten eine 2,
+ rechts oben eine 3 und rechts unten eine 4.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::xleftarrow::xrightarrow::
+xleftarrow{Oben}
+xleftarrow[Unten]{Oben}
+xrightarrow{Oben}
+xrightarrow[Unten]{Oben}
+
+
+Ein sich in Abhängigkeit zum Text streckender Pfeil mit Text "Oben"
+und "Unten".
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::boxed::
+\boxed{Formel}
+
+Rahmt Formel in eine Box ein
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareMathOperator{latex-Befehl}{Ausgabe} ::DeclareMathOperator::
+\DeclareMathOperator*{latex-Befehl}{Ausgabe}
+
+
+
+Ermöglicht das Erstellen weiterer Funktionen zu \sin \cos etc.
+* Bewirkt ein Verhalten wie z.B. \lim im flüssigen Text.
diff --git a/support/tcltexed/hlp/ger/amssymb.txt b/support/tcltexed/hlp/ger/amssymb.txt
new file mode 100644
index 0000000000..ea10bed9f2
--- /dev/null
+++ b/support/tcltexed/hlp/ger/amssymb.txt
@@ -0,0 +1,8 @@
+#########################################################
+\usepackage{amssymb} ::amssymb::
+#########################################################
+Einer der unzähligen LaTeX-Befehle des Packetes amssymb.
+#########################################################
+Eines der unzähligen Symbole bei denen ich mich weigerte
+ein extra Bild zu erstellen. (mys)
+########################################################## \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/amsthm.txt b/support/tcltexed/hlp/ger/amsthm.txt
new file mode 100644
index 0000000000..13a7b7d9ea
--- /dev/null
+++ b/support/tcltexed/hlp/ger/amsthm.txt
@@ -0,0 +1,37 @@
+#################################################################
+American Mathmatical Society
+#################################################################
+
+Alle folgende Befehle sind nur mit dem package amscd verfügbar.
+\usepackage{amsthm} ::amsthm::
+
+#################################################################
+Erstellen von Theoremen ::newtheorem::
+#################################################################
+
+\newtheorem{latex-synonym}{Name}
+\newtheorem*{latex-synonym}{Name}
+\newtheorem*{latex-synonym}[latex-synonym2]{Name}
+\newtheorem*{latex-synonym}{Name}[section]
+
+Erstellt eine Umgebungsvariable latex-synonym die ein durchnummerieres
+Theorem mit der Bezeichnung Name (z.B. Axiom) einfügt.
+\begin{latex-synonym}
+ Bla
+\end{latex-synonym}
+bewirkt dann das einfügen eines solchem Theorems.
+
+* unterdrückt die Nummerierung.
+latex-synonym2 : es wird der gleiche Zähler wie zu diesem Theorem verwandt.
+section : bei erhoehung dieses Zählers wir der Theoremzähler auf Null gesetzt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\theoremstyle{Style} ::theoremstyle::
+
+Style :
+ plain (default)
+ definition
+ remark
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\swapnumbers ::swapnumbers::
+
+Nummerierung auf der linken Seite der Theoreme \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/begin.txt b/support/tcltexed/hlp/ger/begin.txt
new file mode 100644
index 0000000000..fca4dbf6d2
--- /dev/null
+++ b/support/tcltexed/hlp/ger/begin.txt
@@ -0,0 +1,60 @@
+############################################################
+Umgebungen ::begin::end::
+############################################################
+Syntax
+\begin{Umgebung}
+ Text. etc.
+\end{Umgebung}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebungen :
+ document Dokument
+ titlepage Titelseite
+ verbatim 1:1 Text einfügen
+ appendix Anhang
+ abstract für Zusammenfassung
+ thebiliography Literaturverzeichnis
+ theindex Stichwortverzeichnis
+
+(Mathematik)
+ math im Text
+ displaymath gesondert
+ equation gesondert mit Nummer
+ eqnarray Formelgruppen
+ array Tabellen im mathe. Modus
+
+(Aufzaehlungen)
+ enumerate mit Zaehler
+ itemize mit Symbol
+ deskription mit Kürzel
+
+(Gliederung)
+ tabular Tabellen
+ tabbing mit Tabulator
+ minipage als kleine "Seite"
+ samepage kein Seitenumbruch außerhalb von Absätzen
+ sloppypar schlampiger Zeilenumbruch
+ fussypar gründlicher "
+ center zentriert
+ quote rückt links und rechts ein
+ quotation neuer Absatz + "
+ flushright rechtszentriert
+ flushleft linkszentriert
+(Gleitende Objekte)
+ table für Tabellen
+ figure für Bilder
+
+(Bilder)
+ picture mit latex gezeichnete Bilder
+
+(Packet amsmath)
+ split
+ multline
+ gather
+ aline
+ subequation
+ matrix
+ pmatrix
+ bmatrix
+ vmatrix
+ Vmatrix
+ cases
diff --git a/support/tcltexed/hlp/ger/bezug.txt b/support/tcltexed/hlp/ger/bezug.txt
new file mode 100644
index 0000000000..8870e4b3b7
--- /dev/null
+++ b/support/tcltexed/hlp/ger/bezug.txt
@@ -0,0 +1,32 @@
+############################################################
+Literaturverzeichnis ::thebibliography::bibitem::cite::
+############################################################
+\begin{thebibliography}{Muster_Marke}
+ \bibitem[Marke]{Bezug}Eintrag
+ ...
+\end{thebibliography}
+
+(Marke ist optional, andernfalls wird durchgezählt)
+Im Text : \cite{Bezug}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+::nocite::bibliography::
+Mit BibTeX können auch Literaturverzeichnisse erstellt werden.
+\nocite{Bezug1, ...} ist eine Liste der in dieser Weise
+genutzten Bezuege.
+\bibliography{datenbank, ..} gibt die zu nützenden
+Datenbanken an.
+############################################################
+Sonstige Bezuege
+############################################################
+\label{Marke} ::label::
+
+Erstellt Marke.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\ref{Marke} ::ref::
+
+Fügt Position der Marke ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\pageref{Marke} ::pageref::
+
+Fügt Seite der Marke ein.
+ \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/copyright_hlp.txt b/support/tcltexed/hlp/ger/copyright_hlp.txt
new file mode 100644
index 0000000000..df07b73c38
--- /dev/null
+++ b/support/tcltexed/hlp/ger/copyright_hlp.txt
@@ -0,0 +1,19 @@
+Tcltexed | Version 2.8 | 02. Nov 2006 | Martin Strauss
+::copyright_hlp::
+A plaintexteditor for LaTeX based on scriptlanguage tcl/tk (8.x)
+
+Copyright (C) 1999 Martin Strauss
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
diff --git a/support/tcltexed/hlp/ger/counter.txt b/support/tcltexed/hlp/ger/counter.txt
new file mode 100644
index 0000000000..c3bf39af0f
--- /dev/null
+++ b/support/tcltexed/hlp/ger/counter.txt
@@ -0,0 +1,81 @@
+############################################################
+Counter
+############################################################
+Counter besitzen immer ganzzahlige Werte
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\newcounter{Name} ::newcounter::
+\newcounter{Name}[Rücksetzer]
+
+Erstellt Counter "Name".
+Wird Counter Rücksetzer um eins erhöht, fällt
+Counter Name auf Null zurueck.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\setcounter{Name}{Wert} ::setcounter::
+
+Setzt einen Counter auf einen angegebenen Wert.
+
+default Zähler
+ page laufende Seitennummerierung
+ tocdepth Inhaltsverzeichnisanzeigetiefe (1 chapter 2 section ...)
+ chapter laufende Kapitelnummer, geht analog für (section ..)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stepcounter{Name} ::stepcounter::
+
+Erhöht den Wert von Name um eins
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\value{Name} ::value::
+
+Gibt den Wert von
+############################################################
+Length
+############################################################
+Längen besitzen immer eine Einheit (mm,pt,cm, ...)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\newlength{\Name} ::newlength::
+
+Erstellt Laengenvariable \Name.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\setlength{\Name}{Mass} ::setlength::
+
+Setzt \Name auf Mass.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\addtolength{\Name}{Mass} ::addtolength::
+
+Addiert Mass zu \Name
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\settowidth{\Name}{Text} ::settowidth::
+
+Setzt Name auf die Länge von Text.
+############################################################
+Command
+############################################################
+\newcommand{\Befehl}[n]{Definition} ::newcommand::
+
+Erstellt einen Befehl als Synonym für den Text "Definition",
+mit Benützung von n Übergabewerten.
+z.B.
+\newcommand{\hallo}[1]{Hallo #1}
+im Textfile
+\hallo{mys}
+Ausgabe in Dvifile
+Hallo mys
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\renewcommand{\Befehl}[n]{Definition} ::renewcommand:
+
+Wie oben falls schon ein Befehl unter diesem Namen existiert,
+und dieser umdefiniert werden soll.
+############################################################
+Enviroment ::newenviroment::renewenviroment::
+############################################################
+\newenviroment{Name}[n]{begin-Definitionen}{end-Definitionen}
+\newenviroment*{Name}[n]{begin-Definitionen}{end-Definitionen}
+
+z.B.
+\newenviroment{tcltk}[1]{\bfseries %i}{\normalfont}
+\begin{tcltk}{Hallo}
+ ...
+\end{tcltk}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\renewenviroment{Name}[n]{begin-Definitionen}{end-Definitionen}
+\renewenviroment*{Name}[n]{begin-Definitionen}{end-Definitionen}
diff --git a/support/tcltexed/hlp/ger/documentclass.txt b/support/tcltexed/hlp/ger/documentclass.txt
new file mode 100644
index 0000000000..fc698631c3
--- /dev/null
+++ b/support/tcltexed/hlp/ger/documentclass.txt
@@ -0,0 +1,34 @@
+############################################################
+Grundform eines Dokumentes unter LaTeX
+############################################################
+\documentclass{Klasse} ::documentclass::
+\documentclass[Optionen]{Klasse}
+
+Bearbeitungsstil des Dokuments
+dieser LaTeX-Befehl ist unverzichtbar.
+auf ihn folgen weitere Deklarationen und mit
+\begin{document} ::document::
+ Text
+\end{document}
+der eigentliche Text.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Klasse
+ book
+ report
+ article
+ letter
+Optionen
+ 10pt (default) setzt Schriftgröße
+ 11pt "
+ 12pt "
+ twoside beidseitiger Druck
+ twocolumn zweispaltig
+ titlepage extra Seite fuer Tittel und Abstrakt
+ leqno linksbuendige Formelnummerierung
+ fleqn linkszentrierte abgesetzte Formeln
+ proc bei Sitzungsprotokollen
+ ifthen latex mit logischen Abfragen
+ a4paper A4 Blattformat
+############################################################
+latex 2.09 :
+\documentstyle[]{} ::documentstyle::
diff --git a/support/tcltexed/hlp/ger/editor_hlp.txt b/support/tcltexed/hlp/ger/editor_hlp.txt
new file mode 100644
index 0000000000..ef2a33c971
--- /dev/null
+++ b/support/tcltexed/hlp/ger/editor_hlp.txt
@@ -0,0 +1,196 @@
+############################################################
+#::editor_hlp::
+# Das Editorfenster
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Was ist ein Editorfenster ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Unter einem Editorfenster verstehe ich Fenster in denen
+unter Tcltexed Texte bearbeitet werden. Jedes Editorfenster
+wird genau einem Text zugeordnet. Sind mehrere Editorfenster
+geöffnet sind zwei Attribute zu vergeben :
+ den Fokus
+ und das für das Hauptdokument
+-----
+Den Fokus besitzt das Editorfenster, das zuletzt im Vordergrund
+gewesen ist. Aktionen außerhalb der Editorfensters, wie zum
+Beispiel das Durchsuchen des Textes, erfolgt stets nur im
+Editorfenster das derzeit den Fokus besitzt. Den Fokus
+kann ein Fenster durch anklicken etc. erhalten.
+-----
+Ist ein Editorfenster als Hauptdokument deklariert, übernimmt
+es für alle anderen Fenster den Aufruf der externen Programme
+latex, xdvi, dvips und ghostview. Im Hauptdokument sollte daher
+immer ein ausführbarer LaTeX-Text sein, während andere
+Editorfenster vermeindlich nur einzubindende Texte enthalten
+können. Ist kein Editorfenster als Hauptdokument deklariert,
+verhaelt sich jedes Editorfenster dahingehend eigenständig.
+-----
+Das Fenster hat folgende Bestandtteile :
+ eine Menuleiste / Popupleiste
+ eine Buttonleiste (Button ~> Druckknopf)
+ und das Eingabefeld.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Funktionen der Buttonleiste
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Von links nach rechts folgen :
+ein "Bild", Save, Save As, latex, xdvi, dvips, ghostview, Syntax, Quit und
+zuletzt eine "Anzeige" Z.S. ?.?.
+-----
+ "Bild"
+Das Bild zeigt an welches Fenster gerade den Fokus hat, und welches,
+wenn überhaupt eines, als Hauptdokument deklariert wurde.
+Das Fenster mit dem Bild das Wellen darstellt ist das Fenster welches
+gerade den Fokus besitzt.
+Das Fenster mit dem farbigen Bild ist das Hauptdokument.
+Ein Editorfenster übernimmt die Funktion des Hauptdokumentes
+durch anklicken des Bildes. Abgestellt wird die Funktion durch
+einen Druck auf das dann farbige Bild.
+-----
+ Save
+Speichert den Text unter der zugeordneten Datei. Ist noch keine
+Datei zugordnet, so wird Save As ausgeführt.
+-----
+ Save As
+Ermöglicht das durchsuchen der Festplatte nach dem zuzuordnenden
+Dateinamen und speichert den Text unter diesem.
+-----
+ latex
+Führt zunächst Save für den aktuellen Text, und nur diesen, aus.
+Dann wird das Programm latex für die zugeordnete Datei ausgeführt.
+Ist einem Fenster das Hauptdokumentattribut vergeben worden, so
+wird dessen Datei stattdessen übergeben.
+latex erstellt eine Datei mit Endung dvi, die Fehlerausgabe
+wird in dem Hilfsfenster ausgegeben. (unix : Bricht latex nicht
+automatisch ab so muß dies von Hand mit der Tastenfolge "q"
+"Return" getan werden.)
+Um das Erstellen von Stichwortverzeichnissen mit den LaTeX-Befehlen
+\makeindex \index etc via dem Programm makeindex zu erleichtern,
+wird dieses Programm automatisch aufgerufen, falls eine entsprechend
+zu bearbeitende Datei (Name.idx) vorhanden ist.
+-----
+ xdvi
+Ruft die von latex zuletzt erstellte Datei mit einem Viewer
+für das dvi Format zur Ansicht auf. ( Du hier angucken können)
+Die Viewer aktualisieren ihre Ansicht, wenn die Datei neu erstellt
+wird.
+-----
+ dvips
+Wandelt die zugehörige dvi-Datei in das Druckerformat gs (ghostscript)
+um und speichert es in einer Datei mit entsprechend zu gs geänderten
+Dateiendung.
+-----
+ ghostview
+Dieses Programm ermöglicht dann die Ansicht des Ergebnisses mit dvips.
+-----
+ ispell
+Führt zunächst Save für den aktuellen Text, und nur diesen, aus.
+Dann wird das Programm ispell, ein Rechtschreibprüfprogramm, für
+die zugeordnete Datei ausgeführt und dessen Ausgabe ins aktuelle
+Fenster übernommen.
+-----
+ Syntax
+Syntax Highlightning, alle mit \ als LaTeX-Befehle erkenntlichen
+Textbereiche bekommen eine Textfarbe in Rot oder Grün, auskommentierte
+Textbereiche bekommen eine Textfarbe in Blau.
+Rot steht für nicht wiedererkannten LaTeX-Befehl,
+Grün für erkannten LaTeX-Befehl,
+Blau für auskommentierten Text.
+Auf Funktionstüchtigkeit wird dabei allerdings nicht geachtet. Zu
+den grün marktierten Befehlen gibt es zumeist Hilfen.
+(Siehe dazu auch Latex-Hilfen)
+-----
+ Quit
+Schließt das Editorfenster mit Rückfrage falls der Text verändert
+jedoch nicht gespeichert wurde.
+-----
+ "Anzeige"
+Wiedergabe der aktüllen Zeile und Spalte in der sich der Curser
+derzeit befindet. Die Anzahl der Zeilen ergibt sich aus der Anzahl
+der "Return"s im Text, nicht aus der der Umbrüche durch zu lange
+Zeilen. Der Button öffnet bei Betätigung ein Fenster mit dem per
+Eingabe die Curserposition verändern kann.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Funktionen der Menuleiste / Popupleiste
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Die Menuleiste existiert nur ab tcl/tk 8.x ist jedoch
+in Funktion der Popupleiste äquivalent.
+Mit Druck auf die rechte Maustaste erscheint die Popupleiste.
+Von oben nach unten (links nach rechts) :
+Undo, Cut, Copy, Paste, Clear, Block, + % und - %.
+-----
+ Undo
+Revidiert (hoffentlich) die letzte(n) am Text vorgenommene(n)
+Aktion(en). Allerdings werden aus Speicherplatzgründen ältere
+Aktionen vergessen.
+-----
+ Cut, Copy, Paste, Clear
+Bearbeitet den mit Maus selektierten Bereich, ratet mal was da
+passiert ... . Die Aktionen sind Windows und X-Window kompatibel.
+(theoretisch)
+-----
+ Test
+Durchsucht den ganzen Text nach Rechtschreibfehlern und ändert
+deren Farbe in einen Rotton um.
+-----
+ Nearly
+Erstellt eine Liste aller Wörter, die dem Word in dem sich der
+Curser befindet ähnlich sind. Und zeigt sie in einem Fenster.
+-----
+ Block
+Wandelt den selektierten Bereich in einen Blockbereich
+ala Borland um.
+-----
+ + %
+Fügt im selektierten Bereich vor jede Zeile ein % ein, und
+zwar nur wenn dort noch keines existiert.
+-> easy latex auskommentieren
+-----
+ - %
+Eliminiert im selektierten Bereich vor jeder Zeile ein %.
+Es muß dazu wirklich das erste Zeichen der Zeile sein.
+-----
+ ...
+Listet in einem Popup alle möglichen Ergänzung zu einem
+angefangene LaTeX-Befehl. Als zu erkennender Bereich gilt
+der vom letzten \ bis zur Curserposition. Um unnötig lange
+Popups zu vermeiden muß der Bereich länger als ein Buchstabe
+sein. Gelistet werden nur Befehle die unter Optionen aktiviert
+wurden(, wie bei der normalen automatischen Ergänzung auch).
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Funktionen des Eingabefeldes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+siehe dazu auch die Tastaturbelegung des Editorfensters.
+-----
+ Rechtschreibung
+Um ein Wort als bekannt neu zu registrieren, setzt man den
+Curser auf das schon als unbekannt markierte Wort und macht
+einen Doppelklick mit der linken Maustaste.
+-----
+Ergänzung bekannter LateX-Befehle und eigener Tcltexed-Synonyme.
+\fra ---> \frac{}{}
+\enumerate --->
+ \begin{enumerate}
+ \item
+ \end{enumerate}
+Ergänzung der Aufklammern.
+{ ---> {}
+$ ---> $$
+-----
+Textverdopplung bei Umgebungseingaben für \begin und \end
+nach Eingabe von :
+\beg --->
+ \begin{}
+ \end{}
+\bege --->
+ \begin{e}
+ \end{e}
+\begenum --->
+ \begin{enum}
+ \end{enum}
+-----
+Wird bei Vorhandensein eines selektierten Bereiches eine
+ein LaTeX-Befehl mit \ begonnen, so wird dieser Bereich nicht
+gelöscht sondern umklammert.
diff --git a/support/tcltexed/hlp/ger/editort_hlp.txt b/support/tcltexed/hlp/ger/editort_hlp.txt
new file mode 100644
index 0000000000..24158dfe97
--- /dev/null
+++ b/support/tcltexed/hlp/ger/editort_hlp.txt
@@ -0,0 +1,118 @@
+############################################################
+#::editot_hlp::
+# Tastaturbelegung des Editorfensters
+#
+############################################################
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Fuer Liebhaber von Borland etc Tastenkombinationen :
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Block
+ <Control-k><b> Block Begin
+ <Control-k><k> Block End
+ <Control-k><c> Block Copy
+ <Control-k><m> Block Move
+ <Control-k><v> Block Move
+ <Control-k><y> Block Löschen
+ <Control-k><%> Block Auskommentieren
+ <Control-k><space> Block Auskommentierung aufheben
+Sonstige
+ <F1> Hilfe
+ <F2> Speichern
+ <F3> Datei öffnen
+ <F4> Setzt Textcurser in Sichtbereich
+ <F9> Führe latex aus
+ <Control-k><x> Speichern
+ <Control-k><h> Hilfe
+ <Control-y> Zeile Loeschen
+ <Alt-BackSpace> Undo
+ <Shift-Delete> Cut
+ <Control-Insert> Copy
+ <Shift-Insert> Paste
+ <Control-Delete> Clear
+ <Control-l> Erneute Suche
+ <Alt-x> Beendet dieses Programm vollständig
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Einige von mir :
+ <Control-w> Listet möglicher Ergänzungen eines
+ LaTeX-Befehles.
+ <Control-d> Wenn der Curser sich in einem bekannten
+ LaTeX-Befehl befindet wird der nächste folgende
+ selbe LaTeX-Befehl im Text aufgesucht. Befindet sich
+ der Curser nicht in einem bekannten LaTeX-Befehl
+ wird der nächste Eintrag \section aufgesucht.
+ <Control-u> Wie <Control-d> nur wird im Text vor dem
+ Curser gesucht.
+ Liegt der Curser innerhalb eines als falsch geschrieben
+ markierten Wortes, so bewirkt ein doppelter Tastendruck
+ der linken Maustaste die Registrierung dieses Wortes
+ als bekannt.
+ <Control-b> Zeilenumbruch für einen Absatz
+ <Alt-b> Zeilenumbruch für eine Zeile
+ <Control-B> Umkehr von <Control-b>
+ <Alt-B> Umkehr von <Alt-b>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Da Block, Selektion und Clipboard an sich
+unabhängig voneinander sind :
+ <Control-k><p> Einfügen aus Clipboard
+ <Control-k><g> Kopieren in Clipboard
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Windows - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Maus mit rechter Taste öffnet ein Menu mit den Punkten
+ Cut Textbereich ausschneiden in Clipboard
+ Copy Textbereich kopieren in Clipboard
+ Paste Einfügen aus Clipboard
+ Clear Textbereich löschen
+ Block Textbereich zu Block umformatieren
+ + % Textbereich auskommentieren
+ - % Auskommentierung aufheben
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Motif - Standart
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Maus mit linker Taste (1)
+ einfach Selektion aufheben
+ zweifach Das angeklickte Wort selektieren
+ dreifach Die angeklickte Zeile selektieren
+ Shift-einfach Bereich der Selektion verändern
+ Shift-zweifach Selektion auf ganze Worte ergänzen
+ Shift-dreifach Selektion auf ganze Zeilen ergänzen
+ Control Curser umsetzen ohne Verlust der Selektion
+Cursertasten (CT)
+ <Shift-CT> Bereich selektieren (Buchstaben/Zeilen)
+ <Control-CT> Curser um ganze Worte/Absätze verschieben
+ <Shift-Control-CT> Bereich selektieren (Worte/Absätze)
+[Up,Down] Seite rauf runter (ST)
+ <Shift-ST> Bereich selektieren (Seiten)
+ (<Control-ST> Seitenscrolling horizontal)
+[Home,End] Zeile Anfang Ende (ZT)
+ <Shift-ZT> Bereich selektieren (bis Zeileanfang/-ende)
+ <Control-ZT> Curser an Textanfang/-Ende verschieben
+ <Shift-Control-ZT> Bereich selektieren (bis Textanfang/-ende)
+sonstige
+ <Shift-slash> Gesamten Text selektieren
+ <Insert> Selektion einfügen
+
+Die rechte Maustaste ist anders als üblich belegt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+emacs-like
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ <Control-a> = Home
+ <Control-b> = Left
+ (<Control-d> wurde umbesetzt)
+ <Control-e> = End
+ <Control-f> = Right
+ (<Control-k> wurde umbesetzt)
+ <Control-n> = Up
+ <Control-o> = Return+Left
+ <Control-p> = Down
+ <Control-t>
+ <Control-v> = Page up
+ <Meta-b>
+ <Meta-d>
+ <Meta-f>
+ <Meta-less> Curser an Text Anfang
+ <Meta-greater> Curser an Text Anfang
+ <Meta-Backspace>
+ <Meta-Delete>
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/epsf.txt b/support/tcltexed/hlp/ger/epsf.txt
new file mode 100644
index 0000000000..c5fda2fce5
--- /dev/null
+++ b/support/tcltexed/hlp/ger/epsf.txt
@@ -0,0 +1,13 @@
+############################################################
+Packet epsf
+############################################################
+\usepackage{epsf} ::epsf::
+\epsfxsize ::epsfxsize::
+\epsfbox{} ::epsfbox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Die genaue Bedeutung der Befehle ist mir unbekannt, es
+handelt sich hier um eine Umgebung mittels der man Bilder
+im Format eps einbinden kann.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Ich empfehle aber dafür auf das latex2e Packet graphicx
+zurückzugreifen. Ich habe gute Erfahrungen mit ihm gemacht. \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/format.txt b/support/tcltexed/hlp/ger/format.txt
new file mode 100644
index 0000000000..fe079cc677
--- /dev/null
+++ b/support/tcltexed/hlp/ger/format.txt
@@ -0,0 +1,199 @@
+############################################################
+Schriftgrössen
+############################################################
+In Abfolge :
+\tiny ::tiny::
+\scriptsize ::scriptsize::
+\footnotesize ::footnotesize::
+\small ::small::
+\normalsize ::normalsize::
+\large ::large::
+\Large ::Large::
+\LARGE ::LARGE::
+\huge ::huge::
+\Huge ::Huge::
+
+############################################################
+Schriftarten
+############################################################
+latex2e :
+\bfseries Boldface Series ::bfseries::
+\mdseries Standart Series ::mdseries::
+\itshape Italic Shape ::itshape::
+\upshape Standart Shape ::upshape::
+\scshape SMALL CAPS Shape ::scshape::
+\slshape Slanted Shape ::slshape::
+\rmfamily Roman Family ::rmfamily::
+\sffamily Sans Serif Family ::sffamily::
+\ttfamily Typewriter Family ::ttfamily::
+latex 2.0.9 :
+\bf Boldface ::bf::
+\it Italic ::it::
+\rm Roman ::rm::
+\em Emphasize ::em::
+\sc SMALL CAPS ::sc::
+\sl Slanted ::sl::
+\sf Sans Serif ::sf::
+\tt Typewriter ::tt::
+############################################################
+Schriftorientierung
+############################################################
+Umgebung center ::center::
+\begin{center}
+ Text
+\end{center}
+
+Zentriert den eingeschlossen Text
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\centering ::centering::
+
+Zentriert den folgenden Text
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung quote ::quote::
+\begin{quote}
+ Text
+\end{quote}
+
+Text wird links und rechts eingerückt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung quotation ::quotation::
+\begin{quotation}
+ Text
+\end{quotation}
+
+Text wird links und rechts eingerückt, ein neuer
+Absatz begonnen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung flushleft ::flushleft::
+\begin{flushleft}
+ Text
+\end{flushleft}
+
+Text, links zentriert
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung flushright ::flushright::
+\begin{flushright}
+ Text
+\end{flushright}
+
+Text, rechts zentriert
+############################################################
+Schriftsilben
+############################################################
+\dicretionary{vor}{nach}{ohne} ::dicretionary::
+
+Steuert Zeilenumbruch in Wörtern, wenn sich die Buchstaben
+ändern.
+"ohne" gibt den Bereich ohne Umbruch wieder,
+"vor" den Anfang bei Umbruch,
+"nach" das Ende bei Umbruch an dieser Stelle.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\hypentation{Bei-spiel Hal-lo} ::hypentation::
+
+Eine Liste von Trennungshilfen, die für den restlichen Text
+beachtet werden.
+############################################################
+Seite
+############################################################
+\clearpage ::clearpage::
+
+Beendet laufende Seite, gleitende Objekte folgen auf eigenen
+Seiten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\cleardoublepage ::cleardoublepage::
+
+" , fuer Doppelseiten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\newpage ::newpage::
+
+Erzwingt eine neue Seite.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung samepage ::samepage::
+
+Verbietet den Seitenumbruch außerhalb der Absätze.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\pagebreak[n] ::pagebreak::
+
+Empfehlung hier eine neue Seite zu beginnen.
+n (0-4) entspricht der Dringlichkeit.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\nopagebreak[n] ::nopagebreak::
+
+Empfehlung hier keine neue Seite zu beginnen.
+n (0-4) entspricht der Dringlichkeit.
+############################################################
+Zeile
+############################################################
+\linebreak[n] ::linebreak::
+
+Empfehlung hier umzubrechen.
+n (0-4) entspricht der Dringlichkeit.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\nolinebreak[n] ::nolinebreak::
+
+Empfehlung hier nicht umzubrechen.
+n (0-4) entspricht der Dringlichkeit.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sloppy ::sloppy::
+oder als Umgebung sloppypar
+
+Um die Zeilen stets gleichlang zu halten wird in Wörter am
+Zeilenende gebrochen, um lange Abstaende zwischen Wörtern
+zu vermeiden.
+\sloppy bewirkt ein schlampigeres Umgehen mit diesem
+Vorgang, man riskiert grössere Abstände zwischen den Worten
+im diese ganz lassen zu koennen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\fussy ::fussy::
+oder als Umgebung fussypar
+
+Gegenteil zu \sloppy (default)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+############################################################
+Leerräume steuern,füllen
+############################################################
+\dotfill ::dotfill::
+
+Füllt eine Bereich horizontal mit Punkten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\hrulefill ::hrulefill::
+
+Füllt einen Bereich horizontal mit einem Strich.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\fill ::fill::
+
+Die Abstände zwischen Absätzen werden bei LaTeX automatisch
+je nach Textmenge und Leerraum auf der Seite gesetzt.
+Mit diesem Befehl wird erzwungen, das hier der überschüssige
+Raum eingefügt werden soll.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stretch{Dezimalzahl} ::strech::
+
+Eine Länge als vielfaches von \fill.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\hspace{Länge} ::hspace::
+\hspace*{Länge}
+
+Fuegt horizontalen Abstand ein.
+\hfill entspricht \hspace*{\fill}.
+* wird am Textanfang/-ende nicht ignoriert.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\vspace{Länge} ::vspace::
+
+Fuegt vertikalen Abstand ein.
+\vfill entspricht \vspace*{\fill}.
+* wird am Textanfang/-ende nicht ignoriert.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\indent ::indent::
+
+Die erste Zeile des nächsten Absatzes wird eingerückt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\noindent ::noindent::
+
+Die erste Zeile des nächsten Absatzes wird nicht eingerückt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\quad ::quad::qquad::
+\qquad (entspricht \quad\quad)
+
+Horizontaler absoluter Abstand von 1em
diff --git a/support/tcltexed/hlp/ger/gleit.txt b/support/tcltexed/hlp/ger/gleit.txt
new file mode 100644
index 0000000000..2d065920f6
--- /dev/null
+++ b/support/tcltexed/hlp/ger/gleit.txt
@@ -0,0 +1,49 @@
+############################################################
+Gleitende Tabellen und Bilder ::figure::table::
+############################################################
+\begin{figure}[pos] Bild \end{figure}
+\begin{figure*}[pos] Bild \end{figure*}
+\begin{table}[pos] Tabelle \end{table}
+\begin{table*}[pos] Tabelle \end{table*}
+
+
+(mit *) Nur bei zweispaltigen Dokumenten, beide Spalten
+werden zur Verfügung gestellt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Parameter pos
+ h here (im Text)
+ t top (Seitenbeginn)
+ b bottom (Seitenende)
+ p page (eigene Seite mit allen Tabellen, etc.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Stilparameter:
+ Begrenzungsanzahlen für Gleitende Objekte :
+ topnummer
+ bottomnumber
+ totalnumber
+ dbltopnumber (doublepage)
+Zu setzen via \setcounter{}{}
+::topfraction::bottomfraction::textfraction::
+::dbtopfraction::floatpagefraction::dbfloatpagefraction::
+Bruchteile (0.0-1.0), min. max. gleitender Objekte auf
+einer Seite :
+ \topfraction max am Seitenanfang
+ \bottomfraction max am Seitenende
+ \textfraction max im Text
+ \dbtopfraction max am Seitenanfang , doublepage
+ \floatpagefraction min einer gesonderten Seite
+ \dbfloatpagefraction " , auf doublepage
+Zu setzen via \renewcommand{}{}
+::floatsep::textfloatsep::intextsep::dbfloatsep::
+::dbtextfloatsep::
+Abstände zwischen :
+ \floatsep Objekten
+ \textfloatsep Text und Objekt am Seitenanfang/ende
+ \intextsep Objekt und Textrand, im Text
+ \dbfloatsep entspr. bei doublepage
+ \dbtextfloatsep "
+Zu setzen via \setcounter{}{}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\caption[Kurzform fuer Verzeichnis]{Text} ::caption::
+
+Erzeugt Überschrift bzw Unterschrift \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/gpl_hlp.txt b/support/tcltexed/hlp/ger/gpl_hlp.txt
new file mode 100644
index 0000000000..e04861aa1d
--- /dev/null
+++ b/support/tcltexed/hlp/ger/gpl_hlp.txt
@@ -0,0 +1,425 @@
+GNU General Public License - GNU Project - Free Software Foundation (FSF)
+::gpl_hlp::
+Table of Contents
+
+GNU GENERAL PUBLIC LICENSE
+
+Preamble
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+How to Apply These Terms to Your New Programs
+
+GNU GENERAL PUBLIC LICENSE | Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0.
+ This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+
+1.
+ You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+
+2.
+ You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+
+2.a)
+ You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+
+2.b)
+ You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+
+2.c)
+ If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+
+3.
+ You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+
+3.a)
+ Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+
+3.b)
+ Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+
+3.c)
+ Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+
+4.
+ You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+
+5.
+ You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+
+6.
+ Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+
+7.
+ If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+
+8.
+ If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+
+9.
+ The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+
+10.
+ If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+NO WARRANTY
+
+
+11.
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+
+12.
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+
+END OF TERMS AND CONDITIONS
+
+
+
+How to Apply These Terms to Your New Programs
+
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+- one line to give the program's name and an idea of what it does. -
+Copyright (C) 19xx - name of author -
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+Gnomovision version 69, Copyright (C) 19xx - name of author -
+Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
+type `show w'. This is free software, and you are welcome
+to redistribute it under certain conditions; type `show c'
+for details.
+
+
+
+The hypothetical commands `show w' and `show c' should show
+the appropriate parts of the General Public License. Of course, the
+commands you use may be called something other than `show w' and
+`show c'; they could even be mouse-clicks or menu items--whatever
+suits your program.
+
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+
+Yoyodyne, Inc., hereby disclaims all copyright
+interest in the program `Gnomovision'
+(which makes passes at compilers) written
+by James Hacker.
+
+signature of Ty Coon, 1 April 1989
+Ty Coon, President of Vice
+
+
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
+
+
+
+A copy of
+http://www.gnu.org/copyleft/gpl.html
+
+GNU's home page
+http://www.gnu.org/home.html
+
+FSF &amp; GNU inquiries &amp; questions to
+gnu@gnu.org"
+Other ways to contact
+http://www.gnu.org/home.html#ContactInfo
+
+Copyright notice above.
+Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111, USA
+
+Updated:
+16 Feb 1998 tower
diff --git a/support/tcltexed/hlp/ger/graphics.txt b/support/tcltexed/hlp/ger/graphics.txt
new file mode 100644
index 0000000000..0aecc460df
--- /dev/null
+++ b/support/tcltexed/hlp/ger/graphics.txt
@@ -0,0 +1,70 @@
+############################################################
+Einarbeitung grafischer Elemente ::grafics::
+############################################################
+Package graphics
+\usepackage[Treiber]{graphics}
+
+siehe auch in grfguide.dvi wenn vorhanden
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Treiber
+ dvips ps eps
+ xdvi ps eps
+ dviwin ps eps pcx bmp
+############################################################
+Grafik einbinden ::includegraphics::
+############################################################
+\includegraphics{Bild}
+\includegraphics[Breite,Höhe]{Bild}
+\includegraphics*[Breite,Höhe]{Bild}
+
+Baut Bild in den Kontext ein. * bewirkt das Ausschneiden des
+benützten Bildbereiches. Anderenfalls ragt das Bild über
+den restlichen Bereich hinaus. Empfehlenswert ist es diesen
+Befehl mit der figure Umgebung in den Text einzugliedern.
+Einseitig umflossenen Text kann man mit dem latex-packet picins
+erreichen, oder mit "\parbox"en erzwingen.
+############################################################
+Objektmanipulation
+############################################################
+\scalebox{Faktor}{Text etc} ::scalebox::
+Textskalierung
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\resizebox{Breite}{H÷he}{Text etc} ::resizebox::
+Anderes Format
+Breite = ! -> Breite skaliert
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\rotatebox{GradWinkel}{Text etc} ::rotatebox::
+Drehung der Ausgabe
+############################################################
+generelle Deklerationen, etc.
+############################################################
+\ExecuteOptions{OPTION} ::ExecuteOptions::
+
+Setzen von Optionen. Dazu gehören einerseits die Treiber
+andererseits :
+ draft Setzt Rahmen anstatt der Bilder ein -> schnellerer
+ Aufbau des Bildes
+ final Gegenteil zu draft
+ hiderotate Versteckt rotierte Objekte
+ hidescale Versteckt scalierte Objekte
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\graphicspath{path-liste} ::graphicspath::
+
+Setzt den Suchpfad fuer graphics-Objekte. Ein Beispiel für
+unix :
+\graphicspath{{/home/mys/}{pictures}}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsExtensions{ps,eps,gif}
+::DeclareGraphicsExtentions::
+Ergaenzt Bildnamen um diese Endungen um zu den korrekten
+Dateinamen zu erhalten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsRule{ext}{type}{readfile}{command}
+::DeclareGraphicsRule::
+Dateien mit Endung ext werden als Dateien des Types type verstanden
+(z.B. als eps ps gif ..) aus der Datei mit Endung readfile werden
+gegebenenfalls die Boundigbox - Werte eingelesen, und vor Einbau
+wird command ausgefuehrt.
+z.B.
+\DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{´zcat #1}
+ermöglicht das verwenden gepackter Bilder.
diff --git a/support/tcltexed/hlp/ger/graphicx.txt b/support/tcltexed/hlp/ger/graphicx.txt
new file mode 100644
index 0000000000..c7074048ac
--- /dev/null
+++ b/support/tcltexed/hlp/ger/graphicx.txt
@@ -0,0 +1,91 @@
+############################################################
+Einarbeitung grafischer Elemente ::graficx::
+############################################################
+Package graphicx
+\usepackage[Treiber]{graphicx}
+
+siehe auch in grfguide.dvi wenn vorhanden
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Treiber
+ dvips ps eps
+ xdvi ps eps
+ dviwin ps eps pcx bmp
+############################################################
+Grafik einbinden ::includegraphics::
+############################################################
+\includegraphics[Optionslist]{Bild}
+
+Komma separierte Optionen Liste z.B width=1,height=1
+Options :
+ bb Bonding Box,z.B ( = 1 1 100 200)
+ viewport wie bb relativ zur vorhandenen Bonding Box
+ angle Drehwinkel
+ width Skalierung auf diese Breite
+ height Skalierung auf diese Höhe
+ totalheight Skalierung unter Berücksichtigung einer
+ Drehung
+ keepaspectratio Beibehalten der orginalen Seiten-
+ verhältnisse (true,false)
+ scale Skalierung
+ clip Ausschneiden des Bereiches ?
+ type Datentyp der verwandten Datei (z.B. eps)
+gefolgt von type :
+ ext Endung der Datei (sofern noch nicht vorgegeben)
+ read Endung der Datei mit der Bondig Box Information
+ command Auszuführender Befehl
+############################################################
+Objektmanipulation
+############################################################
+\scalebox{Faktor}{Text etc} ::scalebox::
+Textskalierung
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\resizebox{Breite}{H÷he}{Text etc} ::resizebox::
+Anderes Format
+Breite = ! -> Breite skaliert
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\rotatebox[Optionslist]{Winkel}{Text etc} ::rotatebox::
+
+Drehung der Ausgabe
+ origin Rotationszentrum beschrieben durch ein oder zwei
+ der folgenden Zeichen
+ c bildzentriert
+ r right
+ l left
+ b buttom
+ B baseline
+ x x-Koordinate des Rot.
+ y y-Koordinate des Rot.
+ units Was ist zu 360 Grad äquivalent ?
+############################################################
+generelle Deklerationen, etc.
+############################################################
+\ExecuteOptions{OPTION} ::ExecuteOptions::
+
+Setzen von Optionen. Dazu gehören einerseits die Treiber
+andererseits :
+ draft Setzt Rahmen anstatt der Bilder ein -> schnellerer
+ Aufbau des Bildes
+ final Gegenteil zu draft
+ hiderotate Versteckt rotierte Objekte
+ hidescale Versteckt scalierte Objekte
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\graphicspath{path-liste} ::graphicspath::
+
+Setzt den Suchpfad fuer graphics-Objekte. Ein Beispiel fuer
+unix :
+\graphicspath{{/home/mys/}{pictures}}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsExtensions{ps,eps,gif}
+::DeclareGraphicsExtensions::
+Ergänzt Bildnamen um diese Endungen um zu den korrekten
+Dateinamen zu erhalten.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\DeclareGraphicsRule{ext}{type}{readfile}{command}
+::DeclareGraphicsRule::
+Dateien mit Endung ext werden als Dateien des Types type verstanden
+(z.B. als eps ps gif ..) aus der Datei mit Endung readfile werden
+gegebenenfalls die Boundigbox - Werte eingelesen, und vor Einbau
+wird command ausgefuehrt.
+z.B.
+\DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{´zcat #1}
+ermöglicht das verwenden gepackter Bilder.
diff --git a/support/tcltexed/hlp/ger/if.txt b/support/tcltexed/hlp/ger/if.txt
new file mode 100644
index 0000000000..4d9e3699fb
--- /dev/null
+++ b/support/tcltexed/hlp/ger/if.txt
@@ -0,0 +1,23 @@
+############################################################
+Bedingungen ::ifthenelse::whiledo::equal::not::and::or::
+############################################################
+\ifthenelse{test}{wenn_zweig}{sonstzweig}
+\whiledo{test}{schleifentext}
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Abfragebedingungen:
+1. \equal{String1}{String2}
+Ist String1 gleich String2 so ist das Ergebnis wahr.
+(Für Zeichenketten)
+2. n1 < n2
+ n1 = n2
+ n1 > n2
+(Für Zahlen)
+3. \{ test \}
+Klammern für Teiltest
+3.a \not test
+3.b \and test
+3.d \or test
+Als Verknüpfungen von Teiltests
+
diff --git a/support/tcltexed/hlp/ger/index.txt b/support/tcltexed/hlp/ger/index.txt
new file mode 100644
index 0000000000..9699eba838
--- /dev/null
+++ b/support/tcltexed/hlp/ger/index.txt
@@ -0,0 +1,124 @@
+############################################################
+Überschriften
+############################################################
+Folgende Befehle erzeugen Überschriften in folgender
+Hierarchie : ::part::chapter::section::subsection::
+::subsubsection::paragraph::subparagraph::
+\part{Text} Einteilung eines Buches
+\chapter{Text} Kapitel
+\section{Text}
+\subsection{Text}
+\subsubsection{Text}
+\paragraph{Text}
+\subparagraph{Text}
+
+Text entspricht der jeweiligen Überschrift.
+Wird ein * hinter den Befehl gesetzt so wird der entsprechende
+Eintrag nicht ins Inhaltsverzeichnis uebernommen.
+############################################################
+Aufzaehlungen
+############################################################
+\begin{enumerate} ::enumerate::item::
+ \item Text
+\end{enumerate}
+
+Zaehlt die Eintraege durch.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{itemize} ::itemize::
+ \item Text
+\end{itemize}
+
+Stellt ein Symbol vor jeden Eintrag.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{description} ::discription::
+ \item[Kurzform] Text
+\end{description}
+
+Stellt die Kurzform fett gedruckt vor den jeweiligen Eintrag
+############################################################
+Anhang
+############################################################
+Umgebung :
+\begin{appendix} ::appendix::
+\end{appendix}
+
+Erzeugt einen Bereich der mit allen seinen Kapiteln etc.
+als Anhang interpretiert wird.
+############################################################
+Stichwortverzeichnis
+############################################################
+Umgebung :
+\begin{theindex} ::theindex::
+ \item haupt_eintrag
+ \subitem eingerückter sub_eintrag ::subitem::subsubitem::
+ \subsubitem noch weiter eingerueckt der subsub_eintrag
+ \indexspace % erzeugt Leerzeile ::indexspace::
+\end{theindex}
+
+Dient der Erstellung von Inhaltsverzeichnissen.
+Dies muß immer noch von Hand geschehen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Eine automatische Indexerstellung erreicht man folgender Weise :
+Package :
+\usepackage{makeidx} ::makeidx::
+Im Vorspann des Dokumentes trägt man den Befehl
+\makeindex ::makeindex::
+ein. Im flüssigen Text folgen dann Einträge der Form
+\index{haupt_eintrag}
+ setzt einen Haupteintrag
+\index{haupt_eintrag!sub_eintrag}
+ setzt unter Haupteintrag einen untergeordneten
+\index{haupt_eintrag!sub_eintrag!subsub_eintrag}
+ ...
+\index{haupt_eintrag|(}
+Weiterer Text des Dokuments
+\index{haupt_eintrag|)}
+ bewirkt eine von n bis m Angabe, statt der sonst
+ üblichen Seitenangabe.
+\index{haupt_eintrag|see{anderer Haupteintrag}}
+ erstellt einen Querverweis.
+\index{haupt_eintrag|uu}
+ erzeugt eine unterstrichene Seitenzahl.
+Diese Einträge werden in der Datei mit Endung idx gespeichert.
+Mit Aufruf des Programmes "makeindex" wird dann das
+Verzeichnis erstellt. (makeindex text.idx)
+(tcltexed startet makeindex automatisch bei Aufruf von latex,
+ das Resultat wird jedoch erst beim zweiten Durchgang
+berücksichtigt)
+
+An der Stelle an des Befehls
+\printindex ::printindex::
+im Dokument wird dann beim nächsten mal das
+Stichwortverzeichnis eingefügt.
+
+############################################################
+Erstellung und Manipulation der gängigen Verzeichnisse
+############################################################
+
+Syntax :
+\tableofcontents ::tableofcontents::
+
+Erstellt das Inhaltverzeichnis
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\listoffigures ::listofffigures::
+
+Erstellt Liste aller figures
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax :
+\listoftables ::listoftables::
+
+Erstellt Liste aller table
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::addcontentsline::
+\addcontentsline{Art}{Format}{Text}
+
+Schiebt zusätzlichen Eintrag ein.
+
+Art
+ toc für "table of contents"
+ lof für "list of figures"
+ lot für "list of tables"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Syntax : ::addtocontents::
+ \addtocontents{Art}{Text}
diff --git a/support/tcltexed/hlp/ger/input.txt b/support/tcltexed/hlp/ger/input.txt
new file mode 100644
index 0000000000..5920a47fd2
--- /dev/null
+++ b/support/tcltexed/hlp/ger/input.txt
@@ -0,0 +1,37 @@
+############################################################
+Dateien einbinden
+############################################################
+\input{file} ::input::
+
+Fügt 1:1 in Text ein vor Compilierung
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\include{file} ::include::
+
+Wird getrennt abgearbeitet, und dann eingefügt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\includeonly{file1,file2,...,filen} ::includeonly::
+
+Nur files dieser Liste werden wirklich eingefügt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stepcounter{Name} ::stepcounter::
+
+Erhöht den Wert von Name um eins
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\value{Name} ::value::
+
+Gibt den Wert von
+############################################################
+Bildschirm/Kommandozeile
+############################################################
+\typeout{Nachricht} ::typeout::
+
+Gibt beim Compilieren die Nachricht aus.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\typein{Nachricht} ::typein::
+
+Fügt an der Stelle des Auftauchens, nach Ausgabe der
+Nachricht, den eingegeben Text ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\typein[\Befehl]{Nachricht}
+
+ " , aber setzt Befehl auf den eingegeben Text.
diff --git a/support/tcltexed/hlp/ger/latexbox.txt b/support/tcltexed/hlp/ger/latexbox.txt
new file mode 100644
index 0000000000..93b1918e35
--- /dev/null
+++ b/support/tcltexed/hlp/ger/latexbox.txt
@@ -0,0 +1,58 @@
+############################################################
+Boxen / Rahmen
+############################################################
+Übergabeparameter pos :
+ t top
+ b bottom
+ l left
+ r right
+Doppelnennungen sind zum teil möglich.
+############################################################
+unter latex allgemein :
+
+Identisch wie unter Umgebung picture, wenn man die
+Koordinatenangaben nebst Klammern weg läßt
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\rule{Breite}{Hoehe}{Text} ::rule::
+\rule[lift]{Breite}{Hoehe}{Text}
+
+Schwarzer Balken um lift über der Grundlinie mit (Breite.Höhe)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Umgebung minipage ::minipage::
+\begin{minipage}[pos]{Breite}
+\end{minipage}
+oder
+\parbox[pos]{Breite}{Text} ::parbox::
+
+Absatzboxen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Parameter
+::fboxrule::fboxsep::
+\fboxrule Breite der Rahmenlinien
+\fboxsep Leerraum zwischen Rahmen und Text
+############################################################
+Boxen / Rahmen unter der Umgebung picture
+(siehe auch unter picture)
+############################################################
+\makebox(x,y)[pos]{Text} ::makebox::
+ohne Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\framebox(x,y)[pos]{Text} ::framebox::
+mit durchgezogenem Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\dashbox{Strichlänge}(x,y)[pos]{Text} ::dashbox::
+mit gestricheltem Rahmen,
+
+############################################################
+Bildkompositionen im Arbeitsspeicher unter der Umgebung picture
+############################################################
+Erstellt neuen Namen fuer Bildteil
+\newsavebox{\Name} ::newsavebox::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\savebox{\Name}(x,y)[pos]{Text} ::savebox::
+Erstellt neue Komposition unter \Name mit Breite x ,Hoehe y und
+Ansatzpunkt pos
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\usebox{\Name} ::usebox::
+Nutzt erstellte Kompositionen
diff --git a/support/tcltexed/hlp/ger/math.txt b/support/tcltexed/hlp/ger/math.txt
new file mode 100644
index 0000000000..7e7b67fb9c
--- /dev/null
+++ b/support/tcltexed/hlp/ger/math.txt
@@ -0,0 +1,158 @@
+############################################################
+Mathematische Umgebung
+############################################################
+\begin{math} ::math::
+ ...
+\end{math}
+
+oder kürzer
+$ ... $ ::$::
+
+Formeln flüssig im Text.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{displaymath} ::displaymath::
+ ...
+\end{displaymath}
+
+oder kuerzer
+\[ ... \] ::\[::
+::\]::
+
+Formeln abgesetzt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{equation} ::equation::
+\end{equation}
+
+Formeln durchnummeriert.
+############################################################
+Mathematische Befehle
+############################################################
+{Teil_1 \atop Teil_2} ::atop::
+
+Setzt Teil_1 ueber Teil_2.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+{Teil_1 \choose Teil_2} ::choose::
+
+Setzt Teil_1 über Teil_2 und klammert das Ergebnis ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Mit \nolimits wird bei folgenden Befehlen, dass Dahinterstellen
+der Grenzen im $$-Modus unterdrückt : ::nolimits::
+\sum Summenzeichen ::sum::
+\int Integralzeichen ::int::
+\oint Kreisintegralzeichen ::oint::
+\prod Produktzeichen ::prod::
+
+\coprod ::coprod::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\frac{Zähler}{Nenner} ::frac::
+
+Bruch
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\sqrt{} ::sqrt::
+\sqrt[n]{}
+
+Quadrat - bzw n.te - wurzel von ...
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\nonumber ::nonumber::
+
+Stellt die Durchnummerierung aller Gleichungen ab.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\left? \right? ::left::right::
+mit ? aus "" "(" ")" "[" "]" "|" "|" "\{" "\}"
+
+Klammert einen Bereich einer Gleichung und passt sich in
+der Grösse an.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\stackrel{oben}{unten} ::stackrel::
+
+Schiebt verkleinert "oben" über "unten".
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\pmod{a+b} ::pmod::
+
+erzeugt : (mod a + b)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\text{ ... } ::text::
+
+normaler Text eingeschoben in mathematischen Formeln
+############################################################
+nur mit Bildern :
+############################################################
+griechisches Alphabet :
+
+\alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta
+\theta \vartheta \iota \kappa \lambda \mu \nu \xi \pi \varpi
+\rho \varrho \sigma \varsigma \tau \upsilon \phi \varphi \chi
+\psi \omega
+\Gamma \Delta \Theta \Lambda \Xi \Pi \Sigma \Upsilon \Phi
+\Omega
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Punkt(e) vertikal horizontal ..
+
+\cdot \vdots \ldots
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Pfeile :
+
+\leftarrow \rightarrow \uparrow \downarrow
+\leftrightarrow \updownarrow
+\leftharpoonup \rightharpoonup
+\leftharpoondown \rightharpoondown \rightleftharpoons
+\hookleftarrow \hookrightarrow
+\mapsto
+\nwarrow \nearrow \swarrow \searrow
+\longleftarrow \longrightarrow \longleftrightarrow
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Doppelte Pfeile :
+
+\Longleftrightarrow
+\Leftarrow \Rightarrow \Uparrow \Downarrow
+\Longleftarrow \Longrightarrow
+\Leftrightarrow \Updownarrow
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Bekannte Funktionen :
+
+\arccos \arcsin \arctan \arg \cos \cosh \cot \coth \csc \deg
+\det \dim \exp \gcd \hom \inf \ker \lg \lim \liminf \limsub
+\ln \log \max \min \Pr \sec \sin \sinh \sup \tan \tanh
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\imath \jmath
+
+fuer Vektoren gedacht um sich den Punkt unter dem
+Vektorpfeil zu sparen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+haefig genutzt :
+
+\pm \mp plus/minus minus/plus
+\hbar Physiker lieben h-quer
+\nabla Nabla
+\partial Bei partiellen Differentialen
+\prime Ableitungsstrich (?)
+\Re Realteil
+\Im Imaginaerteil
+\infty Unendlichzeichen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Diverse Striche und Klammern ...
+ \hat{} \breve{} \grave{} \bar{} \dot{}
+ \check{} \acute{} \tilde{} \vec{} \ddot{}
+ \overline{} \overbrace{} \widehat{}
+ \underline{} \underbrace{} \widetilde{}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+\times \otimes
+\div \ast \dagger \ddagger \amalg \cap \cup
+\uplus \sqcap \sqcup \vee \wedge \setminus \wr \circ \bullet
+\oslash \odot
+\bigcirc \bigtriangleup \bigtriangledown
+\oplus \ominus
+
+\le \ge \models \ll \gg \neq \subset \supset \doteq
+\subseteq \supseteq \approx \sqsubseteq \sqsupseteq \cong
+\in \ni \equiv \vdash \dashv \perp \smile \frown \parallel
+\prec \succ \sim \preceq \succeq \simeq \asymp \bowtie \mid
+
+
+\aleph \wp
+
+\ell \sonder_strich
+\top \bot \surd \neg \exists \forall \emptyset
+\natural \sharp \flat \angle \backslash \clubsuit \diamondsuit \spadesuit \heartsuit \triangle \mod
+
diff --git a/support/tcltexed/hlp/ger/notiz.txt b/support/tcltexed/hlp/ger/notiz.txt
new file mode 100644
index 0000000000..03db16b816
--- /dev/null
+++ b/support/tcltexed/hlp/ger/notiz.txt
@@ -0,0 +1,32 @@
+############################################################
+Fußnoten
+############################################################
+\footnote{Text} ::footnote::
+\footnote[Nummer]{Text}
+
+Im flüssigen Text erscheint eine Nummer, unter dem Text
+die Fußnote. Mit angegebener Nummer muß das Mitzählen des
+Counters via \addtocounter{footnote}{Anzahl} selbst nachgeholt
+werden.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\footnoterule ::footnoterule::
+
+Linie zwischen Fußnote und Seitentext.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\footnotemark ::footnotemark::
+\footnotetext{Text} ::footnotetext::
+\footnotemark[Nummer]
+\footnotetext[Nummer]{Text}
+
+Setzt Marke in Tabellen, Boxen etc. .
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Stilparameter : ::footnotesep::
+\footnotesep vert. Abstand Fußnoten
+############################################################
+Randnotiz
+############################################################
+\marginpar{Text} ::marginpar::
+
+Text am Seitenrand
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Parameter sind extra als Seitenparameter beschrieben.
diff --git a/support/tcltexed/hlp/ger/pagenumbering.txt b/support/tcltexed/hlp/ger/pagenumbering.txt
new file mode 100644
index 0000000000..1613938576
--- /dev/null
+++ b/support/tcltexed/hlp/ger/pagenumbering.txt
@@ -0,0 +1,11 @@
+Syntax :
+\pagenumbering{num_stil} ::pagenumbering::
+
+Einstellung des Stils der Seitennummerierung.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+num_stil
+ arabic (default)
+ roman roemisch klein
+ Roman roemisch gross
+ alph Alphabet klein
+ Alph Alphabet gross \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/pagestyle.txt b/support/tcltexed/hlp/ger/pagestyle.txt
new file mode 100644
index 0000000000..241df73d17
--- /dev/null
+++ b/support/tcltexed/hlp/ger/pagestyle.txt
@@ -0,0 +1,14 @@
+Syntax :
+\pagestyle{Stil} ::pagestyle::
+
+Legt einen Stil für den generellen Seitenaufbau fest
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Stil
+ plain (default) mit Seitennummer als Fußzeile
+ empty keine Kopf oder Fußzeile
+ headings Seitennummer im Kopf + Ueberschrift Information
+#########################################################
+Syntax :
+\thispagestyle{Stile} ::thispagestyle::
+
+Wie oben jedoch nur für die aktuelle Seite
diff --git a/support/tcltexed/hlp/ger/picture.txt b/support/tcltexed/hlp/ger/picture.txt
new file mode 100644
index 0000000000..06bb0ad8eb
--- /dev/null
+++ b/support/tcltexed/hlp/ger/picture.txt
@@ -0,0 +1,92 @@
+Umgebung picture ::picture::
+\begin{picture}(x,y)
+\end{picture}
+
+Erzeugt eine Bildumgebung mit Grösse (x Breite,y Höhe)
+############################################################
+Parameter : ::unitlength::
+ \unitlength Äquivalent fuer eine Längeneinheit
+Linienbreite ::thicklines:thinlines::linethickness::
+ \thicklines Dicke Linien
+ \thinlines Dünne Linien
+ \linethickness{Breite} Nutzung einer angegebene Linienbreite
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Übergabeparameter pos :
+ t top
+ b bottom
+ l left
+ r right
+Doppelnennungen sind möglich.
+############################################################
+Positionierung von Bildelementen (immer zu verwenden)
+############################################################
+\put(x,y){Text} ::put::
+
+Setzt "Text" auf die Koordinaten (x,y)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\multiput(x1,y1)(x2,y2){N}{Text} ::multiput::
+
+Setzt "Text" N mal zwischen den Koordinaten (x1,y1) und (x2,y2)
+############################################################
+Boxen / Rahmen
+############################################################
+\makebox(x,y)[pos]{Text} ::makebox::
+
+ohne Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\framebox(x,y)[pos]{Text} ::framebox::
+
+mit durchgezogenem Rahmen
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\dashbox{Strichlänge}(x,y)[pos]{Text} ::dashbox::
+
+mit gestricheltem Rahmen,
+############################################################
+Geometrische Formen
+############################################################
+\line(x,y){Text} ::line::
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\vector(x,y){Text} ::vector::
+
+Pfeil
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\circle{Radius} ::circle::
+
+Kreis
+\circle*{Radius}
+
+gefüllter Kreis
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\oval(x,y) ::oval::
+
+Rechteck mit maximal abgerundeten Seiten
+
+\oval(x,y)[pos]
+
+bzw. ein Teil davon. pos gibt an welcher Teil gezeichnet werden
+soll.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\bezier{N}(x1,y1)(x2,y2)(x3,y3) ::bezier::
+
+Agerundeter Winkel mit (x2,y2) als Zentrum. Dabei werden
+N Punkte gezeichnet
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\shortstack[pos2]{Text1\\Text2\\...} ::shortstack::
+
+Stellt Text1 über Text2 ueber ... zentriert wird dabei
+(pos2) l left r right oder c center.
+############################################################
+Bildkompositionen im Arbeitsspeicher
+############################################################
+\newsavebox{\Name} ::newsavebox::
+
+Erstellt neuen Namen fuer Bildteil
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\savebox{\Name}(x,y)[pos]{Text} ::savebox::
+
+Erstellt neue Komposition unter \Name mit Breite x ,Hoehe y und
+Ansatzpunkt pos
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\usebox{\Name} ::usebox::
+
+Nutzt erstellte Kompositionen
diff --git a/support/tcltexed/hlp/ger/readme_hlp.txt b/support/tcltexed/hlp/ger/readme_hlp.txt
new file mode 100644
index 0000000000..04165831cc
--- /dev/null
+++ b/support/tcltexed/hlp/ger/readme_hlp.txt
@@ -0,0 +1,43 @@
+Tcltexed | Version 2.8 | 02. Nov 2006 | Martin Strauß
+::readme_hlp::
+Copyright (C) 1999 Martin Strauß
+
+
+ Tcltexed ein LaTeX-Editor
+
+ !!! Achtung, dieses Programm ist noch unter Konstruktion !!!!
+ Ich habe inzwischen so einiges an Text bearbeitet mit diesem Programm,
+ aber für den Fall der Fälle ... alle gefundenen Fehler bitte an mich weiterleiten.
+ Am besten per email : mys@faveve.uni-stuttgart.de
+
+ kurze Anleitung :
+ Die systematische Beschreibung ist unter "Help" "Tcltexed" zu finden.
+ Auf jedenfall lohnt es sich ab und zu mal <F1> zu drücken.
+ Für jeden bekannten Latexbefehle gibt es eine kurze Beschreibung !!!
+ Der Tastatursatz ist an den von Motiv, emacs und joe / Borland Pascal
+ angelehnt. Zuzüglich eigener Tastenkombinationen.
+ Ist ein Editorfenster geöffnet so gibt es links oben ein Bildchen.
+ Das Fenster mit dem farbigen Bild (mit Maus draufdrücken) ist das
+ Hauptdokument.
+ Drückt man auf ein Bild in der mathematischen Sammlung sollte der
+ passende Befehl automatisch ins aktuelle Editorfenster eingefügt werden.
+ Aktuelles Fenster -> Fenster mit dem Bild mit Ringen.
+ Gibt man einen latex-Befehl ein, so versucht tcltexed diesen zu erkennen
+ und gegebenenfalls abzuschliessen. (z.B. wird \ga zu \gamma korrigiert)
+ Unter Optionen findet man die Möglichkeit dieses Verhalten abzustellen.
+ Die Leiste oben im Editorfenster dient dem direkten Aufruf der Programme
+ die da draufstehen.
+
+ Rein prinzipiell ist dieses Programm unter unix, linux, Win95 WinNT etc
+ lauffähig. (Falls einer das Program für nen Mac haben will, sollte er/sie
+ sich bei mir melden). Man benötigt hierzu die Scriptsprache Tcl/Tk die es
+ kostenlos im Internet gibt.
+ ... es liegt im Netz !!!! Näheres unter :
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
+
+ Frage ? Fehler gefunden ? Ideen fuer die Zukunft ? Sonstiges
+ bitte an mich schreiben :
+
+ Martin Strauss
+ mys@faveve.uni-stuttgart.de
+ http://wwwcip.rus.uni-stuttgart.de/~phy10932/index.html
diff --git a/support/tcltexed/hlp/ger/sonder.txt b/support/tcltexed/hlp/ger/sonder.txt
new file mode 100644
index 0000000000..7ac5f90093
--- /dev/null
+++ b/support/tcltexed/hlp/ger/sonder.txt
@@ -0,0 +1,22 @@
+############################################################
+Sonderbares
+############################################################
+\today ::today::
+
+Fügt Datum der Erstellung mittels LaTeX ein.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+percent (englisch per cent)
+\% ::%::
+
+Das Prozentzeichen % wird bei LaTeX gemeinhin
+als Auskommutierungszeichen benutzt.
+Um im Text eine Ausgabe dieses Zeichens zu erreichen
+muss es als Zeichenfolge \% in den Text eingefügt werden.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\LaTeX ::LaTeX::
+
+Fügt LaTeX-Logo ein.
+
+\LaTeX2e ::LaTeX2e::
+
+Fügt LaTeX2e-Logo ein. \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/tabbing.txt b/support/tcltexed/hlp/ger/tabbing.txt
new file mode 100644
index 0000000000..f8d30dfdeb
--- /dev/null
+++ b/support/tcltexed/hlp/ger/tabbing.txt
@@ -0,0 +1,15 @@
+############################################################
+Tabulatorsetzung ::tabbing::
+############################################################
+\begin{tabbing}
+eins\=zwei\=drei\\ % Musterzeile (hier drei Spalten)
+ 1 \> 2 \> 3 \\ % angepaßte Zeile
+ ...\\
+\end{tabbing}
+
+Soll die Musterzeile nicht sichtbar sein -> endet mit \kill
+statt \\.
+\+ setzt dauerhaft für alle folgenden Zeilen alle Spalten
+ein TAB nach rechts versetzt.
+\= erstellt einen neuen TAB.
+\> verschiebt zum nächsten TAB. \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/tabelle.txt b/support/tcltexed/hlp/ger/tabelle.txt
new file mode 100644
index 0000000000..9dd49d92b7
--- /dev/null
+++ b/support/tcltexed/hlp/ger/tabelle.txt
@@ -0,0 +1,72 @@
+############################################################
+Tabellen ::array::tabular::
+############################################################
+
+Übergabeparameter pos :
+ t top
+ b bottom
+Spaltenformat besteht zusammengesetzt aus
+ l left (neue Spalte)
+ r right (neue Spalte)
+ c center (neue Spalte)
+ p{Breite} Spaltenbreite
+ *{n}{Spaltenformat-2} n-mal Spaltenformat-2
+ | vertikaler Strich
+ || vertikaler Doppelstrich
+ @{Text} fuegt Text ein
+############################################################
+Tabellenumgebungen
+############################################################
+
+Die Anzahl der Spalten ergibt sich ueber die Anzahl
+der l,r,c im Textstring Spaltenformat.
+Neue Zeilen werden durch Zeilenumbruch bewirkt.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{array}[pos]{Spaltenformat}
+ Spalte1 & Spalte2 & ... \\
+ ...
+\end{array}
+
+Nur in mathematischen Modi ..
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{tabular}[pos]{Spaltenformat}
+\end{tabular}
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\begin{tabular*}{Tabellenbreite}[pos]{Spaltenformat}
+\end{tabular*}
+############################################################
+Nützliche zum Teil unabhängige Befehle
+############################################################
+\hline ::hline::
+
+Horizontale Linie,
+direkt nach \\ in Tabellen bewirkt eine Unterteilung
+in ganze Zeilen. (unabh.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\vline ::vline::
+
+Vertikale Linie,
+innerhalb von Spalten bewirkt eine vertikale Unterteilung
+in zwei Spalten. (unabh.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\cline{n-m} ::cline::
+
+Horizontale Linie von Spalte n nach m,
+direkt nach \\ in Tabellen. (abh.)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\multicolumn{Spaltenanzahl}{Spaltenformat}{Text}
+::multicolumn::
+Vereinigt die nächsten Spalten angegebener Spaltenzahl zu einer,
+die wiederum neu eingeteilt werden kann. (abh.)
+############################################################
+Stilparameter
+############################################################
+::tabcolsep::arraycolsep::arrayrulewidth::doublerulesep::
+\tabcolsep Spaltenzwischenraum bei tabular
+\arraycolsep Spaltenzwischenraum bei array
+\arrayrulewidth Liniendicke
+\doublerulesep Abstand von Doppellinien
+via \setlength{}{}
+::arraystretch::
+\arraystretch Zeilenabstand als Faktor (default 1)
+via \renewcommand{}{} \ No newline at end of file
diff --git a/support/tcltexed/hlp/ger/tcltexed_hlp.txt b/support/tcltexed/hlp/ger/tcltexed_hlp.txt
new file mode 100644
index 0000000000..08f0b9cfac
--- /dev/null
+++ b/support/tcltexed/hlp/ger/tcltexed_hlp.txt
@@ -0,0 +1,124 @@
+############################################################
+#::tcltexed_hlp::
+# Tcltexed steht fuer tcl-(la)tex-ed(itor)
+#
+############################################################
+
+Im wesentlichen Besteht Tcltexed aus zwei Teilbereichen. Zum
+einen der Funktionsbereich der Editorfenster, die in unter
+"Editor" beschrieben wird, zum anderen eine ganze Menge an
+Hilfsdiensten, die allesamt über das Hauptfenster aufgerufen
+werden.
+Alle Aktionen auf einen Text beziehen sich auf das Editorfenster
+das den Fokus zuletzt besessen hat, bzw nach meiner Definition
+gerade besitzt. Nähres dazu in der Beschreibung "Editor".
+
+Im folgenden werde ich die verschiedenen Funktionen der über
+das Hauptfenster aufrufbaren Dienste aufzählen und beschreiben.
+
+Menupunkte des Hauptfensters
+1. File
+ a) New
+Hiermit kann man neue LaTeX-Texte beginnen. Es gibt dazu einen
+internen Default-Text, der bei externes Default-Textes im
+Basisverzeichnis unter default.tex
+ b) Load
+Laden einer vorhandenen Datei ...
+ c) Append
+Fügt im Text den Inhalt der Datei ab der Position des Cursers
+ein.
+ d) Save e) Save As
+Speichert den Text.
+ f) Quit
+Beendet die Arbeit mit Tcltexed. Alle Fenster werden (wenn nötig
+mit Rückfrage) geschlossen.
+
+2. Edit
+ a) Clear
+Löschung des gesamten Textes.
+ b) Zeilenumbruch
+Über dieses Untermenü kann man entweder für den gesamten Text,
+einen Absatz oder eine Zeile einen Zeilenumbruch bewirken.
+Endet eine Zeile mit einem Leerzeichen so wird die folgende Zeile
+als Fortsetzung verstanden. Wird ein Zeilenumbruch auf eine Zeile
+ausgeführt, so wird die Zeile inklusive der Fortsetzungen neu gebrochen.
+Wird im Untermenü eine Umkehr des Zeilenumbruchs gewählt, so werden
+für die betroffenen Zeilen die Fortsetzungen wieder zusammengefügt,
+und an die jeweilige Anfangszeile angehängt.
+Ist die erste Zeile um einige Leerzeichen eingerückt, so werden auch
+die zum Umbruch gehörenden Zeilen um diese Leerzeichen eingerückt.
+ c) Rechtschreibung
+Rechtschreibkorrektur des aktuellen Textes.
+ d) registriere Wort
+Wenn sich der Curser im aktuellen Text in einem als falsch
+markierten Wort befindet, dann wird dieses Wort als richtig
+geschrieben registriert.
+ e) \"a..\ss -> ä..ß
+Wandelt alle Latex-Befehle zur Darstellung von Umlauten in Umlaute um.
+ f) ä..ß -> \"a..\ss
+Wandelt alle Umlaute in die zugehörigen Latex-Befehle um.
+ g) "a.."s -> ä..ß
+Wandelt Latex-Befehle zur Darstellung von Umlauten aus dem [german]{babel}
+Packet in Umlaute um.
+ h) ä..ß -> "a.."s
+Wandelt Umlaute in die zugehörigen Latex-Befehle des [german]{babel}
+Packetes um. Dieses Format ist mit "ispell -t -d deutsch file.tex" konform.
+ i) Search
+Suchen und Ersetzen im Text.
+Mit oder ohne Beachtung der Groß/Kleinschreibung
+ j) My Own
+Ermöglicht das Eintragen von LaTeX-Sequenzen die per Buttondruck
+in den Text eingefügt werden. Diese eigenen LaTeX-Sequenzen
+werden mit "Optionen speichern" mit abgespeichert. Und bleiben
+dann für den nächsten Aufruf von Tcltexed erhalten.
+
+3. Options
+ a) AutoKlammerzu
+Ist diese Funktion aktiviert, so werden Aufklammern stehts
+mit Zuklammern ergänzt.
+ { --> {}
+ b) Packete/etc
+Hier kann man die automatische Ergaenzung von LaTeX-Befehlen
+aktivieren, bzw. deaktivieren. Dies geschieht selektiv fuer
+verschiedene LaTeX-Packete oder Umgebungen.
+Beispiel einer Ergänzung :
+\fra --> \frac{}{}
+Es ist zu beachten das je mehr LaTeX-Befehle erkannt werden sollen
+desto später oder garnicht ergänzt wird. Die Befehle werden
+einander zu ähnlich.
+ c) Sprache
+Sprachwahl fuer Texte, Buttons und Hilfen.
+Die Einstellung verändert die Sprache für den nächsten Start
+des Programmes. Sie muß folglich gespeichert werden (s.u.).
+ d) Schriftgröße
+Setzt die Schriftgröße für das Editorfenster fest.
+ e) Save Options
+Speichert alle durch User konfigurierbaren Bereiche von Tcltexed in
+eine Datei. Diese werden dann automatisch beim nächsten Start geladen.
+(Ihr Dateiname ist unter unix .tcltexed, unter Windows tcltexed.ini .
+Ich rate aber ab diese Datei von Hand zu editieren. Dateien älterer
+Tcltexedversionen werden ignoriert, bzw. überschrieben)
+
+4. Mathematik
+Liefert eine Menge von Standartbefehlen der Mathematikumgebung von
+LaTeX in Form von Buttons mit Beschriftung oder Bildern.
+Ein Druck mit der Maus fügt den entsprechenden Befehl in den Text
+an der Position des Cursers ein.
+
+5. Allgemeines
+Wie 4. , hier jedoch Sammlungen anderer Befehle.
+
+6. Help
+Habt Ehrfurcht ! Dies ist die Hilfe fuer Not leidende LaTeX Opfer.
+ a) Tcltexed
+Liefert wie ihr sicherlich schon gemerkt habt, unter anderem diesen
+Text, sowie weitere Hilfen und ähnliches zu Tcltexed selbst.
+ b) LaTeX
+Habt noch mehr Ehrfurcht !!
+Hier sind alle Tcltexed (bzw mir) zu Ohren gekommenen LaTeX-Befehle
+noch einmal alphabetisch aufgelistet. Davor Ehrfurcht ?? Nun zu vielen
+davon gibt es Kurzbeschreibungen oder Bildchen ... (ne Scheiß Arbeit)
+ + <Return> + linke Maustaste zeigen Hilfe an
+ rechte Maustaste fügt den Befehl ein
+ Bei Tastendruck A-Z a-z wird an den entsprechenden ersten Eintrag
+ gesprungen.
diff --git a/support/tcltexed/hlp/ger/titlepage.txt b/support/tcltexed/hlp/ger/titlepage.txt
new file mode 100644
index 0000000000..247ae4e4c6
--- /dev/null
+++ b/support/tcltexed/hlp/ger/titlepage.txt
@@ -0,0 +1,12 @@
+Umgebung titlepage (Syntax siehe begin oder end)
+::titlepage::
+Dient der freien Gestaltung der Titelseite.
+Wird diese Freiheit kann man sich folgender Befehle
+bedienen.
+#########################################################
+Syntax : ::title::author::and::date::thanks::maketitle::
+\title{Titel des Dokuments}
+\author{Dieser Einer\\hier \and Ein Anderer\\dort}
+\date{Datumstext} (optional)
+\thanks{Dank an bla} (optional)
+\maketitle
diff --git a/support/tcltexed/hlp/ger/usepackage.txt b/support/tcltexed/hlp/ger/usepackage.txt
new file mode 100644
index 0000000000..8391dfc768
--- /dev/null
+++ b/support/tcltexed/hlp/ger/usepackage.txt
@@ -0,0 +1,22 @@
+Syntax : ::usepackage::
+\usepackage{PACKET}
+\usepackage[Option]{PACKET}
+
+
+Lädt zusätzliche Latex-Packete.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+PACKET : (es handelt sich um Makrodateien mit Endung .sty)
+ babel Latex-Stile fuer verschiedenen Sprachen
+ Option : german, english ...
+ german für deutschen Stil beim Latex-Format (z.B. wird Chapter zu
+ Kapitel)
+ umlaut(e) übersetzt Zeichen außerhalb des ascii-Zeichensatzes beim
+ compilieren automatisch in das latex-Format um. (z.B. ß zu \3)
+ graficx für Einbindung von Bildern und grafischen Manipulation
+ grafics simpleres Packet als graficx mit selber Funktion
+ epsf für Einbindung von eps-Bildern (ich empfehle graficx zu nutzen)
+(American Mathmatik Society)
+ amsmath für Formelsätze
+ amssymb für Symbole
+ amsfonts für Fonts
+ amscd für Flußdiagramme
diff --git a/support/tcltexed/hlp/ger/verbatim.txt b/support/tcltexed/hlp/ger/verbatim.txt
new file mode 100644
index 0000000000..8b149d3708
--- /dev/null
+++ b/support/tcltexed/hlp/ger/verbatim.txt
@@ -0,0 +1,16 @@
+############################################################
+Orginaltext ::verbatim::
+############################################################
+\begin{verbatim}
+ Text
+\end{verbatim}
+
+fügt Text 1 zu 1 in den laufenden LaTeX-formatierten Text ein.
+Der erste wieder beachtete LaTeX-Befehl ist \end{verbatim}.
+
+\begin{verbatim*}
+ Text
+\end{verbatim*}
+
+Analog wie oben, aber statt Space werden sichtbare Platzhalter
+gesetzt. \ No newline at end of file
diff --git a/support/tcltexed/hlp/index b/support/tcltexed/hlp/index
new file mode 100644
index 0000000000..21271683e6
--- /dev/null
+++ b/support/tcltexed/hlp/index
@@ -0,0 +1 @@
+fontshape {eng/Typefaces.txt bre/Typefaces.txt} put {eng/Environments.txt ger/picture.txt bre/Environments.txt} bibliography {eng/Environments.txt ger/bezug.txt bre/Environments.txt} LaTeX2e {eng/sonder.txt ger/sonder.txt bre/sonder.txt} ref {eng/References.txt ger/bezug.txt bre/References.txt} textnormal {eng/Typefaces.txt bre/Typefaces.txt} mathbb {eng/amsfonts.txt ger/amsfonts.txt bre/amsfonts.txt} noindent {eng/Paragraphs.txt ger/format.txt bre/Paragraphs.txt} line {eng/Environments.txt ger/picture.txt bre/Environments.txt} newenviroment ger/counter.txt dashbox {eng/Environments.txt ger/latexbox.txt ger/picture.txt bre/Environments.txt} epsfxsize {eng/epsf.txt ger/epsf.txt bre/epsf.txt} footnotemark {eng/Footnotes.txt ger/notiz.txt bre/Footnotes.txt} mathbf {eng/Typefaces.txt bre/Typefaces.txt} arabic {eng/Counters.txt bre/Counters.txt} nocite {eng/Environments.txt ger/bezug.txt bre/Environments.txt} texttt {eng/Typefaces.txt bre/Typefaces.txt} pagestyle {eng/Styles.txt ger/pagestyle.txt bre/Styles.txt} xleftarrow {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} enumerate {eng/Environments.txt ger/index.txt bre/Environments.txt} stopbreaks {eng/Letters.txt bre/Letters.txt} fboxrule ger/latexbox.txt boldsymbol {eng/amsfonts.txt ger/amsfonts.txt bre/amsfonts.txt} addcontentsline {eng/Contents.txt ger/index.txt bre/Contents.txt} slshape {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} markboth {eng/Styles.txt bre/Styles.txt} Huge {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} oddsidemargin ger/Seitenformat.txt textup {eng/Typefaces.txt bre/Typefaces.txt} textfloatsep ger/gleit.txt tabular {eng/Environments.txt ger/tabelle.txt bre/Environments.txt} linethickness {eng/Environments.txt ger/picture.txt bre/Environments.txt} section {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} nonumber ger/math.txt paragraph {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} part {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} displaymath ger/math.txt newline {eng/Breaking.txt bre/Breaking.txt} figure {eng/Environments.txt ger/gleit.txt bre/Environments.txt} Large {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} arraystretch ger/tabelle.txt framebox {eng/Environments.txt eng/Spaces.txt ger/latexbox.txt ger/picture.txt bre/Environments.txt bre/Spaces.txt} vfill {eng/Spaces.txt bre/Spaces.txt} value {eng/Counters.txt ger/counter.txt ger/input.txt bre/Counters.txt} scshape {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} newenvironment {eng/Definitions.txt bre/Definitions.txt} label {eng/References.txt ger/bezug.txt bre/References.txt} flushright {eng/Environments.txt ger/format.txt bre/Environments.txt} overbrace {eng/Math.txt bre/Math.txt} ! {eng/Math.txt bre/Math.txt} # {eng/Characters.txt bre/Characters.txt} kill {eng/Environments.txt bre/Environments.txt} {$} {eng/Math.txt ger/math.txt bre/Math.txt} it ger/format.txt Biggl {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} % {eng/Characters.txt ger/sonder.txt bre/Characters.txt} listoffigures {eng/Contents.txt bre/Contents.txt} hrulefill {eng/Spaces.txt ger/format.txt bre/Spaces.txt} ' {eng/Environments.txt bre/Environments.txt} equal ger/if.txt ( {eng/Math.txt bre/Math.txt} not ger/if.txt name {eng/Letters.txt bre/Letters.txt} ) {eng/Math.txt bre/Math.txt} headheight ger/Seitenformat.txt Biggr {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} amsmath {eng/amsmath.txt eng/amsthm.txt ger/amsmath.txt bre/amsmath.txt bre/amsthm.txt} + {eng/Environments.txt bre/Environments.txt} whiledo ger/if.txt settodepth {eng/Lengths.txt bre/Lengths.txt} , {eng/Math.txt bre/Math.txt} - {eng/Breaking.txt eng/Environments.txt bre/Breaking.txt bre/Environments.txt} mathfrak {eng/amsfonts.txt ger/amsfonts.txt bre/amsfonts.txt} hoffset ger/Seitenformat.txt intertext {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} epsfbox {eng/epsf.txt ger/epsf.txt bre/epsf.txt} twocolumn {eng/Layout.txt bre/Layout.txt} huge {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} multicolumn {eng/Environments.txt ger/tabelle.txt bre/Environments.txt} author {eng/Styles.txt ger/titlepage.txt bre/Styles.txt} include {eng/Input.txt ger/input.txt bre/Input.txt} totalheight {eng/Lengths.txt bre/Lengths.txt} footnotesep ger/notiz.txt Bigl {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} end {eng/Environments.txt ger/begin.txt bre/Environments.txt} dbtextfloatsep ger/gleit.txt thanks {eng/Styles.txt ger/titlepage.txt bre/Styles.txt} fussy {eng/Breaking.txt ger/format.txt bre/Breaking.txt} large {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} gather {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} {;} {eng/Math.txt bre/Math.txt} pagenumbering {eng/Styles.txt ger/pagenumbering.txt bre/Styles.txt} Bigr {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} < {eng/Environments.txt bre/Environments.txt} arraycolsep ger/tabelle.txt = {eng/Environments.txt bre/Environments.txt} underline {eng/Math.txt bre/Math.txt} equation {eng/Environments.txt ger/math.txt bre/Environments.txt} > {eng/Environments.txt bre/Environments.txt} vline {eng/Environments.txt ger/tabelle.txt bre/Environments.txt} itemize {eng/Environments.txt ger/index.txt bre/Environments.txt} onecolumn {eng/Layout.txt bre/Layout.txt} DeclareGraphicsExtensions ger/graphicx.txt unitlength ger/picture.txt ttfamily {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} newcounter {eng/Counters.txt ger/counter.txt bre/Counters.txt} oval {eng/Environments.txt ger/picture.txt bre/Environments.txt} atop ger/math.txt indexspace ger/index.txt dbfloatsep ger/gleit.txt setcounter {eng/Counters.txt ger/counter.txt bre/Counters.txt} list {eng/Environments.txt bre/Environments.txt} theoremstyle {eng/amsthm.txt ger/amsthm.txt bre/amsthm.txt} biggl {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} columnseprule ger/Seitenformat.txt dotfill {eng/Spaces.txt ger/format.txt bre/Spaces.txt} setlength {eng/Lengths.txt ger/counter.txt ger/Seitenformat.txt bre/Lengths.txt} closing {eng/Letters.txt bre/Letters.txt} input {eng/Input.txt ger/input.txt bre/Input.txt} marginparwidth ger/Seitenformat.txt readme_hlp ger/readme_hlp.txt refstepcounter {eng/Counters.txt bre/Counters.txt} nolinebreak {eng/Breaking.txt ger/format.txt bre/Breaking.txt} par {eng/Paragraphs.txt bre/Paragraphs.txt} biggr {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} cline {eng/Environments.txt ger/tabelle.txt bre/Environments.txt} prod ger/math.txt usecounter {eng/Counters.txt bre/Counters.txt} addtolength {eng/Lengths.txt ger/counter.txt bre/Lengths.txt} address {eng/Letters.txt bre/Letters.txt} ddots {eng/Math.txt bre/Math.txt} hfill {eng/Spaces.txt bre/Spaces.txt} pushtabs {eng/Environments.txt bre/Environments.txt} eqnarray {eng/Environments.txt bre/Environments.txt} frac {eng/Math.txt ger/math.txt bre/Math.txt} linebreak {eng/Breaking.txt ger/format.txt bre/Breaking.txt} verse {eng/Environments.txt bre/Environments.txt} ldots {eng/Math.txt bre/Math.txt} bigl {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} mathit {eng/Typefaces.txt bre/Typefaces.txt} raggedbottom {eng/Layout.txt bre/Layout.txt} theindex ger/index.txt or ger/if.txt strech ger/format.txt {[} {eng/Math.txt bre/Math.txt} \\ {eng/Breaking.txt bre/Breaking.txt} bigr {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} voffset ger/Seitenformat.txt textbf {eng/Typefaces.txt bre/Typefaces.txt} reversemarginpar {eng/Margin.txt bre/Margin.txt} \] {eng/Math.txt bre/Math.txt} footnoterule ger/notiz.txt fontencoding {eng/Typefaces.txt bre/Typefaces.txt} ^ {eng/Math.txt bre/Math.txt} document {eng/Starting.txt ger/documentclass.txt bre/Starting.txt} verb {eng/Environments.txt bre/Environments.txt} _ {eng/Math.txt bre/Math.txt} ` {eng/Environments.txt bre/Environments.txt} table {eng/Environments.txt ger/gleit.txt bre/Environments.txt} marginparsep ger/Seitenformat.txt xrightarrow {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} a {eng/Environments.txt bre/Environments.txt} topskip ger/Seitenformat.txt vector {eng/Environments.txt ger/picture.txt bre/Environments.txt} ps {eng/Letters.txt bre/Letters.txt} normalsize {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} right ger/math.txt footskip ger/Seitenformat.txt flushbottom {eng/Layout.txt bre/Layout.txt} choose ger/math.txt marginpar {eng/Margin.txt ger/notiz.txt bre/Margin.txt} depth {eng/Lengths.txt bre/Lengths.txt} sc ger/format.txt thispagestyle {eng/Styles.txt ger/pagestyle.txt bre/Styles.txt} rm ger/format.txt tabbing {eng/Environments.txt ger/tabbing.txt bre/Environments.txt} substack {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} hline {eng/Environments.txt ger/tabelle.txt bre/Environments.txt} marginparpush ger/Seitenformat.txt sf ger/format.txt usepackage {eng/Document.txt ger/usepackage.txt bre/Document.txt} emph {eng/Typefaces.txt bre/Typefaces.txt} enlargethispage {eng/Breaking.txt bre/Breaking.txt} coprod ger/math.txt ExecuteOptions {ger/graphics.txt ger/graphicx.txt} sl ger/format.txt swapnumbers {eng/amsthm.txt ger/amsthm.txt bre/amsthm.txt} sideset {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} Vmatrix {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} footnotetext {eng/Footnotes.txt ger/notiz.txt bre/Footnotes.txt} usefont {eng/Typefaces.txt bre/Typefaces.txt} hspace {eng/Spaces.txt ger/format.txt bre/Spaces.txt} LaTeX {eng/sonder.txt ger/sonder.txt bre/sonder.txt} epsf {eng/epsf.txt ger/epsf.txt bre/epsf.txt} gpl_hlp {eng/gpl_hlp.txt ger/gpl_hlp.txt bre/gpl_hlp.txt} chapter {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} mathversion {eng/Typefaces.txt bre/Typefaces.txt} savebox {eng/Spaces.txt ger/latexbox.txt ger/picture.txt bre/Spaces.txt} scalebox {ger/graphics.txt ger/graphicx.txt} topfraction ger/gleit.txt fnsymbol {eng/Counters.txt bre/Counters.txt} theorem {eng/Environments.txt bre/Environments.txt} telephone {eng/Letters.txt bre/Letters.txt} matrix {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} textheight ger/Seitenformat.txt graphicspath {ger/graphics.txt ger/graphicx.txt} tt ger/format.txt subparagraph {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} discription {eng/Environments.txt ger/index.txt bre/Environments.txt} floatpagefraction ger/gleit.txt indent ger/format.txt circle {eng/Environments.txt ger/picture.txt bre/Environments.txt} left ger/math.txt int ger/math.txt addtocounter {eng/Counters.txt bre/Counters.txt} caption ger/gleit.txt usebox {eng/Spaces.txt ger/latexbox.txt ger/picture.txt bre/Spaces.txt} raggedright {eng/Environments.txt bre/Environments.txt} today {eng/sonder.txt ger/sonder.txt bre/sonder.txt} math ger/math.txt doublerulesep ger/tabelle.txt sinature {eng/Letters.txt bre/Letters.txt} amssymb {eng/amssymb.txt ger/amssymb.txt bre/amssymb.txt} split {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} listoftables {eng/Contents.txt ger/index.txt bre/Contents.txt} printindex ger/index.txt upshape {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} editort_hlp {eng/editort_hlp.txt bre/editort_hlp.txt} {\[} ger/math.txt array {eng/Environments.txt ger/tabelle.txt bre/Environments.txt} rotatebox {ger/graphics.txt ger/graphicx.txt} tcltexed_hlp {eng/tcltexed_hlp.txt ger/tcltexed_hlp.txt bre/tcltexed_hlp.txt} settoheight {eng/Lengths.txt bre/Lengths.txt} stackrel ger/math.txt {\]} ger/math.txt DeclareGraphicsRule {ger/graphics.txt ger/graphicx.txt} quad ger/format.txt LARGE {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} sffamily {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} hypentation {eng/Breaking.txt ger/format.txt bre/Breaking.txt} vmatrix {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} copyright_hlp {eng/copyright_hlp.txt ger/copyright_hlp.txt bre/copyright_hlp.txt} cite {eng/Environments.txt ger/bezug.txt bre/Environments.txt} arrayrulewidth ger/tabelle.txt fboxsep ger/latexbox.txt dbfloatpagefraction ger/gleit.txt CD {eng/amscd.txt ger/amscd.txt bre/amscd.txt} vdots {eng/Math.txt bre/Math.txt} subequation {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} small {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} mathrm {eng/Typefaces.txt bre/Typefaces.txt} newcommand {eng/Definitions.txt ger/counter.txt bre/Definitions.txt} oint ger/math.txt boxed {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} subsubitem ger/index.txt mathsf {eng/Typefaces.txt bre/Typefaces.txt} bfseries {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} listofffigures ger/index.txt clearpage {eng/Breaking.txt ger/format.txt bre/Breaking.txt} tabcolsep ger/tabelle.txt medskip {eng/Spaces.txt bre/Spaces.txt} thebibliography {eng/Environments.txt ger/bezug.txt bre/Environments.txt} ifthenelse ger/if.txt centering {eng/Environments.txt ger/format.txt bre/Environments.txt} amscd {eng/amscd.txt ger/amscd.txt bre/amscd.txt} topmargin ger/Seitenformat.txt fontsize {eng/Typefaces.txt bre/Typefaces.txt} textit {eng/Typefaces.txt bre/Typefaces.txt} editor_hlp {eng/editor_hlp.txt ger/editor_hlp.txt bre/editor_hlp.txt} minipage {eng/Environments.txt ger/latexbox.txt bre/Environments.txt} qquad ger/format.txt cdots {eng/Math.txt bre/Math.txt} columnsep ger/Seitenformat.txt item {eng/Environments.txt ger/index.txt bre/Environments.txt} opening {eng/Letters.txt bre/Letters.txt} fontfamily {eng/Typefaces.txt bre/Typefaces.txt} typein {eng/Terminal.txt ger/input.txt bre/Terminal.txt} sqrt {eng/Math.txt ger/math.txt bre/Math.txt} frame {eng/Environments.txt bre/Environments.txt} intextsep ger/gleit.txt textwidth ger/Seitenformat.txt documentclass {eng/Document.txt ger/documentclass.txt bre/Document.txt} newpage {eng/Breaking.txt ger/format.txt bre/Breaking.txt} settowidth {eng/Lengths.txt ger/counter.txt bre/Lengths.txt} pmod ger/math.txt smallskip {eng/Spaces.txt bre/Spaces.txt} rmfamily {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} headsep ger/Seitenformat.txt mathtt {eng/Typefaces.txt bre/Typefaces.txt} vspace {eng/Spaces.txt ger/format.txt bre/Spaces.txt} addtocontents {eng/Contents.txt ger/index.txt bre/Contents.txt} underbrace {eng/Math.txt bre/Math.txt} tableofcontents {eng/Contents.txt ger/index.txt bre/Contents.txt} alph {eng/Counters.txt bre/Counters.txt} textmd {eng/Typefaces.txt bre/Typefaces.txt} symbol {eng/Characters.txt bre/Characters.txt} titlepage {eng/Environments.txt ger/titlepage.txt bre/Environments.txt} fontseries {eng/Typefaces.txt bre/Typefaces.txt} newsavebox {eng/Spaces.txt ger/latexbox.txt ger/picture.txt bre/Spaces.txt} makeidx ger/index.txt addvspace {eng/Spaces.txt bre/Spaces.txt} picture {eng/Environments.txt ger/picture.txt bre/Environments.txt} bibliographystyle {eng/Environments.txt bre/Environments.txt} mbox {eng/Spaces.txt bre/Spaces.txt} newtheorem {eng/amsthm.txt eng/Definitions.txt ger/amsthm.txt bre/Definitions.txt bre/amsthm.txt} footnote {eng/Footnotes.txt ger/notiz.txt bre/Footnotes.txt} selectfont {eng/Typefaces.txt bre/Typefaces.txt} cleardoublepage {eng/Breaking.txt ger/format.txt bre/Breaking.txt} bmatrix {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} sloppy {eng/Breaking.txt ger/format.txt bre/Breaking.txt} renewenviroment ger/counter.txt maketitle {eng/Styles.txt ger/titlepage.txt bre/Styles.txt} appendix {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} location {eng/Letters.txt bre/Letters.txt} verbatim {eng/Environments.txt ger/verbatim.txt bre/Environments.txt} samepage ger/format.txt stepcounter {eng/Counters.txt ger/counter.txt ger/input.txt bre/Counters.txt} shortstack {eng/Environments.txt ger/picture.txt bre/Environments.txt} footheight ger/Seitenformat.txt subitem ger/index.txt bigskip {eng/Spaces.txt bre/Spaces.txt} center {eng/Environments.txt ger/format.txt bre/Environments.txt} typeout {eng/Terminal.txt ger/input.txt bre/Terminal.txt} bottomfraction ger/gleit.txt mathnormal {eng/Typefaces.txt bre/Typefaces.txt} align {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} newlength {eng/Lengths.txt ger/counter.txt bre/Lengths.txt} raisebox {eng/Spaces.txt bre/Spaces.txt} renewenvironment {eng/Definitions.txt bre/Definitions.txt} quote {eng/Environments.txt ger/format.txt bre/Environments.txt} startbreaks {eng/Letters.txt bre/Letters.txt} grafics ger/graphics.txt fbox {eng/Spaces.txt bre/Spaces.txt} bf ger/format.txt documentstyle ger/documentclass.txt rule {eng/Spaces.txt ger/latexbox.txt bre/Spaces.txt} letter {eng/Environments.txt bre/Environments.txt} bezier ger/picture.txt amsthm ger/amsthm.txt title {eng/Styles.txt ger/titlepage.txt bre/Styles.txt} graficx ger/graphicx.txt sbox {eng/Spaces.txt bre/Spaces.txt} makeindex ger/index.txt floatsep ger/gleit.txt includeonly {eng/Input.txt ger/input.txt bre/Input.txt} cc {eng/Letters.txt bre/Letters.txt} cases {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} markright {eng/Styles.txt bre/Styles.txt} height {eng/Lengths.txt bre/Lengths.txt} DeclareGraphicsExtentions ger/graphics.txt pageref {eng/References.txt ger/bezug.txt bre/References.txt} tiny {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} bibitem {eng/Environments.txt ger/bezug.txt bre/Environments.txt} dicretionary ger/format.txt raggedleft {eng/Environments.txt bre/Environments.txt} thicklines:thinlines ger/picture.txt fill ger/format.txt subsection {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} normalfont {eng/Typefaces.txt bre/Typefaces.txt} evensidemargin ger/Seitenformat.txt footnotesize {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} subsubsection {eng/Sectioning.txt ger/index.txt bre/Sectioning.txt} mathcal {eng/Typefaces.txt bre/Typefaces.txt} textfraction ger/gleit.txt editot_hlp ger/editort_hlp.txt multiput {eng/Environments.txt ger/picture.txt bre/Environments.txt} sum ger/math.txt itshape {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} date {eng/Styles.txt ger/titlepage.txt bre/Styles.txt} lrbox {eng/Spaces.txt bre/Spaces.txt} nopagebreak {eng/Breaking.txt ger/format.txt bre/Breaking.txt} makebox {eng/Environments.txt eng/Spaces.txt ger/latexbox.txt ger/picture.txt bre/Environments.txt bre/Spaces.txt} scriptsize {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} makelabels {eng/Letters.txt bre/Letters.txt} multline {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} and {ger/if.txt ger/titlepage.txt} textsc {eng/Typefaces.txt bre/Typefaces.txt} amsfonts {eng/amsfonts.txt ger/amsfonts.txt bre/amsfonts.txt} mdseries {eng/Typefaces.txt ger/format.txt bre/Typefaces.txt} textrm {eng/Typefaces.txt bre/Typefaces.txt} parbox {eng/Spaces.txt ger/latexbox.txt bre/Spaces.txt} overline {eng/Math.txt bre/Math.txt} quotation {eng/Environments.txt ger/format.txt bre/Environments.txt} text {eng/amsmath.txt ger/amsmath.txt ger/math.txt bre/amsmath.txt} pmatrix {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} begin {eng/Environments.txt ger/begin.txt bre/Environments.txt} flushleft {eng/Environments.txt ger/format.txt bre/Environments.txt} textsf {eng/Typefaces.txt bre/Typefaces.txt} DeclareMathOperator {eng/amsmath.txt ger/amsmath.txt bre/amsmath.txt} nolimits ger/math.txt dbtopfraction ger/gleit.txt renewcommand {eng/Definitions.txt bre/Definitions.txt} width {eng/Lengths.txt bre/Lengths.txt} newfont {eng/Definitions.txt bre/Definitions.txt} em ger/format.txt pagebreak {eng/Breaking.txt ger/format.txt bre/Breaking.txt} resizebox {ger/graphics.txt ger/graphicx.txt} textsl {eng/Typefaces.txt bre/Typefaces.txt} includegraphics {ger/graphics.txt ger/graphicx.txt}
diff --git a/support/tcltexed/lib/RCS/arg.tcl,v b/support/tcltexed/lib/RCS/arg.tcl,v
new file mode 100644
index 0000000000..557f034be6
--- /dev/null
+++ b/support/tcltexed/lib/RCS/arg.tcl,v
@@ -0,0 +1,245 @@
+head 1.5;
+access;
+symbols;
+locks
+ mys:1.5; strict;
+comment @# @;
+
+
+1.5
+date 2001.01.23.21.07.16; author mys; state Exp;
+branches;
+next 1.4;
+
+1.4
+date 2000.11.26.18.20.03; author mys; state Exp;
+branches;
+next 1.3;
+
+1.3
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.19.09.28; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.5
+log
+@+bre
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# set several default values
+set LISTE [list basepath libpath bhtpath hlppath txtpath gifpath etcpath menupath\
+inifile\
+latex_exec makeindex_exec xdvi_exec dvips_exec ghostview_exec\
+language readme_flag COLOR_flag\
+syntax_flag KlammerFlag wsearch_gb\
+SyntaxColorGreen SyntaxColorRed SyntaxColorBlue\
+BlockColor ErgaenzungGray erg2_max\
+wlatex_max wTcltexed_max\
+myown_max max_undo]
+set LFAline 0
+for {set i 0} {$i < $argc} {incr i} {
+ if {[string index [lindex $argv $i] 0] == "-"} then {
+ switch -- [lindex $argv $i] -variable {
+ puts "Possible variables are :\n"
+ foreach ii $LISTE {
+ eval "puts $ii=\$$ii"
+ }
+ puts "\nFor further discription of the meaning of the variables"
+ puts "read the first part of the script tcltexed.tcl."
+ exit
+ } --version {
+ puts "tcltexed - version $Tcltexed_Version"
+ exit
+ } -ind {
+ set language 2
+ } -bre {
+ set language 3
+ } -ger {
+ set language 1
+ } -eng {
+ set language 0
+ } -v {
+ if {[expr $i+2] < $argc} {
+ if {[lsearch $LISTE [lindex $argv [expr $i + 1]]] != -1} {
+ set [lindex $argv [expr $i + 1]] [lindex $argv [expr $i + 2]]
+ }
+ incr i 2
+ } else {
+ puts "more arguments are needed by -v"
+ exit
+ }
+ } -new {
+ after 1500 NewFile
+ } default {
+ puts "Usage : tcltexed.tcl -- \[options\] \[+line] file1 \[+line] file2 ...\n"
+ puts "A LaTeX-Editor based on Tcl/Tk"
+ puts "Possible optiones are :"
+ puts " -- ..end of the arguments for wish"
+ puts " -? ..this help"
+ puts " --version ..version of tcltexed"
+ puts " -new ..open new file"
+ puts " -v \"variable\" \"value\" ..set \"variable\" to a \"value\""
+ puts " -variable ..list all possible variables"
+ puts " and it's default values"
+ puts " -eng ..set language to english (0)"
+ puts " -ger ..set language to german (1)"
+ puts " -ind ..set language to indonesia (2)"
+ puts " -bre ..set language to portuguese (3)"
+ exit
+ }
+ } else {
+ if [string match "+*" [lindex $argv $i]] {
+ set LFAline [lindex $argv $i]
+ } else {
+ after 1000 LFA [lindex $argv $i] $LFAline
+ set LFAline 0
+ }
+ }
+}
+proc LFA {filename line} {
+ if {[info proc LoadFileArg] != ""} {
+ LoadFileArg $filename $line
+ } else {
+ after 500 LFA $filename $line
+ }
+}
+@
+
+
+1.4
+log
+@*** empty log message ***
+@
+text
+@d27 4
+d60 2
+@
+
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@d13 1
+d44 1
+a44 1
+ puts "Usage : tcltexed.tcl -- \[options\] file1 file2 ...\n"
+d59 6
+a64 1
+ after 1000 LFA [lindex $argv $i]
+d67 1
+a67 1
+proc LFA filename {
+d69 1
+a69 1
+ LoadFileArg $filename
+d71 1
+a71 1
+ after 500 LFA $filename
+d73 1
+a73 1
+}@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d1 66
+a66 66
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# set several default values
+set LISTE [list basepath libpath bhtpath hlppath txtpath gifpath etcpath menupath\
+inifile\
+latex_exec makeindex_exec xdvi_exec dvips_exec ghostview_exec\
+language readme_flag COLOR_flag\
+syntax_flag KlammerFlag wsearch_gb\
+SyntaxColorGreen SyntaxColorRed SyntaxColorBlue\
+BlockColor ErgaenzungGray erg2_max\
+wlatex_max wTcltexed_max\
+myown_max max_undo]
+for {set i 0} {$i < $argc} {incr i} {
+ if {[string index [lindex $argv $i] 0] == "-"} then {
+ switch -- [lindex $argv $i] -variable {
+ puts "Possible variables are :\n"
+ foreach ii $LISTE {
+ eval "puts $ii=\$$ii"
+ }
+ puts "\nFor further discription of the meaning of the variables"
+ puts "read the first part of the script tcltexed.tcl."
+ exit
+ } --version {
+ puts "tcltexed - version $Tcltexed_Version"
+ exit
+ } -ger {
+ set language 1
+ } -eng {
+ set language 0
+ } -v {
+ if {[expr $i+2] < $argc} {
+ if {[lsearch $LISTE [lindex $argv [expr $i + 1]]] != -1} {
+ set [lindex $argv [expr $i + 1]] [lindex $argv [expr $i + 2]]
+ }
+ incr i 2
+ } else {
+ puts "more arguments are needed by -v"
+ exit
+ }
+ } -new {
+ after 1500 NewFile
+ } default {
+ puts "Usage : tcltexed.tcl -- \[options\] file1 file2 ...\n"
+ puts "A LaTeX-Editor based on Tcl/Tk"
+ puts "Possible optiones are :"
+ puts " -- ..end of the arguments for wish"
+ puts " -? ..this help"
+ puts " --version ..version of tcltexed"
+ puts " -new ..open new file"
+ puts " -v \"variable\" \"value\" ..set \"variable\" to a \"value\""
+ puts " -variable ..list all possible variables"
+ puts " and it's default values"
+ puts " -eng ..set language to english (0)"
+ puts " -ger ..set language to german (1)"
+ exit
+ }
+ } else {
+ after 1000 LFA [lindex $argv $i]
+ }
+}
+proc LFA filename {
+ if {[info proc LoadFileArg] != ""} {
+ LoadFileArg $filename
+ } else {
+ after 500 LFA $filename
+ }
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d40 2
+d49 1
+@
+
diff --git a/support/tcltexed/lib/RCS/backslash.tcl,v b/support/tcltexed/lib/RCS/backslash.tcl,v
new file mode 100644
index 0000000000..4e27500dfe
--- /dev/null
+++ b/support/tcltexed/lib/RCS/backslash.tcl,v
@@ -0,0 +1,173 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+####################################################################
+# Setzt backslash's fuer eine Stringuebergabe ein
+proc backslash {s} {
+ set begin_s ""
+ set end_s $s
+ set pos 0
+ while {$pos != 10000} {
+ set key ""
+ set pos "10000"
+ set kpos [string first "\"" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\""
+ }}
+ set kpos [string first "\\" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\\"
+ }}
+ set kpos [string first "\n" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\n"
+ }}
+ set kpos [string first "\t" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\t"
+ }}
+ set kpos [string first "\[" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\["
+ }}
+
+ set kpos [string first "\]" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\]"
+ }}
+ set kpos [string first "\{" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\{"
+ }}
+
+ set kpos [string first "\}" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\}"
+ }}
+
+ if {$pos != 10000} then {
+ set begin_s $begin_s[string range $end_s 0 [expr $pos - 1]]$key
+ set end_s "[string range $end_s [expr $pos + 1] end]"
+ } else {return "$begin_s$end_s"}
+}}
+
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 67
+a67 67
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+####################################################################
+# Setzt backslash's fuer eine Stringuebergabe ein
+proc backslash {s} {
+ set begin_s ""
+ set end_s $s
+ set pos 0
+ while {$pos != 10000} {
+ set key ""
+ set pos "10000"
+ set kpos [string first "\"" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\""
+ }}
+ set kpos [string first "\\" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\\"
+ }}
+ set kpos [string first "\n" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\n"
+ }}
+ set kpos [string first "\t" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\t"
+ }}
+ set kpos [string first "\[" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\["
+ }}
+
+ set kpos [string first "\]" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\]"
+ }}
+ set kpos [string first "\{" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\{"
+ }}
+
+ set kpos [string first "\}" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\}"
+ }}
+
+ if {$pos != 10000} then {
+ set begin_s $begin_s[string range $end_s 0 [expr $pos - 1]]$key
+ set end_s "[string range $end_s [expr $pos + 1] end]"
+ } else {return "$begin_s$end_s"}
+}}
+
+@
+
diff --git a/support/tcltexed/lib/RCS/bindings.tcl,v b/support/tcltexed/lib/RCS/bindings.tcl,v
new file mode 100644
index 0000000000..3562c4af35
--- /dev/null
+++ b/support/tcltexed/lib/RCS/bindings.tcl,v
@@ -0,0 +1,609 @@
+head 1.3;
+access;
+symbols;
+locks
+ mys:1.3; strict;
+comment @# @;
+
+
+1.3
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 99.11.22.14.31.17; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+ ##############################################################################
+ # Umdefinition des Defaultverhaltens fuer Text-variablen
+ bind Text <Control-k> {}
+ bind Text <Control-b> {}
+ # Block Anfang
+ bind Text <Control-k><b> {
+ set BlockBeginFlag 1
+ %W mark set BlockBegin insert
+ if {[string compare %W $BlockEditor] == 0} then {
+ if $BlockEndFlag then {
+ %W tag remove BlockTag 1.0 end
+ %W tag add BlockTag BlockBegin BlockEnd
+ }} else {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ $BlockEditor tag remove BlockTag 1.0 end
+ }
+ set BlockEndFlag 0
+ set BlockEditor %W
+ }
+ }
+ # Block Ende
+ bind Text <Control-k><k> {
+ set BlockEndFlag 1
+ %W mark set BlockEnd insert
+ %W mark gravity BlockEnd left
+ if {[string compare %W $BlockEditor] == 0} then {
+ if $BlockBeginFlag then {
+ %W tag remove BlockTag 1.0 end
+ %W tag add BlockTag BlockBegin BlockEnd
+ }} else {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ $Blockeditor tag remove BlockTag 1.0 end
+ }
+ set BlockBeginFlag 0
+ set BlockEditor %W
+ }
+ }
+ # Block kopieren
+ bind Text <Control-k><c> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ set ksp [%W index {insert linestart}]
+ undo_switch %W {Save UndoBegin}
+ %W insert insert [$BlockEditor get BlockBegin BlockEnd]
+ undo_switch %W {UndoEnd Save UndoMax}
+ Syntax %W $ksp "insert lineend"
+ }
+ }
+ # Block verschieben
+ bind Text <Control-k><v> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ set ksp [%W index "insert linestart"]
+ undo_switch %W {Save UndoBegin}
+ %W insert insert [$BlockEditor get BlockBegin BlockEnd]
+ undo_switch %W {UndoEnd Save}
+ undo_switch $BlockEditor {{BlockBegin BlockEnd} Delete UndoMax}
+ if {[string compare %W $BlockEditor] == 0} then {
+ undo_switch %W UndoMul
+ }
+ Syntax %W $ksp "insert lineend"
+ Syntax $BlockEditor "BlockBegin linestart" "BlockEnd lineend"
+ }
+ }
+ bind Text <Control-k><m> {
+ event generate %W <Control-k>
+ event generate %W <v>
+ }
+ # Block loeschen
+ bind Text <Control-k><y> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ undo_switch $BlockEditor {Save {BlockBegin BlockEnd} Delete UndoMax}
+ }
+ }
+ # Block auskommentieren
+proc AusKomm {E A B} {
+ set i [lindex "[split [$E index $A] .]" 0]
+ set i_max [lindex "[split [$E index $B] .]" 0]
+ incr i_max
+ set ksp $i.0
+ while {$i < $i_max} {
+ if [expr [string compare [$E get "$i.0 linestart" "$i.0 linestart+1c"] "%"] != 0] {
+ $E insert "$i.0 linestart" "%"
+ }
+ incr i
+ }
+ Syntax $E $ksp $i_max.0
+ event generate $E <<Modified>>
+}
+ # Block auskommentieren rueckgaengig
+proc AusKommRueck {E A B} {
+ set i [lindex "[split [$E index $A] .]" 0]
+ set i_max [lindex "[split [$E index $B] .]" 0]
+ incr i_max
+ set ksp $i.0
+ while {$i < $i_max} {
+ if [expr [string compare [$E get "$i.0 linestart" "$i.0 linestart+1c"] "%"] == 0] {
+ $E delete "$i.0 linestart" "$i.0 linestart+1c"
+ }
+ incr i
+ }
+ Syntax $E $ksp $i_max.0
+ event generate $E <<Modified>>
+}
+
+switch $tcl_platform(platform) windows {
+# Auf jedenfall fuer Windows !!!
+ bind Text <Control-k><%> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKomm %W BlockBegin BlockEnd
+ }
+ }
+} unix {
+# fuer linux ???
+ bind Text <Control-k><Shift-5> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKomm %W BlockBegin BlockEnd
+ }
+ }
+}
+ bind Text <Control-k><space> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKommRueck %W BlockBegin BlockEnd
+ }
+ }
+ # Block in Clipboard kopieren
+ bind Text <Control-k><g> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ clipboard clear -displayof %W
+ catch {clipboard append -displayof %W [$BlockEditor get BlockBegin BlockEnd]}
+ }
+ }
+ # aus Clipboard kopieren
+ bind Text <Control-k><p> {
+ set ksp [%W index {insert linestart}]
+ undo_switch %W {Save UndoBegin}
+ tk_textPaste %W
+ undo_switch %W {UndoEnd Save UndoMax}
+ Syntax %W $ksp "insert lineend"
+ }
+ bind Text <Control-k><h> {break}
+
+ bind Text <Insert> {
+ undo_switch %W {Save UndoBegin}
+ catch {tkTextInsert %W [selection get -displayof %W]}
+ undo_switch %W {UndoEnd Save}
+ }
+
+ # Block eliminieren
+ bind Text <Destroy> {
+ set BlockBeginFlag 0
+ set BlockEndFlag 0
+ if {[lsearch [array names ModifiedArray] %W] != -1} {
+ unset ModifiedArray(%W)
+ }
+ if {[lsearch [array names UndoArray] %W] != -1} {
+ unset UndoArray(%W)
+ }
+ if {[lsearch [array names FilenameArray] %W] != -1} {
+ unset FilenameArray(%W)
+ }
+ }
+
+ # Zeile aus Text loeschen
+ bind Text <Control-y> {
+ undo_switch %W {{"insert linestart" "insert lineend+1c"} Delete}
+ }
+ bind Text <Control-d> {
+ if $FocusEditorFlag {
+ focus $FocusEditor.te.edit1
+ set ksp [$FocusEditor.te.edit1 get {insert wordstart-1c} {insert wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set Text [$FocusEditor.te.edit1 get {insert wordstart} {insert wordend}]
+ if {[llength [array names I_befehl $Text]] != 1} {set Text "\\section"} else {set Text "\\$Text"}
+ } {set Text "\\section"}
+ set ksp [$FocusEditor.te.edit1 search -- $Text {insert wordend} end]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert "$ksp + 1 chars"
+ $FocusEditor.te.edit1 see insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ bind Text <Control-u> {
+ if $FocusEditorFlag {
+ focus $FocusEditor.te.edit1
+ set ksp [$FocusEditor.te.edit1 get {insert wordstart-1c} {insert wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set Text [$FocusEditor.te.edit1 get {insert wordstart} {insert wordend}]
+ if {[llength [array names I_befehl $Text]] != 1} {set Text "\\section"} else {set Text "\\$Text"}
+ } {set Text "\\section"}
+ set ksp [$FocusEditor.te.edit1 search -backwards -- $Text {insert wordstart-1c} 1.0]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert "$ksp + 1 chars"
+ $FocusEditor.te.edit1 see insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ bind Text <Control-b> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 section
+ }
+ }
+ bind Text <Control-B> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 unsection
+ }
+ }
+ bind Text <Alt-b> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 line
+ }
+ }
+ bind Text <Alt-B> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 unline
+ }
+ }
+
+ # Was passiert wenn man ein Fenster vernichtet
+ bind Toplevel <Destroy> {
+ # Fenster war Master dann Master loeschen
+ if $MasterFlag then {if {[string compare $Master %W] == 0} then {set MasterFlag 0}}
+ if $FocusEditorFlag then {if {[string compare $FocusEditor %W] == 0} then {set FocusEditorFlag 0}}
+ }
+
+
+bind Text <KeyPress> {
+ if $erg_flag(%W) then {
+ if {[%W get insert insert+1c] == "%A"} then {
+ %W mark set insert insert+1c
+ continue
+ } else {
+ erg_proc %W
+ }
+ }
+ if {"%A" != "{}"} then {
+ undo_switch %W {SelSave UndoBegin}
+ tkTextInsert %W %A
+ undo_switch %W {UndoEnd SelMul}
+
+ if $BeginFlag(%W) then {
+ %W insert BeginMark %A
+ undo_switch %W BeginMark
+ }
+ event generate %W <<ERG>>
+ event generate %W <<Modified>>
+ if $KlammerFlag then {
+ switch -- "%A" "(" {
+ tkTextInsert %W ")"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ } "\{" {
+ if {[string compare [%W get insert-2c] "\\"] == 0} {
+ tkTextInsert %W "\\\}"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-2c
+ } {
+ tkTextInsert %W "\}"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ }
+ } "\[" {
+ if {[string compare [%W get insert-2c] "\\"] == 0} {
+ tkTextInsert %W "\\\]"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-2c
+ } {
+ tkTextInsert %W "\]"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ }
+ } "$" {
+ tkTextInsert %W "$"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+}}}}
+@
+
+
+1.2
+log
+@+ \{ wird automatisch mit \{ ergaenzt, analog \[ mit \]
+bisher wurde nur die Klammer selbst ergaenzt
+@
+text
+@d1 273
+a273 273
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+ ##############################################################################
+ # Umdefinition des Defaultverhaltens fuer Text-variablen
+ bind Text <Control-k> {}
+ bind Text <Control-b> {}
+ # Block Anfang
+ bind Text <Control-k><b> {
+ set BlockBeginFlag 1
+ %W mark set BlockBegin insert
+ if {[string compare %W $BlockEditor] == 0} then {
+ if $BlockEndFlag then {
+ %W tag remove BlockTag 1.0 end
+ %W tag add BlockTag BlockBegin BlockEnd
+ }} else {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ $BlockEditor tag remove BlockTag 1.0 end
+ }
+ set BlockEndFlag 0
+ set BlockEditor %W
+ }
+ }
+ # Block Ende
+ bind Text <Control-k><k> {
+ set BlockEndFlag 1
+ %W mark set BlockEnd insert
+ %W mark gravity BlockEnd left
+ if {[string compare %W $BlockEditor] == 0} then {
+ if $BlockBeginFlag then {
+ %W tag remove BlockTag 1.0 end
+ %W tag add BlockTag BlockBegin BlockEnd
+ }} else {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ $Blockeditor tag remove BlockTag 1.0 end
+ }
+ set BlockBeginFlag 0
+ set BlockEditor %W
+ }
+ }
+ # Block kopieren
+ bind Text <Control-k><c> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ set ksp [%W index {insert linestart}]
+ undo_switch %W {Save UndoBegin}
+ %W insert insert [$BlockEditor get BlockBegin BlockEnd]
+ undo_switch %W {UndoEnd Save UndoMax}
+ Syntax %W $ksp "insert lineend"
+ }
+ }
+ # Block verschieben
+ bind Text <Control-k><v> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ set ksp [%W index "insert linestart"]
+ undo_switch %W {Save UndoBegin}
+ %W insert insert [$BlockEditor get BlockBegin BlockEnd]
+ undo_switch %W {UndoEnd Save}
+ undo_switch $BlockEditor {{BlockBegin BlockEnd} Delete UndoMax}
+ if {[string compare %W $BlockEditor] == 0} then {
+ undo_switch %W UndoMul
+ }
+ Syntax %W $ksp "insert lineend"
+ Syntax $BlockEditor "BlockBegin linestart" "BlockEnd lineend"
+ }
+ }
+ bind Text <Control-k><m> {
+ event generate %W <Control-k>
+ event generate %W <v>
+ }
+ # Block loeschen
+ bind Text <Control-k><y> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ undo_switch $BlockEditor {Save {BlockBegin BlockEnd} Delete UndoMax}
+ }
+ }
+ # Block auskommentieren
+proc AusKomm {E A B} {
+ set i [lindex "[split [$E index $A] .]" 0]
+ set i_max [lindex "[split [$E index $B] .]" 0]
+ incr i_max
+ set ksp $i.0
+ while {$i < $i_max} {
+ if [expr [string compare [$E get "$i.0 linestart" "$i.0 linestart+1c"] "%"] != 0] {
+ $E insert "$i.0 linestart" "%"
+ }
+ incr i
+ }
+ Syntax $E $ksp $i_max.0
+ event generate $E <<Modified>>
+}
+ # Block auskommentieren rueckgaengig
+proc AusKommRueck {E A B} {
+ set i [lindex "[split [$E index $A] .]" 0]
+ set i_max [lindex "[split [$E index $B] .]" 0]
+ incr i_max
+ set ksp $i.0
+ while {$i < $i_max} {
+ if [expr [string compare [$E get "$i.0 linestart" "$i.0 linestart+1c"] "%"] == 0] {
+ $E delete "$i.0 linestart" "$i.0 linestart+1c"
+ }
+ incr i
+ }
+ Syntax $E $ksp $i_max.0
+ event generate $E <<Modified>>
+}
+
+switch $tcl_platform(platform) windows {
+# Auf jedenfall fuer Windows !!!
+ bind Text <Control-k><%> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKomm %W BlockBegin BlockEnd
+ }
+ }
+} unix {
+# fuer linux ???
+ bind Text <Control-k><Shift-5> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKomm %W BlockBegin BlockEnd
+ }
+ }
+}
+ bind Text <Control-k><space> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKommRueck %W BlockBegin BlockEnd
+ }
+ }
+ # Block in Clipboard kopieren
+ bind Text <Control-k><g> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ clipboard clear -displayof %W
+ catch {clipboard append -displayof %W [$BlockEditor get BlockBegin BlockEnd]}
+ }
+ }
+ # aus Clipboard kopieren
+ bind Text <Control-k><p> {
+ set ksp [%W index {insert linestart}]
+ undo_switch %W {Save UndoBegin}
+ tk_textPaste %W
+ undo_switch %W {UndoEnd Save UndoMax}
+ Syntax %W $ksp "insert lineend"
+ }
+ bind Text <Control-k><h> {break}
+
+ bind Text <Insert> {
+ undo_switch %W {Save UndoBegin}
+ catch {tkTextInsert %W [selection get -displayof %W]}
+ undo_switch %W {UndoEnd Save}
+ }
+
+ # Block eliminieren
+ bind Text <Destroy> {
+ set BlockBeginFlag 0
+ set BlockEndFlag 0
+ if {[lsearch [array names ModifiedArray] %W] != -1} {
+ unset ModifiedArray(%W)
+ }
+ if {[lsearch [array names UndoArray] %W] != -1} {
+ unset UndoArray(%W)
+ }
+ if {[lsearch [array names FilenameArray] %W] != -1} {
+ unset FilenameArray(%W)
+ }
+ }
+
+ # Zeile aus Text loeschen
+ bind Text <Control-y> {
+ undo_switch %W {{"insert linestart" "insert lineend+1c"} Delete}
+ }
+ bind Text <Control-d> {
+ if $FocusEditorFlag {
+ focus $FocusEditor.te.edit1
+ set ksp [$FocusEditor.te.edit1 get {insert wordstart-1c} {insert wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set Text [$FocusEditor.te.edit1 get {insert wordstart} {insert wordend}]
+ if {[llength [array names I_befehl $Text]] != 1} {set Text "\\section"} else {set Text "\\$Text"}
+ } {set Text "\\section"}
+ set ksp [$FocusEditor.te.edit1 search -- $Text {insert wordend} end]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert "$ksp + 1 chars"
+ $FocusEditor.te.edit1 see insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ bind Text <Control-u> {
+ if $FocusEditorFlag {
+ focus $FocusEditor.te.edit1
+ set ksp [$FocusEditor.te.edit1 get {insert wordstart-1c} {insert wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set Text [$FocusEditor.te.edit1 get {insert wordstart} {insert wordend}]
+ if {[llength [array names I_befehl $Text]] != 1} {set Text "\\section"} else {set Text "\\$Text"}
+ } {set Text "\\section"}
+ set ksp [$FocusEditor.te.edit1 search -backwards -- $Text {insert wordstart-1c} 1.0]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert "$ksp + 1 chars"
+ $FocusEditor.te.edit1 see insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ bind Text <Control-b> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 section
+ }
+ }
+ bind Text <Control-B> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 unsection
+ }
+ }
+ bind Text <Alt-b> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 line
+ }
+ }
+ bind Text <Alt-B> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 unline
+ }
+ }
+
+ # Was passiert wenn man ein Fenster vernichtet
+ bind Toplevel <Destroy> {
+ # Fenster war Master dann Master loeschen
+ if $MasterFlag then {if {[string compare $Master %W] == 0} then {set MasterFlag 0}}
+ if $FocusEditorFlag then {if {[string compare $FocusEditor %W] == 0} then {set FocusEditorFlag 0}}
+ }
+
+
+bind Text <KeyPress> {
+ if $erg_flag(%W) then {
+ if {[%W get insert insert+1c] == "%A"} then {
+ %W mark set insert insert+1c
+ continue
+ } else {
+ erg_proc %W
+ }
+ }
+ if {"%A" != "{}"} then {
+ undo_switch %W {SelSave UndoBegin}
+ tkTextInsert %W %A
+ undo_switch %W {UndoEnd SelMul}
+
+ if $BeginFlag(%W) then {
+ %W insert BeginMark %A
+ undo_switch %W BeginMark
+ }
+ event generate %W <<ERG>>
+ event generate %W <<Modified>>
+ if $KlammerFlag then {
+ switch -- "%A" "(" {
+ tkTextInsert %W ")"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ } "\{" {
+ if {[string compare [%W get insert-2c] "\\"] == 0} {
+ tkTextInsert %W "\\\}"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-2c
+ } {
+ tkTextInsert %W "\}"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ }
+ } "\[" {
+ if {[string compare [%W get insert-2c] "\\"] == 0} {
+ tkTextInsert %W "\\\]"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-2c
+ } {
+ tkTextInsert %W "\]"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ }
+ } "$" {
+ tkTextInsert %W "$"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+}}}}
+@
+
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d250 9
+a258 3
+ tkTextInsert %W "\}"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+d260 9
+a268 3
+ tkTextInsert %W "\]"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+@
diff --git a/support/tcltexed/lib/RCS/color.tcl,v b/support/tcltexed/lib/RCS/color.tcl,v
new file mode 100644
index 0000000000..a7d589b736
--- /dev/null
+++ b/support/tcltexed/lib/RCS/color.tcl,v
@@ -0,0 +1,151 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################
+# defaultcolors
+switch $tcl_platform(platform) unix {
+ tk_setPalette\
+activebackground "#ececec"\
+activeforeground Black\
+background "#d9d9d9"\
+foreground Black\
+selectcolor White\
+disabledforeground "#a3a3a3"\
+highlightbackground "#d9d9d9"\
+highlightcolor Black
+} windows {
+tk_setPalette\
+activebackground "#ececec"\
+activeforeground Black\
+background "#c0c0c0"\
+foreground Black\
+selectcolor White\
+disabledforeground "#a3a3a3"\
+highlightbackground "#d9d9d9"\
+highlightcolor Black
+}
+################################################################
+# if colors make trouble
+set COLOR_list [list\
+"-activebackground"\
+"-activeforeground"\
+"-background"\
+"-disabledforeground"\
+"-foreground"\
+"-highlightbackground"\
+"-highlightcolor"\
+"-insertbackground"\
+"-selectbackground"\
+"-selectcolor"\
+"-selectforeground"\
+"-troughcolor"\
+]
+
+proc COLOR_LOOP {E} {
+ global COLOR_list
+ foreach i [$E configure] {
+ if {[lsearch -exact $COLOR_list [lindex $i 0]] != -1} {
+ $E configure [lindex $i 0] [lindex $i 3]
+ }
+ }
+ foreach i [winfo children $E] {COLOR_LOOP $i}
+}
+proc COLOR {E} {
+ global COLOR_flag
+ if $COLOR_flag {
+ COLOR_LOOP $E
+ }
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 56
+a56 56
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################
+# defaultcolors
+switch $tcl_platform(platform) unix {
+ tk_setPalette\
+activebackground "#ececec"\
+activeforeground Black\
+background "#d9d9d9"\
+foreground Black\
+selectcolor White\
+disabledforeground "#a3a3a3"\
+highlightbackground "#d9d9d9"\
+highlightcolor Black
+} windows {
+tk_setPalette\
+activebackground "#ececec"\
+activeforeground Black\
+background "#c0c0c0"\
+foreground Black\
+selectcolor White\
+disabledforeground "#a3a3a3"\
+highlightbackground "#d9d9d9"\
+highlightcolor Black
+}
+################################################################
+# if colors make trouble
+set COLOR_list [list\
+"-activebackground"\
+"-activeforeground"\
+"-background"\
+"-disabledforeground"\
+"-foreground"\
+"-highlightbackground"\
+"-highlightcolor"\
+"-insertbackground"\
+"-selectbackground"\
+"-selectcolor"\
+"-selectforeground"\
+"-troughcolor"\
+]
+
+proc COLOR_LOOP {E} {
+ global COLOR_list
+ foreach i [$E configure] {
+ if {[lsearch -exact $COLOR_list [lindex $i 0]] != -1} {
+ $E configure [lindex $i 0] [lindex $i 3]
+ }
+ }
+ foreach i [winfo children $E] {COLOR_LOOP $i}
+}
+proc COLOR {E} {
+ global COLOR_flag
+ if $COLOR_flag {
+ COLOR_LOOP $E
+ }
+}
+@
+
diff --git a/support/tcltexed/lib/RCS/complition.tcl,v b/support/tcltexed/lib/RCS/complition.tcl,v
new file mode 100644
index 0000000000..a307f0a8be
--- /dev/null
+++ b/support/tcltexed/lib/RCS/complition.tcl,v
@@ -0,0 +1,219 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################
+# auto complition
+# ok !
+proc ergaenzung {E} {
+ global I_befehl I_back I_state
+ global BeginFlag
+ global erg_flag erg_back
+ set ksp [$E get {insert-1c wordstart-1c} {insert-1c wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set TEXT [$E get {insert-1c wordstart} insert]
+ set LISTE [array names I_state "$TEXT*"]
+ if {1 == [llength $LISTE]} then {
+ set sp1 [string length $LISTE]
+ set sp2 [string length $TEXT]
+ if {$sp1 > $sp2} then {
+ erg_insert $E $LISTE [$E index insert]
+ } elseif {$sp1 == $sp2} {
+ Syntax $E {insert-1c wordstart-1c} insert
+}}}}
+#############################################
+# complition per mouse : the start
+# ok !
+menu .pop_menu -tearoff 0
+COLOR .pop_menu
+proc ergaenzung2 {E} {
+ global I_state
+ set ksp [$E get {insert-1c wordstart-1c} {insert-1c wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set TEXT [$E get {insert-1c wordstart} insert]
+ set sp1 [string length $TEXT]
+ set LISTE [lsort [array names I_state "$TEXT*"]]
+ if {0 < [llength $LISTE]} then {
+ erg2_weiter $E $LISTE $sp1 [$E index insert]
+}}}
+##############################################
+# complition per mouse : construction
+proc erg2_weiter {E LISTE laenge index} {
+ global erg2_max T
+ .pop_menu delete 0 end
+ .pop_menu add command -label $T(cancel)
+ if {[llength $LISTE] > $erg2_max} {
+ .pop_menu add command -label $T(more) -command "erg2_weiter $E {[lrange $LISTE $erg2_max end]} $laenge $index"
+ }
+ .pop_menu add separator
+ foreach i [lrange $LISTE 0 [expr $erg2_max - 1]] {
+ if {$laenge == [string length $i]} {
+ .pop_menu add command -label $i
+ } {
+ .pop_menu add command -label $i -command "erg_insert $E $i $index"
+ }
+ }
+ tk_popup .pop_menu [expr [winfo rootx $E] + [lindex [$E bbox insert] 0]] [expr [winfo rooty $E] + [lindex [$E bbox insert] 1]]
+}
+###################################
+# functions for complitions in general
+# ok ?
+proc erg_insert {E T index} {
+ global I_befehl I_back
+ global BeginFlag
+ global erg_flag erg_back
+
+ $E mark set insert $index
+ set erg_flag($E) 1
+
+ undo_switch $E {Save {{insert-1c wordstart-1c} insert} Delete UndoBegin}
+ $E mark set erg_begin insert
+ $E mark gravity erg_begin left
+ $E insert insert $I_befehl($T)
+ $E mark set erg_end insert
+ undo_switch $E {UndoEnd Save UndoMax UndoMul}
+
+ switch $T begin {
+ $E mark set BeginMark insert-2c
+ set BeginFlag($E) 1
+ }
+ $E tag add erg_tag erg_begin erg_end
+ $E mark set insert $index
+ set erg_back($E) $I_back($T)
+}
+proc erg_proc {E} {
+ global erg_flag
+ global erg_back
+ if $erg_flag($E) then {
+ Syntax $E erg_begin erg_end
+ $E mark set insert "erg_end - $erg_back($E) chars"
+ $E tag remove erg_tag 1.0 end
+ set erg_flag($E) 0
+ }
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 90
+a90 90
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################
+# auto complition
+# ok !
+proc ergaenzung {E} {
+ global I_befehl I_back I_state
+ global BeginFlag
+ global erg_flag erg_back
+ set ksp [$E get {insert-1c wordstart-1c} {insert-1c wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set TEXT [$E get {insert-1c wordstart} insert]
+ set LISTE [array names I_state "$TEXT*"]
+ if {1 == [llength $LISTE]} then {
+ set sp1 [string length $LISTE]
+ set sp2 [string length $TEXT]
+ if {$sp1 > $sp2} then {
+ erg_insert $E $LISTE [$E index insert]
+ } elseif {$sp1 == $sp2} {
+ Syntax $E {insert-1c wordstart-1c} insert
+}}}}
+#############################################
+# complition per mouse : the start
+# ok !
+menu .pop_menu -tearoff 0
+COLOR .pop_menu
+proc ergaenzung2 {E} {
+ global I_state
+ set ksp [$E get {insert-1c wordstart-1c} {insert-1c wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set TEXT [$E get {insert-1c wordstart} insert]
+ set sp1 [string length $TEXT]
+ set LISTE [lsort [array names I_state "$TEXT*"]]
+ if {0 < [llength $LISTE]} then {
+ erg2_weiter $E $LISTE $sp1 [$E index insert]
+}}}
+##############################################
+# complition per mouse : construction
+proc erg2_weiter {E LISTE laenge index} {
+ global erg2_max T
+ .pop_menu delete 0 end
+ .pop_menu add command -label $T(cancel)
+ if {[llength $LISTE] > $erg2_max} {
+ .pop_menu add command -label $T(more) -command "erg2_weiter $E {[lrange $LISTE $erg2_max end]} $laenge $index"
+ }
+ .pop_menu add separator
+ foreach i [lrange $LISTE 0 [expr $erg2_max - 1]] {
+ if {$laenge == [string length $i]} {
+ .pop_menu add command -label $i
+ } {
+ .pop_menu add command -label $i -command "erg_insert $E $i $index"
+ }
+ }
+ tk_popup .pop_menu [expr [winfo rootx $E] + [lindex [$E bbox insert] 0]] [expr [winfo rooty $E] + [lindex [$E bbox insert] 1]]
+}
+###################################
+# functions for complitions in general
+# ok ?
+proc erg_insert {E T index} {
+ global I_befehl I_back
+ global BeginFlag
+ global erg_flag erg_back
+
+ $E mark set insert $index
+ set erg_flag($E) 1
+
+ undo_switch $E {Save {{insert-1c wordstart-1c} insert} Delete UndoBegin}
+ $E mark set erg_begin insert
+ $E mark gravity erg_begin left
+ $E insert insert $I_befehl($T)
+ $E mark set erg_end insert
+ undo_switch $E {UndoEnd Save UndoMax UndoMul}
+
+ switch $T begin {
+ $E mark set BeginMark insert-2c
+ set BeginFlag($E) 1
+ }
+ $E tag add erg_tag erg_begin erg_end
+ $E mark set insert $index
+ set erg_back($E) $I_back($T)
+}
+proc erg_proc {E} {
+ global erg_flag
+ global erg_back
+ if $erg_flag($E) then {
+ Syntax $E erg_begin erg_end
+ $E mark set insert "erg_end - $erg_back($E) chars"
+ $E tag remove erg_tag 1.0 end
+ set erg_flag($E) 0
+ }
+}
+@
+
diff --git a/support/tcltexed/lib/RCS/events.tcl,v b/support/tcltexed/lib/RCS/events.tcl,v
new file mode 100644
index 0000000000..2dcb8cf9c4
--- /dev/null
+++ b/support/tcltexed/lib/RCS/events.tcl,v
@@ -0,0 +1,65 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# virtuelle events
+event add <<Modified>> <Return> <Control-i> <Delete> <BackSpace> <Control-slash> <Control-backslash> <Insert> <Control-d> <Control-k><c> <Control-k><m> <Control-k><y> <Control-o> <Meta-d> <Meta-BackSpace> <Meta-Delete> <Control-h> <Button-2>
+
+event add <<Help>> <F1> <Control-k><h>
+event add <<HelpHelp>> <Control-F1>
+
+event add <<BeginFlag>> <Control-KeyPress> <Meta-KeyPress> <Alt-KeyPress> <Button> <Return> <Delete> <BackSpace> <Insert> <Tab> <Shift-Tab> <Control-Tab> <Control-Shift-Tab> <Control-i> <Select> <Control-Shift-space> <Shift-Select> <Control-slash> <Control-backslash> <Control-space>
+
+event add <<proc_undo>> <Up> <Left> <Right> <Down> <Shift-Up> <Shift-Left> <Shift-Right> <Shift-Down> <Control-Up> <Control-Left> <Control-Right> <Control-Down> <Shift-Control-Up> <Shift-Control-Left> <Shift-Control-Right> <Shift-Control-Down> <Prior> <Shift-Prior> <Next> <Shift-Next> <Control-Prior> <Control-Next> <Home> <Shift-Home> <End> <Shift-End> <Control-Home> <Control-Shift-Home> <Control-End> <Control-Shift-End>
+
+event add <<Position>> <Button> <KeyPress>
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 13
+a13 13
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# virtuelle events
+event add <<Modified>> <Return> <Control-i> <Delete> <BackSpace> <Control-slash> <Control-backslash> <Insert> <Control-d> <Control-k><c> <Control-k><m> <Control-k><y> <Control-o> <Meta-d> <Meta-BackSpace> <Meta-Delete> <Control-h> <Button-2>
+
+event add <<Help>> <F1> <Control-k><h>
+event add <<HelpHelp>> <Control-F1>
+
+event add <<BeginFlag>> <Control-KeyPress> <Meta-KeyPress> <Alt-KeyPress> <Button> <Return> <Delete> <BackSpace> <Insert> <Tab> <Shift-Tab> <Control-Tab> <Control-Shift-Tab> <Control-i> <Select> <Control-Shift-space> <Shift-Select> <Control-slash> <Control-backslash> <Control-space>
+
+event add <<proc_undo>> <Up> <Left> <Right> <Down> <Shift-Up> <Shift-Left> <Shift-Right> <Shift-Down> <Control-Up> <Control-Left> <Control-Right> <Control-Down> <Shift-Control-Up> <Shift-Control-Left> <Shift-Control-Right> <Shift-Control-Down> <Prior> <Shift-Prior> <Next> <Shift-Next> <Control-Prior> <Control-Next> <Home> <Shift-Home> <End> <Shift-End> <Control-Home> <Control-Shift-Home> <Control-End> <Control-Shift-End>
+
+event add <<Position>> <Button> <KeyPress>
+@
+
diff --git a/support/tcltexed/lib/RCS/file.tcl,v b/support/tcltexed/lib/RCS/file.tcl,v
new file mode 100644
index 0000000000..787ff6ba7a
--- /dev/null
+++ b/support/tcltexed/lib/RCS/file.tcl,v
@@ -0,0 +1,450 @@
+head 1.4;
+access;
+symbols;
+locks
+ mys:1.4; strict;
+comment @# @;
+
+
+1.4
+date 2000.11.26.18.20.03; author mys; state Exp;
+branches;
+next 1.3;
+
+1.3
+date 2000.08.15.22.34.13; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.4
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+proc NewFile {} {
+ global FocusEditor
+ global FilenameArray UpToDateArray
+ global EDITORNUMMER
+ global etcpath
+ set E [EDITOR]
+ $E.te.edit1 delete 1.0 end
+ set FilenameArray($E) ""
+ set UpToDateArray($E) 0
+ wm title $E "no name $EDITORNUMMER"
+ if [file exists "$etcpath/default.tex"] then {
+ set f [open "$etcpath/default.tex" r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ } else {
+ $E.te.edit1 insert end "\\documentclass\[12pt,a4paper\]{report}\n"
+# $E.te.edit1 insert end "\\usepackage\[german\]{babel}\n"
+# $E.te.edit1 insert end "\\usepackage{umlaut}\n"
+ $E.te.edit1 insert end "\\begin{document}\n\n"
+ $E.te.edit1 insert end "\\end{document}\n"
+ }
+ Syntax $E.te.edit1 1.0 end
+ set ksp [$E.te.edit1 search "\\begin{document}" 1.0]
+ $E.te.edit1 mark set insert "$ksp + 1 lines"
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+# after 250 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+}
+proc NewFileArg {} {
+ global FocusEditor
+ global FilenameArray UpToDateArray
+ global EDITORNUMMER
+ global etcpath
+ set E [EDITOR]
+ $E.te.edit1 delete 1.0 end
+ set FilenameArray($E) ""
+ set UpToDateArray($E) 0
+ wm title $E "no name $EDITORNUMMER"
+ if [file exists "$etcpath/default.tex"] then {
+ set f [open "$etcpath/default.tex" r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ } else {
+ $E.te.edit1 insert end "\\documentclass\[12pt,a4paper\]{report}\n"
+# $E.te.edit1 insert end "\\usepackage\[german\]{babel}\n"
+# $E.te.edit1 insert end "\\usepackage{umlaut}\n"
+ $E.te.edit1 insert end "\\begin{document}\n\n"
+ $E.te.edit1 insert end "\\end{document}\n"
+ }
+ Syntax $E.te.edit1 1.0 end
+ set ksp [$E.te.edit1 search "\\begin{document}" 1.0]
+ $E.te.edit1 mark set insert "$ksp + 1 lines"
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+# after 250 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+}
+
+
+proc LoadFile {} {
+ global FilenameArray ModifiedArray directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getOpenFile -filetypes $types -initialdir $directory]
+ LoadFileArg $filename 0
+}
+
+proc LoadFileArg {filename line} {
+ global FilenameArray UpToDateArray ModifiedArray directory
+ if {[file exists $filename]} then {
+ set directory [file dirname $filename]
+ set E [EDITOR]
+ set f [open $filename r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ #Set global filename
+ set FilenameArray($E) $filename
+ set UpToDateArray($E) [file mtime "$filename"]
+ wm title $E "$filename"
+ Syntax $E.te.edit1 1.0 end
+ $E.te.edit1 mark set insert "1.0 + $line lines"
+ event generate $E.te.edit1 <<Modified>>
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+ update
+ focus $E.te.edit1
+# after 500 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+# after 500 "focus $E.te.edit1"
+ }
+}
+proc ReLoadFileArg {E filename} {
+ global FilenameArray UpToDateArray ModifiedArray directory
+ if {[file exists $filename]} then {
+ set directory [file dirname $filename]
+ set f [open $filename r]
+ set x [read $f]
+ set pos [$E.te.edit1 index insert]
+ $E.te.edit1 delete 1.0 end
+ $E.te.edit1 insert 1.0 $x
+ $E.te.edit1 mark set insert $pos
+ set t [close $f]
+ #Set global filename
+ set FilenameArray($E) $filename
+ set UpToDateArray($E) [file mtime "$filename"]
+ Syntax $E.te.edit1 1.0 end
+ focus $E.te.edit1
+# after 500 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+# after 500 "focus $E.te.edit1"
+ }
+}
+
+proc AppendFile {E} {
+ global directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getOpenFile -filetypes $types -initialdir $directory]
+ if {$filename != ""} then {
+ set directory [file dirname $filename]
+ set f [open $filename r]
+ set x [read $f]
+ #Append file at end of text
+ $E.te.edit1 insert insert $x
+ #Close source file
+ set t [close $f]
+ Syntax $E.te.edit1 1.0 end
+ event generate $E.te.edit1 <<Modified>>
+}}
+
+proc UpToDateFile {E} {
+ global FilenameArray UpToDateArray T
+ if [file exists $FilenameArray($E)] {
+ if { [file mtime $FilenameArray($E)] > $UpToDateArray($E) } {
+ switch [tk_messageBox -parent $E -icon warning -message $T(FileUpToDate) -default yes -type yesno] yes {
+ ReLoadFileArg $E $FilenameArray($E)
+ } no {
+ set UpToDateArray($E) [file mtime $FilenameArray($E)]
+ }
+ }
+ }
+}
+
+proc SaveFile {E} {
+ global FilenameArray UpToDateArray ModifiedArray
+ if {$FilenameArray($E)!= ""} then {
+ UpToDateFile $E
+ if { ![file exists $FilenameArray($E)] || [file mtime $FilenameArray($E)] <= $UpToDateArray($E) } {
+ set f [open $FilenameArray($E) w]
+ #Get text to save
+ set x [$E.te.edit1 get 1.0 end]
+ #Save it
+ puts $f $x
+ #and close file
+ set t [close $f]
+ set ModifiedArray($E.te.edit1) 0
+ set ModifiedArrayl($E.te.edit1) [string length $x]
+ set UpToDateArray($E) [file mtime $FilenameArray($E)]
+ }
+ } else {SaveAsFile $E}
+}
+
+proc SaveAsFile {E} {
+ global FilenameArray UpToDateArray ModifiedArray directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getSaveFile -filetypes $types -initialfile $FilenameArray($E) -defaultextension ".tex" -initialdir $directory]
+ if {$filename != ""} then {
+ set directory [file dirname $filename]
+ set f [open $filename w]
+ #Get text to save
+ set x [$E.te.edit1 get 1.0 end]
+ #Save it
+ puts $f $x
+ #and close file
+ set t [close $f]
+ set FilenameArray($E) $filename
+ wm title $E "$FilenameArray($E)"
+ set ModifiedArray($E.te.edit1) 0
+ set UpToDateArray($E) [file mtime $FilenameArray($E)]
+}}
+
+
+@
+
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@d4 1
+a4 1
+ global FilenameArray
+d10 1
+d33 1
+a33 1
+ global FilenameArray
+d39 1
+d70 1
+a70 1
+ LoadFileArg $filename
+d73 2
+a74 2
+proc LoadFileArg {filename} {
+ global FilenameArray ModifiedArray directory
+d84 1
+d87 1
+d98 1
+a98 1
+ global FilenameArray ModifiedArray directory
+d110 1
+d138 13
+d152 1
+a152 1
+ global FilenameArray ModifiedArray
+d154 13
+a166 9
+ set f [open $FilenameArray($E) w]
+ #Get text to save
+ set x [$E.te.edit1 get 1.0 end]
+ #Save it
+ puts $f $x
+ #and close file
+ set t [close $f]
+ set ModifiedArray($E.te.edit1) 0
+ set ModifiedArrayl($E.te.edit1) [string length $x]
+d171 1
+a171 1
+ global FilenameArray ModifiedArray directory
+d190 1
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d93 19
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 151
+a151 151
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+proc NewFile {} {
+ global FocusEditor
+ global FilenameArray
+ global EDITORNUMMER
+ global etcpath
+ set E [EDITOR]
+ $E.te.edit1 delete 1.0 end
+ set FilenameArray($E) ""
+ wm title $E "no name $EDITORNUMMER"
+ if [file exists "$etcpath/default.tex"] then {
+ set f [open "$etcpath/default.tex" r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ } else {
+ $E.te.edit1 insert end "\\documentclass\[12pt,a4paper\]{report}\n"
+# $E.te.edit1 insert end "\\usepackage\[german\]{babel}\n"
+# $E.te.edit1 insert end "\\usepackage{umlaut}\n"
+ $E.te.edit1 insert end "\\begin{document}\n\n"
+ $E.te.edit1 insert end "\\end{document}\n"
+ }
+ Syntax $E.te.edit1 1.0 end
+ set ksp [$E.te.edit1 search "\\begin{document}" 1.0]
+ $E.te.edit1 mark set insert "$ksp + 1 lines"
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+# after 250 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+}
+proc NewFileArg {} {
+ global FocusEditor
+ global FilenameArray
+ global EDITORNUMMER
+ global etcpath
+ set E [EDITOR]
+ $E.te.edit1 delete 1.0 end
+ set FilenameArray($E) ""
+ wm title $E "no name $EDITORNUMMER"
+ if [file exists "$etcpath/default.tex"] then {
+ set f [open "$etcpath/default.tex" r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ } else {
+ $E.te.edit1 insert end "\\documentclass\[12pt,a4paper\]{report}\n"
+# $E.te.edit1 insert end "\\usepackage\[german\]{babel}\n"
+# $E.te.edit1 insert end "\\usepackage{umlaut}\n"
+ $E.te.edit1 insert end "\\begin{document}\n\n"
+ $E.te.edit1 insert end "\\end{document}\n"
+ }
+ Syntax $E.te.edit1 1.0 end
+ set ksp [$E.te.edit1 search "\\begin{document}" 1.0]
+ $E.te.edit1 mark set insert "$ksp + 1 lines"
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+# after 250 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+}
+
+
+proc LoadFile {} {
+ global FilenameArray ModifiedArray directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getOpenFile -filetypes $types -initialdir $directory]
+ LoadFileArg $filename
+}
+
+proc LoadFileArg {filename} {
+ global FilenameArray ModifiedArray directory
+ if {[file exists $filename]} then {
+ set directory [file dirname $filename]
+ set E [EDITOR]
+ set f [open $filename r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ #Set global filename
+ set FilenameArray($E) $filename
+ wm title $E "$filename"
+ Syntax $E.te.edit1 1.0 end
+ event generate $E.te.edit1 <<Modified>>
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+ update
+ focus $E.te.edit1
+# after 500 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+# after 500 "focus $E.te.edit1"
+ }
+}
+
+proc AppendFile {E} {
+ global directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getOpenFile -filetypes $types -initialdir $directory]
+ if {$filename != ""} then {
+ set directory [file dirname $filename]
+ set f [open $filename r]
+ set x [read $f]
+ #Append file at end of text
+ $E.te.edit1 insert insert $x
+ #Close source file
+ set t [close $f]
+ Syntax $E.te.edit1 1.0 end
+ event generate $E.te.edit1 <<Modified>>
+}}
+
+proc SaveFile {E} {
+ global FilenameArray ModifiedArray
+ if {$FilenameArray($E)!= ""} then {
+ set f [open $FilenameArray($E) w]
+ #Get text to save
+ set x [$E.te.edit1 get 1.0 end]
+ #Save it
+ puts $f $x
+ #and close file
+ set t [close $f]
+ set ModifiedArray($E.te.edit1) 0
+ set ModifiedArrayl($E.te.edit1) [string length $x]
+ } else {SaveAsFile $E}
+}
+
+proc SaveAsFile {E} {
+ global FilenameArray ModifiedArray directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getSaveFile -filetypes $types -initialfile $FilenameArray($E) -defaultextension ".tex" -initialdir $directory]
+ if {$filename != ""} then {
+ set directory [file dirname $filename]
+ set f [open $filename w]
+ #Get text to save
+ set x [$E.te.edit1 get 1.0 end]
+ #Save it
+ puts $f $x
+ #and close file
+ set t [close $f]
+ set FilenameArray($E) $filename
+ wm title $E "$FilenameArray($E)"
+ set ModifiedArray($E.te.edit1) 0
+}}
+
+
+@
+
diff --git a/support/tcltexed/lib/RCS/help.tcl,v b/support/tcltexed/lib/RCS/help.tcl,v
new file mode 100644
index 0000000000..a1afb5147f
--- /dev/null
+++ b/support/tcltexed/lib/RCS/help.tcl,v
@@ -0,0 +1,407 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+#####################################################
+# show help
+# ok !
+proc Help {NAME} {
+ global T HLP
+ global hlppath hlptxt hlpfile
+ if [info exists HLP($NAME)] {
+
+ # Liste vorhandener Hilfen
+ set ii 0
+ foreach i $HLP($NAME) {
+ if [string match "$T(language)*" $i] {
+ incr ii
+ lappend liste $i "$T(language) $ii"
+ }
+ }
+ foreach i $HLP($NAME) {
+ if ![string match "$T(language)*" $i] {
+ incr ii
+ lappend liste $i "[lindex [split $i "/"] 0] $ii"
+ }
+ }
+ HLP_open $NAME [lindex $liste 0] [lindex $liste 1]
+ if [winfo exists .whelp] {
+ .whelp.f2.mb.m delete 0 end
+ foreach {i t} $liste {
+ .whelp.f2.mb.m add command -label $t -command "HLP_open $NAME $i {$t}"
+ }
+ .whelp.f2.e delete 0 end
+ .whelp.f2.e insert 0 $NAME
+ }
+ }
+ HLP_gif $NAME
+}
+###############################################
+# help from inside a text
+# ok !
+proc HelpTo {NAME} {
+ global T HLP
+ set flag 1
+ set key [$NAME get insert insert+1c]
+ if ![string compare $key "\\"] then {
+ set strt insert+1c
+ } else {
+ set strt insert
+ }
+ set ID [array startsearch HLP]
+ while {[array anymore HLP $ID]} {
+ set elm [array nextelement HLP $ID]
+ set velm [$NAME get $strt insert+[expr [string length $elm] + 1]c]
+ if ![string compare $elm $velm] then {
+ Help $elm
+ set flag 0
+ }
+ }
+ array donesearch HLP $ID
+ if $flag then {
+ Help $T(Helpto-Help)
+ }
+}
+##########################
+##########################
+proc HLP_load {} {
+ global hlppath HLP
+ if [file exists $hlppath/index] {
+ set f [open $hlppath/index r]
+ set L [read $f]
+ close $f
+ array set HLP $L
+ } {set HLP(ERROR) ERROR}
+}
+proc HLP_open {NAME FILE Text} {
+ global T hlppath hlptxt hlpfile
+ if ![winfo exists .whelp] {set hlpfile ""}
+ if {[string compare $FILE $hlpfile] != 0} {
+ if [file exists "$hlppath/$FILE"] then {
+ set f [open "$hlppath/$FILE" r]
+ HLP_plainwindow
+ .whelp.f2.mb configure -text $Text
+ .whelp.f.l configure -state normal
+ .whelp.f.l delete 1.0 end
+ .whelp.f.l insert 1.0 [read $f]
+ .whelp.f.l configure -state disabled
+ close $f
+ set hlpfile $FILE
+ set pos [.whelp.f.l search "::" 1.0 end]
+ while {$pos!=""} {
+ .whelp.f.l tag add invisible $pos "$pos lineend"
+ set pos [.whelp.f.l search "::" "$pos+1c" end]
+ }
+ set ksp "::"
+ set ksp [.whelp.f.l search -- $ksp$NAME$ksp pos]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ }
+ focus .whelp
+ } {
+ if [winfo exists .whelp] then {
+ .whelp.f.l configure -state normal
+ .whelp.f.l delete 1.0 end
+ eval ".whelp.f.l insert 1.0 \"$T(whelp-no-source)\""
+ .whelp.f.l configure -state disabled
+ }
+ }
+ }
+}
+proc HLP_plainwindow {} {
+ global T
+ if ![winfo exists .whelp] then {
+ toplevel .whelp
+ wm title .whelp $T(whelp-titel)
+
+ frame .whelp.f
+
+ scrollbar .whelp.f.vscroll -relief sunken -command {.whelp.f.l yview}
+ text .whelp.f.l -yscroll {.whelp.f.vscroll set}
+ pack .whelp.f.vscroll -side right -fill y
+ pack .whelp.f.l -expand yes -fill both
+ frame .whelp.f2
+ menubutton .whelp.f2.mb -menu .whelp.f2.mb.m
+ menu .whelp.f2.mb.m
+ button .whelp.f2.butup -text up -command {
+ .whelp.f.l tag remove show 1.0 end
+ set ksp [.whelp.f.l search -backwards -- [.whelp.f2.e get] pos]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ .whelp.f.l tag add show pos "pos wordend"
+ }
+ }
+ button .whelp.f2.butdown -text down -command {
+ .whelp.f.l tag remove show 1.0 end
+ set ksp [.whelp.f.l search -- [.whelp.f2.e get] pos+1c]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ .whelp.f.l tag add show pos "pos wordend"
+ }
+ }
+ entry .whelp.f2.e
+ button .whelp.f2.butQ -text $T(quit) -command {
+ destroy .whelp
+ }
+
+ pack .whelp.f -expand yes -fill y
+ pack .whelp.f2.mb .whelp.f2.butup .whelp.f2.butdown .whelp.f2.e .whelp.f2.butQ -side left
+ pack .whelp.f2
+ COLOR .whelp
+ .whelp.f.l tag add invisible 1.0 1.0
+ .whelp.f.l tag add show 1.0 1.0
+ .whelp.f.l tag configure invisible -foreground [.whelp.f.l cget -bg]
+ .whelp.f.l tag configure show -foreground Red
+ .whelp.f.l tag raise invisible
+ .whelp.f.l mark set pos 1.0
+ }
+}
+proc HLP_gif Name {
+ global gifpath I_txt
+ if [info exists I_txt($Name)] {
+ if [file exists "$gifpath/$I_txt($Name).gif"] then {
+ if ![winfo exists .whelpgif] then {
+ toplevel .whelpgif
+
+ button .whelpgif.butQ -image [Bild $Name] -command {
+ destroy .whelpgif
+ }
+ pack .whelpgif.butQ
+ COLOR .whelpgif
+ } else {
+ .whelpgif.butQ configure -image [Bild $Name]
+ focus .whelpgif
+ }
+ } {
+ if [winfo exists .whelpgif] then {
+ .whelpgif.butQ configure -image MasterBildSlaveOff
+ }
+ }
+ } {
+ if [winfo exists .whelpgif] then {
+ .whelpgif.butQ configure -image MasterBildSlaveOff
+ }
+ }
+}@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 184
+a184 184
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+#####################################################
+# show help
+# ok !
+proc Help {NAME} {
+ global T HLP
+ global hlppath hlptxt hlpfile
+ if [info exists HLP($NAME)] {
+
+ # Liste vorhandener Hilfen
+ set ii 0
+ foreach i $HLP($NAME) {
+ if [string match "$T(language)*" $i] {
+ incr ii
+ lappend liste $i "$T(language) $ii"
+ }
+ }
+ foreach i $HLP($NAME) {
+ if ![string match "$T(language)*" $i] {
+ incr ii
+ lappend liste $i "[lindex [split $i "/"] 0] $ii"
+ }
+ }
+ HLP_open $NAME [lindex $liste 0] [lindex $liste 1]
+ if [winfo exists .whelp] {
+ .whelp.f2.mb.m delete 0 end
+ foreach {i t} $liste {
+ .whelp.f2.mb.m add command -label $t -command "HLP_open $NAME $i {$t}"
+ }
+ .whelp.f2.e delete 0 end
+ .whelp.f2.e insert 0 $NAME
+ }
+ }
+ HLP_gif $NAME
+}
+###############################################
+# help from inside a text
+# ok !
+proc HelpTo {NAME} {
+ global T HLP
+ set flag 1
+ set key [$NAME get insert insert+1c]
+ if ![string compare $key "\\"] then {
+ set strt insert+1c
+ } else {
+ set strt insert
+ }
+ set ID [array startsearch HLP]
+ while {[array anymore HLP $ID]} {
+ set elm [array nextelement HLP $ID]
+ set velm [$NAME get $strt insert+[expr [string length $elm] + 1]c]
+ if ![string compare $elm $velm] then {
+ Help $elm
+ set flag 0
+ }
+ }
+ array donesearch HLP $ID
+ if $flag then {
+ Help $T(Helpto-Help)
+ }
+}
+##########################
+##########################
+proc HLP_load {} {
+ global hlppath HLP
+ if [file exists $hlppath/index] {
+ set f [open $hlppath/index r]
+ set L [read $f]
+ close $f
+ array set HLP $L
+ } {set HLP(ERROR) ERROR}
+}
+proc HLP_open {NAME FILE Text} {
+ global T hlppath hlptxt hlpfile
+ if ![winfo exists .whelp] {set hlpfile ""}
+ if {[string compare $FILE $hlpfile] != 0} {
+ if [file exists "$hlppath/$FILE"] then {
+ set f [open "$hlppath/$FILE" r]
+ HLP_plainwindow
+ .whelp.f2.mb configure -text $Text
+ .whelp.f.l configure -state normal
+ .whelp.f.l delete 1.0 end
+ .whelp.f.l insert 1.0 [read $f]
+ .whelp.f.l configure -state disabled
+ close $f
+ set hlpfile $FILE
+ set pos [.whelp.f.l search "::" 1.0 end]
+ while {$pos!=""} {
+ .whelp.f.l tag add invisible $pos "$pos lineend"
+ set pos [.whelp.f.l search "::" "$pos+1c" end]
+ }
+ set ksp "::"
+ set ksp [.whelp.f.l search -- $ksp$NAME$ksp pos]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ }
+ focus .whelp
+ } {
+ if [winfo exists .whelp] then {
+ .whelp.f.l configure -state normal
+ .whelp.f.l delete 1.0 end
+ eval ".whelp.f.l insert 1.0 \"$T(whelp-no-source)\""
+ .whelp.f.l configure -state disabled
+ }
+ }
+ }
+}
+proc HLP_plainwindow {} {
+ global T
+ if ![winfo exists .whelp] then {
+ toplevel .whelp
+ wm title .whelp $T(whelp-titel)
+
+ frame .whelp.f
+
+ scrollbar .whelp.f.vscroll -relief sunken -command {.whelp.f.l yview}
+ text .whelp.f.l -yscroll {.whelp.f.vscroll set}
+ pack .whelp.f.vscroll -side right -fill y
+ pack .whelp.f.l -expand yes -fill both
+ frame .whelp.f2
+ menubutton .whelp.f2.mb -menu .whelp.f2.mb.m
+ menu .whelp.f2.mb.m
+ button .whelp.f2.butup -text up -command {
+ .whelp.f.l tag remove show 1.0 end
+ set ksp [.whelp.f.l search -backwards -- [.whelp.f2.e get] pos]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ .whelp.f.l tag add show pos "pos wordend"
+ }
+ }
+ button .whelp.f2.butdown -text down -command {
+ .whelp.f.l tag remove show 1.0 end
+ set ksp [.whelp.f.l search -- [.whelp.f2.e get] pos+1c]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ .whelp.f.l tag add show pos "pos wordend"
+ }
+ }
+ entry .whelp.f2.e
+ button .whelp.f2.butQ -text $T(quit) -command {
+ destroy .whelp
+ }
+
+ pack .whelp.f -expand yes -fill y
+ pack .whelp.f2.mb .whelp.f2.butup .whelp.f2.butdown .whelp.f2.e .whelp.f2.butQ -side left
+ pack .whelp.f2
+ COLOR .whelp
+ .whelp.f.l tag add invisible 1.0 1.0
+ .whelp.f.l tag add show 1.0 1.0
+ .whelp.f.l tag configure invisible -foreground [.whelp.f.l cget -bg]
+ .whelp.f.l tag configure show -foreground Red
+ .whelp.f.l tag raise invisible
+ .whelp.f.l mark set pos 1.0
+ }
+}
+proc HLP_gif Name {
+ global gifpath I_txt
+ if [info exists I_txt($Name)] {
+ if [file exists "$gifpath/$I_txt($Name).gif"] then {
+ if ![winfo exists .whelpgif] then {
+ toplevel .whelpgif
+
+ button .whelpgif.butQ -image [Bild $Name] -command {
+ destroy .whelpgif
+ }
+ pack .whelpgif.butQ
+ COLOR .whelpgif
+ } else {
+ .whelpgif.butQ configure -image [Bild $Name]
+ focus .whelpgif
+ }
+ } {
+ if [winfo exists .whelpgif] then {
+ .whelpgif.butQ configure -image MasterBildSlaveOff
+ }
+ }
+ } {
+ if [winfo exists .whelpgif] then {
+ .whelpgif.butQ configure -image MasterBildSlaveOff
+ }
+ }
+@
+
diff --git a/support/tcltexed/lib/RCS/helpmanual.tcl,v b/support/tcltexed/lib/RCS/helpmanual.tcl,v
new file mode 100644
index 0000000000..636c90d3d0
--- /dev/null
+++ b/support/tcltexed/lib/RCS/helpmanual.tcl,v
@@ -0,0 +1,480 @@
+head 1.4;
+access;
+symbols;
+locks
+ mys:1.4; strict;
+comment @# @;
+
+
+1.4
+date 2001.01.23.21.07.16; author mys; state Exp;
+branches;
+next 1.3;
+
+1.3
+date 2000.08.15.23.03.59; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.4
+log
+@+bre
+@
+text
+@# Copyright (C) 2000 - Martin Strauss - under terms of GPL
+##################################################################################
+# version info
+proc InitVersion {} {
+ global T Tcltexed_Version
+ if ![winfo exists .wversion] then {
+ toplevel .wversion
+ wm title .wversion $T(wversion-titel)
+ label .wversion.version -text $T(wversion-text)
+ pack .wversion.version
+ }
+}
+##################################################################################
+# latex - command - listing
+proc InitListen {} {
+ global I_befehl I_back T wlatex_max
+ if ![winfo exists .wlatex] then {
+ toplevel .wlatex
+ wm title .wlatex $T(wlatex-titel)
+ frame .wlatex.e
+ scrollbar .wlatex.e.scroll -command {.wlatex.e.list yview}
+ pack .wlatex.e.scroll -side right -fill y
+ listbox .wlatex.e.list -yscroll ".wlatex.e.scroll set" -relief sunken -width 20 -height $wlatex_max -setgrid yes
+ pack .wlatex.e.list -fill both -expand yes
+ set LISTE [lsort [array names I_befehl]]
+ foreach i $LISTE {.wlatex.e.list insert end $i}
+ button .wlatex.butQ -text $T(quit) -command {destroy .wlatex}
+ pack .wlatex.e .wlatex.butQ -fill x
+ wm minsize . 1 1
+ bind .wlatex <<Help>> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ Help [selection get]
+ } else {
+ Help $T(wlatex-Help)
+ }
+ }
+ bind .wlatex <Return> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ Help [selection get]
+ focus .wlatex
+ if {$ksp < [.wlatex.e.list size]} then {incr ksp}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Double-Button-1> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ Help [selection get]
+ focus .wlatex
+ }
+ }
+ bind .wlatex <Double-Button-3> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ switch_Undo $FocusEditor.te.edit1 UndoBegin
+ $FocusEditor.te.edit1 insert insert $I_befehl([selection get])
+ switch_Undo $FocusEditor.te.edit1 UndoEnd
+ switch_undo $FocusEditor.te.edit1 insert
+ $FocusEditor.te.edit1 mark set insert "insert - $I_back([selection get]) chars"
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ }
+ }
+ bind .wlatex <Prior> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > $wlatex_max} then {set ksp [expr $ksp - $wlatex_max]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Next> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [expr $wlatex_max + [.wlatex.e.list size]]} then {set ksp [expr $ksp + $wlatex_max]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Up> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > 0} then {set ksp [expr $ksp - 1]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Down> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [.wlatex.e.list size]} then {incr ksp}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <KeyPress> {
+ set ksp [lsearch -exact $ABC %A]
+ if {$ksp != -1} {
+ set ksp [lindex $wlatex_LISTE $ksp]
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Control-c> {
+ destroy .wlatex
+ }
+ COLOR .wlatex
+ } else {focus .wlatex}
+}
+##################################################################################
+# Tcltexed - manual - listing
+proc InitTcltexed {} {
+ global Tcltexed_help T wTcltexed_max
+ if ![winfo exists .wTcltexed] then {
+ toplevel .wTcltexed
+ wm title .wTcltexed $T(wTcltexed-titel)
+ frame .wTcltexed.e
+ scrollbar .wTcltexed.e.scroll -command {.wTcltexed.e.list yview}
+ pack .wTcltexed.e.scroll -side right -fill y
+ listbox .wTcltexed.e.list -yscroll ".wTcltexed.e.scroll set" -relief sunken -width 20 -height $wTcltexed_max -setgrid yes
+ pack .wTcltexed.e.list -fill both -expand yes
+ foreach {i f} $T(wTcltexed-manual) {
+ .wTcltexed.e.list insert end $i
+ set Tcltexed_help($i) $f
+ }
+ button .wTcltexed.butQ -text $T(quit) -command {destroy .wTcltexed}
+ pack .wTcltexed.e .wTcltexed.butQ -fill x
+ wm minsize . 1 1
+
+ bind .wTcltexed <<Help>> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ } else {
+ Help $T(wTcltexed-Help)
+ }
+ }
+ bind .wTcltexed <Return> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ if {$ksp < [.wTcltexed.e.list size]} then {incr ksp}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Double-Button-1> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ }
+ }
+ bind .wTcltexed <Double-Button-3> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ }
+ }
+ bind .wTcltexed <Prior> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > $wTcltexed_max} then {set ksp [expr $ksp - $wTcltexed_max]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Next> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [expr $wTcltexed_max + [.wTcltexed.e.list size]]} then {set ksp [expr $ksp + $wTcltexed_max]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Up> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > 0} then {set ksp [expr $ksp - 1]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Down> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [.wTcltexed.e.list size]} then {incr ksp}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Control-c> {
+ destroy .wTcltexed
+ }
+ COLOR .wTcltexed
+ } else {focus .wTcltexed}
+}
+
+@
+
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@d116 1
+a116 1
+ } else {focus .wTcltexed}
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d1 12
+a12 1
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 199
+a199 199
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##################################################################################
+# latex - command - listing
+proc InitListen {} {
+ global I_befehl I_back T wlatex_max
+ if ![winfo exists .wlatex] then {
+ toplevel .wlatex
+ wm title .wlatex $T(wlatex-titel)
+ frame .wlatex.e
+ scrollbar .wlatex.e.scroll -command {.wlatex.e.list yview}
+ pack .wlatex.e.scroll -side right -fill y
+ listbox .wlatex.e.list -yscroll ".wlatex.e.scroll set" -relief sunken -width 20 -height $wlatex_max -setgrid yes
+ pack .wlatex.e.list -fill both -expand yes
+ set LISTE [lsort [array names I_befehl]]
+ foreach i $LISTE {.wlatex.e.list insert end $i}
+ button .wlatex.butQ -text $T(quit) -command {destroy .wlatex}
+ pack .wlatex.e .wlatex.butQ -fill x
+ wm minsize . 1 1
+ bind .wlatex <<Help>> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ Help [selection get]
+ } else {
+ Help $T(wlatex-Help)
+ }
+ }
+ bind .wlatex <Return> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ Help [selection get]
+ focus .wlatex
+ if {$ksp < [.wlatex.e.list size]} then {incr ksp}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Double-Button-1> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ Help [selection get]
+ focus .wlatex
+ }
+ }
+ bind .wlatex <Double-Button-3> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ switch_Undo $FocusEditor.te.edit1 UndoBegin
+ $FocusEditor.te.edit1 insert insert $I_befehl([selection get])
+ switch_Undo $FocusEditor.te.edit1 UndoEnd
+ switch_undo $FocusEditor.te.edit1 insert
+ $FocusEditor.te.edit1 mark set insert "insert - $I_back([selection get]) chars"
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ }
+ }
+ bind .wlatex <Prior> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > $wlatex_max} then {set ksp [expr $ksp - $wlatex_max]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Next> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [expr $wlatex_max + [.wlatex.e.list size]]} then {set ksp [expr $ksp + $wlatex_max]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Up> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > 0} then {set ksp [expr $ksp - 1]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Down> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [.wlatex.e.list size]} then {incr ksp}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <KeyPress> {
+ set ksp [lsearch -exact $ABC %A]
+ if {$ksp != -1} {
+ set ksp [lindex $wlatex_LISTE $ksp]
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Control-c> {
+ destroy .wlatex
+ }
+ COLOR .wlatex
+ } else {focus .wTcltexed}
+}
+##################################################################################
+# Tcltexed - manual - listing
+proc InitTcltexed {} {
+ global Tcltexed_help T wTcltexed_max
+ if ![winfo exists .wTcltexed] then {
+ toplevel .wTcltexed
+ wm title .wTcltexed $T(wTcltexed-titel)
+ frame .wTcltexed.e
+ scrollbar .wTcltexed.e.scroll -command {.wTcltexed.e.list yview}
+ pack .wTcltexed.e.scroll -side right -fill y
+ listbox .wTcltexed.e.list -yscroll ".wTcltexed.e.scroll set" -relief sunken -width 20 -height $wTcltexed_max -setgrid yes
+ pack .wTcltexed.e.list -fill both -expand yes
+ foreach {i f} $T(wTcltexed-manual) {
+ .wTcltexed.e.list insert end $i
+ set Tcltexed_help($i) $f
+ }
+ button .wTcltexed.butQ -text $T(quit) -command {destroy .wTcltexed}
+ pack .wTcltexed.e .wTcltexed.butQ -fill x
+ wm minsize . 1 1
+
+ bind .wTcltexed <<Help>> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ } else {
+ Help $T(wTcltexed-Help)
+ }
+ }
+ bind .wTcltexed <Return> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ if {$ksp < [.wTcltexed.e.list size]} then {incr ksp}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Double-Button-1> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ }
+ }
+ bind .wTcltexed <Double-Button-3> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ }
+ }
+ bind .wTcltexed <Prior> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > $wTcltexed_max} then {set ksp [expr $ksp - $wTcltexed_max]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Next> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [expr $wTcltexed_max + [.wTcltexed.e.list size]]} then {set ksp [expr $ksp + $wTcltexed_max]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Up> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > 0} then {set ksp [expr $ksp - 1]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Down> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [.wTcltexed.e.list size]} then {incr ksp}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Control-c> {
+ destroy .wTcltexed
+ }
+ COLOR .wTcltexed
+ } else {focus .wTcltexed}
+}
+
+@
+
diff --git a/support/tcltexed/lib/RCS/linebreak.tcl,v b/support/tcltexed/lib/RCS/linebreak.tcl,v
new file mode 100644
index 0000000000..b1240e87d8
--- /dev/null
+++ b/support/tcltexed/lib/RCS/linebreak.tcl,v
@@ -0,0 +1,206 @@
+head 1.3;
+access;
+symbols;
+locks
+ mys:1.3; strict;
+comment @# @;
+
+
+1.3
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 99.11.22.22.30.59; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# line breaking
+proc Line_breaking {E START END} {
+ global line_breaking_chars
+ set imax [lindex [split [$E index "$START.0 lineend"] "."] 1]
+ set spaces ""
+ for {set i 0} {$i<=$imax} {incr i} {
+ if {[string compare [$E get $START.$i] " "] == 0} {set spaces "$spaces "} {break}
+ }
+ for {set i $START} {$i<=$END} {incr i} {
+ if {[lindex [split [$E index "$i.0 lineend"] "."] 1] > 80} {
+ set pos [$E search -backwards -- " " $i.$line_breaking_chars "$i.0"]
+ if {[lindex [split $pos "."] 0] == $i} {
+ if {[string compare [$E get "$pos + 1c"] "\n"] !=0} {
+ $E insert "$pos + 1c" "\n$spaces"
+ incr END
+ }
+ }
+ }
+ }
+}
+proc Line_unbreaking {E START END} {
+ for {set i $START} {$i<=$END} {incr i} {
+ if {[string compare [$E get "$i.0 lineend - 1c"] " "] ==0} {
+ if {[string length [$E get "$i.0+1l" "$i.1+1l"]] !=0} {
+ while {[string compare [$E get "$i.0 lineend+1c"] " "] == 0} {
+ $E delete "$i.0 lineend+1c"
+ }
+ $E delete "$i.0 lineend"
+ incr i -1
+ incr END -1
+ }
+ }
+ }
+}
+proc Line_breaking_switch {E KEY} {
+ switch $KEY all {
+ Line_breaking_switch $E unall
+ Line_breaking $E 1 [lindex [split [$E index end] "."] 0]
+ } unall {
+ Line_unbreaking $E 1 [lindex [split [$E index end] "."] 0]
+ } section {
+ Line_breaking_switch $E unsection
+ set pos1 [lindex [split [$E search -backwards -regexp -- "^$" insert 1.0] "."] 0]
+ set pos2 [lindex [split [$E search -regexp -- "^$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_breaking $E $pos1 $pos2
+ } unsection {
+ set pos1 [lindex [split [$E search -backwards -regexp -- "^$" insert 1.0] "."] 0]
+ set pos2 [lindex [split [$E search -regexp -- "^$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_unbreaking $E $pos1 $pos2
+ } line {
+ Line_breaking_switch $E unline
+ set ksp [lindex [split [$E index {insert linestart}] "."] 0]
+ if {$ksp != ""} {
+ Line_breaking $E $ksp $ksp
+ }
+ } unline {
+ set pos1 [expr [lindex [split [$E search -backwards -regexp -- "\[^ \]$" insert 1.0] "."] 0] +1]
+ set pos2 [lindex [split [$E search -regexp -- "\[^ \]$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_unbreaking $E $pos1 $pos2
+ }
+}
+@
+
+
+1.2
+log
+@+ Einrueckung beim Zeilenumbruch an die Einrueckung der ersten Zeile
+angepasst.
+@
+text
+@d1 69
+a69 69
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# line breaking
+proc Line_breaking {E START END} {
+ global line_breaking_chars
+ set imax [lindex [split [$E index "$START.0 lineend"] "."] 1]
+ set spaces ""
+ for {set i 0} {$i<=$imax} {incr i} {
+ if {[string compare [$E get $START.$i] " "] == 0} {set spaces "$spaces "} {break}
+ }
+ for {set i $START} {$i<=$END} {incr i} {
+ if {[lindex [split [$E index "$i.0 lineend"] "."] 1] > 80} {
+ set pos [$E search -backwards -- " " $i.$line_breaking_chars "$i.0"]
+ if {[lindex [split $pos "."] 0] == $i} {
+ if {[string compare [$E get "$pos + 1c"] "\n"] !=0} {
+ $E insert "$pos + 1c" "\n$spaces"
+ incr END
+ }
+ }
+ }
+ }
+}
+proc Line_unbreaking {E START END} {
+ for {set i $START} {$i<=$END} {incr i} {
+ if {[string compare [$E get "$i.0 lineend - 1c"] " "] ==0} {
+ if {[string length [$E get "$i.0+1l" "$i.1+1l"]] !=0} {
+ while {[string compare [$E get "$i.0 lineend+1c"] " "] == 0} {
+ $E delete "$i.0 lineend+1c"
+ }
+ $E delete "$i.0 lineend"
+ incr i -1
+ incr END -1
+ }
+ }
+ }
+}
+proc Line_breaking_switch {E KEY} {
+ switch $KEY all {
+ Line_breaking_switch $E unall
+ Line_breaking $E 1 [lindex [split [$E index end] "."] 0]
+ } unall {
+ Line_unbreaking $E 1 [lindex [split [$E index end] "."] 0]
+ } section {
+ Line_breaking_switch $E unsection
+ set pos1 [lindex [split [$E search -backwards -regexp -- "^$" insert 1.0] "."] 0]
+ set pos2 [lindex [split [$E search -regexp -- "^$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_breaking $E $pos1 $pos2
+ } unsection {
+ set pos1 [lindex [split [$E search -backwards -regexp -- "^$" insert 1.0] "."] 0]
+ set pos2 [lindex [split [$E search -regexp -- "^$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_unbreaking $E $pos1 $pos2
+ } line {
+ Line_breaking_switch $E unline
+ set ksp [lindex [split [$E index {insert linestart}] "."] 0]
+ if {$ksp != ""} {
+ Line_breaking $E $ksp $ksp
+ }
+ } unline {
+ set pos1 [expr [lindex [split [$E search -backwards -regexp -- "\[^ \]$" insert 1.0] "."] 0] +1]
+ set pos2 [lindex [split [$E search -regexp -- "\[^ \]$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_unbreaking $E $pos1 $pos2
+ }
+}
+@
+
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d6 5
+a10 1
+ set i 1
+d12 7
+a18 5
+ set pos [$E search -- " " $i.$line_breaking_chars "$i.$line_breaking_chars lineend"]
+ if {[lindex [split $pos "."] 0] == $i} {
+ if {[string compare [$E get "$pos + 1c"] "\n"] !=0} {
+ $E insert "$pos + 1c" "\n"
+ incr END
+a23 1
+ set i 1
+d27 4
+a30 1
+ $E delete "$i.0 lineend"
+@
diff --git a/support/tcltexed/lib/RCS/options.tcl,v b/support/tcltexed/lib/RCS/options.tcl,v
new file mode 100644
index 0000000000..60066c3879
--- /dev/null
+++ b/support/tcltexed/lib/RCS/options.tcl,v
@@ -0,0 +1,164 @@
+head 1.3;
+access;
+symbols;
+locks
+ mys:1.3; strict;
+comment @# @;
+
+
+1.3
+date 2001.01.23.21.07.16; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.3
+log
+@+bre
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################
+# Options
+################################################################
+proc SaveOptions {} {
+ global wsearch_gb KlammerFlag syntax_flag log_flag Package inifile myown Tcltexed_Version language tft_size
+ set f [open $inifile w]
+ #Get text to save
+ lappend liste $Tcltexed_Version $wsearch_gb $KlammerFlag $syntax_flag $log_flag "[array get Package]" "[array get myown]" $language $tft_size
+ #Save it
+ puts $f $liste
+ #and close file
+ close $f
+}
+################################################################
+proc LoadOptions {} {
+ global wsearch_gb KlammerFlag syntax_flag log_flag Package PLISTE bhtpath I_flag inifile myown Tcltexed_Version language tft_size
+
+ foreach {i n} $PLISTE {
+ set Package($i) 0
+ }
+ set Package(latex) 1
+
+ if [file exists $inifile] then {
+ set f [open $inifile r]
+ #Get text to save
+ set liste [gets $f]
+ if {[lindex $liste 0] == $Tcltexed_Version} {
+ set wsearch_gb [lindex $liste 1]
+ set KlammerFlag [lindex $liste 2]
+ set syntax_flag [lindex $liste 3]
+ set log_flag [lindex $liste 4]
+ array set Package [lindex $liste 5]
+ array set myown [lindex $liste 6]
+ set language [lindex $liste 7]
+ set tft_size [lindex $liste 8]
+ }
+ close $f
+ }
+ foreach {i n} $PLISTE {
+ if $Package($i) then {
+ set I_file $bhtpath/$i.bht
+ set I_flag 1
+ source $bhtpath/$i.bht
+ }
+ }
+}
+
+
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d6 1
+a6 1
+ global wsearch_gb KlammerFlag syntax_flag Package inifile myown Tcltexed_Version language tft_size
+d9 1
+a9 1
+ lappend liste $Tcltexed_Version $wsearch_gb $KlammerFlag $syntax_flag "[array get Package]" "[array get myown]" $language $tft_size
+d17 1
+a17 1
+ global wsearch_gb KlammerFlag syntax_flag Package PLISTE bhtpath I_flag inifile myown Tcltexed_Version language tft_size
+d32 5
+a36 4
+ array set Package [lindex $liste 4]
+ array set myown [lindex $liste 5]
+ set language [lindex $liste 6]
+ set tft_size [lindex $liste 7]
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 48
+a48 48
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################
+# Options
+################################################################
+proc SaveOptions {} {
+ global wsearch_gb KlammerFlag syntax_flag Package inifile myown Tcltexed_Version language tft_size
+ set f [open $inifile w]
+ #Get text to save
+ lappend liste $Tcltexed_Version $wsearch_gb $KlammerFlag $syntax_flag "[array get Package]" "[array get myown]" $language $tft_size
+ #Save it
+ puts $f $liste
+ #and close file
+ close $f
+}
+################################################################
+proc LoadOptions {} {
+ global wsearch_gb KlammerFlag syntax_flag Package PLISTE bhtpath I_flag inifile myown Tcltexed_Version language tft_size
+
+ foreach {i n} $PLISTE {
+ set Package($i) 0
+ }
+ set Package(latex) 1
+
+ if [file exists $inifile] then {
+ set f [open $inifile r]
+ #Get text to save
+ set liste [gets $f]
+ if {[lindex $liste 0] == $Tcltexed_Version} {
+ set wsearch_gb [lindex $liste 1]
+ set KlammerFlag [lindex $liste 2]
+ set syntax_flag [lindex $liste 3]
+ array set Package [lindex $liste 4]
+ array set myown [lindex $liste 5]
+ set language [lindex $liste 6]
+ set tft_size [lindex $liste 7]
+ }
+ close $f
+ }
+ foreach {i n} $PLISTE {
+ if $Package($i) then {
+ set I_file $bhtpath/$i.bht
+ set I_flag 1
+ source $bhtpath/$i.bht
+ }
+ }
+}
+
+
+@
+
diff --git a/support/tcltexed/lib/RCS/search.tcl,v b/support/tcltexed/lib/RCS/search.tcl,v
new file mode 100644
index 0000000000..ec3bb08370
--- /dev/null
+++ b/support/tcltexed/lib/RCS/search.tcl,v
@@ -0,0 +1,372 @@
+head 1.3;
+access;
+symbols;
+locks
+ mys:1.3; strict;
+comment @# @;
+
+
+1.3
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.19.09.28; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 2000 - Martin Strauss - under terms of GPL
+##############################################################
+# search routine
+# ok !
+proc InitSearch {} {
+ global T
+ if ![winfo exists .wsearch] then {
+ toplevel .wsearch
+ wm title .wsearch $T(wsearch-titel)
+
+ entry .wsearch.text1 -width 20 -relief sunken -background White
+ entry .wsearch.text2 -width 20 -relief sunken -background White
+
+ global wsearch_gb
+ checkbutton .wsearch.butgb -variable wsearch_gb -text $T(wsearch-case-sensitive)
+
+ button .wsearch.but1 -text $T(wsearch-top) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $Text 1.0]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ frame .wsearch.f1
+
+ button .wsearch.f1.but2 -text $T(wsearch-down) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $Text insert+1c]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+
+ button .wsearch.f1.but3 -text $T(wsearch-up) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if {$Text != ""} then {
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search -backwards $comm $Text insert]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}}
+
+ frame .wsearch.f2
+
+ button .wsearch.f2.but4 -text $T(wsearch-replace) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set FIND [.wsearch.text1 get]
+ set FIND_L [string length $FIND]
+ if {$FIND != ""} then {
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ undo_switch $FocusEditor.te.edit1 "Save {insert \"insert + $FIND_L chars\"} Delete UndoBegin"
+ set REPLACE [.wsearch.text2 get]
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ $FocusEditor.te.edit1 see insert
+ undo_switch $FocusEditor.te.edit1 {UndoEnd Save UndoMax}
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ # Sucht
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $FIND insert]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $FIND]c
+ $FocusEditor.te.edit1 mark set sel.first insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}}
+
+ button .wsearch.f2.but5 -text $T(wsearch-all) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set FIND [.wsearch.text1 get]
+ set FIND_L [string length "$FIND"]
+ if {$FIND != ""} then {
+ set REPLACE [.wsearch.text2 get]
+ set modifiedflag 0
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ undo_switch $FocusEditor.te.edit1 Save
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set nowindex 1.0
+ while {$nowindex != ""} {
+ $FocusEditor.te.edit1 mark set insert $nowindex
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ undo_switch $FocusEditor.te.edit1 "{insert \"insert + $FIND_L chars\"} Delete UndoBegin"
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ undo_switch $FocusEditor.te.edit1 {UndoEnd Save}
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set modifiedflag 1
+ }
+ # Sucht
+ set nowindex [$FocusEditor.te.edit1 search $comm $FIND insert end]
+ }
+ $FocusEditor.te.edit1 mark set insert $startindex
+ if $modifiedflag {
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ }
+ }
+
+ button .wsearch.butQ -text $T(quit) -command {
+ destroy .wsearch
+ }
+ pack .wsearch.f1.but2 -side left
+ pack .wsearch.f1.but3 -side right
+ pack .wsearch.f2.but4 .wsearch.f2.but5 -side left
+ pack .wsearch.text1 .wsearch.but1 .wsearch.f1 .wsearch.butgb .wsearch.text2\
+.wsearch.f2 .wsearch.butQ
+ wm minsize . 1 1
+ bind .wsearch <<Help>> {Help tcltexed_hlp $T(wsearch-Help)}
+ bind .wsearch <Control-c> {
+ destroy .wsearch
+ }
+ wm resizable .wsearch 0 0
+ COLOR .wsearch
+ .wsearch.text1 configure -background White
+ .wsearch.text2 configure -background White
+ menu .wsearch.text1.pop_menu
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wsearch.text1 <<Cut>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Copy) -command "event generate wsearch.text1 <<Copy>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wsearch.text1 <<Paste>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wsearch.text1 <<Clear>>"
+ menu .wsearch.text2.pop_menu
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wsearch.text2 <<Cut>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Copy) -command "event generate .wsearch.text2 <<Copy>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wsearch.text2 <<Paste>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wsearch.text2 <<Clear>>"
+
+ bind .wsearch.text1 <Button-3> "tk_popup .wsearch.text1.pop_menu \[winfo pointerx .wsearch\] \[winfo pointery .wsearch\]"
+ bind .wsearch.text2 <Button-3> "tk_popup .wsearch.text2.pop_menu \[winfo pointerx .wsearch\] \[winfo pointery .wsearch\]"
+
+ } else {focus .wsearch}
+}
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d1 158
+a158 159
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##############################################################
+# search routine
+# ok !
+proc InitSearch {} {
+ global T
+ if ![winfo exists .wsearch] then {
+ toplevel .wsearch
+ wm title .wsearch $T(wsearch-titel)
+
+ entry .wsearch.text1 -width 20 -relief sunken -background White
+ entry .wsearch.text2 -width 20 -relief sunken -background White
+
+ global wsearch_gb
+ checkbutton .wsearch.butgb -variable wsearch_gb -text $T(wsearch-case-sensitive)
+
+ button .wsearch.but1 -text $T(wsearch-top) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $Text 1.0]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ frame .wsearch.f1
+
+ button .wsearch.f1.but2 -text $T(wsearch-down) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $Text insert+1c]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+
+ button .wsearch.f1.but3 -text $T(wsearch-up) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if {$Text != ""} then {
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search -backwards $comm $Text insert]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}}
+
+ frame .wsearch.f2
+
+ button .wsearch.f2.but4 -text $T(wsearch-replace) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set FIND [.wsearch.text1 get]
+ set FIND_L [string length $FIND]
+ if {$FIND != ""} then {
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ undo_switch $FocusEditor.te.edit1 "Save {insert \"insert + $FIND_L chars\"} Delete UndoBegin"
+ set REPLACE [.wsearch.text2 get]
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ $FocusEditor.te.edit1 see insert
+ undo_switch $FocusEditor.te.edit1 {UndoEnd Save UndoMax}
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ # Sucht
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $FIND insert]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $FIND]c
+ $FocusEditor.te.edit1 mark set sel.first insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}}
+
+ button .wsearch.f2.but5 -text $T(wsearch-all) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set FIND [.wsearch.text1 get]
+ set FIND_L [string length "$FIND"]
+ if {$FIND != ""} then {
+ set REPLACE [.wsearch.text2 get]
+ set modifiedflag 0
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ undo_switch $FocusEditor.te.edit1 Save
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set nowindex 1.0
+ while {$nowindex != ""} {
+ $FocusEditor.te.edit1 mark set insert $nowindex
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ undo_switch $FocusEditor.te.edit1 "{insert \"insert + $FIND_L chars\"} Delete UndoBegin"
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ undo_switch $FocusEditor.te.edit1 {UndoEnd Save}
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set modifiedflag 1
+ }
+ # Sucht
+ set nowindex [$FocusEditor.te.edit1 search $comm $FIND insert end]
+ }
+ $FocusEditor.te.edit1 mark set insert $startindex
+ if $modifiedflag {
+ undo_switch $FocusEditor.te.edit1 Save
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ }
+ }
+
+ button .wsearch.butQ -text $T(quit) -command {
+ destroy .wsearch
+ }
+ pack .wsearch.f1.but2 -side left
+ pack .wsearch.f1.but3 -side right
+ pack .wsearch.f2.but4 .wsearch.f2.but5 -side left
+ pack .wsearch.text1 .wsearch.but1 .wsearch.f1 .wsearch.butgb .wsearch.text2\
+.wsearch.f2 .wsearch.butQ
+ wm minsize . 1 1
+ bind .wsearch <<Help>> {Help tcltexed_hlp $T(wsearch-Help)}
+ bind .wsearch <Control-c> {
+ destroy .wsearch
+ }
+ wm resizable .wsearch 0 0
+ COLOR .wsearch
+ .wsearch.text1 configure -background White
+ .wsearch.text2 configure -background White
+ menu .wsearch.text1.pop_menu
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wsearch.text1 <<Cut>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Copy) -command "event generate wsearch.text1 <<Copy>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wsearch.text1 <<Paste>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wsearch.text1 <<Clear>>"
+ menu .wsearch.text2.pop_menu
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wsearch.text2 <<Cut>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Copy) -command "event generate .wsearch.text2 <<Copy>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wsearch.text2 <<Paste>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wsearch.text2 <<Clear>>"
+
+ bind .wsearch.text1 <Button-3> "tk_popup .wsearch.text1.pop_menu \[winfo pointerx .wsearch\] \[winfo pointery .wsearch\]"
+ bind .wsearch.text2 <Button-3> "tk_popup .wsearch.text2.pop_menu \[winfo pointerx .wsearch\] \[winfo pointery .wsearch\]"
+
+ } else {focus .wsearch}
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d110 2
+a111 1
+ undo_switch $FocusEditor.te.edit1 UndoEnd
+@
+
diff --git a/support/tcltexed/lib/RCS/spelling.tcl,v b/support/tcltexed/lib/RCS/spelling.tcl,v
new file mode 100644
index 0000000000..5bb42534e0
--- /dev/null
+++ b/support/tcltexed/lib/RCS/spelling.tcl,v
@@ -0,0 +1,229 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##############################################################
+proc spell {E mode spell_start spell_end} {
+ global T spell_not spell_array spell_yes spell_flag
+ if $spell_flag {
+ set spell_flag 0
+ switch $mode add {
+ if {[lsearch -exact [$E tag names insert] spell] != -1} {
+ set ksp1 [$E search -backwards -regexp -- $spell_yes insert {insert linestart}]
+ if {$ksp1 == ""} {set ksp1 "insert linestart"} else {append ksp1 +1c}
+ set ksp2 [$E search -forwards -regexp -- $spell_yes insert {insert lineend}]
+ if {$ksp2 == ""} {set ksp2 "insert lineend"}
+ set I [$E get $ksp1 $ksp2]
+ switch [tk_messageBox -parent $E -type okcancel -icon question -message $T(spell-1)$I$T(spell-2)] ok {
+ if ![info exists spell_array($I)] {
+ set spell_array($I) O
+ set I_s "spell + [string length $I] chars"
+ set I_s1 "spell + [expr [string length $I] +1 ] chars"
+ set nowindex [$E search -- $I $spell_start $spell_end]
+ while {$nowindex != ""} {
+ $E mark set spell $nowindex
+ set ksp1 [$E get spell-1c spell]
+ set ksp2 [$E get $I_s $I_s1]
+ if {[regexp -- $spell_yes $ksp1] != 0} {
+ if {[regexp -- $spell_yes $ksp2] != 0} {
+ $E tag remove spell spell $I_s
+ }
+ }
+ set nowindex [$E search -- $I spell+1c $spell_end]
+ }
+ }
+ } cancel {
+ switch [tk_messageBox -parent $E -type okcancel -icon question -message $T(spell-3)] ok {
+ $E mark set insert "insert wordstart"
+ InitSearch
+ .wsearch.text1 delete 0 end
+ .wsearch.text1 insert 0 $I
+ .wsearch.text2 delete 0 end
+ .wsearch.text2 insert 0 $I
+ }
+ }
+ }
+ } show {
+ $E tag remove spell $spell_start $spell_end
+ set last ""
+ set LISTE [lsort [split [$E get $spell_start $spell_end] $spell_yes]]
+ foreach I $LISTE {
+ if {[string compare $last $I]!=0} {
+ if {[regexp -- $spell_not $I] == 0} {
+ if {![info exists spell_array($I)]} {
+ if {$I != ""} {
+ set I_s "spell + [string length $I] chars"
+ set I_s1 "spell + [expr [string length $I] +1 ] chars"
+ set nowindex [$E search -- $I $spell_start $spell_end]
+ while {$nowindex != ""} {
+ $E mark set spell $nowindex
+ set ksp1 [$E get spell-1c spell]
+ set ksp2 [$E get $I_s $I_s1]
+ if {[regexp -- $spell_yes $ksp1] != 0} {
+ if {[regexp -- $spell_yes $ksp2] != 0} {
+ $E tag add spell spell $I_s
+ }
+ }
+ set nowindex [$E search -- $I spell+1c $spell_end]
+ }
+ }}}}
+ set last $I
+ }
+ }
+ set spell_flag 1
+}}
+proc spell_load {} {
+ global spellfile spellfileown language I_befehl spell_array
+ if [file exists $spellfileown$language] then {
+ set f [open $spellfileown$language r]
+ set LISTE [gets $f]
+ close $f
+ foreach I $LISTE {set spell_array($I) O}
+ }
+ if [file exists $spellfile$language] then {
+ set f [open $spellfile$language r]
+ set LISTE [gets $f]
+ close $f
+ foreach I $LISTE {set spell_array($I) G}
+ }
+}
+proc spell_save {} {
+ global spellfileown language spell_array
+ set LISTE ""
+ set L [array get spell_array]
+ foreach {I V} $L {if {$V == "O"} {lappend LISTE $I}}
+ set f [open $spellfileown$language w]
+ puts $f [lsort $LISTE]
+ close $f
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 95
+a95 95
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##############################################################
+proc spell {E mode spell_start spell_end} {
+ global T spell_not spell_array spell_yes spell_flag
+ if $spell_flag {
+ set spell_flag 0
+ switch $mode add {
+ if {[lsearch -exact [$E tag names insert] spell] != -1} {
+ set ksp1 [$E search -backwards -regexp -- $spell_yes insert {insert linestart}]
+ if {$ksp1 == ""} {set ksp1 "insert linestart"} else {append ksp1 +1c}
+ set ksp2 [$E search -forwards -regexp -- $spell_yes insert {insert lineend}]
+ if {$ksp2 == ""} {set ksp2 "insert lineend"}
+ set I [$E get $ksp1 $ksp2]
+ switch [tk_messageBox -parent $E -type okcancel -icon question -message $T(spell-1)$I$T(spell-2)] ok {
+ if ![info exists spell_array($I)] {
+ set spell_array($I) O
+ set I_s "spell + [string length $I] chars"
+ set I_s1 "spell + [expr [string length $I] +1 ] chars"
+ set nowindex [$E search -- $I $spell_start $spell_end]
+ while {$nowindex != ""} {
+ $E mark set spell $nowindex
+ set ksp1 [$E get spell-1c spell]
+ set ksp2 [$E get $I_s $I_s1]
+ if {[regexp -- $spell_yes $ksp1] != 0} {
+ if {[regexp -- $spell_yes $ksp2] != 0} {
+ $E tag remove spell spell $I_s
+ }
+ }
+ set nowindex [$E search -- $I spell+1c $spell_end]
+ }
+ }
+ } cancel {
+ switch [tk_messageBox -parent $E -type okcancel -icon question -message $T(spell-3)] ok {
+ $E mark set insert "insert wordstart"
+ InitSearch
+ .wsearch.text1 delete 0 end
+ .wsearch.text1 insert 0 $I
+ .wsearch.text2 delete 0 end
+ .wsearch.text2 insert 0 $I
+ }
+ }
+ }
+ } show {
+ $E tag remove spell $spell_start $spell_end
+ set last ""
+ set LISTE [lsort [split [$E get $spell_start $spell_end] $spell_yes]]
+ foreach I $LISTE {
+ if {[string compare $last $I]!=0} {
+ if {[regexp -- $spell_not $I] == 0} {
+ if {![info exists spell_array($I)]} {
+ if {$I != ""} {
+ set I_s "spell + [string length $I] chars"
+ set I_s1 "spell + [expr [string length $I] +1 ] chars"
+ set nowindex [$E search -- $I $spell_start $spell_end]
+ while {$nowindex != ""} {
+ $E mark set spell $nowindex
+ set ksp1 [$E get spell-1c spell]
+ set ksp2 [$E get $I_s $I_s1]
+ if {[regexp -- $spell_yes $ksp1] != 0} {
+ if {[regexp -- $spell_yes $ksp2] != 0} {
+ $E tag add spell spell $I_s
+ }
+ }
+ set nowindex [$E search -- $I spell+1c $spell_end]
+ }
+ }}}}
+ set last $I
+ }
+ }
+ set spell_flag 1
+}}
+proc spell_load {} {
+ global spellfile spellfileown language I_befehl spell_array
+ if [file exists $spellfileown$language] then {
+ set f [open $spellfileown$language r]
+ set LISTE [gets $f]
+ close $f
+ foreach I $LISTE {set spell_array($I) O}
+ }
+ if [file exists $spellfile$language] then {
+ set f [open $spellfile$language r]
+ set LISTE [gets $f]
+ close $f
+ foreach I $LISTE {set spell_array($I) G}
+ }
+}
+proc spell_save {} {
+ global spellfileown language spell_array
+ set LISTE ""
+ set L [array get spell_array]
+ foreach {I V} $L {if {$V == "O"} {lappend LISTE $I}}
+ set f [open $spellfileown$language w]
+ puts $f [lsort $LISTE]
+ close $f
+}
+@
+
diff --git a/support/tcltexed/lib/RCS/syntax.tcl,v b/support/tcltexed/lib/RCS/syntax.tcl,v
new file mode 100644
index 0000000000..c1f3396c56
--- /dev/null
+++ b/support/tcltexed/lib/RCS/syntax.tcl,v
@@ -0,0 +1,147 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+#######################################################
+# Farbige Syntax
+# ok !
+proc Syntax {E START END} {
+ global I_befehl syntax_flag
+ if $syntax_flag {
+ set NEW_syntax [$E search "\\" $START $END]
+ if {$NEW_syntax != ""} {
+ $E tag remove syntax_green $NEW_syntax $END
+ $E tag remove syntax_red $NEW_syntax $END
+ $E tag remove syntax_blue $NEW_syntax $END
+ set LISTE [array names I_befehl]
+ lappend LISTE "$" "\\" "\[" "\]" "\{" "\}" ";" "." "-"
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ if {[$E get syntax-1c syntax] != "\\"} {
+ set ksp [lsearch -exact $LISTE [$E get syntax+1c {syntax+1c wordend}]]
+ if {$ksp == -1} {
+ $E tag add syntax_red syntax {syntax+1c wordend}
+ } else {
+ $E tag add syntax_green syntax {syntax+1c wordend}
+ }
+ } elseif {[$E get syntax-2c syntax-1c] != "\\"} {
+ set ksp [lsearch -exact $LISTE [$E get syntax+1c {syntax+1c wordend}]]
+ if {$ksp == -1} {
+ $E tag add syntax_red syntax {syntax+1c wordend}
+ } else {
+ $E tag add syntax_green syntax {syntax+1c wordend}
+ }
+ }
+ set NEW_syntax [$E search "\\" syntax+1c $END]
+ }
+ set NEW_syntax [$E search "%" $START $END]
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ if {[$E get syntax-1c syntax] != "\\"} {
+ $E tag add syntax_blue syntax {syntax lineend}
+ $E tag remove syntax_red syntax {syntax lineend}
+ } else {
+ $E tag add syntax_green syntax-1c syntax+1c
+ $E tag remove syntax_red syntax-1c syntax+1c
+ }
+ set NEW_syntax [$E search "%" syntax+1c $END]
+ }
+
+ set NEW_syntax [$E search "$" $START $END]
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ $E tag add syntax_green syntax syntax+1c
+ $E tag remove syntax_red syntax syntax+1c
+ set NEW_syntax [$E search "$" syntax+1c $END]
+ }
+}}}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 54
+a54 54
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+#######################################################
+# Farbige Syntax
+# ok !
+proc Syntax {E START END} {
+ global I_befehl syntax_flag
+ if $syntax_flag {
+ set NEW_syntax [$E search "\\" $START $END]
+ if {$NEW_syntax != ""} {
+ $E tag remove syntax_green $NEW_syntax $END
+ $E tag remove syntax_red $NEW_syntax $END
+ $E tag remove syntax_blue $NEW_syntax $END
+ set LISTE [array names I_befehl]
+ lappend LISTE "$" "\\" "\[" "\]" "\{" "\}" ";" "." "-"
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ if {[$E get syntax-1c syntax] != "\\"} {
+ set ksp [lsearch -exact $LISTE [$E get syntax+1c {syntax+1c wordend}]]
+ if {$ksp == -1} {
+ $E tag add syntax_red syntax {syntax+1c wordend}
+ } else {
+ $E tag add syntax_green syntax {syntax+1c wordend}
+ }
+ } elseif {[$E get syntax-2c syntax-1c] != "\\"} {
+ set ksp [lsearch -exact $LISTE [$E get syntax+1c {syntax+1c wordend}]]
+ if {$ksp == -1} {
+ $E tag add syntax_red syntax {syntax+1c wordend}
+ } else {
+ $E tag add syntax_green syntax {syntax+1c wordend}
+ }
+ }
+ set NEW_syntax [$E search "\\" syntax+1c $END]
+ }
+ set NEW_syntax [$E search "%" $START $END]
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ if {[$E get syntax-1c syntax] != "\\"} {
+ $E tag add syntax_blue syntax {syntax lineend}
+ $E tag remove syntax_red syntax {syntax lineend}
+ } else {
+ $E tag add syntax_green syntax-1c syntax+1c
+ $E tag remove syntax_red syntax-1c syntax+1c
+ }
+ set NEW_syntax [$E search "%" syntax+1c $END]
+ }
+
+ set NEW_syntax [$E search "$" $START $END]
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ $E tag add syntax_green syntax syntax+1c
+ $E tag remove syntax_red syntax syntax+1c
+ set NEW_syntax [$E search "$" syntax+1c $END]
+ }
+}}}
+@
+
diff --git a/support/tcltexed/lib/RCS/translate0.tcl,v b/support/tcltexed/lib/RCS/translate0.tcl,v
new file mode 100644
index 0000000000..23af7fad67
--- /dev/null
+++ b/support/tcltexed/lib/RCS/translate0.tcl,v
@@ -0,0 +1,332 @@
+head 1.7;
+access;
+symbols;
+locks
+ mys:1.7; strict;
+comment @# @;
+
+
+1.7
+date 2001.01.23.21.07.16; author mys; state Exp;
+branches;
+next 1.6;
+
+1.6
+date 2000.11.26.18.20.03; author mys; state Exp;
+branches;
+next 1.5;
+
+1.5
+date 2000.10.12.15.03.31; author mys; state Exp;
+branches;
+next 1.4;
+
+1.4
+date 2000.08.15.23.03.59; author mys; state Exp;
+branches;
+next 1.3;
+
+1.3
+date 2000.08.15.22.34.13; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.7
+log
+@+bre
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# english version
+set LISTE [list \
+language "eng"\
+wsearch-titel Search\
+wsearch-Help Search\
+wsearch-case-sensitive "case sensitive"\
+wsearch-top Search\
+wsearch-down down\
+wsearch-up up\
+wsearch-replace replace\
+wsearch-all all\
+whelp-titel Help\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Version\
+wversion-text "TclTexEd Version $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Help\
+wTcltexed-titel Manual\
+wTcltexed-Help Help\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-keymap editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Message\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Goto"\
+wcurser-goto "Goto"\
+wcurser-gotocurser "Goto Curser Position"\
+BHTERROR1 "Error within sourcefile\nLaTeX-command all ready in use :\nSourcefile"\
+BHTERROR2 "\nName "\
+BHTERROR3 "\nCommand "\
+EDITORQUIT "Save changes ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS L.C\
+EDITOR-Syntax Syntax\
+pop_menu-Undo Undo\
+pop_menu-Cut Cut\
+pop_menu-Copy Copy\
+pop_menu-Paste Paste\
+pop_menu-Clear Clear\
+pop_menu-Spell Spell\
+pop_menu-Block Block\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Options\
+MW-Help Help\
+MW-New New...\
+MW-Load Open...\
+MW-Append Append...\
+MW-Save Save\
+MW-SaveAs "Save As..."\
+MW-Reload "Reload"\
+MW-Quit Quit\
+MW-Clear Clear\
+MW-Clear-msg "Delete everything ?"\
+MW-Spelling "Spelling"\
+MW-Spell "add word"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Search\
+MW-MyOwn "My Own"\
+MW-Version "Version Info"\
+MW-Tcltexed "Tcltexed Manual"\
+MW-LaTeX "LaTeX Commands"\
+MW-AutoKlammerZu AutoBrackets\
+MW-Syntax Syntax\
+MW-Packages "Packages/etc"\
+MW-language language\
+MW-size "font size"\
+MW-english english\
+MW-german german\
+MW-indonesia Indonesia\
+MW-bre brazilian\
+MW-language-msg "Now save the options\nand restart tcltexed\nto have an effect !"\
+MW-SaveOptions "Save Options"\
+MW-log "Trace log"\
+LB-breakline "break lines"\
+LB-all "all in file"\
+LB-section "all in section"\
+LB-line "all in line"\
+LB-unall "undo all in file"\
+LB-unsection "undo all in section"\
+LB-unline "undo all in line"\
+ALLQUIT1 "Save changes before leaving ?"\
+ALLQUIT2 "Save everything ?"\
+ALLQUIT3 "Save this file ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Add\n\""\
+spell-2 "\"\nto list of known words"\
+spell-3 "Correct yourself"\
+FileUpToDate "File on Disk has been modified,\nreload it before continue ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
+@
+
+
+1.6
+log
+@*** empty log message ***
+@
+text
+@d87 1
+d90 1
+@
+
+
+1.5
+log
+@*** empty log message ***
+@
+text
+@d64 1
+d108 1
+@
+
+
+1.4
+log
+@*** empty log message ***
+@
+text
+@d85 1
+@
+
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@d16 2
+d75 1
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d40 1
+d69 2
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 105
+a105 103
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# english version
+set LISTE [list \
+language "eng"\
+wsearch-titel Search\
+wsearch-Help Search\
+wsearch-case-sensitive "case sensitive"\
+wsearch-top Search\
+wsearch-down down\
+wsearch-up up\
+wsearch-replace replace\
+wsearch-all all\
+whelp-titel Help\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wlatex-titel LaTeX\
+wlatex-Help Help\
+wTcltexed-titel Manual\
+wTcltexed-Help Help\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-keymap editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Message\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Goto"\
+wcurser-goto "Goto"\
+wcurser-gotocurser "Goto Curser Position"\
+BHTERROR1 "Error within sourcefile\nLaTeX-command all ready in use :\nSourcefile"\
+BHTERROR2 "\nName "\
+BHTERROR3 "\nCommand "\
+EDITORQUIT "Save changes ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ZS L.C\
+EDITOR-Syntax Syntax\
+pop_menu-Undo Undo\
+pop_menu-Cut Cut\
+pop_menu-Copy Copy\
+pop_menu-Paste Paste\
+pop_menu-Clear Clear\
+pop_menu-Spell Spell\
+pop_menu-Block Block\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Options\
+MW-Help Help\
+MW-New New...\
+MW-Load Open...\
+MW-Append Append...\
+MW-Save Save\
+MW-SaveAs "Save As..."\
+MW-Quit Quit\
+MW-Clear Clear\
+MW-Clear-msg "Delete everything ?"\
+MW-Spelling "Spelling"\
+MW-Spell "add word"\
+MW-Search Search\
+MW-MyOwn "My Own"\
+MW-Tcltexed "Tcltexed Manual"\
+MW-LaTeX "LaTeX Commands"\
+MW-AutoKlammerZu AutoBrackets\
+MW-Syntax Syntax\
+MW-Packages "Packages/etc"\
+MW-language language\
+MW-size "font size"\
+MW-english english\
+MW-german german\
+MW-language-msg "Now save the options\nand restart tcltexed\nto have an effect !"\
+MW-SaveOptions "Save Options"\
+LB-breakline "break lines"\
+LB-all "all in file"\
+LB-section "all in section"\
+LB-line "all in line"\
+LB-unall "undo all in file"\
+LB-unsection "undo all in section"\
+LB-unline "undo all in line"\
+ALLQUIT1 "Save changes before leaving ?"\
+ALLQUIT2 "Save everything ?"\
+ALLQUIT3 "Save this file ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Add\n\""\
+spell-2 "\"\nto list of known words"\
+spell-3 "Correct yourself"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
+@
+
diff --git a/support/tcltexed/lib/RCS/translate1.tcl,v b/support/tcltexed/lib/RCS/translate1.tcl,v
new file mode 100644
index 0000000000..ab5704ca03
--- /dev/null
+++ b/support/tcltexed/lib/RCS/translate1.tcl,v
@@ -0,0 +1,361 @@
+head 1.8;
+access;
+symbols;
+locks
+ mys:1.8; strict;
+comment @# @;
+
+
+1.8
+date 2001.01.23.21.07.16; author mys; state Exp;
+branches;
+next 1.7;
+
+1.7
+date 2000.11.26.18.20.03; author mys; state Exp;
+branches;
+next 1.6;
+
+1.6
+date 2000.10.12.15.03.31; author mys; state Exp;
+branches;
+next 1.5;
+
+1.5
+date 2000.08.15.23.03.59; author mys; state Exp;
+branches;
+next 1.4;
+
+1.4
+date 2000.08.15.22.34.13; author mys; state Exp;
+branches;
+next 1.3;
+
+1.3
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.19.09.28; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.8
+log
+@+bre
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# german version
+set LISTE [list \
+language "ger"\
+wsearch-titel Search\
+wsearch-Help Search\
+wsearch-case-sensitive "case sensitive"\
+wsearch-top Search\
+wsearch-down down\
+wsearch-up up\
+wsearch-replace replace\
+wsearch-all all\
+whelp-titel Help\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Version\
+wversion-text "TclTexEd Version $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Help\
+wTcltexed-titel Manual\
+wTcltexed-Help Help\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-Tastenbelegung editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Message\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Goto"\
+wcurser-goto "Goto"\
+wcurser-gotocurser "Goto Curser Position"\
+BHTERROR1 "Fehler in Quelldatei\nLaTeX-Befehl schon belegt :\nQuelldatei"\
+BHTERROR2 "\nName "\
+BHTERROR3 "\nBefehl "\
+EDITORQUIT "Save changes ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS Z.S\
+EDITOR-Syntax Syntax\
+pop_menu-Undo Undo\
+pop_menu-Cut Cut\
+pop_menu-Copy Copy\
+pop_menu-Paste Paste\
+pop_menu-Clear Clear\
+pop_menu-Spell Test\
+pop_menu-Block Block\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Options\
+MW-Mathematik Mathematik\
+MW-Allgemein Allgemein\
+MW-Help Help\
+MW-New New...\
+MW-Load Open...\
+MW-Append Append...\
+MW-Save Save\
+MW-SaveAs "Save As..."\
+MW-Reload "Reload"\
+MW-Quit Quit\
+MW-Clear Clear\
+MW-Clear-msg "Alles Löschen ?"\
+MW-Spelling Rechtschreibung\
+MW-Spell "registriere Wort"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Search\
+MW-MyOwn "My Own"\
+MW-Version "Version Info"\
+MW-Tcltexed "Tcltexed Manual"\
+MW-LaTeX "LaTeX Commands"\
+MW-AutoKlammerZu AutoKlammerZu\
+MW-Syntax Syntax\
+MW-Packages "Packages/etc"\
+MW-language Sprache\
+MW-size Schriftgrösse\
+MW-english Englisch\
+MW-german Deutsch\
+MW-indonesia Indonesia\
+MW-bre brazilian\
+MW-language-msg "Nun speicher die eingestellten Optionen\nund starte tcltexed erneut !"\
+MW-SaveOptions "Save Options"\
+MW-log "Trace log"\
+LB-breakline "Zeilenumbruch"\
+LB-all "im gesamten Text"\
+LB-section "einem Absatz"\
+LB-line "einer Zeile"\
+LB-unall "Umkehr für den ganzen Text"\
+LB-unsection "für einen Absatz"\
+LB-unline "für eine Zeile"\
+ALLQUIT1 "Vor dem Beenden Veränderungen speichern ?"\
+ALLQUIT2 "Alles sichern ?"\
+ALLQUIT3 "Diese Datei speichern ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Soll\n\""\
+spell-2 "\"\nals richtig geschrieben\n registriert werden"\
+spell-3 "Korrektur"\
+FileUpToDate "Die Datei wurde extern modifiziert,\nsoll sie neu geladen werden ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
+@
+
+
+1.7
+log
+@*** empty log message ***
+@
+text
+@d89 1
+d92 1
+d112 1
+a112 1
+FileUpToDate "Die Datei wurde extern modifiziert,\nsoll sie neu geladen werden ?"\
+@
+
+
+1.6
+log
+@*** empty log message ***
+@
+text
+@d66 1
+d110 1
+@
+
+
+1.5
+log
+@*** empty log message ***
+@
+text
+@d87 1
+@
+
+
+1.4
+log
+@*** empty log message ***
+@
+text
+@d16 2
+d77 1
+@
+
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@d40 1
+d71 2
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d1 107
+a107 105
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# german version
+set LISTE [list \
+language "ger"\
+wsearch-titel Search\
+wsearch-Help Search\
+wsearch-case-sensitive "case sensitive"\
+wsearch-top Search\
+wsearch-down down\
+wsearch-up up\
+wsearch-replace replace\
+wsearch-all all\
+whelp-titel Help\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wlatex-titel LaTeX\
+wlatex-Help Help\
+wTcltexed-titel Manual\
+wTcltexed-Help Help\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-Tastenbelegung editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Message\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Goto"\
+wcurser-goto "Goto"\
+wcurser-gotocurser "Goto Curser Position"\
+BHTERROR1 "Fehler in Quelldatei\nLaTeX-Befehl schon belegt :\nQuelldatei"\
+BHTERROR2 "\nName "\
+BHTERROR3 "\nBefehl "\
+EDITORQUIT "Save changes ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ZS Z.S\
+EDITOR-Syntax Syntax\
+pop_menu-Undo Undo\
+pop_menu-Cut Cut\
+pop_menu-Copy Copy\
+pop_menu-Paste Paste\
+pop_menu-Clear Clear\
+pop_menu-Spell Test\
+pop_menu-Block Block\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Options\
+MW-Mathematik Mathematik\
+MW-Allgemein Allgemein\
+MW-Help Help\
+MW-New New...\
+MW-Load Open...\
+MW-Append Append...\
+MW-Save Save\
+MW-SaveAs "Save As..."\
+MW-Quit Quit\
+MW-Clear Clear\
+MW-Clear-msg "Alles Löschen ?"\
+MW-Spelling Rechtschreibung\
+MW-Spell "registriere Wort"\
+MW-Search Search\
+MW-MyOwn "My Own"\
+MW-Tcltexed "Tcltexed Manual"\
+MW-LaTeX "LaTeX Commands"\
+MW-AutoKlammerZu AutoKlammerZu\
+MW-Syntax Syntax\
+MW-Packages "Packages/etc"\
+MW-language Sprache\
+MW-size Schriftgrösse\
+MW-english Englisch\
+MW-german Deutsch\
+MW-language-msg "Nun speicher die eingestellten Optionen\nund starte tcltexed erneut !"\
+MW-SaveOptions "Save Options"\
+LB-breakline "Zeilenumbruch"\
+LB-all "im gesamten Text"\
+LB-section "einem Absatz"\
+LB-line "einer Zeile"\
+LB-unall "Umkehr für den ganzen Text"\
+LB-unsection "für einen Absatz"\
+LB-unline "für eine Zeile"\
+ALLQUIT1 "Vor dem Beenden Veränderungen speichern ?"\
+ALLQUIT2 "Alles sichern ?"\
+ALLQUIT3 "Diese Datei speichern ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Soll\n\""\
+spell-2 "\"\nals richtig geschrieben\n registriert werden"\
+spell-3 "Korrektur"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d81 7
+a87 7
+LB-breakline "break lines"\
+LB-all "all in file"\
+LB-section "all in section"\
+LB-line "all in line"\
+LB-unall "undo all in file"\
+LB-unsection "undo all in section"\
+LB-unline "undo all in line"\
+@
+
diff --git a/support/tcltexed/lib/RCS/translate2.tcl,v b/support/tcltexed/lib/RCS/translate2.tcl,v
new file mode 100644
index 0000000000..88f55d6dd1
--- /dev/null
+++ b/support/tcltexed/lib/RCS/translate2.tcl,v
@@ -0,0 +1,170 @@
+head 1.3;
+access;
+symbols;
+locks
+ mys:1.3; strict;
+comment @# @;
+
+
+1.3
+date 2001.01.23.21.07.16; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.11.26.18.20.03; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.03.31; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.3
+log
+@+bre
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# Bahasa Indonesia version
+set LISTE [list \
+language "ind"\
+wsearch-titel Cari\
+wsearch-Help Cari\
+wsearch-case-sensitive "Perhatikan Huruf Kapital"\
+wsearch-top Cari\
+wsearch-down Turun\
+wsearch-up Atas\
+wsearch-replace Ganti\
+wsearch-all Semua\
+whelp-titel Bantuan\
+whelp-no-source "Tidak ada file \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Versi\
+wversion-text "TclTexEd Versi $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Bantuan\
+wTcltexed-titel Manual\
+wTcltexed-Help Bantuan\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-keymap editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Pesan\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Ke"\
+wcurser-goto "Ke"\
+wcurser-gotocurser "Posisi Kursor"\
+BHTERROR1 "Kesalahan sourcefile\nLaTeX-command semuanya sudah digunakan :\nSourcefile"\
+BHTERROR2 "\nNama "\
+BHTERROR3 "\nPerintah "\
+EDITORQUIT "Simpan perubahan ?"\
+EDITOR-latex LaTeX\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS L.C\
+EDITOR-Syntax Sintaksis\
+pop_menu-Undo Batalkan\
+pop_menu-Cut Potong\
+pop_menu-Copy Salin\
+pop_menu-Paste Paste\
+pop_menu-Clear Hapus\
+pop_menu-Spell Eja\
+pop_menu-Block Blok\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Option\
+MW-Help Bantuan\
+MW-New Baru...\
+MW-Load Buka...\
+MW-Append Tambahkan...\
+MW-Save Simpan\
+MW-SaveAs "Simpan sebagai..."\
+MW-Reload "Muat lagi"\
+MW-Quit Keluar\
+MW-Clear Clear\
+MW-Clear-msg "Hapus semuanya ?"\
+MW-Spelling "Ejaan"\
+MW-Spell "tambahkan kata"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Cari\
+MW-MyOwn "My Own"\
+MW-Version "Info Versi"\
+MW-Tcltexed "Petunjuk Tcltexed"\
+MW-LaTeX "Daftar Perintah"\
+MW-AutoKlammerZu "Tanda Kurung Otomatis"\
+MW-Syntax Sintaksis\
+MW-Packages "Paket/dsb"\
+MW-language Bahasa\
+MW-size "Ukuran Font"\
+MW-german Jerman\
+MW-english Inggris\
+MW-indonesia Indonesia\
+MW-bre brazilian\
+MW-language-msg "Simpan Option \ndan jalankan lagi tcltexed\nuntuk mengaktifkan perubahan !"\
+MW-SaveOptions "Simpan Option"\
+MW-log "Trace log"\
+LB-breakline "Pemenggalan Baris"\
+LB-all "di semua file"\
+LB-section "di semua section"\
+LB-line "di semua baris"\
+LB-unall "dibatalkan di semua file"\
+LB-unsection "dibatalkan di semua section"\
+LB-unline "dibatalkan di semua baris"\
+ALLQUIT1 "Simpan perubahan sebelum keluar ?"\
+ALLQUIT2 "Simpan semuanya ?"\
+ALLQUIT3 "Simpan file ini ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Tambahkan\n\""\
+spell-2 "\"\nke dalam daftar kata"\
+spell-3 "Koreksi"\
+FileUpToDate "File di disk telah dimodifikasi,\nmuat lagi sebelum dilanjutkan ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d87 1
+d90 1
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d64 1
+d108 1
+@
diff --git a/support/tcltexed/lib/RCS/translate3.tcl,v b/support/tcltexed/lib/RCS/translate3.tcl,v
new file mode 100644
index 0000000000..c414af84e6
--- /dev/null
+++ b/support/tcltexed/lib/RCS/translate3.tcl,v
@@ -0,0 +1,143 @@
+head 1.1;
+access;
+symbols;
+locks
+ mys:1.1; strict;
+comment @# @;
+
+
+1.1
+date 2001.01.23.21.07.16; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@bre
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@# Was translated from the original file writen by:
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# Marcelo Belentani de Bianchi - under terms of GPL
+# Brazilian version
+set LISTE [list \
+language "bre"\
+wsearch-titel Busca\
+wsearch-Help Busca\
+wsearch-case-sensitive "caso sensitivo"\
+wsearch-top Busca\
+wsearch-down Abaixo\
+wsearch-up Acima\
+wsearch-replace Substituir\
+wsearch-all Todas\
+whelp-titel Ajuda\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Versão\
+wversion-text "TclTexEd Versão $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Ajuda\
+wTcltexed-titel Manual\
+wTcltexed-Help Ajuda\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-keymap editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Mensagem\
+wmyown-titel "Meus Próprios"\
+wmyown-Help "Meu"\
+wcurser-titel "Vai para"\
+wcurser-goto "Vai"\
+wcurser-gotocurser "Vai para a linha"\
+BHTERROR1 "Error within sourcefile\nLaTeX-command all ready in use :\nSourcefile"\
+BHTERROR2 "\nNome "\
+BHTERROR3 "\nCommando "\
+EDITORQUIT "Salvar alterações ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS L.C\
+EDITOR-Syntax Sintaxe\
+pop_menu-Undo Desfazer\
+pop_menu-Cut Recortar\
+pop_menu-Copy Copiar\
+pop_menu-Paste Colar\
+pop_menu-Clear Apagar\
+pop_menu-Spell "Correção Ortográfica"\
+pop_menu-Block Bloco\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File Arquivo\
+MW-Edit Editar\
+MW-Options Opções\
+MW-Help Ajuda\
+MW-New Novo...\
+MW-Load Abrir...\
+MW-Append Adicionar...\
+MW-Save Salvar\
+MW-SaveAs "Salvar como..."\
+MW-Reload "Reload"\
+MW-Quit Sair\
+MW-Clear Apagar\
+MW-Clear-msg "Apagar tudo ?"\
+MW-Spelling "Correção Ortográfica"\
+MW-Spell "Adicionar palavra"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Procurar\
+MW-MyOwn "Meus"\
+MW-Version "Versão"\
+MW-Tcltexed "Manual do Tcltexed"\
+MW-LaTeX "Comandos do LaTeX"\
+MW-AutoKlammerZu "parênteses automáticos"\
+MW-Syntax Sintaxe\
+MW-Packages "Pacotes/etc"\
+MW-language Idioma\
+MW-size "Tamanho da fonte"\
+MW-english english\
+MW-bre brazilian\
+MW-german german\
+MW-indonesia indonesia\
+MW-language-msg "Não esqueça de salvar opções"\
+MW-SaveOptions "Salvar Opções"\
+MW-log "Ativar Logs"\
+LB-breakline "quebrar linhas"\
+LB-all "em todo o arquivo"\
+LB-section "em toda a seção"\
+LB-line "em toda linha"\
+LB-unall "desfazer em todo arquivo"\
+LB-unsection "desfazer tudo na seção"\
+LB-unline "desfazer tudo na linha"\
+ALLQUIT1 "Salvar antes de sair ?"\
+ALLQUIT2 "Salvar tudo ?"\
+ALLQUIT3 "Salvar este arquivo ?"\
+Save Salvar\
+SaveAs "Salvar como"\
+more mais\
+cancel Cancelar\
+quit Sair\
+Quit Sair\
+spell-1 "Adicionar\n\""\
+spell-2 "\"\npara lista de palavras conhecidas"\
+spell-3 "Corrija você mesmo"\
+FileUpToDate "File on Disk has been modified,\nreload it before continue ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
+@
diff --git a/support/tcltexed/lib/RCS/umlaut.tcl,v b/support/tcltexed/lib/RCS/umlaut.tcl,v
new file mode 100644
index 0000000000..564d2f6414
--- /dev/null
+++ b/support/tcltexed/lib/RCS/umlaut.tcl,v
@@ -0,0 +1,130 @@
+head 1.3;
+access;
+symbols;
+locks
+ mys:1.3; strict;
+comment @# @;
+
+
+1.3
+date 2000.08.15.22.34.13; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.04.11.19.09.28; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 2000 - Martin Strauss - under terms of GPL
+##############################################################
+# umlaut routine
+#
+proc umlaut LIST {
+ global FocusEditorFlag
+ global FocusEditor
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ foreach {FIND REPLACE} $LIST {
+ set FIND_L [string length "$FIND"]
+ if {$FIND != ""} then {
+ set modifiedflag 0
+ undo_switch $FocusEditor.te.edit1 Save
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set nowindex 1.0
+ while {$nowindex != ""} {
+ $FocusEditor.te.edit1 mark set insert $nowindex
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ $FocusEditor.te.edit1 delete insert "insert + $FIND_L chars"
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ set modifiedflag 1
+ }
+ # Sucht
+ set nowindex [$FocusEditor.te.edit1 search -- $FIND insert end]
+ }
+ $FocusEditor.te.edit1 mark set insert $startindex
+ if $modifiedflag {
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ }
+ }
+}
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d22 1
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d1 36
+a36 40
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##############################################################
+# umlaut routine
+#
+proc umlaut LIST {
+ global T
+ global FocusEditorFlag
+ global FocusEditor
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ foreach {FIND REPLACE} $LIST {
+ set FIND_L [string length "$FIND"]
+ if {$FIND != ""} then {
+ set modifiedflag 0
+ undo_switch $FocusEditor.te.edit1 Save
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set nowindex 1.0
+ while {$nowindex != ""} {
+ $FocusEditor.te.edit1 mark set insert $nowindex
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ undo_switch $FocusEditor.te.edit1 "{insert \"insert + $FIND_L chars\"} Delete UndoBegin"
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ undo_switch $FocusEditor.te.edit1 UndoEnd
+ set modifiedflag 1
+ }
+ # Sucht
+ set nowindex [$FocusEditor.te.edit1 search -- $FIND insert end]
+ }
+ $FocusEditor.te.edit1 mark set insert $startindex
+ if $modifiedflag {
+ undo_switch $FocusEditor.te.edit1 Save
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ }
+ }
+}
+@
diff --git a/support/tcltexed/lib/RCS/undo.tcl,v b/support/tcltexed/lib/RCS/undo.tcl,v
new file mode 100644
index 0000000000..955a3da97f
--- /dev/null
+++ b/support/tcltexed/lib/RCS/undo.tcl,v
@@ -0,0 +1,311 @@
+head 1.3;
+access;
+symbols;
+locks
+ mys:1.3; strict;
+comment @# @;
+
+
+1.3
+date 2000.04.11.21.41.24; author mys; state Exp;
+branches;
+next 1.2;
+
+1.2
+date 2000.04.11.19.09.28; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 99.11.09.21.32.05; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+1.3
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##################################################################
+# Undo function
+proc proc_undo {E} {
+ global UndoArray
+ event generate $E <<proc_undo>>
+ if {[llength $UndoArray($E)] != 0} then {
+ set liste [lindex $UndoArray($E) end]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ switch [lindex $liste 0] insert {
+ set ksp [$E index "insert linestart"]
+ $E insert [lindex $liste 1] "[lindex $liste 2]"
+ Syntax $E $ksp "insert lineend"
+ } delete {
+ $E delete [lindex $liste 1] [lindex $liste 2]
+ } UndoMul {
+ proc_undo $E
+ proc_undo $E
+ }
+ }
+}
+##########################
+# gliedert tag ein
+proc undo_tag E {
+ global UndoArray
+
+ set sel_flag 0
+ if {[$E tag nextrange undo 1.0 end] != ""} then {
+ set flag 0
+ foreach {A O} [$E tag ranges undo] {
+ if $flag {
+ if {[$E index $KO+1c] != $A} {
+ lappend UndoArray($E) "delete $KA $KO"
+ set KA $A
+ }
+ } {
+ set flag 1
+ set KA $A
+ }
+ set KO $O
+ }
+ lappend UndoArray($E) "delete $KA $KO"
+ $E tag remove undo 1.0 end
+ }
+}
+#########################
+# max laenge des undo Speichers
+proc undo_maxlength E {
+ global UndoArray max_undo
+ while {[string length $UndoArray($E)] > $max_undo} {
+ if {[llength $UndoArray($E)] != 0} then {
+ set UndoArray($E) [lrange $UndoArray($E) 1 end]
+ } else break
+ }
+}
+##########################
+#
+proc undo_switch {E L} {
+ global UndoArray undo_switch_sel_flag
+ foreach i $L {
+ switch $i UndoMax {
+ undo_maxlength $E
+
+ } Save {
+ # Text sammeln und sichern
+ undo_tag $E
+
+ } Delete {
+ # Delete speichern
+ lappend UndoArray($E) "insert [$E index [lindex $LIST 0]] [backslash [$E get [lindex $LIST 0] [lindex $LIST 1]]]"
+ $E delete [lindex $LIST 0] [lindex $LIST 1]
+
+ } UndoBegin {
+ # Textmarke setzen
+ $E mark set UndoBegin insert
+ $E mark gravity UndoBegin left
+
+ } UndoEnd {
+ # Texttag setzen
+ $E tag add undo UndoBegin insert
+
+ } SelSave {
+ if {[$E tag nextrange sel 1.0 end] != ""} then {
+ undo_tag $E
+ lappend UndoArray($E) "insert [$E index sel.first] [backslash [$E get sel.first sel.last]]"
+ set undo_switch_sel_flag 1
+ } {set undo_switch_sel_flag 0}
+ } SelMul {
+ if $undo_switch_sel_flag {
+ undo_tag $E
+ lappend UndoArray($E) UndoMul
+ $E mark set UndoBegin insert
+ $E mark gravity UndoBegin left
+ }
+ } BeginMark {
+ $E tag add undo BeginMark-1c BeginMark
+ } UndoMul {
+ lappend UndoArray($E) UndoMul
+ } DeleteKey {
+ if {$undo_switch_sel_flag == 0} then {
+ set ksp ""
+ if {[lindex $UndoArray($E) end] != ""} then {
+ if {[lindex [lindex $UndoArray($E) end] 0] == "insert"} then {
+ if {[lindex [lindex $UndoArray($E) end] 1] == [$E index insert]} then {
+ set ksp [lindex [lindex $UndoArray($E) end] 2]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ }
+ }
+ }
+ lappend UndoArray($E) "insert [$E index insert] [backslash $ksp][backslash [$E get insert]]"
+ }
+ } BackSpaceKey {
+ if {$undo_switch_sel_flag == 0} then {
+ set ksp ""
+ if {[lindex $UndoArray($E) end] != ""} then {
+ if {[lindex [lindex $UndoArray($E) end] 0] == "insert"} then {
+ if {[lindex [lindex $UndoArray($E) end] 1] == [$E index insert]} then {
+ set ksp [lindex [lindex $UndoArray($E) end] 2]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ }
+ }
+ }
+ lappend UndoArray($E) "insert [$E index insert-1c] [backslash [$E get insert-1c]][backslash $ksp]"
+ }
+ } default {
+ set LIST $i
+ }
+ }
+}
+@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@d1 129
+a129 129
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##################################################################
+# Undo function
+proc proc_undo {E} {
+ global UndoArray
+ event generate $E <<proc_undo>>
+ if {[llength $UndoArray($E)] != 0} then {
+ set liste [lindex $UndoArray($E) end]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ switch [lindex $liste 0] insert {
+ set ksp [$E index "insert linestart"]
+ $E insert [lindex $liste 1] "[lindex $liste 2]"
+ Syntax $E $ksp "insert lineend"
+ } delete {
+ $E delete [lindex $liste 1] [lindex $liste 2]
+ } UndoMul {
+ proc_undo $E
+ proc_undo $E
+ }
+ }
+}
+##########################
+# gliedert tag ein
+proc undo_tag E {
+ global UndoArray
+
+ set sel_flag 0
+ if {[$E tag nextrange undo 1.0 end] != ""} then {
+ set flag 0
+ foreach {A O} [$E tag ranges undo] {
+ if $flag {
+ if {[$E index $KO+1c] != $A} {
+ lappend UndoArray($E) "delete $KA $KO"
+ set KA $A
+ }
+ } {
+ set flag 1
+ set KA $A
+ }
+ set KO $O
+ }
+ lappend UndoArray($E) "delete $KA $KO"
+ $E tag remove undo 1.0 end
+ }
+}
+#########################
+# max laenge des undo Speichers
+proc undo_maxlength E {
+ global UndoArray max_undo
+ while {[string length $UndoArray($E)] > $max_undo} {
+ if {[llength $UndoArray($E)] != 0} then {
+ set UndoArray($E) [lrange $UndoArray($E) 1 end]
+ } else break
+ }
+}
+##########################
+#
+proc undo_switch {E L} {
+ global UndoArray undo_switch_sel_flag
+ foreach i $L {
+ switch $i UndoMax {
+ undo_maxlength $E
+
+ } Save {
+ # Text sammeln und sichern
+ undo_tag $E
+
+ } Delete {
+ # Delete speichern
+ lappend UndoArray($E) "insert [$E index [lindex $LIST 0]] [backslash [$E get [lindex $LIST 0] [lindex $LIST 1]]]"
+ $E delete [lindex $LIST 0] [lindex $LIST 1]
+
+ } UndoBegin {
+ # Textmarke setzen
+ $E mark set UndoBegin insert
+ $E mark gravity UndoBegin left
+
+ } UndoEnd {
+ # Texttag setzen
+ $E tag add undo UndoBegin insert
+
+ } SelSave {
+ if {[$E tag nextrange sel 1.0 end] != ""} then {
+ undo_tag $E
+ lappend UndoArray($E) "insert [$E index sel.first] [backslash [$E get sel.first sel.last]]"
+ set undo_switch_sel_flag 1
+ } {set undo_switch_sel_flag 0}
+ } SelMul {
+ if $undo_switch_sel_flag {
+ undo_tag $E
+ lappend UndoArray($E) UndoMul
+ $E mark set UndoBegin insert
+ $E mark gravity UndoBegin left
+ }
+ } BeginMark {
+ $E tag add undo BeginMark-1c BeginMark
+ } UndoMul {
+ lappend UndoArray($E) UndoMul
+ } DeleteKey {
+ if {$undo_switch_sel_flag == 0} then {
+ set ksp ""
+ if {[lindex $UndoArray($E) end] != ""} then {
+ if {[lindex [lindex $UndoArray($E) end] 0] == "insert"} then {
+ if {[lindex [lindex $UndoArray($E) end] 1] == [$E index insert]} then {
+ set ksp [lindex [lindex $UndoArray($E) end] 2]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ }
+ }
+ }
+ lappend UndoArray($E) "insert [$E index insert] [backslash $ksp][backslash [$E get insert]]"
+ }
+ } BackSpaceKey {
+ if {$undo_switch_sel_flag == 0} then {
+ set ksp ""
+ if {[lindex $UndoArray($E) end] != ""} then {
+ if {[lindex [lindex $UndoArray($E) end] 0] == "insert"} then {
+ if {[lindex [lindex $UndoArray($E) end] 1] == [$E index insert]} then {
+ set ksp [lindex [lindex $UndoArray($E) end] 2]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ }
+ }
+ }
+ lappend UndoArray($E) "insert [$E index insert-1c] [backslash [$E get insert-1c]][backslash $ksp]"
+ }
+ } default {
+ set LIST $i
+ }
+ }
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d26 1
+@
+
diff --git a/support/tcltexed/lib/arg.tcl b/support/tcltexed/lib/arg.tcl
new file mode 100644
index 0000000000..e2015828d4
--- /dev/null
+++ b/support/tcltexed/lib/arg.tcl
@@ -0,0 +1,79 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# set several default values
+set LISTE [list basepath libpath bhtpath hlppath txtpath gifpath etcpath menupath\
+inifile\
+latex_exec makeindex_exec xdvi_exec dvips_exec ghostview_exec\
+language readme_flag COLOR_flag\
+syntax_flag KlammerFlag wsearch_gb\
+SyntaxColorGreen SyntaxColorRed SyntaxColorBlue\
+BlockColor ErgaenzungGray erg2_max\
+wlatex_max wTcltexed_max\
+myown_max max_undo]
+set LFAline 0
+for {set i 0} {$i < $argc} {incr i} {
+ if {[string index [lindex $argv $i] 0] == "-"} then {
+ switch -- [lindex $argv $i] -variable {
+ puts "Possible variables are :\n"
+ foreach ii $LISTE {
+ eval "puts $ii=\$$ii"
+ }
+ puts "\nFor further discription of the meaning of the variables"
+ puts "read the first part of the script tcltexed.tcl."
+ exit
+ } --version {
+ puts "tcltexed - version $Tcltexed_Version"
+ exit
+ } -ind {
+ set language 2
+ } -bre {
+ set language 3
+ } -ger {
+ set language 1
+ } -eng {
+ set language 0
+ } -v {
+ if {[expr $i+2] < $argc} {
+ if {[lsearch $LISTE [lindex $argv [expr $i + 1]]] != -1} {
+ set [lindex $argv [expr $i + 1]] [lindex $argv [expr $i + 2]]
+ }
+ incr i 2
+ } else {
+ puts "more arguments are needed by -v"
+ exit
+ }
+ } -new {
+ after 1500 NewFile
+ } default {
+ puts "Usage : tcltexed.tcl -- \[options\] \[+line] file1 \[+line] file2 ...\n"
+ puts "A LaTeX-Editor based on Tcl/Tk"
+ puts "Possible optiones are :"
+ puts " -- ..end of the arguments for wish"
+ puts " -? ..this help"
+ puts " --version ..version of tcltexed"
+ puts " -new ..open new file"
+ puts " -v \"variable\" \"value\" ..set \"variable\" to a \"value\""
+ puts " -variable ..list all possible variables"
+ puts " and it's default values"
+ puts " -eng ..set language to english (0)"
+ puts " -ger ..set language to german (1)"
+ puts " -ind ..set language to indonesia (2)"
+ puts " -bre ..set language to portuguese (3)"
+ exit
+ }
+ } else {
+ if [string match "+*" [lindex $argv $i]] {
+ set LFAline [lindex $argv $i]
+ } else {
+ after 1000 LFA [lindex $argv $i] $LFAline
+ set LFAline 0
+ }
+ }
+}
+proc LFA {filename line} {
+ if {[info proc LoadFileArg] != ""} {
+ LoadFileArg $filename $line
+ } else {
+ after 500 LFA $filename $line
+ }
+}
diff --git a/support/tcltexed/lib/backslash.tcl b/support/tcltexed/lib/backslash.tcl
new file mode 100644
index 0000000000..032db6ade3
--- /dev/null
+++ b/support/tcltexed/lib/backslash.tcl
@@ -0,0 +1,67 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+####################################################################
+# Setzt backslash's fuer eine Stringuebergabe ein
+proc backslash {s} {
+ set begin_s ""
+ set end_s $s
+ set pos 0
+ while {$pos != 10000} {
+ set key ""
+ set pos "10000"
+ set kpos [string first "\"" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\""
+ }}
+ set kpos [string first "\\" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\\"
+ }}
+ set kpos [string first "\n" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\n"
+ }}
+ set kpos [string first "\t" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\t"
+ }}
+ set kpos [string first "\[" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\["
+ }}
+
+ set kpos [string first "\]" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\]"
+ }}
+ set kpos [string first "\{" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\{"
+ }}
+
+ set kpos [string first "\}" $end_s]
+ if {$pos > $kpos} then {
+ if {$kpos != -1} then {
+ set pos $kpos
+ set key "\\\}"
+ }}
+
+ if {$pos != 10000} then {
+ set begin_s $begin_s[string range $end_s 0 [expr $pos - 1]]$key
+ set end_s "[string range $end_s [expr $pos + 1] end]"
+ } else {return "$begin_s$end_s"}
+}}
+
diff --git a/support/tcltexed/lib/bindings.tcl b/support/tcltexed/lib/bindings.tcl
new file mode 100644
index 0000000000..e4284f1fea
--- /dev/null
+++ b/support/tcltexed/lib/bindings.tcl
@@ -0,0 +1,273 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+ ##############################################################################
+ # Umdefinition des Defaultverhaltens fuer Text-variablen
+ bind Text <Control-k> {}
+ bind Text <Control-b> {}
+ # Block Anfang
+ bind Text <Control-k><b> {
+ set BlockBeginFlag 1
+ %W mark set BlockBegin insert
+ if {[string compare %W $BlockEditor] == 0} then {
+ if $BlockEndFlag then {
+ %W tag remove BlockTag 1.0 end
+ %W tag add BlockTag BlockBegin BlockEnd
+ }} else {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ $BlockEditor tag remove BlockTag 1.0 end
+ }
+ set BlockEndFlag 0
+ set BlockEditor %W
+ }
+ }
+ # Block Ende
+ bind Text <Control-k><k> {
+ set BlockEndFlag 1
+ %W mark set BlockEnd insert
+ %W mark gravity BlockEnd left
+ if {[string compare %W $BlockEditor] == 0} then {
+ if $BlockBeginFlag then {
+ %W tag remove BlockTag 1.0 end
+ %W tag add BlockTag BlockBegin BlockEnd
+ }} else {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ $Blockeditor tag remove BlockTag 1.0 end
+ }
+ set BlockBeginFlag 0
+ set BlockEditor %W
+ }
+ }
+ # Block kopieren
+ bind Text <Control-k><c> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ set ksp [%W index {insert linestart}]
+ undo_switch %W {Save UndoBegin}
+ %W insert insert [$BlockEditor get BlockBegin BlockEnd]
+ undo_switch %W {UndoEnd Save UndoMax}
+ Syntax %W $ksp "insert lineend"
+ }
+ }
+ # Block verschieben
+ bind Text <Control-k><v> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ set ksp [%W index "insert linestart"]
+ undo_switch %W {Save UndoBegin}
+ %W insert insert [$BlockEditor get BlockBegin BlockEnd]
+ undo_switch %W {UndoEnd Save}
+ undo_switch $BlockEditor {{BlockBegin BlockEnd} Delete UndoMax}
+ if {[string compare %W $BlockEditor] == 0} then {
+ undo_switch %W UndoMul
+ }
+ Syntax %W $ksp "insert lineend"
+ Syntax $BlockEditor "BlockBegin linestart" "BlockEnd lineend"
+ }
+ }
+ bind Text <Control-k><m> {
+ event generate %W <Control-k>
+ event generate %W <v>
+ }
+ # Block loeschen
+ bind Text <Control-k><y> {
+ if {$BlockBeginFlag && $BlockEndFlag} then {
+ undo_switch $BlockEditor {Save {BlockBegin BlockEnd} Delete UndoMax}
+ }
+ }
+ # Block auskommentieren
+proc AusKomm {E A B} {
+ set i [lindex "[split [$E index $A] .]" 0]
+ set i_max [lindex "[split [$E index $B] .]" 0]
+ incr i_max
+ set ksp $i.0
+ while {$i < $i_max} {
+ if [expr [string compare [$E get "$i.0 linestart" "$i.0 linestart+1c"] "%"] != 0] {
+ $E insert "$i.0 linestart" "%"
+ }
+ incr i
+ }
+ Syntax $E $ksp $i_max.0
+ event generate $E <<Modified>>
+}
+ # Block auskommentieren rueckgaengig
+proc AusKommRueck {E A B} {
+ set i [lindex "[split [$E index $A] .]" 0]
+ set i_max [lindex "[split [$E index $B] .]" 0]
+ incr i_max
+ set ksp $i.0
+ while {$i < $i_max} {
+ if [expr [string compare [$E get "$i.0 linestart" "$i.0 linestart+1c"] "%"] == 0] {
+ $E delete "$i.0 linestart" "$i.0 linestart+1c"
+ }
+ incr i
+ }
+ Syntax $E $ksp $i_max.0
+ event generate $E <<Modified>>
+}
+
+switch $tcl_platform(platform) windows {
+# Auf jedenfall fuer Windows !!!
+ bind Text <Control-k><%> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKomm %W BlockBegin BlockEnd
+ }
+ }
+} unix {
+# fuer linux ???
+ bind Text <Control-k><Shift-5> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKomm %W BlockBegin BlockEnd
+ }
+ }
+}
+ bind Text <Control-k><space> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ AusKommRueck %W BlockBegin BlockEnd
+ }
+ }
+ # Block in Clipboard kopieren
+ bind Text <Control-k><g> {
+ if { $BlockBeginFlag && $BlockEndFlag} then {
+ clipboard clear -displayof %W
+ catch {clipboard append -displayof %W [$BlockEditor get BlockBegin BlockEnd]}
+ }
+ }
+ # aus Clipboard kopieren
+ bind Text <Control-k><p> {
+ set ksp [%W index {insert linestart}]
+ undo_switch %W {Save UndoBegin}
+ tk_textPaste %W
+ undo_switch %W {UndoEnd Save UndoMax}
+ Syntax %W $ksp "insert lineend"
+ }
+ bind Text <Control-k><h> {break}
+
+ bind Text <Insert> {
+ undo_switch %W {Save UndoBegin}
+ catch {tkTextInsert %W [selection get -displayof %W]}
+ undo_switch %W {UndoEnd Save}
+ }
+
+ # Block eliminieren
+ bind Text <Destroy> {
+ set BlockBeginFlag 0
+ set BlockEndFlag 0
+ if {[lsearch [array names ModifiedArray] %W] != -1} {
+ unset ModifiedArray(%W)
+ }
+ if {[lsearch [array names UndoArray] %W] != -1} {
+ unset UndoArray(%W)
+ }
+ if {[lsearch [array names FilenameArray] %W] != -1} {
+ unset FilenameArray(%W)
+ }
+ }
+
+ # Zeile aus Text loeschen
+ bind Text <Control-y> {
+ undo_switch %W {{"insert linestart" "insert lineend+1c"} Delete}
+ }
+ bind Text <Control-d> {
+ if $FocusEditorFlag {
+ focus $FocusEditor.te.edit1
+ set ksp [$FocusEditor.te.edit1 get {insert wordstart-1c} {insert wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set Text [$FocusEditor.te.edit1 get {insert wordstart} {insert wordend}]
+ if {[llength [array names I_befehl $Text]] != 1} {set Text "\\section"} else {set Text "\\$Text"}
+ } {set Text "\\section"}
+ set ksp [$FocusEditor.te.edit1 search -- $Text {insert wordend} end]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert "$ksp + 1 chars"
+ $FocusEditor.te.edit1 see insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ bind Text <Control-u> {
+ if $FocusEditorFlag {
+ focus $FocusEditor.te.edit1
+ set ksp [$FocusEditor.te.edit1 get {insert wordstart-1c} {insert wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set Text [$FocusEditor.te.edit1 get {insert wordstart} {insert wordend}]
+ if {[llength [array names I_befehl $Text]] != 1} {set Text "\\section"} else {set Text "\\$Text"}
+ } {set Text "\\section"}
+ set ksp [$FocusEditor.te.edit1 search -backwards -- $Text {insert wordstart-1c} 1.0]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert "$ksp + 1 chars"
+ $FocusEditor.te.edit1 see insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ bind Text <Control-b> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 section
+ }
+ }
+ bind Text <Control-B> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 unsection
+ }
+ }
+ bind Text <Alt-b> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 line
+ }
+ }
+ bind Text <Alt-B> {
+ if $FocusEditorFlag {
+ Line_breaking_switch $FocusEditor.te.edit1 unline
+ }
+ }
+
+ # Was passiert wenn man ein Fenster vernichtet
+ bind Toplevel <Destroy> {
+ # Fenster war Master dann Master loeschen
+ if $MasterFlag then {if {[string compare $Master %W] == 0} then {set MasterFlag 0}}
+ if $FocusEditorFlag then {if {[string compare $FocusEditor %W] == 0} then {set FocusEditorFlag 0}}
+ }
+
+
+bind Text <KeyPress> {
+ if $erg_flag(%W) then {
+ if {[%W get insert insert+1c] == "%A"} then {
+ %W mark set insert insert+1c
+ continue
+ } else {
+ erg_proc %W
+ }
+ }
+ if {"%A" != "{}"} then {
+ undo_switch %W {SelSave UndoBegin}
+ tkTextInsert %W %A
+ undo_switch %W {UndoEnd SelMul}
+
+ if $BeginFlag(%W) then {
+ %W insert BeginMark %A
+ undo_switch %W BeginMark
+ }
+ event generate %W <<ERG>>
+ event generate %W <<Modified>>
+ if $KlammerFlag then {
+ switch -- "%A" "(" {
+ tkTextInsert %W ")"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ } "\{" {
+ if {[string compare [%W get insert-2c] "\\"] == 0} {
+ tkTextInsert %W "\\\}"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-2c
+ } {
+ tkTextInsert %W "\}"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ }
+ } "\[" {
+ if {[string compare [%W get insert-2c] "\\"] == 0} {
+ tkTextInsert %W "\\\]"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-2c
+ } {
+ tkTextInsert %W "\]"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+ }
+ } "$" {
+ tkTextInsert %W "$"
+ undo_switch %W UndoEnd
+ tkTextSetCursor %W insert-1c
+}}}}
diff --git a/support/tcltexed/lib/color.tcl b/support/tcltexed/lib/color.tcl
new file mode 100644
index 0000000000..291d84fc9a
--- /dev/null
+++ b/support/tcltexed/lib/color.tcl
@@ -0,0 +1,56 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################
+# defaultcolors
+switch $tcl_platform(platform) unix {
+ tk_setPalette\
+activebackground "#ececec"\
+activeforeground Black\
+background "#d9d9d9"\
+foreground Black\
+selectcolor White\
+disabledforeground "#a3a3a3"\
+highlightbackground "#d9d9d9"\
+highlightcolor Black
+} windows {
+tk_setPalette\
+activebackground "#ececec"\
+activeforeground Black\
+background "#c0c0c0"\
+foreground Black\
+selectcolor White\
+disabledforeground "#a3a3a3"\
+highlightbackground "#d9d9d9"\
+highlightcolor Black
+}
+################################################################
+# if colors make trouble
+set COLOR_list [list\
+"-activebackground"\
+"-activeforeground"\
+"-background"\
+"-disabledforeground"\
+"-foreground"\
+"-highlightbackground"\
+"-highlightcolor"\
+"-insertbackground"\
+"-selectbackground"\
+"-selectcolor"\
+"-selectforeground"\
+"-troughcolor"\
+]
+
+proc COLOR_LOOP {E} {
+ global COLOR_list
+ foreach i [$E configure] {
+ if {[lsearch -exact $COLOR_list [lindex $i 0]] != -1} {
+ $E configure [lindex $i 0] [lindex $i 3]
+ }
+ }
+ foreach i [winfo children $E] {COLOR_LOOP $i}
+}
+proc COLOR {E} {
+ global COLOR_flag
+ if $COLOR_flag {
+ COLOR_LOOP $E
+ }
+}
diff --git a/support/tcltexed/lib/complition.tcl b/support/tcltexed/lib/complition.tcl
new file mode 100644
index 0000000000..79d1670a45
--- /dev/null
+++ b/support/tcltexed/lib/complition.tcl
@@ -0,0 +1,90 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################
+# auto complition
+# ok !
+proc ergaenzung {E} {
+ global I_befehl I_back I_state
+ global BeginFlag
+ global erg_flag erg_back
+ set ksp [$E get {insert-1c wordstart-1c} {insert-1c wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set TEXT [$E get {insert-1c wordstart} insert]
+ set LISTE [array names I_state "$TEXT*"]
+ if {1 == [llength $LISTE]} then {
+ set sp1 [string length $LISTE]
+ set sp2 [string length $TEXT]
+ if {$sp1 > $sp2} then {
+ erg_insert $E $LISTE [$E index insert]
+ } elseif {$sp1 == $sp2} {
+ Syntax $E {insert-1c wordstart-1c} insert
+}}}}
+#############################################
+# complition per mouse : the start
+# ok !
+menu .pop_menu -tearoff 0
+COLOR .pop_menu
+proc ergaenzung2 {E} {
+ global I_state
+ set ksp [$E get {insert-1c wordstart-1c} {insert-1c wordstart}]
+ if ![string compare "\\" $ksp] then {
+ set TEXT [$E get {insert-1c wordstart} insert]
+ set sp1 [string length $TEXT]
+ set LISTE [lsort [array names I_state "$TEXT*"]]
+ if {0 < [llength $LISTE]} then {
+ erg2_weiter $E $LISTE $sp1 [$E index insert]
+}}}
+##############################################
+# complition per mouse : construction
+proc erg2_weiter {E LISTE laenge index} {
+ global erg2_max T
+ .pop_menu delete 0 end
+ .pop_menu add command -label $T(cancel)
+ if {[llength $LISTE] > $erg2_max} {
+ .pop_menu add command -label $T(more) -command "erg2_weiter $E {[lrange $LISTE $erg2_max end]} $laenge $index"
+ }
+ .pop_menu add separator
+ foreach i [lrange $LISTE 0 [expr $erg2_max - 1]] {
+ if {$laenge == [string length $i]} {
+ .pop_menu add command -label $i
+ } {
+ .pop_menu add command -label $i -command "erg_insert $E $i $index"
+ }
+ }
+ tk_popup .pop_menu [expr [winfo rootx $E] + [lindex [$E bbox insert] 0]] [expr [winfo rooty $E] + [lindex [$E bbox insert] 1]]
+}
+###################################
+# functions for complitions in general
+# ok ?
+proc erg_insert {E T index} {
+ global I_befehl I_back
+ global BeginFlag
+ global erg_flag erg_back
+
+ $E mark set insert $index
+ set erg_flag($E) 1
+
+ undo_switch $E {Save {{insert-1c wordstart-1c} insert} Delete UndoBegin}
+ $E mark set erg_begin insert
+ $E mark gravity erg_begin left
+ $E insert insert $I_befehl($T)
+ $E mark set erg_end insert
+ undo_switch $E {UndoEnd Save UndoMax UndoMul}
+
+ switch $T begin {
+ $E mark set BeginMark insert-2c
+ set BeginFlag($E) 1
+ }
+ $E tag add erg_tag erg_begin erg_end
+ $E mark set insert $index
+ set erg_back($E) $I_back($T)
+}
+proc erg_proc {E} {
+ global erg_flag
+ global erg_back
+ if $erg_flag($E) then {
+ Syntax $E erg_begin erg_end
+ $E mark set insert "erg_end - $erg_back($E) chars"
+ $E tag remove erg_tag 1.0 end
+ set erg_flag($E) 0
+ }
+}
diff --git a/support/tcltexed/lib/events.tcl b/support/tcltexed/lib/events.tcl
new file mode 100644
index 0000000000..f70f5f5c5c
--- /dev/null
+++ b/support/tcltexed/lib/events.tcl
@@ -0,0 +1,13 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# virtuelle events
+event add <<Modified>> <Return> <Control-i> <Delete> <BackSpace> <Control-slash> <Control-backslash> <Insert> <Control-d> <Control-k><c> <Control-k><m> <Control-k><y> <Control-o> <Meta-d> <Meta-BackSpace> <Meta-Delete> <Control-h> <Button-2>
+
+event add <<Help>> <F1> <Control-k><h>
+event add <<HelpHelp>> <Control-F1>
+
+event add <<BeginFlag>> <Control-KeyPress> <Meta-KeyPress> <Alt-KeyPress> <Button> <Return> <Delete> <BackSpace> <Insert> <Tab> <Shift-Tab> <Control-Tab> <Control-Shift-Tab> <Control-i> <Select> <Control-Shift-space> <Shift-Select> <Control-slash> <Control-backslash> <Control-space>
+
+event add <<proc_undo>> <Up> <Left> <Right> <Down> <Shift-Up> <Shift-Left> <Shift-Right> <Shift-Down> <Control-Up> <Control-Left> <Control-Right> <Control-Down> <Shift-Control-Up> <Shift-Control-Left> <Shift-Control-Right> <Shift-Control-Down> <Prior> <Shift-Prior> <Next> <Shift-Next> <Control-Prior> <Control-Next> <Home> <Shift-Home> <End> <Shift-End> <Control-Home> <Control-Shift-Home> <Control-End> <Control-Shift-End>
+
+event add <<Position>> <Button> <KeyPress>
diff --git a/support/tcltexed/lib/file.tcl b/support/tcltexed/lib/file.tcl
new file mode 100644
index 0000000000..c683b5c057
--- /dev/null
+++ b/support/tcltexed/lib/file.tcl
@@ -0,0 +1,193 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+proc NewFile {} {
+ global FocusEditor
+ global FilenameArray UpToDateArray
+ global EDITORNUMMER
+ global etcpath
+ set E [EDITOR]
+ $E.te.edit1 delete 1.0 end
+ set FilenameArray($E) ""
+ set UpToDateArray($E) 0
+ wm title $E "no name $EDITORNUMMER"
+ if [file exists "$etcpath/default.tex"] then {
+ set f [open "$etcpath/default.tex" r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ } else {
+ $E.te.edit1 insert end "\\documentclass\[12pt,a4paper\]{report}\n"
+# $E.te.edit1 insert end "\\usepackage\[german\]{babel}\n"
+# $E.te.edit1 insert end "\\usepackage{umlaut}\n"
+ $E.te.edit1 insert end "\\begin{document}\n\n"
+ $E.te.edit1 insert end "\\end{document}\n"
+ }
+ Syntax $E.te.edit1 1.0 end
+ set ksp [$E.te.edit1 search "\\begin{document}" 1.0]
+ $E.te.edit1 mark set insert "$ksp + 1 lines"
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+# after 250 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+}
+proc NewFileArg {} {
+ global FocusEditor
+ global FilenameArray UpToDateArray
+ global EDITORNUMMER
+ global etcpath
+ set E [EDITOR]
+ $E.te.edit1 delete 1.0 end
+ set FilenameArray($E) ""
+ set UpToDateArray($E) 0
+ wm title $E "no name $EDITORNUMMER"
+ if [file exists "$etcpath/default.tex"] then {
+ set f [open "$etcpath/default.tex" r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ } else {
+ $E.te.edit1 insert end "\\documentclass\[12pt,a4paper\]{report}\n"
+# $E.te.edit1 insert end "\\usepackage\[german\]{babel}\n"
+# $E.te.edit1 insert end "\\usepackage{umlaut}\n"
+ $E.te.edit1 insert end "\\begin{document}\n\n"
+ $E.te.edit1 insert end "\\end{document}\n"
+ }
+ Syntax $E.te.edit1 1.0 end
+ set ksp [$E.te.edit1 search "\\begin{document}" 1.0]
+ $E.te.edit1 mark set insert "$ksp + 1 lines"
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+# after 250 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+}
+
+
+proc LoadFile {} {
+ global FilenameArray ModifiedArray directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getOpenFile -filetypes $types -initialdir $directory]
+ LoadFileArg $filename 0
+}
+
+proc LoadFileArg {filename line} {
+ global FilenameArray UpToDateArray ModifiedArray directory
+ if {[file exists $filename]} then {
+ set directory [file dirname $filename]
+ set E [EDITOR]
+ set f [open $filename r]
+ set x [read $f]
+ $E.te.edit1 insert 1.0 $x
+ set t [close $f]
+ #Set global filename
+ set FilenameArray($E) $filename
+ set UpToDateArray($E) [file mtime "$filename"]
+ wm title $E "$filename"
+ Syntax $E.te.edit1 1.0 end
+ $E.te.edit1 mark set insert "1.0 + $line lines"
+ event generate $E.te.edit1 <<Modified>>
+ update
+ event generate $E.te.edit1 <<Position_tail>> -when tail
+ update
+ focus $E.te.edit1
+# after 500 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+# after 500 "focus $E.te.edit1"
+ }
+}
+proc ReLoadFileArg {E filename} {
+ global FilenameArray UpToDateArray ModifiedArray directory
+ if {[file exists $filename]} then {
+ set directory [file dirname $filename]
+ set f [open $filename r]
+ set x [read $f]
+ set pos [$E.te.edit1 index insert]
+ $E.te.edit1 delete 1.0 end
+ $E.te.edit1 insert 1.0 $x
+ $E.te.edit1 mark set insert $pos
+ set t [close $f]
+ #Set global filename
+ set FilenameArray($E) $filename
+ set UpToDateArray($E) [file mtime "$filename"]
+ Syntax $E.te.edit1 1.0 end
+ focus $E.te.edit1
+# after 500 "event generate $E.te.edit1 <<Position_tail>> -when tail"
+# after 500 "focus $E.te.edit1"
+ }
+}
+
+proc AppendFile {E} {
+ global directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getOpenFile -filetypes $types -initialdir $directory]
+ if {$filename != ""} then {
+ set directory [file dirname $filename]
+ set f [open $filename r]
+ set x [read $f]
+ #Append file at end of text
+ $E.te.edit1 insert insert $x
+ #Close source file
+ set t [close $f]
+ Syntax $E.te.edit1 1.0 end
+ event generate $E.te.edit1 <<Modified>>
+}}
+
+proc UpToDateFile {E} {
+ global FilenameArray UpToDateArray T
+ if [file exists $FilenameArray($E)] {
+ if { [file mtime $FilenameArray($E)] > $UpToDateArray($E) } {
+ switch [tk_messageBox -parent $E -icon warning -message $T(FileUpToDate) -default yes -type yesno] yes {
+ ReLoadFileArg $E $FilenameArray($E)
+ } no {
+ set UpToDateArray($E) [file mtime $FilenameArray($E)]
+ }
+ }
+ }
+}
+
+proc SaveFile {E} {
+ global FilenameArray UpToDateArray ModifiedArray
+ if {$FilenameArray($E)!= ""} then {
+ UpToDateFile $E
+ if { ![file exists $FilenameArray($E)] || [file mtime $FilenameArray($E)] <= $UpToDateArray($E) } {
+ set f [open $FilenameArray($E) w]
+ #Get text to save
+ set x [$E.te.edit1 get 1.0 end]
+ #Save it
+ puts $f $x
+ #and close file
+ set t [close $f]
+ set ModifiedArray($E.te.edit1) 0
+ set ModifiedArrayl($E.te.edit1) [string length $x]
+ set UpToDateArray($E) [file mtime $FilenameArray($E)]
+ }
+ } else {SaveAsFile $E}
+}
+
+proc SaveAsFile {E} {
+ global FilenameArray UpToDateArray ModifiedArray directory
+ set types {
+ {{latex Files} {.tex} }
+ {{plain Text} {.txt}}
+ {{All Files} *}
+ }
+ set filename [tk_getSaveFile -filetypes $types -initialfile $FilenameArray($E) -defaultextension ".tex" -initialdir $directory]
+ if {$filename != ""} then {
+ set directory [file dirname $filename]
+ set f [open $filename w]
+ #Get text to save
+ set x [$E.te.edit1 get 1.0 end]
+ #Save it
+ puts $f $x
+ #and close file
+ set t [close $f]
+ set FilenameArray($E) $filename
+ wm title $E "$FilenameArray($E)"
+ set ModifiedArray($E.te.edit1) 0
+ set UpToDateArray($E) [file mtime $FilenameArray($E)]
+}}
+
+
diff --git a/support/tcltexed/lib/help.tcl b/support/tcltexed/lib/help.tcl
new file mode 100644
index 0000000000..623c034b0d
--- /dev/null
+++ b/support/tcltexed/lib/help.tcl
@@ -0,0 +1,185 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+#####################################################
+# show help
+# ok !
+proc Help {NAME} {
+ global T HLP
+ global hlppath hlptxt hlpfile
+ if [info exists HLP($NAME)] {
+
+ # Liste vorhandener Hilfen
+ set ii 0
+ foreach i $HLP($NAME) {
+ if [string match "$T(language)*" $i] {
+ incr ii
+ lappend liste $i "$T(language) $ii"
+ }
+ }
+ foreach i $HLP($NAME) {
+ if ![string match "$T(language)*" $i] {
+ incr ii
+ lappend liste $i "[lindex [split $i "/"] 0] $ii"
+ }
+ }
+ HLP_open $NAME [lindex $liste 0] [lindex $liste 1]
+ if [winfo exists .whelp] {
+ .whelp.f2.mb.m delete 0 end
+ foreach {i t} $liste {
+ .whelp.f2.mb.m add command -label $t -command "HLP_open $NAME $i {$t}"
+ }
+ .whelp.f2.e delete 0 end
+ .whelp.f2.e insert 0 $NAME
+ }
+ }
+ HLP_gif $NAME
+}
+###############################################
+# help from inside a text
+# ok !
+proc HelpTo {NAME} {
+ global T HLP
+ set flag 1
+ set key [$NAME get insert insert+1c]
+ if ![string compare $key "\\"] then {
+ set strt insert+1c
+ } else {
+ set strt insert
+ }
+ set ID [array startsearch HLP]
+ while {[array anymore HLP $ID]} {
+ set elm [array nextelement HLP $ID]
+ set velm [$NAME get $strt insert+[expr [string length $elm] + 1]c]
+ if ![string compare $elm $velm] then {
+ Help $elm
+ set flag 0
+ }
+ }
+ array donesearch HLP $ID
+ if $flag then {
+ Help $T(Helpto-Help)
+ }
+}
+##########################
+##########################
+proc HLP_load {} {
+ global hlppath HLP
+ if [file exists $hlppath/index] {
+ set f [open $hlppath/index r]
+ set L [read $f]
+ close $f
+ array set HLP $L
+ } {set HLP(ERROR) ERROR}
+}
+proc HLP_open {NAME FILE Text} {
+ global T hlppath hlptxt hlpfile
+ if ![winfo exists .whelp] {set hlpfile ""}
+ if {[string compare $FILE $hlpfile] != 0} {
+ if [file exists "$hlppath/$FILE"] then {
+ set f [open "$hlppath/$FILE" r]
+ HLP_plainwindow
+ .whelp.f2.mb configure -text $Text
+ .whelp.f.l configure -state normal
+ .whelp.f.l delete 1.0 end
+ .whelp.f.l insert 1.0 [read $f]
+ .whelp.f.l configure -state disabled
+ close $f
+ set hlpfile $FILE
+ set pos [.whelp.f.l search "::" 1.0 end]
+ while {$pos!=""} {
+ .whelp.f.l tag add invisible $pos "$pos lineend"
+ set pos [.whelp.f.l search "::" "$pos+1c" end]
+ }
+ set ksp "::"
+ set ksp [.whelp.f.l search -- $ksp$NAME$ksp pos]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ }
+ focus .whelp
+ } {
+ if [winfo exists .whelp] then {
+ .whelp.f.l configure -state normal
+ .whelp.f.l delete 1.0 end
+ eval ".whelp.f.l insert 1.0 \"$T(whelp-no-source)\""
+ .whelp.f.l configure -state disabled
+ }
+ }
+ }
+}
+proc HLP_plainwindow {} {
+ global T
+ if ![winfo exists .whelp] then {
+ toplevel .whelp
+ wm title .whelp $T(whelp-titel)
+
+ frame .whelp.f
+
+ scrollbar .whelp.f.vscroll -relief sunken -command {.whelp.f.l yview}
+ text .whelp.f.l -yscroll {.whelp.f.vscroll set}
+ pack .whelp.f.vscroll -side right -fill y
+ pack .whelp.f.l -expand yes -fill both
+ frame .whelp.f2
+ menubutton .whelp.f2.mb -menu .whelp.f2.mb.m
+ menu .whelp.f2.mb.m
+ button .whelp.f2.butup -text up -command {
+ .whelp.f.l tag remove show 1.0 end
+ set ksp [.whelp.f.l search -backwards -- [.whelp.f2.e get] pos]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ .whelp.f.l tag add show pos "pos wordend"
+ }
+ }
+ button .whelp.f2.butdown -text down -command {
+ .whelp.f.l tag remove show 1.0 end
+ set ksp [.whelp.f.l search -- [.whelp.f2.e get] pos+1c]
+ if {$ksp != ""} then {
+ .whelp.f.l mark set pos $ksp
+ .whelp.f.l see pos
+ .whelp.f.l tag add show pos "pos wordend"
+ }
+ }
+ entry .whelp.f2.e
+ button .whelp.f2.butQ -text $T(quit) -command {
+ destroy .whelp
+ }
+
+ pack .whelp.f -expand yes -fill y
+ pack .whelp.f2.mb .whelp.f2.butup .whelp.f2.butdown .whelp.f2.e .whelp.f2.butQ -side left
+ pack .whelp.f2
+ COLOR .whelp
+ .whelp.f.l tag add invisible 1.0 1.0
+ .whelp.f.l tag add show 1.0 1.0
+ .whelp.f.l tag configure invisible -foreground [.whelp.f.l cget -bg]
+ .whelp.f.l tag configure show -foreground Red
+ .whelp.f.l tag raise invisible
+ .whelp.f.l mark set pos 1.0
+ }
+}
+proc HLP_gif Name {
+ global gifpath I_txt
+ if [info exists I_txt($Name)] {
+ if [file exists "$gifpath/$I_txt($Name).gif"] then {
+ if ![winfo exists .whelpgif] then {
+ toplevel .whelpgif
+
+ button .whelpgif.butQ -image [Bild $Name] -command {
+ destroy .whelpgif
+ }
+ pack .whelpgif.butQ
+ COLOR .whelpgif
+ } else {
+ .whelpgif.butQ configure -image [Bild $Name]
+ focus .whelpgif
+ }
+ } {
+ if [winfo exists .whelpgif] then {
+ .whelpgif.butQ configure -image MasterBildSlaveOff
+ }
+ }
+ } {
+ if [winfo exists .whelpgif] then {
+ .whelpgif.butQ configure -image MasterBildSlaveOff
+ }
+ }
+} \ No newline at end of file
diff --git a/support/tcltexed/lib/helpmanual.tcl b/support/tcltexed/lib/helpmanual.tcl
new file mode 100644
index 0000000000..77d4028a79
--- /dev/null
+++ b/support/tcltexed/lib/helpmanual.tcl
@@ -0,0 +1,210 @@
+# Copyright (C) 2000 - Martin Strauss - under terms of GPL
+##################################################################################
+# version info
+proc InitVersion {} {
+ global T Tcltexed_Version
+ if ![winfo exists .wversion] then {
+ toplevel .wversion
+ wm title .wversion $T(wversion-titel)
+ label .wversion.version -text $T(wversion-text)
+ pack .wversion.version
+ }
+}
+##################################################################################
+# latex - command - listing
+proc InitListen {} {
+ global I_befehl I_back T wlatex_max
+ if ![winfo exists .wlatex] then {
+ toplevel .wlatex
+ wm title .wlatex $T(wlatex-titel)
+ frame .wlatex.e
+ scrollbar .wlatex.e.scroll -command {.wlatex.e.list yview}
+ pack .wlatex.e.scroll -side right -fill y
+ listbox .wlatex.e.list -yscroll ".wlatex.e.scroll set" -relief sunken -width 20 -height $wlatex_max -setgrid yes
+ pack .wlatex.e.list -fill both -expand yes
+ set LISTE [lsort [array names I_befehl]]
+ foreach i $LISTE {.wlatex.e.list insert end $i}
+ button .wlatex.butQ -text $T(quit) -command {destroy .wlatex}
+ pack .wlatex.e .wlatex.butQ -fill x
+ wm minsize . 1 1
+ bind .wlatex <<Help>> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ Help [selection get]
+ } else {
+ Help $T(wlatex-Help)
+ }
+ }
+ bind .wlatex <Return> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ Help [selection get]
+ focus .wlatex
+ if {$ksp < [.wlatex.e.list size]} then {incr ksp}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Double-Button-1> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ Help [selection get]
+ focus .wlatex
+ }
+ }
+ bind .wlatex <Double-Button-3> {
+ if {[.wlatex.e.list curselection] != ""} then {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ switch_Undo $FocusEditor.te.edit1 UndoBegin
+ $FocusEditor.te.edit1 insert insert $I_befehl([selection get])
+ switch_Undo $FocusEditor.te.edit1 UndoEnd
+ switch_undo $FocusEditor.te.edit1 insert
+ $FocusEditor.te.edit1 mark set insert "insert - $I_back([selection get]) chars"
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ }
+ }
+ bind .wlatex <Prior> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > $wlatex_max} then {set ksp [expr $ksp - $wlatex_max]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Next> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [expr $wlatex_max + [.wlatex.e.list size]]} then {set ksp [expr $ksp + $wlatex_max]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Up> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > 0} then {set ksp [expr $ksp - 1]}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Down> {
+ set ksp [.wlatex.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [.wlatex.e.list size]} then {incr ksp}
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <KeyPress> {
+ set ksp [lsearch -exact $ABC %A]
+ if {$ksp != -1} {
+ set ksp [lindex $wlatex_LISTE $ksp]
+ .wlatex.e.list selection clear 0 end
+ .wlatex.e.list selection set $ksp $ksp
+ .wlatex.e.list see $ksp
+ }
+ }
+ bind .wlatex <Control-c> {
+ destroy .wlatex
+ }
+ COLOR .wlatex
+ } else {focus .wlatex}
+}
+##################################################################################
+# Tcltexed - manual - listing
+proc InitTcltexed {} {
+ global Tcltexed_help T wTcltexed_max
+ if ![winfo exists .wTcltexed] then {
+ toplevel .wTcltexed
+ wm title .wTcltexed $T(wTcltexed-titel)
+ frame .wTcltexed.e
+ scrollbar .wTcltexed.e.scroll -command {.wTcltexed.e.list yview}
+ pack .wTcltexed.e.scroll -side right -fill y
+ listbox .wTcltexed.e.list -yscroll ".wTcltexed.e.scroll set" -relief sunken -width 20 -height $wTcltexed_max -setgrid yes
+ pack .wTcltexed.e.list -fill both -expand yes
+ foreach {i f} $T(wTcltexed-manual) {
+ .wTcltexed.e.list insert end $i
+ set Tcltexed_help($i) $f
+ }
+ button .wTcltexed.butQ -text $T(quit) -command {destroy .wTcltexed}
+ pack .wTcltexed.e .wTcltexed.butQ -fill x
+ wm minsize . 1 1
+
+ bind .wTcltexed <<Help>> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ } else {
+ Help $T(wTcltexed-Help)
+ }
+ }
+ bind .wTcltexed <Return> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ if {$ksp < [.wTcltexed.e.list size]} then {incr ksp}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Double-Button-1> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ }
+ }
+ bind .wTcltexed <Double-Button-3> {
+ if {[.wTcltexed.e.list curselection] != ""} then {
+ Help $Tcltexed_help([selection get])
+ focus .wTcltexed
+ }
+ }
+ bind .wTcltexed <Prior> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > $wTcltexed_max} then {set ksp [expr $ksp - $wTcltexed_max]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Next> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [expr $wTcltexed_max + [.wTcltexed.e.list size]]} then {set ksp [expr $ksp + $wTcltexed_max]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Up> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp > 0} then {set ksp [expr $ksp - 1]}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Down> {
+ set ksp [.wTcltexed.e.list curselection]
+ if {$ksp != ""} then {
+ if {$ksp < [.wTcltexed.e.list size]} then {incr ksp}
+ .wTcltexed.e.list selection clear 0 end
+ .wTcltexed.e.list selection set $ksp $ksp
+ .wTcltexed.e.list see $ksp
+ }
+ }
+ bind .wTcltexed <Control-c> {
+ destroy .wTcltexed
+ }
+ COLOR .wTcltexed
+ } else {focus .wTcltexed}
+}
+
diff --git a/support/tcltexed/lib/linebreak.tcl b/support/tcltexed/lib/linebreak.tcl
new file mode 100644
index 0000000000..99f4801cb9
--- /dev/null
+++ b/support/tcltexed/lib/linebreak.tcl
@@ -0,0 +1,69 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+###############################################################################
+# line breaking
+proc Line_breaking {E START END} {
+ global line_breaking_chars
+ set imax [lindex [split [$E index "$START.0 lineend"] "."] 1]
+ set spaces ""
+ for {set i 0} {$i<=$imax} {incr i} {
+ if {[string compare [$E get $START.$i] " "] == 0} {set spaces "$spaces "} {break}
+ }
+ for {set i $START} {$i<=$END} {incr i} {
+ if {[lindex [split [$E index "$i.0 lineend"] "."] 1] > 80} {
+ set pos [$E search -backwards -- " " $i.$line_breaking_chars "$i.0"]
+ if {[lindex [split $pos "."] 0] == $i} {
+ if {[string compare [$E get "$pos + 1c"] "\n"] !=0} {
+ $E insert "$pos + 1c" "\n$spaces"
+ incr END
+ }
+ }
+ }
+ }
+}
+proc Line_unbreaking {E START END} {
+ for {set i $START} {$i<=$END} {incr i} {
+ if {[string compare [$E get "$i.0 lineend - 1c"] " "] ==0} {
+ if {[string length [$E get "$i.0+1l" "$i.1+1l"]] !=0} {
+ while {[string compare [$E get "$i.0 lineend+1c"] " "] == 0} {
+ $E delete "$i.0 lineend+1c"
+ }
+ $E delete "$i.0 lineend"
+ incr i -1
+ incr END -1
+ }
+ }
+ }
+}
+proc Line_breaking_switch {E KEY} {
+ switch $KEY all {
+ Line_breaking_switch $E unall
+ Line_breaking $E 1 [lindex [split [$E index end] "."] 0]
+ } unall {
+ Line_unbreaking $E 1 [lindex [split [$E index end] "."] 0]
+ } section {
+ Line_breaking_switch $E unsection
+ set pos1 [lindex [split [$E search -backwards -regexp -- "^$" insert 1.0] "."] 0]
+ set pos2 [lindex [split [$E search -regexp -- "^$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_breaking $E $pos1 $pos2
+ } unsection {
+ set pos1 [lindex [split [$E search -backwards -regexp -- "^$" insert 1.0] "."] 0]
+ set pos2 [lindex [split [$E search -regexp -- "^$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_unbreaking $E $pos1 $pos2
+ } line {
+ Line_breaking_switch $E unline
+ set ksp [lindex [split [$E index {insert linestart}] "."] 0]
+ if {$ksp != ""} {
+ Line_breaking $E $ksp $ksp
+ }
+ } unline {
+ set pos1 [expr [lindex [split [$E search -backwards -regexp -- "\[^ \]$" insert 1.0] "."] 0] +1]
+ set pos2 [lindex [split [$E search -regexp -- "\[^ \]$" insert end] "."] 0]
+ if {$pos1 == ""} {set pos1 1}
+ if {$pos2 == ""} {set pos2 [lindex [split [$E index end] "."] 0]}
+ Line_unbreaking $E $pos1 $pos2
+ }
+}
diff --git a/support/tcltexed/lib/menu/Akzente.itm b/support/tcltexed/lib/menu/Akzente.itm
new file mode 100644
index 0000000000..a106013dde
--- /dev/null
+++ b/support/tcltexed/lib/menu/Akzente.itm
@@ -0,0 +1,16 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 3 {Stress Akzente Aksen Groups}}
+} else {
+
+set LISTE1 [list \
+hat breve grave bar dot\
+check acute tilde vec ddot]
+set LISTE2 [list overline overbrace widehat\
+underline underbrace widetilde\
+stackrel atop choose]
+
+FRLIAN $NAME $LISTE1 5 a
+FRLIAN $NAME $LISTE2 3 b
+
+}
diff --git a/support/tcltexed/lib/menu/Alphabet.itm b/support/tcltexed/lib/menu/Alphabet.itm
new file mode 100644
index 0000000000..eb0439296d
--- /dev/null
+++ b/support/tcltexed/lib/menu/Alphabet.itm
@@ -0,0 +1,15 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 4 {Alphabet Alphabet Huruf Alfabeto}}
+} else {
+
+set LISTE1 [list alpha beta gamma delta epsilon varepsilon zeta eta theta \
+vartheta iota kappa lambda mu nu xi pi varpi rho varrho sigma varsigma \
+tau upsilon phi varphi chi psi omega]
+set LISTE2 [list Gamma Delta Theta Lambda Xi Pi \
+Sigma Upsilon Phi Omega]
+
+FRLIAN $NAME $LISTE1 3 a
+FRLIAN $NAME $LISTE2 3 b
+
+}
diff --git a/support/tcltexed/lib/menu/Document.itm b/support/tcltexed/lib/menu/Document.itm
new file mode 100644
index 0000000000..2c4e2a28d8
--- /dev/null
+++ b/support/tcltexed/lib/menu/Document.itm
@@ -0,0 +1,33 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {1 3 {Document Dokument Dokumen Documento}}
+} else {
+
+buttonmake $NAME 1 documentclass
+buttonmake $NAME 2 document
+buttonmake $NAME 3 usepackage
+label $NAME.l1 -text [lindex {Style Stil "Bentuk Tulisan" Style} $language]
+addpack $NAME.l1
+buttonmake $NAME 4 pagestyle
+buttonmake $NAME 5 thispagestyle
+buttonmake $NAME 6 pagenumbering
+label $NAME.l2 -text [lindex {Titlepage Titelseite Judul Titlepage} $language]
+addpack $NAME.l2
+buttonmake $NAME 7 titlepage
+buttonmake $NAME 8 title
+buttonmake $NAME 9 author
+buttonmake $NAME 10 date
+buttonmake $NAME 11 thanks
+buttonmake $NAME 12 maketitle
+label $NAME.l3 -text [lindex {Index Inhaltsverzeichnis Indeks Index} $language]
+addpack $NAME.l3
+buttonmake $NAME 13 appendix
+buttonmake $NAME 14 tableofcontents
+buttonmake $NAME 15 listoffigures
+buttonmake $NAME 16 listoftables
+buttonmake $NAME 17 addcontentsline
+buttonmake $NAME 18 addtocontents
+
+
+ eval "pack $packstring -fill x"
+}
diff --git a/support/tcltexed/lib/menu/Funktionen.itm b/support/tcltexed/lib/menu/Funktionen.itm
new file mode 100644
index 0000000000..3a7c96c1c5
--- /dev/null
+++ b/support/tcltexed/lib/menu/Funktionen.itm
@@ -0,0 +1,15 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 5 {functions Funktionen Fungsi Funções}}
+} else {
+
+set LISTE [list arccos arcsin arctan arg cos cosh cot coth csc deg det dim\
+exp gcd hom inf ker lg lim liminf limsub ln log max min Pr sec\
+sin sinh sup tan tanh]
+
+foreach x $LISTE {
+ buttonmake $NAME $x $x
+}
+
+eval "pack $packstring -fill x"
+}
diff --git a/support/tcltexed/lib/menu/Gliederung.itm b/support/tcltexed/lib/menu/Gliederung.itm
new file mode 100644
index 0000000000..e0e03523f5
--- /dev/null
+++ b/support/tcltexed/lib/menu/Gliederung.itm
@@ -0,0 +1,21 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {1 1 {Segmentation Gliederung Segmentasi Segmentação}}
+} else {
+
+label $NAME.l1 -text [lindex {Basic Generelle Dasar Basic} $language]
+addpack $NAME.l1
+buttonmake $NAME 1 chapter
+buttonmake $NAME 2 section
+buttonmake $NAME 3 subsection
+buttonmake $NAME 4 subsubsection
+buttonmake $NAME 5 paragraph
+buttonmake $NAME 6 subparagraph
+label $NAME.l2 -text [lindex {Listings Aufzaehlung Daftar Listings} $language]
+addpack $NAME.l2
+buttonmake $NAME 7 itemize
+buttonmake $NAME 8 enumerate
+buttonmake $NAME 9 description
+
+eval "pack $packstring -fill x"
+}
diff --git a/support/tcltexed/lib/menu/Grundbefehle.itm b/support/tcltexed/lib/menu/Grundbefehle.itm
new file mode 100644
index 0000000000..b0d57c27be
--- /dev/null
+++ b/support/tcltexed/lib/menu/Grundbefehle.itm
@@ -0,0 +1,11 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 2 {"Basic Syntax" Grundbefehle "Sintaksis Dasar" "Sintaxe Básica"}}
+} else {
+
+set LISTE1 [list sqrt sqrtn frac\
+int oint sum \
+prod coprod]
+
+FRLIAN $NAME $LISTE1 3 a
+}
diff --git a/support/tcltexed/lib/menu/Operatoren.itm b/support/tcltexed/lib/menu/Operatoren.itm
new file mode 100644
index 0000000000..3622e24776
--- /dev/null
+++ b/support/tcltexed/lib/menu/Operatoren.itm
@@ -0,0 +1,11 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 6 {"Binaere Operators" "Binaere Operatoren" "Operasi Biner" "Operadores binários"}}
+} else {
+
+set LISTE1 [list pm mp times div cdot ast dagger ddagger amalg cap cup\
+uplus sqcap sqcup vee wedge setminus wr circ bullet oslash odot\
+bigcirc bigtriangleup bigtriangledown oplus ominus otimes]
+
+FRLIAN $NAME $LISTE1 3 a
+}
diff --git a/support/tcltexed/lib/menu/Pfeile.itm b/support/tcltexed/lib/menu/Pfeile.itm
new file mode 100644
index 0000000000..0ffd021b54
--- /dev/null
+++ b/support/tcltexed/lib/menu/Pfeile.itm
@@ -0,0 +1,19 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 7 {Arrows Pfeile "Anak Panah" Setas}}
+} else {
+
+ set LISTE1 [list \
+ leftarrow rightarrow uparrow downarrow\
+ Leftarrow Rightarrow Uparrow Downarrow\
+ leftrightarrow Leftrightarrow updownarrow Updownarrow\
+ leftharpoonup rightharpoonup hookleftarrow hookrightarrow\
+ leftharpoondown rightharpoondown rightleftharpoons mapsto\
+ nwarrow nearrow swarrow searrow]
+ set LISTE2 [list longleftarrow longrightarrow\
+ Longleftarrow Longrightarrow\
+ longleftrightarrow Longleftrightarrow]
+
+ FRLIAN $NAME $LISTE1 4 a
+ FRLIAN $NAME $LISTE2 2 b
+}
diff --git a/support/tcltexed/lib/menu/RCS/Akzente.itm,v b/support/tcltexed/lib/menu/RCS/Akzente.itm,v
new file mode 100644
index 0000000000..26c7aac6fd
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Akzente.itm,v
@@ -0,0 +1,58 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 3 {Stress Akzente Aksen Groups}}
+} else {
+
+set LISTE1 [list \
+hat breve grave bar dot\
+check acute tilde vec ddot]
+set LISTE2 [list overline overbrace widehat\
+underline underbrace widetilde\
+stackrel atop choose]
+
+FRLIAN $NAME $LISTE1 5 a
+FRLIAN $NAME $LISTE2 3 b
+
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 3 {Stress Akzente Aksen}}
+d16 1
+a16 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Alphabet.itm,v b/support/tcltexed/lib/menu/RCS/Alphabet.itm,v
new file mode 100644
index 0000000000..8d5e592f05
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Alphabet.itm,v
@@ -0,0 +1,57 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 4 {Alphabet Alphabet Huruf Alfabeto}}
+} else {
+
+set LISTE1 [list alpha beta gamma delta epsilon varepsilon zeta eta theta \
+vartheta iota kappa lambda mu nu xi pi varpi rho varrho sigma varsigma \
+tau upsilon phi varphi chi psi omega]
+set LISTE2 [list Gamma Delta Theta Lambda Xi Pi \
+Sigma Upsilon Phi Omega]
+
+FRLIAN $NAME $LISTE1 3 a
+FRLIAN $NAME $LISTE2 3 b
+
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 4 {Alphabet Alphabet Huruf}}
+d15 1
+a15 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Document.itm,v b/support/tcltexed/lib/menu/RCS/Document.itm,v
new file mode 100644
index 0000000000..1328cdcbb5
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Document.itm,v
@@ -0,0 +1,84 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {1 3 {Document Dokument Dokumen Documento}}
+} else {
+
+buttonmake $NAME 1 documentclass
+buttonmake $NAME 2 document
+buttonmake $NAME 3 usepackage
+label $NAME.l1 -text [lindex {Style Stil "Bentuk Tulisan" Style} $language]
+addpack $NAME.l1
+buttonmake $NAME 4 pagestyle
+buttonmake $NAME 5 thispagestyle
+buttonmake $NAME 6 pagenumbering
+label $NAME.l2 -text [lindex {Titlepage Titelseite Judul Titlepage} $language]
+addpack $NAME.l2
+buttonmake $NAME 7 titlepage
+buttonmake $NAME 8 title
+buttonmake $NAME 9 author
+buttonmake $NAME 10 date
+buttonmake $NAME 11 thanks
+buttonmake $NAME 12 maketitle
+label $NAME.l3 -text [lindex {Index Inhaltsverzeichnis Indeks Index} $language]
+addpack $NAME.l3
+buttonmake $NAME 13 appendix
+buttonmake $NAME 14 tableofcontents
+buttonmake $NAME 15 listoffigures
+buttonmake $NAME 16 listoftables
+buttonmake $NAME 17 addcontentsline
+buttonmake $NAME 18 addtocontents
+
+
+ eval "pack $packstring -fill x"
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {1 3 {Document Dokument Dokumen}}
+d9 1
+a9 1
+label $NAME.l1 -text [lindex {Style Stil "Bentuk Tulisan"} $language]
+d14 1
+a14 1
+label $NAME.l2 -text [lindex {Titlepage Titelseite Judul} $language]
+d22 1
+a22 1
+label $NAME.l3 -text [lindex {Index Inhaltsverzeichnis Indeks} $language]
+d33 1
+a33 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Funktionen.itm,v b/support/tcltexed/lib/menu/RCS/Funktionen.itm,v
new file mode 100644
index 0000000000..8c7908abf2
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Funktionen.itm,v
@@ -0,0 +1,57 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 5 {functions Funktionen Fungsi Funções}}
+} else {
+
+set LISTE [list arccos arcsin arctan arg cos cosh cot coth csc deg det dim\
+exp gcd hom inf ker lg lim liminf limsub ln log max min Pr sec\
+sin sinh sup tan tanh]
+
+foreach x $LISTE {
+ buttonmake $NAME $x $x
+}
+
+eval "pack $packstring -fill x"
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 5 {functions Funktionen Fungsi}}
+d15 1
+a15 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Gliederung.itm,v b/support/tcltexed/lib/menu/RCS/Gliederung.itm,v
new file mode 100644
index 0000000000..70e2cae703
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Gliederung.itm,v
@@ -0,0 +1,69 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {1 1 {Segmentation Gliederung Segmentasi Segmentação}}
+} else {
+
+label $NAME.l1 -text [lindex {Basic Generelle Dasar Basic} $language]
+addpack $NAME.l1
+buttonmake $NAME 1 chapter
+buttonmake $NAME 2 section
+buttonmake $NAME 3 subsection
+buttonmake $NAME 4 subsubsection
+buttonmake $NAME 5 paragraph
+buttonmake $NAME 6 subparagraph
+label $NAME.l2 -text [lindex {Listings Aufzaehlung Daftar Listings} $language]
+addpack $NAME.l2
+buttonmake $NAME 7 itemize
+buttonmake $NAME 8 enumerate
+buttonmake $NAME 9 description
+
+eval "pack $packstring -fill x"
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {1 1 {Segmentation Gliederung Segmentasi}}
+d6 1
+a6 1
+label $NAME.l1 -text [lindex {Basic Generelle Dasar} $language]
+d14 1
+a14 1
+label $NAME.l2 -text [lindex {Listings Aufzaehlung Daftar} $language]
+d21 1
+a21 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Grundbefehle.itm,v b/support/tcltexed/lib/menu/RCS/Grundbefehle.itm,v
new file mode 100644
index 0000000000..89be3ff50e
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Grundbefehle.itm,v
@@ -0,0 +1,53 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 2 {"Basic Syntax" Grundbefehle "Sintaksis Dasar" "Sintaxe Básica"}}
+} else {
+
+set LISTE1 [list sqrt sqrtn frac\
+int oint sum \
+prod coprod]
+
+FRLIAN $NAME $LISTE1 3 a
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 2 {"Basic Syntax" Grundbefehle "Sintaksis Dasar"}}
+d11 1
+a11 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Operatoren.itm,v b/support/tcltexed/lib/menu/RCS/Operatoren.itm,v
new file mode 100644
index 0000000000..fd4be2ac3b
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Operatoren.itm,v
@@ -0,0 +1,53 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 6 {"Binaere Operators" "Binaere Operatoren" "Operasi Biner" "Operadores binários"}}
+} else {
+
+set LISTE1 [list pm mp times div cdot ast dagger ddagger amalg cap cup\
+uplus sqcap sqcup vee wedge setminus wr circ bullet oslash odot\
+bigcirc bigtriangleup bigtriangledown oplus ominus otimes]
+
+FRLIAN $NAME $LISTE1 3 a
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 6 {"Binaere Operators" "Binaere Operatoren" "Operasi Biner"}}
+d11 1
+a11 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Pfeile.itm,v b/support/tcltexed/lib/menu/RCS/Pfeile.itm,v
new file mode 100644
index 0000000000..f13dd0e2c1
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Pfeile.itm,v
@@ -0,0 +1,61 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 7 {Arrows Pfeile "Anak Panah" Setas}}
+} else {
+
+ set LISTE1 [list \
+ leftarrow rightarrow uparrow downarrow\
+ Leftarrow Rightarrow Uparrow Downarrow\
+ leftrightarrow Leftrightarrow updownarrow Updownarrow\
+ leftharpoonup rightharpoonup hookleftarrow hookrightarrow\
+ leftharpoondown rightharpoondown rightleftharpoons mapsto\
+ nwarrow nearrow swarrow searrow]
+ set LISTE2 [list longleftarrow longrightarrow\
+ Longleftarrow Longrightarrow\
+ longleftrightarrow Longleftrightarrow]
+
+ FRLIAN $NAME $LISTE1 4 a
+ FRLIAN $NAME $LISTE2 2 b
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 7 {Arrows Pfeile "Anak Panah"}}
+d19 1
+a19 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Schrift.itm,v b/support/tcltexed/lib/menu/RCS/Schrift.itm,v
new file mode 100644
index 0000000000..0797d75259
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Schrift.itm,v
@@ -0,0 +1,88 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {1 2 {Writing Schrift Penulisan "Tamanho de fontes"}}
+} else {
+
+label $NAME.l1 -text [lindex {"Size of W." Schriftgroesse "Ukuran Huruf" "Size of W."} $language]
+addpack $NAME.l1
+buttonmake $NAME 1 tiny
+buttonmake $NAME 2 small
+buttonmake $NAME 3 large
+buttonmake $NAME 4 Large
+buttonmake $NAME 5 LARGE
+buttonmake $NAME 6 huge
+buttonmake $NAME 7 Huge
+buttonmake $NAME 8 scriptsize
+buttonmake $NAME 9 footnotesize
+buttonmake $NAME 10 normalsize
+label $NAME.l2 -text [lindex {"Type of W." Schrifttyp "Jenis Huruf" "Type of W."} $language]
+addpack $NAME.l2
+buttonmake $NAME 11 bfseries
+buttonmake $NAME 12 mdseries
+buttonmake $NAME 13 itshape
+buttonmake $NAME 14 scshape
+buttonmake $NAME 15 slshape
+buttonmake $NAME 16 upshape
+buttonmake $NAME 17 rmfamily
+buttonmake $NAME 18 sffamily
+buttonmake $NAME 18a ttfamily
+label $NAME.l3 -text [lindex {Textstructure Textstruktur "Struktur Teks" Textstructure} $language]
+addpack $NAME.l3
+buttonmake $NAME 19 quote
+buttonmake $NAME 20 quotation
+buttonmake $NAME 21 flushleft
+buttonmake $NAME 22 center
+buttonmake $NAME 23 flushright
+eval "pack $packstring -fill x"
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {1 2 {Writing Schrift Penulisan}}
+d6 1
+a6 1
+label $NAME.l1 -text [lindex {"Size of W." Schriftgroesse "Ukuran Huruf"} $language]
+d18 1
+a18 1
+label $NAME.l2 -text [lindex {"Type of W." Schrifttyp "Jenis Huruf"} $language]
+d29 1
+a29 1
+label $NAME.l3 -text [lindex {Textstructure Textstruktur "Struktur Teks"} $language]
+d37 1
+a37 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Symbole.itm,v b/support/tcltexed/lib/menu/RCS/Symbole.itm,v
new file mode 100644
index 0000000000..299b18975a
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Symbole.itm,v
@@ -0,0 +1,61 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 9 {"Other Symbols" "Sonstige Symbole" "Lambang Lainnya" "Outros símbolos"}}
+} else {
+
+ set LISTE1 [list aleph hbar wp\
+ imath jmath ell\
+ Re Im sonder_strich\
+ nabla partial prime\
+ top bot surd\
+ vdash dashv neg\
+ exists forall emptyset\
+ natural sharp flat\
+ angle backslash infty\
+ clubsuit diamondsuit bowtie\
+ spadesuit heartsuit triangle]
+
+ FRLIAN $NAME $LISTE1 3 a
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 9 {"Other Symbols" "Sonstige Symbole" "Lambang Lainnya"}}
+d19 1
+a19 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/Umgebung.itm,v b/support/tcltexed/lib/menu/RCS/Umgebung.itm,v
new file mode 100644
index 0000000000..63fc8f733c
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/Umgebung.itm,v
@@ -0,0 +1,53 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 1 {Enviroment Umgebung Lingkungan Ambiente}}
+} else {
+
+buttonmake $NAME 1 math
+buttonmake $NAME 2 displaymath
+buttonmake $NAME 3 equation
+
+eval "pack $packstring -fill x"
+}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d3 1
+a3 1
+ set ItemList {0 1 {Enviroment Umgebung Lingkungan}}
+d11 1
+a11 1
+}@
diff --git a/support/tcltexed/lib/menu/RCS/menu,v b/support/tcltexed/lib/menu/RCS/menu,v
new file mode 100644
index 0000000000..48a159a184
--- /dev/null
+++ b/support/tcltexed/lib/menu/RCS/menu,v
@@ -0,0 +1,47 @@
+head 1.2;
+access;
+symbols;
+locks
+ mys:1.2; strict;
+comment @# @;
+
+
+1.2
+date 2001.01.23.21.08.08; author mys; state Exp;
+branches;
+next 1.1;
+
+1.1
+date 2000.10.12.15.04.09; author mys; state Exp;
+branches;
+next ;
+
+
+desc
+@@
+
+
+1.2
+log
+@*** empty log message ***
+@
+text
+@# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+#############################
+# Eintraege in die Menuleiste
+# {MenuPosition ItemPosition {Englisch Deutsch Indonesia...}}
+lappend MenuItemList {0 0 {Mathematics Mathematik Matematika Matemática}}
+lappend MenuItemList {1 0 {General Allgemein Umum Geral}}
+@
+
+
+1.1
+log
+@Initial revision
+@
+text
+@d5 2
+a6 2
+lappend MenuItemList {0 0 {Mathematics Mathematik Matematika}}
+lappend MenuItemList {1 0 {General Allgemein Umum}}
+@
diff --git a/support/tcltexed/lib/menu/Schrift.itm b/support/tcltexed/lib/menu/Schrift.itm
new file mode 100644
index 0000000000..12a7f6288e
--- /dev/null
+++ b/support/tcltexed/lib/menu/Schrift.itm
@@ -0,0 +1,37 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {1 2 {Writing Schrift Penulisan "Tamanho de fontes"}}
+} else {
+
+label $NAME.l1 -text [lindex {"Size of W." Schriftgroesse "Ukuran Huruf" "Size of W."} $language]
+addpack $NAME.l1
+buttonmake $NAME 1 tiny
+buttonmake $NAME 2 small
+buttonmake $NAME 3 large
+buttonmake $NAME 4 Large
+buttonmake $NAME 5 LARGE
+buttonmake $NAME 6 huge
+buttonmake $NAME 7 Huge
+buttonmake $NAME 8 scriptsize
+buttonmake $NAME 9 footnotesize
+buttonmake $NAME 10 normalsize
+label $NAME.l2 -text [lindex {"Type of W." Schrifttyp "Jenis Huruf" "Type of W."} $language]
+addpack $NAME.l2
+buttonmake $NAME 11 bfseries
+buttonmake $NAME 12 mdseries
+buttonmake $NAME 13 itshape
+buttonmake $NAME 14 scshape
+buttonmake $NAME 15 slshape
+buttonmake $NAME 16 upshape
+buttonmake $NAME 17 rmfamily
+buttonmake $NAME 18 sffamily
+buttonmake $NAME 18a ttfamily
+label $NAME.l3 -text [lindex {Textstructure Textstruktur "Struktur Teks" Textstructure} $language]
+addpack $NAME.l3
+buttonmake $NAME 19 quote
+buttonmake $NAME 20 quotation
+buttonmake $NAME 21 flushleft
+buttonmake $NAME 22 center
+buttonmake $NAME 23 flushright
+eval "pack $packstring -fill x"
+}
diff --git a/support/tcltexed/lib/menu/Symbole.itm b/support/tcltexed/lib/menu/Symbole.itm
new file mode 100644
index 0000000000..9d07496099
--- /dev/null
+++ b/support/tcltexed/lib/menu/Symbole.itm
@@ -0,0 +1,19 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 9 {"Other Symbols" "Sonstige Symbole" "Lambang Lainnya" "Outros símbolos"}}
+} else {
+
+ set LISTE1 [list aleph hbar wp\
+ imath jmath ell\
+ Re Im sonder_strich\
+ nabla partial prime\
+ top bot surd\
+ vdash dashv neg\
+ exists forall emptyset\
+ natural sharp flat\
+ angle backslash infty\
+ clubsuit diamondsuit bowtie\
+ spadesuit heartsuit triangle]
+
+ FRLIAN $NAME $LISTE1 3 a
+}
diff --git a/support/tcltexed/lib/menu/Umgebung.itm b/support/tcltexed/lib/menu/Umgebung.itm
new file mode 100644
index 0000000000..c320f8a747
--- /dev/null
+++ b/support/tcltexed/lib/menu/Umgebung.itm
@@ -0,0 +1,11 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+if $MenuModus {
+ set ItemList {0 1 {Enviroment Umgebung Lingkungan Ambiente}}
+} else {
+
+buttonmake $NAME 1 math
+buttonmake $NAME 2 displaymath
+buttonmake $NAME 3 equation
+
+eval "pack $packstring -fill x"
+}
diff --git a/support/tcltexed/lib/menu/menu b/support/tcltexed/lib/menu/menu
new file mode 100644
index 0000000000..041d01a57f
--- /dev/null
+++ b/support/tcltexed/lib/menu/menu
@@ -0,0 +1,6 @@
+# Copyright (C) 1998 - Martin Strauss - under terms of GPL
+#############################
+# Eintraege in die Menuleiste
+# {MenuPosition ItemPosition {Englisch Deutsch Indonesia...}}
+lappend MenuItemList {0 0 {Mathematics Mathematik Matematika Matemática}}
+lappend MenuItemList {1 0 {General Allgemein Umum Geral}}
diff --git a/support/tcltexed/lib/options.tcl b/support/tcltexed/lib/options.tcl
new file mode 100644
index 0000000000..b6d27cefe8
--- /dev/null
+++ b/support/tcltexed/lib/options.tcl
@@ -0,0 +1,49 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+################################################################
+# Options
+################################################################
+proc SaveOptions {} {
+ global wsearch_gb KlammerFlag syntax_flag log_flag Package inifile myown Tcltexed_Version language tft_size
+ set f [open $inifile w]
+ #Get text to save
+ lappend liste $Tcltexed_Version $wsearch_gb $KlammerFlag $syntax_flag $log_flag "[array get Package]" "[array get myown]" $language $tft_size
+ #Save it
+ puts $f $liste
+ #and close file
+ close $f
+}
+################################################################
+proc LoadOptions {} {
+ global wsearch_gb KlammerFlag syntax_flag log_flag Package PLISTE bhtpath I_flag inifile myown Tcltexed_Version language tft_size
+
+ foreach {i n} $PLISTE {
+ set Package($i) 0
+ }
+ set Package(latex) 1
+
+ if [file exists $inifile] then {
+ set f [open $inifile r]
+ #Get text to save
+ set liste [gets $f]
+ if {[lindex $liste 0] == $Tcltexed_Version} {
+ set wsearch_gb [lindex $liste 1]
+ set KlammerFlag [lindex $liste 2]
+ set syntax_flag [lindex $liste 3]
+ set log_flag [lindex $liste 4]
+ array set Package [lindex $liste 5]
+ array set myown [lindex $liste 6]
+ set language [lindex $liste 7]
+ set tft_size [lindex $liste 8]
+ }
+ close $f
+ }
+ foreach {i n} $PLISTE {
+ if $Package($i) then {
+ set I_file $bhtpath/$i.bht
+ set I_flag 1
+ source $bhtpath/$i.bht
+ }
+ }
+}
+
+
diff --git a/support/tcltexed/lib/search.tcl b/support/tcltexed/lib/search.tcl
new file mode 100644
index 0000000000..e563df1c26
--- /dev/null
+++ b/support/tcltexed/lib/search.tcl
@@ -0,0 +1,158 @@
+# Copyright (C) 2000 - Martin Strauss - under terms of GPL
+##############################################################
+# search routine
+# ok !
+proc InitSearch {} {
+ global T
+ if ![winfo exists .wsearch] then {
+ toplevel .wsearch
+ wm title .wsearch $T(wsearch-titel)
+
+ entry .wsearch.text1 -width 20 -relief sunken -background White
+ entry .wsearch.text2 -width 20 -relief sunken -background White
+
+ global wsearch_gb
+ checkbutton .wsearch.butgb -variable wsearch_gb -text $T(wsearch-case-sensitive)
+
+ button .wsearch.but1 -text $T(wsearch-top) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $Text 1.0]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+ frame .wsearch.f1
+
+ button .wsearch.f1.but2 -text $T(wsearch-down) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $Text insert+1c]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}
+
+ button .wsearch.f1.but3 -text $T(wsearch-up) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set Text [.wsearch.text1 get]
+ if {$Text != ""} then {
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search -backwards $comm $Text insert]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $Text]c
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}}
+
+ frame .wsearch.f2
+
+ button .wsearch.f2.but4 -text $T(wsearch-replace) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set FIND [.wsearch.text1 get]
+ set FIND_L [string length $FIND]
+ if {$FIND != ""} then {
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ undo_switch $FocusEditor.te.edit1 "Save {insert \"insert + $FIND_L chars\"} Delete UndoBegin"
+ set REPLACE [.wsearch.text2 get]
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ $FocusEditor.te.edit1 see insert
+ undo_switch $FocusEditor.te.edit1 {UndoEnd Save UndoMax}
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ # Sucht
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ set ksp [$FocusEditor.te.edit1 search $comm $FIND insert]
+ if {$ksp != ""} then {
+ $FocusEditor.te.edit1 mark set insert $ksp
+ $FocusEditor.te.edit1 see insert
+ $FocusEditor.te.edit1 tag remove sel 1.0 end
+ $FocusEditor.te.edit1 tag add sel insert insert+[string length $FIND]c
+ $FocusEditor.te.edit1 mark set sel.first insert
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }}}}
+
+ button .wsearch.f2.but5 -text $T(wsearch-all) -command {
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ set FIND [.wsearch.text1 get]
+ set FIND_L [string length "$FIND"]
+ if {$FIND != ""} then {
+ set REPLACE [.wsearch.text2 get]
+ set modifiedflag 0
+ if !$wsearch_gb then {set comm "-nocase --"} else {set comm "--"}
+ undo_switch $FocusEditor.te.edit1 Save
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set nowindex 1.0
+ while {$nowindex != ""} {
+ $FocusEditor.te.edit1 mark set insert $nowindex
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ undo_switch $FocusEditor.te.edit1 "{insert \"insert + $FIND_L chars\"} Delete UndoBegin"
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ undo_switch $FocusEditor.te.edit1 {UndoEnd Save}
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set modifiedflag 1
+ }
+ # Sucht
+ set nowindex [$FocusEditor.te.edit1 search $comm $FIND insert end]
+ }
+ $FocusEditor.te.edit1 mark set insert $startindex
+ if $modifiedflag {
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ }
+ }
+
+ button .wsearch.butQ -text $T(quit) -command {
+ destroy .wsearch
+ }
+ pack .wsearch.f1.but2 -side left
+ pack .wsearch.f1.but3 -side right
+ pack .wsearch.f2.but4 .wsearch.f2.but5 -side left
+ pack .wsearch.text1 .wsearch.but1 .wsearch.f1 .wsearch.butgb .wsearch.text2\
+.wsearch.f2 .wsearch.butQ
+ wm minsize . 1 1
+ bind .wsearch <<Help>> {Help tcltexed_hlp $T(wsearch-Help)}
+ bind .wsearch <Control-c> {
+ destroy .wsearch
+ }
+ wm resizable .wsearch 0 0
+ COLOR .wsearch
+ .wsearch.text1 configure -background White
+ .wsearch.text2 configure -background White
+ menu .wsearch.text1.pop_menu
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wsearch.text1 <<Cut>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Copy) -command "event generate wsearch.text1 <<Copy>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wsearch.text1 <<Paste>>"
+ .wsearch.text1.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wsearch.text1 <<Clear>>"
+ menu .wsearch.text2.pop_menu
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Cut) -command "event generate .wsearch.text2 <<Cut>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Copy) -command "event generate .wsearch.text2 <<Copy>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Paste) -command "event generate .wsearch.text2 <<Paste>>"
+ .wsearch.text2.pop_menu add command -label $T(pop_menu-Clear) -command "event generate .wsearch.text2 <<Clear>>"
+
+ bind .wsearch.text1 <Button-3> "tk_popup .wsearch.text1.pop_menu \[winfo pointerx .wsearch\] \[winfo pointery .wsearch\]"
+ bind .wsearch.text2 <Button-3> "tk_popup .wsearch.text2.pop_menu \[winfo pointerx .wsearch\] \[winfo pointery .wsearch\]"
+
+ } else {focus .wsearch}
+}
diff --git a/support/tcltexed/lib/spelling.tcl b/support/tcltexed/lib/spelling.tcl
new file mode 100644
index 0000000000..c05e9baded
--- /dev/null
+++ b/support/tcltexed/lib/spelling.tcl
@@ -0,0 +1,95 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##############################################################
+proc spell {E mode spell_start spell_end} {
+ global T spell_not spell_array spell_yes spell_flag
+ if $spell_flag {
+ set spell_flag 0
+ switch $mode add {
+ if {[lsearch -exact [$E tag names insert] spell] != -1} {
+ set ksp1 [$E search -backwards -regexp -- $spell_yes insert {insert linestart}]
+ if {$ksp1 == ""} {set ksp1 "insert linestart"} else {append ksp1 +1c}
+ set ksp2 [$E search -forwards -regexp -- $spell_yes insert {insert lineend}]
+ if {$ksp2 == ""} {set ksp2 "insert lineend"}
+ set I [$E get $ksp1 $ksp2]
+ switch [tk_messageBox -parent $E -type okcancel -icon question -message $T(spell-1)$I$T(spell-2)] ok {
+ if ![info exists spell_array($I)] {
+ set spell_array($I) O
+ set I_s "spell + [string length $I] chars"
+ set I_s1 "spell + [expr [string length $I] +1 ] chars"
+ set nowindex [$E search -- $I $spell_start $spell_end]
+ while {$nowindex != ""} {
+ $E mark set spell $nowindex
+ set ksp1 [$E get spell-1c spell]
+ set ksp2 [$E get $I_s $I_s1]
+ if {[regexp -- $spell_yes $ksp1] != 0} {
+ if {[regexp -- $spell_yes $ksp2] != 0} {
+ $E tag remove spell spell $I_s
+ }
+ }
+ set nowindex [$E search -- $I spell+1c $spell_end]
+ }
+ }
+ } cancel {
+ switch [tk_messageBox -parent $E -type okcancel -icon question -message $T(spell-3)] ok {
+ $E mark set insert "insert wordstart"
+ InitSearch
+ .wsearch.text1 delete 0 end
+ .wsearch.text1 insert 0 $I
+ .wsearch.text2 delete 0 end
+ .wsearch.text2 insert 0 $I
+ }
+ }
+ }
+ } show {
+ $E tag remove spell $spell_start $spell_end
+ set last ""
+ set LISTE [lsort [split [$E get $spell_start $spell_end] $spell_yes]]
+ foreach I $LISTE {
+ if {[string compare $last $I]!=0} {
+ if {[regexp -- $spell_not $I] == 0} {
+ if {![info exists spell_array($I)]} {
+ if {$I != ""} {
+ set I_s "spell + [string length $I] chars"
+ set I_s1 "spell + [expr [string length $I] +1 ] chars"
+ set nowindex [$E search -- $I $spell_start $spell_end]
+ while {$nowindex != ""} {
+ $E mark set spell $nowindex
+ set ksp1 [$E get spell-1c spell]
+ set ksp2 [$E get $I_s $I_s1]
+ if {[regexp -- $spell_yes $ksp1] != 0} {
+ if {[regexp -- $spell_yes $ksp2] != 0} {
+ $E tag add spell spell $I_s
+ }
+ }
+ set nowindex [$E search -- $I spell+1c $spell_end]
+ }
+ }}}}
+ set last $I
+ }
+ }
+ set spell_flag 1
+}}
+proc spell_load {} {
+ global spellfile spellfileown language I_befehl spell_array
+ if [file exists $spellfileown$language] then {
+ set f [open $spellfileown$language r]
+ set LISTE [gets $f]
+ close $f
+ foreach I $LISTE {set spell_array($I) O}
+ }
+ if [file exists $spellfile$language] then {
+ set f [open $spellfile$language r]
+ set LISTE [gets $f]
+ close $f
+ foreach I $LISTE {set spell_array($I) G}
+ }
+}
+proc spell_save {} {
+ global spellfileown language spell_array
+ set LISTE ""
+ set L [array get spell_array]
+ foreach {I V} $L {if {$V == "O"} {lappend LISTE $I}}
+ set f [open $spellfileown$language w]
+ puts $f [lsort $LISTE]
+ close $f
+}
diff --git a/support/tcltexed/lib/syntax.tcl b/support/tcltexed/lib/syntax.tcl
new file mode 100644
index 0000000000..35be1b6db8
--- /dev/null
+++ b/support/tcltexed/lib/syntax.tcl
@@ -0,0 +1,54 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+#######################################################
+# Farbige Syntax
+# ok !
+proc Syntax {E START END} {
+ global I_befehl syntax_flag
+ if $syntax_flag {
+ set NEW_syntax [$E search "\\" $START $END]
+ if {$NEW_syntax != ""} {
+ $E tag remove syntax_green $NEW_syntax $END
+ $E tag remove syntax_red $NEW_syntax $END
+ $E tag remove syntax_blue $NEW_syntax $END
+ set LISTE [array names I_befehl]
+ lappend LISTE "$" "\\" "\[" "\]" "\{" "\}" ";" "." "-"
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ if {[$E get syntax-1c syntax] != "\\"} {
+ set ksp [lsearch -exact $LISTE [$E get syntax+1c {syntax+1c wordend}]]
+ if {$ksp == -1} {
+ $E tag add syntax_red syntax {syntax+1c wordend}
+ } else {
+ $E tag add syntax_green syntax {syntax+1c wordend}
+ }
+ } elseif {[$E get syntax-2c syntax-1c] != "\\"} {
+ set ksp [lsearch -exact $LISTE [$E get syntax+1c {syntax+1c wordend}]]
+ if {$ksp == -1} {
+ $E tag add syntax_red syntax {syntax+1c wordend}
+ } else {
+ $E tag add syntax_green syntax {syntax+1c wordend}
+ }
+ }
+ set NEW_syntax [$E search "\\" syntax+1c $END]
+ }
+ set NEW_syntax [$E search "%" $START $END]
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ if {[$E get syntax-1c syntax] != "\\"} {
+ $E tag add syntax_blue syntax {syntax lineend}
+ $E tag remove syntax_red syntax {syntax lineend}
+ } else {
+ $E tag add syntax_green syntax-1c syntax+1c
+ $E tag remove syntax_red syntax-1c syntax+1c
+ }
+ set NEW_syntax [$E search "%" syntax+1c $END]
+ }
+
+ set NEW_syntax [$E search "$" $START $END]
+ while {$NEW_syntax != ""} {
+ $E mark set syntax $NEW_syntax
+ $E tag add syntax_green syntax syntax+1c
+ $E tag remove syntax_red syntax syntax+1c
+ set NEW_syntax [$E search "$" syntax+1c $END]
+ }
+}}}
diff --git a/support/tcltexed/lib/translate0.tcl b/support/tcltexed/lib/translate0.tcl
new file mode 100644
index 0000000000..b7fa89d0fc
--- /dev/null
+++ b/support/tcltexed/lib/translate0.tcl
@@ -0,0 +1,116 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# english version
+set LISTE [list \
+language "eng"\
+wsearch-titel Search\
+wsearch-Help Search\
+wsearch-case-sensitive "case sensitive"\
+wsearch-top Search\
+wsearch-down down\
+wsearch-up up\
+wsearch-replace replace\
+wsearch-all all\
+whelp-titel Help\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Version\
+wversion-text "TclTexEd Version $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Help\
+wTcltexed-titel Manual\
+wTcltexed-Help Help\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-keymap editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Message\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Goto"\
+wcurser-goto "Goto"\
+wcurser-gotocurser "Goto Curser Position"\
+BHTERROR1 "Error within sourcefile\nLaTeX-command all ready in use :\nSourcefile"\
+BHTERROR2 "\nName "\
+BHTERROR3 "\nCommand "\
+EDITORQUIT "Save changes ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS L.C\
+EDITOR-Syntax Syntax\
+pop_menu-Undo Undo\
+pop_menu-Cut Cut\
+pop_menu-Copy Copy\
+pop_menu-Paste Paste\
+pop_menu-Clear Clear\
+pop_menu-Spell Spell\
+pop_menu-Block Block\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Options\
+MW-Help Help\
+MW-New New...\
+MW-Load Open...\
+MW-Append Append...\
+MW-Save Save\
+MW-SaveAs "Save As..."\
+MW-Reload "Reload"\
+MW-Quit Quit\
+MW-Clear Clear\
+MW-Clear-msg "Delete everything ?"\
+MW-Spelling "Spelling"\
+MW-Spell "add word"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Search\
+MW-MyOwn "My Own"\
+MW-Version "Version Info"\
+MW-Tcltexed "Tcltexed Manual"\
+MW-LaTeX "LaTeX Commands"\
+MW-AutoKlammerZu AutoBrackets\
+MW-Syntax Syntax\
+MW-Packages "Packages/etc"\
+MW-language language\
+MW-size "font size"\
+MW-english english\
+MW-german german\
+MW-indonesia Indonesia\
+MW-bre brazilian\
+MW-language-msg "Now save the options\nand restart tcltexed\nto have an effect !"\
+MW-SaveOptions "Save Options"\
+MW-log "Trace log"\
+LB-breakline "break lines"\
+LB-all "all in file"\
+LB-section "all in section"\
+LB-line "all in line"\
+LB-unall "undo all in file"\
+LB-unsection "undo all in section"\
+LB-unline "undo all in line"\
+ALLQUIT1 "Save changes before leaving ?"\
+ALLQUIT2 "Save everything ?"\
+ALLQUIT3 "Save this file ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Add\n\""\
+spell-2 "\"\nto list of known words"\
+spell-3 "Correct yourself"\
+FileUpToDate "File on Disk has been modified,\nreload it before continue ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
diff --git a/support/tcltexed/lib/translate1.tcl b/support/tcltexed/lib/translate1.tcl
new file mode 100644
index 0000000000..6682223656
--- /dev/null
+++ b/support/tcltexed/lib/translate1.tcl
@@ -0,0 +1,118 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# german version
+set LISTE [list \
+language "ger"\
+wsearch-titel Search\
+wsearch-Help Search\
+wsearch-case-sensitive "case sensitive"\
+wsearch-top Search\
+wsearch-down down\
+wsearch-up up\
+wsearch-replace replace\
+wsearch-all all\
+whelp-titel Help\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Version\
+wversion-text "TclTexEd Version $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Help\
+wTcltexed-titel Manual\
+wTcltexed-Help Help\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-Tastenbelegung editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Message\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Goto"\
+wcurser-goto "Goto"\
+wcurser-gotocurser "Goto Curser Position"\
+BHTERROR1 "Fehler in Quelldatei\nLaTeX-Befehl schon belegt :\nQuelldatei"\
+BHTERROR2 "\nName "\
+BHTERROR3 "\nBefehl "\
+EDITORQUIT "Save changes ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS Z.S\
+EDITOR-Syntax Syntax\
+pop_menu-Undo Undo\
+pop_menu-Cut Cut\
+pop_menu-Copy Copy\
+pop_menu-Paste Paste\
+pop_menu-Clear Clear\
+pop_menu-Spell Test\
+pop_menu-Block Block\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Options\
+MW-Mathematik Mathematik\
+MW-Allgemein Allgemein\
+MW-Help Help\
+MW-New New...\
+MW-Load Open...\
+MW-Append Append...\
+MW-Save Save\
+MW-SaveAs "Save As..."\
+MW-Reload "Reload"\
+MW-Quit Quit\
+MW-Clear Clear\
+MW-Clear-msg "Alles Löschen ?"\
+MW-Spelling Rechtschreibung\
+MW-Spell "registriere Wort"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Search\
+MW-MyOwn "My Own"\
+MW-Version "Version Info"\
+MW-Tcltexed "Tcltexed Manual"\
+MW-LaTeX "LaTeX Commands"\
+MW-AutoKlammerZu AutoKlammerZu\
+MW-Syntax Syntax\
+MW-Packages "Packages/etc"\
+MW-language Sprache\
+MW-size Schriftgrösse\
+MW-english Englisch\
+MW-german Deutsch\
+MW-indonesia Indonesia\
+MW-bre brazilian\
+MW-language-msg "Nun speicher die eingestellten Optionen\nund starte tcltexed erneut !"\
+MW-SaveOptions "Save Options"\
+MW-log "Trace log"\
+LB-breakline "Zeilenumbruch"\
+LB-all "im gesamten Text"\
+LB-section "einem Absatz"\
+LB-line "einer Zeile"\
+LB-unall "Umkehr für den ganzen Text"\
+LB-unsection "für einen Absatz"\
+LB-unline "für eine Zeile"\
+ALLQUIT1 "Vor dem Beenden Veränderungen speichern ?"\
+ALLQUIT2 "Alles sichern ?"\
+ALLQUIT3 "Diese Datei speichern ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Soll\n\""\
+spell-2 "\"\nals richtig geschrieben\n registriert werden"\
+spell-3 "Korrektur"\
+FileUpToDate "Die Datei wurde extern modifiziert,\nsoll sie neu geladen werden ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
diff --git a/support/tcltexed/lib/translate2.tcl b/support/tcltexed/lib/translate2.tcl
new file mode 100644
index 0000000000..fa1bea2086
--- /dev/null
+++ b/support/tcltexed/lib/translate2.tcl
@@ -0,0 +1,116 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# Bahasa Indonesia version
+set LISTE [list \
+language "ind"\
+wsearch-titel Cari\
+wsearch-Help Cari\
+wsearch-case-sensitive "Perhatikan Huruf Kapital"\
+wsearch-top Cari\
+wsearch-down Turun\
+wsearch-up Atas\
+wsearch-replace Ganti\
+wsearch-all Semua\
+whelp-titel Bantuan\
+whelp-no-source "Tidak ada file \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Versi\
+wversion-text "TclTexEd Versi $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Bantuan\
+wTcltexed-titel Manual\
+wTcltexed-Help Bantuan\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-keymap editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Pesan\
+wmyown-titel "My Own"\
+wmyown-Help "My"\
+wcurser-titel "Ke"\
+wcurser-goto "Ke"\
+wcurser-gotocurser "Posisi Kursor"\
+BHTERROR1 "Kesalahan sourcefile\nLaTeX-command semuanya sudah digunakan :\nSourcefile"\
+BHTERROR2 "\nNama "\
+BHTERROR3 "\nPerintah "\
+EDITORQUIT "Simpan perubahan ?"\
+EDITOR-latex LaTeX\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS L.C\
+EDITOR-Syntax Sintaksis\
+pop_menu-Undo Batalkan\
+pop_menu-Cut Potong\
+pop_menu-Copy Salin\
+pop_menu-Paste Paste\
+pop_menu-Clear Hapus\
+pop_menu-Spell Eja\
+pop_menu-Block Blok\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File File\
+MW-Edit Edit\
+MW-Options Option\
+MW-Help Bantuan\
+MW-New Baru...\
+MW-Load Buka...\
+MW-Append Tambahkan...\
+MW-Save Simpan\
+MW-SaveAs "Simpan sebagai..."\
+MW-Reload "Muat lagi"\
+MW-Quit Keluar\
+MW-Clear Clear\
+MW-Clear-msg "Hapus semuanya ?"\
+MW-Spelling "Ejaan"\
+MW-Spell "tambahkan kata"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Cari\
+MW-MyOwn "My Own"\
+MW-Version "Info Versi"\
+MW-Tcltexed "Petunjuk Tcltexed"\
+MW-LaTeX "Daftar Perintah"\
+MW-AutoKlammerZu "Tanda Kurung Otomatis"\
+MW-Syntax Sintaksis\
+MW-Packages "Paket/dsb"\
+MW-language Bahasa\
+MW-size "Ukuran Font"\
+MW-german Jerman\
+MW-english Inggris\
+MW-indonesia Indonesia\
+MW-bre brazilian\
+MW-language-msg "Simpan Option \ndan jalankan lagi tcltexed\nuntuk mengaktifkan perubahan !"\
+MW-SaveOptions "Simpan Option"\
+MW-log "Trace log"\
+LB-breakline "Pemenggalan Baris"\
+LB-all "di semua file"\
+LB-section "di semua section"\
+LB-line "di semua baris"\
+LB-unall "dibatalkan di semua file"\
+LB-unsection "dibatalkan di semua section"\
+LB-unline "dibatalkan di semua baris"\
+ALLQUIT1 "Simpan perubahan sebelum keluar ?"\
+ALLQUIT2 "Simpan semuanya ?"\
+ALLQUIT3 "Simpan file ini ?\n"\
+Save Save\
+SaveAs SaveAs\
+more more\
+cancel Cancel\
+quit Quit\
+Quit Quit\
+spell-1 "Tambahkan\n\""\
+spell-2 "\"\nke dalam daftar kata"\
+spell-3 "Koreksi"\
+FileUpToDate "File di disk telah dimodifikasi,\nmuat lagi sebelum dilanjutkan ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
diff --git a/support/tcltexed/lib/translate3.tcl b/support/tcltexed/lib/translate3.tcl
new file mode 100644
index 0000000000..0204804bef
--- /dev/null
+++ b/support/tcltexed/lib/translate3.tcl
@@ -0,0 +1,118 @@
+# Was translated from the original file writen by:
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+# Marcelo Belentani de Bianchi - under terms of GPL
+# Brazilian version
+set LISTE [list \
+language "bre"\
+wsearch-titel Busca\
+wsearch-Help Busca\
+wsearch-case-sensitive "caso sensitivo"\
+wsearch-top Busca\
+wsearch-down Abaixo\
+wsearch-up Acima\
+wsearch-replace Substituir\
+wsearch-all Todas\
+whelp-titel Ajuda\
+whelp-no-source "No Source \$hlppath/\$FILE.txt"\
+Helpto-Help ""\
+wversion-titel Versão\
+wversion-text "TclTexEd Versão $Tcltexed_Version"\
+wlatex-titel LaTeX\
+wlatex-Help Ajuda\
+wTcltexed-titel Manual\
+wTcltexed-Help Ajuda\
+wTcltexed-manual {Tcltexed tcltexed_hlp\
+ Editor editor_hlp\
+ Editor-keymap editort_hlp\
+ Readme readme_hlp\
+ Copyright copyright_hlp\
+ Gnu-Puplic-License gpl_hlp}\
+wmsg-titel Mensagem\
+wmyown-titel "Meus Próprios"\
+wmyown-Help "Meu"\
+wcurser-titel "Vai para"\
+wcurser-goto "Vai"\
+wcurser-gotocurser "Vai para a linha"\
+BHTERROR1 "Error within sourcefile\nLaTeX-command all ready in use :\nSourcefile"\
+BHTERROR2 "\nNome "\
+BHTERROR3 "\nCommando "\
+EDITORQUIT "Salvar alterações ?"\
+EDITOR-latex latex\
+EDITOR-xdvi xdvi\
+EDITOR-dvips dvips\
+EDITOR-ghostview ghostview\
+EDITOR-ispell ispell\
+EDITOR-ZS L.C\
+EDITOR-Syntax Sintaxe\
+pop_menu-Undo Desfazer\
+pop_menu-Cut Recortar\
+pop_menu-Copy Copiar\
+pop_menu-Paste Colar\
+pop_menu-Clear Apagar\
+pop_menu-Spell "Correção Ortográfica"\
+pop_menu-Block Bloco\
+pop_menu-plus "+ %"\
+pop_menu-minus "- %"\
+pop_menu-more "..."\
+MW-File Arquivo\
+MW-Edit Editar\
+MW-Options Opções\
+MW-Help Ajuda\
+MW-New Novo...\
+MW-Load Abrir...\
+MW-Append Adicionar...\
+MW-Save Salvar\
+MW-SaveAs "Salvar como..."\
+MW-Reload "Reload"\
+MW-Quit Sair\
+MW-Clear Apagar\
+MW-Clear-msg "Apagar tudo ?"\
+MW-Spelling "Correção Ortográfica"\
+MW-Spell "Adicionar palavra"\
+MW-Umlaut_with "\\\"a..\\ss -> ä..ß"\
+MW-Umlaut_without "ä..ß -> \\\"a..\\ss"\
+MW-UmlautGerman_with "\"a..\"s -> ä..ß"\
+MW-UmlautGerman_without "ä..ß -> \"a..\"s"\
+MW-Search Procurar\
+MW-MyOwn "Meus"\
+MW-Version "Versão"\
+MW-Tcltexed "Manual do Tcltexed"\
+MW-LaTeX "Comandos do LaTeX"\
+MW-AutoKlammerZu "parênteses automáticos"\
+MW-Syntax Sintaxe\
+MW-Packages "Pacotes/etc"\
+MW-language Idioma\
+MW-size "Tamanho da fonte"\
+MW-english english\
+MW-bre brazilian\
+MW-german german\
+MW-indonesia indonesia\
+MW-language-msg "Não esqueça de salvar opções"\
+MW-SaveOptions "Salvar Opções"\
+MW-log "Ativar Logs"\
+LB-breakline "quebrar linhas"\
+LB-all "em todo o arquivo"\
+LB-section "em toda a seção"\
+LB-line "em toda linha"\
+LB-unall "desfazer em todo arquivo"\
+LB-unsection "desfazer tudo na seção"\
+LB-unline "desfazer tudo na linha"\
+ALLQUIT1 "Salvar antes de sair ?"\
+ALLQUIT2 "Salvar tudo ?"\
+ALLQUIT3 "Salvar este arquivo ?"\
+Save Salvar\
+SaveAs "Salvar como"\
+more mais\
+cancel Cancelar\
+quit Sair\
+Quit Sair\
+spell-1 "Adicionar\n\""\
+spell-2 "\"\npara lista de palavras conhecidas"\
+spell-3 "Corrija você mesmo"\
+FileUpToDate "File on Disk has been modified,\nreload it before continue ?"\
+]
+array set T $LISTE
+
+# (w* Fenster mit Namen *)
+# w*-Help -> Suchbegriff bei Hilfe
+# w*-titel -> Fenstertitel
diff --git a/support/tcltexed/lib/umlaut.tcl b/support/tcltexed/lib/umlaut.tcl
new file mode 100644
index 0000000000..9de2d29bf6
--- /dev/null
+++ b/support/tcltexed/lib/umlaut.tcl
@@ -0,0 +1,37 @@
+# Copyright (C) 2000 - Martin Strauss - under terms of GPL
+##############################################################
+# umlaut routine
+#
+proc umlaut LIST {
+ global FocusEditorFlag
+ global FocusEditor
+ if $FocusEditorFlag then {
+ focus $FocusEditor.te.edit1
+ foreach {FIND REPLACE} $LIST {
+ set FIND_L [string length "$FIND"]
+ if {$FIND != ""} then {
+ set modifiedflag 0
+ undo_switch $FocusEditor.te.edit1 Save
+ set startindex [$FocusEditor.te.edit1 index insert]
+ set nowindex 1.0
+ while {$nowindex != ""} {
+ $FocusEditor.te.edit1 mark set insert $nowindex
+ set NOW [$FocusEditor.te.edit1 get insert "insert + $FIND_L chars"]
+ if ![string compare $NOW $FIND] then {
+ # Ersetzt
+ $FocusEditor.te.edit1 delete insert "insert + $FIND_L chars"
+ $FocusEditor.te.edit1 insert insert $REPLACE
+ set modifiedflag 1
+ }
+ # Sucht
+ set nowindex [$FocusEditor.te.edit1 search -- $FIND insert end]
+ }
+ $FocusEditor.te.edit1 mark set insert $startindex
+ if $modifiedflag {
+ event generate $FocusEditor.te.edit1 <<Modified>>
+ }
+ event generate $FocusEditor.te.edit1 <<Position_tail>> -when tail
+ }
+ }
+ }
+}
diff --git a/support/tcltexed/lib/undo.tcl b/support/tcltexed/lib/undo.tcl
new file mode 100644
index 0000000000..2546b77dab
--- /dev/null
+++ b/support/tcltexed/lib/undo.tcl
@@ -0,0 +1,129 @@
+# Copyright (C) 1999 - Martin Strauss - under terms of GPL
+##################################################################
+# Undo function
+proc proc_undo {E} {
+ global UndoArray
+ event generate $E <<proc_undo>>
+ if {[llength $UndoArray($E)] != 0} then {
+ set liste [lindex $UndoArray($E) end]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ switch [lindex $liste 0] insert {
+ set ksp [$E index "insert linestart"]
+ $E insert [lindex $liste 1] "[lindex $liste 2]"
+ Syntax $E $ksp "insert lineend"
+ } delete {
+ $E delete [lindex $liste 1] [lindex $liste 2]
+ } UndoMul {
+ proc_undo $E
+ proc_undo $E
+ }
+ }
+}
+##########################
+# gliedert tag ein
+proc undo_tag E {
+ global UndoArray
+
+ set sel_flag 0
+ if {[$E tag nextrange undo 1.0 end] != ""} then {
+ set flag 0
+ foreach {A O} [$E tag ranges undo] {
+ if $flag {
+ if {[$E index $KO+1c] != $A} {
+ lappend UndoArray($E) "delete $KA $KO"
+ set KA $A
+ }
+ } {
+ set flag 1
+ set KA $A
+ }
+ set KO $O
+ }
+ lappend UndoArray($E) "delete $KA $KO"
+ $E tag remove undo 1.0 end
+ }
+}
+#########################
+# max laenge des undo Speichers
+proc undo_maxlength E {
+ global UndoArray max_undo
+ while {[string length $UndoArray($E)] > $max_undo} {
+ if {[llength $UndoArray($E)] != 0} then {
+ set UndoArray($E) [lrange $UndoArray($E) 1 end]
+ } else break
+ }
+}
+##########################
+#
+proc undo_switch {E L} {
+ global UndoArray undo_switch_sel_flag
+ foreach i $L {
+ switch $i UndoMax {
+ undo_maxlength $E
+
+ } Save {
+ # Text sammeln und sichern
+ undo_tag $E
+
+ } Delete {
+ # Delete speichern
+ lappend UndoArray($E) "insert [$E index [lindex $LIST 0]] [backslash [$E get [lindex $LIST 0] [lindex $LIST 1]]]"
+ $E delete [lindex $LIST 0] [lindex $LIST 1]
+
+ } UndoBegin {
+ # Textmarke setzen
+ $E mark set UndoBegin insert
+ $E mark gravity UndoBegin left
+
+ } UndoEnd {
+ # Texttag setzen
+ $E tag add undo UndoBegin insert
+
+ } SelSave {
+ if {[$E tag nextrange sel 1.0 end] != ""} then {
+ undo_tag $E
+ lappend UndoArray($E) "insert [$E index sel.first] [backslash [$E get sel.first sel.last]]"
+ set undo_switch_sel_flag 1
+ } {set undo_switch_sel_flag 0}
+ } SelMul {
+ if $undo_switch_sel_flag {
+ undo_tag $E
+ lappend UndoArray($E) UndoMul
+ $E mark set UndoBegin insert
+ $E mark gravity UndoBegin left
+ }
+ } BeginMark {
+ $E tag add undo BeginMark-1c BeginMark
+ } UndoMul {
+ lappend UndoArray($E) UndoMul
+ } DeleteKey {
+ if {$undo_switch_sel_flag == 0} then {
+ set ksp ""
+ if {[lindex $UndoArray($E) end] != ""} then {
+ if {[lindex [lindex $UndoArray($E) end] 0] == "insert"} then {
+ if {[lindex [lindex $UndoArray($E) end] 1] == [$E index insert]} then {
+ set ksp [lindex [lindex $UndoArray($E) end] 2]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ }
+ }
+ }
+ lappend UndoArray($E) "insert [$E index insert] [backslash $ksp][backslash [$E get insert]]"
+ }
+ } BackSpaceKey {
+ if {$undo_switch_sel_flag == 0} then {
+ set ksp ""
+ if {[lindex $UndoArray($E) end] != ""} then {
+ if {[lindex [lindex $UndoArray($E) end] 0] == "insert"} then {
+ if {[lindex [lindex $UndoArray($E) end] 1] == [$E index insert]} then {
+ set ksp [lindex [lindex $UndoArray($E) end] 2]
+ set UndoArray($E) [lrange $UndoArray($E) 0 [expr [llength $UndoArray($E)] - 2]]
+ }
+ }
+ }
+ lappend UndoArray($E) "insert [$E index insert-1c] [backslash [$E get insert-1c]][backslash $ksp]"
+ }
+ } default {
+ set LIST $i
+ }
+ }
+}