6 <doc-data|<doc-title|Reminder of things to be
7 done>|<doc-subtitle|Classified by subject>>
9 <section|Organizational tasks>
21 Tutorial or series of introductory articles (<abbr|e.g.> for Linux
25 General introduction/quick overview
27 Different purposes of <TeXmacs>
31 Style-sheets and writing a simple macro
33 Running a computer algebra system
35 Inserting an action tag which launches an <verbatim|xterm> (and
40 Writing simple structured texts
42 Why are structured documents useful?
44 How to enter structure into <TeXmacs>, redundancy of the interface
46 Understanding the visual indications, cursor movement
48 Editing the structure (removing structure, improper nesting,
51 Exploiting structure: spell checking, searching
53 Reminders about correct typography
57 Writing mathematical texts
59 Entering math mode, equations, equation arrays
61 Simple mathematical formulas, recall cursor movement
63 Mathematical symbols, variants
65 Semantics of multiplication, function application and other implicit
68 Simple matrices and other tabular environments
72 Writing simple macros and style-sheets
74 Rendering of source code, what is source code?
78 A simple style package
80 Customization of some existing macros
87 Introductory article for mathematicians, physicists and computer
103 CVS mirror at Savannah and automatic update scheme.
105 Also search for other mirror sites (increases availability and visibility
109 <section|General architecture>
112 Implement better tools for debugging
118 Hunt down memory leaks
124 Implement marking algorithm
132 Internal plug-in for Guile
138 Contextual overloading
144 Reimplement menus as functions or macros which return widgets
150 Eliminate all places where we still do not use closures
156 Better preservation of locality
159 Dispatching should be declared in dispatch routines themselves
165 Easy definition of additional properties of functions/macros and
172 Module exportations using <verbatim|define-public>, <abbr|etc.>
184 Equivalent of <TeX> <verbatim|\\topsep>
186 In <TeXmacs>, the <verbatim|\\topsep> always equals <verbatim|0.75em>.
187 It should be possible to modify this. For symmetry, we might also
188 introduce a ``bottom sep''.
192 Resizing macro expansions
194 When attempting to resize a macro application to become smaller than
195 the ``x'', the invisible markers may have undesirable side-effects.
201 Separate environment variables for ``typewriter'', ``sans serif'',
202 ``small caps'', ``slant'', etc.
204 Find rendering font as a function of selected font and language
208 Simplification of page parameters
210 Should we still reorganize?
212 It should be easy to access to the page width and height and some other
221 Introduction of the paragraph tag
223 Distinguish between paragraphs and paragraph units.
227 Page decorations (headers and footers)
229 Should the corresponding environment variables become macros?
233 Fine-grained baseline skip
235 Associate baseline skip (or ascent and descent) to each individual box
236 in concatenation. Next compute maximum over each line. Take maximum of
237 maximum after first line and maximum before second line in order to
240 Also for other parameters as baselineskip?
244 Precise scope of variables which affect paragraph layout
254 Horizontal grouping instead of <verbatim|\\bigop ... \\big.>
256 Introduce grouping primitives in which expressions with big operands
257 (and maybe large delimiters) can be encapsulated. The advantage is that
258 this eases parsing and an indicative bounding box is shown.
262 Scripts to large delimiters produced by macros
264 Such scripts are not put at the right positions
268 Macro for fractions in continued fractions.
274 Less vertical spacing in text style between numerator/denominator and
281 Left-numbering of equation arrays
283 Should be possible now using the <verbatim|extern> primitive
287 Consider fractions and scripts as operators
289 Consider fractions as operators <with|mode|math|\<Rightarrow\>> spaces
290 before and after. Similarly for scripts <with|mode|math|\<Rightarrow\>>
291 small space before left scripts and after right scripts.
297 Determine spacing between two mathematical boxes as a function of the
298 rough semantics of the boxes. Application: no need for operators like
307 Introduce a style options mechanism
309 Option <with|mode|math|\<rightarrow\>> call back macro which can be
310 enriched by several packages
312 Call back macros called at end of reading style files when option
315 Selected options postpended to name for style-file caching
319 Grey menu entries for parameters which cannot be changed in style
321 For instance, a style might provide a limited number of font base
332 Boxes should not have origins; its children should have positions
341 Temporarily inccorect markup
343 When pressing <verbatim|A-backspace> inside a surround tag, we first
344 remove two children of the surround tag (so that it obtains arity 1)
345 and next remove the tag itself. The temporarily inccorect surround tag
346 of arity 1 may cause <verbatim|bridge_surround> to crash.
348 Temporary fix: add extra nodes in the bridge. Better fix: implement an
349 elementary modification <verbatim|assign_label> which allows to change
350 the surround tag into another tag like tuple before performing
351 incorrect operations.
363 A facility "Edit as" to convert a selection into any other format and
364 put the result in an "edit-as" tag for manual editing. When pressing
365 return, reconvert back into <TeXmacs>.
369 More customizable presentation of source tags
371 Make the presentation of source code more customizable by user macros.
372 Done for syntactic highlighting, but should also be done for special
373 rendering of certain primitives and the rendering of tags.
377 Primitive for block arguments
379 Currently, we may stretch tags. We also need a primitive for stretching
386 Tags for short commands inside the program
392 Display informative flags at places where tags have been stretched or a
393 modification to the source style has been applied
400 Cursor movement along lines of a paragraph (when moving to the right at
401 the end of a line, the cursor should jump to the start of the next line).
404 <section|Tools and frequently used subroutines>
409 Implement different routines for quoting and quote/unquote using the
414 General caching mechanism
416 Optimize performance as a function of cost of recomputation and storage
426 Currently produces spaces around <verbatim|\\nobreak> command. Should
427 also use <verbatim|~> when possible.
431 Option for accents using ASCII only
433 I.e. é <with|mode|math|\<rightarrow\>> \\'e.
437 Option for AMS blackboard bold
439 In order to use True Type fonts when exporting to Pdf.
447 Avoid name-clashes with built-in commands
449 Importation of <LaTeX> macros whose names coincide with built-in
450 commands may lead to incorrect documents (<abbr|e.g.> the
451 <verbatim|point> macro in <verbatim|publs/1998/zeta.tex>). We should
452 probably post-correct imported documents.
456 Better parsing of verbatim arguments
458 Some commands, like <verbatim|cite>, <verbatim|documentclass>,
459 <abbr|etc.> take verbatim arguments, which should not be parsed in the
460 generic way. The <verbatim|string_arg> function is a temporary remedy.
469 <associate|par-first|0fn>
470 <associate|par-par-sep|0.5fn>
476 <associate|auto-1|<tuple|1|?>>
477 <associate|auto-2|<tuple|2|?>>
478 <associate|auto-3|<tuple|3|?>>
479 <associate|auto-4|<tuple|4|?>>
480 <associate|auto-5|<tuple|5|?>>
481 <associate|auto-6|<tuple|6|?>>
488 <vspace*|1fn><with|font-series|<quote|bold>|math-font-series|<quote|bold>|1<space|2spc>Organizational
489 tasks> <datoms|<macro|x|<repeat|<arg|x>|<with|font-series|medium|<with|font-size|1|<space|0.2fn>.<space|0.2fn>>>>>|<htab|5mm>>
490 <no-break><pageref|auto-1><vspace|0.5fn>
492 <vspace*|1fn><with|font-series|<quote|bold>|math-font-series|<quote|bold>|2<space|2spc>General
493 architecture> <datoms|<macro|x|<repeat|<arg|x>|<with|font-series|medium|<with|font-size|1|<space|0.2fn>.<space|0.2fn>>>>>|<htab|5mm>>
494 <no-break><pageref|auto-2><vspace|0.5fn>
496 <vspace*|1fn><with|font-series|<quote|bold>|math-font-series|<quote|bold>|3<space|2spc>Scheme>
497 <datoms|<macro|x|<repeat|<arg|x>|<with|font-series|medium|<with|font-size|1|<space|0.2fn>.<space|0.2fn>>>>>|<htab|5mm>>
498 <no-break><pageref|auto-3><vspace|0.5fn>
500 <vspace*|1fn><with|font-series|<quote|bold>|math-font-series|<quote|bold>|4<space|2spc>Typesetter>
501 <datoms|<macro|x|<repeat|<arg|x>|<with|font-series|medium|<with|font-size|1|<space|0.2fn>.<space|0.2fn>>>>>|<htab|5mm>>
502 <no-break><pageref|auto-4><vspace|0.5fn>
504 <vspace*|1fn><with|font-series|<quote|bold>|math-font-series|<quote|bold>|5<space|2spc>Editor>
505 <datoms|<macro|x|<repeat|<arg|x>|<with|font-series|medium|<with|font-size|1|<space|0.2fn>.<space|0.2fn>>>>>|<htab|5mm>>
506 <no-break><pageref|auto-5><vspace|0.5fn>
508 <vspace*|1fn><with|font-series|<quote|bold>|math-font-series|<quote|bold>|6<space|2spc>Tools
509 and frequently used subroutines> <datoms|<macro|x|<repeat|<arg|x>|<with|font-series|medium|<with|font-size|1|<space|0.2fn>.<space|0.2fn>>>>>|<htab|5mm>>
510 <no-break><pageref|auto-6><vspace|0.5fn>