Codebase list yodl / upstream/2.15.2 CHANGES
upstream/2.15.2

Tree @upstream/2.15.2 (Download .tar.gz)

CHANGES @upstream/2.15.2raw · history · blame

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
****
2.00

Yodl version 2.00 is the result of a complete rebuild. 
It differs from the previous (1.31) version in the following aspects:

    - Added the following new commands:

        ADDTOSYMBOL         - adds text to a symbol's value
        DEFINESYMBOLVALUE   - defines a symbol and its initial value
        DELETECOUNTER       - opposite from NEWCOUNTER: removes an existing 
        IFBUILTIN           - checks whether the argument is a builtin macro  
        IFCOUNTER           - checks whether the argument is a defined counter
        IFEQUAL             - checks whether two numerical values are equal
        IFGREATER           - checks whether the first numerical value exceeds
                                the second numerical value
        IFMACRO             - checks whether the argument is a defined macro
        IFSMALLER           - checks whether the first numerical value is
                                smaller than the second numerical value
        IFSYMBOL            - checks whether the argument is a defined symbol
        PATHINCLUDELIT      - includes literaly a file found in the 
                                XXincludepath path
        POPCOUNTER          - pops a previously pushed countervalue
        POPMACRO            - pops a previously pushed macrodefinition
        POPSYMBOL           - pops a previously pushed symbolvalue
        PUSHCOUNTER         - pushes the current value of a counter,
                                initilaizes the active counter to 0
        PUSHCOUNTERVALUE    - pushes the current value of a counter,
                                initilaizes the active counter to any value 
        PUSHMACRO           - pushes the current definition of a macro,
                                activates a local redefinition
        PUSHSYMBOL          - pushes the current value of a symbol,
                                initializing the active value to an empty
                                string. 
        SETSYMBOL           - assigns a new value to a symbol
        SYMBOLVALUE         - returns the value of a symbol as text.

    - The following commands are now obsolete:
        ENDDEF              - DECWSLEVEL should be used 
        INCLUDELIT          - NOEXPANDINCLUDE should be used
        STARTDEF            - INCWSLEVEL should be used 
        NEWCOUNTER          - DEFINECOUNTER should be used
        UNDEFINEMACRO       - DELETEMACRO should be used
        WRITEOUT            - FPUTS should be used

    - Several macros are now deprecated. Alternatives are suggested in the
      `man yodlmacros' manpage. A (possibly non-exhaustive) list of deprecated
      macros is:
        enddit()
        endeit()
        endit()
        endmenu()
        endtable()
        enumerate(list)
        itemize(list)
        menu(list)
        mit() 
        node(previous)(this)(next)(up)
        startcenter()
        startdit()
        starteit()
        startit()
        startmenu()
        starttable(nColumns)(LaTexAllignment)
 

    - XXincludePath         - Symbol installed by Yodl itself, but modifiable
                                by the user: It holds the value of the current
                                :-separated list of directories that are
                                visited (sequentially) by the INCLUDEFILE
                                command.  XXincludePath may contain $HOME,
                                which will be replaced by the user's home
                                directory if the `home' or `HOME' environment
                                variable is defined. It may also contain
                                $STD_INCLUDE, which will be replaced by the
                                compilation defined standard include path. The
                                standard includepath may be overruled by
                                either (in that order) the command line switch
                                -I or the YODL_INCLUDE_PATH environment
                                variable. By default, the current directory is
                                added to the standard include path. When -I or
                                YODL_INCLUDE_PATH is used, the current
                                directory must be mentioned explicitly.  The
                                individual directories need not be terminated
                                by a /-character.  In the distributed .deb
                                archive, the standard directory is defined as
                                /usr/share/yodl (prefixed by the current
                                working directory).

    - Initial blank lines in the generated document are suppressed by
      default. 

    - Command line argument -D also allows the assignment of an initial
        value to a symbol

    - Command line argument -P is now -p, the previously defined -p argument
        is now -n (--max-nested-files), defining the maximum number of nested
        files yodl will process.

    - Command line argument -r (--max-replacements) defines the maximum number
        of macro and/or subst replacements accepted between consecutive
        characters read from file(s).

    - All assignents to counters (SETCOUNTER, ADDTOCOUNTER, etc.) 
        not only accept numerical arguments, but also counter names.

    - Rewrote several awkwardly coded macros, using the new SYMBOL and 
        COUNTER facilities

    - Added experimental, very limited, xml support to help me generating xml
      for the horrible `webplatform' of the university of Groningen. But at
      least Yodl now offers xml support as well.

    - Changed Yodl's name expansion. From `Yet Oneother Document Language'
      to: 
            Your Own Document Language
      That's MUCH better, isn't it?

    - Upgraded most of the documentation accordingly

    - Separated yodl-macro files for the various formats. While this might not
        strictly be necessary, I feel this is better than using big fat
        generic macro definition files which are bloated with `whenhtml(),
        whentxt()' macros. I introduced a generic frame, mentioning the
        macros that must at least be defined by the individual formats.

    - Internally, the software was VASTLY reorganized. I feel that a lot of
      C-code doesn't benefit from approaches that have become quite natural
      for C++ programmers. I had the choice to either rewrite Yodl to a C++
      program or to reprogram Yodl in the line of C++, but still using C.  I
      opted for the latter. So, now the src/lib section contains `object-like'
      function families, like `countermap_...()' handling all counte-related
      operations, `textvector_...()', handling all text-vector like
      operations, and other.  Other functions reveived minor
      modifications. E.g., xrealloc() now requires you to specify both the
      number of elements and the size of the elements. By doing so, it is
      sheer impossible to overlook the fact that you have to specify the size
      of the elements, thus preventing the allocation of chars when, e.g.,
      ints are required.

    - An old inconvenience was removed: line number counting is now using
      natural numbers, starting at 1, rather than line indices, starting at 0.

    - All over the place my old email address is still mentioned. Discard it,
      and as of now, use: "Frank B. Brokken" <f.b.brokken@rug.nl>

    - The post processing is now performed by the program `yodlpost'. This
      program again used Design Patterns originally developed for object
      oriented contexts, resulting in an program that is easy to
      maintain. modify and expand. 

    - The basic conversion formats now supported are html, latex, man, and
      text. Xml support is experimental, other formats are no longer
      supported, mainly because my personal unfamiliarity with the format
      (texinfo), or because the format appears to be somewhat obsolete
      (sgml). 

    - Added a Yodl document type `letter', indended to be used with the
      `brief.cls' LaTeX documentclass

    - Yodl 2.00 converts documents much faster than earlier versions.

********
1.31.18
    - bf: texinfo: use @ref iso @xref
    - texinfo: bind()
    - bf: info 
    - texinfo: table() row() cell()
    - sm: 81
    - bf: internal html links (AARGH)
      * disabled checking for libgen's weird type of basename ()
      * don't use libgen's broken basename ()
    - 2texinfo: url-> uref iso url
    - New macros for internationalization added (Paulo da Silva)
    - html table with new characters (Paulo da Silva)

********
1.31.17
    - 2man: verb*() fixed
    - 2texinfo fixes: @top, Toplevel, \input texinfo
    - 2tely: mudela() -> @mudela
    - 2texinfo: nicer handling of wierd nodenames ... NOT:
      see comment in yodl2texinfo-post.py: urg
      

********
1.31.16
    - bf: warning/sgml
      Forgot to send these patches as well  (albert chin)
    - IRIX has snprintf and vsnprintf but you never check for
      these functions in configure. You redefine them in
      src/lib/libc-extensions.c
    - Need to include <libgen.h> if linking with -lgen

*******
1.31.15
    - embarrassing bug + ugly fix: macros > 8kB
    - sm79: aix empty sed script fix

********
1.31.14
    - yodl2ms*: no adjustment (thanks: *W Nienhuys)

********
1.31.13
    - sm77
    - bf's: yodl2texinfo-post.py
    - bf: .spec file: include yodl2texinfo-post
    - IRIX: check for basename in libgen
    - man/man7 fix

*********
1.31.12
    - sm 74
    - removed C++ comments

1.31.11
    - hsearch turned off
    - included hsearch glibc sources:
      manually install libhsearch, for easy profiling
    - debian fixes (Anthony Fok)
    - sm 71
    - max size of hashtables set in config.hh.in
    - bf: yodl2msps etc, use groff (or ditroff) iso troff
    - bf: only include libintl if HAVE_GETTEXT
    - smarter builtin lookup
    - use hash table: speed drops by factor 2 :-(
    - bf: strup call to basename  (thanks, Nick Glencross)

1.31.10
    - bf: yodl2texinfo: (no) missing xrefs
    - bf: mudela mode

*********
1.31.9
    - moved ftp site:
        ftp://ftp.lilypond.org/pub/yodl
    - fixed ms/man table support, see:
        yodl2msless Documentation/test/table.yo | striproff
    - bf: ms/man output: use tbl preprocessor
    - stepmake 67, check for tbl, gmake
    - bf: latex email, url
    - bf: yodl2msps.sh

*********
1.31.8
    - stepmake 63
    - slashed o/O: \/o \/O (Stephan Petersen)
    - debian fixes by Anthony
    - bf: installscript comments in scripts
    - bf: use tmac.s iso tmac.gs (GNU s): troff -ms
    - bf: scripts: replaced ${word%%pattern} with sed script
      urg, urg: all these flavours of /bin/sh et al.

*********
1.31.7
    - remove ugly empty lines, with uniq...
    - installable stepmake pl57..59
    - fixed first time build again for msless
    - (re)added manpage yodlmacros.7
    - bf's: macrodoc
    - bf's: shared doc sections
    - latex char translations (thanks, Adrian)

1.31.6.hwn1
    - don't append \\NoLilyFooter to lilypond output (?)

1.31.6.hwn1
    - don't put configure stuff in doco

*********
1.31.6
    - urg: texinfo only: manpage, macrolist commented-out
    - bf: yodl2texinfo `\\`
    - sm 52, fixing striproff install

1.31.5.hwn1
    - bf: spec

1.31.5.jbr1
    - aclocal.m4,stepmake/aclocal.m4: allow developer to select which
      python
    - stepmake/bin/release.py: call package-diff.py with the same
      executable as release.py

**********
1.31.5
    - latex: don't use math version of '*'
    - drop \tt front from special latex chars
    - process bin dir later
    - bf: bin/exe links
    - latex:code revisited (ta, adrian)

1.31.4.jbr1
    - scripts/yodl2manless: slipped a \
    - src/yodl/grampipethrough.c: ... the anticipation is killing Jan ;)
    - Fixed initilization error in NT hack.

**********
1.31.4
    - don't make texinfo by default
    - latex code(%{) fix reverted (duh)
    - website fixes
    - gif -> png
       - website
       - embedded mudela

1.31.3.jbr1
    - bin/GNUmakefile: added (DOTEXE) and
    - rejected: fix relative path to ../src/out

*********
1.31.3
    - bf's: yodl2texinfo-post
    - fixed latex code(%{) (thanks Adrian)
    - new macro: setlatexverbchar()
    - sm 49
    - macro doc fixes
    - renamed output-commands to format-macros
    - striproff for roff'd txt formatting (yodl2msless x | striproff)
    - junked bash stuff from scripts/*
    - 2less fixes
    - (experimental...) pipethrough really pipes, thanks JBR
    - took debian/control,copyright changes to *.in source files

1.31.2.jbr2
    -src/yodl/message.c: va_end is doesn't do much on alot of platforms,
      but it is proper.
    -src/yodl/grampipethrough.c: Major NT hack.  The popen on NT seems to
      be leaking process slots.  With this patch I can at least build
      lilypond tutorial.
    -src/scripts/yodl2whatever: pass -v as switch to yodl to enable
      debugging

1.31.2.af1
    - debian fixes

1.31.2.jbr1
    - src/yodl/grampipethrough.c: A popen _must_ be closed with a
      pclose _not_ a fclose.  Pipes were never getting closed on
      Windows NT cygnus.

1.31.2.jcn1
    - sm 47
    - texinfo fix

***********
1.31.2
    - texinfo doc
    - stepmake 46
    - disabled all xrefs in texinfo (makeinfo doesn't forgive human
      mistakes)

1.31.jcn1
    - all texinfo doco
    - bf' texinfo: tt(), subsubsubsect(), quotation()
    - texinfo helper macros: nodename, nodetext, nodeprefix
    - yodl2texinfo-post.py
    - junked old scripts
    - < hacking at yodl2texinfo >
    - stepmake 44 (bedankt, lieverd)

1.31.1.jbr1
    - aclocal.m4,stepmake/aclocal.m4,stepmake/stepmake/Variables.make:
      Install command scheme that supports UNIX, UNIX cross-compile and
      Windows-NT

*********
1.31.1
    - BASH -> SHELL
    - declare realloc/malloc/free after make-3.75

1.31.0.hwn1
    - stepmake .41

1.31.0
    - Major release
    - rpm, zip doco list fixes

1.30.18
    - bf: mudela use book-init iso init (HWN)
    - digicash.com -> cs.uu
    - website fixes
    - revised ANNOUNCE, AUTHORS.yo

*********
1.30.17
    - bf: OUTDIR
    - top of web,
    - fixes: mudela fine counter

1.30.16
    - bf's: fine counter
    - checking mudela diff

********
1.30.15
    - bf's website
    - added hw's yodl page
    - janneke@gnu.org
    - mudela: reset fine counter
    - (step)make fixes
    - shared-mudela: irix echo fix
    - latex bf's: ~ \ < > (HWN)

*********
1.30.14
    - handier versioning: major release will be 1.31.0
    - ANNOUNCE draft
    - \Tex \LaTeX fixes (HW+JC)
    - latex: file() fix (HWN)
    - verbosity switch for yodl2whatever (HWN)
    - ps-to-gifs fix (HWN)
    - bf: bash-2.x empty info install
    - (step)make fixes
    - html PARAGRAPH: changed "<p><br>" to "<p>":
      a single "<p>" should be the right thing to appear in such cases,
      as "<p><br>" adds too much vertical whitespace to a text (SP)
    - bf: toc html

*********

1.30.pre13
    - bf: real simple and obvious silly enumcounter fix
    - bf's: website
    - lily's Documentation layout
    - bf: spec
    - stepmake uses just-built yodl too

1.30.0.pre12
    - doco fixes
    - currbase alloc (JBR)

1.30.0.pre11
    - -d, --definemacro=NAME=EXPANSION\n" (HWN)

*********
1.30.0.pre10
    - bf: yodl2dvi (KDB)
    - world.xpm
    - bf: yodl.yo.in: latexpackage()()
    - bf: yodl2xless
    - bf: latex2.yo.in -> latex2.yodoc.in

*********
1.30.0.pre9
    - bf: spec assumes cwd in PATH (KDB)
    - latex2e support:
      * \xx to \textxx{ }; \em to \emph{ }
      * yodl2latex converts to latex2e
      * yodl2tex and latex2 depreciated
    - dpkg-shlibdeps: warning: unknown output from ldd on
      `debian/tmp/usr/bin/yodlfixlabels':
      `       libc.so.6 => /lib/libc.so.6 (0x40005000)'
    - binary releases:
      * make deb
        * dpkg 1.4.0.23.2
        * debhelper 0.96
        * /usr/bin/db_*: remove -p from install options (urg)
      * make rpm
      * make zip
    - try at debian package:
        /bin/bash: dh_testdir: command not found
    - bf: html: Previous/Next chapter links
    - bf: label()
    - {c,f,v,k,p,t}index(), makeindex() macros
    - configure/make

*********
1.30.0.pre8
    -  BASH is not required for yodl scripts
    - bf: absolute include path (KDB)
    - lots of (step)make fixes

*********
1.30.0.pre7
    - bf: garbled error messages
    - doco fixes
    - YODL -> Yodl
    - various stepmake updates
    - run yodl from sourcetree
    - check for TROFF
    - changed ld order to support gettext with ecgs compiler (JBR)
    - stepmake fixes

********
1.30.0.pre6
    - doco additions and fixes
    - libc-extensions
    - check for dirname/basename
    - make website
    - Documentation fixes:
      * yodl.yo -> yodl.yo.in
        fixed silly install-excerpt hack
      * replaced legalese.yo with copying.yo
    - dropped old scripts
    - bf: don't check for c++
    - dropped obsolete submissions
    - do put nchapters in html toc
    - more latex-mimic macros:
      * appendix()
        After issuing 'appendix()', 'chapter(foo) chapter(bar)' looks like:
          Appendix A: foo
          Appendix B: bar
      * cite()
      * sc()
    - don't catch failure signals: rather dump core
    - allow CHAR(a+b) (e.g.: CHAR(65+foo_counter)

********
1.30.0.pre5
    - bf: xpm  typos
    - included pl 1.23, where relevant:
      [OLD] * Minor code changes. Yodl now also compiles under
          cygwin32 (a mini-Unix under Windows 95, yech).
      [OLD] * The define TMPDIR didn't get passed down from the
          top level Makefile into the source tree. Fixed.
      * Several warnings in the C compilation fixed.
      * Nesting imlemented in enumerate() lists up to 3
        levels deep.
      * the umlaut fix
    - added some macros:
      * ellipsis()
      * TeX() LaTeX()
      * rangle(), langle(),
      * sups(1), subs(1)
      * bind(1): bind(figure)ref(fig:one) -> figure~\ref{fig:one}
      * nop(1): nop(bla)footnote(foo)
      * includeverbatim(file): real verbatim include

1.30.0.pre4
    - bf: yodl2html-post: don't prefix links with dirname
    - bf: tag htmlnewfile
    - added (OUT)FILENAME builtins ...
    - sanified some warning/error messages
    - bf: included getop1.c
    - mudela.yodoc.in: handle mudela in 2tex and 2html
    - added DOEXPAND as builtin macro (urg)
    - htmlnewfile fixes (KDB)
    - added verbpipe(2)
    - bf: silly str_short in pipethrough ?
    - bf's: doc typos
    - small macro fixes
    - fix: aux-macros: .TAGSTART. .TAGEND. in html (XXinternallabel) ?...
    - added [n]paragraph(1)
    - atvariables
    - bf: scripts: make uninstall

1.30.0.pre3
    - doos-dist fixes
    - doos compile fixes
    - Documentation/AUTHORS.yo
    - distribute Documentation/man/out/*
    - yodl: --version
    - yodl: warranty message
    - yodl: long options
    - yodl: automated list of builtin macros
    - fixed config.h dependency

1.30.0.pre2
    - bf's: macros + @@ substs

1.30.0.pre1
    - NEWS
    - mudela(2) (Temporarily, will be gone in next pl)
    - StepMakification
    - yodl2texinfo: don't use (rather new) @uref command

1.22.kdb1
    - configurable TOC header
    - use <dl> iso <ul> for HTML tags in TOC
    - added lref() macro
    - small changes in de HTML generation for descriptions
    - bf's: missing continuation marks
    - fix in table.yo file in submissions for LaTeX

1.30.0.pre0
    - checked with LilyPond pl 73 website.
    - added TODO
    - rehacked builtin macro declaration and access.
    - ran indent, to be able to do simplest things like
    -   grep "^foo_do_this" *.c
    - (perhaps bit too soon...?)
    - Karel votes Yes!

1.22.jcn4
    - rpm dist fix (must revise make/install system too).

1.22.jcn3
    - set-up really stupid web-page.
    - fixed silly copyright notice, added GNU GPL
    - better fixes as soon as we have long options.
    - bf: yodl.spec

1.22.jcn2
    - First LilyPond info page generated form texinfo output
    - bf: yodl2html-post: closing invalid file
    - Added yodl.spec to .makedist
    - fixed .makedist
    - Added make-target tar (which is really dist)
    - bf: make clean
    - aliased ls to '/bin/ls -a' :-)
    - Added some macros:
      * code(text)
      * endmenu()
      * file(text)
      * lurl(locator)
      * menu(list)
      * metaCOMMENT(text)
      * metalC(line of text)
      * mit(item)
      * node(previous)(this)(next)(up)
      * nemail(name)(address)
      * startmenu()
    - bf: shared.yo.in: missing "
    - Added preliminary Texinfo support (nodes and menus
      to be done by hand, for now).
        * lib/yodl/texinfo.yo.in
        * lib/yodl/chartables/texinfo.tables.yo

1.22.jcn1
    - Added $prefix to Makefile.
    - Added yodl.spec.