Fix failure to recognize images in description before images in link
[muse-el.git] / ChangeLog
blob31b632ba273c16493be14e264736198e839f8d94
1 2007-06-02  Michael Olson  <mwolson@gnu.org>
3         * lisp/muse-publish.el (muse-publish-classify-url): Docfix.
4         (muse-publish-url): Recognize images in the description before
5         images in the link.  Fixes bug #5112.  Thanks to Thomas Kappler
6         for the suggested workaround.
8 2007-05-31  Michael Olson  <mwolson@gnu.org>
10         * NEWS: Add example for setting `muse-html-table-attributes'.
12         * lisp/muse-xml-common.el (muse-xml-markup-table): Add docstring.
13         Publish multiple tbody tags if there is a horizontal separator
14         after the heading, because that is valid HTML after all.
16 2007-05-30  Michael Olson  <mwolson@gnu.org>
18         * NEWS: Update.
20         * lisp/muse-latex.el (muse-latex-markup-table): Deal with
21         horizontal separators in tables.
23         * lisp/muse-publish.el (muse-publish-markup-regexps): Recognize
24         horizontal separators in tables.
25         (muse-publish-trim-table): New function to remove initial and
26         final blank columns from a table.
27         (muse-publish-table-fields): Call `muse-publish-trim-table'.  Deal
28         with horizontal separators, aka "hlines".
30         * lisp/muse-regexps.el (muse-table-hline-regexp): New regexp that
31         defines the syntax of a horizontal separator in a table.
33         * lisp/muse-texinfo.el (muse-texinfo-markup-table): Deal with
34         horizontal separators.  Publish header lines correctly.
36         * lisp/muse-xml-common.el (muse-xml-sort-table): Deal with case
37         where we have nonnumbers as a row type.  This ignores sorting for
38         hlines.
39         (muse-xml-markup-table): Deal with horizontal separators.  If the
40         markup supports table groups, make hlines separate table groups.
41         Otherwise, ignore them, since they cannot be marked up.  Together,
42         these changes allow us to support orgtbl-mode tables.  Thanks to
43         Carsten Dominik for the suggestion.
45 2007-05-26  Michael Olson  <mwolson@gnu.org>
47         * lisp/muse-project.el (muse-project-alist-styles): Allow for
48         other things to be added to each generated style as well.  For
49         example, this permits me to add
50         :base-url "http://blog.mwolson.org/"
51         for my blog.
53 2007-05-25  Michael Olson  <mwolson@gnu.org>
55         * Makefile (debclean, debprepare, debbuild, debinstall, deb): New
56         way of building Debian packages that preserves the original
57         release tarball and is more modular.
58         (debrevision, debrelease): Remove.
59         (dist): No need to remove the debian/ directory, since it is now
60         in its own branch.
61         (debprepare): Copy over debian/ directory properly.
63         * NEWS: Update.
65         * examples/Makefile (clean): Remove QuickStart.texi, in case
66         something went wrong during the build.
67         (%.pdf): Publish the example using the normal pdf style, rather
68         than info-pdf.
70         * examples/QuickStart.muse: Add myself to the authors list.
72         * lisp/muse-html.el (muse-html-src-tag): Ensure that we have
73         sufficient blank lines before the tag.
75         * lisp/muse-journal.el (muse-journal-latex-qotd-tag): Ensure that
76         we have sufficient blank lines before the tag.
78         * lisp/muse-latex.el (muse-latex-pdf-program): New option that
79         specifies the program to call in order to generate PDF content
80         from LaTeX content.
81         (muse-latex-pdf-cruft): New option that specifies the extensions
82         of files to remove after generating PDF output successfully.
83         (muse-latex-pdf-generate): Use these new options.  Work around the
84         annoying edge case where a tilde character exists in the filename
85         or directory path -- now this can only error out when the relative
86         path from the output file to the source file contains a tilde,
87         which is far less likely.
89         * lisp/muse-publish.el (muse-publish-markup-attribute): Don't use
90         muse-publish-ensure-block here after all, because <lisp> et al may
91         occur inline as part of other things.
93         * lisp/muse-texinfo.el ("texi"): Make muse-texinfo-munge-buffer
94         occur after full-document escaping, rather than before.  This
95         prevents automatically-inserted Texinfo code from being escaped.
96         (muse-texinfo-pdf-generate): Rewrite to call
97         `muse-latex-pdf-generate' with pdftex as the generating binary,
98         because texi2pdf suffers irredeemably from the tilde edge case
99         mentioned above.
101 2007-05-24  Michael Olson  <mwolson@gnu.org>
103         * NEWS: Drop vague entries and position interesting entries closer
104         to the top of each section.  Update for new changes.
106         * lisp/muse-project.el (muse-project-ignore-regexp): Add Mercurial
107         and bzr metadata directories to the list of things to ignore.
109         * lisp/muse-publish.el (muse-publish-ensure-block): Rename from
110         `muse-publish-ensure-block-tag', since we will use it for more
111         than just tags.
112         (muse-publish-markup-list, muse-publish-verse-tag)
113         (muse-publish-quote-tag, muse-publish-example-tag)
114         (muse-publish-markup-attribute): Use it.  This fixes a bug that
115         can occur when these types of markup occur immediately after a
116         paragraph.  It's good to have defined behavior!
118         * texi/muse.texi (Markup Strings): Mention new argument for
119         link-and-anchor.
121 2007-05-19  Michael Olson  <mwolson@gnu.org>
123         * lisp/muse-html.el (muse-html-markup-footnote): Add class tags to
124         published footnotes and footnote references.  Thanks to Scott
125         Jaderholm for the idea.
127         * lisp/muse-latex.el (muse-latex-markup-strings): Revert change to
128         link-and-anchor, on the recommendation of the original submitter.
130 2007-05-14  Michael Olson  <mwolson@gnu.org>
132         * lisp/muse-latex.el (muse-latex-markup-strings): Use better
133         link-and-anchor markup.  Thanks to Jean Magnan de Bornier for the
134         suggestion.
136         * lisp/muse-publish.el (muse-publish-url): Pass the url without a
137         file extension as the fourth argument.
139         * README, texi/muse.texi (Getting Help and Reporting Bugs):
140         Mention the new muse-el-logs mailing list.
142 2007-05-13  Michael Olson  <mwolson@gnu.org>
144         * lisp/muse-protocols.el (muse-resolve-url): Don't concatenate
145         "\`" here.  This fixes a problem with publishing custom URLs.
147 2007-05-12  Michael Olson  <mwolson@gnu.org>
149         * lisp/muse-blosxom.el (muse-blosxom-update-page-date-alist): Only
150         update the list if the current buffer is associated with a file.
151         This fixes a bug with M-x muse-publish-region in a temporary
152         buffer.
154 2007-05-01  Michael Olson  <mwolson@gnu.org>
156         * lisp/muse-publish.el (muse-publish-region): Remove read-only
157         properties from the published buffer, so that the results can be
158         manually tweaked.
160 2007-04-23  Michael Olson  <mwolson@gnu.org>
162         * lisp/muse-publish.el (muse-publish-markup-footnote): If we can't
163         find the footnote that goes with a reference, leave the reference
164         as-is.  This fixes an error where control characters could be
165         placed in a published document.
167 2007-04-22  Michael Olson  <mwolson@gnu.org>
169         * IDEAS.muse: Add muse-slides.el to list of things to include
170         before release.
172         * lisp/muse-protocols.el (muse-url-protocols): Remove stray quote
173         character.
174         (muse-protocol-find): Find protocols correctly.  Rewrite to use
175         catch/throw.
176         (muse-browse-url): Don't concatenate "\`" here.  Together, this
177         fixes a bug with browsing woman:// links.
179         * lisp/muse-project.el (muse-project-alist-styles): Deal with case
180         where entry-dir has a trailing backslash.
181         (muse-project-publish-file): If a style is malformed, skip it and
182         display a warning message.  This should help people figure out
183         where the problem is.
185 2007-04-21  Michael Olson  <mwolson@gnu.org>
187         * lisp/muse-latex2png.el (muse-publish-math-tag): If using the
188         yet-to-be-included "contex" publishing style, use "$$" rather
189         than "\[" and "\]".  Thanks to Jean Magnan de Bornier for pointing
190         this out.
192 2007-04-20  Michael Olson  <mwolson@gnu.org>
194         * lisp/muse-publish.el (muse-publish-inhibit-style-hooks): New
195         variable that causes the :before and :before-end hooks to be
196         ignored when non-nil.
197         (muse-publish-markup-region): Use it.  Also, guarantee that point
198         is at end of region after publishing.
199         (muse-publish-mark-up-tag): Simplify, taking advantage of the new
200         variable.
202 2007-04-19  Michael Olson  <mwolson@gnu.org>
204         * IDEAS.muse: New file containing a list of ideas we have for new
205         features, or patches that have yet to be applied.
207         * README: Call it "Emacs Muse", not "the Emacs Muse".  No need to
208         be so confusing.
210         * lisp/muse-html.el (muse-html-table-attributes): Fix typo in
211         docstring.
213         * lisp/muse-publish.el (muse-publish-markup-tags): Handle
214         <literal> tags with muse-publish-literal-tag, rather than
215         muse-publish-mark-read-only.
216         (muse-publish-literal-tag): New function that publishes the
217         <literal> tag.  It adds the ability to add the optional "style"
218         and "exact" elements, which cause text to only be included if the
219         current publishing style matches some criteria.  The text will be
220         removed otherwise.  Thanks to Jim Ottaway for the implementation.
221         (muse-publish-mark-up-tag): Let the <markup> tag take the
222         additional optional elements "style" and "exact", with much the
223         same effect as the <literal> improvements, but after calling
224         "function" or publishing the region first.  Make it possible to
225         put <content> tags in <markup> regions in HTML publishing.
227 2007-04-12  Michael Olson  <mwolson@gnu.org>
229         * lisp/muse-publish.el (muse-publish-markup-heading): Make sure
230         that a blank line always exists after a heading.  This fixes a bug
231         in Docbook paragraph detection.  Thanks to Jean Magnan de Bornier
232         for the report.
234         * lisp/muse-xml.el (muse-xml-markup-regexps): Update paragraph
235         detection regexp to that which is used in Docbook and HTML
236         publishing styles.
238 2007-04-02  Michael Olson  <mwolson@gnu.org>
240         * README (muse-el-announce): Make a listing of mailing lists,
241         rather than pointing to the old EmacsWikiMailingList page.  Thanks
242         to Andreas Roehler for noticing.
244 2007-04-01  Michael Olson  <mwolson@gnu.org>
246         * lisp/muse-publish.el (muse-publish-date-format): Add
247 `       customization type and group.
248         (muse-publish-region): New interactive function that publishes a
249         region to a new buffer.
251         * texi/muse.texi: Use "document" rather than "manual".
253 2007-03-31  Michael Olson  <mwolson@gnu.org>
255         * lisp/muse-publish.el (muse-style-derived-p): Fix bug where the
256         expression (muse-style-derived-p "latex" (muse-style "latex"))
257         yielded nil.  It now yields t, as expected.  Thanks to Jim Ottaway
258         for the catch.
260 2007-02-25  Michael Olson  <mwolson@gnu.org>
262         * lisp/muse-publish.el (muse-publish-date-format): New option that
263         specifies how to format the date when publishing Muse pages.
264         Thanks to Thomas Gehrlein for the suggestion.
265         (muse-publish-markup-buffer): Use it.
267 2007-02-23  Michael Olson  <mwolson@gnu.org>
269         * README: Add Prerequisites section to mention which versions of
270         Emacs work with Muse.  Thanks to Exal de Jesus Garcia Carrillo for
271         the suggestion.  Update link destination for Muse's page on
272         emacswiki.org.
274 2007-02-15  Michael Olson  <mwolson@gnu.org>
276         * lisp/muse.el (muse-goto-tag-end): Modify regexp to allow tags to
277         be not just at beginning of line.  This fixes an error with the
278         <class> tag.  Thanks to Jim Pivarski for the report.
280 2007-02-14  Michael Olson  <mwolson@gnu.org>
282         * lisp/muse-publish.el (muse-publish-classify-url): Check to see
283         whether something is an image before checking to see if it is a
284         URL.  Thanks to ITSUMI ken-ichi for the report.
286 2007-02-13  Michael Olson  <mwolson@gnu.org>
288         * lisp/muse-publish.el (muse-publish-markup-regexps): Handle
289         comments that have no text better.  Thanks to fang.lungang for the
290         report.
291         (muse-publish-markup-comment): Deal with case where no comment
292         text is provided.
294 2007-01-23  Michael Olson  <mwolson@gnu.org>
296         * lisp/muse-publish.el (muse-publish-ensure-block-tag): New macro
297         that ensures that at least one blank line exists at the given
298         position.  This is used to avoid paragraph detection problems when
299         block-level tags like <example> immediately follow a paragraph.
300         Thanks to Hans Ekbrand for the report.
301         (muse-publish-example-tag): Use it.
303 2007-01-19  Michael Olson  <mwolson@gnu.org>
305         * lisp/muse-latex2png.el (muse-publish-math-tag): Only remove the
306         previous blank line if we are publishing in Latex.  Otherwise,
307         that wouldn't be the right thing, so leave it be.
309 2007-01-17  Michael Olson  <mwolson@gnu.org>
311         * lisp/muse-latex2png.el (muse-publish-math-tag): Don't put
312         multiple centered math lines on the same line; keep them on
313         different lines.  Use \[ math-text \] instead of $$math-text$$,
314         since the latter seems to be deprecated.  Thanks to Jody Klymak
315         for the pointer.
317 2007-01-15  Michael Olson  <mwolson@gnu.org>
319         * lisp/muse-latex2png.el (muse-publish-latex-tag)
320         (muse-publish-math-tag): Publish region read-only when current
321         style is Latex-derived, so that Muse does not escape it.
322         (muse-publish-math-tag): If 6 or more spaces come before the tag,
323         surround the region with "$$" rather than "$".  This is the Muse
324         syntax for something centered, so it should be a good fit.
326 2007-01-15  Valery V. Vorotyntsev  <valery.vv@gmail.com>
328         * lisp/muse-protocols.el (muse-url-protocols): Add "woman://"
329         protocol.
330         (muse-browse-url-man): Change man page URL format.  The code is
331         simpler when the section is left inside parentheses.
332         (muse-browse-url-woman): New function.
334 2007-01-14  Michael Olson  <mwolson@gnu.org>
336         * AUTHORS: Bookkeeping.
338         * lisp/muse-latex2png.el: Associate <math> tag with
339         muse-publish-math-tag, not muse-publish-latex-tag.  Thanks to Jody
340         Klymak for the report.
341         (muse-publish-math-tag): Use muse-insert-markup for the "$"
342         characters, so they don't get escaped.
344         * lisp/muse-publish.el (muse-style-derived-p-1): New function to
345         make muse-style-derived-p easier to implement.
346         (muse-style-derived-p): If the style is not provided, fetch it and
347         check to see if the car is a string.  This should fix the other
348         problem that was reported.
350         * texi/muse.texi (Projects): Apply patch from Bradley M. Kuhn that
351         explains a case where setting muse-file-extension to nil can cause
352         unexpected behavior.
354 2007-01-09  Michael Olson  <mwolson@gnu.org>
356         * lisp/muse-publish.el (muse-publish-markup-regexps): Make
357         comments higher priority than tags.  Thanks to Stefan van der Walt
358         for the report.
360 2007-01-08  Michael Olson  <mwolson@gnu.org>
362         * lisp/muse-publish.el (muse-markup-tag-info): Use the given
363         argument rather than calling match-string.  Thanks to Stefan van
364         der Walt for the report.  This should fix a bug with publishing
365         <include file="..." markup="example">.
367 2007-01-06  Michael Olson  <mwolson@gnu.org>
369         * Makefile (debclean): New rule split from debrevision and
370         debrelease.
371         (debbuild): Take distributor into account.
373         * Makefile.defs (DISTRIBUTOR): New field that tracks what
374         vendor/distributor we are building for.
376 2007-01-04  Michael Olson  <mwolson@gnu.org>
378         * lisp/muse-html.el (muse-html-src-tag): Remove initial blank
379         line.
381         * lisp/muse-publish.el (muse-publish-markup-tags): Make "src"
382         point to muse-publish-src-tag by default, since <src> and
383         <example> have different parameters.
384         (muse-publish-src-tag): New barebones publishing function for
385         <src>, which is superseded when publishing in an HTML-based style.
387 2007-01-03  Michael Olson  <mwolson@gnu.org>
389         * lisp/muse-html.el (muse-html-src-tag): Document.
391         * lisp/muse-publish.el (muse-publish-call-tag-on-buffer): New
392         command that calls a given tag on the current buffer.  Attributes
393         may be passed.
394         (muse-publish-examplify-buffer, muse-publish-versify-buffer): Use
395         it.
396         (muse-publish-srcify-buffer): New function that allows
397         markup="src" in the <include> tag.
398         (muse-publish-get-and-delete-attr): New macro that gets an
399         attribute from a list and removes the first instance of that
400         attribute from said list.
401         (muse-publish-markup-attribute): Handle markup="src".
402         (muse-publish-command-tag, muse-publish-include-tag): Use
403         muse-publish-get-and-delete-attr.  This allows the remaining
404         attributes to be passed.
406         * texi/muse.texi (Tag Summary): Update for new <src> tag as well
407         as changes to <command> and <include>.
409 2006-12-30  Michael Olson  <mwolson@gnu.org>
411         * NEWS: Update.
413         * experimental/muse-mathml.el (muse-publish-mathml-tag): Rename
414         from muse-publish-math-tag to avoid conflict with
415         muse-latex2png.el.
417 2006-12-23  Michael Olson  <mwolson@gnu.org>
419         * lisp/muse-latex2png.el: Update header, since this has been
420         rewritten sufficiently to not need an assignment from the original
421         author.
422         (muse-latex2png-use-xhtml): Remove, since we now autodetect this.
423         (muse-latex2png): Use two underscores to separate prefix and hash.
424         (muse-latex2png-region): New function split from
425         muse-publish-latex-tag that can be used easily by other code.
426         Detect whether we are using an HTML-based publishing style, and
427         insert a simpler markup if we are not.  If we are using a
428         Latex-based publishing style, do not generate an image, and leave
429         the region alone.  Return the path of the generated image, in case
430         other functions want to use this programmatically.
431         (muse-publish-latex-tag): Set a default prefix based on the name
432         of the current file.
433         (muse-publish-math-tag): New tag that surrounds the region with
434         "$" characters, so that it becomes a Latex math region, and then
435         publishes it.
437         * lisp/muse-publish.el (muse-style-derived-p): New function that
438         returns non-nil if a given style, or the current style if omitted,
439         is equal to or derived from the given base style.  This is useful
440         in <lisp> tags, because it allows the user to specify markup that
441         is only to be inserted for one particular style.
443 2006-12-22  Michael Olson  <mwolson@gnu.org>
445         * lisp/muse-html.el (muse-html-markup-tags): Add <src> tag.
446         (muse-html-src-tag): New function which publishes the <src> tag.
447         Thanks to Clinton Ebadi and Charles Wang for the initial
448         implementations.
450         * lisp/muse-publish.el (muse-publish-markup-tags): Add <src> tag.
452 2006-12-21  Michael Olson  <mwolson@gnu.org>
454         * examples/johnw/muse-johnw.el: Update for preferred
455         muse-derive-style usage.  Rename to muse-init.el.
457         * examples/mwolson/muse-init.el: Update.
459         * lisp/muse-book.el (muse-book-publish): New function split from
460         muse-book-publish-project.  This is used in the definitions for
461         the book-latex and book-pdf styles.
462         (muse-book-publish-p): New function split from muse-book-publish.
463         (muse-book-get-directives): New function that retrieves the
464         publishing directives from the given file.
465         (muse-book-publish): Use muse-book-get-directives to set the title
466         if no title was specified.
468         * lisp/muse-project.el (muse-project): Add :publish-project entry
469         to widget.
470         (muse-read-project, muse-project-find-file): Message fix.
471         (muse-project-publish-file-default): New function split from
472         muse-project-publish-file.
473         (muse-project-publish-file): Allow file-level publishing function
474         to be specified by the :publish element.  The default is
475         muse-project-publish-file-default.
476         (muse-project-publish-default): New function split from
477         muse-project-publish.
478         (muse-project-publish): Allow project-level publishing function to
479         be specified by :publish-project element.  The default is
480         muse-project-publish-default.
482         * lisp/muse-publish.el (muse-publish-file): Message fix.
484         * texi/muse.texi (Book): Mention new way to publish books and
485         provide an example, since the process may be non-obvious.
487 2006-12-20  Michael Olson  <mwolson@gnu.org>
489         * lisp/muse-docbook.el (muse-docbook-munge-buffer): Split out
490         content-modifying code from the rest of
491         muse-docbook-finalize-buffer.
493         * lisp/muse-groff.el (muse-groff-munge-buffer): Rename from
494         muse-groff-finalize-buffer, since it adds content to the buffer.
496         * lisp/muse-html.el (muse-html-munge-buffer): Split out
497         content-modifying code from the rest of muse-html-finalize-buffer.
498         This fixes a bug when using <include> with <content> tags.
500         * lisp/muse-journal.el (muse-journal-html-munge-buffer)
501         (muse-journal-latex-munge-buffer)
502         (muse-journal-rss-munge-buffer): Rename, since they add content to
503         the buffer.
505         * lisp/muse-latex.el (muse-latex-munge-buffer): Rename from
506         muse-latex-finalize-buffer, since it adds content to the buffer.
508         * lisp/muse-mode.el:
509         * lisp/muse-project.el:
510         * lisp/muse-publish.el:
511         * lisp/muse.el: Fix recursive load error.
513         * lisp/muse-texinfo.el (muse-texinfo-munge-buffer): Rename from
514         muse-texinfo-finalize-buffer, since it adds content to the buffer.
516         * lisp/muse-wiki.el: Comment cleanup.
518         * lisp/muse-xml.el (muse-xml-charset-default): Docfix.
520 2006-12-17  Michael Olson  <mwolson@gnu.org>
522         * lisp/muse-latex.el (muse-latex-header, muse-latexcjk-header):
523         Remove the definition of \comment, since Latex already has comment
524         syntax.
525         (muse-latex-markup-strings): Use the Latex comment syntax, rather
526         than our own.  Thanks to Ryan Stutsman for pointing this out.
528 2006-12-02  Michael Olson  <mwolson@gnu.org>
530         * lisp/muse-html.el (muse-html-insert-contents): Tweak regexp so
531         that this can generate a proper table of contents for Planner HTML
532         publishing.
534 2006-12-01  Michael Olson  <mwolson@gnu.org>
536         * lisp/muse.el (muse-replace-regexp-in-string): In case someone is
537         using a very old Emacs, avoid an infinite loop that could occur
538         when the regexp is an empty string.
540 2006-11-26  Michael Olson  <mwolson@gnu.org>
542         * NEWS: Bring up to date.
544         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix nested
545         list issues and multiple-stanza verse issues.  This takes care of
546         all of the markup issues I was worried about.
548         * lisp/muse-project.el (muse-project-ignore-regexp): Minor docfix.
549         (muse-project-publish-private-files): New option that indicates
550         whether files with private filesystem permissions should be
551         published.  The default is to publish them, since it avoids
552         confusion in new users.
553         (muse-project-private-p): Use it.
555 2006-11-19  Michael Olson  <mwolson@gnu.org>
557         * lisp/muse-project.el (muse-project-resolve-link): If no remote
558         style is found, which means that the link is not a Muse page, do
559         not add a suffix or prefix to it.  This should fix the
560         "[[thing.owl]]" bug that Phillip Lord reported.
562         * lisp/muse-publish.el (muse-publish-link-file): Simplify by
563         removing unused 2nd argument.
565 2006-11-17  Michael Olson  <mwolson@gnu.org>
567         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug in
568         latex publishing where nested enumerated lists would be squashed
569         together at the end.
571 2006-11-16  Michael Olson  <mwolson@gnu.org>
573         * lisp/muse-latex.el (muse-latex-markup-strings): Make an ordered
574         list embedded in a definition list look right.  This also allows
575         for definitions to be separated from their terms, much like the
576         way HTML does it by default, if the user puts a blank line or a
577         line break between the term and the definition.  If the term and
578         definition are on the same line, they will be that way in the
579         output as well.
581 2006-11-11  Michael Olson  <mwolson@gnu.org>
583         * muse.texi (Markup Strings): Fix typo.  Thanks to Haiyong Zheng
584         for the report.
585         (Getting Help and Reporting Bugs): Fix emacswiki.org page URL.
587 2006-11-07  Michael Olson  <mwolson@gnu.org>
589         * lisp/muse.el (muse-version): Make Emacs Muse 3.02.93, the third
590         release candidate for Muse 3.03, available.
592         * NEWS: Update.
594 2006-11-06  Michael Olson  <mwolson@gnu.org>
596         * lisp/muse-project.el (muse-project-find-file): Fix bug when
597         following a relative link worked even when the path was incorrect.
599 2006-11-04  John Sullivan  <john@wjsullivan.net>
601         * lisp/muse-mode.el (muse-mode-map): Remove C-c C-c binding for
602         muse-follow-name-at-point to reduce collisions with other
603         modes (Planner).
605         * muse.texi (Keystroke Summary): Remove C-c C-c binding.
607 2006-11-04  Michael Olson  <mwolson@gnu.org>
609         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
610         optional, and make interwiki delimiter a regular rather than shy
611         group.
612         (muse-wiki-handle-implicit-interwiki): Rename from
613         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
614         (muse-wiki-handle-explicit-interwiki): New function that is
615         smarter about where an explicit link ends in a buffer.  This
616         allows you to refer to page names with invalid Wiki characters,
617         such as underscores and dashes, merely by enclosing them in double
618         brackets.  Also, a bug with recognizing project names too loosely
619         has been fixed.
621 2006-11-03  Michael Olson  <mwolson@gnu.org>
623         * lisp/muse-project.el (muse-project-page-file): Make relative
624         links work as expected, hopefully.
626         * lisp/muse-publish.el (muse-publish-this-file): Set the current
627         output style manually, since it will differ from anything in the
628         publishing style list.
630 2006-10-30  Michael Olson  <mwolson@gnu.org>
632         * lisp/muse-colors.el (muse-colors-markup): Remove note about
633         grouping elements, since that no longer applies.
634         (muse-colors-custom-tags): Explicitly match against
635         muse-tag-regexp to get the match-data set the way we want.  This
636         really fixes the <example> highlighting bug that Stefan reported.
637         (muse-configure-highlighting): Set the original value to the
638         symbol, not the modified value.  Re-use modified rules properly.
640         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
641         introduced yesterday.
643 2006-10-29  Michael Olson  <mwolson@gnu.org>
645         * examples/mwolson: Update my example configuration.
647         * NEWS: Update.
649         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
650         without a regexp in the first position before iterating through
651         them to build muse-colors-vector.  This fixes a bug with the
652         display of <example> tags.  Thanks to Stefan Reichör for the
653         report.
655         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
656         files in projects to be linked to.
658         * lisp/muse-publish.el (muse-publish-url): Allow the original link
659         to serve as a description for a URL, as long as it differs from
660         the destination URL.  This fixes the description of WikPage links
661         in PDF output.
662         (muse-publish-link-file): Check to see whether the given link
663         points at a valid file.  If so, return it.  Otherwise, apply other
664         transforms like prefix and link suffix.
666         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
667         "/", it is a file or directory, not a Muse page.  Thanks to
668         Phillip Lord for the suggestion.
670         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
671         of the current page as the local path, instead of duplicating the
672         remote file's path.  This probably fixes at least one reported
673         bug. since it's quite major.
674         (muse-wiki-update-project-file-regexp)
675         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
676         passed to regexp-opt, since that can cause Emacs 21 to throw an
677         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
678         DOT edu for the report.
679         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
681 2006-10-28  Michael Olson  <mwolson@gnu.org>
683         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
684         (muse-project-resolve-link): If the given style does not have a
685         link-suffix, default to suffix.  This fixes a bug I was noticing
686         when linking to a file that was published in both PDF and HTML
687         form.
689         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
690         function that is used as a callback to determine the initial
691         amount of indentation that the current dl item has.
692         (muse-publish-surround-dl): Use it.  Pass the initial indent value
693         and the post-indent value, instead of trying to determine them
694         both.
695         (muse-publish-strip-list-indentation): New function stripped from
696         `muse-publish-surround-text' for readability.
697         (muse-publish-surround-text): Instead of taking a determine-indent
698         value, take a determine-indent-func function, which is called just
699         after finding the next list item.  If we are asked to determine
700         the amount of indentation, concatenate indent and post-indent the
701         first time around.  This effectively fixes all known definition
702         list issues.
704 2006-10-16  Michael Olson  <mwolson@gnu.org>
706         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
707         other software -- namely, Planner -- can detect whether they are
708         using a version of Muse that supports nested tags.
709         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
710         muse-publish-goto-tag-end.
712         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
713         Adapt for nested tags.
715         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
716         <class> tag is nestable.  Thanks to Phillip Lord for noticing
717         this.
719         * lisp/muse-publish.el (muse-publish-markup-tag)
720         (muse-publish-quote-tag): Use muse-goto-tag-end.
722         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
724 2006-10-15  Michael Olson  <mwolson@gnu.org>
726         * AUTHORS: Bookkeeping.
728         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
729         tag.
731         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
732         tags.
734         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
736         * lisp/muse-import-docbook.el (muse-import-docbook)
737         (muse-import-docbook-files): Docfix.
738         (muse-import-docbook-get-title): Remove cl.el-ism.
740         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
742         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
744         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
746         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
747         (muse-next-reference, muse-previous-reference): Minor whitespace
748         changes.
749         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
750         the suggestion.
752         * lisp/muse-poem.el (muse-poem-tag): Ditto.
754         * lisp/muse-publish.el (muse-publish-markup-tags)
755         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
756         element and make 4th element determine whether tags are nestable.
757         (muse-publish-goto-tag-end): New function that moves to the end of
758         a tag.  Handle nested tags when NESTED is non-nil.
759         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
760         5th element for function.
761         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
762         this on several scenarios, and it seems to work.
763         (muse-publish-surround-text): Accept new optional argument
764         LIST-ITEM which determines the regexp to use for list items.  The
765         default is to use muse-list-item-regexp.
767         * muse.texi (Markup Tags): Mention nestable tags.
769         * NEWS: Mention new files.
771 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
773         * lisp/muse-import-docbook.el: New file that converts Docbook XML
774         into Muse format.
776         * lisp/muse-import-xml.el: New file that provides helper routines
777         for converting XML-ish files to Muse format.
779 2006-10-10  Michael Olson  <mwolson@gnu.org>
781         * NEWS: Update for 3.02.7 bugfix release.
783 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
785         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
786         using the value in the muse #date directive.
787         (muse-blosxom-use-metadate): New option that determines whether or
788         not to use the #postdate directive.
789         (muse-blosxom-format-date): Convert a date string to PyBlosxom
790         metadate plugin format.
792 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
794         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
795         recognised URLs.
797         * muse.texi: Clarify handling of implicit links by mentioning
798         which characters can prevent Muse from recognizing something as an
799         implicit link.
801 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
803         * lisp/muse-mode.el (muse-next-reference)
804         (muse-previous-reference): Fix bug #6367 by moving point to the
805         beginning of the link.
807 2006-09-26  Michael Olson  <mwolson@gnu.org>
809         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
810         beginning-of-line.  This should fix a bug that was noticed in
811         recent Emacs 22 builds.
813         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
814         eval-and-compile block to avoid a compiler warning.
816 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
818         * lisp/muse-backlink.el (muse-backlink-split-string):
819         Compatibility with Emacs versions < 22
820         (muse-backlink-pending): New internal variable
821         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
822         that backlinks are inserted at the right time.
823         (muse-backlink-insert-hook-func): Remove unwind-protection; check
824         for pending backlink, and that this is the targe page.
825         (muse-backlink-handle-link): Don’t handle the link if we are
826         already handling one. Return the link as well as the parent links.
828 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
830         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
831         #6942 - muse-blosxom-new-entry fails when using tags.
833 2006-09-14  Michael Olson  <mwolson@gnu.org>
835         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
836         compiler warning.
838 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
840         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
841         function: Protect all wikiwords from START to END from further
842         processing.
843         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
845 2006-09-13  Michael Olson  <mwolson@gnu.org>
847         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
848         adopted from Jim Ottaway's patch.  It removes links from the
849         heading, and then marks the region read-only to inhibit WikiWord
850         detection.
852 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
854         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
855         special handling for headings.
856         (muse-texinfo-remove-links): New function that removes explicit
857         links from the given strings, replacing them with a description.
859 2006-09-11  Michael Olson  <mwolson@gnu.org>
861         * muse.texi (Getting Help and Reporting Bugs): Mention the
862         muse-el-internationalization mailing list.
864         * lisp/muse.el (muse-path-sans-extension): New function that acts
865         like file-name-sans-extension, but guarantees to never modify the
866         directory part of the path.  Thanks to Evan Monroig for
867         investigating this.
869         * lisp/muse-book.el (muse-book-publish-project): Use
870         muse-path-sans-extension instead of file-name-sans-extension.
872         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
873         Ditto.
875 2006-08-30  Michael Olson  <mwolson@gnu.org>
877         * muse.texi (Blosxom Requirements): Fix typo.
879         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
880         directories for bzr and darcs.
882         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
883         contrib/pyblosxom/getstamps.py: Update version and headers.
885 2006-08-27  Michael Olson  <mwolson@gnu.org>
887         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
888         nil values before they get to mapconcat.  This fixes a lockup when
889         muse-wiki-match-all-project-files is nil.
891         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
892         (muse-wiki-ignore-implicit-links-to-current-page)
893         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
894         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
895         (muse-wiki-publish-small-title-words)
896         (muse-wiki-publish-pretty-title): Docfix.
897         (muse-wiki-update-local-wikiword-regexp): Rename from
898         muse-wiki-update-local-wikiword-regexp.  Set
899         muse-wiki-project-file-regexp instead of
900         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
901         take muse-wiki-use-wikiword into account, since this is a
902         different concept now.
903         (muse-wiki-update-wikiword-regexp): Remove.
904         (muse-wiki-wikiword-regexp): In-line the :set function.
905         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
907 2006-08-26  Michael Olson  <mwolson@gnu.org>
909         * lisp/muse-publish.el (muse-publish-surround-text): When looking
910         for indented list items, ignore blank lines.
912         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
913         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
914         mapconcat.  This should hopefully fix a problem with large amounts
915         of files with spaces in their name.  Thanks to Greg Detre for the
916         report.
918 2006-08-24  Michael Olson  <mwolson@gnu.org>
920         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
921         numbers from the argument to format-time-string.  This fixes an
922         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
924 2006-08-18  Michael Olson  <mwolson@gnu.org>
926         * lisp/muse-project.el (muse-project-file-entries): Since we are
927         given a full path, match against the filename as well.  This fixes
928         an issue where backup files were being added to the file alist.
930         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
931         from muse-html.el.
933 2006-08-12  Michael Olson  <mwolson@gnu.org>
935         * Makefile (.PHONY): Don't use line continuations.
936         (realclean fullclean): Call realclean in subdirs, not distclean.
937         (distclean): Don't call realclean, since this would wipe out our
938         autoloads file.
939         (dist): Use correct path to autoloads file.
941         * NEWS: Catch up with the latest changes.
943         * experimental/Makefile (.PHONY): Wrap long line.
945         * lisp/Makefile (distclean): Do the same thing as "clean", not
946         "realclean".
948         * lisp/muse-project.el (muse-project-get-applicable-style):
949         Indentation tweak.
950         (muse-project-ignore-regexp, muse-project-recurse-directory):
951         Docfix.
952         (muse-project-of-file): Try the ignored files regexp against the
953         base filename as well as the entire path.
955         * lisp/muse-publish.el (muse-publish-this-file): Display message
956         if the buffer is not associated with any file, so that we avoid
957         errors later on.
958         (muse-publish-url-desc): New function taken from muse-publish-url
959         that causes a URL description to be transformed.
960         (muse-publish-url): Call muse-publish-url-desc on either the
961         description or the original URL if it will be used as a
962         description.  Accept the original URL as an argument, in case it
963         was transformed earlier.
964         (muse-publish-insert-url): Pass original URL as an argument.
965         (muse-publish-markup-link): Make this somewhat easier to follow.
966         Pass original URL as argument.
967         (muse-publish-get-style): If the same style is used to publish to
968         two different directories, prompt the user for which directory to
969         use.
970         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
971         latest changes.
972         (muse-publish-markup-url): Pass original URL as an argument.  This
973         fixes the "nil" description for bare URLs that was in 3.02.91.
974         Nothing like finding a bug just after completing the announcement
975         of a release.
977         * lisp/muse.el: Use defalias whenever convenient.
978         (muse-version): Set version to 3.02.92 (3.03 RC2).
980 2006-08-10  Michael Olson  <mwolson@gnu.org>
982         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
983         style does not derive from any other class, return `t' here.
984         This, along with the corresponding change to muse-publish.el,
985         fixes a problem with the table of contents getting inserted
986         multiple times for custom html-based styles.
987         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
988         smarter method for table centering that works with XHTML.
990         * lisp/muse-latex2png.el Rename all functions to have a
991         "muse-latex2png" prefix.  Turn all variables into customizable
992         options in the muse-latex2png group.
993         (muse-latex2png-img-dest): New option specifying where to place
994         the images.
995         (muse-latex2png-template): New option containing the template to
996         use for the surrounding LaTeX code.
997         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
998         compliance.
999         (muse-latex2png-move2pubdir): Avoid multiple redundant error
1000         messages when something else goes wrong.  Create the image
1001         subdirectory if it doesn't exist already -- thanks to Christian
1002         Straßer for the report.  Expand the filename properly.
1003         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
1004         and filename expansion.
1005         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
1006         the default directory properly.
1008         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
1009         do not run the same function twice.
1011 2006-08-08  Michael Olson  <mwolson@gnu.org>
1013         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
1014         introduced wrong-type-argument error.
1016         * lisp/muse-html.el (muse-html-markup-strings)
1017         (muse-xhtml-markup-string): Cause table definition that contains
1018         image to be center-aligned.  This should fix an issue with images
1019         not being centered when captions are very long.
1021         * lisp/muse-publish.el (muse-publish-table-fields): Trim
1022         whitespace from fields once we have split them up.
1024         * lisp/muse.el (muse-trim-whitespace): New function that strips
1025         leading and trailing whitespace from a string.
1027 2006-08-07  Michael Olson  <mwolson@gnu.org>
1029         * NEWS: Update through patch-95.
1031         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
1032         to match the tags.
1033         (muse-colors-explicit-link): Show images in link descriptions if
1034         inlined images are enabled.
1036         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
1037         definitions for 'image-with-desc, 'image, and 'image-link.
1038         (muse-docbook-markup-paragraph): If an inlined image begins a
1039         paragraph, insert <para> before it.
1040         (muse-docbook-fixup-images): New function that upper-cases the
1041         "format" attribute of the <imagedata> tag.
1042         (muse-docbook-finalize-buffer): Call it.
1044         * lisp/muse-html.el (muse-html-markup-strings): Publish images
1045         with descriptions as centered tables, with a centered caption
1046         underneath.  The resulting look is consistent with the way that
1047         they are published in the LaTeX style.  Thanks to Jody Klymak for
1048         the suggestion.
1049         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
1050         valid way to center a table.
1051         (muse-html-markup-paragraph): Use class="image" instead of
1052         "image-link" for paragraphs that start with an embedded image.
1054         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
1055         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
1056         suggestion.
1057         (muse-latex-markup-specials-image): New option that enables
1058         escaping of specials in images.  This was split from the URL
1059         specials.
1060         (muse-latex-decide-specials): Handle 'image context.
1061         (muse-latex-fixup-dquotes): Go to beginning of document, instead
1062         of relying on caller to do this for us.
1064         * lisp/muse-publish.el (muse-publish-escape-specials): Document
1065         'image context.
1066         (muse-publish-url): Use 'image context for images.  Use 'image
1067         instead of 'image-link and 'image-link in place of
1068         'url-with-image.  Separate the image file from its extension so
1069         that docbook and texinfo can publish images correctly.
1070         (muse-publish-markup-link): Don't force a description if one is
1071         not given.  This fixes a bug where images without descriptions
1072         were being published as 'image-with-desc instead of 'image.
1074         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
1075         images the same as URLs.
1076         (muse-texinfo-markup-strings): Improve image markup to achieve an
1077         effect similar to that of the LaTeX publishing style.  Simplify
1078         'url string.
1080         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
1082         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
1083         when we have to use the custom version of this function.
1085         * muse.texi (Images): Explain how to toggle inlining of images and
1086         give better examples.  Mention captions and that captioned images
1087         should not be used inside of text paragraphs.
1088         (Markup Strings): Bring up-to-date with the changes made since
1089         3.02.
1091 2006-08-06  Michael Olson  <mwolson@gnu.org>
1093         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
1094         in the Emacs source tree.
1096         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
1097         in the Emacs source tree.
1099         * ChangeLog.3: New file created from the old ChangeLog.
1101         * Makefile.defs (VERSION): Set to 3.02.91.
1103         * NEWS: Update through patch-84.
1105         * lisp/muse.el (muse-version): Set to 3.02.91.
1107         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
1108         attributes.
1109         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
1110         delimiter are instead of hard-coding it.
1112         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
1113         (muse-mode): Make filling definition lists work better.  This
1114         should fix #5359.
1116         * lisp/muse-publish.el (muse-style-run-hooks): Use
1117         `muse-style-element' instead of `muse-get-keyword' here.  This
1118         should fix #6399.
1120         * muse.texi: Set version to 3.02.91 (3.02 RC2).
1122 See ChangeLog.3 for earlier changes.
1124 ;; Local Variables:
1125 ;; coding: utf-8
1126 ;; End: